diff -Nru geeqie-1.0/COPYING geeqie-1.1/COPYING --- geeqie-1.0/COPYING 2010-02-17 21:21:23.000000000 +0000 +++ geeqie-1.1/COPYING 2012-08-12 20:13:40.000000000 +0000 @@ -1,12 +1,12 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 + 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 + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. - Preamble + Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public @@ -15,7 +15,7 @@ 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 +the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not @@ -55,8 +55,8 @@ The precise terms and conditions for copying, distribution and modification follow. - - GNU GENERAL PUBLIC LICENSE + + GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains @@ -110,7 +110,7 @@ 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 @@ -168,7 +168,7 @@ 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 @@ -225,7 +225,7 @@ 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 @@ -255,7 +255,7 @@ of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. - NO WARRANTY + 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 @@ -277,9 +277,9 @@ 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 + 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 @@ -303,17 +303,16 @@ 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 - + 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. 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 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. @@ -336,5 +335,5 @@ 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 +library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. diff -Nru geeqie-1.0/ChangeLog geeqie-1.1/ChangeLog --- geeqie-1.0/ChangeLog 2010-02-17 21:21:23.000000000 +0000 +++ geeqie-1.1/ChangeLog 2012-08-12 20:13:40.000000000 +0000 @@ -1,9195 +1,11909 @@ ------------------------------------------------------------------------- -r1907 | nadvornik | 2010-02-16 22:18:03 +0100 (Tue, 16 Feb 2010) | 2 lines +commit 529b1126534cc664e8f88f028fa56190cc8debf3 +Author: Vladimir Nadvornik +Date: Sun Aug 12 22:06:03 2012 +0200 -added 2010 to copyright text + updated NEWS file ------------------------------------------------------------------------- -r1906 | nadvornik | 2010-02-16 22:10:12 +0100 (Tue, 16 Feb 2010) | 2 lines +commit 9d940b7df273544d99d87699986c2eca9e9c4bfd +Author: Vladimir Nadvornik +Date: Fri Aug 10 21:20:07 2012 +0200 -updated version string + make sure fd is referenced + + file_data_disconnect_sidecar_file may free a fd with zero references + we have to ref it if we want to use it later ------------------------------------------------------------------------- -r1905 | zas_ | 2010-02-16 21:07:05 +0100 (Tue, 16 Feb 2010) | 1 line +commit ebc790ba2080dc8abd9cc880ead7a0acc120dd64 +Author: Vladimir Nadvornik +Date: Thu Aug 9 17:32:36 2012 +0200 -Restore translators list, removed by revision 1899. ------------------------------------------------------------------------- -r1904 | zas_ | 2010-02-16 20:55:35 +0100 (Tue, 16 Feb 2010) | 1 line + fixed file_data_check_sidecars + + use more clear algorithm: + if the group has changed + disconnect everything + create new group -Update russian translation. Thanks to Denis Silakov. ------------------------------------------------------------------------- -r1903 | nadvornik | 2010-02-14 23:00:23 +0100 (Sun, 14 Feb 2010) | 4 lines +commit fa99aa221843e0e371edf910a8a39c91451691fb +Author: Vladimir Nadvornik +Date: Thu Aug 9 17:30:12 2012 +0200 -fixed segfault in exif parser + fixed exif_read_fd + + - add fd to cache immediately + - do not check file presence, the result could be inconsistent with the cache -http://sourceforge.net/tracker/index.php?func=detail&aid=2950617&group_id=222125&atid=1054682 +commit 5ab7044678cf35dff14c06d9031a2791fd563fec +Author: Vladimir Nadvornik +Date: Tue Aug 7 10:21:29 2012 +0200 ------------------------------------------------------------------------- -r1902 | nadvornik | 2010-02-14 22:35:11 +0100 (Sun, 14 Feb 2010) | 6 lines + replaced assert with g_assert -fixed reference count +commit 5fd7dc2e202ea131aa0d9d399a17066c3be56393 +Author: Vladimir Nadvornik +Date: Sun Aug 5 20:46:05 2012 +0200 -there was a bug in reference count on writting unsaved metadata -before starting an external editor + updated README file +commit 672c7918e805f090e7848a9ce62cae61f29652fe +Author: Vladimir Nadvornik +Date: Sun Aug 5 20:40:07 2012 +0200 ------------------------------------------------------------------------- -r1901 | nadvornik | 2010-02-07 14:16:35 +0100 (Sun, 07 Feb 2010) | 2 lines + fixed gen_changelog for git -test gnome-doc-tool in configure +commit 7b53b482ac007e2d2a8bbd27f7c2bee0ed10103c +Author: Vladimir Nadvornik +Date: Tue Jul 31 19:10:15 2012 +0200 ------------------------------------------------------------------------- -r1900 | nadvornik | 2010-02-07 13:44:55 +0100 (Sun, 07 Feb 2010) | 2 lines + spec file cleanup -dropped obsolete sections, gqview changelog moved to wiki +commit 7f398f978cfbbea7b72d714a0e8b595c6f2e833a +Author: Vladimir Nadvornik +Date: Tue Jul 31 19:09:43 2012 +0200 ------------------------------------------------------------------------- -r1899 | zas_ | 2010-02-02 21:21:11 +0100 (Tue, 02 Feb 2010) | 9 lines + use GPLv2 copy with new FSF address -Brazilian Portuguese translation was updated. +commit 27c86debac68cd20d7e2a7381833f3cf6245b114 +Author: Vladimir Nadvornik +Date: Tue Jul 31 18:20:06 2012 +0200 -Thanks to Sergio Cipolla. + renamed zh_CN.GB2312.po to zh_CN.po -References: -http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=567824 +commit b286338544a2c60acb1332f3cb90f6b355af00fb +Author: Vladimir Nadvornik +Date: Tue Jul 31 17:41:47 2012 +0200 + updated version and copyright notice +commit 27bec4237fa34883854d8c83ce1484fcc0aef165 +Author: Vladimir Nadvornik +Date: Mon Jul 30 18:21:13 2012 +0200 ------------------------------------------------------------------------- -r1898 | nadvornik | 2010-01-27 23:27:10 +0100 (Wed, 27 Jan 2010) | 2 lines + prevent crash in g_utf8_collate_key + + https://sourceforge.net/tracker/?func=detail&aid=3330014&group_id=222125&atid=1054680 -czech translation fixes +commit 16bb1afa0623d20923b31c95f4ddf45441b2b5d3 +Author: Vladimir Nadvornik +Date: Mon Jul 30 16:31:04 2012 +0200 ------------------------------------------------------------------------- -r1897 | zas_ | 2010-01-27 20:58:11 +0100 (Wed, 27 Jan 2010) | 1 line + use AC_SYS_LARGEFILE + + Subject: Build with large file support + From: Michal Čihař + Forwarded: https://sourceforge.net/tracker/?func=detail&aid=3026317&group_id=222125&atid=1054682 -Update catalan translation, by angel mompo. ------------------------------------------------------------------------- -r1896 | zas_ | 2010-01-17 14:34:48 +0100 (Sun, 17 Jan 2010) | 1 line +commit 27cdadd96d24077e3bca57ae4f4d2aa97e413612 +Author: Vladimir Nadvornik +Date: Sun Jul 29 19:07:39 2012 +0200 -Fix osd zoom level refreshing (it was broken since some times). ------------------------------------------------------------------------- -r1895 | zas_ | 2010-01-13 20:49:39 +0100 (Wed, 13 Jan 2010) | 5 lines + update file data structure + + update file data structure in view_dir_tree when a new directory + is created -Update dutch translation. Work in progress. +commit 99d04b829d846921ddff3f8d268a8e2f08fe64cd +Author: Vladimir Nadvornik +Date: Sun Jul 29 19:05:58 2012 +0200 -Patch by Marcel Pol. + statusbar fix + + make sure layout_status_update_image is called only on valid + statusbar +commit cce7db24ab6fc622b0b87cbc31d9cd3cf2abb5b1 +Author: Vladimir Nadvornik +Date: Sun Jul 29 15:02:56 2012 +0200 ------------------------------------------------------------------------- -r1894 | mow | 2010-01-11 15:10:49 +0100 (Mon, 11 Jan 2010) | 1 line + update statusbar after changing active image + + https://sourceforge.net/tracker/?func=detail&aid=3531954&group_id=222125&atid=1054680 -Wops, typo... ------------------------------------------------------------------------- -r1893 | zas_ | 2010-01-10 15:23:29 +0100 (Sun, 10 Jan 2010) | 10 lines +commit f4245483e556c3a31ce53f39c4cfa78c805f85ca +Author: Vladimir Nadvornik +Date: Fri Jul 27 16:28:48 2012 +0200 -copy_file(): remove incomplete file on error (bug 2890715) + changed "readonly destination directory" to a warning -The behavior changed, data is first written to a temporary file, -which is unlinked in case of error, then the tempfile is renamed -to the final name. -Size of buffer was increased from 4k to 16k. +commit 3e0e566eca5097f546eb5989196722ac6c1f732c +Author: Vladimir Nadvornik +Date: Fri Jul 27 15:03:58 2012 +0200 + fixed bug in cache handling + + changed files stayed in cache, but they were reported as not found, + this caused leaks and crashes + bug introduced by change of notification function, + commit 78cde6934008f79fe498e4adc64d187b0ed47417 +commit d17c428da1a3a25b1a24f50470f14e98e8cbd226 +Author: Vladimir Nadvornik +Date: Thu Jul 26 16:02:52 2012 +0200 + initialize default options before commandline parsing + + this fixes a crash on images specified on commandline ------------------------------------------------------------------------- -r1892 | zas_ | 2010-01-09 12:44:27 +0100 (Sat, 09 Jan 2010) | 1 line +commit cb758c2979a2a096c45ab0cb691cd063d81ae703 +Merge: af76525 6f70188 +Author: Klaus Ethgen +Date: Thu May 17 18:28:56 2012 +0100 -Workaround intltoolize 0.40.6 bug related to LINGUAS, see bug 2817602. ------------------------------------------------------------------------- -r1891 | zas_ | 2010-01-09 11:37:48 +0100 (Sat, 09 Jan 2010) | 1 line + Merge commit 'refs/merge-requests/1' of git://gitorious.org/geeqie/geeqie into merge-requests/1 + + * git://gitorious.org/geeqie/geeqie: + Ignore duplicates with same path -Log a message when EOVERFLOW error is set by stat() when building files lists. See bug 2876142. ------------------------------------------------------------------------- -r1890 | zas_ | 2010-01-05 23:28:11 +0100 (Tue, 05 Jan 2010) | 8 lines +commit af76525a87cc636cdf7f5454f4e32969ef903534 +Merge: 5ef3084 dc3dea1 +Author: Klaus Ethgen +Date: Mon May 14 17:33:21 2012 +0100 -Add Serbian translation. + Merge remote-tracking branch 'origin/toer' + + * origin/toer: + Complete Swedish translation including bugs based on 55de20b 2010-12-11 version + Almost complete Swedish translation + Started with Swedish translation + + Merged on request of Tore. -Note there are two *.po files, one for Cyrilic and one for Latin -letters. +commit 5ef30846a7bc94585771a6d08284b771320b33d4 +Author: Klaus Ethgen +Date: Fri Jan 6 02:23:57 2012 +0100 -Thanks to Milos Popovic. + Fix directory walking bug + + There was a annoying bug when walking up more than one directory level. +commit 6f701885de29cc7ce188fdd3be50cdab253d5f98 +Author: cybjit +Date: Mon Apr 25 12:53:35 2011 +0200 ------------------------------------------------------------------------- -r1889 | zas_ | 2010-01-05 23:26:03 +0100 (Tue, 05 Jan 2010) | 1 line + Ignore duplicates with same path -Update README about translations. ------------------------------------------------------------------------- -r1888 | zas_ | 2010-01-05 18:49:50 +0100 (Tue, 05 Jan 2010) | 13 lines +commit ce2d11c4d9df655a4fff053373b724d985a25db0 +Author: Vincent Blut +Date: Sat Dec 3 15:46:20 2011 +0100 -Allow to switch to fullscreen mode using LIRC. + Various errors in the translation (typo, etc.) + + Patch submitted by Vincent Blut that fix some typo in French locales. + Closes Debian bug #620895. -Imagine the following situation (which happened to me several times) : -you want to see photos from your bed or your sofa so you launch geeqie -and go to the right directory, then you take your remote control and sit -comfortably far from your keyboard and mouse. And when you want to begin -to watch photos, you realize you forgot to enable full screen! You have -to stand up and to go until your computer and come back, whereas you -could have done it with your remote control. +commit bc3ed05a47d86ee3ec78d166df17d1f446f2d0cd +Author: Vladimir Nadvornik +Date: Sat Nov 12 11:36:18 2011 +0100 -Patch by Bernard Massot. + call size signal indirectly via idle_call + + image_loader_size_cb is called from a second thread, so it can't + use any gtk functions directly or via signals + this fixes random crashes in gtk code introduced by commit e24281e5 +commit 4cbe6b68b12b1102fcdc2dcec99e6b03c74291a1 +Author: Vladimir Nadvornik +Date: Sat Nov 12 11:34:55 2011 +0100 ------------------------------------------------------------------------- -r1887 | zas_ | 2010-01-02 13:38:55 +0100 (Sat, 02 Jan 2010) | 1 line + call log window functions indirectly via idle callbacks -Get rid of Geeqie version and beta release message. It clutters command line usage, and is not that useful. Suggested by Michal ?\196?\140iha?\197?\153. ------------------------------------------------------------------------- -r1881 | zas_ | 2009-12-19 13:53:20 +0100 (Sat, 19 Dec 2009) | 9 lines +commit 04bb6f2326f58139c22d3bb8de7e639c8efb40ba +Author: Vladimir Nadvornik +Date: Tue Oct 4 22:09:55 2011 +0200 -Fix bug 2917164. -g_utf8_collate_key_for_filename() don't give sort order one -may expect. Using g_utf8_collate_key() make things closer -to many other programs output (ie. ls and gqview). + rename file_data_new_simple to file_data_new_group, filedata.c cleanup -Thanks to Michael pointing this out. +commit 58e4671ba18ae3b3a996f3f518151fc6fb2bbdf0 +Author: Vladimir Nadvornik +Date: Sun Oct 2 11:55:34 2011 +0200 + recognize all registered extensions, even if they contain dots +commit 52d7c7d5a99e904839c0497f32ca6d2586b9a14f +Author: Vladimir Nadvornik +Date: Sun Oct 2 11:16:03 2011 +0200 ------------------------------------------------------------------------- -r1880 | zas_ | 2009-12-19 13:49:19 +0100 (Sat, 19 Dec 2009) | 1 line + sidecar_file_priority function is already called with extension as an argument -Store sort parameters in appropriate variables. ------------------------------------------------------------------------- -r1879 | zas_ | 2009-12-10 18:48:43 +0100 (Thu, 10 Dec 2009) | 4 lines +commit 78cde6934008f79fe498e4adc64d187b0ed47417 +Author: Vladimir Nadvornik +Date: Sun Oct 2 11:12:44 2011 +0200 -Move "Add Keyword" menu item at top of Keywords bar contextual menu. + call notify functions in in an idle call -Suggested by Lars T?\195?\164uber. +commit 5276a3faf1ab551a34acb45e72ae15213a7ccbfc +Author: Vladimir Nadvornik +Date: Sat Oct 1 23:21:08 2011 +0200 ------------------------------------------------------------------------- -r1878 | zas_ | 2009-12-10 18:44:31 +0100 (Thu, 10 Dec 2009) | 7 lines + move the grouping code from file_data_new to filelist_read -Fix contextual menus in lateral bars. +commit aff67e653215952b4766cf33bfdfa24cd93949b3 +Author: Vladimir Nadvornik +Date: Sat Oct 1 20:58:34 2011 +0200 -Use button_release_event instead of button_press_event, -this makes contextual menus persistent until an option -is selected or the menu is closed. + separate function fortesting changed files without sidecars +commit 21a8bc375e28b4950bac3a1a3e1aef1f734d9c63 +Author: Vladimir Nadvornik +Date: Sat Oct 1 17:11:10 2011 +0200 ------------------------------------------------------------------------- -r1877 | zas_ | 2009-12-04 22:01:11 +0100 (Fri, 04 Dec 2009) | 1 line + consistent use of fd->extension -Some systems do not have SA_SIGINFO (siginfo_t), like GNU/Hurd, so just test if defined or not. Patch by Michal ?\196?\140iha?\197?\153 (Bug ID: 2894271). ------------------------------------------------------------------------- -r1876 | zas_ | 2009-12-04 21:40:02 +0100 (Fri, 04 Dec 2009) | 1 line +commit e6308d6f082ede8e9d6e57b14806356c8923c65d +Author: Vladimir Nadvornik +Date: Sat Oct 1 16:31:58 2011 +0200 -Editors: disable Delete button if a .desktop file is not writeable and disable Edit button when no entry is selected. ------------------------------------------------------------------------- -r1875 | zas_ | 2009-12-04 20:45:09 +0100 (Fri, 04 Dec 2009) | 1 line + simplified grouping of sidecars -Add Opera to the list of browsers. Patch by Christian Heckendorf (feature request ID: 2908469). ------------------------------------------------------------------------- -r1874 | nadvornik | 2009-11-28 00:27:35 +0100 (Sat, 28 Nov 2009) | 2 lines +commit 18d80ca385e38b3bf9bc4ef36264bb4d430aa1f6 +Author: Vladimir Nadvornik +Date: Fri Sep 30 23:57:31 2011 +0200 -build documentation with gnome-doc-tool in makefile + fixed filelist_sort_compare_filedata to not return 0 no different files ------------------------------------------------------------------------- -r1873 | nadvornik | 2009-11-22 10:12:22 +0100 (Sun, 22 Nov 2009) | 2 lines +commit efc8096527d6f743d17c44b9982616a169973f39 +Author: Vladimir Nadvornik +Date: Fri Sep 30 23:02:26 2011 +0200 -scripts for converting wiki documentation to docbook + always check for sidecars by readdir ------------------------------------------------------------------------- -r1872 | nadvornik | 2009-11-21 21:08:51 +0100 (Sat, 21 Nov 2009) | 5 lines +commit 7bb3871e21c03b7103792524458eddf0616880db +Author: Vladimir Nadvornik +Date: Fri Sep 30 10:54:32 2011 +0200 -check gtk_clutter_init return value + do not use FileData entries with empty path -https://sourceforge.net/tracker/index.php?func=detail&aid=2899866&group_id=222125&atid=1054680 +commit 559683ddda8610a986ea1355dc191e8e20f77a23 +Author: Vladimir Nadvornik +Date: Thu Sep 29 17:17:20 2011 +0200 + updated copyright notice ------------------------------------------------------------------------- -r1871 | nadvornik | 2009-11-18 13:34:30 +0100 (Wed, 18 Nov 2009) | 2 lines +commit 4f028fb255a5edaeb2aec25d2e87ef4b8a2aa44d +Author: Vladimir Nadvornik +Date: Thu Sep 29 17:14:36 2011 +0200 -changed https to http in wiki links + added custom tiff loader ------------------------------------------------------------------------- -r1870 | zas_ | 2009-11-13 19:37:31 +0100 (Fri, 13 Nov 2009) | 1 line +commit 25d02a83df709d2852f4cb90867aa261b80280ca +Author: Vladimir Nadvornik +Date: Thu Sep 29 12:36:08 2011 +0200 -Spanish translation was updated. Thanks to Redy Rodriguez. ------------------------------------------------------------------------- -r1869 | zas_ | 2009-11-07 22:31:23 +0100 (Sat, 07 Nov 2009) | 1 line + added long-term cache for keywords -Updated spanish translation. Thanks to Redy Rodriguez. ------------------------------------------------------------------------- -r1868 | mow | 2009-10-13 23:49:42 +0200 (Tue, 13 Oct 2009) | 1 line +commit bdea8db7b066162269cc1d9d09d745983e5fadb0 +Author: Vladimir Nadvornik +Date: Tue Sep 27 22:06:09 2011 +0200 -German translation update ------------------------------------------------------------------------- -r1867 | mow | 2009-10-13 23:49:21 +0200 (Tue, 13 Oct 2009) | 8 lines + set stereo.fixed default values to hdmi stereo standard -Add compatibility for GTK 2.18 +commit 216a72fa46b4f35d8b4f36dfb7b7a227300faa4c +Author: Vladimir Nadvornik +Date: Tue Sep 27 22:03:47 2011 +0200 -With 2.18 some functions are deprecated. With geeqie that are two at the -moment. -- gtk_tree_view_column_get_cell_renderers - which can be replaced by - gtk_cell_layout_get_cells -- gdk_event_get_graphics_expose - I just commented it as there seems to - be no replacement in GTK 2.18 ------------------------------------------------------------------------- -r1866 | nadvornik | 2009-10-10 17:01:41 +0200 (Sat, 10 Oct 2009) | 2 lines + fixed stereo.fixed preferences -added a workaround for https://bugzilla.gnome.org/show_bug.cgi?id=590692 +commit 1c4103ded9b34d240b76779d5ea8a5c16bbf1924 +Author: Vladimir Nadvornik +Date: Tue Sep 27 21:12:02 2011 +0200 ------------------------------------------------------------------------- -r1865 | nadvornik | 2009-10-10 12:15:23 +0200 (Sat, 10 Oct 2009) | 4 lines + fixed stereo_temp_disable functionality -use text renderer for editor->hidden +commit f5470bbc26b15ce585c8f1cedfad3adfa611ef85 +Author: Vladimir Nadvornik +Date: Tue Sep 27 10:29:36 2011 +0200 -The toggle was too confusing because it was not dirrectly editable. + added panorama .pto file to the list of known files ------------------------------------------------------------------------- -r1864 | nadvornik | 2009-10-01 20:40:34 +0200 (Thu, 01 Oct 2009) | 7 lines +commit 0736b5d6b3b31bb24531284b44b90b7b225d9e7c +Author: Vladimir Nadvornik +Date: Fri Jul 29 15:27:09 2011 +0200 -ignored multiple directories specified on commandline + fixed crash on incomplete jpeg file -IMHO this was inconsistent - specifying one directory had completely -different effect than specifying two or more directories. Moreover, -it segfaulted. -Now only one directory is allowed. +commit 10f4b603e6b8ad553a7b9c9afb4aa92e43dccae6 +Author: Vladimir Nadvornik +Date: Sat May 14 22:16:49 2011 +0200 ------------------------------------------------------------------------- -r1863 | nadvornik | 2009-10-01 19:37:51 +0200 (Thu, 01 Oct 2009) | 2 lines + added Cycle through stereo modes menu entry -fixed tree_store reordering +commit e9780e09d7e57bd5f5c3594bdd773bb2541ec232 +Author: Vladimir Nadvornik +Date: Sat May 14 21:53:45 2011 +0200 ------------------------------------------------------------------------- -r1862 | nadvornik | 2009-09-28 14:04:35 +0200 (Mon, 28 Sep 2009) | 2 lines + do not mix autodetected and user-defined stereo mode -do not cache incomplete thumbnails +commit c447b43b8f8291da9d941718afaa0b2c9d950efc +Author: Vladimir Nadvornik +Date: Sun Apr 10 21:11:50 2011 +0200 ------------------------------------------------------------------------- -r1861 | nadvornik | 2009-09-28 11:57:06 +0200 (Mon, 28 Sep 2009) | 2 lines + more compilation fixes -consider sidecars in layout_image popup menu +commit 7a8a4c7e4448572ba18d4ded8cf7e86dbd5bf8e7 +Author: Vladimir Nadvornik +Date: Sun Apr 10 20:30:17 2011 +0200 ------------------------------------------------------------------------- -r1860 | nadvornik | 2009-09-26 13:37:09 +0200 (Sat, 26 Sep 2009) | 6 lines + compilation fixes -bar_gps cleanup +commit 0ec34da9df56efdd6963a0f3569fe24299a8ba0d +Author: Vladimir Nadvornik +Date: Sat Apr 9 19:27:43 2011 +0200 -- removed the scrollbar -- do not set decel-rate, - https://bugzilla.gnome.org/show_bug.cgi?id=596419 + fixed libjpeg in autoconf ------------------------------------------------------------------------- -r1859 | nadvornik | 2009-09-26 10:47:28 +0200 (Sat, 26 Sep 2009) | 8 lines +commit 18f8e33ac8681cd297a980a936bd2ce2467614da +Author: Vladimir Nadvornik +Date: Sat Apr 9 16:07:31 2011 +0200 -print text using pango renderer + improved mpo parser, consider individual image type code -- the text is sent to postscript as a bitmap -- this fixes printing of non-ascii characters +commit e5235578ba189827610cec22c9ca8bc17c433113 +Author: Vladimir Nadvornik +Date: Fri Apr 8 21:16:41 2011 +0200 -http://sourceforge.net/tracker/index.php?func=detail&aid=2836135&group_id=222125&atid=1054680 + fixed to compile with other libjpeg versions +commit dd008ca74ba4a924b202021a7d0dbd11cf0dc542 +Author: Vladimir Nadvornik +Date: Sun Mar 27 19:22:29 2011 +0200 ------------------------------------------------------------------------- -r1858 | nadvornik | 2009-09-25 22:39:15 +0200 (Fri, 25 Sep 2009) | 8 lines + allocate tile pixbuf allways -require libchamplain 0.4 +commit 43b479c1042930d616cb4c8fb9e80ee5fd0900ec +Author: Vladimir Nadvornik +Date: Sun Mar 27 18:20:19 2011 +0200 -- check for libchamplain 0.4 -- dropped libchamplain 0.3.x support + updated copyright notices -http://sourceforge.net/tracker/index.php?func=detail&aid=2861847&group_id=222125&atid=1054680 +commit a7efe96305e0e1847c2e20b119c86cac03fd9e56 +Author: Vladimir Nadvornik +Date: Sun Mar 27 18:14:17 2011 +0200 + free mpo data ------------------------------------------------------------------------- -r1857 | nadvornik | 2009-09-24 23:52:44 +0200 (Thu, 24 Sep 2009) | 2 lines +commit 85dbc07da126d6229f37821e5dd49c3b8546e80e +Author: Vladimir Nadvornik +Date: Sun Mar 27 13:53:23 2011 +0200 -fixed and simplified sidecar grouping code + fixed jpeg_segment_find to support more app2 segments with different signatures ------------------------------------------------------------------------- -r1856 | nadvornik | 2009-09-24 20:02:29 +0200 (Thu, 24 Sep 2009) | 2 lines +commit c2378af08d9bb0b9ee1f958c9a4b50bc65abbed8 +Author: Vladimir Nadvornik +Date: Sun Mar 27 12:52:09 2011 +0200 -fixed emitting of error signal from image loader + store stereo flag in loader data ------------------------------------------------------------------------- -r1855 | nadvornik | 2009-09-21 20:48:32 +0200 (Mon, 21 Sep 2009) | 5 lines +commit 2f3197170c42959552141b2600c9d828542792a8 +Author: Vladimir Nadvornik +Date: Sun Mar 27 12:02:30 2011 +0200 -fixed pan-view popup menu + fixed freed data access -- removed wrong callback -- consider sidecar files in the editor popup +commit 091dae0b7d6e602da76f624ddac3e335e262e1fa +Author: Vladimir Nadvornik +Date: Sun Mar 27 11:58:29 2011 +0200 ------------------------------------------------------------------------- -r1854 | nadvornik | 2009-09-14 23:25:10 +0200 (Mon, 14 Sep 2009) | 2 lines + load mpo files as SBS -fixed selection handling in sidebar +commit c546114c635f93ff254b4d479a1b6370377d054b +Author: Vladimir Nadvornik +Date: Sun Mar 27 10:57:08 2011 +0200 ------------------------------------------------------------------------- -r1853 | nadvornik | 2009-09-13 23:08:40 +0200 (Sun, 13 Sep 2009) | 5 lines + added mpo parser -fixed editor list in popup menu +commit 3b1800b11fd5f98ce268b358f17585d43641c3ea +Author: Vladimir Nadvornik +Date: Sat Mar 26 22:13:39 2011 +0100 -- show an editor if any of selected files matches -- added debug messages + split jpeg parser functions to separate file ------------------------------------------------------------------------- -r1852 | nadvornik | 2009-09-13 23:03:17 +0200 (Sun, 13 Sep 2009) | 2 lines +commit ec75c814d6f79ec16426ee40aacbf7d0aded8e41 +Author: Vladimir Nadvornik +Date: Sat Mar 26 22:03:30 2011 +0100 -fixed incorrect translation + added custom jpeg loader ------------------------------------------------------------------------- -r1851 | nadvornik | 2009-09-13 22:00:08 +0200 (Sun, 13 Sep 2009) | 2 lines +commit b5b810393f0fae5071a0263db376dadaf595d4c5 +Author: Vladimir Nadvornik +Date: Sat Mar 26 17:57:25 2011 +0100 -fixed filelist refresh + infrastructure for image loader backend ------------------------------------------------------------------------- -r1850 | nadvornik | 2009-09-13 14:33:11 +0200 (Sun, 13 Sep 2009) | 2 lines +commit 09037ad50bd7a839794df37034bcd3dd378cab13 +Author: Vladimir Nadvornik +Date: Fri Mar 25 23:25:15 2011 +0100 -preserve histmap on NOTIFY_CHANGE + renderer interface cleanup ------------------------------------------------------------------------- -r1849 | nadvornik | 2009-09-13 11:55:21 +0200 (Sun, 13 Sep 2009) | 2 lines +commit c9965882aeed23e72cf019f6d3859a69d1d4aebd +Author: Vladimir Nadvornik +Date: Fri Mar 25 23:14:01 2011 +0100 -added possibility to use geeqie-rotate as a standalone script + fixed redrawing on expose event ------------------------------------------------------------------------- -r1848 | nadvornik | 2009-09-12 18:37:05 +0200 (Sat, 12 Sep 2009) | 2 lines +commit a5a53debed949e9511e6e6fcd454aa324334a8cf +Author: Vladimir Nadvornik +Date: Fri Mar 25 22:09:59 2011 +0100 -strip the "lang=" prefix from exiv2 in all metadata formats + fixed area_changed handling ------------------------------------------------------------------------- -r1847 | nadvornik | 2009-09-12 18:03:09 +0200 (Sat, 12 Sep 2009) | 2 lines +commit 8a3733bbabbca537e1f741984fa8b5e94cca08c6 +Author: Vladimir Nadvornik +Date: Sun Mar 20 19:16:07 2011 +0100 -simplified template + added more anaglyph modes ------------------------------------------------------------------------- -r1846 | nadvornik | 2009-09-12 17:51:37 +0200 (Sat, 12 Sep 2009) | 5 lines +commit 19f041e7e105a568a57b22cc36e30590ccc75de7 +Author: Vladimir Nadvornik +Date: Sun Mar 20 12:49:00 2011 +0100 -editor fixes + added half-size (3dtv) stereo mode -- fixed editor loading order -- fixed EditorWindow->modified flag handling +commit 797e4dbd59e944c3d3b78d25b44dfe7ae8bb287e +Author: Vladimir Nadvornik +Date: Sun Mar 20 11:31:08 2011 +0100 ------------------------------------------------------------------------- -r1845 | nadvornik | 2009-09-12 17:31:24 +0200 (Sat, 12 Sep 2009) | 2 lines + fixed sbs mode -fixed reloading of editors +commit e82e902ed059b5ed4e12a1c48e816cdf3c514940 +Author: Vladimir Nadvornik +Date: Sun Mar 20 11:11:08 2011 +0100 ------------------------------------------------------------------------- -r1844 | nadvornik | 2009-09-09 20:16:09 +0200 (Wed, 09 Sep 2009) | 2 lines + save and load stereo options -advertisment added +commit f2ee23371ea8a95eb54cd39bf191e658f99cae7e +Author: Vladimir Nadvornik +Date: Sun Mar 20 10:52:41 2011 +0100 ------------------------------------------------------------------------- -r1843 | nadvornik | 2009-09-07 22:44:29 +0200 (Mon, 07 Sep 2009) | 5 lines + improved preferences dialog -start_editor_from_filelist_full fixes +commit bd4b6cfb641e52f646931b69ddccbcacb0f85a5f +Author: Vladimir Nadvornik +Date: Sun Mar 20 10:15:07 2011 +0100 -fixed return value from start_editor_from_filelist_full() -call editor_command_parse to detect possible problems early enough + added fixed stereo mode ------------------------------------------------------------------------- -r1842 | nadvornik | 2009-09-07 22:04:22 +0200 (Mon, 07 Sep 2009) | 2 lines +commit 826ea8c822093a131c5c44c9c02252aff5d60d2e +Author: Vladimir Nadvornik +Date: Sun Mar 20 00:23:54 2011 +0100 -fixed list of possible editors in popup menu + removed 'swap' entry from menu ------------------------------------------------------------------------- -r1841 | nadvornik | 2009-09-07 21:48:05 +0200 (Mon, 07 Sep 2009) | 5 lines +commit 28fd30edc8bf0a4d0a62c2732d37f512affaf87b +Author: Vladimir Nadvornik +Date: Sun Mar 20 00:18:13 2011 +0100 -fixes sidecar file grouping + temporarily disable stereo mode, added more stereo prefs -files with a number in extension were listed twice, it -caused problems later +commit 623bc05945e68c9242a69290de12501435a1bc18 +Author: Vladimir Nadvornik +Date: Sat Mar 19 21:42:13 2011 +0100 ------------------------------------------------------------------------- -r1840 | zas_ | 2009-09-07 10:24:09 +0200 (Mon, 07 Sep 2009) | 1 line + type of source stereo image made adjustable from menu -Comment out unused functions, silenting related compilation warnings. ------------------------------------------------------------------------- -r1839 | zas_ | 2009-09-07 10:18:18 +0200 (Mon, 07 Sep 2009) | 1 line +commit bab7032f6f11847e68ce1ac42d68a18d50aed220 +Author: Vladimir Nadvornik +Date: Sat Mar 19 19:53:30 2011 +0100 -Remove an unused variable and minor code cleanup. ------------------------------------------------------------------------- -r1838 | nadvornik | 2009-09-06 16:29:19 +0200 (Sun, 06 Sep 2009) | 2 lines + stereo mode preferences -improved editor loading +commit f5f37819bf9ede89c68114b079feb24d19e49343 +Author: Vladimir Nadvornik +Date: Sat Feb 5 22:22:12 2011 +0100 ------------------------------------------------------------------------- -r1837 | nadvornik | 2009-09-06 16:21:19 +0200 (Sun, 06 Sep 2009) | 2 lines + change stereo mode from menu -fixed unnecessary image reloads in color menu +commit 68dc88956d7b42a3ced0e0256d075307e866494f +Author: Vladimir Nadvornik +Date: Sat Feb 5 18:20:16 2011 +0100 ------------------------------------------------------------------------- -r1836 | nadvornik | 2009-09-06 16:01:03 +0200 (Sun, 06 Sep 2009) | 9 lines + swap stereo images -load desktop files in idle time +commit 8ea74ae53b6c32d3d5492340fe16fdeeedd12f26 +Author: Vladimir Nadvornik +Date: Fri Feb 4 23:49:13 2011 +0100 -- scanning all desktop files takes a lot of time because of hdd seek -- this change moves the scanning to idle time -- the editors appears in the menus some time after startup + added mirrored stereo mode -https://sourceforge.net/tracker/index.php?func=detail&aid=2852522&group_id=222125&atid=1054680 +commit 086196582749a9f9fd254399665c56a892348ce3 +Author: Vladimir Nadvornik +Date: Sat Jan 29 17:43:05 2011 +0100 + fixed overlay position - part2 ------------------------------------------------------------------------- -r1835 | nadvornik | 2009-09-06 11:08:37 +0200 (Sun, 06 Sep 2009) | 2 lines +commit a081296160a39396e395eab36c091cddfb9f216e +Author: Vladimir Nadvornik +Date: Sat Jan 29 17:35:29 2011 +0100 -added messages for debugging startup time + fixed overlay position ------------------------------------------------------------------------- -r1834 | zas_ | 2009-09-05 15:48:21 +0200 (Sat, 05 Sep 2009) | 1 line +commit cb324a14505d277f8c2def3512e71f64d151531b +Author: Vladimir Nadvornik +Date: Sat Jan 29 17:15:39 2011 +0100 -Update svn ignore lists. ------------------------------------------------------------------------- -r1833 | zas_ | 2009-09-04 17:53:04 +0200 (Fri, 04 Sep 2009) | 5 lines + do not draw tiles outside the viewport -Fix up compilation issues related to libchamplain. +commit 589a4cb49ae1b9c0a8618ca3918a579ef9e517ae +Author: Vladimir Nadvornik +Date: Sat Jan 29 14:49:38 2011 +0100 -See http://sourceforge.net/tracker/index.php?func=detail&aid=2848469&group_id=222125&atid=1054680 + display pixel aspect ratio support +commit 0a5ec68af089d4b79c3816d3e7df0434ea0ad5e8 +Author: Vladimir Nadvornik +Date: Fri Jan 28 14:34:57 2011 +0100 ------------------------------------------------------------------------- -r1832 | nadvornik | 2009-09-03 22:00:40 +0200 (Thu, 03 Sep 2009) | 2 lines + anaglyph support -fixed in-place rename +commit fa7103087ac4eaf5d2ddd560fa472d4c4d8a1fa2 +Author: Vladimir Nadvornik +Date: Fri Jan 28 13:13:27 2011 +0100 ------------------------------------------------------------------------- -r1831 | nadvornik | 2009-09-03 21:18:20 +0200 (Thu, 03 Sep 2009) | 5 lines + rt_tile_render cleanup part 3 -do not reload image on copy, move, rename and external editor +commit 3dd0e08368b389250b15790036be7f00075a1d74 +Author: Vladimir Nadvornik +Date: Fri Jan 28 13:05:14 2011 +0100 -changed files should be detected anyway -http://sourceforge.net/tracker/index.php?func=detail&aid=2848373&group_id=222125&atid=1054680 + rt_tile_render cleanup part 2 ------------------------------------------------------------------------- -r1830 | nadvornik | 2009-08-29 01:09:05 +0200 (Sat, 29 Aug 2009) | 2 lines +commit 808d8558b3d5e2ec8791ca3ea2a0ba14e5e18823 +Author: Vladimir Nadvornik +Date: Fri Jan 28 12:44:32 2011 +0100 -fixed vd_notify_cb leak + rt_tile_render cleanup part 1 ------------------------------------------------------------------------- -r1829 | nadvornik | 2009-08-28 23:01:29 +0200 (Fri, 28 Aug 2009) | 2 lines +commit 6b9ed5a71fc7230c795e4edd541fb79a5d022220 +Author: Vladimir Nadvornik +Date: Fri Jan 28 11:05:07 2011 +0100 -improved printing of selection + first stereo support ------------------------------------------------------------------------- -r1828 | nadvornik | 2009-08-28 22:18:46 +0200 (Fri, 28 Aug 2009) | 2 lines +commit 63fdb63ce1470f08c4be2d7a2ff02582c331560e +Author: Vladimir Nadvornik +Date: Thu Jan 27 13:40:05 2011 +0100 -improved the sidecar grouping algorithm + separated tile renderer ------------------------------------------------------------------------- -r1827 | nadvornik | 2009-08-27 22:23:28 +0200 (Thu, 27 Aug 2009) | 4 lines +commit a8c5cb269996f35d4877e31514956c198c3bd2e5 +Author: Vladimir Nadvornik +Date: Mon Sep 26 15:02:05 2011 +0200 -fixed toggle_slideshow function + ignore raw image support reported by the pixbuf loader -https://sourceforge.net/tracker/index.php?func=detail&aid=2844302&group_id=222125&atid=1054680 +commit d2c78b7a8dadc45b958e1b74242d64766e9f6e9f +Author: Vladimir Nadvornik +Date: Sat Apr 9 16:38:46 2011 +0200 ------------------------------------------------------------------------- -r1826 | nadvornik | 2009-08-26 21:19:06 +0200 (Wed, 26 Aug 2009) | 2 lines + fixed using DEBUG_N from multiple threads -updated version message +commit 8a55b69211b5866025f66c514f34ad697d3d1909 +Author: Laurent Monin +Date: Thu Dec 16 22:26:36 2010 +0100 ------------------------------------------------------------------------- -r1825 | nadvornik | 2009-08-26 21:16:02 +0200 (Wed, 26 Aug 2009) | 2 lines + Fix bug 3006812: ensure exif cache is initialized even when all files are unreadable. + + Add a new function exif_init_cache() and call it at top of exif_read_fd(), + the issue was caused by a return NULL on unreadable file, before initializinf exif_cache + and when exif_free_fd() is called, file_cache_put() was called on invalid cache. -save one unnecessary call to stat_utf8 +commit 138e31f328408ac88f1162999c8fcb24298ab37a +Author: Vladislav Naumov +Date: Thu Dec 16 21:55:03 2010 +0100 ------------------------------------------------------------------------- -r1824 | nadvornik | 2009-08-26 00:21:46 +0200 (Wed, 26 Aug 2009) | 4 lines + Fix bug 2999830: do not report failed chown() on copy. + + Debian bug 574853 reported by Ian Zimmerman + + I was trying to copy images from my camera which is mounted as a USB + mass storage device. The files on the mount are owned by root, and + geeqie tries to chown (and chgrp) the copy, fails, and displays an + error message. This is only mildly annoying when copying a single + file, but when I want to copy multiple files the failure stops the + operation after the first file. + + Patch by Vladislav Naumov + + This patch ignores chown errors, while still doing chown + (so root still can copy files preserving ownership). + + http://sourceforge.net/tracker/?func=detail&aid=2999830&group_id=222125&atid=1054680 + http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=574853 (original report) -use name as a tooltip of external editor if comment is missing +commit bd374b070d437d6319946c49ae0166ee4621e737 +Author: Klaus Ethgen +Date: Sun Jul 24 13:17:34 2011 +0100 -the hotkey dialog ignores entries with empty tooltip + Change the image size from 10×20 to 20×20 + + Now the image should not be scaled anymore. Fix Bug Debian:614607 and + SF:3191174. ------------------------------------------------------------------------- -r1823 | nadvornik | 2009-08-25 23:30:50 +0200 (Tue, 25 Aug 2009) | 7 lines +commit 8f9ba4127954be5e04ac4c8b1822399a435af1ed +Author: Klaus Ethgen +Date: Sun May 15 19:44:04 2011 +0100 -write metadata before another opeation + Fix a remote command bug -- this is implemented for copy and external editor -- the unsaved metadata should survive operations like move or rename -- saving metadata before delete is pointless +commit 31f6b82dbee7f4456371a1b527161ebc81342577 +Author: Klaus Ethgen +Date: Sat Apr 9 19:47:30 2011 +0100 + Do not delete path settings when adding new directory + + This patch will change the way, geeqie is mangling the path name in the + rename (copy) dialog when creating new directory. Will fix the bugs + Debian:529531 and SF:2795791. ------------------------------------------------------------------------- -r1822 | nadvornik | 2009-08-23 16:10:56 +0200 (Sun, 23 Aug 2009) | 4 lines +commit a4270acba9810bb6307e7d8da1334211898d8fb5 +Author: Klaus Ethgen +Date: Fri Jul 16 13:30:53 2010 +0100 -workaround for xpm loader + Fix compiling issue + + img-view.c: In function 'real_view_window_new': + img-view.c:889: error: 'for' loop initial declarations are only allowed in C99 mode + img-view.c:889: note: use option -std=c99 or -std=gnu99 to compile your code -https://sourceforge.net/tracker/?func=detail&aid=2824016&group_id=222125&atid=1054680 +commit e24281e5b7b6a70c47eeb46c4857913b5eec10a8 +Author: Klaus Ethgen +Date: Sat May 8 23:52:09 2010 +0100 ------------------------------------------------------------------------- -r1821 | nadvornik | 2009-08-23 15:37:15 +0200 (Sun, 23 Aug 2009) | 4 lines + Fix the windowsize + + Opening a new window from a collection should not set the default size. + Unfortunately the size of the image is not available in the early state. -fixed moving and maintenance of std. thumbnails +commit c971abea1cfb4b4d85e1c67dba2d443ebd5e9f86 +Author: Klaus Ethgen +Date: Thu Apr 21 18:44:15 2011 +0100 -https://sourceforge.net/tracker/?func=detail&aid=2836224&group_id=222125&atid=1054680 + Fix wrong line ending ------------------------------------------------------------------------- -r1820 | nadvornik | 2009-08-22 23:58:49 +0200 (Sat, 22 Aug 2009) | 2 lines +commit dc3dea1297365981d2e206fd8afbb84a781ced20 +Author: Tore Ericsson +Date: Mon Feb 14 21:21:55 2011 +0100 -remove deleted files from metadata queue + Complete Swedish translation including bugs based on 55de20b 2010-12-11 version ------------------------------------------------------------------------- -r1819 | nadvornik | 2009-08-22 22:20:19 +0200 (Sat, 22 Aug 2009) | 6 lines +commit 236bc4c0e943f91e022c1c792a0267688e492f1d +Author: Tore Ericsson +Date: Mon Feb 14 15:04:07 2011 +0100 -fixed sidecar grouping + Almost complete Swedish translation + + Could not translate dialogue button texts, such as Apply, Close, Cancel, New, + Edit, Delete, etc. Also remains three entries where I don't know the meaning + on lines 1550, 1558, and 5229. The English text seems to be completely out of + order on lines 5601 and 5606. -- Note also: The first cache path in the + thumbnail dialogue window appears having a duplication error. -this fixes grouping of files which differs only -in upper/lowercase extension. The old code stopped scanning -when the first file was found. +commit 8c25cb5a376d19f3db0b5d8b98a4c16fa8799e9e +Author: Tore Ericsson +Date: Mon Feb 14 14:51:44 2011 +0100 ------------------------------------------------------------------------- -r1818 | nadvornik | 2009-08-18 22:19:23 +0200 (Tue, 18 Aug 2009) | 2 lines + Started with Swedish translation -fixed possible crash in exif_item_get_integer +commit 55de20b6bd7a666ab63ee9d1f60e8fd1833a74c5 +Author: Laurent Monin +Date: Sat Dec 11 20:09:43 2010 +0100 ------------------------------------------------------------------------- -r1817 | nadvornik | 2009-08-03 22:47:14 +0200 (Mon, 03 Aug 2009) | 2 lines + Convert svn:ignore properties to .gitignore + + Simplify .gitignore and add few forgotten entries -updated links +commit b71da225f077c5268a525886967be68739c5be94 +Author: Klaus Ethgen +Date: Mon May 10 11:33:13 2010 +0000 ------------------------------------------------------------------------- -r1816 | mow | 2009-08-03 14:34:57 +0200 (Mon, 03 Aug 2009) | 1 line + Some small logic mistakes + + Use boolean operators for booleans and bitwise otherwise only. -Fixing libexiv2 bug ------------------------------------------------------------------------- -r1815 | mow | 2009-08-02 00:37:57 +0200 (Sun, 02 Aug 2009) | 3 lines +commit dd54e571eb1cd5ffc55a97edecc777180d0dddb4 +Author: Klaus Ethgen +Date: Mon May 10 11:32:56 2010 +0000 -Fix a small problem with casefull keywords + GTK marks several functions as deprecated + + The following functions has been replaced and deprecated by version + 2.20: + - GTK_WIDGET_CAN_FOCUS + - GTK_WIDGET_DRAWABLE + - GTK_WIDGET_HAS_FOCUS + - GTK_WIDGET_HAS_GRAB + - GTK_WIDGET_IS_SENSITIVE + - GTK_WIDGET_NO_WINDOW + - GTK_WIDGET_REALIZED + - GTK_WIDGET_SENSITIVE + - GTK_WIDGET_STATE + - GTK_WIDGET_TOPLEVEL + - GTK_WIDGET_VISIBLE -In @1636 I miss one check for keyword case. Now it should be all fixed. ------------------------------------------------------------------------- -r1814 | mow | 2009-08-02 00:37:37 +0200 (Sun, 02 Aug 2009) | 1 line +commit 7a426d74379c2728ffe2bd0b5a33fd9bb473d7fb +Author: Klaus Ethgen +Date: Sun Feb 28 22:55:37 2010 +0000 -This function is never used anymore: file_maint_removed ------------------------------------------------------------------------- -r1813 | nadvornik | 2009-07-31 22:46:55 +0200 (Fri, 31 Jul 2009) | 2 lines + Add unknown file class to grouping -updated project status +commit b71f37b8dbfd89c79a407698293cc3de44b4f645 +Author: Klaus Ethgen +Date: Sun Feb 28 15:17:12 2010 +0000 ------------------------------------------------------------------------- -r1812 | nadvornik | 2009-07-31 22:31:56 +0200 (Fri, 31 Jul 2009) | 4 lines + Fix a small issue with strptime + + strptime do not initialize all fields. So the undefined fields could end + in crash later on. -added project web page under version control +commit fc390bb82685262d7fc073f0571e39c2fcc1c8c3 +Author: Laurent Monin +Date: Sat Feb 27 23:31:07 2010 +0000 + Allow scrollview to grow when generic dialog is resized (ie. Metadata write ? dialog). Do not force scrollbar if not needed. +commit 34c581a990f3b8f76084e0379282cb6bf8eb9606 +Author: Klaus Ethgen +Date: Sat Feb 27 20:35:26 2010 +0000 ------------------------------------------------------------------------- -r1811 | zas_ | 2009-07-30 19:59:20 +0200 (Thu, 30 Jul 2009) | 1 line + Add the feature to add single keywords to selection + + This patch adds a context menu entry to keywords to ad the current + keyword to all selected images. -Some systems (BSD,MacOsX,HP-UX,...) define MAP_ANON and not MAP_ANONYMOUS. Make each an alias of other to be sure. issue reported by Martin Proetzsch. ------------------------------------------------------------------------- -r1810 | nadvornik | 2009-07-29 23:03:38 +0200 (Wed, 29 Jul 2009) | 2 lines +commit bbcf58c3c476cbff706e04295c028da8239d3e70 +Author: Klaus Ethgen +Date: Sat Feb 27 20:35:09 2010 +0000 -updated czech translation + Little macro correction ------------------------------------------------------------------------- -r1809 | nadvornik | 2009-07-29 00:27:24 +0200 (Wed, 29 Jul 2009) | 4 lines +commit de8ed72a941ef92c51ceca084b66dc7828cb90ab +Author: Klaus Ethgen +Date: Sat Feb 27 20:34:54 2010 +0000 -improved scroll on slower machines + Unifying the datetime output + + The output of %date% and %formatted.DateTime% should be equivalent. -patch by Stanislav Brabec +commit 7cabd51896c7a9411de0336ade042f4e726fe3e1 +Author: Vladimir Nadvornik +Date: Wed Feb 17 21:05:10 2010 +0000 ------------------------------------------------------------------------- -r1808 | nadvornik | 2009-07-29 00:14:26 +0200 (Wed, 29 Jul 2009) | 4 lines + updated ChangeLog file -do not process sidecar files in bar_gps +commit c704896fdb0d0d5b5e2d2205c9d57a4382d343d7 +Author: Vladimir Nadvornik +Date: Tue Feb 16 21:18:03 2010 +0000 -patch by Colin Clark + added 2010 to copyright text ------------------------------------------------------------------------- -r1807 | nadvornik | 2009-07-29 00:03:54 +0200 (Wed, 29 Jul 2009) | 2 lines +commit 7bea2e9641e42a79bf6bc89a7b9d86d68e671b87 +Author: Vladimir Nadvornik +Date: Tue Feb 16 21:10:12 2010 +0000 -run the scripts with /bin/sh + updated version string ------------------------------------------------------------------------- -r1806 | zas_ | 2009-07-25 10:23:23 +0200 (Sat, 25 Jul 2009) | 1 line +commit 43c48179f5b7249ea13b918d0e6cdb156ce3011f +Author: Laurent Monin +Date: Tue Feb 16 20:07:05 2010 +0000 -French translation was updated. ------------------------------------------------------------------------- -r1805 | zas_ | 2009-07-25 10:13:13 +0200 (Sat, 25 Jul 2009) | 1 line + Restore translators list, removed by revision 1899. -Remove some bashisms from configure.in. Patch by Greg Troxel. ------------------------------------------------------------------------- -r1804 | zas_ | 2009-07-25 10:00:07 +0200 (Sat, 25 Jul 2009) | 1 line +commit 113b2377405d3652e66bb547bdf58f981ef6f606 +Author: Laurent Monin +Date: Tue Feb 16 19:55:35 2010 +0000 -Romanian translation was completed. Thanks to Sabin Iacob. ------------------------------------------------------------------------- -r1803 | nadvornik | 2009-07-24 16:07:54 +0200 (Fri, 24 Jul 2009) | 2 lines + Update russian translation. Thanks to Denis Silakov. -update column sizes after toggling thumbnails +commit 4261dfa3f5aaf091e97daeb0f99dd020672fe37b +Author: Vladimir Nadvornik +Date: Sun Feb 14 22:00:23 2010 +0000 ------------------------------------------------------------------------- -r1802 | nadvornik | 2009-07-24 15:32:37 +0200 (Fri, 24 Jul 2009) | 2 lines + fixed segfault in exif parser + + http://sourceforge.net/tracker/index.php?func=detail&aid=2950617&group_id=222125&atid=1054682 -fixed switching of multiline texts +commit b6a2a9d69377da28b4dacdc3630e68e5cb7869ef +Author: Vladimir Nadvornik +Date: Sun Feb 14 21:35:11 2010 +0000 ------------------------------------------------------------------------- -r1801 | nadvornik | 2009-07-24 14:56:54 +0200 (Fri, 24 Jul 2009) | 5 lines + fixed reference count + + there was a bug in reference count on writting unsaved metadata + before starting an external editor -do not try to reload deleted image +commit aa1e53ca14dcd9a75a717792be8a4d5fc735a5eb +Author: Vladimir Nadvornik +Date: Sun Feb 7 13:16:35 2010 +0000 -deleted image is replaced by the next one from the list, keep -the old image displayed until the new one is set + test gnome-doc-tool in configure ------------------------------------------------------------------------- -r1800 | nadvornik | 2009-07-24 14:45:42 +0200 (Fri, 24 Jul 2009) | 6 lines +commit 78b77ae3833bfa191aa94531e5b5ba0765b0cc6e +Author: Vladimir Nadvornik +Date: Sun Feb 7 12:44:55 2010 +0000 -call gtk_tree_view_columns_autosize only when reall needed + dropped obsolete sections, gqview changelog moved to wiki -gtk_tree_view_columns_autosize is rather expensive, call it only -afrer directory change or after user-requested refresh +commit f977ad15657970ebb4621ba46e005cefc0b218ae +Author: Laurent Monin +Date: Tue Feb 2 20:21:11 2010 +0000 + Brazilian Portuguese translation was updated. + + Thanks to Sergio Cipolla. + + References: + http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=567824 ------------------------------------------------------------------------- -r1799 | nadvornik | 2009-07-24 14:21:23 +0200 (Fri, 24 Jul 2009) | 5 lines +commit 0e32e4d57426c075fa4d9f3cee75c5bdd897df48 +Author: Vladimir Nadvornik +Date: Wed Jan 27 22:27:10 2010 +0000 -do not use cell_data_func + czech translation fixes -cell_data_func is too slow, store formatted string in the tree_store -instead +commit b015822f5751b6ad105ad607d196320574d30806 +Author: Laurent Monin +Date: Wed Jan 27 19:58:11 2010 +0000 ------------------------------------------------------------------------- -r1798 | nadvornik | 2009-07-21 16:17:01 +0200 (Tue, 21 Jul 2009) | 10 lines + Update catalan translation, by angel mompo. -fixed destroying of menu data +commit 6088a5dd735b2bea2b1a8b4606b3c32e89b86999 +Author: Laurent Monin +Date: Sun Jan 17 13:34:48 2010 +0000 -Make sure that menu destroy functions do not access parent widget -structures that are already destroyed -There are 2 ways to achieve this: -- use g_signal_handlers_disconnect_matched() like in vf_destroy_cb() -- use separate data structure passed to *_popup_menu_destroy_cb() - like in img-view. + Fix osd zoom level refreshing (it was broken since some times). +commit 615b0fbae5303c71ce20356036d89d8d5a23261e +Author: Laurent Monin +Date: Wed Jan 13 19:49:39 2010 +0000 ------------------------------------------------------------------------- -r1797 | mow | 2009-07-18 10:16:54 +0200 (Sat, 18 Jul 2009) | 4 lines + Update dutch translation. Work in progress. + + Patch by Marcel Pol. -Fix a overrun +commit 141a854c9b4b80132cb0be2cfd45122e41157531 +Author: Klaus Ethgen +Date: Mon Jan 11 14:10:49 2010 +0000 -data_offset + data_length could be bigger than guint which makes the -calculation overflow to a value smaller then size. ------------------------------------------------------------------------- -r1795 | nadvornik | 2009-07-02 19:37:05 +0200 (Thu, 02 Jul 2009) | 2 lines + Wops, typo... -updated ChangeLog file +commit 36ee9c9dcd360e1d6847f4fd9b899c70875cc23f +Author: Laurent Monin +Date: Sun Jan 10 14:23:29 2010 +0000 ------------------------------------------------------------------------- -r1794 | nadvornik | 2009-07-02 19:31:38 +0200 (Thu, 02 Jul 2009) | 2 lines + copy_file(): remove incomplete file on error (bug 2890715) + + The behavior changed, data is first written to a temporary file, + which is unlinked in case of error, then the tempfile is renamed + to the final name. + Size of buffer was increased from 4k to 16k. -updated ca.po - submitted by Mecatxis +commit 8ce20c203c0b7e91eed065d5163bd2ad8e183eb3 +Author: Laurent Monin +Date: Sat Jan 9 11:44:27 2010 +0000 ------------------------------------------------------------------------- -r1793 | nadvornik | 2009-07-01 22:55:37 +0200 (Wed, 01 Jul 2009) | 2 lines + Workaround intltoolize 0.40.6 bug related to LINGUAS, see bug 2817602. -make sure that automake and config.h uses the same installation paths +commit 5a1662366440a908c9af77b57ccd00472ea0d3cc +Author: Laurent Monin +Date: Sat Jan 9 10:37:48 2010 +0000 ------------------------------------------------------------------------- -r1792 | nadvornik | 2009-07-01 21:38:17 +0200 (Wed, 01 Jul 2009) | 2 lines + Log a message when EOVERFLOW error is set by stat() when building files lists. See bug 2876142. -updated version string +commit a1c2ef4506fae105f7ca76463fe21c84bd283cb3 +Author: Laurent Monin +Date: Tue Jan 5 22:28:11 2010 +0000 ------------------------------------------------------------------------- -r1791 | nadvornik | 2009-07-01 21:33:09 +0200 (Wed, 01 Jul 2009) | 2 lines + Add Serbian translation. + + Note there are two *.po files, one for Cyrilic and one for Latin + letters. + + Thanks to Milos Popovic. -fixed mnemonic conflicts +commit 59801852932ec6a13f43b1e3f4beb42631906070 +Author: Laurent Monin +Date: Tue Jan 5 22:26:03 2010 +0000 ------------------------------------------------------------------------- -r1790 | nadvornik | 2009-07-01 20:59:39 +0200 (Wed, 01 Jul 2009) | 2 lines + Update README about translations. -removed msgctxt keyword, older gettext fails on it +commit f9feac4ff37cc70a0b601c1e839f4e37ff2b5072 +Author: Laurent Monin +Date: Tue Jan 5 17:49:50 2010 +0000 ------------------------------------------------------------------------- -r1789 | nadvornik | 2009-07-01 20:32:32 +0200 (Wed, 01 Jul 2009) | 2 lines + Allow to switch to fullscreen mode using LIRC. + + Imagine the following situation (which happened to me several times) : + you want to see photos from your bed or your sofa so you launch geeqie + and go to the right directory, then you take your remote control and sit + comfortably far from your keyboard and mouse. And when you want to begin + to watch photos, you realize you forgot to enable full screen! You have + to stand up and to go until your computer and come back, whereas you + could have done it with your remote control. + + Patch by Bernard Massot. -removed gettext.h reference +commit f1c7e5da546938446317b7af5ca2c06996bed93a +Author: Laurent Monin +Date: Sat Jan 2 12:38:55 2010 +0000 ------------------------------------------------------------------------- -r1788 | nadvornik | 2009-07-01 09:04:42 +0200 (Wed, 01 Jul 2009) | 2 lines + Get rid of Geeqie version and beta release message. It clutters command line usage, and is not that useful. Suggested by Michal Čihař. -updated spec file +commit bd34c324c92456f5182579d6922d7aba664f93c3 +Author: Laurent Monin +Date: Sat Dec 19 12:53:20 2009 +0000 ------------------------------------------------------------------------- -r1787 | zas_ | 2009-07-01 01:40:37 +0200 (Wed, 01 Jul 2009) | 1 line + Fix bug 2917164. + g_utf8_collate_key_for_filename() don't give sort order one + may expect. Using g_utf8_collate_key() make things closer + to many other programs output (ie. ls and gqview). + + Thanks to Michael pointing this out. -French translation was updated. ------------------------------------------------------------------------- -r1786 | nadvornik | 2009-06-30 22:15:33 +0200 (Tue, 30 Jun 2009) | 2 lines +commit 99766f9e671fc24106db4104fa468192686e5629 +Author: Laurent Monin +Date: Sat Dec 19 12:49:19 2009 +0000 -fixed an use of uninitialized value + Store sort parameters in appropriate variables. ------------------------------------------------------------------------- -r1785 | nadvornik | 2009-06-30 22:12:28 +0200 (Tue, 30 Jun 2009) | 5 lines +commit 7ec5e57c11590f5d44bb96865e279de8d03c49cf +Author: Laurent Monin +Date: Thu Dec 10 17:48:43 2009 +0000 -fixes for a built without Exiv2 + Move "Add Keyword" menu item at top of Keywords bar contextual menu. + + Suggested by Lars Täuber. -don't try to access XMP metadata if not compiled with Exiv2 -some metadata options are valid without Exiv2, do not disable them +commit e6fe9db8a728c2188e7276f3cea001981120ed80 +Author: Laurent Monin +Date: Thu Dec 10 17:44:31 2009 +0000 ------------------------------------------------------------------------- -r1784 | mow | 2009-06-30 21:53:55 +0200 (Tue, 30 Jun 2009) | 5 lines + Fix contextual menus in lateral bars. + + Use button_release_event instead of button_press_event, + this makes contextual menus persistent until an option + is selected or the menu is closed. -Revert "Add pgettext for some ambiguous strings" +commit 17f461e047e39b2e6ddfc82192aeb71db32c326d +Author: Laurent Monin +Date: Fri Dec 4 21:01:11 2009 +0000 -Now there should be all ambiguous strings gone. This reverts commit 1628 + Some systems do not have SA_SIGINFO (siginfo_t), like GNU/Hurd, so just test if defined or not. Patch by Michal Čihař (Bug ID: 2894271). -With that commit also all ambiguous strings should be solved. ------------------------------------------------------------------------- -r1783 | nadvornik | 2009-06-30 21:12:25 +0200 (Tue, 30 Jun 2009) | 2 lines +commit 4bbf6df484aa38c0919ef1c12f25a61e7cb2857b +Author: Laurent Monin +Date: Fri Dec 4 20:40:02 2009 +0000 -add desktop.in files to the tarball + Editors: disable Delete button if a .desktop file is not writeable and disable Edit button when no entry is selected. ------------------------------------------------------------------------- -r1782 | nadvornik | 2009-06-29 21:48:14 +0200 (Mon, 29 Jun 2009) | 2 lines +commit 4ba3a4841437e510a1c2904ac2991debb2d1071a +Author: Laurent Monin +Date: Fri Dec 4 19:45:09 2009 +0000 -fixed writting to gqview legacy format + Add Opera to the list of browsers. Patch by Christian Heckendorf (feature request ID: 2908469). ------------------------------------------------------------------------- -r1781 | zas_ | 2009-06-29 18:32:43 +0200 (Mon, 29 Jun 2009) | 1 line +commit 1f4fdf05a9d2f0ec98fc4a9c17172138e60a9e1f +Author: Vladimir Nadvornik +Date: Fri Nov 27 23:27:35 2009 +0000 -French translation was updated. ------------------------------------------------------------------------- -r1780 | zas_ | 2009-06-29 18:02:28 +0200 (Mon, 29 Jun 2009) | 1 line + build documentation with gnome-doc-tool in makefile -Fix POTFILES.in and update regen_potfiles.sh to add .desktop.in files. ------------------------------------------------------------------------- -r1779 | nadvornik | 2009-06-28 15:41:51 +0200 (Sun, 28 Jun 2009) | 2 lines +commit 3f39e625a89f647d3963770bfc1222ef3f2b8a98 +Author: Vladimir Nadvornik +Date: Sun Nov 22 09:12:22 2009 +0000 -added geeqie-import-geeqie.desktop.in + scripts for converting wiki documentation to docbook ------------------------------------------------------------------------- -r1778 | nadvornik | 2009-06-28 13:55:54 +0200 (Sun, 28 Jun 2009) | 2 lines +commit 14fdb79a58c05b2110ccd7a7abc2e31099b74562 +Author: Vladimir Nadvornik +Date: Sat Nov 21 20:08:51 2009 +0000 -libchamplain compatibility fix + check gtk_clutter_init return value + + https://sourceforge.net/tracker/index.php?func=detail&aid=2899866&group_id=222125&atid=1054680 ------------------------------------------------------------------------- -r1777 | nadvornik | 2009-06-28 11:25:47 +0200 (Sun, 28 Jun 2009) | 2 lines +commit 64efa05fe3501bbcdd866156a9c62954d198514a +Author: Vladimir Nadvornik +Date: Wed Nov 18 12:34:30 2009 +0000 -cleanup: remove some disabled code + changed https to http in wiki links ------------------------------------------------------------------------- -r1776 | nadvornik | 2009-06-28 11:08:25 +0200 (Sun, 28 Jun 2009) | 2 lines +commit fb7ec61825c021bfbc7431ce7dcbbafc97a8d9c1 +Author: Laurent Monin +Date: Fri Nov 13 18:37:31 2009 +0000 -warn if another operation is performed on a file with unsaved metadata + Spanish translation was updated. Thanks to Redy Rodriguez. ------------------------------------------------------------------------- -r1775 | nadvornik | 2009-06-28 10:49:28 +0200 (Sun, 28 Jun 2009) | 2 lines +commit 40c05f384b37a3fc91262b033a0603ce376f8ccc +Author: Laurent Monin +Date: Sat Nov 7 21:31:23 2009 +0000 -sync histogram state after enabling it from the menu + Updated spanish translation. Thanks to Redy Rodriguez. ------------------------------------------------------------------------- -r1774 | nadvornik | 2009-06-28 10:32:27 +0200 (Sun, 28 Jun 2009) | 2 lines +commit ec5cfc05e59af8975556ffbc6262252e91172441 +Author: Klaus Ethgen +Date: Tue Oct 13 21:49:42 2009 +0000 -added script for importing GQView and Geeqie-alpha metadata + German translation update ------------------------------------------------------------------------- -r1773 | nadvornik | 2009-06-28 01:12:52 +0200 (Sun, 28 Jun 2009) | 2 lines +commit 3bd2b7d601d9444418799003a5ae472ac7738d15 +Author: Klaus Ethgen +Date: Tue Oct 13 21:49:21 2009 +0000 -put preferences to separate submenu + Add compatibility for GTK 2.18 + + With 2.18 some functions are deprecated. With geeqie that are two at the + moment. + - gtk_tree_view_column_get_cell_renderers - which can be replaced by + gtk_cell_layout_get_cells + - gdk_event_get_graphics_expose - I just commented it as there seems to + be no replacement in GTK 2.18 ------------------------------------------------------------------------- -r1772 | mow | 2009-06-28 00:58:20 +0200 (Sun, 28 Jun 2009) | 1 line +commit 84b602a4d3d1156d36c42db6bbd5d811cbe2f255 +Author: Vladimir Nadvornik +Date: Sat Oct 10 15:01:41 2009 +0000 -German translation update ------------------------------------------------------------------------- -r1771 | mow | 2009-06-28 00:57:56 +0200 (Sun, 28 Jun 2009) | 8 lines + added a workaround for https://bugzilla.gnome.org/show_bug.cgi?id=590692 -Complete commit @1747 (intltool usage) +commit 9d0d6ce6929d7fae161552c1d91ee9ff412b3b2f +Author: Vladimir Nadvornik +Date: Sat Oct 10 10:15:23 2009 +0000 -With using intltool the localisation will fail cause of missing -desktop.in file. Also the old desktop files are obsoleted by this -commit. + use text renderer for editor->hidden + + The toggle was too confusing because it was not dirrectly editable. -Also it is not necessary any more to have a './' in front of the files -in POTFILES.in. ------------------------------------------------------------------------- -r1770 | mow | 2009-06-28 00:56:50 +0200 (Sun, 28 Jun 2009) | 7 lines +commit a41042b3eed47f80f91448ca4836d09976a238fb +Author: Vladimir Nadvornik +Date: Thu Oct 1 18:40:34 2009 +0000 -Fix AM_CFLAGS and AM_CXXFLAGS from @1701 + ignored multiple directories specified on commandline + + IMHO this was inconsistent - specifying one directory had completely + different effect than specifying two or more directories. Moreover, + it segfaulted. + Now only one directory is allowed. -The commit 1701 did insert wrong lines for AM_CFLAGS and AM_CXXFLAGS to -src/Makefile.am. +commit 95d62825b5e935186a76211f63bea02b4af88d5a +Author: Vladimir Nadvornik +Date: Thu Oct 1 17:37:51 2009 +0000 -I also did some minor whitespace fixes and made the internal -documentation consistent by using \ than @ for doxygen doc. ------------------------------------------------------------------------- -r1769 | nadvornik | 2009-06-28 00:40:25 +0200 (Sun, 28 Jun 2009) | 2 lines + fixed tree_store reordering -added command for editing ufraw id file, changed menu location +commit 34f3b8a3ff32d1d2c4c77f57dd99344a7443257f +Author: Vladimir Nadvornik +Date: Mon Sep 28 12:04:35 2009 +0000 ------------------------------------------------------------------------- -r1768 | nadvornik | 2009-06-27 23:12:07 +0200 (Sat, 27 Jun 2009) | 2 lines + do not cache incomplete thumbnails -reordered View menu +commit 63420660a443d3a98d556ef90da3d079d058c4cb +Author: Vladimir Nadvornik +Date: Mon Sep 28 09:57:06 2009 +0000 ------------------------------------------------------------------------- -r1767 | nadvornik | 2009-06-27 22:47:17 +0200 (Sat, 27 Jun 2009) | 2 lines + consider sidecars in layout_image popup menu -use radio buttons for file and dir mode in popup menu +commit 64cf6613bcea8ae9c8f412255d2132eead0d76e8 +Author: Vladimir Nadvornik +Date: Sat Sep 26 11:37:09 2009 +0000 ------------------------------------------------------------------------- -r1766 | nadvornik | 2009-06-27 22:12:56 +0200 (Sat, 27 Jun 2009) | 2 lines + bar_gps cleanup + + - removed the scrollbar + - do not set decel-rate, + https://bugzilla.gnome.org/show_bug.cgi?id=596419 -simplified menu_item_add_radio usage +commit 643ae01b588ec9645731f147d82102244ac7dc74 +Author: Vladimir Nadvornik +Date: Sat Sep 26 08:47:28 2009 +0000 ------------------------------------------------------------------------- -r1765 | nadvornik | 2009-06-27 19:54:31 +0200 (Sat, 27 Jun 2009) | 2 lines + print text using pango renderer + + - the text is sent to postscript as a bitmap + - this fixes printing of non-ascii characters + + http://sourceforge.net/tracker/index.php?func=detail&aid=2836135&group_id=222125&atid=1054680 -created Files and Folders submenu +commit 8b6b4b9f42ac74470709bd413f0b5ce5b4190a90 +Author: Vladimir Nadvornik +Date: Fri Sep 25 20:39:15 2009 +0000 ------------------------------------------------------------------------- -r1764 | nadvornik | 2009-06-27 17:47:50 +0200 (Sat, 27 Jun 2009) | 6 lines + require libchamplain 0.4 + + - check for libchamplain 0.4 + - dropped libchamplain 0.3.x support + + http://sourceforge.net/tracker/index.php?func=detail&aid=2861847&group_id=222125&atid=1054680 -improved overlay menu +commit b52b036e97cb06283bc2280c432404cba631cbc2 +Author: Vladimir Nadvornik +Date: Thu Sep 24 21:52:44 2009 +0000 -- indicate overlay and histogram state in toggle and radio entries in - the menu -- all entries have visible effect in all modes + fixed and simplified sidecar grouping code ------------------------------------------------------------------------- -r1763 | nadvornik | 2009-06-24 22:31:30 +0200 (Wed, 24 Jun 2009) | 9 lines +commit 98cfb648cc4b0173b3e324af8d4c81fa14623124 +Author: Vladimir Nadvornik +Date: Thu Sep 24 18:02:29 2009 +0000 -test if an accelerator can be stored + fixed emitting of error signal from image loader -gtk_accel_map_change_entry can't change accelerators -to keys like arrows. Test this and show the keys in the list -only if they can be really changed. +commit f1c57f3c48c0347586e17fdce74e798ab95756ba +Author: Vladimir Nadvornik +Date: Mon Sep 21 18:48:32 2009 +0000 -https://sourceforge.net/tracker/?func=detail&aid=2805139&group_id=222125&atid=1054680 + fixed pan-view popup menu + + - removed wrong callback + - consider sidecar files in the editor popup +commit 068a46d7a986f799ada8cc2cc80864c87b4d0741 +Author: Vladimir Nadvornik +Date: Mon Sep 14 21:25:10 2009 +0000 ------------------------------------------------------------------------- -r1762 | nadvornik | 2009-06-23 21:20:48 +0200 (Tue, 23 Jun 2009) | 2 lines + fixed selection handling in sidebar -improved description string +commit a65c901d3b70d7b3c2ed08ed89ffc90fac4bccc4 +Author: Vladimir Nadvornik +Date: Sun Sep 13 21:08:40 2009 +0000 ------------------------------------------------------------------------- -r1761 | mow | 2009-06-22 00:52:45 +0200 (Mon, 22 Jun 2009) | 1 line + fixed editor list in popup menu + + - show an editor if any of selected files matches + - added debug messages -Localizing one string ------------------------------------------------------------------------- -r1760 | mow | 2009-06-22 00:52:08 +0200 (Mon, 22 Jun 2009) | 11 lines +commit 1ab4168f7370de7b3370b1b91cb8a052327055b1 +Author: Vladimir Nadvornik +Date: Sun Sep 13 21:03:17 2009 +0000 -Fix two memory failures + fixed incorrect translation -1. if the description field for a exif information is empty the program - dumps core when trying to change this. The reason is a strcmp with a - NULL value. +commit 3a4c59562600d7a6b390c702b72c921ade71e3db +Author: Vladimir Nadvornik +Date: Sun Sep 13 20:00:08 2009 +0000 - The fix add the small functionality to set the field to default when - it is set empty. + fixed filelist refresh -2. There was a g_strdup miss in exif.c which could end in memory - corruption. ------------------------------------------------------------------------- -r1759 | nadvornik | 2009-06-21 22:14:53 +0200 (Sun, 21 Jun 2009) | 5 lines +commit 0d3397b546403b2beb64608ab306f1d8ec323b2b +Author: Vladimir Nadvornik +Date: Sun Sep 13 12:33:11 2009 +0000 -improved file list update priority + preserve histmap on NOTIFY_CHANGE -- update list with lower priority than the priority of file operations -- make sure that it is updated at least once per 2 seconds +commit d88c0197db63c4282f6986112521d45f87c753a6 +Author: Vladimir Nadvornik +Date: Sun Sep 13 09:55:21 2009 +0000 ------------------------------------------------------------------------- -r1758 | nadvornik | 2009-06-21 15:28:02 +0200 (Sun, 21 Jun 2009) | 2 lines + added possibility to use geeqie-rotate as a standalone script -fixed jumping of filelist on focus_in event +commit 9f27ef873ac95d800100b3a8702bcbe614a6e49b +Author: Vladimir Nadvornik +Date: Sat Sep 12 16:37:05 2009 +0000 ------------------------------------------------------------------------- -r1757 | nadvornik | 2009-06-21 14:39:58 +0200 (Sun, 21 Jun 2009) | 2 lines + strip the "lang=" prefix from exiv2 in all metadata formats -fixed updating of marks in sidecars +commit 5773c73278ff455e6b1c96f115509cf24fe89108 +Author: Vladimir Nadvornik +Date: Sat Sep 12 16:03:09 2009 +0000 ------------------------------------------------------------------------- -r1756 | nadvornik | 2009-06-21 01:15:11 +0200 (Sun, 21 Jun 2009) | 6 lines + simplified template -various geeqie-ufraw improvements +commit fcf4c3852f5993e7cbb0e5f19ae46919c22a4ffd +Author: Vladimir Nadvornik +Date: Sat Sep 12 15:51:37 2009 +0000 -- handle xmp sidecars -- commandline options, help + editor fixes + + - fixed editor loading order + - fixed EditorWindow->modified flag handling +commit 50f55547a981a56f3baa1cd33bc2f3c4139bd695 +Author: Vladimir Nadvornik +Date: Sat Sep 12 15:31:24 2009 +0000 ------------------------------------------------------------------------- -r1755 | nadvornik | 2009-06-20 20:42:23 +0200 (Sat, 20 Jun 2009) | 6 lines + fixed reloading of editors -fixed leak in file_util_* functions +commit fbcd54e1b46fb22ca36e031e863af7b5f28b5d3b +Author: Vladimir Nadvornik +Date: Wed Sep 9 18:16:09 2009 +0000 -- file_util_* are changed to take over the filelist and free it when - done -- make sure that these functions are called correctly + advertisment added ------------------------------------------------------------------------- -r1754 | nadvornik | 2009-06-20 18:46:32 +0200 (Sat, 20 Jun 2009) | 5 lines +commit 04d9cb61c50924e4a8a7431e2da696b55693d241 +Author: Vladimir Nadvornik +Date: Mon Sep 7 20:44:29 2009 +0000 -improved list view + start_editor_from_filelist_full fixes + + fixed return value from start_editor_from_filelist_full() + call editor_command_parse to detect possible problems early enough -- do the string formatting in the cell_data callback -- show the sidecar list only in collapsed entries +commit 89d76d7da4f277010901baaf80c239c057d7da70 +Author: Vladimir Nadvornik +Date: Mon Sep 7 20:04:22 2009 +0000 ------------------------------------------------------------------------- -r1753 | nadvornik | 2009-06-20 10:51:07 +0200 (Sat, 20 Jun 2009) | 2 lines + fixed list of possible editors in popup menu -always check for deleted sidecar files +commit 23f8333708ae73bb3332c1cd6f1033fd9bf9cdfd +Author: Vladimir Nadvornik +Date: Mon Sep 7 19:48:05 2009 +0000 ------------------------------------------------------------------------- -r1752 | nadvornik | 2009-06-20 00:37:30 +0200 (Sat, 20 Jun 2009) | 2 lines + fixes sidecar file grouping + + files with a number in extension were listed twice, it + caused problems later -fixed regexp usage +commit b319e56a6f2a4018c385fe0b8eb085724dd33da5 +Author: Laurent Monin +Date: Mon Sep 7 08:24:09 2009 +0000 ------------------------------------------------------------------------- -r1751 | nadvornik | 2009-06-20 00:34:52 +0200 (Sat, 20 Jun 2009) | 2 lines + Comment out unused functions, silenting related compilation warnings. -run external commands from current directory even with no files +commit 6178ce7ae0e76e7e4d348681969e6dd31235c8ad +Author: Laurent Monin +Date: Mon Sep 7 08:18:18 2009 +0000 ------------------------------------------------------------------------- -r1750 | nadvornik | 2009-06-18 22:46:33 +0200 (Thu, 18 Jun 2009) | 8 lines + Remove an unused variable and minor code cleanup. -ufraw-batch script +commit 9cfd6cc0d65835a221e710c14941591543597145 +Author: Vladimir Nadvornik +Date: Sun Sep 6 14:29:19 2009 +0000 -added a more complicated script that demonstrates advanced -features of external editors: -- create a jpeg + ufraw id file for each raw file -- update the jpeg if the id file was modified + improved editor loading +commit 687a891871bd2c41ecb7f955b80910c941427353 +Author: Vladimir Nadvornik +Date: Sun Sep 6 14:21:19 2009 +0000 ------------------------------------------------------------------------- -r1749 | nadvornik | 2009-06-17 20:41:10 +0200 (Wed, 17 Jun 2009) | 2 lines + fixed unnecessary image reloads in color menu -made file_util_start_editor_from_file consider also sidecars +commit e0fd3c772a12fdb3c6155b90b587c6dbaa418a82 +Author: Vladimir Nadvornik +Date: Sun Sep 6 14:01:03 2009 +0000 ------------------------------------------------------------------------- -r1748 | nadvornik | 2009-06-17 20:19:11 +0200 (Wed, 17 Jun 2009) | 7 lines + load desktop files in idle time + + - scanning all desktop files takes a lot of time because of hdd seek + - this change moves the scanning to idle time + - the editors appears in the menus some time after startup + + https://sourceforge.net/tracker/index.php?func=detail&aid=2852522&group_id=222125&atid=1054680 -fixed problems with floor/ceil +commit 397dd167416368a4d102b051352add5ed2982414 +Author: Vladimir Nadvornik +Date: Sun Sep 6 09:08:37 2009 +0000 -- introduce macros ROUND_DOWN, ROUND_UP -- fixed incorrect usage of floor/ceil functions on int arguments + added messages for debugging startup time -patch by Yuriy Kaminskiy +commit a9030eea34458fb630d338c042311e3904110eef +Author: Laurent Monin +Date: Sat Sep 5 13:48:21 2009 +0000 ------------------------------------------------------------------------- -r1747 | nadvornik | 2009-06-15 22:50:35 +0200 (Mon, 15 Jun 2009) | 6 lines + Update svn ignore lists. -use intltool for desktop file translation +commit dcadde2b6220414d6fc833c97a31b33fa0995d87 +Author: Laurent Monin +Date: Fri Sep 4 15:53:04 2009 +0000 -- desktop files are translated via .po files together with other strings -- make update-po is replaced with intltool-update [lang] + Fix up compilation issues related to libchamplain. + + See http://sourceforge.net/tracker/index.php?func=detail&aid=2848469&group_id=222125&atid=1054680 +commit 049463614a739625303f0edb6a8cf1ee90219833 +Author: Vladimir Nadvornik +Date: Thu Sep 3 20:00:40 2009 +0000 ------------------------------------------------------------------------- -r1746 | nadvornik | 2009-06-15 21:13:45 +0200 (Mon, 15 Jun 2009) | 5 lines + fixed in-place rename -improved rotation script +commit 6f6186dad0150ef4f37eca53c0cf22cbfd0cd7a0 +Author: Vladimir Nadvornik +Date: Thu Sep 3 19:18:20 2009 +0000 -- applies the orientation from metadata -- uses exiftran for jpeg an ImageMagick for other files + do not reload image on copy, move, rename and external editor + + changed files should be detected anyway + http://sourceforge.net/tracker/index.php?func=detail&aid=2848373&group_id=222125&atid=1054680 ------------------------------------------------------------------------- -r1745 | zas_ | 2009-06-14 10:49:39 +0200 (Sun, 14 Jun 2009) | 1 line +commit 2b239ea29ca6de434c05482d27abf55df26d35f0 +Author: Vladimir Nadvornik +Date: Fri Aug 28 23:09:05 2009 +0000 -French translation was updated. ------------------------------------------------------------------------- -r1744 | mow | 2009-06-14 00:19:57 +0200 (Sun, 14 Jun 2009) | 8 lines + fixed vd_notify_cb leak -Update documentation +commit 1dc77a83b26aed8ff77e59837bf03e77789cb6b7 +Author: Vladimir Nadvornik +Date: Fri Aug 28 21:01:29 2009 +0000 -Now it holds a more verbose doxygen description as discussed in mailing -list. + improved printing of selection -- Doxygen style description -- Small visibility changes -- Commit message change ------------------------------------------------------------------------- -r1743 | nadvornik | 2009-06-13 21:26:32 +0200 (Sat, 13 Jun 2009) | 2 lines +commit fbfb356c4e58eaf760c363caa8cbb3e6a45bd8ed +Author: Vladimir Nadvornik +Date: Fri Aug 28 20:18:46 2009 +0000 -the options for custom border color were made independent + improved the sidecar grouping algorithm ------------------------------------------------------------------------- -r1742 | zas_ | 2009-06-11 20:18:07 +0200 (Thu, 11 Jun 2009) | 1 line +commit 7cc27f48539b28a84af54e72c687276b729465bb +Author: Vladimir Nadvornik +Date: Thu Aug 27 20:23:28 2009 +0000 -French translation was updated. ------------------------------------------------------------------------- -r1741 | zas_ | 2009-06-11 19:34:37 +0200 (Thu, 11 Jun 2009) | 1 line + fixed toggle_slideshow function + + https://sourceforge.net/tracker/index.php?func=detail&aid=2844302&group_id=222125&atid=1054680 -Fix up compilation using make -jN: sometimes it fails due to order of headers inclusion. ------------------------------------------------------------------------- -r1740 | nadvornik | 2009-06-10 22:45:24 +0200 (Wed, 10 Jun 2009) | 2 lines +commit ca1e575f63e3e5f39dafdb4c512f8e7672237ee0 +Author: Vladimir Nadvornik +Date: Wed Aug 26 19:19:06 2009 +0000 -make sure that a directory exists on saving desktop files + updated version message ------------------------------------------------------------------------- -r1739 | nadvornik | 2009-06-10 22:26:47 +0200 (Wed, 10 Jun 2009) | 9 lines +commit ccc188ca0606d79f1fe7e84e96a995acd96aca42 +Author: Vladimir Nadvornik +Date: Wed Aug 26 19:16:02 2009 +0000 -do not install helper scripts into /usr/bin + save one unnecessary call to stat_utf8 -- install the helper scripts into pkglibdir, that is /usr/lib/geeqie -- add the directory to $PATH on startup - the Exec line in desktop files - does not have to contain full path +commit 04c030835380e4223ea2902c4cea0283bbce9895 +Author: Vladimir Nadvornik +Date: Tue Aug 25 22:21:46 2009 +0000 -fixes -https://sourceforge.net/tracker/?func=detail&aid=2801121&group_id=222125&atid=1054680 + use name as a tooltip of external editor if comment is missing + + the hotkey dialog ignores entries with empty tooltip ------------------------------------------------------------------------- -r1738 | nadvornik | 2009-06-09 21:12:37 +0200 (Tue, 09 Jun 2009) | 4 lines +commit da53e4e5a7a067aea6961ea89a35098a68562196 +Author: Vladimir Nadvornik +Date: Tue Aug 25 21:30:50 2009 +0000 -enabled color management in img-view + write metadata before another opeation + + - this is implemented for copy and external editor + - the unsaved metadata should survive operations like move or rename + - saving metadata before delete is pointless -patch by Omari Stephens +commit 22679396edba29418ca66fb4a1e9238386ae13d5 +Author: Vladimir Nadvornik +Date: Sun Aug 23 14:10:56 2009 +0000 ------------------------------------------------------------------------- -r1737 | nadvornik | 2009-06-09 21:08:52 +0200 (Tue, 09 Jun 2009) | 4 lines + workaround for xpm loader + + https://sourceforge.net/tracker/?func=detail&aid=2824016&group_id=222125&atid=1054680 -fixed leak in image_post_process_color +commit 399428f6412a8c2866ec65738ca12bccd374fe73 +Author: Vladimir Nadvornik +Date: Sun Aug 23 13:37:15 2009 +0000 -patch by Omari Stephens + fixed moving and maintenance of std. thumbnails + + https://sourceforge.net/tracker/?func=detail&aid=2836224&group_id=222125&atid=1054680 ------------------------------------------------------------------------- -r1736 | nadvornik | 2009-06-08 21:05:49 +0200 (Mon, 08 Jun 2009) | 4 lines +commit e284087c3e3d8714587fecdbb81d6328d3376b19 +Author: Vladimir Nadvornik +Date: Sat Aug 22 21:58:49 2009 +0000 -unify code paths for New directory -keep the directory visible after rename -https://sourceforge.net/tracker/?func=detail&aid=1951183&group_id=222125&atid=1054680 + remove deleted files from metadata queue ------------------------------------------------------------------------- -r1735 | nadvornik | 2009-06-07 12:11:05 +0200 (Sun, 07 Jun 2009) | 4 lines +commit a20b1c7d57bc9f5e189b957942665d0856617b4e +Author: Vladimir Nadvornik +Date: Sat Aug 22 20:20:19 2009 +0000 -do not show wide frame in single image mode -it partially fixes -https://sourceforge.net/tracker/?func=detail&aid=2797348&group_id=222125&atid=1054683 + fixed sidecar grouping + + this fixes grouping of files which differs only + in upper/lowercase extension. The old code stopped scanning + when the first file was found. ------------------------------------------------------------------------- -r1734 | nadvornik | 2009-06-07 00:51:55 +0200 (Sun, 07 Jun 2009) | 2 lines +commit 4fd2d2e9ae0d08ec04f1b893c08a315be6837abc +Author: Vladimir Nadvornik +Date: Tue Aug 18 20:19:23 2009 +0000 -added mark filter to menu - now it is possible to assign hotkeys + fixed possible crash in exif_item_get_integer ------------------------------------------------------------------------- -r1733 | nadvornik | 2009-06-06 21:39:46 +0200 (Sat, 06 Jun 2009) | 3 lines +commit c1371f79e488f152db06c61f821469fe59331ade +Author: Vladimir Nadvornik +Date: Mon Aug 3 20:47:14 2009 +0000 -preserve zoom value on fullscreen startup + updated links +commit 6873f89855794d502a5098369ba8b79fa4794392 +Author: Klaus Ethgen +Date: Mon Aug 3 12:34:57 2009 +0000 ------------------------------------------------------------------------- -r1732 | nadvornik | 2009-06-06 19:28:16 +0200 (Sat, 06 Jun 2009) | 4 lines + Fixing libexiv2 bug -swap x and y scale when scaling rotated images - it fixes tiles that were -sometimes off by 1 pixel - thanks Petr for reporting, -code cleanup +commit 95f139cb78e9e71ee9c8978fe70885537d265092 +Author: Klaus Ethgen +Date: Sat Aug 1 22:37:57 2009 +0000 ------------------------------------------------------------------------- -r1731 | zas_ | 2009-06-06 19:02:21 +0200 (Sat, 06 Jun 2009) | 1 line + Fix a small problem with casefull keywords + + In @1636 I miss one check for keyword case. Now it should be all fixed. -French translation was updated. ------------------------------------------------------------------------- -r1730 | nadvornik | 2009-06-06 18:14:07 +0200 (Sat, 06 Jun 2009) | 5 lines +commit 993581fa3b5a4f2dfe93e6b3ceb03b7219b73f41 +Author: Klaus Ethgen +Date: Sat Aug 1 22:37:37 2009 +0000 -better implementation of tree_view_row_get_visibility, -gtk_tree_view_set_cursor is not sufficient in some cases, call also -tree_view_row_make_visible + This function is never used anymore: file_maint_removed +commit 3ba97f11d9ed1b31f4983b6f2b85a1661fd21172 +Author: Vladimir Nadvornik +Date: Fri Jul 31 20:46:55 2009 +0000 ------------------------------------------------------------------------- -r1729 | nadvornik | 2009-06-06 17:33:56 +0200 (Sat, 06 Jun 2009) | 3 lines + updated project status -do not call signal handler from vdtree_row_expanded -it fixes tree view for user-entered hidden directories +commit c57a5a23b7b648f93a7ab9e78d32ea240909a8ef +Author: Vladimir Nadvornik +Date: Fri Jul 31 20:31:56 2009 +0000 ------------------------------------------------------------------------- -r1728 | nadvornik | 2009-06-06 13:15:09 +0200 (Sat, 06 Jun 2009) | 2 lines + added project web page under version control -reduced jumping of directory tree when user clicks on folders +commit 3591c21101f1f1f82eba676b7708f61badc13e0c +Author: Laurent Monin +Date: Thu Jul 30 17:59:20 2009 +0000 ------------------------------------------------------------------------- -r1727 | nadvornik | 2009-06-05 23:52:37 +0200 (Fri, 05 Jun 2009) | 2 lines + Some systems (BSD,MacOsX,HP-UX,...) define MAP_ANON and not MAP_ANONYMOUS. Make each an alias of other to be sure. issue reported by Martin Proetzsch. -simplified the code around vd_select_row +commit 50d58991a04ea08b245ad359ed7cd399f5e48d2e +Author: Vladimir Nadvornik +Date: Wed Jul 29 21:03:38 2009 +0000 ------------------------------------------------------------------------- -r1726 | nadvornik | 2009-06-04 23:07:03 +0200 (Thu, 04 Jun 2009) | 7 lines + updated czech translation -use layout_set_fd() for changing images from a slideshow -- this updates folder and icon in recursive slideshow mode +commit e01d567728c83465fd4bd657233f07b6a1d47403 +Author: Vladimir Nadvornik +Date: Tue Jul 28 22:27:24 2009 +0000 -preserve slideshow on layout change - fixes - https://sourceforge.net/tracker/?func=detail&aid=1998513&group_id=222125&atid=1054680 + improved scroll on slower machines + + patch by Stanislav Brabec +commit 41599122ba313c5806555c6f1e241ed09ff37177 +Author: Vladimir Nadvornik +Date: Tue Jul 28 22:14:26 2009 +0000 ------------------------------------------------------------------------- -r1725 | zas_ | 2009-06-04 21:51:20 +0200 (Thu, 04 Jun 2009) | 1 line + do not process sidecar files in bar_gps + + patch by Colin Clark -Add an option to Image preferences to restrict custom border to fullscreen mode only. Bug 2798062. ------------------------------------------------------------------------- -r1724 | mow | 2009-06-04 18:07:41 +0200 (Thu, 04 Jun 2009) | 4 lines +commit 5d66be285cb060db3db2202a7ee3b79cacfd9769 +Author: Vladimir Nadvornik +Date: Tue Jul 28 22:03:54 2009 +0000 -Ongoing translation + run the scripts with /bin/sh -Now the most is translated to German language. Just the photographic -notions are missing. ------------------------------------------------------------------------- -r1723 | mow | 2009-06-04 18:07:16 +0200 (Thu, 04 Jun 2009) | 1 line +commit 9ac5bc9898dd722a4b1bbc175ac2d777ec3d53e3 +Author: Laurent Monin +Date: Sat Jul 25 08:23:23 2009 +0000 -Change the order of columns for editors dialogue ------------------------------------------------------------------------- -r1722 | nadvornik | 2009-06-03 22:05:19 +0200 (Wed, 03 Jun 2009) | 2 lines + French translation was updated. -regroup sidecar files when an operation on partial group is finished +commit 6c06cb33020b4045625a56baae23b1fef36c8618 +Author: Laurent Monin +Date: Sat Jul 25 08:13:13 2009 +0000 ------------------------------------------------------------------------- -r1721 | nadvornik | 2009-06-03 00:33:53 +0200 (Wed, 03 Jun 2009) | 11 lines + Remove some bashisms from configure.in. Patch by Greg Troxel. -changed selection behavior as requested at -http://sourceforge.net/tracker/?func=detail&aid=2789933&group_id=222125&atid=1054680 +commit 5495e01cd0d7eec14da56600599aaa7c5876299b +Author: Laurent Monin +Date: Sat Jul 25 08:00:07 2009 +0000 -file view - sidecars are added to the selection if they were expicitly selected - or if the entry is collapsed -icon view - selection always contains sidecars + Romanian translation was completed. Thanks to Sabin Iacob. -file operations splits partially selected groups - selected files have -disabled grouping +commit 206a227078812c68c76b4a233cd877639a8b49bf +Author: Vladimir Nadvornik +Date: Fri Jul 24 14:07:54 2009 +0000 + update column sizes after toggling thumbnails ------------------------------------------------------------------------- -r1720 | zas_ | 2009-06-01 18:37:30 +0200 (Mon, 01 Jun 2009) | 1 line +commit 3374e3d5b309aa51edbaf5b4a9a7beeb084452f9 +Author: Vladimir Nadvornik +Date: Fri Jul 24 13:32:37 2009 +0000 -Minor code cleanup and redundancy reduction. ------------------------------------------------------------------------- -r1719 | nadvornik | 2009-05-31 16:32:39 +0200 (Sun, 31 May 2009) | 2 lines + fixed switching of multiline texts -fixed incorrect type conversion +commit 2d113f07405e4579f942e247297cc0ff66227935 +Author: Vladimir Nadvornik +Date: Fri Jul 24 12:56:54 2009 +0000 ------------------------------------------------------------------------- -r1718 | nadvornik | 2009-05-31 15:32:09 +0200 (Sun, 31 May 2009) | 3 lines + do not try to reload deleted image + + deleted image is replaced by the next one from the list, keep + the old image displayed until the new one is set -do not display menus ("FileMenu" etc.) in accelerator configuration -improved tooltip texts +commit 00c99d21f60a5771bdecff3fd77a6636cdbb685f +Author: Vladimir Nadvornik +Date: Fri Jul 24 12:45:42 2009 +0000 ------------------------------------------------------------------------- -r1717 | nadvornik | 2009-05-31 13:08:00 +0200 (Sun, 31 May 2009) | 2 lines + call gtk_tree_view_columns_autosize only when reall needed + + gtk_tree_view_columns_autosize is rather expensive, call it only + afrer directory change or after user-requested refresh -do not block the files sent to external editors like gimp +commit 66643fc83bc4568484894ae282c1cc1b1f83d31f +Author: Vladimir Nadvornik +Date: Fri Jul 24 12:21:23 2009 +0000 ------------------------------------------------------------------------- -r1716 | nadvornik | 2009-05-30 22:18:22 +0200 (Sat, 30 May 2009) | 5 lines + do not use cell_data_func + + cell_data_func is too slow, store formatted string in the tree_store + instead -preserve image center over short periods when the "broken image" icon is -displayed -http://sourceforge.net/tracker/?func=detail&aid=2793057&group_id=222125&atid=1054680 +commit 8494a934706a0fa7c16e83df36d2d4fec7a61184 +Author: Vladimir Nadvornik +Date: Tue Jul 21 14:17:01 2009 +0000 + fixed destroying of menu data + + Make sure that menu destroy functions do not access parent widget + structures that are already destroyed + There are 2 ways to achieve this: + - use g_signal_handlers_disconnect_matched() like in vf_destroy_cb() + - use separate data structure passed to *_popup_menu_destroy_cb() + like in img-view. ------------------------------------------------------------------------- -r1714 | zas_ | 2009-05-26 21:41:22 +0200 (Tue, 26 May 2009) | 1 line +commit 7c7eb0a20e26e0b16c90ec2882559344ac537c1d +Author: Klaus Ethgen +Date: Sat Jul 18 08:16:54 2009 +0000 -Add .desktop files to restore lossless jpeg rotation via editors. ------------------------------------------------------------------------- -r1713 | nadvornik | 2009-05-23 23:23:06 +0200 (Sat, 23 May 2009) | 4 lines + Fix a overrun + + data_offset + data_length could be bigger than guint which makes the + calculation overflow to a value smaller then size. -added doxygen.conf -https://sourceforge.net/tracker/?func=detail&aid=2795068&group_id=222125&atid=1054680 +commit 6e739c902d1e5cfec08c44348536b5d0c2d23199 +Author: Vladimir Nadvornik +Date: Thu Jul 2 17:37:05 2009 +0000 + updated ChangeLog file ------------------------------------------------------------------------- -r1712 | nadvornik | 2009-05-23 23:07:21 +0200 (Sat, 23 May 2009) | 3 lines +commit 08f70c1da91476bc46ab020ba54f929ca991af5c +Author: Vladimir Nadvornik +Date: Thu Jul 2 17:31:38 2009 +0000 -enabled PageSize code -https://bugzilla.redhat.com/show_bug.cgi?id=222639 + updated ca.po - submitted by Mecatxis ------------------------------------------------------------------------- -r1711 | zas_ | 2009-05-21 11:54:20 +0200 (Thu, 21 May 2009) | 1 line +commit ecfe3d0ad28feebc56f32610d9707309243a051c +Author: Vladimir Nadvornik +Date: Wed Jul 1 20:55:37 2009 +0000 -Add missing vim modeline. ------------------------------------------------------------------------- -r1710 | zas_ | 2009-05-21 11:20:48 +0200 (Thu, 21 May 2009) | 1 line + make sure that automake and config.h uses the same installation paths -Attempt to use stock gtk icons for directory list and tree views. ------------------------------------------------------------------------- -r1709 | zas_ | 2009-05-16 13:31:48 +0200 (Sat, 16 May 2009) | 1 line +commit 2e37aa4a9f0235e9ffe2a2daf09d85caa54c303a +Author: Vladimir Nadvornik +Date: Wed Jul 1 19:38:17 2009 +0000 -Fix up too short array, reported by Michael Schwendt. ------------------------------------------------------------------------- -r1708 | zas_ | 2009-05-16 10:48:21 +0200 (Sat, 16 May 2009) | 11 lines + updated version string -Fix geeqie.desktop to match spec. Patch by Michael Schwendt. +commit b514d250a6bf056da22f144876fb3a367c35e943 +Author: Vladimir Nadvornik +Date: Wed Jul 1 19:33:09 2009 +0000 + fixed mnemonic conflicts -$ desktop-file-validate geeqie.desktop -geeqie.desktop: warning: value "Application;Graphics;Viewer;" for key -"Categories" in group "Desktop Entry" contains a deprecated value -"Application" +commit 9c0ca8a14835d15472fc1453bc62cd7403cb9a7a +Author: Vladimir Nadvornik +Date: Wed Jul 1 18:59:39 2009 +0000 -http://standards.freedesktop.org/menu-spec/menu-spec-1.0.html + removed msgctxt keyword, older gettext fails on it +commit a781a6fa2d8dfd1a452ffd0242eb6e420ec4ee80 +Author: Vladimir Nadvornik +Date: Wed Jul 1 18:32:32 2009 +0000 ------------------------------------------------------------------------- -r1707 | zas_ | 2009-05-14 22:45:34 +0200 (Thu, 14 May 2009) | 1 line + removed gettext.h reference -Fix up unused variables warnings. ------------------------------------------------------------------------- -r1706 | zas_ | 2009-05-14 22:32:14 +0200 (Thu, 14 May 2009) | 1 line +commit 0ec10ddfd8183dfcef9e9651d86ee1dd6fab82e9 +Author: Vladimir Nadvornik +Date: Wed Jul 1 07:04:42 2009 +0000 -Merge common thumb code from view_file_list and view_file_icon to view_file. ------------------------------------------------------------------------- -r1704 | nadvornik | 2009-05-12 22:54:58 +0200 (Tue, 12 May 2009) | 2 lines + updated spec file -added some notes to README file +commit 21797ad0d7c06e997ca15031f3634f7992acaef2 +Author: Laurent Monin +Date: Tue Jun 30 23:40:37 2009 +0000 ------------------------------------------------------------------------- -r1703 | nadvornik | 2009-05-12 22:38:26 +0200 (Tue, 12 May 2009) | 2 lines + French translation was updated. -fixed compilation with older gtk +commit 0bf27305767735ad7b0ebbd8f18ab4d0b24a5614 +Author: Vladimir Nadvornik +Date: Tue Jun 30 20:15:33 2009 +0000 ------------------------------------------------------------------------- -r1702 | nadvornik | 2009-05-12 22:17:03 +0200 (Tue, 12 May 2009) | 2 lines + fixed an use of uninitialized value -updated TODO list +commit b5b0a8583f3e0201b0257e21546e1620d71e73e0 +Author: Vladimir Nadvornik +Date: Tue Jun 30 20:12:28 2009 +0000 ------------------------------------------------------------------------- -r1701 | nadvornik | 2009-05-12 20:25:18 +0200 (Tue, 12 May 2009) | 2 lines + fixes for a built without Exiv2 + + don't try to access XMP metadata if not compiled with Exiv2 + some metadata options are valid without Exiv2, do not disable them -added GPS map support - patch by Colin Clark +commit f70e420d4bffd932e7cf9d70debb74df1e96011e +Author: Klaus Ethgen +Date: Tue Jun 30 19:53:55 2009 +0000 ------------------------------------------------------------------------- -r1700 | zas_ | 2009-05-12 08:54:05 +0200 (Tue, 12 May 2009) | 1 line + Revert "Add pgettext for some ambiguous strings" + + Now there should be all ambiguous strings gone. This reverts commit 1628 + + With that commit also all ambiguous strings should be solved. -French translation was updated. ------------------------------------------------------------------------- -r1699 | zas_ | 2009-05-12 08:42:20 +0200 (Tue, 12 May 2009) | 1 line +commit ed08c31a1b8e1b458f69605e1756af6460b363e0 +Author: Vladimir Nadvornik +Date: Tue Jun 30 19:12:25 2009 +0000 -Fix up tooltip text: Color _Management -> Color Management. ------------------------------------------------------------------------- -r1698 | nadvornik | 2009-05-11 22:50:13 +0200 (Mon, 11 May 2009) | 5 lines + add desktop.in files to the tarball -added keyboard configuration dialog -mostly written by Petr Ostadal -alternate keys are not yet fully configurable - the corresponding code -is commented out +commit 84d6dfa42fdb4560cc895f8346256b80cbc2deeb +Author: Vladimir Nadvornik +Date: Mon Jun 29 19:48:14 2009 +0000 ------------------------------------------------------------------------- -r1697 | zas_ | 2009-05-11 12:10:13 +0200 (Mon, 11 May 2009) | 1 line + fixed writting to gqview legacy format -French translation was updated. ------------------------------------------------------------------------- -r1696 | zas_ | 2009-05-11 11:55:39 +0200 (Mon, 11 May 2009) | 1 line +commit b1e7867f8a5174e1b9650a4f9703efc3b94d20b9 +Author: Laurent Monin +Date: Mon Jun 29 16:32:43 2009 +0000 -Include missing header file. ------------------------------------------------------------------------- -r1695 | nadvornik | 2009-05-09 21:45:24 +0200 (Sat, 09 May 2009) | 2 lines + French translation was updated. -expose the file grouping flag to the user +commit c278582ae1a6dfa2c1b12ce3af4554b28db37d27 +Author: Laurent Monin +Date: Mon Jun 29 16:02:28 2009 +0000 ------------------------------------------------------------------------- -r1694 | nadvornik | 2009-05-09 21:25:51 +0200 (Sat, 09 May 2009) | 2 lines + Fix POTFILES.in and update regen_potfiles.sh to add .desktop.in files. -extended the list of grouped metadata tags +commit f8f76cde319631e0147a286966ca7af0b13f747c +Author: Vladimir Nadvornik +Date: Sun Jun 28 13:41:51 2009 +0000 ------------------------------------------------------------------------- -r1693 | nadvornik | 2009-05-09 19:02:35 +0200 (Sat, 09 May 2009) | 2 lines + added geeqie-import-geeqie.desktop.in -added some structure to the metadata preferences dialog +commit 8bb48410fde2352746c65072c38331ec17faa329 +Author: Vladimir Nadvornik +Date: Sun Jun 28 11:55:54 2009 +0000 ------------------------------------------------------------------------- -r1692 | nadvornik | 2009-05-08 20:29:09 +0200 (Fri, 08 May 2009) | 2 lines + libchamplain compatibility fix -better tooltip for disabled lcms +commit cf4208a56c616bb3dcaae93de5274dfc219a0313 +Author: Vladimir Nadvornik +Date: Sun Jun 28 09:25:47 2009 +0000 ------------------------------------------------------------------------- -r1691 | nadvornik | 2009-05-07 22:24:35 +0200 (Thu, 07 May 2009) | 2 lines + cleanup: remove some disabled code -limit metadata details dialog size +commit 3ad0a54de0b397a1f8d7ca8cb487633150060032 +Author: Vladimir Nadvornik +Date: Sun Jun 28 09:08:25 2009 +0000 ------------------------------------------------------------------------- -r1690 | nadvornik | 2009-05-07 21:52:38 +0200 (Thu, 07 May 2009) | 2 lines + warn if another operation is performed on a file with unsaved metadata -fixed keyword tree initialization +commit dadc45eb233a88708878440db9dc0746206f6246 +Author: Vladimir Nadvornik +Date: Sun Jun 28 08:49:28 2009 +0000 ------------------------------------------------------------------------- -r1689 | nadvornik | 2009-05-07 21:38:07 +0200 (Thu, 07 May 2009) | 2 lines + sync histogram state after enabling it from the menu -updated version string to beta1 +commit a61e74ef49b2910e1c2b52699455707a110344ba +Author: Vladimir Nadvornik +Date: Sun Jun 28 08:32:27 2009 +0000 ------------------------------------------------------------------------- -r1688 | nadvornik | 2009-05-07 21:34:33 +0200 (Thu, 07 May 2009) | 2 lines + added script for importing GQView and Geeqie-alpha metadata -enabled XDG directory layout +commit db44d472fbb0f81ba00ac282b9e4fa04fd37d64e +Author: Vladimir Nadvornik +Date: Sat Jun 27 23:12:52 2009 +0000 ------------------------------------------------------------------------- -r1687 | nadvornik | 2009-05-07 21:30:15 +0200 (Thu, 07 May 2009) | 2 lines + put preferences to separate submenu -use "keywords" instead of "tags" in option name, it is more consistent +commit d960407def39b244453756528e281209f1c47135 +Author: Klaus Ethgen +Date: Sat Jun 27 22:58:20 2009 +0000 ------------------------------------------------------------------------- -r1686 | zas_ | 2009-05-03 19:54:37 +0200 (Sun, 03 May 2009) | 1 line + German translation update -French translation was updated. ------------------------------------------------------------------------- -r1685 | nadvornik | 2009-05-03 00:34:46 +0200 (Sun, 03 May 2009) | 2 lines +commit 6595653e7fdcd3f9126e2382e61309a6fddceec7 +Author: Klaus Ethgen +Date: Sat Jun 27 22:57:56 2009 +0000 -added stock icons for slideshow + Complete commit @1747 (intltool usage) + + With using intltool the localisation will fail cause of missing + desktop.in file. Also the old desktop files are obsoleted by this + commit. + + Also it is not necessary any more to have a './' in front of the files + in POTFILES.in. ------------------------------------------------------------------------- -r1684 | nadvornik | 2009-05-03 00:19:42 +0200 (Sun, 03 May 2009) | 2 lines +commit 3000474f9d40efec1c4167fe3c87dce3e2814d18 +Author: Klaus Ethgen +Date: Sat Jun 27 22:56:50 2009 +0000 -updated czech translation + Fix AM_CFLAGS and AM_CXXFLAGS from @1701 + + The commit 1701 did insert wrong lines for AM_CFLAGS and AM_CXXFLAGS to + src/Makefile.am. + + I also did some minor whitespace fixes and made the internal + documentation consistent by using \ than @ for doxygen doc. ------------------------------------------------------------------------- -r1683 | nadvornik | 2009-05-02 13:14:24 +0200 (Sat, 02 May 2009) | 2 lines +commit 1282982b76068795acda07efe761286c1d850927 +Author: Vladimir Nadvornik +Date: Sat Jun 27 22:40:25 2009 +0000 -force the metadata dialog if it was triggered by the menu or the button + added command for editing ufraw id file, changed menu location ------------------------------------------------------------------------- -r1682 | nadvornik | 2009-05-02 12:59:36 +0200 (Sat, 02 May 2009) | 2 lines +commit 5865742b0f0e0d9e89c6f8cfc8789e37ab3cfc09 +Author: Vladimir Nadvornik +Date: Sat Jun 27 21:12:07 2009 +0000 -action table clean up + reordered View menu ------------------------------------------------------------------------- -r1681 | nadvornik | 2009-05-02 11:15:56 +0200 (Sat, 02 May 2009) | 3 lines +commit 2c3454d78f2e002ad86059746d6dbc15070110d0 +Author: Vladimir Nadvornik +Date: Sat Jun 27 20:47:17 2009 +0000 -improved pixel info, changed the menu entry from "Hide" to "Show", -added it on default status bar + use radio buttons for file and dir mode in popup menu ------------------------------------------------------------------------- -r1680 | nadvornik | 2009-05-02 01:40:01 +0200 (Sat, 02 May 2009) | 3 lines +commit 9ef0898770dc7fb0e286c777a1ece3896f22a1ca +Author: Vladimir Nadvornik +Date: Sat Jun 27 20:12:56 2009 +0000 -"S" seems to be hardcoded hotkey for GTK_STOCK_SAVE -use S for sort manager + simplified menu_item_add_radio usage ------------------------------------------------------------------------- -r1679 | nadvornik | 2009-05-02 01:15:51 +0200 (Sat, 02 May 2009) | 3 lines +commit f9509525508c1f38a99edf06d5203f2cb063b81a +Author: Vladimir Nadvornik +Date: Sat Jun 27 17:54:31 2009 +0000 -- handle color profile and write metadata buttons on statusbar by ui_manager -- statusbar buttons made configurable + created Files and Folders submenu ------------------------------------------------------------------------- -r1678 | nadvornik | 2009-05-01 11:49:27 +0200 (Fri, 01 May 2009) | 3 lines +commit 8948dca3981a8f5484d8cc658dd5253cf9bc9f85 +Author: Vladimir Nadvornik +Date: Sat Jun 27 15:47:50 2009 +0000 -allow external editors without parameters, as long as they are in -category 'X-Geeqie' + improved overlay menu + + - indicate overlay and histogram state in toggle and radio entries in + the menu + - all entries have visible effect in all modes ------------------------------------------------------------------------- -r1677 | nadvornik | 2009-04-29 22:28:54 +0200 (Wed, 29 Apr 2009) | 2 lines +commit a374a03dd9be5d447a8a0f0d45b4a2b7a6725cb1 +Author: Vladimir Nadvornik +Date: Wed Jun 24 20:31:30 2009 +0000 -updated czech translation, not yet complete + test if an accelerator can be stored + + gtk_accel_map_change_entry can't change accelerators + to keys like arrows. Test this and show the keys in the list + only if they can be really changed. + + https://sourceforge.net/tracker/?func=detail&aid=2805139&group_id=222125&atid=1054680 ------------------------------------------------------------------------- -r1676 | zas_ | 2009-04-28 23:40:00 +0200 (Tue, 28 Apr 2009) | 1 line +commit 7bbcd188f372a89bc2ff72d80ed8a20fec5b95ca +Author: Vladimir Nadvornik +Date: Tue Jun 23 19:20:48 2009 +0000 -French translation was updated. ------------------------------------------------------------------------- -r1675 | zas_ | 2009-04-28 23:38:20 +0200 (Tue, 28 Apr 2009) | 1 line + improved description string -Update POTFILES.in: cellrenderericon.c removed, color-man.c added. ------------------------------------------------------------------------- -r1674 | zas_ | 2009-04-28 23:37:27 +0200 (Tue, 28 Apr 2009) | 1 line +commit 5a18119c672fff2fb43b3789ffedb8932c960e37 +Author: Klaus Ethgen +Date: Sun Jun 21 22:52:45 2009 +0000 -Fix up po/Makefile to rebuild geeqie.pot when POTFILES.in was modified. Without this change, new translatable strings in recently added files were not available for translation in various .po files after a make update-po. Makefile.in.in.patch was modified to include this fix plus some minor cleanups. ------------------------------------------------------------------------- -r1673 | nadvornik | 2009-04-28 22:09:41 +0200 (Tue, 28 Apr 2009) | 2 lines + Localizing one string -do not translate internal strings +commit d820c538051df54a6316047a3da7ce77414fa980 +Author: Klaus Ethgen +Date: Sun Jun 21 22:52:08 2009 +0000 ------------------------------------------------------------------------- -r1672 | nadvornik | 2009-04-28 08:55:56 +0200 (Tue, 28 Apr 2009) | 2 lines + Fix two memory failures + + 1. if the description field for a exif information is empty the program + dumps core when trying to change this. The reason is a strcmp with a + NULL value. + + The fix add the small functionality to set the field to default when + it is set empty. + + 2. There was a g_strdup miss in exif.c which could end in memory + corruption. -added new files +commit 48de954045b9d2f5e00ef8ef1be0c23f1babf8ec +Author: Vladimir Nadvornik +Date: Sun Jun 21 20:14:53 2009 +0000 ------------------------------------------------------------------------- -r1671 | nadvornik | 2009-04-28 08:54:59 +0200 (Tue, 28 Apr 2009) | 2 lines + improved file list update priority + + - update list with lower priority than the priority of file operations + - make sure that it is updated at least once per 2 seconds -compilation fixes for older glib and gtk +commit 8f5b864badbfce732abf5f389688052ece5ce8c1 +Author: Vladimir Nadvornik +Date: Sun Jun 21 13:28:02 2009 +0000 ------------------------------------------------------------------------- -r1670 | zas_ | 2009-04-28 01:07:59 +0200 (Tue, 28 Apr 2009) | 1 line + fixed jumping of filelist on focus_in event -French translation was updated: fix few main menu mnenonics. ------------------------------------------------------------------------- -r1669 | nadvornik | 2009-04-27 23:39:56 +0200 (Mon, 27 Apr 2009) | 2 lines +commit 624256fd4593dec4dda712194794a3bf85bcdb7f +Author: Vladimir Nadvornik +Date: Sun Jun 21 12:39:58 2009 +0000 -compilation fixes + fixed updating of marks in sidecars ------------------------------------------------------------------------- -r1668 | nadvornik | 2009-04-27 22:19:21 +0200 (Mon, 27 Apr 2009) | 2 lines +commit 8c5f76523ca80ce6b73e625ad8304af1e2acb88e +Author: Vladimir Nadvornik +Date: Sat Jun 20 23:15:11 2009 +0000 -"make dist" fixes + various geeqie-ufraw improvements + + - handle xmp sidecars + - commandline options, help ------------------------------------------------------------------------- -r1667 | zas_ | 2009-04-26 16:08:44 +0200 (Sun, 26 Apr 2009) | 1 line +commit ad121b74463720f97b4ff342580227d07b30d52c +Author: Vladimir Nadvornik +Date: Sat Jun 20 18:42:23 2009 +0000 -French translation was updated. ------------------------------------------------------------------------- -r1666 | nadvornik | 2009-04-26 13:38:28 +0200 (Sun, 26 Apr 2009) | 2 lines + fixed leak in file_util_* functions + + - file_util_* are changed to take over the filelist and free it when + done + - make sure that these functions are called correctly -small fixes +commit 64ac3a19f5d513a64d8824bbc131323341f82f49 +Author: Vladimir Nadvornik +Date: Sat Jun 20 16:46:32 2009 +0000 ------------------------------------------------------------------------- -r1665 | nadvornik | 2009-04-26 11:25:52 +0200 (Sun, 26 Apr 2009) | 2 lines + improved list view + + - do the string formatting in the cell_data callback + - show the sidecar list only in collapsed entries -fixed return from metadata_write_revert +commit 689f00cfe4b24d5a3c9adbe90faa1127b01edc88 +Author: Vladimir Nadvornik +Date: Sat Jun 20 08:51:07 2009 +0000 ------------------------------------------------------------------------- -r1664 | nadvornik | 2009-04-26 11:01:35 +0200 (Sun, 26 Apr 2009) | 2 lines + always check for deleted sidecar files -added an option to write image orientation to the metadata +commit 2ac559008ae7dd561c191ee59e2ca0bf23536f06 +Author: Vladimir Nadvornik +Date: Fri Jun 19 22:37:30 2009 +0000 ------------------------------------------------------------------------- -r1663 | nadvornik | 2009-04-26 00:08:09 +0200 (Sun, 26 Apr 2009) | 3 lines + fixed regexp usage -separated Orientation and Grayscale functions -moved Grayscale to Color management menu +commit f553c1adfbaefb4e6c6e5f63243d7045298c1fb0 +Author: Vladimir Nadvornik +Date: Fri Jun 19 22:34:52 2009 +0000 ------------------------------------------------------------------------- -r1662 | nadvornik | 2009-04-25 22:55:11 +0200 (Sat, 25 Apr 2009) | 2 lines + run external commands from current directory even with no files -added more info to the details dialog +commit 6b90e03b1485fc0bb2c97369c9b78e520fa6d641 +Author: Vladimir Nadvornik +Date: Thu Jun 18 20:46:33 2009 +0000 ------------------------------------------------------------------------- -r1661 | nadvornik | 2009-04-25 01:26:49 +0200 (Sat, 25 Apr 2009) | 2 lines + ufraw-batch script + + added a more complicated script that demonstrates advanced + features of external editors: + - create a jpeg + ufraw id file for each raw file + - update the jpeg if the id file was modified -added details dialog for other operations too +commit ce28ddc9eb3aa2525c3264a5d108ad0c0663b01c +Author: Vladimir Nadvornik +Date: Wed Jun 17 18:41:10 2009 +0000 ------------------------------------------------------------------------- -r1660 | nadvornik | 2009-04-25 00:51:00 +0200 (Sat, 25 Apr 2009) | 2 lines + made file_util_start_editor_from_file consider also sidecars -added possibility to exclude individual files +commit 74888a81cf4563307c3f5814f571aaa47b72de72 +Author: Vladimir Nadvornik +Date: Wed Jun 17 18:19:11 2009 +0000 ------------------------------------------------------------------------- -r1659 | nadvornik | 2009-04-23 23:15:14 +0200 (Thu, 23 Apr 2009) | 2 lines + fixed problems with floor/ceil + + - introduce macros ROUND_DOWN, ROUND_UP + - fixed incorrect usage of floor/ceil functions on int arguments + + patch by Yuriy Kaminskiy -fixed writting metadata behavior at exit +commit a9e0a03817c421da14093d05e41970da740c44a0 +Author: Vladimir Nadvornik +Date: Mon Jun 15 20:50:35 2009 +0000 ------------------------------------------------------------------------- -r1658 | nadvornik | 2009-04-23 23:12:19 +0200 (Thu, 23 Apr 2009) | 2 lines + use intltool for desktop file translation + + - desktop files are translated via .po files together with other strings + - make update-po is replaced with intltool-update [lang] -added an image to the file details dialog +commit f63a2dd3fa1b61bec9a04c877f3ca9953b467133 +Author: Vladimir Nadvornik +Date: Mon Jun 15 19:13:45 2009 +0000 ------------------------------------------------------------------------- -r1657 | nadvornik | 2009-04-23 22:48:03 +0200 (Thu, 23 Apr 2009) | 2 lines + improved rotation script + + - applies the orientation from metadata + - uses exiftran for jpeg an ImageMagick for other files -differentiate between "Cancel" and "Discard changes" +commit 2900ceba02cd5b6c5d7c1d818dacecc9a65720d4 +Author: Laurent Monin +Date: Sun Jun 14 08:49:39 2009 +0000 ------------------------------------------------------------------------- -r1656 | zas_ | 2009-04-21 23:47:11 +0200 (Tue, 21 Apr 2009) | 1 line + French translation was updated. -Fix up few warnings (especially on 64bits platforms). ------------------------------------------------------------------------- -r1655 | nadvornik | 2009-04-21 23:16:32 +0200 (Tue, 21 Apr 2009) | 2 lines +commit 1401afe8606b92cfa9f3b52989448e86833ed248 +Author: Klaus Ethgen +Date: Sat Jun 13 22:19:57 2009 +0000 -fixed metadata.confirm_on_dir_change + Update documentation + + Now it holds a more verbose doxygen description as discussed in mailing + list. + + - Doxygen style description + - Small visibility changes + - Commit message change ------------------------------------------------------------------------- -r1654 | nadvornik | 2009-04-21 23:07:28 +0200 (Tue, 21 Apr 2009) | 2 lines +commit 369eab0297a8ba20f117db5c4c751907e22479ed +Author: Vladimir Nadvornik +Date: Sat Jun 13 19:26:32 2009 +0000 -added possibility to show modifiied metadata before write + the options for custom border color were made independent ------------------------------------------------------------------------- -r1653 | nadvornik | 2009-04-20 23:34:16 +0200 (Mon, 20 Apr 2009) | 8 lines +commit 1283b61934436f9ba1563633c0892ba8245b16aa +Author: Laurent Monin +Date: Thu Jun 11 18:18:07 2009 +0000 -added remote interface for exporting additional info (sidecars, -destination) to external commands + French translation was updated. -see the symlink command for an example +commit 420f3600446e33397c93fe631e2fffb5b8a6f43d +Author: Laurent Monin +Date: Thu Jun 11 17:34:37 2009 +0000 -http://sourceforge.net/tracker/?func=detail&aid=2488845&group_id=222125&atid=1054680 + Fix up compilation using make -jN: sometimes it fails due to order of headers inclusion. +commit f5dbedfb0a27731a28584e4734b7fd548222140e +Author: Vladimir Nadvornik +Date: Wed Jun 10 20:45:24 2009 +0000 ------------------------------------------------------------------------- -r1652 | nadvornik | 2009-04-20 23:07:52 +0200 (Mon, 20 Apr 2009) | 2 lines + make sure that a directory exists on saving desktop files -write info and debugging messages to stderr +commit 545a2c2ca86722831c57ff5f5d8b1c641e6d6988 +Author: Vladimir Nadvornik +Date: Wed Jun 10 20:26:47 2009 +0000 ------------------------------------------------------------------------- -r1651 | nadvornik | 2009-04-20 21:44:50 +0200 (Mon, 20 Apr 2009) | 2 lines + do not install helper scripts into /usr/bin + + - install the helper scripts into pkglibdir, that is /usr/lib/geeqie + - add the directory to $PATH on startup - the Exec line in desktop files + does not have to contain full path + + fixes + https://sourceforge.net/tracker/?func=detail&aid=2801121&group_id=222125&atid=1054680 -improved remote protocol to allow bidirectional communication +commit c266b1d322f46134d567ce59168746575944e3d1 +Author: Vladimir Nadvornik +Date: Tue Jun 9 19:12:37 2009 +0000 ------------------------------------------------------------------------- -r1650 | nadvornik | 2009-04-17 22:26:22 +0200 (Fri, 17 Apr 2009) | 2 lines + enabled color management in img-view + + patch by Omari Stephens -fixed tests for vd_find_row return value +commit 0dbb46cefd841e6fff6ea1bd002829db6f519bdf +Author: Vladimir Nadvornik +Date: Tue Jun 9 19:08:52 2009 +0000 ------------------------------------------------------------------------- -r1649 | mow | 2009-04-14 23:51:29 +0200 (Tue, 14 Apr 2009) | 3 lines + fixed leak in image_post_process_color + + patch by Omari Stephens -German translation updated +commit 3c31271012cd131271872a32dc5214a81010d665 +Author: Vladimir Nadvornik +Date: Mon Jun 8 19:05:49 2009 +0000 -With some help from de.alt.rec.digitalfotografie. ------------------------------------------------------------------------- -r1648 | zas_ | 2009-04-14 22:54:50 +0200 (Tue, 14 Apr 2009) | 1 line + unify code paths for New directory + keep the directory visible after rename + https://sourceforge.net/tracker/?func=detail&aid=1951183&group_id=222125&atid=1054680 -French translation was updated. ------------------------------------------------------------------------- -r1647 | nadvornik | 2009-04-14 00:40:47 +0200 (Tue, 14 Apr 2009) | 2 lines +commit 0128d5e7deb6ec5772daeb22edcb5c5efc918996 +Author: Vladimir Nadvornik +Date: Sun Jun 7 10:11:05 2009 +0000 -color profile fixes + do not show wide frame in single image mode + it partially fixes + https://sourceforge.net/tracker/?func=detail&aid=2797348&group_id=222125&atid=1054683 ------------------------------------------------------------------------- -r1646 | nadvornik | 2009-04-13 16:39:50 +0200 (Mon, 13 Apr 2009) | 2 lines +commit 831963138ddff7c9d9d29e39ecf677535e679ec3 +Author: Vladimir Nadvornik +Date: Sat Jun 6 22:51:55 2009 +0000 -show color management status on statusbar + added mark filter to menu - now it is possible to assign hotkeys ------------------------------------------------------------------------- -r1645 | nadvornik | 2009-04-13 12:55:49 +0200 (Mon, 13 Apr 2009) | 3 lines +commit da1d8ad7407bec7c000684ad9466c45a03243467 +Author: Vladimir Nadvornik +Date: Sat Jun 6 19:39:46 2009 +0000 -support X11 screen profile -http://freedesktop.org/wiki/ICC_Profiles_in_X_Specification_0.3 + preserve zoom value on fullscreen startup ------------------------------------------------------------------------- -r1644 | nadvornik | 2009-04-13 10:09:56 +0200 (Mon, 13 Apr 2009) | 2 lines +commit 0b06a8bd76d495c199fabad762571a4f9df9a175 +Author: Vladimir Nadvornik +Date: Sat Jun 6 17:28:16 2009 +0000 -moved color profiles from statusbar to View menu + swap x and y scale when scaling rotated images - it fixes tiles that were + sometimes off by 1 pixel - thanks Petr for reporting, + code cleanup ------------------------------------------------------------------------- -r1643 | mow | 2009-04-12 19:58:55 +0200 (Sun, 12 Apr 2009) | 1 line +commit 538eafee798a9adc76f91daa7b0b7ee31405e89f +Author: Laurent Monin +Date: Sat Jun 6 17:02:21 2009 +0000 -German translation updated ------------------------------------------------------------------------- -r1642 | zas_ | 2009-04-12 17:06:43 +0200 (Sun, 12 Apr 2009) | 1 line + French translation was updated. -French translation was updated. ------------------------------------------------------------------------- -r1641 | mow | 2009-04-12 13:02:03 +0200 (Sun, 12 Apr 2009) | 3 lines +commit 0b3615164ce594afae630a1e652099d14308c356 +Author: Vladimir Nadvornik +Date: Sat Jun 6 16:14:07 2009 +0000 -Update POTFILES.in + better implementation of tree_view_row_get_visibility, + gtk_tree_view_set_cursor is not sufficient in some cases, call also + tree_view_row_make_visible -metadata.c was not in the POTFILES.in. ------------------------------------------------------------------------- -r1640 | nadvornik | 2009-04-12 10:36:53 +0200 (Sun, 12 Apr 2009) | 2 lines +commit 2ca07031f3571cee3851b885ac9eb466d0485648 +Author: Vladimir Nadvornik +Date: Sat Jun 6 15:33:56 2009 +0000 -fixed ambiguous strings + do not call signal handler from vdtree_row_expanded + it fixes tree view for user-entered hidden directories ------------------------------------------------------------------------- -r1639 | nadvornik | 2009-04-11 23:28:46 +0200 (Sat, 11 Apr 2009) | 2 lines +commit 1bd43a679034412c6ee7f82676c027f7db73a602 +Author: Vladimir Nadvornik +Date: Sat Jun 6 11:15:09 2009 +0000 -improved default keyword tree + reduced jumping of directory tree when user clicks on folders ------------------------------------------------------------------------- -r1638 | mow | 2009-04-11 22:46:37 +0200 (Sat, 11 Apr 2009) | 4 lines +commit 2aa7548fca3a27dfb8b891d36507adc918e258ad +Author: Vladimir Nadvornik +Date: Fri Jun 5 21:52:37 2009 +0000 -Fix that the output of msgfmt could be singular + simplified the code around vd_select_row -The output of msgfmt could be singular if there is only one translation -of the given type. ------------------------------------------------------------------------- -r1636 | mow | 2009-04-11 21:51:03 +0200 (Sat, 11 Apr 2009) | 4 lines +commit e88a00bed30f1083f221a96876a0ddd84f44623f +Author: Vladimir Nadvornik +Date: Thu Jun 4 21:07:03 2009 +0000 -Allow to configure case handling of keywords + use layout_set_fd() for changing images from a slideshow + - this updates folder and icon in recursive slideshow mode + + preserve slideshow on layout change - fixes + https://sourceforge.net/tracker/?func=detail&aid=1998513&group_id=222125&atid=1054680 -Sometimes I use just different case for keywords. This should be -chooseable. ------------------------------------------------------------------------- -r1635 | nadvornik | 2009-04-11 21:35:03 +0200 (Sat, 11 Apr 2009) | 2 lines +commit f333692b5cb1214bfc7b5e890894c7cb8a7c49a0 +Author: Laurent Monin +Date: Thu Jun 4 19:51:20 2009 +0000 -fixed updating of filelist marks + Add an option to Image preferences to restrict custom border to fullscreen mode only. Bug 2798062. ------------------------------------------------------------------------- -r1634 | mow | 2009-04-11 20:34:12 +0200 (Sat, 11 Apr 2009) | 9 lines +commit 4751713609feee94ac540b8d57ebbdf65b9bb55d +Author: Klaus Ethgen +Date: Thu Jun 4 16:07:41 2009 +0000 -Adding debian packaging informations + Ongoing translation + + Now the most is translated to German language. Just the photographic + notions are missing. -Adding debian control directory to create a geeqie debian package. +commit 8e6775025b5874e2bb686854009a4fb07dd74909 +Author: Klaus Ethgen +Date: Thu Jun 4 16:07:16 2009 +0000 -NOTES: (To be fixed in autoconf) - - LIRC must be explicit _enabled_ instead of disable. This is wrong - documented. - - It might be a good idea to derivate the readmedir and the htmldir - from docdir. ------------------------------------------------------------------------- -r1633 | mow | 2009-04-11 18:34:25 +0200 (Sat, 11 Apr 2009) | 4 lines + Change the order of columns for editors dialogue -Implementing CTRL-W to close advanced exif window +commit 21b5ebf3430ded75165d2b4caf8baef41dce6bae +Author: Vladimir Nadvornik +Date: Wed Jun 3 20:05:19 2009 +0000 -In fact, this implements keypress event handling in the advanced exif -window to handle CTRL-W event. ------------------------------------------------------------------------- -r1632 | mow | 2009-04-10 15:54:08 +0200 (Fri, 10 Apr 2009) | 5 lines + regroup sidecar files when an operation on partial group is finished -Just update the internal sort method +commit 347fc7ce81fd08f1a8977f67cff7ae18e9d175c6 +Author: Vladimir Nadvornik +Date: Tue Jun 2 22:33:53 2009 +0000 -There is no other use of the internal sort method than speeding up the -sorting of a collection. So setting it to SORT_NONE is the better -choice. ------------------------------------------------------------------------- -r1631 | mow | 2009-04-10 15:44:37 +0200 (Fri, 10 Apr 2009) | 4 lines + changed selection behavior as requested at + http://sourceforge.net/tracker/?func=detail&aid=2789933&group_id=222125&atid=1054680 + + file view - sidecars are added to the selection if they were expicitly selected + or if the entry is collapsed + icon view - selection always contains sidecars + + file operations splits partially selected groups - selected files have + disabled grouping -Implement random sort method for collections +commit 5a743f0af211c998eb7c38a6f5736fff5ca22899 +Author: Laurent Monin +Date: Mon Jun 1 16:37:30 2009 +0000 -This patch allows to randomize the collections. (Closes: #2497413) -https://sourceforge.net/tracker/?func=detail&aid=2497413&group_id=222125&atid=1054683 ------------------------------------------------------------------------- -r1630 | mow | 2009-04-10 12:18:42 +0200 (Fri, 10 Apr 2009) | 9 lines + Minor code cleanup and redundancy reduction. -Fix the broken statistic generation +commit ce00bafc5df7e6b25402cd9017618b9e57f0b9f0 +Author: Vladimir Nadvornik +Date: Sun May 31 14:32:39 2009 +0000 -The output of msgfmt has different format if no fuzzy translations (or -even no translated) are available. I fixed that by parsing the output of -msgfmt more intelligent. + fixed incorrect type conversion -Drawback of the solution is that the parsing will not work if the output -of msgfmt use not the strings "translated messages", "fuzzy -translations" and "untranslated messages". ------------------------------------------------------------------------- -r1629 | mow | 2009-04-10 11:47:40 +0200 (Fri, 10 Apr 2009) | 4 lines +commit 7c03436375c2931a9ebe20706648ea9f40195265 +Author: Vladimir Nadvornik +Date: Sun May 31 13:32:09 2009 +0000 -German translation updated + do not display menus ("FileMenu" etc.) in accelerator configuration + improved tooltip texts -Also included a update in the README file. Finally I add myself to that -file. :-) ------------------------------------------------------------------------- -r1628 | mow | 2009-04-10 11:47:20 +0200 (Fri, 10 Apr 2009) | 8 lines +commit 7166e8e6822956cfc657744e4257af67f6152542 +Author: Vladimir Nadvornik +Date: Sun May 31 11:08:00 2009 +0000 -Add pgettext for some ambiguous strings + do not block the files sent to external editors like gimp -There are some strings which are ambiguous to translate. There is the -pgettext function to solf that problem. +commit f6b5317b9869a7640793c47eda0bbd39253ad363 +Author: Vladimir Nadvornik +Date: Sat May 30 20:18:22 2009 +0000 -For example, locations can be translated to german by Ortsangaben -(geographical) or by Pfad (filesystem). I am sure there are also some -ambiguous in other languages. ------------------------------------------------------------------------- -r1627 | zas_ | 2009-04-09 22:40:16 +0200 (Thu, 09 Apr 2009) | 1 line + preserve image center over short periods when the "broken image" icon is + displayed + http://sourceforge.net/tracker/?func=detail&aid=2793057&group_id=222125&atid=1054680 -Minor french translations fixes. ------------------------------------------------------------------------- -r1626 | zas_ | 2009-04-09 22:07:16 +0200 (Thu, 09 Apr 2009) | 1 line +commit 894ebcaf7da4ea3b72486192c43c15922a3bb68b +Author: Laurent Monin +Date: Tue May 26 19:41:22 2009 +0000 -Fix histogram labels in french. ------------------------------------------------------------------------- -r1625 | zas_ | 2009-04-09 21:58:03 +0200 (Thu, 09 Apr 2009) | 1 line + Add .desktop files to restore lossless jpeg rotation via editors. -French translation was updated. ------------------------------------------------------------------------- -r1624 | nadvornik | 2009-04-08 21:32:30 +0200 (Wed, 08 Apr 2009) | 4 lines +commit 257284ed5d98e13733f90bff28124cdc75c85238 +Author: Vladimir Nadvornik +Date: Sat May 23 21:23:06 2009 +0000 -improved Exiv2 error reporting: -- use correct charset -- respect --debug + added doxygen.conf + https://sourceforge.net/tracker/?func=detail&aid=2795068&group_id=222125&atid=1054680 ------------------------------------------------------------------------- -r1623 | mow | 2009-04-07 01:59:54 +0200 (Tue, 07 Apr 2009) | 4 lines +commit 701705f5255fb572f11beb9cb167a4b1729b61fc +Author: Vladimir Nadvornik +Date: Sat May 23 21:07:21 2009 +0000 -Nest new keywords inside existing + enabled PageSize code + https://bugzilla.redhat.com/show_bug.cgi?id=222639 -It is boring to first add a bunch of keywords and then move them to the -new location. It is more natural to add them as child to existing ons. ------------------------------------------------------------------------- -r1622 | mow | 2009-04-07 01:59:38 +0200 (Tue, 07 Apr 2009) | 4 lines +commit 94698117d7c312c420ae83d26bb80fd973a16b90 +Author: Laurent Monin +Date: Thu May 21 09:54:20 2009 +0000 -Fix the is_keyword bug + Add missing vim modeline. -The is_keyword would be new set when placing the radio buttons. This -Patch fix it by setting the variable afterwards. ------------------------------------------------------------------------- -r1621 | mow | 2009-04-07 01:39:27 +0200 (Tue, 07 Apr 2009) | 1 line +commit 8b292110747064f281bd8ebb58be68f35ba5ea62 +Author: Laurent Monin +Date: Thu May 21 09:20:48 2009 +0000 -Set the focus for new keyword dialog ------------------------------------------------------------------------- -r1620 | zas_ | 2009-04-07 00:18:13 +0200 (Tue, 07 Apr 2009) | 1 line + Attempt to use stock gtk icons for directory list and tree views. -Disable unused functions when compiled without threads support, prevents few warnings. ------------------------------------------------------------------------- -r1619 | zas_ | 2009-04-07 00:13:54 +0200 (Tue, 07 Apr 2009) | 10 lines +commit 2a1d12620e62c03dc69d958dd861e8506146b03c +Author: Laurent Monin +Date: Sat May 16 11:31:48 2009 +0000 -Fix up event source ids type: gint -> guint. -Functions like g_timeout_add() or g_idle_add() return a guint -greater than 0, but in most places it was wrongly stored as int -and initialized to -1. -This broke assertions matching in g_source_remove() for example -since id was always greater than 0 even when timer was not set -(-1 was casted to the biggest guint). + Fix up too short array, reported by Michael Schwendt. +commit db09073d27d708eec901db85729b7c96d513cae8 +Author: Laurent Monin +Date: Sat May 16 08:48:21 2009 +0000 + Fix geeqie.desktop to match spec. Patch by Michael Schwendt. + + + $ desktop-file-validate geeqie.desktop + geeqie.desktop: warning: value "Application;Graphics;Viewer;" for key + "Categories" in group "Desktop Entry" contains a deprecated value + "Application" + + http://standards.freedesktop.org/menu-spec/menu-spec-1.0.html ------------------------------------------------------------------------- -r1618 | nadvornik | 2009-04-06 23:52:49 +0200 (Mon, 06 Apr 2009) | 2 lines +commit 939990870184f816d033427411963290f6ade227 +Author: Laurent Monin +Date: Thu May 14 20:45:34 2009 +0000 -re-ordered some options, improved descriptions + Fix up unused variables warnings. ------------------------------------------------------------------------- -r1617 | nadvornik | 2009-04-06 22:38:54 +0200 (Mon, 06 Apr 2009) | 2 lines +commit 93e62dee098e12678bee8560811f2676d66a169c +Author: Laurent Monin +Date: Thu May 14 20:32:14 2009 +0000 -unconditionally enable fast jpeg thumbnailing + Merge common thumb code from view_file_list and view_file_icon to view_file. ------------------------------------------------------------------------- -r1616 | nadvornik | 2009-04-06 21:53:59 +0200 (Mon, 06 Apr 2009) | 2 lines +commit 63ea2c8531d9336883dfeacf232c15e71fe93d90 +Author: Vladimir Nadvornik +Date: Tue May 12 20:54:58 2009 +0000 -added pane_notify_selection to pane API + added some notes to README file ------------------------------------------------------------------------- -r1615 | zas_ | 2009-04-06 21:13:35 +0200 (Mon, 06 Apr 2009) | 1 line +commit e0541d552647c5878d8ce21e111563837e0c9d9b +Author: Vladimir Nadvornik +Date: Tue May 12 20:38:26 2009 +0000 -Remove unused field in IconData. ------------------------------------------------------------------------- -r1614 | nadvornik | 2009-04-06 21:09:55 +0200 (Mon, 06 Apr 2009) | 2 lines + fixed compilation with older gtk -optimized sidecar file check +commit ff49d58f802d8a012bc0ffb56826047f40e97be6 +Author: Vladimir Nadvornik +Date: Tue May 12 20:17:03 2009 +0000 ------------------------------------------------------------------------- -r1613 | nadvornik | 2009-04-05 11:46:49 +0200 (Sun, 05 Apr 2009) | 2 lines + updated TODO list -fixed bug in overlay drawing +commit 19db93d6eb70f5163b098be3390476c19f10b54e +Author: Vladimir Nadvornik +Date: Tue May 12 18:25:18 2009 +0000 ------------------------------------------------------------------------- -r1612 | nadvornik | 2009-04-05 11:25:48 +0200 (Sun, 05 Apr 2009) | 2 lines + added GPS map support - patch by Colin Clark -improved Scroll reset method in preferences dialog +commit f0115682dc9aa6726bb6f582af15eae5b62bb0c1 +Author: Laurent Monin +Date: Tue May 12 06:54:05 2009 +0000 ------------------------------------------------------------------------- -r1611 | nadvornik | 2009-04-05 01:12:19 +0200 (Sun, 05 Apr 2009) | 3 lines + French translation was updated. -disabled 2-pass rendering also affect color correction -https://sourceforge.net/tracker/?func=detail&aid=2689249&group_id=222125&atid=1054683 +commit d9ddcf2b5bfe86a11a674269b2b0ba3d1e41a694 +Author: Laurent Monin +Date: Tue May 12 06:42:20 2009 +0000 ------------------------------------------------------------------------- -r1610 | nadvornik | 2009-04-05 00:29:25 +0200 (Sun, 05 Apr 2009) | 2 lines + Fix up tooltip text: Color _Management -> Color Management. -added option that simplifies saving of multi-window configurations +commit b8f9d00fd3a2a654b5b7121a520da9ed1e6c6a96 +Author: Vladimir Nadvornik +Date: Mon May 11 20:50:13 2009 +0000 ------------------------------------------------------------------------- -r1609 | nadvornik | 2009-04-05 00:09:50 +0200 (Sun, 05 Apr 2009) | 2 lines + added keyboard configuration dialog + mostly written by Petr Ostadal + alternate keys are not yet fully configurable - the corresponding code + is commented out -dropped show_copy_path option +commit 59e6c19758556f5b4bfaccfdce0ec356289c0b66 +Author: Laurent Monin +Date: Mon May 11 10:10:13 2009 +0000 ------------------------------------------------------------------------- -r1608 | nadvornik | 2009-04-04 23:53:12 +0200 (Sat, 04 Apr 2009) | 2 lines + French translation was updated. -dropped read_buffer options - they don't have any significant effect +commit b8baff4dae2056c190eb6274bf48764521192aa0 +Author: Laurent Monin +Date: Mon May 11 09:55:39 2009 +0000 ------------------------------------------------------------------------- -r1607 | nadvornik | 2009-04-04 23:14:34 +0200 (Sat, 04 Apr 2009) | 2 lines + Include missing header file. -startup path options simplified and moved to layout options +commit 8ae8938d7f55e6b8b1db3a5d699366cc2068baab +Author: Vladimir Nadvornik +Date: Sat May 9 19:45:24 2009 +0000 ------------------------------------------------------------------------- -r1606 | nadvornik | 2009-04-04 22:20:17 +0200 (Sat, 04 Apr 2009) | 4 lines + expose the file grouping flag to the user -moved options from Advanced tab to other tabs -TODO: add Advanced section on each tab +commit 70138111fc44652288eb415f4c3587b0a69a661b +Author: Vladimir Nadvornik +Date: Sat May 9 19:25:51 2009 +0000 + extended the list of grouped metadata tags ------------------------------------------------------------------------- -r1605 | nadvornik | 2009-04-04 21:10:49 +0200 (Sat, 04 Apr 2009) | 2 lines +commit 5a13c696e65d72adc9b75d8955903a857ee845a1 +Author: Vladimir Nadvornik +Date: Sat May 9 17:02:35 2009 +0000 -added metadata_read_GPS_coord + added some structure to the metadata preferences dialog ------------------------------------------------------------------------- -r1604 | nadvornik | 2009-04-04 18:42:54 +0200 (Sat, 04 Apr 2009) | 3 lines +commit 6736cd683214e6d52b2784866f710f8a4a1adc48 +Author: Vladimir Nadvornik +Date: Fri May 8 18:29:09 2009 +0000 -set current fd when the bar is shown again -https://sourceforge.net/tracker/?func=detail&atid=1054680&aid=2729157&group_id=222125 + better tooltip for disabled lcms ------------------------------------------------------------------------- -r1603 | nadvornik | 2009-04-03 21:35:34 +0200 (Fri, 03 Apr 2009) | 2 lines +commit 38d38b50801979777ad5eca4bf18ac5769cab5ba +Author: Vladimir Nadvornik +Date: Thu May 7 20:24:35 2009 +0000 -convert commandline to utf8 + limit metadata details dialog size ------------------------------------------------------------------------- -r1602 | zas_ | 2009-04-03 01:11:07 +0200 (Fri, 03 Apr 2009) | 1 line +commit ecf3f93d54ef1c36365811d00e1a810a1656a189 +Author: Vladimir Nadvornik +Date: Thu May 7 19:52:38 2009 +0000 -Force thumbnails refreshing when thumbnails dimensions are modified through Preferences. ------------------------------------------------------------------------- -r1601 | zas_ | 2009-04-02 18:10:12 +0200 (Thu, 02 Apr 2009) | 5 lines + fixed keyword tree initialization -Use full path in genmarshal. -This allows out of source builds with fakeroot. -Patch by Lukas Jirkovsky. +commit dee4299ea23692b3aefb7f29b12918fa05aed927 +Author: Vladimir Nadvornik +Date: Thu May 7 19:38:07 2009 +0000 + updated version string to beta1 ------------------------------------------------------------------------- -r1600 | zas_ | 2009-04-01 00:23:33 +0200 (Wed, 01 Apr 2009) | 1 line +commit 0dfdc453bc25ed4a2e1fde1ccf2ddf5f73e5604e +Author: Vladimir Nadvornik +Date: Thu May 7 19:34:33 2009 +0000 -Cleanup. ------------------------------------------------------------------------- -r1599 | nadvornik | 2009-03-31 23:33:54 +0200 (Tue, 31 Mar 2009) | 6 lines + enabled XDG directory layout -improved next/prev operation on sidecar files +commit 34a545b2adf71400fa340ad002f6b893d5e8dda3 +Author: Vladimir Nadvornik +Date: Thu May 7 19:30:15 2009 +0000 -all operations with list index seem to be broken but IMHO this fix is -sufficient for 1.0. Then it definitely needs a better interface. + use "keywords" instead of "tags" in option name, it is more consistent +commit fb440ecd8db37f9b877bfb702b97e91422cd334f +Author: Laurent Monin +Date: Sun May 3 17:54:37 2009 +0000 ------------------------------------------------------------------------- -r1598 | zas_ | 2009-03-31 22:57:31 +0200 (Tue, 31 Mar 2009) | 1 line + French translation was updated. -Add and install a template to be used as new editor. Need more work. ------------------------------------------------------------------------- -r1597 | nadvornik | 2009-03-31 22:53:37 +0200 (Tue, 31 Mar 2009) | 2 lines +commit bcc9ac0c44afd4282d63ea05e889ec19cf1cf458 +Author: Vladimir Nadvornik +Date: Sat May 2 22:34:46 2009 +0000 -fixed vdlist_find_row return value + added stock icons for slideshow ------------------------------------------------------------------------- -r1596 | nadvornik | 2009-03-31 22:35:04 +0200 (Tue, 31 Mar 2009) | 2 lines +commit b9dbcccc72df0cf7e537ae9acc776c582d44a24b +Author: Vladimir Nadvornik +Date: Sat May 2 22:19:42 2009 +0000 -use a better signal + updated czech translation ------------------------------------------------------------------------- -r1595 | zas_ | 2009-03-31 22:22:47 +0200 (Tue, 31 Mar 2009) | 1 line +commit baf66bb1af89cfb58a59eb324ef21484c5bca379 +Author: Vladimir Nadvornik +Date: Sat May 2 11:14:24 2009 +0000 -Make desktop window list checkboxes centered and not activatable. ------------------------------------------------------------------------- -r1594 | nadvornik | 2009-03-31 22:05:16 +0200 (Tue, 31 Mar 2009) | 2 lines + force the metadata dialog if it was triggered by the menu or the button -improved debug messages +commit 034c8455de62bcdf0b0e5bb7741e3625b911bfc0 +Author: Vladimir Nadvornik +Date: Sat May 2 10:59:36 2009 +0000 ------------------------------------------------------------------------- -r1593 | nadvornik | 2009-03-31 21:34:39 +0200 (Tue, 31 Mar 2009) | 4 lines + action table clean up -report pixbuf loader errors -https://sourceforge.net/tracker/?func=detail&aid=2720577&group_id=222125&atid=1054680 +commit bf8cb167b7ccb92cc324ade7ae0af00cca98f2e2 +Author: Vladimir Nadvornik +Date: Sat May 2 09:15:56 2009 +0000 + improved pixel info, changed the menu entry from "Hide" to "Show", + added it on default status bar ------------------------------------------------------------------------- -r1592 | zas_ | 2009-03-31 20:45:33 +0200 (Tue, 31 Mar 2009) | 1 line +commit 022c685ad3ea779b5d173483deb75f19434ccac2 +Author: Vladimir Nadvornik +Date: Fri May 1 23:40:01 2009 +0000 -Allow to delete an editor's desktop file from editors list window. ------------------------------------------------------------------------- -r1591 | zas_ | 2009-03-30 22:42:06 +0200 (Mon, 30 Mar 2009) | 1 line + "S" seems to be hardcoded hotkey for GTK_STOCK_SAVE + use S for sort manager -Update POTFILES.in and french translation. ------------------------------------------------------------------------- -r1590 | zas_ | 2009-03-30 22:01:27 +0200 (Mon, 30 Mar 2009) | 1 line +commit c95bd69965832c1cc0b82683888759057cc37b85 +Author: Vladimir Nadvornik +Date: Fri May 1 23:15:51 2009 +0000 -French translation was updated. ------------------------------------------------------------------------- -r1589 | zas_ | 2009-03-30 21:57:44 +0200 (Mon, 30 Mar 2009) | 1 line + - handle color profile and write metadata buttons on statusbar by ui_manager + - statusbar buttons made configurable -Update Changelog file. ------------------------------------------------------------------------- -r1588 | zas_ | 2009-03-30 21:01:09 +0200 (Mon, 30 Mar 2009) | 7 lines +commit b4760e25a6f8e62c950bc9e32f5f4af7c17cdda0 +Author: Vladimir Nadvornik +Date: Fri May 1 09:49:27 2009 +0000 -Fixed bug where pixel/color information at x=0 coordinates werent shown: -- pixel-coordinates now calculated with floor -- guard for update in layout does not apply for 0 coordinates anymore + allow external editors without parameters, as long as they are in + category 'X-Geeqie' -Patch by Ruben Stein. +commit b2025397567ecf8ba11b9372e2161ffd78e33d94 +Author: Vladimir Nadvornik +Date: Wed Apr 29 20:28:54 2009 +0000 + updated czech translation, not yet complete ------------------------------------------------------------------------- -r1587 | zas_ | 2009-03-30 19:52:14 +0200 (Mon, 30 Mar 2009) | 1 line +commit 6739de52b94a36b0a4fd316444cb00ad06571181 +Author: Laurent Monin +Date: Tue Apr 28 21:40:00 2009 +0000 -Fix up previous patch. ------------------------------------------------------------------------- -r1586 | zas_ | 2009-03-30 19:05:31 +0200 (Mon, 30 Mar 2009) | 1 line + French translation was updated. -Desktop files window: make columns sortable, replace Apply and OK buttons by one Save button which is made sensitive when needed. ------------------------------------------------------------------------- -r1585 | nadvornik | 2009-03-29 22:06:21 +0200 (Sun, 29 Mar 2009) | 2 lines +commit baa6516063591b9c127a76be15b6d53851cd6c43 +Author: Laurent Monin +Date: Tue Apr 28 21:38:20 2009 +0000 -improved bar_pane_comment_notify_cb + Update POTFILES.in: cellrenderericon.c removed, color-man.c added. ------------------------------------------------------------------------- -r1584 | nadvornik | 2009-03-29 21:57:19 +0200 (Sun, 29 Mar 2009) | 2 lines +commit 563caeb60cdd5d6c438a22b1a3571f1e044d06b8 +Author: Laurent Monin +Date: Tue Apr 28 21:37:27 2009 +0000 -fixed a typo + Fix up po/Makefile to rebuild geeqie.pot when POTFILES.in was modified. Without this change, new translatable strings in recently added files were not available for translation in various .po files after a make update-po. Makefile.in.in.patch was modified to include this fix plus some minor cleanups. ------------------------------------------------------------------------- -r1583 | nadvornik | 2009-03-29 21:40:16 +0200 (Sun, 29 Mar 2009) | 2 lines +commit 90c899b61dfae05e879b336adf05b189f90f8cb4 +Author: Vladimir Nadvornik +Date: Tue Apr 28 20:09:41 2009 +0000 -fixed possible crash + do not translate internal strings ------------------------------------------------------------------------- -r1582 | nadvornik | 2009-03-29 18:39:42 +0200 (Sun, 29 Mar 2009) | 2 lines +commit cdf39c97d14024d0b0f2922e8d9ac5468d6de829 +Author: Vladimir Nadvornik +Date: Tue Apr 28 06:55:56 2009 +0000 -added UfRaw ID files to known filetypes + added new files ------------------------------------------------------------------------- -r1581 | nadvornik | 2009-03-29 16:26:44 +0200 (Sun, 29 Mar 2009) | 2 lines +commit 05a40a1d54061fb85a3f8b55d6eee745edc0ba9e +Author: Vladimir Nadvornik +Date: Tue Apr 28 06:54:59 2009 +0000 -pane interface cleanup + compilation fixes for older glib and gtk ------------------------------------------------------------------------- -r1580 | nadvornik | 2009-03-29 16:20:44 +0200 (Sun, 29 Mar 2009) | 2 lines +commit a39d10df5963b157a0010f5e0bf6d1a589a2367d +Author: Laurent Monin +Date: Mon Apr 27 23:07:59 2009 +0000 -improved sidebar configuration + French translation was updated: fix few main menu mnenonics. ------------------------------------------------------------------------- -r1579 | nadvornik | 2009-03-29 12:36:13 +0200 (Sun, 29 Mar 2009) | 2 lines +commit e83d047474df3181e844ded3d6341d00a1f06cb2 +Author: Vladimir Nadvornik +Date: Mon Apr 27 21:39:56 2009 +0000 -re-added possibility to display basic file info (size, mode, date) + compilation fixes ------------------------------------------------------------------------- -r1578 | nadvornik | 2009-03-28 16:51:21 +0100 (Sat, 28 Mar 2009) | 3 lines +commit 3e0cad19e6dfe8df7783655fa39e30a2d46b5095 +Author: Vladimir Nadvornik +Date: Mon Apr 27 20:19:21 2009 +0000 -fixed keyboard focus on start-up -https://sourceforge.net/tracker/?func=detail&aid=2707025&group_id=222125&atid=1054680 + "make dist" fixes ------------------------------------------------------------------------- -r1577 | nadvornik | 2009-03-28 16:31:04 +0100 (Sat, 28 Mar 2009) | 2 lines +commit 2dfdfc1d4999579bde942798ac654840c1c05d0d +Author: Laurent Monin +Date: Sun Apr 26 14:08:44 2009 +0000 -active image follows keyboard focus + French translation was updated. ------------------------------------------------------------------------- -r1576 | nadvornik | 2009-03-28 16:09:09 +0100 (Sat, 28 Mar 2009) | 2 lines +commit 81620ce969208f28075c74e05bee39161c567f5c +Author: Vladimir Nadvornik +Date: Sun Apr 26 11:38:28 2009 +0000 -split-mode cleanup and improvements + small fixes ------------------------------------------------------------------------- -r1575 | nadvornik | 2009-03-27 09:05:14 +0100 (Fri, 27 Mar 2009) | 2 lines +commit 61f861ddcb3092f4a243a0220bfd2322ad5dc196 +Author: Vladimir Nadvornik +Date: Sun Apr 26 09:25:52 2009 +0000 -added simple desktop file editor + fixed return from metadata_write_revert ------------------------------------------------------------------------- -r1574 | zas_ | 2009-03-26 22:49:20 +0100 (Thu, 26 Mar 2009) | 7 lines +commit 86da9a1f10413fa132785cdf4d210c0caed1d8d0 +Author: Vladimir Nadvornik +Date: Sun Apr 26 09:01:35 2009 +0000 -Improve editors through .desktop files implementation: -- stricter Exec parameters detection -- correct Icon key handling (absolute file vs name and --icon prefix) -- improved escape, single, double quotes handling and escaping + added an option to write image orientation to the metadata +commit f62a4ec8486bc8489420e73e3981ccde92395342 +Author: Vladimir Nadvornik +Date: Sat Apr 25 22:08:09 2009 +0000 + separated Orientation and Grayscale functions + moved Grayscale to Color management menu ------------------------------------------------------------------------- -r1573 | nadvornik | 2009-03-26 08:56:01 +0100 (Thu, 26 Mar 2009) | 2 lines +commit a0f54dffd9713fc6ae22a46467371500623ad197 +Author: Vladimir Nadvornik +Date: Sat Apr 25 20:55:11 2009 +0000 -fixed histogram drawing + added more info to the details dialog ------------------------------------------------------------------------- -r1572 | zas_ | 2009-03-23 19:49:23 +0100 (Mon, 23 Mar 2009) | 1 line +commit 81e98ec340104f7f64eb907a60ccecd02319fe7a +Author: Vladimir Nadvornik +Date: Fri Apr 24 23:26:49 2009 +0000 -French translation was updated. ------------------------------------------------------------------------- -r1571 | nadvornik | 2009-03-22 00:16:38 +0100 (Sun, 22 Mar 2009) | 2 lines + added details dialog for other operations too -more consistent remote options naming +commit 6ac87bdbb778288847a0aa31fd288a95abdf01d0 +Author: Vladimir Nadvornik +Date: Fri Apr 24 22:51:00 2009 +0000 ------------------------------------------------------------------------- -r1570 | nadvornik | 2009-03-21 21:19:11 +0100 (Sat, 21 Mar 2009) | 3 lines + added possibility to exclude individual files -fixed segfault in histogram -http://sourceforge.net/tracker/index.php?func=detail&aid=2690498&group_id=222125&atid=1054680 +commit 6d5b363690423b2dffaf34296d520d11fe7c348a +Author: Vladimir Nadvornik +Date: Thu Apr 23 21:15:14 2009 +0000 ------------------------------------------------------------------------- -r1569 | nadvornik | 2009-03-21 20:51:07 +0100 (Sat, 21 Mar 2009) | 2 lines + fixed writting metadata behavior at exit -layout id "_current_" matches the currently active layout window +commit 92d41d67e666813d5c5534214555b6f840924f6b +Author: Vladimir Nadvornik +Date: Thu Apr 23 21:12:19 2009 +0000 ------------------------------------------------------------------------- -r1568 | nadvornik | 2009-03-21 19:22:04 +0100 (Sat, 21 Mar 2009) | 2 lines + added an image to the file details dialog -do not copy existing layout id to new window +commit b6e52aecca0dfc39c4e27fdd9aa15f9677fb4f19 +Author: Vladimir Nadvornik +Date: Thu Apr 23 20:48:03 2009 +0000 ------------------------------------------------------------------------- -r1567 | nadvornik | 2009-03-21 18:47:50 +0100 (Sat, 21 Mar 2009) | 2 lines + differentiate between "Cancel" and "Discard changes" -update translated pane titles +commit 7ff04bed4bde4c74de4ed48a28f0538e8ed4955d +Author: Laurent Monin +Date: Tue Apr 21 21:47:11 2009 +0000 ------------------------------------------------------------------------- -r1566 | nadvornik | 2009-03-20 23:48:01 +0100 (Fri, 20 Mar 2009) | 2 lines + Fix up few warnings (especially on 64bits platforms). -do not re-create ui_manager at layout change +commit a58c2dc7c6be53eb1b58d3eae0198ee102d593ac +Author: Vladimir Nadvornik +Date: Tue Apr 21 21:16:32 2009 +0000 ------------------------------------------------------------------------- -r1565 | nadvornik | 2009-03-20 22:28:31 +0100 (Fri, 20 Mar 2009) | 2 lines + fixed metadata.confirm_on_dir_change -added a possibility to update existing bars from config +commit ba226375e73ade36cdad0d3acc95a96ebec3ef42 +Author: Vladimir Nadvornik +Date: Tue Apr 21 21:07:28 2009 +0000 ------------------------------------------------------------------------- -r1564 | nadvornik | 2009-03-20 18:02:00 +0100 (Fri, 20 Mar 2009) | 3 lines + added possibility to show modifiied metadata before write -added tooltips to external editors on toolbar -- patch by Colin Clark +commit 97517b5bdf8f3a555a086b15ded0748aa700979c +Author: Vladimir Nadvornik +Date: Mon Apr 20 21:34:16 2009 +0000 ------------------------------------------------------------------------- -r1563 | nadvornik | 2009-03-20 17:28:43 +0100 (Fri, 20 Mar 2009) | 2 lines + added remote interface for exporting additional info (sidecars, + destination) to external commands + + see the symlink command for an example + + http://sourceforge.net/tracker/?func=detail&aid=2488845&group_id=222125&atid=1054680 -added "load config" command to remote control +commit be3cde059c7592a31a839c4da5d38e85bdff68e9 +Author: Vladimir Nadvornik +Date: Mon Apr 20 21:07:52 2009 +0000 ------------------------------------------------------------------------- -r1562 | nadvornik | 2009-03-20 15:36:59 +0100 (Fri, 20 Mar 2009) | 2 lines + write info and debugging messages to stderr -added possibility to update existing layout window from config +commit 4d953e1706d4c1eadf93172438635b4dfa3e9c5f +Author: Vladimir Nadvornik +Date: Mon Apr 20 19:44:50 2009 +0000 ------------------------------------------------------------------------- -r1561 | nadvornik | 2009-03-20 12:52:29 +0100 (Fri, 20 Mar 2009) | 2 lines + improved remote protocol to allow bidirectional communication -do not add duplicate keywords from config file +commit 119665d75960040f13b9a40ecdf0515e4405b49e +Author: Vladimir Nadvornik +Date: Fri Apr 17 20:26:22 2009 +0000 ------------------------------------------------------------------------- -r1560 | nadvornik | 2009-03-20 11:12:29 +0100 (Fri, 20 Mar 2009) | 2 lines + fixed tests for vd_find_row return value -be more verbose on parse errors +commit fe28f85563b7bff64ccad3a7280aadaeb4aff8c0 +Author: Klaus Ethgen +Date: Tue Apr 14 21:51:29 2009 +0000 ------------------------------------------------------------------------- -r1559 | nadvornik | 2009-03-20 10:46:35 +0100 (Fri, 20 Mar 2009) | 3 lines + German translation updated + + With some help from de.alt.rec.digitalfotografie. -added function to reload external editors at any time -eliminated init_after_global_options() +commit 2517907d2cb2e80808e33e63b0dd1895b8d53fa5 +Author: Laurent Monin +Date: Tue Apr 14 20:54:50 2009 +0000 ------------------------------------------------------------------------- -r1558 | nadvornik | 2009-03-19 23:58:28 +0100 (Thu, 19 Mar 2009) | 2 lines + French translation was updated. -initialization clean-up +commit 3ad776526060f2004ff824ac4a7e88c3df6c43eb +Author: Vladimir Nadvornik +Date: Mon Apr 13 22:40:47 2009 +0000 ------------------------------------------------------------------------- -r1557 | nadvornik | 2009-03-19 23:12:14 +0100 (Thu, 19 Mar 2009) | 2 lines + color profile fixes -improved config file formatting +commit 75909b6dbed56995f8d6abc9f917ac13de1c576c +Author: Vladimir Nadvornik +Date: Mon Apr 13 14:39:50 2009 +0000 ------------------------------------------------------------------------- -r1556 | nadvornik | 2009-03-18 00:03:07 +0100 (Wed, 18 Mar 2009) | 2 lines + show color management status on statusbar -added more IPTC tags +commit a512de6dffd96f4a2273aaa088d339e20fc865c1 +Author: Vladimir Nadvornik +Date: Mon Apr 13 10:55:49 2009 +0000 ------------------------------------------------------------------------- -r1555 | nadvornik | 2009-03-17 23:41:09 +0100 (Tue, 17 Mar 2009) | 2 lines + support X11 screen profile + http://freedesktop.org/wiki/ICC_Profiles_in_X_Specification_0.3 -implemented editing support in exif pane +commit 6fa6bdcca280c06ce42c9061caa76890e4cca19e +Author: Vladimir Nadvornik +Date: Mon Apr 13 08:09:56 2009 +0000 ------------------------------------------------------------------------- -r1554 | nadvornik | 2009-03-17 20:52:56 +0100 (Tue, 17 Mar 2009) | 2 lines + moved color profiles from statusbar to View menu -fixed loading of desktop file icons, gtk seems to expect an icon name without extension +commit 9d1fd8df2610693a3c68e31faaf42ce419f09c5e +Author: Klaus Ethgen +Date: Sun Apr 12 17:58:55 2009 +0000 ------------------------------------------------------------------------- -r1553 | nadvornik | 2009-03-17 20:09:34 +0100 (Tue, 17 Mar 2009) | 2 lines + German translation updated -simplified code +commit 6b5add467cb7bd1f7752dc4c8a25cd6e1535f76d +Author: Laurent Monin +Date: Sun Apr 12 15:06:43 2009 +0000 ------------------------------------------------------------------------- -r1552 | nadvornik | 2009-03-17 19:58:15 +0100 (Tue, 17 Mar 2009) | 2 lines + French translation was updated. -improved expanding and hiding of helper keywords +commit 9907bdcd3b84735d887aec962bf3ab8c8afb6213 +Author: Klaus Ethgen +Date: Sun Apr 12 11:02:03 2009 +0000 ------------------------------------------------------------------------- -r1551 | nadvornik | 2009-03-17 19:30:53 +0100 (Tue, 17 Mar 2009) | 2 lines + Update POTFILES.in + + metadata.c was not in the POTFILES.in. -fixed keyword tree redrawing +commit 6fc844092598a09b07c51f3ca9434d84dc1f7723 +Author: Vladimir Nadvornik +Date: Sun Apr 12 08:36:53 2009 +0000 ------------------------------------------------------------------------- -r1550 | zas_ | 2009-03-17 01:05:13 +0100 (Tue, 17 Mar 2009) | 1 line + fixed ambiguous strings -Preliminary support for doxygen: make doxygen-doc will create documentation from sources in doc/doxygen directory. ------------------------------------------------------------------------- -r1549 | zas_ | 2009-03-16 21:39:09 +0100 (Mon, 16 Mar 2009) | 1 line +commit 9483a82f6efbc103eccf69be8ffa2f827b2d89bf +Author: Vladimir Nadvornik +Date: Sat Apr 11 21:28:46 2009 +0000 -gint -> gboolean where applicable. The end (ouf!). ------------------------------------------------------------------------- -r1548 | zas_ | 2009-03-16 20:11:39 +0100 (Mon, 16 Mar 2009) | 1 line + improved default keyword tree -gint -> gboolean where applicable. ------------------------------------------------------------------------- -r1547 | zas_ | 2009-03-16 19:19:11 +0100 (Mon, 16 Mar 2009) | 1 line +commit 957656a98cb956da53e2e52cb025c2f93dd170cf +Author: Klaus Ethgen +Date: Sat Apr 11 20:46:37 2009 +0000 -gint -> gboolean where applicable. ------------------------------------------------------------------------- -r1546 | nadvornik | 2009-03-16 00:22:17 +0100 (Mon, 16 Mar 2009) | 2 lines + Fix that the output of msgfmt could be singular + + The output of msgfmt could be singular if there is only one translation + of the given type. -improved pane_keywords notification +commit 1a73f69002e383830604ccc14c925f2967ede8df +Author: Klaus Ethgen +Date: Sat Apr 11 19:51:03 2009 +0000 ------------------------------------------------------------------------- -r1545 | nadvornik | 2009-03-15 23:46:25 +0100 (Sun, 15 Mar 2009) | 4 lines + Allow to configure case handling of keywords + + Sometimes I use just different case for keywords. This should be + chooseable. -call the notify function just once when the keywords are pushed to the -textarea +commit 66ad4aee7a6471f5a7f336fce6937182dc83c538 +Author: Vladimir Nadvornik +Date: Sat Apr 11 19:35:03 2009 +0000 + fixed updating of filelist marks ------------------------------------------------------------------------- -r1544 | zas_ | 2009-03-15 21:16:20 +0100 (Sun, 15 Mar 2009) | 1 line +commit cceb6eee1213706de3b08a08b6410c433b5f64fb +Author: Klaus Ethgen +Date: Sat Apr 11 18:34:12 2009 +0000 -gint -> gboolean. ------------------------------------------------------------------------- -r1543 | nadvornik | 2009-03-15 19:41:25 +0100 (Sun, 15 Mar 2009) | 3 lines + Adding debian packaging informations + + Adding debian control directory to create a geeqie debian package. + + NOTES: (To be fixed in autoconf) + - LIRC must be explicit _enabled_ instead of disable. This is wrong + documented. + - It might be a good idea to derivate the readmedir and the htmldir + from docdir. -fixed segfault in osd called from img-view -http://sourceforge.net/tracker/index.php?func=detail&aid=2684068&group_id=222125&atid=1054680 +commit e91e0ff929d92d40c2dc25d4850729214ccee9cd +Author: Klaus Ethgen +Date: Sat Apr 11 16:34:25 2009 +0000 ------------------------------------------------------------------------- -r1542 | zas_ | 2009-03-15 19:06:41 +0100 (Sun, 15 Mar 2009) | 1 line + Implementing CTRL-W to close advanced exif window + + In fact, this implements keypress event handling in the advanced exif + window to handle CTRL-W event. -gint -> gboolean. ------------------------------------------------------------------------- -r1541 | nadvornik | 2009-03-15 18:40:04 +0100 (Sun, 15 Mar 2009) | 2 lines +commit f43df7469ca80ae712259e6234fde3e194219b8d +Author: Klaus Ethgen +Date: Fri Apr 10 13:54:08 2009 +0000 -fixed viewing image from dupe and search windows + Just update the internal sort method + + There is no other use of the internal sort method than speeding up the + sorting of a collection. So setting it to SORT_NONE is the better + choice. ------------------------------------------------------------------------- -r1540 | zas_ | 2009-03-15 16:01:07 +0100 (Sun, 15 Mar 2009) | 1 line +commit 6bbb74b31e8fad738645bb98ff008b7e241da279 +Author: Klaus Ethgen +Date: Fri Apr 10 13:44:37 2009 +0000 -gint -> gboolean. ------------------------------------------------------------------------- -r1539 | zas_ | 2009-03-15 14:33:56 +0100 (Sun, 15 Mar 2009) | 1 line + Implement random sort method for collections + + This patch allows to randomize the collections. (Closes: #2497413) + https://sourceforge.net/tracker/?func=detail&aid=2497413&group_id=222125&atid=1054683 -gint -> gboolean. ------------------------------------------------------------------------- -r1538 | nadvornik | 2009-03-15 13:41:39 +0100 (Sun, 15 Mar 2009) | 2 lines +commit 0977d77b3e2bff165ba6e73f0a4fc032b2c34daf +Author: Klaus Ethgen +Date: Fri Apr 10 10:18:42 2009 +0000 -fixed XMP and IPTC entry names in exif pane + Fix the broken statistic generation + + The output of msgfmt has different format if no fuzzy translations (or + even no translated) are available. I fixed that by parsing the output of + msgfmt more intelligent. + + Drawback of the solution is that the parsing will not work if the output + of msgfmt use not the strings "translated messages", "fuzzy + translations" and "untranslated messages". ------------------------------------------------------------------------- -r1537 | nadvornik | 2009-03-15 13:20:14 +0100 (Sun, 15 Mar 2009) | 2 lines +commit 16e5361e36e314401b1d2528b5b672786d112dd0 +Author: Klaus Ethgen +Date: Fri Apr 10 09:47:40 2009 +0000 -added notification to the exif pane + German translation updated + + Also included a update in the README file. Finally I add myself to that + file. :-) ------------------------------------------------------------------------- -r1536 | nadvornik | 2009-03-15 12:58:46 +0100 (Sun, 15 Mar 2009) | 2 lines +commit a9076f2dddc84408b88da2017b77242ac2fc8a24 +Author: Klaus Ethgen +Date: Fri Apr 10 09:47:20 2009 +0000 -fixed a bug in osd updating, it seems that the osd icons work again + Add pgettext for some ambiguous strings + + There are some strings which are ambiguous to translate. There is the + pgettext function to solf that problem. + + For example, locations can be translated to german by Ortsangaben + (geographical) or by Pfad (filesystem). I am sure there are also some + ambiguous in other languages. ------------------------------------------------------------------------- -r1535 | nadvornik | 2009-03-15 12:34:09 +0100 (Sun, 15 Mar 2009) | 2 lines +commit b2d63b670cc70a0d0714f378aa4809e386cac2a0 +Author: Laurent Monin +Date: Thu Apr 9 20:40:16 2009 +0000 -compute histogram in idle time + Minor french translations fixes. ------------------------------------------------------------------------- -r1534 | nadvornik | 2009-03-15 10:06:13 +0100 (Sun, 15 Mar 2009) | 2 lines +commit edae49861932cea9597cba0e9dab3186538eed59 +Author: Laurent Monin +Date: Thu Apr 9 20:07:16 2009 +0000 -fixed possible deadlock with multiple thumb loaders in parallel + Fix histogram labels in french. ------------------------------------------------------------------------- -r1533 | zas_ | 2009-03-15 08:07:52 +0100 (Sun, 15 Mar 2009) | 1 line +commit e6fbbd4293cbfa1b4e6ecfd1f0a3c5cfebc20364 +Author: Laurent Monin +Date: Thu Apr 9 19:58:03 2009 +0000 -gint -> gboolean. ------------------------------------------------------------------------- -r1532 | nadvornik | 2009-03-15 00:26:42 +0100 (Sun, 15 Mar 2009) | 3 lines + French translation was updated. -completely separated global and layout window options -layout window configuration is available under separate menu entry +commit 672e4f69f438098a1552531fd6882e404e3e606f +Author: Vladimir Nadvornik +Date: Wed Apr 8 19:32:30 2009 +0000 ------------------------------------------------------------------------- -r1531 | zas_ | 2009-03-14 22:12:55 +0100 (Sat, 14 Mar 2009) | 1 line + improved Exiv2 error reporting: + - use correct charset + - respect --debug -gint -> gboolean. ------------------------------------------------------------------------- -r1530 | zas_ | 2009-03-14 21:07:23 +0100 (Sat, 14 Mar 2009) | 1 line +commit fc1b420298aad46578404e56b0396182c1f4c393 +Author: Klaus Ethgen +Date: Mon Apr 6 23:59:54 2009 +0000 -More gboolean. ------------------------------------------------------------------------- -r1529 | zas_ | 2009-03-14 20:25:21 +0100 (Sat, 14 Mar 2009) | 1 line + Nest new keywords inside existing + + It is boring to first add a bunch of keywords and then move them to the + new location. It is more natural to add them as child to existing ons. -Use gboolean where applicable, minor cleanup and indentations fixes. ------------------------------------------------------------------------- -r1528 | nadvornik | 2009-03-14 18:21:35 +0100 (Sat, 14 Mar 2009) | 2 lines +commit 81bcaeeeed18b732259e69d645da59cf953e484c +Author: Klaus Ethgen +Date: Mon Apr 6 23:59:38 2009 +0000 -improved notification system + Fix the is_keyword bug + + The is_keyword would be new set when placing the radio buttons. This + Patch fix it by setting the variable afterwards. ------------------------------------------------------------------------- -r1527 | zas_ | 2009-03-14 12:26:43 +0100 (Sat, 14 Mar 2009) | 1 line +commit 80f4d7efaec01b04310602fc82d571d178f797cd +Author: Klaus Ethgen +Date: Mon Apr 6 23:39:27 2009 +0000 -More gboolean and tidy up. ------------------------------------------------------------------------- -r1526 | nadvornik | 2009-03-14 11:34:42 +0100 (Sat, 14 Mar 2009) | 2 lines + Set the focus for new keyword dialog -cleanup, small fixes +commit 6224bad98e1263b2ff9d2f431efcd601f74121a3 +Author: Laurent Monin +Date: Mon Apr 6 22:18:13 2009 +0000 ------------------------------------------------------------------------- -r1525 | nadvornik | 2009-03-14 00:19:58 +0100 (Sat, 14 Mar 2009) | 2 lines + Disable unused functions when compiled without threads support, prevents few warnings. -do not allow to add keywords with the same name as siblings +commit 14946850539ebb7317fb81add299cb19bacd085a +Author: Laurent Monin +Date: Mon Apr 6 22:13:54 2009 +0000 ------------------------------------------------------------------------- -r1524 | nadvornik | 2009-03-13 17:45:21 +0100 (Fri, 13 Mar 2009) | 2 lines + Fix up event source ids type: gint -> guint. + Functions like g_timeout_add() or g_idle_add() return a guint + greater than 0, but in most places it was wrongly stored as int + and initialized to -1. + This broke assertions matching in g_source_remove() for example + since id was always greater than 0 even when timer was not set + (-1 was casted to the biggest guint). -added keyword tree filtering +commit bc94042180f920c3bf111578a565a450c177f613 +Author: Vladimir Nadvornik +Date: Mon Apr 6 21:52:49 2009 +0000 ------------------------------------------------------------------------- -r1523 | nadvornik | 2009-03-13 13:06:01 +0100 (Fri, 13 Mar 2009) | 2 lines + re-ordered some options, improved descriptions -show file name in advanced_exif +commit 9e28ad2ad370fa1f0baad1d82adaada56f21ec4d +Author: Vladimir Nadvornik +Date: Mon Apr 6 20:38:54 2009 +0000 ------------------------------------------------------------------------- -r1522 | nadvornik | 2009-03-13 11:36:32 +0100 (Fri, 13 Mar 2009) | 2 lines + unconditionally enable fast jpeg thumbnailing -handle sidecar files for raw formats that are not known to exiv2 +commit 61856b1efe4b60ad03ffeaee4766e7c011fd12ce +Author: Vladimir Nadvornik +Date: Mon Apr 6 19:53:59 2009 +0000 ------------------------------------------------------------------------- -r1521 | nadvornik | 2009-03-13 10:03:06 +0100 (Fri, 13 Mar 2009) | 2 lines + added pane_notify_selection to pane API -fixed keyword to mark connection +commit 3b39f3a69f6c153b8501f2b887fc0b0fa46e6298 +Author: Laurent Monin +Date: Mon Apr 6 19:13:35 2009 +0000 ------------------------------------------------------------------------- -r1520 | zas_ | 2009-03-12 23:44:21 +0100 (Thu, 12 Mar 2009) | 1 line + Remove unused field in IconData. -Use gboolean where applicable. ------------------------------------------------------------------------- -r1519 | zas_ | 2009-03-12 23:39:06 +0100 (Thu, 12 Mar 2009) | 1 line +commit d7f366685b907de7dd3fa4c264104bd4979beb2c +Author: Vladimir Nadvornik +Date: Mon Apr 6 19:09:55 2009 +0000 -Make ishidden() static to filedata.c and rename it is_hidden_file(). ------------------------------------------------------------------------- -r1518 | zas_ | 2009-03-12 23:35:45 +0100 (Thu, 12 Mar 2009) | 1 line + optimized sidecar file check -gint -> gboolean and tidy up. ------------------------------------------------------------------------- -r1517 | nadvornik | 2009-03-12 22:27:13 +0100 (Thu, 12 Mar 2009) | 2 lines +commit c1209c2edb4c045e50e2a0ce3d8826deabc17ef0 +Author: Vladimir Nadvornik +Date: Sun Apr 5 09:46:49 2009 +0000 -added a dialog for editing keyword tree + fixed bug in overlay drawing ------------------------------------------------------------------------- -r1516 | zas_ | 2009-03-12 22:06:37 +0100 (Thu, 12 Mar 2009) | 1 line +commit 51a9455bd33f439da36889109602a6a2b081b18d +Author: Vladimir Nadvornik +Date: Sun Apr 5 09:25:48 2009 +0000 -Use gboolean where applicable, for the sake of consistency. ------------------------------------------------------------------------- -r1515 | zas_ | 2009-03-12 00:36:01 +0100 (Thu, 12 Mar 2009) | 1 line + improved Scroll reset method in preferences dialog -Code cleanup. ------------------------------------------------------------------------- -r1514 | zas_ | 2009-03-12 00:35:31 +0100 (Thu, 12 Mar 2009) | 1 line +commit 7ba4f8b997ed526c7bae4f6a076a27f53cc8324a +Author: Vladimir Nadvornik +Date: Sat Apr 4 23:12:19 2009 +0000 -Fix bug when adding a new collection through sort manager. Tidy up. ------------------------------------------------------------------------- -r1513 | zas_ | 2009-03-12 00:04:30 +0100 (Thu, 12 Mar 2009) | 1 line + disabled 2-pass rendering also affect color correction + https://sourceforge.net/tracker/?func=detail&aid=2689249&group_id=222125&atid=1054683 -Tidy up. ------------------------------------------------------------------------- -r1512 | zas_ | 2009-03-11 23:56:56 +0100 (Wed, 11 Mar 2009) | 1 line +commit 71cf89dfdd1e65f09f810d3f21ff887249e7bc8f +Author: Vladimir Nadvornik +Date: Sat Apr 4 22:29:25 2009 +0000 -Use gboolean pseudo type where applicable. ------------------------------------------------------------------------- -r1511 | zas_ | 2009-03-11 23:28:37 +0100 (Wed, 11 Mar 2009) | 1 line + added option that simplifies saving of multi-window configurations -Remove useless functions. ------------------------------------------------------------------------- -r1510 | nadvornik | 2009-03-11 22:54:54 +0100 (Wed, 11 Mar 2009) | 2 lines +commit 282436623f1d51df1cd6acd812d79467dccbd3af +Author: Vladimir Nadvornik +Date: Sat Apr 4 22:09:50 2009 +0000 -added a popup menu in keyword tree + dropped show_copy_path option ------------------------------------------------------------------------- -r1509 | zas_ | 2009-03-11 18:38:20 +0100 (Wed, 11 Mar 2009) | 1 line +commit 33d633ef9aa9b25e585da6f0ff0a486aed4ee2a3 +Author: Vladimir Nadvornik +Date: Sat Apr 4 21:53:12 2009 +0000 -Use dynamic allocation for editor key passed to various callbacks. ------------------------------------------------------------------------- -r1508 | nadvornik | 2009-03-10 23:52:12 +0100 (Tue, 10 Mar 2009) | 2 lines + dropped read_buffer options - they don't have any significant effect -fixed saving of file_view_type +commit 5a3320536bd7974f2a29a3fcc8690ffb277fbd1e +Author: Vladimir Nadvornik +Date: Sat Apr 4 21:14:34 2009 +0000 ------------------------------------------------------------------------- -r1507 | zas_ | 2009-03-10 18:58:30 +0100 (Tue, 10 Mar 2009) | 1 line + startup path options simplified and moved to layout options -Remove now useless element. ------------------------------------------------------------------------- -r1506 | zas_ | 2009-03-10 18:22:17 +0100 (Tue, 10 Mar 2009) | 1 line +commit c4b18aa94892e17fe1d1922ebc9fdf298aeab082 +Author: Vladimir Nadvornik +Date: Sat Apr 4 20:20:17 2009 +0000 -Remove the toggle on advanced exif window menu item. ------------------------------------------------------------------------- -r1505 | zas_ | 2009-03-09 20:37:58 +0100 (Mon, 09 Mar 2009) | 1 line + moved options from Advanced tab to other tabs + TODO: add Advanced section on each tab -Add missing g_key_file_free() call. ------------------------------------------------------------------------- -r1504 | zas_ | 2009-03-09 20:35:53 +0100 (Mon, 09 Mar 2009) | 1 line +commit c66eafd0dfccc52bbeccef99066654aa061971a9 +Author: Vladimir Nadvornik +Date: Sat Apr 4 19:10:49 2009 +0000 -Fix editor_command_path_parse(). ------------------------------------------------------------------------- -r1503 | zas_ | 2009-03-09 20:34:26 +0100 (Mon, 09 Mar 2009) | 1 line + added metadata_read_GPS_coord -Revert changeset 1502. It brokes the spec: hidden desktop files from user directory should hide files from system directory with the same name. ------------------------------------------------------------------------- -r1502 | zas_ | 2009-03-09 13:44:06 +0100 (Mon, 09 Mar 2009) | 1 line +commit a5a0e4b5c4d69dcc28639ac21ad33be2400e7d61 +Author: Vladimir Nadvornik +Date: Sat Apr 4 16:42:54 2009 +0000 -Only store editors if they match criterias to not be hidden from start, it makes more sense. Fix editor_command_path_parse(). ------------------------------------------------------------------------- -r1501 | zas_ | 2009-03-09 00:12:49 +0100 (Mon, 09 Mar 2009) | 1 line + set current fd when the bar is shown again + https://sourceforge.net/tracker/?func=detail&atid=1054680&aid=2729157&group_id=222125 -Introduce EditorFlags type, cleanup. ------------------------------------------------------------------------- -r1500 | nadvornik | 2009-03-09 00:09:27 +0100 (Mon, 09 Mar 2009) | 2 lines +commit fc76e6d11d10c311f3aa5b2cf81edef98e53ee86 +Author: Vladimir Nadvornik +Date: Fri Apr 3 19:35:34 2009 +0000 -save and restore the keyword tree + convert commandline to utf8 ------------------------------------------------------------------------- -r1499 | nadvornik | 2009-03-08 22:12:45 +0100 (Sun, 08 Mar 2009) | 2 lines +commit 5f808326c11b02c6b427614e3c2eaee3c0275cf7 +Author: Laurent Monin +Date: Thu Apr 2 23:11:07 2009 +0000 -fixed crash with certain layout configurations + Force thumbnails refreshing when thumbnails dimensions are modified through Preferences. ------------------------------------------------------------------------- -r1498 | zas_ | 2009-03-08 21:49:48 +0100 (Sun, 08 Mar 2009) | 1 line +commit 8d622ad68bbee6f4671dec964fedde21e1095d7f +Author: Laurent Monin +Date: Thu Apr 2 16:10:12 2009 +0000 -Cleanup and minor fixes. ------------------------------------------------------------------------- -r1497 | zas_ | 2009-03-08 18:51:03 +0100 (Sun, 08 Mar 2009) | 1 line + Use full path in genmarshal. + This allows out of source builds with fakeroot. + Patch by Lukas Jirkovsky. -Advanced exif window: make all columns sortable and resizable. ------------------------------------------------------------------------- -r1496 | zas_ | 2009-03-08 16:30:15 +0100 (Sun, 08 Mar 2009) | 1 line +commit f1b49514000a0db194e68800348c5033e1bb30b7 +Author: Laurent Monin +Date: Tue Mar 31 22:23:33 2009 +0000 -Add helper macros EDITOR_ERRORS() and EDITOR_ERRORS_BUT_SKIPPED() to clean up the code a bit. Minor tidy up. ------------------------------------------------------------------------- -r1495 | zas_ | 2009-03-08 16:02:18 +0100 (Sun, 08 Mar 2009) | 1 line + Cleanup. -Fix up editor execution. ------------------------------------------------------------------------- -r1494 | zas_ | 2009-03-08 15:27:19 +0100 (Sun, 08 Mar 2009) | 1 line +commit dc03f50c8796196722ddc1f794280887d489e5fa +Author: Vladimir Nadvornik +Date: Tue Mar 31 21:33:54 2009 +0000 -Display icons in edit contextual menu. ------------------------------------------------------------------------- -r1493 | zas_ | 2009-03-08 14:23:25 +0100 (Sun, 08 Mar 2009) | 1 line + improved next/prev operation on sidecar files + + all operations with list index seem to be broken but IMHO this fix is + sufficient for 1.0. Then it definitely needs a better interface. -In various Edit context menus, only display editors that match the file types in the selection. ------------------------------------------------------------------------- -r1492 | nadvornik | 2009-03-08 13:42:23 +0100 (Sun, 08 Mar 2009) | 2 lines +commit 91a89497f621323b40f3cd5f35bb1e3ab3c8a232 +Author: Laurent Monin +Date: Tue Mar 31 20:57:31 2009 +0000 -dnd fixes + Add and install a template to be used as new editor. Need more work. ------------------------------------------------------------------------- -r1491 | nadvornik | 2009-03-08 12:32:12 +0100 (Sun, 08 Mar 2009) | 2 lines +commit 23e172eca263571aeddf10792887edf91dcfee7d +Author: Vladimir Nadvornik +Date: Tue Mar 31 20:53:37 2009 +0000 -dnd fixes + fixed vdlist_find_row return value ------------------------------------------------------------------------- -r1490 | nadvornik | 2009-03-08 11:38:51 +0100 (Sun, 08 Mar 2009) | 2 lines +commit 0ba13b956a7ffdcba1646f1a57ca88b743c2c9b2 +Author: Vladimir Nadvornik +Date: Tue Mar 31 20:35:04 2009 +0000 -allow dropping of multiple keywords + use a better signal ------------------------------------------------------------------------- -r1489 | nadvornik | 2009-03-08 11:25:24 +0100 (Sun, 08 Mar 2009) | 2 lines +commit e2c72d45a22214bd7c079ffe9f59d6047daf69a9 +Author: Laurent Monin +Date: Tue Mar 31 20:22:47 2009 +0000 -show a label instead of the default drag icon + Make desktop window list checkboxes centered and not activatable. ------------------------------------------------------------------------- -r1488 | nadvornik | 2009-03-08 10:56:40 +0100 (Sun, 08 Mar 2009) | 3 lines +commit f1ff99e0a8a6d4b0c132d6ea9a71455ad444b8ce +Author: Vladimir Nadvornik +Date: Tue Mar 31 20:05:16 2009 +0000 -dnd in keywords tree -improved dnd in advanced exif + improved debug messages ------------------------------------------------------------------------- -r1487 | nadvornik | 2009-03-07 18:02:59 +0100 (Sat, 07 Mar 2009) | 5 lines +commit 193a5482a0e2dc7af1c012a2c6bfdfe0c204bd5f +Author: Vladimir Nadvornik +Date: Tue Mar 31 19:34:39 2009 +0000 -implemented keywords editor as described at -http://geeqie.wiki.sourceforge.net/keywords -keyword tree is hardcoded for now -TODO: configuration + report pixbuf loader errors + https://sourceforge.net/tracker/?func=detail&aid=2720577&group_id=222125&atid=1054680 ------------------------------------------------------------------------- -r1486 | zas_ | 2009-03-07 11:32:04 +0100 (Sat, 07 Mar 2009) | 1 line +commit c20d6b497d25d8bf6ce4883e3f51d957b9cb8aae +Author: Laurent Monin +Date: Tue Mar 31 18:45:33 2009 +0000 -French translation was updated. ------------------------------------------------------------------------- -r1485 | zas_ | 2009-03-07 11:31:30 +0100 (Sat, 07 Mar 2009) | 1 line + Allow to delete an editor's desktop file from editors list window. -Use a common function bar_pane_expander_title() to set expanders title widget. ------------------------------------------------------------------------- -r1484 | zas_ | 2009-03-06 23:34:38 +0100 (Fri, 06 Mar 2009) | 1 line +commit 852216c650a242a29ec7e1c2d75e0f8cb8dc2bc6 +Author: Laurent Monin +Date: Mon Mar 30 20:42:06 2009 +0000 -Try to improve tab completion: when a key is pressed while tab completion menu is shown, the number of entries is reduced, dhowing all matching entries but the menu is no more closed after each key pressure. Number of possible entries in this menu was increased from 500 to 1000. Pressing TAB when path entry is empty now adds / (root directory). ------------------------------------------------------------------------- -r1483 | nadvornik | 2009-03-06 16:52:47 +0100 (Fri, 06 Mar 2009) | 2 lines + Update POTFILES.in and french translation. -simplified bar interface +commit 3f65637f72150ab18b68aad9c069f1dd8310da3d +Author: Laurent Monin +Date: Mon Mar 30 20:01:27 2009 +0000 ------------------------------------------------------------------------- -r1482 | zas_ | 2009-03-06 16:04:35 +0100 (Fri, 06 Mar 2009) | 1 line + French translation was updated. -Add debug versions of path_to_utf8() and path_from_utf8() which allows to report the caller file and line, this is enabled with --enable-debug-flags (and developer mode too). ------------------------------------------------------------------------- -r1481 | zas_ | 2009-03-06 15:53:32 +0100 (Fri, 06 Mar 2009) | 1 line +commit 5294d9ad16564425b40a77c671f106c1fbbe8d09 +Author: Laurent Monin +Date: Mon Mar 30 19:57:44 2009 +0000 -Fix utf8/locale conversion warning: the path passed to isdir() is not in UTF8 (if local fs is not in UFT8) so do not use it (isdir() uses stat_utf8() which calls path_from_utf8()). ------------------------------------------------------------------------- -r1480 | nadvornik | 2009-03-06 15:42:32 +0100 (Fri, 06 Mar 2009) | 2 lines + Update Changelog file. -enable wrap mode in comment pane +commit be6f51861124a8e5f4c10fcc4fdd9df1cf0613ca +Author: Laurent Monin +Date: Mon Mar 30 19:01:09 2009 +0000 ------------------------------------------------------------------------- -r1479 | nadvornik | 2009-03-06 15:24:11 +0100 (Fri, 06 Mar 2009) | 2 lines + Fixed bug where pixel/color information at x=0 coordinates werent shown: + - pixel-coordinates now calculated with floor + - guard for update in layout does not apply for 0 coordinates anymore + + Patch by Ruben Stein. -use standard GtkHPaned for sidebar width +commit 9ec7080489b3089207f5146f8d4a9f18b0275add +Author: Laurent Monin +Date: Mon Mar 30 17:52:14 2009 +0000 ------------------------------------------------------------------------- -r1478 | zas_ | 2009-03-06 12:42:25 +0100 (Fri, 06 Mar 2009) | 1 line + Fix up previous patch. -Fix tab completion when entering "/et[TAB]" it was changed to "et", this is fixed. ------------------------------------------------------------------------- -r1477 | nadvornik | 2009-03-06 00:32:56 +0100 (Fri, 06 Mar 2009) | 2 lines +commit 054df7368da1e35ebf7a1ff5321203acd01acbb3 +Author: Laurent Monin +Date: Mon Mar 30 17:05:31 2009 +0000 -do not crash if an exif entry is deleted during editing + Desktop files window: make columns sortable, replace Apply and OK buttons by one Save button which is made sensitive when needed. ------------------------------------------------------------------------- -r1476 | nadvornik | 2009-03-06 00:02:15 +0100 (Fri, 06 Mar 2009) | 2 lines +commit 5ccbedf9691a490bb70a89139ab058d1f7f642e7 +Author: Vladimir Nadvornik +Date: Sun Mar 29 20:06:21 2009 +0000 -added popup menu to the exif pane + improved bar_pane_comment_notify_cb ------------------------------------------------------------------------- -r1475 | nadvornik | 2009-03-04 23:44:35 +0100 (Wed, 04 Mar 2009) | 2 lines +commit 93fcf6a8503b7c431ab384dcc8b1a1da65060ff9 +Author: Vladimir Nadvornik +Date: Sun Mar 29 19:57:19 2009 +0000 -indicate that the exif pane is empty + fixed a typo ------------------------------------------------------------------------- -r1474 | nadvornik | 2009-03-04 23:34:11 +0100 (Wed, 04 Mar 2009) | 2 lines +commit 41513c5c7bafd1843d763f0cc05873d8e29d93cb +Author: Vladimir Nadvornik +Date: Sun Mar 29 19:40:16 2009 +0000 -prepared exif pane for popup menu + fixed possible crash ------------------------------------------------------------------------- -r1473 | zas_ | 2009-03-04 22:33:19 +0100 (Wed, 04 Mar 2009) | 1 line +commit 0fe6e0a143b17894ea7ca13cc337e6bbccfbc640 +Author: Vladimir Nadvornik +Date: Sun Mar 29 16:39:42 2009 +0000 -layout_status_update_pixel_cb(): cleanup and optimization, drop pango markup in i18n string, use a small function to calculate numbers length, only allocate text when needed. ------------------------------------------------------------------------- -r1472 | nadvornik | 2009-03-04 22:19:12 +0100 (Wed, 04 Mar 2009) | 2 lines + added UfRaw ID files to known filetypes -dnd from advanced exif window to exif pane +commit ab645c958e18abe067b0af7dc62307f6f3b2a50b +Author: Vladimir Nadvornik +Date: Sun Mar 29 14:26:44 2009 +0000 ------------------------------------------------------------------------- -r1471 | nadvornik | 2009-03-04 19:53:47 +0100 (Wed, 04 Mar 2009) | 2 lines + pane interface cleanup -Display pixel coordinates and rgb - patch by Ruben Stein +commit 0ceba72258134a7379e5d42ceda33967bad55b08 +Author: Vladimir Nadvornik +Date: Sun Mar 29 14:20:44 2009 +0000 ------------------------------------------------------------------------- -r1470 | nadvornik | 2009-03-04 00:17:07 +0100 (Wed, 04 Mar 2009) | 2 lines + improved sidebar configuration -reorder exif pane entries with drag and drop +commit 7958ba1b7c05bb847a4c68f004314316d5936946 +Author: Vladimir Nadvornik +Date: Sun Mar 29 10:36:13 2009 +0000 ------------------------------------------------------------------------- -r1469 | nadvornik | 2009-03-02 23:48:04 +0100 (Mon, 02 Mar 2009) | 2 lines + re-added possibility to display basic file info (size, mode, date) -overlay now survives image split +commit dd3442ea73ca4f99d1dff6ad59c6d48f3479db60 +Author: Vladimir Nadvornik +Date: Sat Mar 28 15:51:21 2009 +0000 ------------------------------------------------------------------------- -r1468 | zas_ | 2009-03-02 22:06:32 +0100 (Mon, 02 Mar 2009) | 1 line + fixed keyboard focus on start-up + https://sourceforge.net/tracker/?func=detail&aid=2707025&group_id=222125&atid=1054680 -Random tidy up. ------------------------------------------------------------------------- -r1467 | zas_ | 2009-03-02 22:05:57 +0100 (Mon, 02 Mar 2009) | 1 line +commit c717291bff504bb1e563e7b0b035906742c582ba +Author: Vladimir Nadvornik +Date: Sat Mar 28 15:31:04 2009 +0000 -Fix memleak in previous patch. ------------------------------------------------------------------------- -r1466 | zas_ | 2009-03-02 22:04:38 +0100 (Mon, 02 Mar 2009) | 1 line + active image follows keyboard focus -Add a directory separator at the end of names in tab completion list to indicate directories. ------------------------------------------------------------------------- -r1465 | zas_ | 2009-03-02 00:38:36 +0100 (Mon, 02 Mar 2009) | 1 line +commit 78a1719a4343eef75f0c3d156827013d7b43aaa4 +Author: Vladimir Nadvornik +Date: Sat Mar 28 15:09:09 2009 +0000 -Align exif labels vertically (visually better since name is now smaller than value). ------------------------------------------------------------------------- -r1464 | zas_ | 2009-03-02 00:28:53 +0100 (Mon, 02 Mar 2009) | 1 line + split-mode cleanup and improvements -Update POTFILES.in and french translation. ------------------------------------------------------------------------- -r1463 | zas_ | 2009-03-02 00:14:19 +0100 (Mon, 02 Mar 2009) | 1 line +commit 4602b028bc005271b0a4e62dc039e665aecc9444 +Author: Vladimir Nadvornik +Date: Fri Mar 27 08:05:14 2009 +0000 -When g_new0() is used, drop redundant initializations to NULL, FALSE or 0, second pass. ------------------------------------------------------------------------- -r1462 | nadvornik | 2009-03-01 22:35:18 +0100 (Sun, 01 Mar 2009) | 2 lines + added simple desktop file editor -make the exif pane grow-only - this reduces sidebar jumping +commit e68bdda5abf8afc998fb49d43868900f01ed559c +Author: Laurent Monin +Date: Thu Mar 26 21:49:20 2009 +0000 ------------------------------------------------------------------------- -r1461 | zas_ | 2009-03-01 22:06:55 +0100 (Sun, 01 Mar 2009) | 1 line + Improve editors through .desktop files implementation: + - stricter Exec parameters detection + - correct Icon key handling (absolute file vs name and --icon prefix) + - improved escape, single, double quotes handling and escaping -When g_new0() is used, drop redundant initializations to NULL, FALSE or 0. ------------------------------------------------------------------------- -r1460 | zas_ | 2009-03-01 20:48:38 +0100 (Sun, 01 Mar 2009) | 1 line +commit f38f31b17fe21623f2d74d82613afea09b05892c +Author: Vladimir Nadvornik +Date: Thu Mar 26 07:56:01 2009 +0000 -Clarify colorspace determination (exif 2.2/2.21). ------------------------------------------------------------------------- -r1459 | zas_ | 2009-03-01 18:58:19 +0100 (Sun, 01 Mar 2009) | 1 line + fixed histogram drawing -Enable 'Use profile from image' item of color management menu only if such profile information is available from image. ------------------------------------------------------------------------- -r1458 | zas_ | 2009-03-01 18:13:14 +0100 (Sun, 01 Mar 2009) | 1 line +commit 507f2bf998627d8856a9ea1388ac04390a1a835e +Author: Laurent Monin +Date: Mon Mar 23 18:49:23 2009 +0000 -Improve file checks using is_readable_file(). ------------------------------------------------------------------------- -r1457 | zas_ | 2009-03-01 18:11:51 +0100 (Sun, 01 Mar 2009) | 1 line + French translation was updated. -Only attempt to read exif if the file is readable. ------------------------------------------------------------------------- -r1456 | zas_ | 2009-03-01 18:10:45 +0100 (Sun, 01 Mar 2009) | 1 line +commit abc71f71e6fb0fe732843d06a2100eec2aced123 +Author: Vladimir Nadvornik +Date: Sat Mar 21 23:16:38 2009 +0000 -Introduce is_readable_file() which test if file exists, is regular and readable. ------------------------------------------------------------------------- -r1455 | zas_ | 2009-03-01 17:46:40 +0100 (Sun, 01 Mar 2009) | 1 line + more consistent remote options naming -image_select(), image_set_selectable(): tidy up. ------------------------------------------------------------------------- -r1454 | zas_ | 2009-03-01 17:43:48 +0100 (Sun, 01 Mar 2009) | 1 line +commit c4330fbf13587f5b60c285016f666b95c9f25b98 +Author: Vladimir Nadvornik +Date: Sat Mar 21 20:19:11 2009 +0000 -Indentation fixes. ------------------------------------------------------------------------- -r1453 | zas_ | 2009-03-01 16:54:37 +0100 (Sun, 01 Mar 2009) | 1 line + fixed segfault in histogram + http://sourceforge.net/tracker/index.php?func=detail&aid=2690498&group_id=222125&atid=1054680 -image_post_process_color(): remove exif parameter, just extract it when needed. ------------------------------------------------------------------------- -r1452 | zas_ | 2009-03-01 16:41:51 +0100 (Sun, 01 Mar 2009) | 1 line +commit 9266c3eaa397463d1345f472d69dc1d0894e123b +Author: Vladimir Nadvornik +Date: Sat Mar 21 19:51:07 2009 +0000 -Slightly modify access_file() and use it to test profile files existence and read access. ------------------------------------------------------------------------- -r1451 | zas_ | 2009-03-01 16:28:06 +0100 (Sun, 01 Mar 2009) | 1 line + layout id "_current_" matches the currently active layout window -Add an ellipse when the file name is truncated. ------------------------------------------------------------------------- -r1450 | zas_ | 2009-03-01 16:15:37 +0100 (Sun, 01 Mar 2009) | 1 line +commit aa2fd4c36b2b82e5c288dbc8d09478245f4ba929 +Author: Vladimir Nadvornik +Date: Sat Mar 21 18:22:04 2009 +0000 -In the side bar, display the filename without the 'Filename:' prefix and makes it centered. Allow to select it for copy'n'paste. ------------------------------------------------------------------------- -r1449 | nadvornik | 2009-03-01 14:37:30 +0100 (Sun, 01 Mar 2009) | 2 lines + do not copy existing layout id to new window -dropped ExifUIList +commit 9b9f197ef970ef521bd9e780f85ea5c1c63a900e +Author: Vladimir Nadvornik +Date: Sat Mar 21 17:47:50 2009 +0000 ------------------------------------------------------------------------- -r1448 | nadvornik | 2009-03-01 12:59:32 +0100 (Sun, 01 Mar 2009) | 2 lines + update translated pane titles -do not use separate list of entries, rely on vbox +commit 4f46f6cca2dbc4423ee371e47877fd1bbf4a57a4 +Author: Vladimir Nadvornik +Date: Fri Mar 20 22:48:01 2009 +0000 ------------------------------------------------------------------------- -r1447 | nadvornik | 2009-03-01 01:10:00 +0100 (Sun, 01 Mar 2009) | 2 lines + do not re-create ui_manager at layout change -fixed possible crash +commit 223d36e4c7eae2144f2eb20c6f0c77e27bbe743e +Author: Vladimir Nadvornik +Date: Fri Mar 20 21:28:31 2009 +0000 ------------------------------------------------------------------------- -r1446 | nadvornik | 2009-03-01 00:59:02 +0100 (Sun, 01 Mar 2009) | 2 lines + added a possibility to update existing bars from config -rewritten exif pane to support arbitrary number of entries +commit 61ff1c806812b340b30a891b933ed52c2c033207 +Author: Vladimir Nadvornik +Date: Fri Mar 20 17:02:00 2009 +0000 ------------------------------------------------------------------------- -r1445 | zas_ | 2009-02-28 21:57:26 +0100 (Sat, 28 Feb 2009) | 1 line + added tooltips to external editors on toolbar + - patch by Colin Clark -max value -> value. Shorter. ------------------------------------------------------------------------- -r1444 | zas_ | 2009-02-28 21:53:59 +0100 (Sat, 28 Feb 2009) | 1 line +commit da76910fc5992b93d09257b8386bbcd6b1a54a88 +Author: Vladimir Nadvornik +Date: Fri Mar 20 16:28:43 2009 +0000 -Add missing space between while and first parenthesis. ------------------------------------------------------------------------- -r1443 | zas_ | 2009-02-28 21:52:51 +0100 (Sat, 28 Feb 2009) | 1 line + added "load config" command to remote control -Add missing space between switch and first parenthesis. ------------------------------------------------------------------------- -r1442 | zas_ | 2009-02-28 21:48:47 +0100 (Sat, 28 Feb 2009) | 1 line +commit e63d1ab169ffd77e2a0691eee92aee94484e8401 +Author: Vladimir Nadvornik +Date: Fri Mar 20 14:36:59 2009 +0000 -No space between function name and first parenthesis, it eases greping (see CODING). ------------------------------------------------------------------------- -r1441 | zas_ | 2009-02-28 21:24:42 +0100 (Sat, 28 Feb 2009) | 1 line + added possibility to update existing layout window from config -Prevent Gtk assertion failures when no icon is set. ------------------------------------------------------------------------- -r1440 | nadvornik | 2009-02-28 21:13:11 +0100 (Sat, 28 Feb 2009) | 3 lines +commit f85c331b6bdca1a07e38a196e93562448b4c1048 +Author: Vladimir Nadvornik +Date: Fri Mar 20 11:52:29 2009 +0000 -show histogram label in the title -adjusted label texts + do not add duplicate keywords from config file ------------------------------------------------------------------------- -r1439 | nadvornik | 2009-02-28 20:44:58 +0100 (Sat, 28 Feb 2009) | 2 lines +commit edddb38414fcaf01150e7b3b1ee0175cf8f72ac2 +Author: Vladimir Nadvornik +Date: Fri Mar 20 10:12:29 2009 +0000 -give the panes more control over expander title + be more verbose on parse errors ------------------------------------------------------------------------- -r1438 | zas_ | 2009-02-28 20:41:23 +0100 (Sat, 28 Feb 2009) | 1 line +commit db9583d155f876dcf8ecdba06de8c41bf6363955 +Author: Vladimir Nadvornik +Date: Fri Mar 20 09:46:35 2009 +0000 -Color profiles menu: test for file access before allowing to select it as input profile. ------------------------------------------------------------------------- -r1437 | nadvornik | 2009-02-28 19:51:25 +0100 (Sat, 28 Feb 2009) | 2 lines + added function to reload external editors at any time + eliminated init_after_global_options() -load icons for external editors +commit a043fedcd1fa348548988b8c157f60a7b585539d +Author: Vladimir Nadvornik +Date: Thu Mar 19 22:58:28 2009 +0000 ------------------------------------------------------------------------- -r1436 | zas_ | 2009-02-28 19:01:16 +0100 (Sat, 28 Feb 2009) | 1 line + initialization clean-up -Use g_utf8_casefold() to compare keywords, uppercased/lowercased keywords are now matched against predefined list. ------------------------------------------------------------------------- -r1435 | nadvornik | 2009-02-28 18:20:16 +0100 (Sat, 28 Feb 2009) | 2 lines +commit 75ad70e81b5f541c6b57bf514a6363df919c102b +Author: Vladimir Nadvornik +Date: Thu Mar 19 22:12:14 2009 +0000 -fixed bar_histogram headers + improved config file formatting ------------------------------------------------------------------------- -r1434 | zas_ | 2009-02-28 18:12:00 +0100 (Sat, 28 Feb 2009) | 1 line +commit 5cd0768160f389b85802e2c44a568837b0f8e2b8 +Author: Vladimir Nadvornik +Date: Tue Mar 17 23:03:07 2009 +0000 -Minor simplification and cleanup. ------------------------------------------------------------------------- -r1433 | zas_ | 2009-02-28 17:59:20 +0100 (Sat, 28 Feb 2009) | 1 line + added more IPTC tags -image_change_complete(): reduce code redundancy and implify. ------------------------------------------------------------------------- -r1432 | nadvornik | 2009-02-28 15:40:22 +0100 (Sat, 28 Feb 2009) | 3 lines +commit c4397842e058064be7c5e3f43a7f0334cc0ffb3d +Author: Vladimir Nadvornik +Date: Tue Mar 17 22:41:09 2009 +0000 -fixed overlay configuration -split overlay options between global and layout window + implemented editing support in exif pane ------------------------------------------------------------------------- -r1431 | nadvornik | 2009-02-28 13:50:39 +0100 (Sat, 28 Feb 2009) | 2 lines +commit 4bb3d0e135ca5c31daea4beaebda72905dccf5a0 +Author: Vladimir Nadvornik +Date: Tue Mar 17 19:52:56 2009 +0000 -save and restore toolbar configuration + fixed loading of desktop file icons, gtk seems to expect an icon name without extension ------------------------------------------------------------------------- -r1430 | nadvornik | 2009-02-28 10:59:27 +0100 (Sat, 28 Feb 2009) | 2 lines +commit 8b21951c112cda8df9ab0d7e21ec024952fec965 +Author: Vladimir Nadvornik +Date: Tue Mar 17 19:09:34 2009 +0000 -create toolbar from ui_manager + simplified code ------------------------------------------------------------------------- -r1429 | zas_ | 2009-02-28 00:25:31 +0100 (Sat, 28 Feb 2009) | 1 line +commit 914fa4e1207fe6f882dca6aa6da0c4306fb0ec63 +Author: Vladimir Nadvornik +Date: Tue Mar 17 18:58:15 2009 +0000 -Really fix up color profiles options tests. Add an indicator of the embedded color profile when recognized (a * just after sRGB or AdobeRGB compatible). ------------------------------------------------------------------------- -r1428 | zas_ | 2009-02-27 23:28:17 +0100 (Fri, 27 Feb 2009) | 1 line + improved expanding and hiding of helper keywords -Fix up color profiles menu: mark empty entries (but not NULL) as inactive. ------------------------------------------------------------------------- -r1427 | nadvornik | 2009-02-27 22:30:28 +0100 (Fri, 27 Feb 2009) | 2 lines +commit 48a18d514775969bd21ce0bd154d454af5182ed8 +Author: Vladimir Nadvornik +Date: Tue Mar 17 18:30:53 2009 +0000 -compute histmap in idle callback and only if the histogram is expanded + fixed keyword tree redrawing ------------------------------------------------------------------------- -r1426 | zas_ | 2009-02-26 22:46:27 +0100 (Thu, 26 Feb 2009) | 1 line +commit a142c98b0d4a45084b3fbb698bae2f650846673c +Author: Laurent Monin +Date: Tue Mar 17 00:05:13 2009 +0000 -Add a tooltip showing current histogram state on bar histogram. ------------------------------------------------------------------------- -r1425 | zas_ | 2009-02-26 21:50:36 +0100 (Thu, 26 Feb 2009) | 1 line + Preliminary support for doxygen: make doxygen-doc will create documentation from sources in doc/doxygen directory. -Clean up histogram stuff: options saving/restoring, osd histogram separation, tidy up. ------------------------------------------------------------------------- -r1424 | zas_ | 2009-02-26 18:34:14 +0100 (Thu, 26 Feb 2009) | 1 line +commit 496826c114d4a8f9040bb1ef40e10f5782b3fe15 +Author: Laurent Monin +Date: Mon Mar 16 20:39:09 2009 +0000 -Add .bak and .mo extensions to svn:ignore. ------------------------------------------------------------------------- -r1423 | nadvornik | 2009-02-26 09:04:52 +0100 (Thu, 26 Feb 2009) | 2 lines + gint -> gboolean where applicable. The end (ouf!). -quoted_value is no longer needed +commit 0b6b9778a54d91e2cfd39e9609ff9a784d2cbd7f +Author: Laurent Monin +Date: Mon Mar 16 19:11:39 2009 +0000 ------------------------------------------------------------------------- -r1422 | zas_ | 2009-02-26 00:04:08 +0100 (Thu, 26 Feb 2009) | 1 line + gint -> gboolean where applicable. -Silent a minor warning. ------------------------------------------------------------------------- -r1421 | nadvornik | 2009-02-25 22:09:17 +0100 (Wed, 25 Feb 2009) | 2 lines +commit 4cd4d86404984c4696fc26e3968e5b17ff998d44 +Author: Laurent Monin +Date: Mon Mar 16 18:19:11 2009 +0000 -correctly save and restore overlay string + gint -> gboolean where applicable. ------------------------------------------------------------------------- -r1420 | zas_ | 2009-02-25 21:54:38 +0100 (Wed, 25 Feb 2009) | 1 line +commit 049a021e2221f7de3df81ce6c64b77c424ce0dac +Author: Vladimir Nadvornik +Date: Sun Mar 15 23:22:17 2009 +0000 -Save bar pane histogram state to rc file. ------------------------------------------------------------------------- -r1419 | zas_ | 2009-02-25 21:42:35 +0100 (Wed, 25 Feb 2009) | 1 line + improved pane_keywords notification -Fix up bar pane histogram contextual menu: show current state for channel and log mode. ------------------------------------------------------------------------- -r1418 | nadvornik | 2009-02-25 20:46:03 +0100 (Wed, 25 Feb 2009) | 3 lines +commit bdb1e4f3ca99abb0a9869a9bc872bc5b0b6f60b3 +Author: Vladimir Nadvornik +Date: Sun Mar 15 22:46:25 2009 +0000 -reuse original utility_box (image + sidebars) on layout change (switch -from list to icon view etc.) + call the notify function just once when the keywords are pushed to the + textarea ------------------------------------------------------------------------- -r1417 | nadvornik | 2009-02-25 19:21:20 +0100 (Wed, 25 Feb 2009) | 2 lines +commit 5c5e09cfb61bea28413a35b616540d4fea4710e9 +Author: Laurent Monin +Date: Sun Mar 15 20:16:20 2009 +0000 -fixed filter initialization + gint -> gboolean. ------------------------------------------------------------------------- -r1416 | nadvornik | 2009-02-24 23:21:28 +0100 (Tue, 24 Feb 2009) | 2 lines +commit 5f2862f720cdf6e5b001b0235f54dd3115378edc +Author: Vladimir Nadvornik +Date: Sun Mar 15 18:41:25 2009 +0000 -improved bar_sort configuration + fixed segfault in osd called from img-view + http://sourceforge.net/tracker/index.php?func=detail&aid=2684068&group_id=222125&atid=1054680 ------------------------------------------------------------------------- -r1415 | zas_ | 2009-02-24 22:08:16 +0100 (Tue, 24 Feb 2009) | 1 line +commit a83ce8127733fe662f70e27e4861923525924d2a +Author: Laurent Monin +Date: Sun Mar 15 18:06:41 2009 +0000 -Add a contextual menu on bar pane histogram allowing to change channels and mode. More work needed. ------------------------------------------------------------------------- -r1414 | nadvornik | 2009-02-24 21:47:38 +0100 (Tue, 24 Feb 2009) | 2 lines + gint -> gboolean. -fixed --fullscreen option together with enabled bar +commit e297b62d130c7fd6a2d4f7d959b1d2c2a0ed0a29 +Author: Vladimir Nadvornik +Date: Sun Mar 15 17:40:04 2009 +0000 ------------------------------------------------------------------------- -r1413 | nadvornik | 2009-02-24 21:34:39 +0100 (Tue, 24 Feb 2009) | 2 lines + fixed viewing image from dupe and search windows -simplified and improved bar configuration +commit e4ec9f2c3d3c8a79dd7741b2b7e7d4bd6825c758 +Author: Laurent Monin +Date: Sun Mar 15 15:01:07 2009 +0000 ------------------------------------------------------------------------- -r1412 | zas_ | 2009-02-24 19:00:45 +0100 (Tue, 24 Feb 2009) | 1 line + gint -> gboolean. -Enclose macro parameters names with _ to differentiate them from variable names. ------------------------------------------------------------------------- -r1411 | zas_ | 2009-02-24 18:47:45 +0100 (Tue, 24 Feb 2009) | 5 lines +commit 54797050cd64429ea6a90ee4d8882b0542d634ae +Author: Laurent Monin +Date: Sun Mar 15 13:33:56 2009 +0000 -Since READ_*() macros are now exported, do not hide -the if() continue; statement in them. -Wrap WRITE_STRING() instructions in a safer do {} while (0). + gint -> gboolean. +commit 1e7fe2f0bce7e8b4959c6d0e82259617a5224e1c +Author: Vladimir Nadvornik +Date: Sun Mar 15 12:41:39 2009 +0000 ------------------------------------------------------------------------- -r1410 | nadvornik | 2009-02-23 23:13:09 +0100 (Mon, 23 Feb 2009) | 2 lines + fixed XMP and IPTC entry names in exif pane -simplified config writing +commit 972f0c276d31a7510ce0a26e15b4925a6a0c1ab3 +Author: Vladimir Nadvornik +Date: Sun Mar 15 12:20:14 2009 +0000 ------------------------------------------------------------------------- -r1409 | nadvornik | 2009-02-23 22:21:15 +0100 (Mon, 23 Feb 2009) | 2 lines + added notification to the exif pane -enabled commandline again +commit 7c3dc4dc86dff4853269bbe8341b71f1110d5709 +Author: Vladimir Nadvornik +Date: Sun Mar 15 11:58:46 2009 +0000 ------------------------------------------------------------------------- -r1408 | zas_ | 2009-02-23 18:20:40 +0100 (Mon, 23 Feb 2009) | 1 line + fixed a bug in osd updating, it seems that the osd icons work again -Introduce helpers histogram_toggle_channel() and histogram_toggle_mode(). ------------------------------------------------------------------------- -r1407 | zas_ | 2009-02-22 18:46:42 +0100 (Sun, 22 Feb 2009) | 1 line +commit 04e5dfcf4a9d04ec83be00b15c53a35cdec49f79 +Author: Vladimir Nadvornik +Date: Sun Mar 15 11:34:09 2009 +0000 -Set svn:ignore on Makefile and Makefile.in. ------------------------------------------------------------------------- -r1406 | zas_ | 2009-02-22 18:40:32 +0100 (Sun, 22 Feb 2009) | 1 line + compute histogram in idle time -Fix and simplify histogram code, drop histogram based on mean value. ------------------------------------------------------------------------- -r1405 | nadvornik | 2009-02-22 16:35:37 +0100 (Sun, 22 Feb 2009) | 4 lines +commit c30d27838ff7606edcfcaae4e2d616370edacc67 +Author: Vladimir Nadvornik +Date: Sun Mar 15 09:06:13 2009 +0000 -config file format changed to XML -save and restore all layout windows -save and restore sidebar configuration + fixed possible deadlock with multiple thumb loaders in parallel ------------------------------------------------------------------------- -r1404 | zas_ | 2009-02-22 14:29:49 +0100 (Sun, 22 Feb 2009) | 1 line +commit 3dfd1c11d0f0b11e6627af9b687535dbaf32dee3 +Author: Laurent Monin +Date: Sun Mar 15 07:07:52 2009 +0000 -Attempt to simplify and fix histrogram code. ------------------------------------------------------------------------- -r1403 | zas_ | 2009-02-21 21:43:35 +0100 (Sat, 21 Feb 2009) | 1 line + gint -> gboolean. -Glibification again. ------------------------------------------------------------------------- -r1402 | zas_ | 2009-02-21 19:28:53 +0100 (Sat, 21 Feb 2009) | 1 line +commit 2c38cf912ea9c74916ea950f62b1637d26f1a55b +Author: Vladimir Nadvornik +Date: Sat Mar 14 23:26:42 2009 +0000 -French translation was updated. ------------------------------------------------------------------------- -r1401 | zas_ | 2009-02-21 19:04:52 +0100 (Sat, 21 Feb 2009) | 1 line + completely separated global and layout window options + layout window configuration is available under separate menu entry -Glibification. ------------------------------------------------------------------------- -r1400 | zas_ | 2009-02-21 11:53:18 +0100 (Sat, 21 Feb 2009) | 1 line +commit 869dd50b966b21850457b98a434dcb015158163e +Author: Laurent Monin +Date: Sat Mar 14 21:12:55 2009 +0000 -Move grid color setting to histogram_new(). ------------------------------------------------------------------------- -r1399 | zas_ | 2009-02-21 11:33:56 +0100 (Sat, 21 Feb 2009) | 1 line + gint -> gboolean. -Remove histogram_ prefix from struct _Histogram fields names and rename them more properly. ------------------------------------------------------------------------- -r1398 | zas_ | 2009-02-21 11:29:13 +0100 (Sat, 21 Feb 2009) | 1 line +commit 3707f26ed3f7eb60c321cdef21d58a9ae458c160 +Author: Laurent Monin +Date: Sat Mar 14 20:07:23 2009 +0000 -Add grid to bar histogram, simplify the code and draw horizontal lines too. ------------------------------------------------------------------------- -r1397 | zas_ | 2009-02-19 18:36:38 +0100 (Thu, 19 Feb 2009) | 1 line + More gboolean. -Fix bug 2599857: file list sort order was wrong in many cases. ------------------------------------------------------------------------- -r1396 | nadvornik | 2009-02-16 23:48:30 +0100 (Mon, 16 Feb 2009) | 2 lines +commit ccbfd10e582b6099d035f09a0e0bd5bc146885cb +Author: Laurent Monin +Date: Sat Mar 14 19:25:21 2009 +0000 -fixed compiler warning + Use gboolean where applicable, minor cleanup and indentations fixes. ------------------------------------------------------------------------- -r1395 | nadvornik | 2009-02-16 22:01:27 +0100 (Mon, 16 Feb 2009) | 2 lines +commit 8e811724d0f95587be393cdb7a677a32ac704d34 +Author: Vladimir Nadvornik +Date: Sat Mar 14 17:21:35 2009 +0000 -hopefully fixed a freeze on solaris + improved notification system ------------------------------------------------------------------------- -r1394 | nadvornik | 2009-02-15 20:25:55 +0100 (Sun, 15 Feb 2009) | 2 lines +commit 2770d68d3c1a7e5f7550e4305e8b52aa11487759 +Author: Laurent Monin +Date: Sat Mar 14 11:26:43 2009 +0000 -added histogram pane + More gboolean and tidy up. ------------------------------------------------------------------------- -r1393 | nadvornik | 2009-02-15 18:27:48 +0100 (Sun, 15 Feb 2009) | 2 lines +commit 57236ac4620fce1a918d9c3269c51bcf468e5d22 +Author: Vladimir Nadvornik +Date: Sat Mar 14 10:34:42 2009 +0000 -fixed histogram drawing + cleanup, small fixes ------------------------------------------------------------------------- -r1392 | zas_ | 2009-02-15 16:58:01 +0100 (Sun, 15 Feb 2009) | 1 line +commit 83a31276f24f79537f8e708cd2cb9b53af5a1470 +Author: Vladimir Nadvornik +Date: Fri Mar 13 23:19:58 2009 +0000 -Remove redundant line of code. ------------------------------------------------------------------------- -r1391 | zas_ | 2009-02-15 16:56:48 +0100 (Sun, 15 Feb 2009) | 1 line + do not allow to add keywords with the same name as siblings -Fix up few compilation warnings. ------------------------------------------------------------------------- -r1390 | nadvornik | 2009-02-15 14:11:21 +0100 (Sun, 15 Feb 2009) | 3 lines +commit c27864686704e76f90e3bdc3557537f5fb5086b4 +Author: Vladimir Nadvornik +Date: Fri Mar 13 16:45:21 2009 +0000 -histogram caching -histogram interface prepared for histogram pane + added keyword tree filtering ------------------------------------------------------------------------- -r1389 | nadvornik | 2009-02-15 10:36:53 +0100 (Sun, 15 Feb 2009) | 3 lines +commit dc9042b3bd903090011f945df79e1eeacd3f8e97 +Author: Vladimir Nadvornik +Date: Fri Mar 13 12:06:01 2009 +0000 -separated "normal" and advanced exif, "Normal" exif is now in the -generic bar, advanced exif is in separate window. + show file name in advanced_exif ------------------------------------------------------------------------- -r1388 | nadvornik | 2009-02-14 21:26:30 +0100 (Sat, 14 Feb 2009) | 2 lines +commit 3dcfa72047dc28f10b50187c651609ae96cd7065 +Author: Vladimir Nadvornik +Date: Fri Mar 13 10:36:32 2009 +0000 -droped Preferences dialog, sidebar should replace it completely + handle sidecar files for raw formats that are not known to exiv2 ------------------------------------------------------------------------- -r1387 | nadvornik | 2009-02-14 20:50:54 +0100 (Sat, 14 Feb 2009) | 4 lines +commit b987ed85c78996f56abc1f3025f36d3c4532d07c +Author: Vladimir Nadvornik +Date: Fri Mar 13 09:03:06 2009 +0000 -replaced bar_info with an universal bar, restored the original -functionality (more or less) -bar configuration is not yet saved + fixed keyword to mark connection ------------------------------------------------------------------------- -r1386 | zas_ | 2009-02-09 10:02:04 +0100 (Mon, 09 Feb 2009) | 1 line +commit 26823554cdf789efc5c78d6d43a25678b24c76e9 +Author: Laurent Monin +Date: Thu Mar 12 22:44:21 2009 +0000 -Update ChangeLog using C locale date format, add a script to ease future updates. ------------------------------------------------------------------------- -r1385 | nadvornik | 2009-02-07 22:03:11 +0100 (Sat, 07 Feb 2009) | 4 lines + Use gboolean where applicable. -force at least one idle call before writting metadata -(without this the exit_program_write_metadata_cb could be called -before the exit_program function finished) +commit ce7252908d82484fbad1823b49a9c497ac86d278 +Author: Laurent Monin +Date: Thu Mar 12 22:39:06 2009 +0000 ------------------------------------------------------------------------- -r1384 | nadvornik | 2009-02-07 20:01:21 +0100 (Sat, 07 Feb 2009) | 6 lines + Make ishidden() static to filedata.c and rename it is_hidden_file(). -use metadata_read_* functions where possible -switch exiv2 to utf8 charset -support for exiv2 formatting that depends on other tags: -http://dev.robotbattle.com/bugs/view.php?id=0000516 +commit ea7b2e3825efdd3929b5dc5b057fa21b6d89ca3a +Author: Laurent Monin +Date: Thu Mar 12 22:35:45 2009 +0000 + gint -> gboolean and tidy up. ------------------------------------------------------------------------- -r1383 | nadvornik | 2009-02-07 00:49:03 +0100 (Sat, 07 Feb 2009) | 2 lines +commit 12d44efdf007bf1bb292b450fd575cb007ace3b0 +Author: Vladimir Nadvornik +Date: Thu Mar 12 21:27:13 2009 +0000 -Start with "Fit to window" in "Leave Zoom at previous setting" mode + added a dialog for editing keyword tree ------------------------------------------------------------------------- -r1382 | nadvornik | 2009-02-06 23:56:52 +0100 (Fri, 06 Feb 2009) | 4 lines +commit 445675df9548d5b7b765a07c7bfe96faa3e4ab6a +Author: Laurent Monin +Date: Thu Mar 12 21:06:37 2009 +0000 -do not switch to the next image on mouse click in split mode -it interferes with image switching too much + Use gboolean where applicable, for the sake of consistency. +commit 2814d20328df2cfb3efcd57bdbf6c8a468c94408 +Author: Laurent Monin +Date: Wed Mar 11 23:36:01 2009 +0000 ------------------------------------------------------------------------- -r1381 | nadvornik | 2009-02-06 23:41:47 +0100 (Fri, 06 Feb 2009) | 2 lines + Code cleanup. -improved labels of some menu items +commit f719019c2a2838f979aaece5ed16e074c544310d +Author: Laurent Monin +Date: Wed Mar 11 23:35:31 2009 +0000 ------------------------------------------------------------------------- -r1380 | zas_ | 2009-02-04 18:15:30 +0100 (Wed, 04 Feb 2009) | 1 line + Fix bug when adding a new collection through sort manager. Tidy up. -Add year 2009 to copyright info everywhere. ------------------------------------------------------------------------- -r1379 | zas_ | 2009-02-04 17:50:24 +0100 (Wed, 04 Feb 2009) | 1 line +commit 3ad46d8aff0ddc2fb5489031121c4bc48b7756d3 +Author: Laurent Monin +Date: Wed Mar 11 23:04:30 2009 +0000 -Fix up the copyright years info. ------------------------------------------------------------------------- -r1378 | zas_ | 2009-02-04 17:49:11 +0100 (Wed, 04 Feb 2009) | 1 line + Tidy up. -Update README header. ------------------------------------------------------------------------- -r1377 | zas_ | 2009-02-04 17:47:02 +0100 (Wed, 04 Feb 2009) | 1 line +commit 0b00a6f6e8da83036bc84c8a47c863721f2a1c14 +Author: Laurent Monin +Date: Wed Mar 11 22:56:56 2009 +0000 -Speed up random slideshow, startup time decreases from minutes to seconds when amount of images is big. Patch by Kjell Morgenstern. ------------------------------------------------------------------------- -r1376 | zas_ | 2009-02-04 15:51:23 +0100 (Wed, 04 Feb 2009) | 1 line + Use gboolean pseudo type where applicable. -Do not show geeqie itself in editors menus. ------------------------------------------------------------------------- -r1375 | nadvornik | 2009-02-03 19:04:10 +0100 (Tue, 03 Feb 2009) | 2 lines +commit 2f2e14119378d60c52c113078c35999f342b249e +Author: Laurent Monin +Date: Wed Mar 11 22:28:37 2009 +0000 -do not translate already translated texts from desktop files + Remove useless functions. ------------------------------------------------------------------------- -r1374 | zas_ | 2009-02-03 14:52:20 +0100 (Tue, 03 Feb 2009) | 1 line +commit 53335b4551e6099ecb9a361d87b35487df57101e +Author: Vladimir Nadvornik +Date: Wed Mar 11 21:54:54 2009 +0000 -Add support for NoDisplay (entry is then hidden) and Type (only Application type is valid here) keys. ------------------------------------------------------------------------- -r1373 | zas_ | 2009-02-03 14:50:10 +0100 (Tue, 03 Feb 2009) | 1 line + added a popup menu in keyword tree -Reorder fields a bit and make flags field unsigned. ------------------------------------------------------------------------- -r1372 | zas_ | 2009-02-03 09:41:21 +0100 (Tue, 03 Feb 2009) | 1 line +commit 13b5d1f44e4c824a4a48b972e758f2fde80dbc43 +Author: Laurent Monin +Date: Wed Mar 11 17:38:20 2009 +0000 -editor_list_get() now returns a sorted list, this way items appear in the same order in all menus. ------------------------------------------------------------------------- -r1371 | nadvornik | 2009-02-02 21:32:59 +0100 (Mon, 02 Feb 2009) | 3 lines + Use dynamic allocation for editor key passed to various callbacks. -improved placing of external commands in menu -small menu improvements +commit 4ae54d3fe9578e43dace94f9fdc9fc4e757a74f9 +Author: Vladimir Nadvornik +Date: Tue Mar 10 22:52:12 2009 +0000 ------------------------------------------------------------------------- -r1370 | nadvornik | 2009-02-01 23:35:40 +0100 (Sun, 01 Feb 2009) | 3 lines + fixed saving of file_view_type -test TryExec, -xdg_data_home added to the list of directories +commit 7feb265d9809eef4b3c225b6475b83228771d6ea +Author: Laurent Monin +Date: Tue Mar 10 17:58:30 2009 +0000 ------------------------------------------------------------------------- -r1369 | nadvornik | 2009-02-01 19:27:42 +0100 (Sun, 01 Feb 2009) | 2 lines + Remove now useless element. -fixed switch from single to split image +commit 244bab9b7cc522210cdfbf1432c3a4b7c3ccce77 +Author: Laurent Monin +Date: Tue Mar 10 17:22:17 2009 +0000 ------------------------------------------------------------------------- -r1368 | nadvornik | 2009-02-01 13:48:14 +0100 (Sun, 01 Feb 2009) | 2 lines + Remove the toggle on advanced exif window menu item. -read external editors from .desktop files +commit 0d08080fca58e3ef64ede91c605d46ccb8bb2689 +Author: Laurent Monin +Date: Mon Mar 9 19:37:58 2009 +0000 ------------------------------------------------------------------------- -r1367 | zas_ | 2009-01-29 20:43:34 +0100 (Thu, 29 Jan 2009) | 1 line + Add missing g_key_file_free() call. -Sort the list alphabetically and remove an empty line. ------------------------------------------------------------------------- -r1366 | nadvornik | 2009-01-29 20:23:39 +0100 (Thu, 29 Jan 2009) | 4 lines +commit 704c8c788786d55da1a84676cdca7865e85b96da +Author: Laurent Monin +Date: Mon Mar 9 19:35:53 2009 +0000 -switched to po/LINGUAS, see http://live.gnome.org/GnomeGoals/PoLinguas -(new glib-gettextize does not support the old method) + Fix editor_command_path_parse(). +commit 6829be525a541c8e5b3b9a3d130548434d006587 +Author: Laurent Monin +Date: Mon Mar 9 19:34:26 2009 +0000 ------------------------------------------------------------------------- -r1365 | zas_ | 2009-01-29 20:07:07 +0100 (Thu, 29 Jan 2009) | 1 line + Revert changeset 1502. It brokes the spec: hidden desktop files from user directory should hide files from system directory with the same name. -gint -> gboolean. ------------------------------------------------------------------------- -r1364 | zas_ | 2009-01-29 20:00:24 +0100 (Thu, 29 Jan 2009) | 1 line +commit 2c12c12f04540a4b3888fde88f88cc93e7adb011 +Author: Laurent Monin +Date: Mon Mar 9 12:44:06 2009 +0000 -Invert Horizontally vs vertically zoom fit, it was a TRUE/FALSE mismatch, reported by Christopher Beland. ------------------------------------------------------------------------- -r1363 | zas_ | 2009-01-29 19:52:52 +0100 (Thu, 29 Jan 2009) | 1 line + Only store editors if they match criterias to not be hidden from start, it makes more sense. Fix editor_command_path_parse(). -Remove harmful documentation.helpdir and documentation.htmldir options. These paths can still be modified through --with-readmedir and --htmldir configure options. Reported by Christopher Beland. ------------------------------------------------------------------------- -r1362 | nadvornik | 2009-01-29 19:05:41 +0100 (Thu, 29 Jan 2009) | 2 lines +commit 67e00d0a920b6349e42f86742a18ca50fdc4880e +Author: Laurent Monin +Date: Sun Mar 8 23:12:49 2009 +0000 -added SIGBUS handler + Introduce EditorFlags type, cleanup. ------------------------------------------------------------------------- -r1361 | nadvornik | 2009-01-26 22:08:05 +0100 (Mon, 26 Jan 2009) | 2 lines +commit 30fc45e64c3dea9841d40ba694d1d2b45d002cc6 +Author: Vladimir Nadvornik +Date: Sun Mar 8 23:09:27 2009 +0000 -fixed compilation with lirc + save and restore the keyword tree ------------------------------------------------------------------------- -r1360 | zas_ | 2009-01-26 15:59:49 +0100 (Mon, 26 Jan 2009) | 1 line +commit c00ba73c65a001d5fbf7d7d4c6279c97e6992983 +Author: Vladimir Nadvornik +Date: Sun Mar 8 21:12:45 2009 +0000 -Silent two minor warnings: GtkSelectionData data field is guchar* while g_strndup() wants gchar * as first parameter. ------------------------------------------------------------------------- -r1359 | zas_ | 2009-01-26 15:50:56 +0100 (Mon, 26 Jan 2009) | 1 line + fixed crash with certain layout configurations -Remove --enable-compile-warnings from autogen.sh, it was passed to configure which knows nothing about this option. ------------------------------------------------------------------------- -r1358 | zas_ | 2009-01-26 15:49:09 +0100 (Mon, 26 Jan 2009) | 1 line +commit f7dbd69473c9bcdcb08c6b904b11d512e3a2929a +Author: Laurent Monin +Date: Sun Mar 8 20:49:48 2009 +0000 -Move -Wall before -Wno-* options for them to have any effect. ------------------------------------------------------------------------- -r1357 | zas_ | 2009-01-26 15:18:08 +0100 (Mon, 26 Jan 2009) | 1 line + Cleanup and minor fixes. -Keep -O0 over -O2 as requested by Vladimir. ------------------------------------------------------------------------- -r1356 | zas_ | 2009-01-26 09:36:23 +0100 (Mon, 26 Jan 2009) | 1 line +commit 66f5ea89ccea96c00f371f633fe02142cec8bd05 +Author: Laurent Monin +Date: Sun Mar 8 17:51:03 2009 +0000 -Add -Wformat and -Wformat-security gcc options when --enable-debug-flags is set, move default optimization to -O2 by default (-O0 is only useful for specific debugging purposes). ------------------------------------------------------------------------- -r1355 | zas_ | 2009-01-26 09:30:30 +0100 (Mon, 26 Jan 2009) | 1 line + Advanced exif window: make all columns sortable and resizable. -Fix a major bug in utf8_compare(): when case_sensitive is true, s1_t and s2_t were uninitialized, leading to unpredicable results. ------------------------------------------------------------------------- -r1354 | nadvornik | 2009-01-25 20:38:31 +0100 (Sun, 25 Jan 2009) | 2 lines +commit 411a041e79c2cb24490d562fdcd05030cbcfff71 +Author: Laurent Monin +Date: Sun Mar 8 15:30:15 2009 +0000 -added the original COPYING file from GQview - we can't rely on autogen.sh + Add helper macros EDITOR_ERRORS() and EDITOR_ERRORS_BUT_SKIPPED() to clean up the code a bit. Minor tidy up. ------------------------------------------------------------------------- -r1352 | nadvornik | 2009-01-25 19:14:08 +0100 (Sun, 25 Jan 2009) | 2 lines +commit 91b011a25e87aebe4cdc92e2a75db82b872c8302 +Author: Laurent Monin +Date: Sun Mar 8 15:02:18 2009 +0000 -updated ChangeLog from svn log + Fix up editor execution. ------------------------------------------------------------------------- -r1351 | nadvornik | 2009-01-25 17:58:19 +0100 (Sun, 25 Jan 2009) | 2 lines +commit 3014c4ff1cd8fc5a6ce064e3bcc297417a08a37f +Author: Laurent Monin +Date: Sun Mar 8 14:27:19 2009 +0000 -fixed gthread detection + Display icons in edit contextual menu. ------------------------------------------------------------------------- -r1350 | nadvornik | 2009-01-25 10:27:27 +0100 (Sun, 25 Jan 2009) | 2 lines +commit 0205b0af299b580d25846b1fc9c17e7716939341 +Author: Laurent Monin +Date: Sun Mar 8 13:23:25 2009 +0000 -do not ignore newly created sidecars + In various Edit context menus, only display editors that match the file types in the selection. ------------------------------------------------------------------------- -r1349 | nadvornik | 2009-01-24 14:46:08 +0100 (Sat, 24 Jan 2009) | 2 lines +commit 06d738a8072a9eae0765859eecc19c1745cde25b +Author: Vladimir Nadvornik +Date: Sun Mar 8 12:42:23 2009 +0000 -adjusted marks spacing to align them with the marks filter + dnd fixes ------------------------------------------------------------------------- -r1348 | zas_ | 2009-01-24 14:38:53 +0100 (Sat, 24 Jan 2009) | 1 line +commit e9f2c348743955bcf92c0ef94331d545e7d6f7a1 +Author: Vladimir Nadvornik +Date: Sun Mar 8 11:32:12 2009 +0000 -Fix incorrect translation. ------------------------------------------------------------------------- -r1347 | nadvornik | 2009-01-24 14:05:06 +0100 (Sat, 24 Jan 2009) | 4 lines + dnd fixes -fixed restoring of OSD at layout_image_full_screen_stop -https://sourceforge.net/tracker/index.php?func=detail&aid=2039839&group_id=222125&atid=1054680 +commit e0a06986823081a727a4413b7e2ff562fd6618be +Author: Vladimir Nadvornik +Date: Sun Mar 8 10:38:51 2009 +0000 + allow dropping of multiple keywords ------------------------------------------------------------------------- -r1346 | nadvornik | 2009-01-24 13:15:01 +0100 (Sat, 24 Jan 2009) | 2 lines +commit 3dc57a6704aa6b4b5c94e597dc448ee141d14c15 +Author: Vladimir Nadvornik +Date: Sun Mar 8 10:25:24 2009 +0000 -fixed glib warning + show a label instead of the default drag icon ------------------------------------------------------------------------- -r1345 | nadvornik | 2009-01-24 11:09:29 +0100 (Sat, 24 Jan 2009) | 2 lines +commit 2874d15e958da779066951a0bde3bafe3f9654cb +Author: Vladimir Nadvornik +Date: Sun Mar 8 09:56:40 2009 +0000 -updated version string + dnd in keywords tree + improved dnd in advanced exif ------------------------------------------------------------------------- -r1344 | zas_ | 2009-01-24 08:41:23 +0100 (Sat, 24 Jan 2009) | 1 line +commit 60a09da7a127ddafeb538ed3d27bff57c65c552a +Author: Vladimir Nadvornik +Date: Sat Mar 7 17:02:59 2009 +0000 -Silent two compilation warnings. ------------------------------------------------------------------------- -r1343 | zas_ | 2009-01-24 08:36:21 +0100 (Sat, 24 Jan 2009) | 1 line + implemented keywords editor as described at + http://geeqie.wiki.sourceforge.net/keywords + keyword tree is hardcoded for now + TODO: configuration -French translation was updated. ------------------------------------------------------------------------- -r1342 | nadvornik | 2009-01-23 23:53:02 +0100 (Fri, 23 Jan 2009) | 2 lines +commit 3d687308a8d41f5be0a667c4a470f6391c6e172b +Author: Laurent Monin +Date: Sat Mar 7 10:32:04 2009 +0000 -fixed possible crash + French translation was updated. ------------------------------------------------------------------------- -r1341 | nadvornik | 2009-01-21 19:30:54 +0100 (Wed, 21 Jan 2009) | 2 lines +commit fbe133245d32410b958b6fdffecfcd14e2ea2bca +Author: Laurent Monin +Date: Sat Mar 7 10:31:30 2009 +0000 -enable threads by default + Use a common function bar_pane_expander_title() to set expanders title widget. ------------------------------------------------------------------------- -r1340 | nadvornik | 2009-01-21 19:16:26 +0100 (Wed, 21 Jan 2009) | 2 lines +commit e4c7b67ba437b2e4b667b48ed40e50346c3fce45 +Author: Laurent Monin +Date: Fri Mar 6 22:34:38 2009 +0000 -compilation fixes for older exiv2 + Try to improve tab completion: when a key is pressed while tab completion menu is shown, the number of entries is reduced, dhowing all matching entries but the menu is no more closed after each key pressure. Number of possible entries in this menu was increased from 500 to 1000. Pressing TAB when path entry is empty now adds / (root directory). ------------------------------------------------------------------------- -r1339 | nadvornik | 2009-01-20 23:53:09 +0100 (Tue, 20 Jan 2009) | 2 lines +commit 0006442fe24f14a1ce2492b73d22c92670bf0974 +Author: Vladimir Nadvornik +Date: Fri Mar 6 15:52:47 2009 +0000 -improved metadata preferences + simplified bar interface ------------------------------------------------------------------------- -r1338 | nadvornik | 2009-01-20 23:29:31 +0100 (Tue, 20 Jan 2009) | 2 lines +commit 4da29794c4fe3233ac3ecff01019e86d779a8c2b +Author: Laurent Monin +Date: Fri Mar 6 15:04:35 2009 +0000 -fixed possible segfault + Add debug versions of path_to_utf8() and path_from_utf8() which allows to report the caller file and line, this is enabled with --enable-debug-flags (and developer mode too). ------------------------------------------------------------------------- -r1337 | nadvornik | 2009-01-11 22:28:03 +0100 (Sun, 11 Jan 2009) | 2 lines +commit 7b8e46aa208816b61b4c1c852112aeebd3fe8f46 +Author: Laurent Monin +Date: Fri Mar 6 14:53:32 2009 +0000 -show symlinks in filelist + Fix utf8/locale conversion warning: the path passed to isdir() is not in UTF8 (if local fs is not in UFT8) so do not use it (isdir() uses stat_utf8() which calls path_from_utf8()). ------------------------------------------------------------------------- -r1336 | nadvornik | 2009-01-11 22:24:58 +0100 (Sun, 11 Jan 2009) | 2 lines +commit 25962e3530372946ba7c7a051b509ecf7056ac85 +Author: Vladimir Nadvornik +Date: Fri Mar 6 14:42:32 2009 +0000 -fixed includes + enable wrap mode in comment pane ------------------------------------------------------------------------- -r1335 | nadvornik | 2009-01-11 19:58:05 +0100 (Sun, 11 Jan 2009) | 2 lines +commit 55a3179898b348b98a45a58d6f325dbb92026b09 +Author: Vladimir Nadvornik +Date: Fri Mar 6 14:24:11 2009 +0000 -added a status bar button for writting metadata immediately + use standard GtkHPaned for sidebar width ------------------------------------------------------------------------- -r1334 | nadvornik | 2009-01-11 13:13:30 +0100 (Sun, 11 Jan 2009) | 3 lines +commit e8aff8701513b7dd33af46253f588ed93aa26159 +Author: Laurent Monin +Date: Fri Mar 6 11:42:25 2009 +0000 -metadata write mode (direct or sidecar) made configurable for each file -format + Fix tab completion when entering "/et[TAB]" it was changed to "et", this is fixed. ------------------------------------------------------------------------- -r1333 | nadvornik | 2009-01-10 21:40:37 +0100 (Sat, 10 Jan 2009) | 3 lines +commit 9169391b4c9254bad5d087ea70eac57e35dafe6e +Author: Vladimir Nadvornik +Date: Thu Mar 5 23:32:56 2009 +0000 -simplified metadata interface, dropped metadata_read, -fixes for older exiv2 versions + do not crash if an exif entry is deleted during editing ------------------------------------------------------------------------- -r1332 | zas_ | 2009-01-04 18:14:34 +0100 (Sun, 04 Jan 2009) | 1 line +commit cf3ee0a9299dd553165421086ed4b44fe2d27eb6 +Author: Vladimir Nadvornik +Date: Thu Mar 5 23:02:15 2009 +0000 -When "Remember print settings" is checked, save _all_ settings. Before this patch, text fields, text size, source, layout and image scale properties were not saved. ------------------------------------------------------------------------- -r1331 | zas_ | 2009-01-04 11:32:47 +0100 (Sun, 04 Jan 2009) | 1 line + added popup menu to the exif pane -French translation was updated. ------------------------------------------------------------------------- -r1330 | zas_ | 2009-01-03 18:13:20 +0100 (Sat, 03 Jan 2009) | 1 line +commit 8cb3c38b5b8f7f3a6e02ba780b2d248e16872c3d +Author: Vladimir Nadvornik +Date: Wed Mar 4 22:44:35 2009 +0000 -Silent warnings. ------------------------------------------------------------------------- -r1329 | nadvornik | 2009-01-03 16:29:08 +0100 (Sat, 03 Jan 2009) | 2 lines + indicate that the exif pane is empty -write keywords and comments with separate functions +commit f4ef41357f991741b70538dd8156161f44e462bb +Author: Vladimir Nadvornik +Date: Wed Mar 4 22:34:11 2009 +0000 ------------------------------------------------------------------------- -r1328 | nadvornik | 2009-01-03 00:14:01 +0100 (Sat, 03 Jan 2009) | 2 lines + prepared exif pane for popup menu -fixed updating of selection after deleting the last image from the list +commit 96f804c86a637788af6faea27f260cca6c596229 +Author: Laurent Monin +Date: Wed Mar 4 21:33:19 2009 +0000 ------------------------------------------------------------------------- -r1327 | nadvornik | 2009-01-02 23:57:09 +0100 (Fri, 02 Jan 2009) | 5 lines + layout_status_update_pixel_cb(): cleanup and optimization, drop pango markup in i18n string, use a small function to calculate numbers length, only allocate text when needed. -do not enter a directory after rename -fixed dir tree updating -http://sourceforge.net/tracker/index.php?func=detail&aid=2481287&group_id=222125&atid=1054680 +commit b258d123509caea8cd9fe5d85dd2122d4e353750 +Author: Vladimir Nadvornik +Date: Wed Mar 4 21:19:12 2009 +0000 + dnd from advanced exif window to exif pane ------------------------------------------------------------------------- -r1326 | nadvornik | 2009-01-02 15:58:21 +0100 (Fri, 02 Jan 2009) | 4 lines +commit ed17579e62a6cfe5a18915d3bfba80f8bc2ee564 +Author: Vladimir Nadvornik +Date: Wed Mar 4 18:53:47 2009 +0000 -added done callback to utilops -used the callback for metadata writting at exit and for renaming new -folder + Display pixel coordinates and rgb - patch by Ruben Stein ------------------------------------------------------------------------- -r1325 | nadvornik | 2009-01-02 10:39:14 +0100 (Fri, 02 Jan 2009) | 2 lines +commit 82e0b2a4b6099bbe79ae2a0011fbbe4c528e428d +Author: Vladimir Nadvornik +Date: Tue Mar 3 23:17:07 2009 +0000 -fixed view_dir notification + reorder exif pane entries with drag and drop ------------------------------------------------------------------------- -r1324 | nadvornik | 2009-01-02 10:26:23 +0100 (Fri, 02 Jan 2009) | 4 lines +commit a899ea58d94c14dc66d34a3567ebdcfa11a6a0f9 +Author: Vladimir Nadvornik +Date: Mon Mar 2 22:48:04 2009 +0000 -sidecar files grouping was made case-insensitive -added possibility to use macros %raw, %image, %meta in extensions lists + overlay now survives image split +commit a4ee370ccd362d7e0c69067dbdad9e0106a1cce4 +Author: Laurent Monin +Date: Mon Mar 2 21:06:32 2009 +0000 ------------------------------------------------------------------------- -r1323 | nadvornik | 2008-12-27 23:53:07 +0100 (Sat, 27 Dec 2008) | 2 lines + Random tidy up. -fixed writting of legacy metadata +commit da428c44fc7a1da6f146163cb8f484e0fc6676fb +Author: Laurent Monin +Date: Mon Mar 2 21:05:57 2009 +0000 ------------------------------------------------------------------------- -r1322 | nadvornik | 2008-12-26 20:04:36 +0100 (Fri, 26 Dec 2008) | 3 lines + Fix memleak in previous patch. -optimized get_mark_func -fixed reference counting bug +commit 0668b940429414b217e330b5351bfca31dda1c4d +Author: Laurent Monin +Date: Mon Mar 2 21:04:38 2009 +0000 ------------------------------------------------------------------------- -r1321 | nadvornik | 2008-12-26 19:54:07 +0100 (Fri, 26 Dec 2008) | 2 lines + Add a directory separator at the end of names in tab completion list to indicate directories. -remove cached entries on all changes +commit 6a8d84391baf8e7bee1160abc4c57eca58987a73 +Author: Laurent Monin +Date: Sun Mar 1 23:38:36 2009 +0000 ------------------------------------------------------------------------- -r1320 | nadvornik | 2008-12-26 18:38:52 +0100 (Fri, 26 Dec 2008) | 2 lines + Align exif labels vertically (visually better since name is now smaller than value). -fixed previous change +commit 2a1b48f6079867a09a28067f17a8e7bb47cdbdfd +Author: Laurent Monin +Date: Sun Mar 1 23:28:53 2009 +0000 ------------------------------------------------------------------------- -r1319 | nadvornik | 2008-12-26 15:12:36 +0100 (Fri, 26 Dec 2008) | 3 lines + Update POTFILES.in and french translation. -improved sidecar writting -private metadata can be saved in xmp format +commit 7fbf2e53a3a5ad667bd585d763cf0bff567d672e +Author: Laurent Monin +Date: Sun Mar 1 23:14:19 2009 +0000 ------------------------------------------------------------------------- -r1318 | nadvornik | 2008-12-25 13:39:34 +0100 (Thu, 25 Dec 2008) | 2 lines + When g_new0() is used, drop redundant initializations to NULL, FALSE or 0, second pass. -implemented a possibility to connect keywords with marks +commit ac3c275ae53473b6be6f20c1b96a470e156a7fdc +Author: Vladimir Nadvornik +Date: Sun Mar 1 21:35:18 2009 +0000 ------------------------------------------------------------------------- -r1317 | nadvornik | 2008-12-25 13:28:04 +0100 (Thu, 25 Dec 2008) | 2 lines + make the exif pane grow-only - this reduces sidebar jumping -low-level keyword-to-mark functionality +commit 16754fd5f8f49e41f040ed43a28f4c53dfcde982 +Author: Laurent Monin +Date: Sun Mar 1 21:06:55 2009 +0000 ------------------------------------------------------------------------- -r1316 | nadvornik | 2008-12-25 13:19:37 +0100 (Thu, 25 Dec 2008) | 2 lines + When g_new0() is used, drop redundant initializations to NULL, FALSE or 0. -perform internal commands in idle call +commit 276cb9bb7ccef6bca68564040a2f5908028ebdc1 +Author: Laurent Monin +Date: Sun Mar 1 19:48:38 2009 +0000 ------------------------------------------------------------------------- -r1315 | nadvornik | 2008-12-23 23:42:57 +0100 (Tue, 23 Dec 2008) | 2 lines + Clarify colorspace determination (exif 2.2/2.21). -allow writing of empty keywords/comment +commit 352ec1b93ed21559a6c2cd9d3b583540bd0de5d9 +Author: Laurent Monin +Date: Sun Mar 1 17:58:19 2009 +0000 ------------------------------------------------------------------------- -r1314 | nadvornik | 2008-12-23 21:53:44 +0100 (Tue, 23 Dec 2008) | 2 lines + Enable 'Use profile from image' item of color management menu only if such profile information is available from image. -added change notification to bar_info.c +commit 2f8d1927009893b4562aa1b95ec61b2f4b997d8d +Author: Laurent Monin +Date: Sun Mar 1 17:13:14 2009 +0000 ------------------------------------------------------------------------- -r1313 | nadvornik | 2008-12-23 20:15:12 +0100 (Tue, 23 Dec 2008) | 2 lines + Improve file checks using is_readable_file(). -improved buffering and notifications +commit 44300b5fd5139f9c485d632207fb7f89cd3c481f +Author: Laurent Monin +Date: Sun Mar 1 17:11:51 2009 +0000 ------------------------------------------------------------------------- -r1312 | nadvornik | 2008-12-23 20:13:48 +0100 (Tue, 23 Dec 2008) | 3 lines + Only attempt to read exif if the file is readable. -write changes immediately, the necessary buffering is done on lower -level in metadata.c +commit f66300e9b42664a35e88c2baefdff57b3a883759 +Author: Laurent Monin +Date: Sun Mar 1 17:10:45 2009 +0000 ------------------------------------------------------------------------- -r1311 | nadvornik | 2008-12-23 00:25:15 +0100 (Tue, 23 Dec 2008) | 2 lines + Introduce is_readable_file() which test if file exists, is regular and readable. -file class made configurable in preferences +commit 2a5590abe04642bb6e1d7abb17a4f12ee9861cd8 +Author: Laurent Monin +Date: Sun Mar 1 16:46:40 2009 +0000 ------------------------------------------------------------------------- -r1310 | zas_ | 2008-12-22 20:43:46 +0100 (Mon, 22 Dec 2008) | 1 line + image_select(), image_set_selectable(): tidy up. -French translation was updated. ------------------------------------------------------------------------- -r1309 | nadvornik | 2008-12-22 19:29:25 +0100 (Mon, 22 Dec 2008) | 2 lines +commit d3aa41bc4406825b23336d561c60a81d6509f523 +Author: Laurent Monin +Date: Sun Mar 1 16:43:48 2009 +0000 -write metadata after timeout, image change or dir change + Indentation fixes. ------------------------------------------------------------------------- -r1308 | nadvornik | 2008-12-22 19:15:26 +0100 (Mon, 22 Dec 2008) | 2 lines +commit 671c4e59016ad4b13a791d6bf70a1011b9450b62 +Author: Laurent Monin +Date: Sun Mar 1 15:54:37 2009 +0000 -show metadata options in preferences dialog + image_post_process_color(): remove exif parameter, just extract it when needed. ------------------------------------------------------------------------- -r1307 | nadvornik | 2008-12-21 22:36:58 +0100 (Sun, 21 Dec 2008) | 2 lines +commit bc32699c45cdf3698872449f5b9116a6dd0928a8 +Author: Laurent Monin +Date: Sun Mar 1 15:41:51 2009 +0000 -fixed safe delete + Slightly modify access_file() and use it to test profile files existence and read access. ------------------------------------------------------------------------- -r1306 | nadvornik | 2008-12-21 22:20:36 +0100 (Sun, 21 Dec 2008) | 2 lines +commit 2a3788f237b9a0e343501213036eb133545754b7 +Author: Laurent Monin +Date: Sun Mar 1 15:28:06 2009 +0000 -most of the metadata options now works + Add an ellipse when the file name is truncated. ------------------------------------------------------------------------- -r1305 | nadvornik | 2008-12-21 17:26:03 +0100 (Sun, 21 Dec 2008) | 2 lines +commit 138449b284641d79f8f35dbc47ecff5364f94117 +Author: Laurent Monin +Date: Sun Mar 1 15:15:37 2009 +0000 -fixed new options + In the side bar, display the filename without the 'Filename:' prefix and makes it centered. Allow to select it for copy'n'paste. ------------------------------------------------------------------------- -r1304 | zas_ | 2008-12-21 10:28:16 +0100 (Sun, 21 Dec 2008) | 1 line +commit 86e5ecef8ba0effbc52208fcc9c2c788ede293ff +Author: Vladimir Nadvornik +Date: Sun Mar 1 13:37:30 2009 +0000 -French translation was updated. ------------------------------------------------------------------------- -r1303 | nadvornik | 2008-12-21 00:18:20 +0100 (Sun, 21 Dec 2008) | 2 lines + dropped ExifUIList -added options for metadata - not yet used +commit 851a261132a08fc1812a73b2c0481d0579a3da0a +Author: Vladimir Nadvornik +Date: Sun Mar 1 11:59:32 2009 +0000 ------------------------------------------------------------------------- -r1302 | zas_ | 2008-12-20 22:47:04 +0100 (Sat, 20 Dec 2008) | 1 line + do not use separate list of entries, rely on vbox -Fix two minor compilation warnings. ------------------------------------------------------------------------- -r1301 | zas_ | 2008-12-20 22:30:27 +0100 (Sat, 20 Dec 2008) | 1 line +commit 411fa489a446dd00e60f1a77791ce26f9e43bb87 +Author: Vladimir Nadvornik +Date: Sun Mar 1 00:10:00 2009 +0000 -Switch to fullscreen when double clicking on file in icon or list view. Feature request 1966042. The code was there since a long time but disabled, please report any issue. ------------------------------------------------------------------------- -r1300 | nadvornik | 2008-12-20 21:43:56 +0100 (Sat, 20 Dec 2008) | 3 lines + fixed possible crash -use the workflow in utilops.c for metadata approving and writting -TODO: configuration +commit 353d6be218b845a9d974f32d8388867ce2588bbe +Author: Vladimir Nadvornik +Date: Sat Feb 28 23:59:02 2009 +0000 ------------------------------------------------------------------------- -r1299 | nadvornik | 2008-12-16 13:59:23 +0100 (Tue, 16 Dec 2008) | 2 lines + rewritten exif pane to support arbitrary number of entries -queue metadata and write them in an idle callback +commit 7cc909a78fa9f5f7c7fc40533978a29d3ad05767 +Author: Laurent Monin +Date: Sat Feb 28 20:57:26 2009 +0000 ------------------------------------------------------------------------- -r1298 | nadvornik | 2008-12-15 23:47:31 +0100 (Mon, 15 Dec 2008) | 5 lines + max value -> value. Shorter. -prepared infrastructure for delayed metadata writting - refreshing -metadata immediately before writting is now possible +commit bbfd2a7a816e372a04aea99139f835353e4047f8 +Author: Laurent Monin +Date: Sat Feb 28 20:53:59 2009 +0000 -modified metadata are stored in fd->modified_xmp + Add missing space between while and first parenthesis. ------------------------------------------------------------------------- -r1297 | zas_ | 2008-12-15 19:04:42 +0100 (Mon, 15 Dec 2008) | 1 line +commit 321ff5bb77411f729fdd38740a02f4de341f77e9 +Author: Laurent Monin +Date: Sat Feb 28 20:52:51 2009 +0000 -Allow to drag keywords on files in list or icon view. Dragged text is appended to keywords list of the destination file. ------------------------------------------------------------------------- -r1296 | zas_ | 2008-12-09 20:12:38 +0100 (Tue, 09 Dec 2008) | 1 line + Add missing space between switch and first parenthesis. -French translation was updated. ------------------------------------------------------------------------- -r1295 | zas_ | 2008-12-09 18:51:28 +0100 (Tue, 09 Dec 2008) | 1 line +commit 96a26903f49ddab4a63213310c9da8d2c0457dc0 +Author: Laurent Monin +Date: Sat Feb 28 20:48:47 2009 +0000 -Allow to invert the current selection in Collection view. A new Selection submenu was added to the contextual menu, Select All and Select None were moved to it, and Invert selection was added. ------------------------------------------------------------------------- -r1294 | zas_ | 2008-12-08 22:34:32 +0100 (Mon, 08 Dec 2008) | 1 line + No space between function name and first parenthesis, it eases greping (see CODING). -Display error dialog with appropriate message when user is trying to open an invalid collection file. ------------------------------------------------------------------------- -r1293 | zas_ | 2008-12-08 22:33:14 +0100 (Mon, 08 Dec 2008) | 1 line +commit 5ac2ac2a71f6fcc14ad4fc2994c17ea64d415dd5 +Author: Laurent Monin +Date: Sat Feb 28 20:24:42 2009 +0000 -Cosmetic fix. ------------------------------------------------------------------------- -r1292 | zas_ | 2008-12-07 16:51:50 +0100 (Sun, 07 Dec 2008) | 1 line + Prevent Gtk assertion failures when no icon is set. -Fix patch 1290: we only want to remove unused parameter warnings not all warnings produced by -Wextra, so just disable then using -Wno-unused-parameter and re-add -Wextra (was -W, but this is the old name). ------------------------------------------------------------------------- -r1291 | nadvornik | 2008-12-07 14:28:04 +0100 (Sun, 07 Dec 2008) | 2 lines +commit f3d61f44c1bfe05188eb68974737f66ce096656d +Author: Vladimir Nadvornik +Date: Sat Feb 28 20:13:11 2009 +0000 -handle the case when io.open() fails + show histogram label in the title + adjusted label texts ------------------------------------------------------------------------- -r1290 | nadvornik | 2008-12-06 22:24:38 +0100 (Sat, 06 Dec 2008) | 4 lines +commit f9936e38ffc7feb5ca5af211603c682cfb548fee +Author: Vladimir Nadvornik +Date: Sat Feb 28 19:44:58 2009 +0000 -disabled the "unused parameter" warnings, they are harmless and nobody -is going to fix it ;) -(note: -W is equivalent to -Wextra) + give the panes more control over expander title ------------------------------------------------------------------------- -r1289 | zas_ | 2008-12-02 20:34:53 +0100 (Tue, 02 Dec 2008) | 1 line +commit 106016c61b873ccc55b515336f5217d7f9fd639e +Author: Laurent Monin +Date: Sat Feb 28 19:41:23 2009 +0000 -Rename few variables to make the code more readable. ------------------------------------------------------------------------- -r1288 | zas_ | 2008-11-30 22:59:28 +0100 (Sun, 30 Nov 2008) | 1 line + Color profiles menu: test for file access before allowing to select it as input profile. -keyword_list_find() -> find_string_in_list(), return gboolean. ------------------------------------------------------------------------- -r1287 | zas_ | 2008-11-30 22:52:37 +0100 (Sun, 30 Nov 2008) | 1 line +commit dc4646d5966601b57b5a6ac49aaa7bd4fa14b7f3 +Author: Vladimir Nadvornik +Date: Sat Feb 28 18:51:25 2009 +0000 -metadata_set_keywords() -> metadata_set(). Use gboolean type for boolean parameters. ------------------------------------------------------------------------- -r1286 | zas_ | 2008-11-30 22:43:01 +0100 (Sun, 30 Nov 2008) | 1 line + load icons for external editors -Rename most comment_*() functions to more appropriate metadata_*(). ------------------------------------------------------------------------- -r1285 | zas_ | 2008-11-30 12:46:34 +0100 (Sun, 30 Nov 2008) | 1 line +commit 073a65377169492e9843ee4bdd3acf01f0cf6c78 +Author: Laurent Monin +Date: Sat Feb 28 18:01:16 2009 +0000 -File filters cleanup: add .pef .dng and .arw extensions to default sidecar extensions list, add .k25 in Kodak raw extensions, simplify and optimize sidecar_ext_parse(). ------------------------------------------------------------------------- -r1284 | zas_ | 2008-11-27 20:10:59 +0100 (Thu, 27 Nov 2008) | 1 line + Use g_utf8_casefold() to compare keywords, uppercased/lowercased keywords are now matched against predefined list. -Do not hardcode exif formatted prefix. ------------------------------------------------------------------------- -r1283 | zas_ | 2008-11-27 13:34:39 +0100 (Thu, 27 Nov 2008) | 1 line +commit 42ea998781724458ce55582414b4d1656d244f10 +Author: Vladimir Nadvornik +Date: Sat Feb 28 17:20:16 2009 +0000 -Fix up sign-related warning. ------------------------------------------------------------------------- -r1282 | zas_ | 2008-11-27 13:34:03 +0100 (Thu, 27 Nov 2008) | 1 line + fixed bar_histogram headers -Fix up unsigned expression always true warning. ------------------------------------------------------------------------- -r1281 | zas_ | 2008-11-27 13:33:07 +0100 (Thu, 27 Nov 2008) | 1 line +commit 0520eeff040165801722d408701eae8c94b2f955 +Author: Laurent Monin +Date: Sat Feb 28 17:12:00 2009 +0000 -Resync .h with .c declarations. ------------------------------------------------------------------------- -r1280 | zas_ | 2008-11-27 13:31:27 +0100 (Thu, 27 Nov 2008) | 1 line + Minor simplification and cleanup. -Fix up pointer signedness warnings. ------------------------------------------------------------------------- -r1279 | zas_ | 2008-11-27 13:30:49 +0100 (Thu, 27 Nov 2008) | 1 line +commit df6b9c5b1e3077d19e5c59f2e72e8949da034a08 +Author: Laurent Monin +Date: Sat Feb 28 16:59:20 2009 +0000 -Fix up not a prototype warning. ------------------------------------------------------------------------- -r1278 | zas_ | 2008-11-27 13:30:10 +0100 (Thu, 27 Nov 2008) | 1 line + image_change_complete(): reduce code redundancy and implify. -Remove unused variable. ------------------------------------------------------------------------- -r1277 | zas_ | 2008-11-27 13:29:38 +0100 (Thu, 27 Nov 2008) | 1 line +commit fa373d7547d5c23f65088dff3df36d43b90b0139 +Author: Vladimir Nadvornik +Date: Sat Feb 28 14:40:22 2009 +0000 -Fix up deprecated function and not a prototype warnings. ------------------------------------------------------------------------- -r1276 | zas_ | 2008-11-26 21:39:50 +0100 (Wed, 26 Nov 2008) | 1 line + fixed overlay configuration + split overlay options between global and layout window -Handle return values better to silent some warnings. ------------------------------------------------------------------------- -r1275 | zas_ | 2008-11-26 21:38:47 +0100 (Wed, 26 Nov 2008) | 1 line +commit d5b911cd3eca6de811ef53f8cac6a3f84ced1062 +Author: Vladimir Nadvornik +Date: Sat Feb 28 12:50:39 2009 +0000 -Print a message if chown() or chmod() fail. ------------------------------------------------------------------------- -r1274 | zas_ | 2008-11-26 21:37:14 +0100 (Wed, 26 Nov 2008) | 1 line + save and restore toolbar configuration -Fix up format vs type warning. ------------------------------------------------------------------------- -r1273 | zas_ | 2008-11-25 18:32:51 +0100 (Tue, 25 Nov 2008) | 1 line +commit b4581c40f8cb47f32d1102589b005d5435e9e297 +Author: Vladimir Nadvornik +Date: Sat Feb 28 09:59:27 2009 +0000 -Move comments/keywords read and write stuff to new metadata.{c,h}. ------------------------------------------------------------------------- -r1272 | zas_ | 2008-11-25 18:01:03 +0100 (Tue, 25 Nov 2008) | 1 line + create toolbar from ui_manager -Fix up unsigned expression always true/false warnings. ------------------------------------------------------------------------- -r1271 | zas_ | 2008-11-23 23:05:27 +0100 (Sun, 23 Nov 2008) | 1 line +commit b24487aa1f5704a788a8f77782edf40850878a63 +Author: Laurent Monin +Date: Fri Feb 27 23:25:31 2009 +0000 -Hide .gqv extension from collection name in collection window title and recent menu list. ------------------------------------------------------------------------- -r1270 | zas_ | 2008-11-23 17:16:09 +0100 (Sun, 23 Nov 2008) | 1 line + Really fix up color profiles options tests. Add an indicator of the embedded color profile when recognized (a * just after sRGB or AdobeRGB compatible). -Rename wmsubclass and name to role, which corresponds better to the purpose of the parameter as it ends to be passed to gtk_window_set_role(). ------------------------------------------------------------------------- -r1269 | zas_ | 2008-11-23 17:10:29 +0100 (Sun, 23 Nov 2008) | 1 line +commit bc2d1d0836169d7184c7010e9d01d16837cddbf5 +Author: Laurent Monin +Date: Fri Feb 27 22:28:17 2009 +0000 -Drop useless wmclass stuff. Gtk will take care of it and as said in the documentation using gtk_window_set_wmclass() is sort of pointless. ------------------------------------------------------------------------- -r1268 | zas_ | 2008-11-22 23:54:51 +0100 (Sat, 22 Nov 2008) | 1 line + Fix up color profiles menu: mark empty entries (but not NULL) as inactive. -Use the last selected images for the splitted views. Ie. when 5 images are selected, the last one is displayed, split quad while open images 5,4,3,2. It seems better to me. ------------------------------------------------------------------------- -r1267 | zas_ | 2008-11-22 23:43:18 +0100 (Sat, 22 Nov 2008) | 1 line +commit 9c93c4f8a9650ce80206755b524244c878e7b61b +Author: Vladimir Nadvornik +Date: Fri Feb 27 21:30:28 2009 +0000 -When more than one image is selected, Split Horizontal, Vertical and Quad will use selected images when initialized. ------------------------------------------------------------------------- -r1266 | zas_ | 2008-11-22 23:10:10 +0100 (Sat, 22 Nov 2008) | 1 line + compute histmap in idle callback and only if the histogram is expanded -Tidy up. ------------------------------------------------------------------------- -r1265 | zas_ | 2008-11-22 23:04:21 +0100 (Sat, 22 Nov 2008) | 1 line +commit 526bf4edfddf1c63e583a2bf735a4614c55b314b +Author: Laurent Monin +Date: Thu Feb 26 21:46:27 2009 +0000 -Use common code for layout_image_setup_split_none() too. ------------------------------------------------------------------------- -r1264 | zas_ | 2008-11-22 22:58:07 +0100 (Sat, 22 Nov 2008) | 1 line + Add a tooltip showing current histogram state on bar histogram. -layout_image_setup_split_*(): simplify code. ------------------------------------------------------------------------- -r1263 | zas_ | 2008-11-22 22:11:09 +0100 (Sat, 22 Nov 2008) | 1 line +commit 66b325900212d630b208e1747280767783f01cb9 +Author: Laurent Monin +Date: Thu Feb 26 20:50:36 2009 +0000 -layout_image_setup_split_*(): move common code to a new function layout_image_setup_split_common(). ------------------------------------------------------------------------- -r1262 | zas_ | 2008-11-22 17:24:23 +0100 (Sat, 22 Nov 2008) | 1 line + Clean up histogram stuff: options saving/restoring, osd histogram separation, tidy up. -Add a back button in the toolbar: it allows to go back and forth between two directories. Experimental, please test and comment on ml. ------------------------------------------------------------------------- -r1261 | zas_ | 2008-11-20 18:28:34 +0100 (Thu, 20 Nov 2008) | 1 line +commit 3b4446591720a17e3f0856fc290f85b84a303d12 +Author: Laurent Monin +Date: Thu Feb 26 17:34:14 2009 +0000 -Force font weight and style to normal for keys. ------------------------------------------------------------------------- -r1260 | zas_ | 2008-11-20 18:23:46 +0100 (Thu, 20 Nov 2008) | 1 line + Add .bak and .mo extensions to svn:ignore. -Fix up yet unmarked keys. ------------------------------------------------------------------------- -r1259 | zas_ | 2008-11-20 12:46:43 +0100 (Thu, 20 Nov 2008) | 1 line +commit 84a6a75d10d4aaa99aaa0b9c5e2ded8a2b26f4da +Author: Vladimir Nadvornik +Date: Thu Feb 26 08:04:52 2009 +0000 -Fix compilation warnings. ------------------------------------------------------------------------- -r1258 | zas_ | 2008-11-20 08:22:56 +0100 (Thu, 20 Nov 2008) | 1 line + quoted_value is no longer needed -Fix up some missing html code. ------------------------------------------------------------------------- -r1257 | zas_ | 2008-11-19 23:57:40 +0100 (Wed, 19 Nov 2008) | 1 line +commit cffe654128aa1230d98c36f6cc48524d87ab6b69 +Author: Laurent Monin +Date: Wed Feb 25 23:04:08 2009 +0000 -More keys. ------------------------------------------------------------------------- -r1256 | zas_ | 2008-11-19 23:46:27 +0100 (Wed, 19 Nov 2008) | 1 line + Silent a minor warning. -Fix text wrongly marked as key. ------------------------------------------------------------------------- -r1255 | zas_ | 2008-11-19 23:42:20 +0100 (Wed, 19 Nov 2008) | 1 line +commit 5651cebff9468fa7cb1275476eea0ccd482cb8df +Author: Vladimir Nadvornik +Date: Wed Feb 25 21:09:17 2009 +0000 -Mark keyboard keys with a span and make them look like a key through css style. ------------------------------------------------------------------------- -r1254 | zas_ | 2008-11-19 22:36:02 +0100 (Wed, 19 Nov 2008) | 1 line + correctly save and restore overlay string -Replace [Control] by shorter and more common [Ctrl]. ------------------------------------------------------------------------- -r1253 | zas_ | 2008-11-19 22:16:27 +0100 (Wed, 19 Nov 2008) | 1 line +commit d7b78d9173ebe6d4692dad061a4afe30325d3e23 +Author: Laurent Monin +Date: Wed Feb 25 20:54:38 2009 +0000 -Unify [Shift] and [Control] notation. ------------------------------------------------------------------------- -r1252 | zas_ | 2008-11-19 21:53:53 +0100 (Wed, 19 Nov 2008) | 1 line + Save bar pane histogram state to rc file. -Move (and update) image pane shortcuts to a table. Simplify css styles for those tables. ------------------------------------------------------------------------- -r1251 | zas_ | 2008-11-19 18:42:36 +0100 (Wed, 19 Nov 2008) | 1 line +commit fddb6eb6775e4f70b70cb5373508b0bcb9ed5a04 +Author: Laurent Monin +Date: Wed Feb 25 20:42:35 2009 +0000 -Update documentation. ------------------------------------------------------------------------- -r1250 | zas_ | 2008-11-17 19:05:42 +0100 (Mon, 17 Nov 2008) | 1 line + Fix up bar pane histogram contextual menu: show current state for channel and log mode. -Fix up links and various enhancements. ------------------------------------------------------------------------- -r1249 | zas_ | 2008-11-17 18:17:47 +0100 (Mon, 17 Nov 2008) | 1 line +commit 4d85c50b6c73874d441f834a9d52f8319082c3e8 +Author: Vladimir Nadvornik +Date: Wed Feb 25 19:46:03 2009 +0000 -Remove colored background in headings for printable version. ------------------------------------------------------------------------- -r1248 | zas_ | 2008-11-17 18:09:44 +0100 (Mon, 17 Nov 2008) | 1 line + reuse original utility_box (image + sidebars) on layout change (switch + from list to icon view etc.) -Change metadata directory to be $XDG_DATA_HOME instead of $XDG_CACHE_HOME as discussed on the ml (obviously it has impact only when XDG support is set). Suggestion by Omari Stephens. ------------------------------------------------------------------------- -r1247 | zas_ | 2008-11-17 08:10:32 +0100 (Mon, 17 Nov 2008) | 1 line +commit f9a9bffc314cd4b1cd5229896286666766f020ca +Author: Vladimir Nadvornik +Date: Wed Feb 25 18:21:20 2009 +0000 -Comment out css code that slipped through by cut'n paste error. It may be useful at some time though. ------------------------------------------------------------------------- -r1246 | zas_ | 2008-11-16 20:58:43 +0100 (Sun, 16 Nov 2008) | 1 line + fixed filter initialization -Add specific css for print media(has to be improved). ------------------------------------------------------------------------- -r1245 | zas_ | 2008-11-16 17:32:14 +0100 (Sun, 16 Nov 2008) | 1 line +commit b3477302e22f00d62a4f7f9a7ce5a1f8d6a7a142 +Author: Vladimir Nadvornik +Date: Tue Feb 24 22:21:28 2009 +0000 -Update svn:ignore property: add some files and replace gqview by geeqie where applicable. ------------------------------------------------------------------------- -r1244 | zas_ | 2008-11-15 21:17:14 +0100 (Sat, 15 Nov 2008) | 21 lines + improved bar_sort configuration -Implement preliminary support for XDG Base Directory Specification. -See http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html. +commit da109aa01657b27c22a18bc74bff56e4dae89298 +Author: Laurent Monin +Date: Tue Feb 24 21:08:16 2009 +0000 -This feature was requested for a long time (feature requests #1950978 and #2289481). -For now, it is disabled since it breaks compatibility with previous versions. -To be able to test it, you have to enable it by defining USE_XDG to 1 in main.h. + Add a contextual menu on bar pane histogram allowing to change channels and mode. More work needed. -geeqierc and other conf files are going to: -$XDG_CONFIG_HOME/geeqie/ (default to $HOME/.config/geeqie/). +commit e84b67aadcdc1ea32b2c53e6b4a2d6a369f51951 +Author: Vladimir Nadvornik +Date: Tue Feb 24 20:47:38 2009 +0000 -metadata and thumbnails cache (if std is not used) are going to: -$XDG_CACHE_HOME/geeqie/metadata/ (default to $HOME/.cache/geeqie/metadata/) -and $XDG_CACHE_HOME/geeqie/thumbnails/ (default to $HOME/.cache/geeqie/thumbnails/) + fixed --fullscreen option together with enabled bar -collections are going to: -$XDG_DATA_HOME/geeqie/collections/ (default to $HOME/.local/share/geeqie/collections/) +commit 5da3477f9b116d0482737510423e5de949f8a0d4 +Author: Vladimir Nadvornik +Date: Tue Feb 24 20:34:39 2009 +0000 + simplified and improved bar configuration -Please test and report any issue. +commit f215252861f96b1b924b93178a406e2ec7bb6ca2 +Author: Laurent Monin +Date: Tue Feb 24 18:00:45 2009 +0000 + Enclose macro parameters names with _ to differentiate them from variable names. ------------------------------------------------------------------------- -r1243 | zas_ | 2008-11-15 21:01:25 +0100 (Sat, 15 Nov 2008) | 1 line +commit a8df53630e1632e65318a1b397ea1a275f4817e5 +Author: Laurent Monin +Date: Tue Feb 24 17:47:45 2009 +0000 -Replace cache_ensure_dir_exists() by new recursive_mkdir_if_not_exists(). ------------------------------------------------------------------------- -r1242 | nadvornik | 2008-11-15 20:13:43 +0100 (Sat, 15 Nov 2008) | 2 lines + Since READ_*() macros are now exported, do not hide + the if() continue; statement in them. + Wrap WRITE_STRING() instructions in a safer do {} while (0). -fixed usage of deprecated functions - patch by Omari Stephens +commit 1bef8f7ea39aa7652ded34fd2baaa3bf6c28e69d +Author: Vladimir Nadvornik +Date: Mon Feb 23 22:13:09 2009 +0000 ------------------------------------------------------------------------- -r1241 | zas_ | 2008-11-15 18:48:31 +0100 (Sat, 15 Nov 2008) | 1 line + simplified config writing -Rename check_for_home_path() to mkdir_if_not_exists(). ------------------------------------------------------------------------- -r1240 | zas_ | 2008-11-15 18:30:45 +0100 (Sat, 15 Nov 2008) | 11 lines +commit c2b4bce2393c142785ac7cef5095a5c06348073b +Author: Vladimir Nadvornik +Date: Mon Feb 23 21:21:15 2009 +0000 -Use functions to return directories instead of constants. -Following functions were added: -get_collections_dir() -get_metadata_cache_dir() -get_rc_dir() -get_thumbnails_cache_dir() -get_trash_dir() + enabled commandline again -They return the full directory path. +commit 778dcd703998a9d37ea6562228e971827a25044f +Author: Laurent Monin +Date: Mon Feb 23 17:20:40 2009 +0000 + Introduce helpers histogram_toggle_channel() and histogram_toggle_mode(). ------------------------------------------------------------------------- -r1239 | zas_ | 2008-11-15 11:35:43 +0100 (Sat, 15 Nov 2008) | 1 line +commit 4b96dffd2f791d4f99a407da3a11cbeede9f5b2c +Author: Laurent Monin +Date: Sun Feb 22 17:46:42 2009 +0000 -Add a wrapper around system() call named runcmd() which allows easier debugging. Improve the code launching the help browser. ------------------------------------------------------------------------- -r1238 | zas_ | 2008-11-14 02:10:18 +0100 (Fri, 14 Nov 2008) | 1 line + Set svn:ignore on Makefile and Makefile.in. -Fix up Makefile.am: add missing files and do not install template.html. ------------------------------------------------------------------------- -r1237 | zas_ | 2008-11-12 22:38:00 +0100 (Wed, 12 Nov 2008) | 1 line +commit 6be7a5d9435cd61876ec2585d19e6fc4208eb66d +Author: Laurent Monin +Date: Sun Feb 22 17:40:32 2009 +0000 -Fix a cut'n'paste error. ------------------------------------------------------------------------- -r1236 | zas_ | 2008-11-12 22:34:55 +0100 (Wed, 12 Nov 2008) | 1 line + Fix and simplify histogram code, drop histogram based on mean value. -More precise description of the pan view find feature and a note about ressources eating was added. ------------------------------------------------------------------------- -r1235 | zas_ | 2008-11-12 22:15:12 +0100 (Wed, 12 Nov 2008) | 1 line +commit 9e9712735fb1522f4f081a9e38c38c4d91a09c51 +Author: Vladimir Nadvornik +Date: Sun Feb 22 15:35:37 2009 +0000 -Add some information about the pan view. ------------------------------------------------------------------------- -r1234 | zas_ | 2008-11-12 18:59:14 +0100 (Wed, 12 Nov 2008) | 1 line + config file format changed to XML + save and restore all layout windows + save and restore sidebar configuration -Add a note about splitted view. ------------------------------------------------------------------------- -r1233 | zas_ | 2008-11-12 18:48:16 +0100 (Wed, 12 Nov 2008) | 1 line +commit 179b485a4439fb2e102195fde5b2366a24c5a927 +Author: Laurent Monin +Date: Sun Feb 22 13:29:49 2009 +0000 -Add Connected zoom and Split menu items. ------------------------------------------------------------------------- -r1232 | zas_ | 2008-11-12 00:35:39 +0100 (Wed, 12 Nov 2008) | 1 line + Attempt to simplify and fix histrogram code. -Add missing s... ------------------------------------------------------------------------- -r1231 | zas_ | 2008-11-12 00:30:13 +0100 (Wed, 12 Nov 2008) | 1 line +commit c6d4606fb8929b3c6596292a9eae836167729bf8 +Author: Laurent Monin +Date: Sat Feb 21 20:43:35 2009 +0000 -Minor fixes. ------------------------------------------------------------------------- -r1230 | zas_ | 2008-11-11 22:50:42 +0100 (Tue, 11 Nov 2008) | 1 line + Glibification again. -Give a new style to menus. ------------------------------------------------------------------------- -r1229 | zas_ | 2008-11-11 22:49:33 +0100 (Tue, 11 Nov 2008) | 1 line +commit 2c9c37c9649ad80e04e14230eebd6584e7de7e8d +Author: Laurent Monin +Date: Sat Feb 21 18:28:53 2009 +0000 -Fix missing parts. ------------------------------------------------------------------------- -r1228 | zas_ | 2008-11-11 22:17:55 +0100 (Tue, 11 Nov 2008) | 1 line + French translation was updated. -Update main window menus description to match current Geeqie. ------------------------------------------------------------------------- -r1227 | zas_ | 2008-11-11 22:17:03 +0100 (Tue, 11 Nov 2008) | 1 line +commit 4a596674619d5addc6a223fe2be2093c06622a2d +Author: Laurent Monin +Date: Sat Feb 21 18:04:52 2009 +0000 -Drop dots. ------------------------------------------------------------------------- -r1226 | zas_ | 2008-11-11 11:32:03 +0100 (Tue, 11 Nov 2008) | 1 line + Glibification. -Update exif pane documentation a bit. ------------------------------------------------------------------------- -r1225 | zas_ | 2008-11-11 11:24:04 +0100 (Tue, 11 Nov 2008) | 1 line +commit 144433d8a9eaa43184c844b76665c91fe21f1c07 +Author: Laurent Monin +Date: Sat Feb 21 10:53:18 2009 +0000 -Add Properties Options page. ------------------------------------------------------------------------- -r1224 | zas_ | 2008-11-11 11:09:09 +0100 (Tue, 11 Nov 2008) | 1 line + Move grid color setting to histogram_new(). -Advanced options documentation is now almost in sync with current geeqie. ------------------------------------------------------------------------- -r1223 | zas_ | 2008-11-11 10:12:10 +0100 (Tue, 11 Nov 2008) | 1 line +commit 80547e648cc21fefb1e91f869d90c2ea719a9f6d +Author: Laurent Monin +Date: Sat Feb 21 10:33:56 2009 +0000 -More updates to advanced options documentation. Not yet finished. ------------------------------------------------------------------------- -r1222 | zas_ | 2008-11-11 00:36:12 +0100 (Tue, 11 Nov 2008) | 1 line + Remove histogram_ prefix from struct _Histogram fields names and rename them more properly. -Page cleanup and fixed. Remove obsolete note. ------------------------------------------------------------------------- -r1221 | zas_ | 2008-11-11 00:15:42 +0100 (Tue, 11 Nov 2008) | 1 line +commit 0f103e1b6b6ab4017d7f677aaea9120dc015906b +Author: Laurent Monin +Date: Sat Feb 21 10:29:13 2009 +0000 -Add missing link. ------------------------------------------------------------------------- -r1220 | zas_ | 2008-11-11 00:05:50 +0100 (Tue, 11 Nov 2008) | 1 line + Add grid to bar histogram, simplify the code and draw horizontal lines too. -Update documentation a bit: General, Image, Windows, Filtering, Editors and a part of Advanced (Image Overlay) options. ------------------------------------------------------------------------- -r1219 | zas_ | 2008-11-10 22:33:38 +0100 (Mon, 10 Nov 2008) | 1 line +commit 6b0883bae0f9124a6dcc8fcdd87ab24643a85d2f +Author: Laurent Monin +Date: Thu Feb 19 17:36:38 2009 +0000 -Let subsection menus match index style. ------------------------------------------------------------------------- -r1218 | zas_ | 2008-11-10 22:14:34 +0100 (Mon, 10 Nov 2008) | 1 line + Fix bug 2599857: file list sort order was wrong in many cases. -Cosmetic changes in image search and find duplicates shortcuts tables. ------------------------------------------------------------------------- -r1217 | zas_ | 2008-11-10 21:42:44 +0100 (Mon, 10 Nov 2008) | 1 line +commit 263a050716f3c9fdfced1accb4016fcdd11ade19 +Author: Vladimir Nadvornik +Date: Mon Feb 16 22:48:30 2009 +0000 -Tidy up. ------------------------------------------------------------------------- -r1216 | zas_ | 2008-11-10 21:40:50 +0100 (Mon, 10 Nov 2008) | 1 line + fixed compiler warning -Move from xhtml transitional to xhtml strict. ------------------------------------------------------------------------- -r1215 | zas_ | 2008-11-10 21:16:45 +0100 (Mon, 10 Nov 2008) | 1 line +commit 8422a0c8bd17c3ef09de058a7433e606124524b7 +Author: Vladimir Nadvornik +Date: Mon Feb 16 21:01:27 2009 +0000 -Minor cleanup. ------------------------------------------------------------------------- -r1214 | zas_ | 2008-11-10 20:37:17 +0100 (Mon, 10 Nov 2008) | 1 line + hopefully fixed a freeze on solaris -Tidy up and minor fixes. ------------------------------------------------------------------------- -r1213 | zas_ | 2008-11-10 19:02:09 +0100 (Mon, 10 Nov 2008) | 1 line +commit 243a78132e93b3fa27efc6cc3ca46d58bad06b25 +Author: Vladimir Nadvornik +Date: Sun Feb 15 19:25:55 2009 +0000 -Notes cleanup and minor stylistic fixes. ------------------------------------------------------------------------- -r1212 | zas_ | 2008-11-10 18:16:16 +0100 (Mon, 10 Nov 2008) | 1 line + added histogram pane -Various fixes and cleanup. ------------------------------------------------------------------------- -r1211 | zas_ | 2008-11-10 17:11:28 +0100 (Mon, 10 Nov 2008) | 1 line +commit a1385820cdb789c96a38b709f7b981725f81bdd1 +Author: Vladimir Nadvornik +Date: Sun Feb 15 17:27:48 2009 +0000 -Fix up some errors. ------------------------------------------------------------------------- -r1210 | zas_ | 2008-11-10 16:20:13 +0100 (Mon, 10 Nov 2008) | 1 line + fixed histogram drawing -Fix up unvalid xhtml. ------------------------------------------------------------------------- -r1209 | zas_ | 2008-11-10 15:56:11 +0100 (Mon, 10 Nov 2008) | 1 line +commit 63da7df8b6994ba78db433c8d13513967f54b324 +Author: Laurent Monin +Date: Sun Feb 15 15:58:01 2009 +0000 -Fix up a broken link. ------------------------------------------------------------------------- -r1208 | zas_ | 2008-11-10 15:10:39 +0100 (Mon, 10 Nov 2008) | 1 line + Remove redundant line of code. -Beautify the manual. ------------------------------------------------------------------------- -r1207 | zas_ | 2008-11-10 14:00:29 +0100 (Mon, 10 Nov 2008) | 1 line +commit a38c15108e52207831b08be4461b49f0d09926d3 +Author: Laurent Monin +Date: Sun Feb 15 15:56:48 2009 +0000 -Reformat more pages. ------------------------------------------------------------------------- -r1206 | zas_ | 2008-11-10 13:06:05 +0100 (Mon, 10 Nov 2008) | 1 line + Fix up few compilation warnings. -Reformat remaining options pages. ------------------------------------------------------------------------- -r1205 | zas_ | 2008-11-10 11:26:51 +0100 (Mon, 10 Nov 2008) | 1 line +commit a660cd93f81e921141fc7ddb57188c6c23d211c9 +Author: Vladimir Nadvornik +Date: Sun Feb 15 13:11:21 2009 +0000 -Reformatting: notes, advanced options page and more. ------------------------------------------------------------------------- -r1204 | zas_ | 2008-11-09 22:53:33 +0100 (Sun, 09 Nov 2008) | 1 line + histogram caching + histogram interface prepared for histogram pane -Reformatting. ------------------------------------------------------------------------- -r1203 | zas_ | 2008-11-09 18:17:19 +0100 (Sun, 09 Nov 2008) | 1 line +commit c5ead176be15971b27d90d0656b8fc26fa9eca17 +Author: Vladimir Nadvornik +Date: Sun Feb 15 09:36:53 2009 +0000 -Reformat and cleanup. ------------------------------------------------------------------------- -r1202 | zas_ | 2008-11-09 14:37:39 +0100 (Sun, 09 Nov 2008) | 1 line + separated "normal" and advanced exif, "Normal" exif is now in the + generic bar, advanced exif is in separate window. -More cleanup of tables. ------------------------------------------------------------------------- -r1201 | zas_ | 2008-11-09 14:06:16 +0100 (Sun, 09 Nov 2008) | 1 line +commit a6fb79a9aee3b16eadd450cfcd261f0d3fe9bd9d +Author: Vladimir Nadvornik +Date: Sat Feb 14 20:26:30 2009 +0000 -Cleanup some tables. ------------------------------------------------------------------------- -r1200 | zas_ | 2008-11-09 13:48:00 +0100 (Sun, 09 Nov 2008) | 1 line + droped Preferences dialog, sidebar should replace it completely -Drop most old css classes. ------------------------------------------------------------------------- -r1199 | zas_ | 2008-11-09 10:39:14 +0100 (Sun, 09 Nov 2008) | 1 line +commit ab0cc44129df43dc4bc0d0ec0e95e187a739f32c +Author: Vladimir Nadvornik +Date: Sat Feb 14 19:50:54 2009 +0000 -Move dialog descriptions to definitions lists, first step. ------------------------------------------------------------------------- -r1198 | zas_ | 2008-11-09 10:33:01 +0100 (Sun, 09 Nov 2008) | 1 line + replaced bar_info with an universal bar, restored the original + functionality (more or less) + bar configuration is not yet saved -Index cleanup. ------------------------------------------------------------------------- -r1197 | zas_ | 2008-11-09 10:28:59 +0100 (Sun, 09 Nov 2008) | 1 line +commit 310a646e67ba0c32c2384f553eecf512e283684d +Author: Laurent Monin +Date: Mon Feb 9 09:02:04 2009 +0000 -Move menu descriptions to definitions lists. ------------------------------------------------------------------------- -r1196 | zas_ | 2008-11-08 23:11:51 +0100 (Sat, 08 Nov 2008) | 1 line + Update ChangeLog using C locale date format, add a script to ease future updates. -Re-introduce Geeqie User Manual footer. ------------------------------------------------------------------------- -r1195 | zas_ | 2008-11-08 18:38:36 +0100 (Sat, 08 Nov 2008) | 1 line +commit b4f63e5e882b065ea834bd1e99081306284480c2 +Author: Vladimir Nadvornik +Date: Sat Feb 7 21:03:11 2009 +0000 -Simplify bottom navigation table. ------------------------------------------------------------------------- -r1194 | zas_ | 2008-11-08 18:24:02 +0100 (Sat, 08 Nov 2008) | 1 line + force at least one idle call before writting metadata + (without this the exit_program_write_metadata_cb could be called + before the exit_program function finished) -Use col tags with id in top and bottom navigation tables. ------------------------------------------------------------------------- -r1193 | zas_ | 2008-11-08 12:37:17 +0100 (Sat, 08 Nov 2008) | 1 line +commit 22f5a68f75212287ff3924432df1902bec16feba +Author: Vladimir Nadvornik +Date: Sat Feb 7 19:01:21 2009 +0000 -Add a generic spacer at the bottom of the page, remove now unused css classes. ------------------------------------------------------------------------- -r1192 | zas_ | 2008-11-08 11:59:45 +0100 (Sat, 08 Nov 2008) | 1 line + use metadata_read_* functions where possible + switch exiv2 to utf8 charset + support for exiv2 formatting that depends on other tags: + http://dev.robotbattle.com/bugs/view.php?id=0000516 -Add two css classes navtop and navbottom and remove unused ones. ------------------------------------------------------------------------- -r1191 | zas_ | 2008-11-08 11:49:18 +0100 (Sat, 08 Nov 2008) | 1 line +commit 9c04cb142531b3c5b31be148a40405a1ea103a53 +Author: Vladimir Nadvornik +Date: Fri Feb 6 23:49:03 2009 +0000 -Add style.css to list of files to install. ------------------------------------------------------------------------- -r1190 | zas_ | 2008-11-08 11:47:31 +0100 (Sat, 08 Nov 2008) | 1 line + Start with "Fit to window" in "Leave Zoom at previous setting" mode -Move css styles to an external stylesheet. ------------------------------------------------------------------------- -r1189 | zas_ | 2008-11-07 00:49:31 +0100 (Fri, 07 Nov 2008) | 1 line +commit c5b333518ad00d61c1e9ad0bc96c4faae43fc7c9 +Author: Vladimir Nadvornik +Date: Fri Feb 6 22:56:52 2009 +0000 -Remove reference to numbered section. ------------------------------------------------------------------------- -r1188 | zas_ | 2008-11-07 00:43:46 +0100 (Fri, 07 Nov 2008) | 1 line + do not switch to the next image on mouse click in split mode + it interferes with image switching too much -Remove references to numbered sections. ------------------------------------------------------------------------- -r1187 | zas_ | 2008-11-07 00:39:22 +0100 (Fri, 07 Nov 2008) | 1 line +commit 4e7f0d2a4ffcefeeacce220761a905cd105b75e2 +Author: Vladimir Nadvornik +Date: Fri Feb 6 22:41:47 2009 +0000 -Simplify the table. ------------------------------------------------------------------------- -r1186 | zas_ | 2008-11-06 21:01:32 +0100 (Thu, 06 Nov 2008) | 10 lines + improved labels of some menu items -Previous patch (revision 1185) for the comments-related segfault was incomplete, and as such, it broke keywords in files whose metadata had keywords but no comments. +commit 11a4cc2074aa9544a906434f40eda2b27d6ef5c1 +Author: Laurent Monin +Date: Wed Feb 4 17:15:30 2009 +0000 -This patch fixes that (and still fixes the case where one searches on -comments and hits a file with keywords but no comments). Lastly, I would -imagine that there exists a failure mode where one searches for a keyword and -hits a file with a comment but no keyword, and I imagine this patch should fix -that case as well. + Add year 2009 to copyright info everywhere. -Patch by Omari Stephens (aka xsdg). +commit db594bb6a56da7a25d58a3b2ec51f67bc4d0db49 +Author: Laurent Monin +Date: Wed Feb 4 16:50:24 2009 +0000 ------------------------------------------------------------------------- -r1185 | zas_ | 2008-11-04 18:26:46 +0100 (Tue, 04 Nov 2008) | 1 line + Fix up the copyright years info. -Fix a segfault occuring when searching for comments in a directory where at least one photo doesn't have a comment. The fix modifies comment_read() function to return FALSE when a comment doesn't exist. Patch by Omari Stephens. ------------------------------------------------------------------------- -r1184 | zas_ | 2008-11-04 18:11:53 +0100 (Tue, 04 Nov 2008) | 1 line +commit 16d8352b142b869d37d9d88f6f7b649ba9b6ba58 +Author: Laurent Monin +Date: Wed Feb 4 16:49:11 2009 +0000 -Do a gtk_init before the parsing of command line arguments to allow gtk specific options. (See http://library.gnome.org/devel/gtk/2.14/gtk-running.html). Patch by Klaus Ethgen. ------------------------------------------------------------------------- -r1183 | zas_ | 2008-10-27 14:31:39 +0100 (Mon, 27 Oct 2008) | 1 line + Update README header. -Do not install doc/Makefile*. Reported and fixed by Krzysztof Kotlenga. ------------------------------------------------------------------------- -r1182 | zas_ | 2008-10-26 20:27:20 +0100 (Sun, 26 Oct 2008) | 1 line +commit 932432f09417b4fe1ec05bfb92dfe946f7fd32ea +Author: Laurent Monin +Date: Wed Feb 4 16:47:02 2009 +0000 -Use h2/h3 tags where appropriate. ------------------------------------------------------------------------- -r1181 | bruclik | 2008-10-26 14:43:10 +0100 (Sun, 26 Oct 2008) | 2 lines + Speed up random slideshow, startup time decreases from minutes to seconds when amount of images is big. Patch by Kjell Morgenstern. -Fixed doc/Makefile.am according to renamed doc files. +commit 474d7e891184d4e5a09486b6ccbd777617d416eb +Author: Laurent Monin +Date: Wed Feb 4 14:51:23 2009 +0000 ------------------------------------------------------------------------- -r1180 | zas_ | 2008-10-25 16:42:52 +0200 (Sat, 25 Oct 2008) | 1 line + Do not show geeqie itself in editors menus. -Keyboard table cleanup attempt. Need more work. ------------------------------------------------------------------------- -r1179 | zas_ | 2008-10-25 15:14:00 +0200 (Sat, 25 Oct 2008) | 1 line +commit b93be6e123e894cf75fe9c5d89b1fe09ddacd639 +Author: Vladimir Nadvornik +Date: Tue Feb 3 18:04:10 2009 +0000 -Move menus to unordered lists - step 2. ------------------------------------------------------------------------- -r1178 | zas_ | 2008-10-25 13:02:09 +0200 (Sat, 25 Oct 2008) | 1 line + do not translate already translated texts from desktop files -Move menus to unordered lists - step 1. ------------------------------------------------------------------------- -r1177 | zas_ | 2008-10-25 10:49:07 +0200 (Sat, 25 Oct 2008) | 1 line +commit e03f199569195e75d937d21f9d982d0c7d5de119 +Author: Laurent Monin +Date: Tue Feb 3 13:52:20 2009 +0000 -Align Previous to the left, drop useless col tags. ------------------------------------------------------------------------- -r1176 | zas_ | 2008-10-25 10:14:34 +0200 (Sat, 25 Oct 2008) | 1 line + Add support for NoDisplay (entry is then hidden) and Type (only Application type is valid here) keys. -Drop meta CREATED and CHANGED since they will never be updated and svn takes care of versions. ------------------------------------------------------------------------- -r1175 | zas_ | 2008-10-25 10:10:11 +0200 (Sat, 25 Oct 2008) | 1 line +commit 7da00ede6e5a0c460b7bba6f0ce3f2f8767b3a4a +Author: Laurent Monin +Date: Tue Feb 3 13:50:10 2009 +0000 -Fix page titles. ------------------------------------------------------------------------- -r1174 | zas_ | 2008-10-25 10:07:57 +0200 (Sat, 25 Oct 2008) | 1 line + Reorder fields a bit and make flags field unsigned. -Drop chapters numbers from h1 title, and reformat top title a bit. ------------------------------------------------------------------------- -r1173 | zas_ | 2008-10-25 09:47:47 +0200 (Sat, 25 Oct 2008) | 1 line +commit 27e3c8d9b272241d6e1e73c691df6ea2f61b4424 +Author: Laurent Monin +Date: Tue Feb 3 08:41:21 2009 +0000 -Get rid off of chapters numbers in html documentation filenames. It will ease re-ordering. ------------------------------------------------------------------------- -r1172 | zas_ | 2008-10-24 00:45:44 +0200 (Fri, 24 Oct 2008) | 1 line + editor_list_get() now returns a sorted list, this way items appear in the same order in all menus. -Update legal notice and copyright to mention The Geeqie Team. ------------------------------------------------------------------------- -r1171 | zas_ | 2008-10-23 21:06:23 +0200 (Thu, 23 Oct 2008) | 1 line +commit 413722a5800f7f895e5068f0aec1441d13af5d4e +Author: Vladimir Nadvornik +Date: Mon Feb 2 20:32:59 2009 +0000 -With the help of tidy and sed, move html files to xhtml+css. Css classes were prefixed to ease future changes (like a common css file). ------------------------------------------------------------------------- -r1170 | zas_ | 2008-10-23 20:06:28 +0200 (Thu, 23 Oct 2008) | 1 line + improved placing of external commands in menu + small menu improvements -Change occurences of GQview and gqview to Geeqie and geeqie. Rename gqview_faq.html to faq.html ------------------------------------------------------------------------- -r1169 | zas_ | 2008-10-22 21:56:29 +0200 (Wed, 22 Oct 2008) | 1 line +commit ebfc5ad707b2a261dadc47508aed872d2e83460c +Author: Vladimir Nadvornik +Date: Sun Feb 1 22:35:40 2009 +0000 -Let Create thumbnails start in current directory (fallback to home directory if not available) as requested by Marcin Zajaczkowski (feature request 2166691). ------------------------------------------------------------------------- -r1168 | nadvornik | 2008-10-20 23:00:18 +0200 (Mon, 20 Oct 2008) | 3 lines + test TryExec, + xdg_data_home added to the list of directories -Fix a cut and paste error when implementing the comment search (Klaus -Ethgen) +commit ace63c487142b18a548b95d76f8056de0bead19d +Author: Vladimir Nadvornik +Date: Sun Feb 1 18:27:42 2009 +0000 ------------------------------------------------------------------------- -r1167 | nadvornik | 2008-10-20 19:13:32 +0200 (Mon, 20 Oct 2008) | 2 lines + fixed switch from single to split image -fixed failed assertion in exif_free +commit f94b569b1831c052099295c861f9d3f502072622 +Author: Vladimir Nadvornik +Date: Sun Feb 1 12:48:14 2009 +0000 ------------------------------------------------------------------------- -r1166 | nadvornik | 2008-10-18 22:17:55 +0200 (Sat, 18 Oct 2008) | 2 lines + read external editors from .desktop files -create xmp sidecar when needed +commit ff084f550845b0467a6202d62a7447940a4ea667 +Author: Laurent Monin +Date: Thu Jan 29 19:43:34 2009 +0000 ------------------------------------------------------------------------- -r1165 | nadvornik | 2008-10-18 21:20:27 +0200 (Sat, 18 Oct 2008) | 2 lines + Sort the list alphabetically and remove an empty line. -simple synchronization XMP <-> Exif, IPTC +commit 7532aed8f8f0bc89f1c5a2c742bc9021e5f8bbfc +Author: Vladimir Nadvornik +Date: Thu Jan 29 19:23:39 2009 +0000 ------------------------------------------------------------------------- -r1164 | nadvornik | 2008-10-18 20:22:57 +0200 (Sat, 18 Oct 2008) | 2 lines + switched to po/LINGUAS, see http://live.gnome.org/GnomeGoals/PoLinguas + (new glib-gettextize does not support the old method) -infrastructure for preprocessing of metadata +commit 77a9142b41ec6a5d9cac6d35c2a0c9d41052e147 +Author: Laurent Monin +Date: Thu Jan 29 19:07:07 2009 +0000 ------------------------------------------------------------------------- -r1163 | nadvornik | 2008-10-18 11:07:52 +0200 (Sat, 18 Oct 2008) | 2 lines + gint -> gboolean. -fixed bar_exif separator +commit 2e3dc8c8f14d75abb400c32a4c619e79bb371d77 +Author: Laurent Monin +Date: Thu Jan 29 19:00:24 2009 +0000 ------------------------------------------------------------------------- -r1162 | nadvornik | 2008-10-18 10:40:32 +0200 (Sat, 18 Oct 2008) | 2 lines + Invert Horizontally vs vertically zoom fit, it was a TRUE/FALSE mismatch, reported by Christopher Beland. -reordered advanced exif columns +commit ab98857be805f6bd9891d57506038e651dc81dde +Author: Laurent Monin +Date: Thu Jan 29 18:52:52 2009 +0000 ------------------------------------------------------------------------- -r1161 | nadvornik | 2008-10-18 10:31:25 +0200 (Sat, 18 Oct 2008) | 2 lines + Remove harmful documentation.helpdir and documentation.htmldir options. These paths can still be modified through --with-readmedir and --htmldir configure options. Reported by Christopher Beland. -no need to validate description, it is in utf8 +commit 96c8762cd141c1fca795e203a96307c80580d7f4 +Author: Vladimir Nadvornik +Date: Thu Jan 29 18:05:41 2009 +0000 ------------------------------------------------------------------------- -r1160 | nadvornik | 2008-10-18 00:00:07 +0200 (Sat, 18 Oct 2008) | 4 lines + added SIGBUS handler -improved custom exif look: -- use toggle instead of remove button -- display description instead of property key +commit 788b066dec51f6c89b63569de9f19fa8c781c3f4 +Author: Vladimir Nadvornik +Date: Mon Jan 26 21:08:05 2009 +0000 ------------------------------------------------------------------------- -r1159 | nadvornik | 2008-10-14 23:24:34 +0200 (Tue, 14 Oct 2008) | 2 lines + fixed compilation with lirc -follow Exiv2 SVN changes +commit c93ae602d0b44dc87e2ee104df5634c6eec44a92 +Author: Laurent Monin +Date: Mon Jan 26 14:59:49 2009 +0000 ------------------------------------------------------------------------- -r1158 | zas_ | 2008-10-12 10:49:45 +0200 (Sun, 12 Oct 2008) | 1 line + Silent two minor warnings: GtkSelectionData data field is guchar* while g_strndup() wants gchar * as first parameter. -French translation was updated. ------------------------------------------------------------------------- -r1157 | zas_ | 2008-10-12 10:43:14 +0200 (Sun, 12 Oct 2008) | 1 line +commit 4b69e1199fe33fa8d904b21a2ba3cc85f7b59e81 +Author: Laurent Monin +Date: Mon Jan 26 14:50:56 2009 +0000 -Add a button for each advanced entry in Properties Exif Panel that allow to remove it from display. It fixes bug 1962611. ------------------------------------------------------------------------- -r1156 | zas_ | 2008-10-12 10:36:53 +0200 (Sun, 12 Oct 2008) | 6 lines + Remove --enable-compile-warnings from autogen.sh, it was passed to configure which knows nothing about this option. -Better handling of accels map file writing errors. -Secure save is also used for those now, at the expense of -a bit of duplication of gtk functions. -It should fix bug 2146917 (debian BTS #501131), reported by -Stanislav Maslovski. +commit b68add2c1c1fd4f1d389fe0490986ffffd34302c +Author: Laurent Monin +Date: Mon Jan 26 14:49:09 2009 +0000 ------------------------------------------------------------------------- -r1155 | nadvornik | 2008-10-11 22:19:48 +0200 (Sat, 11 Oct 2008) | 6 lines + Move -Wall before -Wno-* options for them to have any effect. -added option to use exif thumbnails -- it requires exiv2 0.18 or the current svn -- it is disabled by default because the exif thumbnails - may be outdated if the image was edited +commit 47ed193a2a19fa34afc8c473353c66b5ea194f8e +Author: Laurent Monin +Date: Mon Jan 26 14:18:08 2009 +0000 + Keep -O0 over -O2 as requested by Vladimir. ------------------------------------------------------------------------- -r1154 | zas_ | 2008-10-07 21:34:11 +0200 (Tue, 07 Oct 2008) | 1 line +commit 4fcae73e00ff93c457770fbd05555e8e84122d7a +Author: Laurent Monin +Date: Mon Jan 26 08:36:23 2009 +0000 -French translation was updated. ------------------------------------------------------------------------- -r1153 | zas_ | 2008-10-07 21:29:13 +0200 (Tue, 07 Oct 2008) | 1 line + Add -Wformat and -Wformat-security gcc options when --enable-debug-flags is set, move default optimization to -O2 by default (-O0 is only useful for specific debugging purposes). -Fix up few signed vs unsigned warnings: exif_item_get_rational() last parameter is now of guint type. ------------------------------------------------------------------------- -r1152 | nadvornik | 2008-10-07 20:37:32 +0200 (Tue, 07 Oct 2008) | 2 lines +commit a24c1c60db9cca6a849920f8a7301530683d97ef +Author: Laurent Monin +Date: Mon Jan 26 08:30:30 2009 +0000 -Implement the search for image comment - patch by Klaus Ethgen + Fix a major bug in utf8_compare(): when case_sensitive is true, s1_t and s2_t were uninitialized, leading to unpredicable results. ------------------------------------------------------------------------- -r1151 | nadvornik | 2008-10-07 20:22:58 +0200 (Tue, 07 Oct 2008) | 2 lines +commit d80efe42eeb8d6af994245d0cf837d20eb852575 +Author: Vladimir Nadvornik +Date: Sun Jan 25 19:38:31 2009 +0000 -Fixed degree symbol encoding + added the original COPYING file from GQview - we can't rely on autogen.sh ------------------------------------------------------------------------- -r1150 | nadvornik | 2008-10-07 20:20:22 +0200 (Tue, 07 Oct 2008) | 2 lines +commit ebd61f57fe603dbedec50c2953e51c6522593cd6 +Author: Vladimir Nadvornik +Date: Sun Jan 25 18:14:08 2009 +0000 -Adding a vim modeline to all files - patch by Klaus Ethgen + updated ChangeLog from svn log ------------------------------------------------------------------------- -r1149 | nadvornik | 2008-10-05 20:25:44 +0200 (Sun, 05 Oct 2008) | 2 lines +commit 7debdfe9253260f5e855addd9daf389b59c20e1c +Author: Vladimir Nadvornik +Date: Sun Jan 25 16:58:19 2009 +0000 -fixed confirm_delete option + fixed gthread detection ------------------------------------------------------------------------- -r1148 | nadvornik | 2008-10-04 22:28:31 +0200 (Sat, 04 Oct 2008) | 2 lines +commit 66c057940975c76fcecaffab9e756b5f9306219d +Author: Vladimir Nadvornik +Date: Sun Jan 25 09:27:27 2009 +0000 -fixed charset of exiv2 strings in non-utf8 locales + do not ignore newly created sidecars ------------------------------------------------------------------------- -r1147 | nadvornik | 2008-10-01 22:57:56 +0200 (Wed, 01 Oct 2008) | 2 lines +commit ad9ac9d145e0e7df96118c66ee6dec927ebed702 +Author: Vladimir Nadvornik +Date: Sat Jan 24 13:46:08 2009 +0000 -Add support for GPSInfo - patch by Klaus Ethgen + adjusted marks spacing to align them with the marks filter ------------------------------------------------------------------------- -r1146 | nadvornik | 2008-09-29 23:17:19 +0200 (Mon, 29 Sep 2008) | 4 lines +commit 0074b6e5de0f19720985594a1a2b32114ec24204 +Author: Laurent Monin +Date: Sat Jan 24 13:38:53 2009 +0000 -The comment section in the meta file is the last section. However it do -not accept comment lines starting with a '['. This patch will fix that. -- patch by Klaus Ethgen + Fix incorrect translation. ------------------------------------------------------------------------- -r1145 | nadvornik | 2008-09-29 23:09:48 +0200 (Mon, 29 Sep 2008) | 2 lines +commit 5d7594d2acdccc19228350eddd1ab29aad990874 +Author: Vladimir Nadvornik +Date: Sat Jan 24 13:05:06 2009 +0000 -fixes executable right of images + fixed restoring of OSD at layout_image_full_screen_stop + https://sourceforge.net/tracker/index.php?func=detail&aid=2039839&group_id=222125&atid=1054680 ------------------------------------------------------------------------- -r1144 | nadvornik | 2008-09-29 23:01:30 +0200 (Mon, 29 Sep 2008) | 2 lines +commit fce85c3c86d56b122babaf26952cae937a3b61b9 +Author: Vladimir Nadvornik +Date: Sat Jan 24 12:15:01 2009 +0000 -enlarge the dupe window - patch by Klaus Ethgen + fixed glib warning ------------------------------------------------------------------------- -r1143 | nadvornik | 2008-09-27 20:48:32 +0200 (Sat, 27 Sep 2008) | 2 lines +commit 674b05efb895ed75533c07e74147082cf630e9cc +Author: Vladimir Nadvornik +Date: Sat Jan 24 10:09:29 2009 +0000 -updated preview loader to work with current svn version of libexiv2 + updated version string ------------------------------------------------------------------------- -r1142 | nadvornik | 2008-09-10 22:37:30 +0200 (Wed, 10 Sep 2008) | 8 lines +commit f9d7107581b3391183465454de6557de0abf7c98 +Author: Laurent Monin +Date: Sat Jan 24 07:41:23 2009 +0000 -use SHIFT for connected scroll and zoom + Silent two compilation warnings. -SHIFT + keys or mouse: affects all split windows -keys or mouse: affects only active window +commit 0c44dc1f02b5515cffe2bcc20f54e2d57208a916 +Author: Laurent Monin +Date: Sat Jan 24 07:36:21 2009 +0000 -CONTROL + mouse: moves fast (originally it was SHIFT + mouse) + French translation was updated. +commit 3928a6a6e59e900f2d1343ed3aef01b5c86ac337 +Author: Vladimir Nadvornik +Date: Fri Jan 23 22:53:02 2009 +0000 ------------------------------------------------------------------------- -r1141 | nadvornik | 2008-09-09 21:46:44 +0200 (Tue, 09 Sep 2008) | 3 lines + fixed possible crash -reverted buggy part of rev. 1138 - it made the filelist jump -unexpectedly +commit aadb9ca7ccde3464cf0ae80a7985e25227279c70 +Author: Vladimir Nadvornik +Date: Wed Jan 21 18:30:54 2009 +0000 ------------------------------------------------------------------------- -r1140 | nadvornik | 2008-09-08 21:57:51 +0200 (Mon, 08 Sep 2008) | 3 lines + enable threads by default -added possibility to redraw only the parts of image that are already -loaded +commit 0e1a79d60922a6aa11288531218a919774b29d5d +Author: Vladimir Nadvornik +Date: Wed Jan 21 18:16:26 2009 +0000 ------------------------------------------------------------------------- -r1139 | zas_ | 2008-09-08 17:53:01 +0200 (Mon, 08 Sep 2008) | 1 line + compilation fixes for older exiv2 -Fix a compiler warning regarding argument type. ------------------------------------------------------------------------- -r1138 | bruclik | 2008-09-08 01:01:30 +0200 (Mon, 08 Sep 2008) | 2 lines +commit e3086ee765ba371f1d6774d869d1ec7ba1f37590 +Author: Vladimir Nadvornik +Date: Tue Jan 20 22:53:09 2009 +0000 -Replaced gtk depreceated code. + improved metadata preferences ------------------------------------------------------------------------- -r1137 | zas_ | 2008-09-07 21:42:19 +0200 (Sun, 07 Sep 2008) | 1 line +commit 9d97c970f5f8dc30842c0672cb1ccf5ce8929681 +Author: Vladimir Nadvornik +Date: Tue Jan 20 22:29:31 2009 +0000 -Shorten config_window_apply() a bit, reduce code redunancy. ------------------------------------------------------------------------- -r1136 | zas_ | 2008-09-05 00:35:33 +0200 (Fri, 05 Sep 2008) | 1 line + fixed possible segfault -Update translations stats. ------------------------------------------------------------------------- -r1135 | zas_ | 2008-09-05 00:29:32 +0200 (Fri, 05 Sep 2008) | 1 line +commit 6d9a3f1923d1b8741b5b306022722affee5b4873 +Author: Vladimir Nadvornik +Date: Sun Jan 11 21:28:03 2009 +0000 -French translation was updated. ------------------------------------------------------------------------- -r1134 | zas_ | 2008-09-05 00:04:32 +0200 (Fri, 05 Sep 2008) | 1 line + show symlinks in filelist -Allow all Preferences pages to scroll vertically. Reduce code redundancy. ------------------------------------------------------------------------- -r1133 | zas_ | 2008-09-04 23:38:28 +0200 (Thu, 04 Sep 2008) | 1 line +commit 07f76a58add699461ed85263e2bf815f22725e2b +Author: Vladimir Nadvornik +Date: Sun Jan 11 21:24:58 2009 +0000 -Allow to change image.scroll_reset_method in Preferences > Image. ------------------------------------------------------------------------- -r1132 | nadvornik | 2008-09-04 23:19:09 +0200 (Thu, 04 Sep 2008) | 4 lines + fixed includes -fixed various problems with preserving viewport on image change, -options->image.scroll_reset_method should work again (it needs to be -added to the preferences dialog) +commit fa197cca9401a69b158ac956aa7aa333525c770c +Author: Vladimir Nadvornik +Date: Sun Jan 11 18:58:05 2009 +0000 ------------------------------------------------------------------------- -r1131 | nadvornik | 2008-09-03 23:54:49 +0200 (Wed, 03 Sep 2008) | 3 lines + added a status bar button for writting metadata immediately -load thumbnails with lower priority -TODO: maybe implement an exception for visible thumbnails +commit 9e2559ec2e298ade2632cfcb526a674d18ab3cdf +Author: Vladimir Nadvornik +Date: Sun Jan 11 12:13:30 2009 +0000 ------------------------------------------------------------------------- -r1130 | zas_ | 2008-09-03 23:13:02 +0200 (Wed, 03 Sep 2008) | 1 line + metadata write mode (direct or sidecar) made configurable for each file + format -Improve debug messages. ------------------------------------------------------------------------- -r1129 | nadvornik | 2008-09-03 22:43:10 +0200 (Wed, 03 Sep 2008) | 2 lines +commit 79003481053d92298710773530b0f1ae7dec54e0 +Author: Vladimir Nadvornik +Date: Sat Jan 10 20:40:37 2009 +0000 -adjusted default options + simplified metadata interface, dropped metadata_read, + fixes for older exiv2 versions ------------------------------------------------------------------------- -r1128 | nadvornik | 2008-09-03 22:29:32 +0200 (Wed, 03 Sep 2008) | 2 lines +commit 36c2beabcd63fb1d96bf6e639d66de24aa2f40d5 +Author: Laurent Monin +Date: Sun Jan 4 17:14:34 2009 +0000 -adjusted redraw priority relative to icon drawing + When "Remember print settings" is checked, save _all_ settings. Before this patch, text fields, text size, source, layout and image scale properties were not saved. ------------------------------------------------------------------------- -r1127 | nadvornik | 2008-09-03 21:58:21 +0200 (Wed, 03 Sep 2008) | 2 lines +commit ae1ea297b901d211bf2d2a84e253aecd4712817c +Author: Laurent Monin +Date: Sun Jan 4 10:32:47 2009 +0000 -dropped IMAGE_THROTTLE_LARGER_IMAGES code + French translation was updated. ------------------------------------------------------------------------- -r1126 | nadvornik | 2008-09-03 21:52:11 +0200 (Wed, 03 Sep 2008) | 2 lines +commit 1196bc75946359bfa10099df15c23808baff9a1e +Author: Laurent Monin +Date: Sat Jan 3 17:13:20 2009 +0000 -fixed handling of broken images + Silent warnings. ------------------------------------------------------------------------- -r1125 | nadvornik | 2008-09-01 21:18:32 +0200 (Mon, 01 Sep 2008) | 2 lines +commit 911b41365c783519b075eda51fb6dcd345975d68 +Author: Vladimir Nadvornik +Date: Sat Jan 3 15:29:08 2009 +0000 -improved pixbuf draw priority control + write keywords and comments with separate functions ------------------------------------------------------------------------- -r1124 | zas_ | 2008-09-01 19:29:07 +0200 (Mon, 01 Sep 2008) | 1 line +commit d16e38189ea96d485daed8424a2d1b6a9bcd0f8b +Author: Vladimir Nadvornik +Date: Fri Jan 2 23:14:01 2009 +0000 -Use a constant for minimal window size. Set it to 32 for all dialogs. ------------------------------------------------------------------------- -r1123 | zas_ | 2008-09-01 19:22:19 +0200 (Mon, 01 Sep 2008) | 1 line + fixed updating of selection after deleting the last image from the list -Remove redundant debug.h inclusion. ------------------------------------------------------------------------- -r1122 | nadvornik | 2008-08-31 23:19:00 +0200 (Sun, 31 Aug 2008) | 2 lines +commit dc4d041d5397e3a78c335babff70a409d04f3e54 +Author: Vladimir Nadvornik +Date: Fri Jan 2 22:57:09 2009 +0000 -fixed read ahead callback + do not enter a directory after rename + fixed dir tree updating + http://sourceforge.net/tracker/index.php?func=detail&aid=2481287&group_id=222125&atid=1054680 ------------------------------------------------------------------------- -r1121 | nadvornik | 2008-08-31 23:02:09 +0200 (Sun, 31 Aug 2008) | 2 lines +commit 067cf8e940216c935f818cc0f8f60113d54460c5 +Author: Vladimir Nadvornik +Date: Fri Jan 2 14:58:21 2009 +0000 -fixed error handling in image loader + added done callback to utilops + used the callback for metadata writting at exit and for renaming new + folder ------------------------------------------------------------------------- -r1120 | nadvornik | 2008-08-31 20:53:11 +0200 (Sun, 31 Aug 2008) | 2 lines +commit a63548cf3e28b4684281019f7e697df77cff1c3e +Author: Vladimir Nadvornik +Date: Fri Jan 2 09:39:14 2009 +0000 -fixed possible endless loop + fixed view_dir notification ------------------------------------------------------------------------- -r1119 | zas_ | 2008-08-31 14:29:49 +0200 (Sun, 31 Aug 2008) | 1 line +commit e040fa03e86b3dc95810f64b289682834d496010 +Author: Vladimir Nadvornik +Date: Fri Jan 2 09:26:23 2009 +0000 -Add a Save button to Preferences dialog, which allow to save options to file without quitting the application. ------------------------------------------------------------------------- -r1118 | zas_ | 2008-08-31 13:27:24 +0200 (Sun, 31 Aug 2008) | 1 line + sidecar files grouping was made case-insensitive + added possibility to use macros %raw, %image, %meta in extensions lists -Move quoted_value() and escquote_value() to misc.[ch]. ------------------------------------------------------------------------- -r1117 | zas_ | 2008-08-31 12:51:41 +0200 (Sun, 31 Aug 2008) | 1 line +commit 7f75485133bbb12e04fa8bc32936c6240e33f2ba +Author: Vladimir Nadvornik +Date: Sat Dec 27 22:53:07 2008 +0000 -Move miscellaneous functions to their own files (new misc.[ch]). ------------------------------------------------------------------------- -r1116 | nadvornik | 2008-08-31 12:08:48 +0200 (Sun, 31 Aug 2008) | 2 lines + fixed writting of legacy metadata -use GThreadPool +commit c6d5aeb7f792026da1a2fd400a55d57a1ebef8cf +Author: Vladimir Nadvornik +Date: Fri Dec 26 19:04:36 2008 +0000 ------------------------------------------------------------------------- -r1115 | nadvornik | 2008-08-31 11:20:29 +0200 (Sun, 31 Aug 2008) | 2 lines + optimized get_mark_func + fixed reference counting bug -improved thread support in image loader +commit 88e91c4e066266f68d13df4c4ad59ba279d1293c +Author: Vladimir Nadvornik +Date: Fri Dec 26 18:54:07 2008 +0000 ------------------------------------------------------------------------- -r1114 | zas_ | 2008-08-31 11:13:42 +0200 (Sun, 31 Aug 2008) | 1 line + remove cached entries on all changes -Move save/load_options() to options.[ch]. ------------------------------------------------------------------------- -r1113 | zas_ | 2008-08-31 10:59:39 +0200 (Sun, 31 Aug 2008) | 1 line +commit 7eeeeb77a09e7f9c4682bb65599e0c56cd757eba +Author: Vladimir Nadvornik +Date: Fri Dec 26 17:38:52 2008 +0000 -Move sync_options_with_current_state() call to save_options(). ------------------------------------------------------------------------- -r1112 | zas_ | 2008-08-31 10:41:42 +0200 (Sun, 31 Aug 2008) | 1 line + fixed previous change -Move some code to new functions, to simplify main(). ------------------------------------------------------------------------- -r1111 | zas_ | 2008-08-31 10:13:36 +0200 (Sun, 31 Aug 2008) | 1 line +commit ff8b93666eca33f39dea7659a1dbc3af641bef46 +Author: Vladimir Nadvornik +Date: Fri Dec 26 14:12:36 2008 +0000 -Fix two minor compilation warnings. ------------------------------------------------------------------------- -r1110 | nadvornik | 2008-08-30 22:15:47 +0200 (Sat, 30 Aug 2008) | 4 lines + improved sidecar writting + private metadata can be saved in xmp format -run image loader in separate thread -this feature is disabled by default for now, it must be enabled by -configure --enable-threads +commit 0c2e413a220f62599ae49b5cfae99a439345e398 +Author: Vladimir Nadvornik +Date: Thu Dec 25 12:39:34 2008 +0000 ------------------------------------------------------------------------- -r1109 | nadvornik | 2008-08-30 15:04:06 +0200 (Sat, 30 Aug 2008) | 2 lines + implemented a possibility to connect keywords with marks -prepared image loader code for threads +commit 2dd4ade4180168ae6dc6d743e6e8d8fa5b5b8a0a +Author: Vladimir Nadvornik +Date: Thu Dec 25 12:28:04 2008 +0000 ------------------------------------------------------------------------- -r1108 | zas_ | 2008-08-30 12:39:35 +0200 (Sat, 30 Aug 2008) | 5 lines + low-level keyword-to-mark functionality -Allow to override documentation paths through options: -- documentation.helpdir -- documentation.htmldir -Default values are set at configure time. +commit 4bf1446de98aefc0904a6b60ba13e30327299dd5 +Author: Vladimir Nadvornik +Date: Thu Dec 25 12:19:37 2008 +0000 ------------------------------------------------------------------------- -r1107 | nadvornik | 2008-08-29 22:53:53 +0200 (Fri, 29 Aug 2008) | 2 lines + perform internal commands in idle call -converted image loader to a GObject and use signals for notification +commit 31114993628896d4b36c9d361675e0c13b9faaca +Author: Vladimir Nadvornik +Date: Tue Dec 23 22:42:57 2008 +0000 ------------------------------------------------------------------------- -r1106 | nadvornik | 2008-08-29 14:35:13 +0200 (Fri, 29 Aug 2008) | 2 lines + allow writing of empty keywords/comment -do not access image_loader directly +commit b077c46b67f7697f450d627f549e5e7d840adacc +Author: Vladimir Nadvornik +Date: Tue Dec 23 20:53:44 2008 +0000 ------------------------------------------------------------------------- -r1105 | nadvornik | 2008-08-29 11:59:20 +0200 (Fri, 29 Aug 2008) | 2 lines + added change notification to bar_info.c -added new raw preview interface for legacy exif +commit 6c231281ce339d9f5f91a0cbc77c2de1c3216804 +Author: Vladimir Nadvornik +Date: Tue Dec 23 19:15:12 2008 +0000 ------------------------------------------------------------------------- -r1104 | nadvornik | 2008-08-29 11:38:10 +0200 (Fri, 29 Aug 2008) | 2 lines + improved buffering and notifications -fixed thumbnail loader for the new raw preview interface +commit 85fce4079a1b0ead93353919690ba3bdc5cb12ef +Author: Vladimir Nadvornik +Date: Tue Dec 23 19:13:48 2008 +0000 ------------------------------------------------------------------------- -r1103 | nadvornik | 2008-08-29 00:26:09 +0200 (Fri, 29 Aug 2008) | 4 lines + write changes immediately, the necessary buffering is done on lower + level in metadata.c -use mmaped files image loader -implemented new interface for extracting raw previews -experiments with previews support in SVN version of Exiv2 +commit e2359cd023f1c962fe68ac35dc883a25cea87ec5 +Author: Vladimir Nadvornik +Date: Mon Dec 22 23:25:15 2008 +0000 ------------------------------------------------------------------------- -r1102 | bruclik | 2008-08-28 14:51:02 +0200 (Thu, 28 Aug 2008) | 2 lines + file class made configurable in preferences -Removed converting fd->name to utf8 from file_data_set_collate_keys(), because fd->name is utf8. +commit 7180d81daf5ebd192610b1517f26e44b58147fb8 +Author: Laurent Monin +Date: Mon Dec 22 19:43:46 2008 +0000 ------------------------------------------------------------------------- -r1101 | zas_ | 2008-08-28 12:50:02 +0200 (Thu, 28 Aug 2008) | 1 line + French translation was updated. -Silent warnings about unused functions when lcms is not used. ------------------------------------------------------------------------- -r1100 | zas_ | 2008-08-27 19:02:14 +0200 (Wed, 27 Aug 2008) | 1 line +commit cbbd4a8733202ca3e436365eee667d551ea9c24a +Author: Vladimir Nadvornik +Date: Mon Dec 22 18:29:25 2008 +0000 -Comment out unused functions. ------------------------------------------------------------------------- -r1099 | zas_ | 2008-08-27 18:42:59 +0200 (Wed, 27 Aug 2008) | 1 line + write metadata after timeout, image change or dir change -Silent a compiler warning. ------------------------------------------------------------------------- -r1098 | zas_ | 2008-08-27 18:40:21 +0200 (Wed, 27 Aug 2008) | 1 line +commit c29865e349a4389ea74b2e067020eaaec19c91af +Author: Vladimir Nadvornik +Date: Mon Dec 22 18:15:26 2008 +0000 -const gpointer -> gconstpointer. ------------------------------------------------------------------------- -r1097 | zas_ | 2008-08-27 00:37:18 +0200 (Wed, 27 Aug 2008) | 1 line + show metadata options in preferences dialog -Use gpointer instead of void *. ------------------------------------------------------------------------- -r1096 | zas_ | 2008-08-27 00:30:40 +0200 (Wed, 27 Aug 2008) | 1 line +commit b3a6877012f4fbc9d6555f28a69067b0fd270ff6 +Author: Vladimir Nadvornik +Date: Sun Dec 21 21:36:58 2008 +0000 -Consistency: type * instead of type*. ------------------------------------------------------------------------- -r1095 | zas_ | 2008-08-27 00:22:51 +0200 (Wed, 27 Aug 2008) | 1 line + fixed safe delete -For the sake of consistency, use glib basic types everywhere. ------------------------------------------------------------------------- -r1094 | zas_ | 2008-08-26 23:19:33 +0200 (Tue, 26 Aug 2008) | 1 line +commit b2478a365c4f5c96bab935dba551e76dad358412 +Author: Vladimir Nadvornik +Date: Sun Dec 21 21:20:36 2008 +0000 -Indentation fixes. ------------------------------------------------------------------------- -r1093 | bruclik | 2008-08-26 22:21:30 +0200 (Tue, 26 Aug 2008) | 3 lines + most of the metadata options now works -Fixed segfault when is run inside directory with non valid uft-8 image -filename. +commit a9a31060a8b202604356236dbf751b621246e3e2 +Author: Vladimir Nadvornik +Date: Sun Dec 21 16:26:03 2008 +0000 ------------------------------------------------------------------------- -r1092 | bruclik | 2008-08-26 15:56:56 +0200 (Tue, 26 Aug 2008) | 2 lines + fixed new options -Fixed calling "Image search" function in a directory without image. +commit da50487d38ea80d187a57adb99bafe64d256bfc5 +Author: Laurent Monin +Date: Sun Dec 21 09:28:16 2008 +0000 ------------------------------------------------------------------------- -r1091 | nadvornik | 2008-08-26 00:45:38 +0200 (Tue, 26 Aug 2008) | 2 lines + French translation was updated. -correctly maintain selection during iconlist refresh +commit e9460139c2941c4df0f1058ba6ca121121339d98 +Author: Vladimir Nadvornik +Date: Sat Dec 20 23:18:20 2008 +0000 ------------------------------------------------------------------------- -r1090 | zas_ | 2008-08-26 00:20:45 +0200 (Tue, 26 Aug 2008) | 1 line + added options for metadata - not yet used -Whitespaces cleanup. ------------------------------------------------------------------------- -r1089 | bruclik | 2008-08-25 20:13:33 +0200 (Mon, 25 Aug 2008) | 3 lines +commit 40a73b68024292f074a1dadfd6e8db3dad0dcd23 +Author: Laurent Monin +Date: Sat Dec 20 21:47:04 2008 +0000 -Fixed segfaulting when alter image in directory without images. + Fix two minor compilation warnings. +commit f4733f77089a928d68a4cdfa7cee5fb8cf0b4b4d +Author: Laurent Monin +Date: Sat Dec 20 21:30:27 2008 +0000 ------------------------------------------------------------------------- -r1088 | nadvornik | 2008-08-25 18:58:27 +0200 (Mon, 25 Aug 2008) | 2 lines + Switch to fullscreen when double clicking on file in icon or list view. Feature request 1966042. The code was there since a long time but disabled, please report any issue. -removed unused code +commit 9643a2546bccb38da155cbfc4265e588b85a34b9 +Author: Vladimir Nadvornik +Date: Sat Dec 20 20:43:56 2008 +0000 ------------------------------------------------------------------------- -r1087 | zas_ | 2008-08-24 16:40:18 +0200 (Sun, 24 Aug 2008) | 1 line + use the workflow in utilops.c for metadata approving and writting + TODO: configuration -Typo fixes. ------------------------------------------------------------------------- -r1086 | zas_ | 2008-08-24 16:33:03 +0200 (Sun, 24 Aug 2008) | 1 line +commit af283c6af011fd76a43aeb4e4723f02e8d4ac645 +Author: Vladimir Nadvornik +Date: Tue Dec 16 12:59:23 2008 +0000 -Slight code redundancy reduction. ------------------------------------------------------------------------- -r1085 | zas_ | 2008-08-24 16:14:37 +0200 (Sun, 24 Aug 2008) | 1 line + queue metadata and write them in an idle callback -Drop redundant variable affectation. ------------------------------------------------------------------------- -r1084 | zas_ | 2008-08-24 15:22:08 +0200 (Sun, 24 Aug 2008) | 2 lines +commit b908ceb6bbb78a4edde47710e6291fa8eebb1717 +Author: Vladimir Nadvornik +Date: Mon Dec 15 22:47:31 2008 +0000 -Fix untranslated messages. French translation and POTFILES.in were updated. + prepared infrastructure for delayed metadata writting - refreshing + metadata immediately before writting is now possible + + modified metadata are stored in fd->modified_xmp ------------------------------------------------------------------------- -r1083 | zas_ | 2008-08-24 12:00:40 +0200 (Sun, 24 Aug 2008) | 1 line +commit b7fdc83d5f6e91fbf7d32377edd76c66ee23139c +Author: Laurent Monin +Date: Mon Dec 15 18:04:42 2008 +0000 -French translation was updated. ------------------------------------------------------------------------- -r1082 | zas_ | 2008-08-24 12:00:02 +0200 (Sun, 24 Aug 2008) | 1 line + Allow to drag keywords on files in list or icon view. Dragged text is appended to keywords list of the destination file. -Mark forgotten string for translation. ------------------------------------------------------------------------- -r1081 | zas_ | 2008-08-23 23:07:25 +0200 (Sat, 23 Aug 2008) | 1 line +commit d1b9489e72a06e38e580a370f5e8106386c71d73 +Author: Laurent Monin +Date: Tue Dec 9 19:12:38 2008 +0000 -Fix another missing separator bug in image overlay. This one was occuring with default string when no ISO data was available from exif. ------------------------------------------------------------------------- -r1080 | zas_ | 2008-08-23 22:46:31 +0200 (Sat, 23 Aug 2008) | 1 line + French translation was updated. -Minor optimization: no need to copy the whole remaining of the string, just copy next char. ------------------------------------------------------------------------- -r1079 | zas_ | 2008-08-23 19:35:57 +0200 (Sat, 23 Aug 2008) | 2 lines +commit 0871c1893d2705e53fc3a1c08af69ad7b94ceba9 +Author: Laurent Monin +Date: Tue Dec 9 17:51:28 2008 +0000 -Only display status if there is at least one file in the file list. + Allow to invert the current selection in Collection view. A new Selection submenu was added to the contextual menu, Select All and Select None were moved to it, and Invert selection was added. ------------------------------------------------------------------------- -r1078 | zas_ | 2008-08-23 19:00:59 +0200 (Sat, 23 Aug 2008) | 1 line +commit e5abe232dfcbab211d72c51b73de128a6d822af8 +Author: Laurent Monin +Date: Mon Dec 8 21:34:32 2008 +0000 -Remove unneeded type casting. ------------------------------------------------------------------------- -r1077 | nadvornik | 2008-08-23 10:42:12 +0200 (Sat, 23 Aug 2008) | 2 lines + Display error dialog with appropriate message when user is trying to open an invalid collection file. -fixed vd_refresh +commit 2d44c554b22f3305e1cbef26397ba96532e47cca +Author: Laurent Monin +Date: Mon Dec 8 21:33:14 2008 +0000 ------------------------------------------------------------------------- -r1076 | zas_ | 2008-08-23 00:09:54 +0200 (Sat, 23 Aug 2008) | 1 line + Cosmetic fix. -French translation was updated. ------------------------------------------------------------------------- -r1075 | zas_ | 2008-08-22 23:52:13 +0200 (Fri, 22 Aug 2008) | 7 lines +commit bb2f085701aa58240d46914e01f31bb918b130aa +Author: Laurent Monin +Date: Sun Dec 7 15:51:50 2008 +0000 -Add an option named layout.home_path which modifies the behavior of the Home button. -By default, pressing this button goes to the user's home directory. -When this option is set to a path, this path is used instead. -One can change the option value through Preferences > Advanced > Navigation -or directly in .geeqierc. -Feature proposed by Colin Clark. + Fix patch 1290: we only want to remove unused parameter warnings not all warnings produced by -Wextra, so just disable then using -Wno-unused-parameter and re-add -Wextra (was -W, but this is the old name). ------------------------------------------------------------------------- -r1074 | zas_ | 2008-08-22 00:49:30 +0200 (Fri, 22 Aug 2008) | 1 line +commit 85e6945309d39750d6543f86cddbfe8b0c166797 +Author: Vladimir Nadvornik +Date: Sun Dec 7 13:28:04 2008 +0000 -Typo fix: vf -> vd ------------------------------------------------------------------------- -r1073 | zas_ | 2008-08-22 00:47:49 +0200 (Fri, 22 Aug 2008) | 1 line + handle the case when io.open() fails -Replace macros VDLIST_INFO() and VDTREE_INFO() by shorter VDLIST() and VDTREE(). VDLIST_INFO(vd, part) becomes VDLIST(vd)->part. ------------------------------------------------------------------------- -r1072 | zas_ | 2008-08-22 00:36:20 +0200 (Fri, 22 Aug 2008) | 1 line +commit 68f82126997889074361955ca27534bb8fe0f446 +Author: Vladimir Nadvornik +Date: Sat Dec 6 21:24:38 2008 +0000 -Indentation fix. ------------------------------------------------------------------------- -r1071 | zas_ | 2008-08-21 00:26:34 +0200 (Thu, 21 Aug 2008) | 1 line + disabled the "unused parameter" warnings, they are harmless and nobody + is going to fix it ;) + (note: -W is equivalent to -Wextra) -Use constants instead of enum since value (0xffff0000) overflow INT_MAX on some platforms (seen on Solaris 10 SPARC system using the native Sun version 5.9 compilers). Reported by Jeffery Small. ------------------------------------------------------------------------- -r1070 | zas_ | 2008-08-21 00:19:35 +0200 (Thu, 21 Aug 2008) | 1 line +commit 0bd9d0fe13488d9e7d6578bca561aa94d398ba49 +Author: Laurent Monin +Date: Tue Dec 2 19:34:53 2008 +0000 -Do not return values of void functions. Reported by Jeffery Small. ------------------------------------------------------------------------- -r1069 | nadvornik | 2008-08-20 22:36:36 +0200 (Wed, 20 Aug 2008) | 2 lines + Rename few variables to make the code more readable. -update the FileData structure when a new folder is created +commit 33e01e14e35e31e55b0946d7bcc644649483d76b +Author: Laurent Monin +Date: Sun Nov 30 21:59:28 2008 +0000 ------------------------------------------------------------------------- -r1068 | nadvornik | 2008-08-20 00:58:31 +0200 (Wed, 20 Aug 2008) | 2 lines + keyword_list_find() -> find_string_in_list(), return gboolean. -improved refresh in view_dir_list +commit 81f6d0d4101e461d81b02e9261dcb3479aae3490 +Author: Laurent Monin +Date: Sun Nov 30 21:52:37 2008 +0000 ------------------------------------------------------------------------- -r1067 | nadvornik | 2008-08-19 23:01:29 +0200 (Tue, 19 Aug 2008) | 2 lines + metadata_set_keywords() -> metadata_set(). Use gboolean type for boolean parameters. -set fallback pixbuf in case of missing file +commit d931c87fc64a09eb9bdef1f6969977df4702adcf +Author: Laurent Monin +Date: Sun Nov 30 21:43:01 2008 +0000 ------------------------------------------------------------------------- -r1066 | nadvornik | 2008-08-19 22:58:23 +0200 (Tue, 19 Aug 2008) | 2 lines + Rename most comment_*() functions to more appropriate metadata_*(). -fixed possible segfault +commit 73e8f782f130f8899520a53de7b4c9d5f3451fdf +Author: Laurent Monin +Date: Sun Nov 30 11:46:34 2008 +0000 ------------------------------------------------------------------------- -r1065 | nadvornik | 2008-08-17 16:18:51 +0200 (Sun, 17 Aug 2008) | 3 lines + File filters cleanup: add .pef .dng and .arw extensions to default sidecar extensions list, add .k25 in Kodak raw extensions, simplify and optimize sidecar_ext_parse(). -removed code for maintaining filelist position, gtk_tree_view itself handles it -better +commit 73a3570010efa60255d7e1c230e50fbe6634dd80 +Author: Laurent Monin +Date: Thu Nov 27 19:10:59 2008 +0000 ------------------------------------------------------------------------- -r1064 | zas_ | 2008-08-17 11:36:02 +0200 (Sun, 17 Aug 2008) | 2 lines + Do not hardcode exif formatted prefix. -French translation was updated. +commit 40acac5694214bfcb9a6623a2cdd479a6a6991b4 +Author: Laurent Monin +Date: Thu Nov 27 12:34:39 2008 +0000 ------------------------------------------------------------------------- -r1063 | zas_ | 2008-08-17 11:30:45 +0200 (Sun, 17 Aug 2008) | 11 lines + Fix up sign-related warning. -Simplify things related to ViewFileInfoList * and ViewFileInfoIcon * type casting: -- drop VFICON_INFO() and VFLIST_INFO() macros -- rename VFLIST_INFO_POINTER() and VFICON_INFO_POINTER() to shorter VFLIST() and VFICON(). -- replace all related occurrences by shorter expressions. +commit fd5cd3190989657da2abf4fc66d9c4e47242f9cb +Author: Laurent Monin +Date: Thu Nov 27 12:34:03 2008 +0000 -For example: -VFICON_INFO(vf, columns) becomes VFICON(vf)->columns -VFLIST_INFO(vf, click_fd) becomes VFLIST(vf)->click_fd + Fix up unsigned expression always true warning. +commit 41ba7c59ae7008b423ba7a09de4cd781bd4a5b99 +Author: Laurent Monin +Date: Thu Nov 27 12:33:07 2008 +0000 + Resync .h with .c declarations. ------------------------------------------------------------------------- -r1062 | zas_ | 2008-08-17 11:00:33 +0200 (Sun, 17 Aug 2008) | 2 lines +commit 26f6d635c22a18bfc42144b3e848ab2b15481105 +Author: Laurent Monin +Date: Thu Nov 27 12:31:27 2008 +0000 -Move variable declaration at start of block. + Fix up pointer signedness warnings. ------------------------------------------------------------------------- -r1061 | nadvornik | 2008-08-17 01:37:26 +0200 (Sun, 17 Aug 2008) | 2 lines +commit bb28beac7482b10b36f0dac3efea45392c4942df +Author: Laurent Monin +Date: Thu Nov 27 12:30:49 2008 +0000 -marks in iconview made clickable + Fix up not a prototype warning. ------------------------------------------------------------------------- -r1060 | nadvornik | 2008-08-16 22:57:40 +0200 (Sat, 16 Aug 2008) | 2 lines +commit 402a7b74cb3f63247cb0451f7470e72aa42a53f2 +Author: Laurent Monin +Date: Thu Nov 27 12:30:10 2008 +0000 -keep files with non-zero marks in memory + Remove unused variable. ------------------------------------------------------------------------- -r1059 | nadvornik | 2008-08-16 22:34:14 +0200 (Sat, 16 Aug 2008) | 2 lines +commit fb0fc10f50e03ac9e154facbdccddbd6f380f60b +Author: Laurent Monin +Date: Thu Nov 27 12:29:38 2008 +0000 -implemented marks filter + Fix up deprecated function and not a prototype warnings. ------------------------------------------------------------------------- -r1058 | zas_ | 2008-08-16 09:18:16 +0200 (Sat, 16 Aug 2008) | 3 lines +commit 673dab6bdc4741c7822c4fd1bf5370b7a6edec00 +Author: Laurent Monin +Date: Wed Nov 26 20:39:50 2008 +0000 -Fix double escaping of image overlay text. -Bug 2051955, reported by Emmanuel Dupuis. + Handle return values better to silent some warnings. ------------------------------------------------------------------------- -r1057 | nadvornik | 2008-08-13 23:07:06 +0200 (Wed, 13 Aug 2008) | 2 lines +commit 3f7d30d146ce9a3e06ea3df7909c8be3e741f138 +Author: Laurent Monin +Date: Wed Nov 26 20:38:47 2008 +0000 -added keyboard map generator + Print a message if chown() or chmod() fail. ------------------------------------------------------------------------- -r1056 | nadvornik | 2008-08-13 22:46:06 +0200 (Wed, 13 Aug 2008) | 2 lines +commit a3cd380dd4155404ae24df7260fa45da108483e4 +Author: Laurent Monin +Date: Wed Nov 26 20:37:14 2008 +0000 -a workaround for http://bugzilla.gnome.org/show_bug.cgi?id=547669 + Fix up format vs type warning. ------------------------------------------------------------------------- -r1055 | nadvornik | 2008-08-12 22:21:25 +0200 (Tue, 12 Aug 2008) | 2 lines +commit 85b4c3d6b406043f2709f6f0f6ecea8a7418e9a2 +Author: Laurent Monin +Date: Tue Nov 25 17:32:51 2008 +0000 -fixed crash with float file list and geeqie --blank + Move comments/keywords read and write stuff to new metadata.{c,h}. ------------------------------------------------------------------------- -r1054 | nadvornik | 2008-08-11 20:53:19 +0200 (Mon, 11 Aug 2008) | 2 lines +commit 499063665b9e138a110e2881a05dc364961b7aaf +Author: Laurent Monin +Date: Tue Nov 25 17:01:03 2008 +0000 -fixed crash in geeqie --blank + Fix up unsigned expression always true/false warnings. ------------------------------------------------------------------------- -r1053 | nadvornik | 2008-08-11 19:45:26 +0200 (Mon, 11 Aug 2008) | 2 lines +commit 50306a69abd7e07458b7355cef5883f500fd029d +Author: Laurent Monin +Date: Sun Nov 23 22:05:27 2008 +0000 -fixed setting visible entry in view_dir_tree + Hide .gqv extension from collection name in collection window title and recent menu list. ------------------------------------------------------------------------- -r1051 | nadvornik | 2008-07-30 20:44:49 +0200 (Wed, 30 Jul 2008) | 2 lines +commit 968a923541ab98923ba0ea32b78da525c258ce68 +Author: Laurent Monin +Date: Sun Nov 23 16:16:09 2008 +0000 -updated ChangeLog from svn log + Rename wmsubclass and name to role, which corresponds better to the purpose of the parameter as it ends to be passed to gtk_window_set_role(). ------------------------------------------------------------------------- -r1050 | zas_ | 2008-07-28 20:35:19 +0200 (Mon, 28 Jul 2008) | 2 lines +commit 92a79f4e480d767c15510c2f69f2a548cf25e91e +Author: Laurent Monin +Date: Sun Nov 23 16:10:29 2008 +0000 -Move declarations at the beginning of blocks. + Drop useless wmclass stuff. Gtk will take care of it and as said in the documentation using gtk_window_set_wmclass() is sort of pointless. ------------------------------------------------------------------------- -r1049 | zas_ | 2008-07-28 20:07:42 +0200 (Mon, 28 Jul 2008) | 2 lines +commit 15aaf972f4a7a7490a1ebaef8900074a80124b2d +Author: Laurent Monin +Date: Sat Nov 22 22:54:51 2008 +0000 -Optimize tests even more using last changes. + Use the last selected images for the splitted views. Ie. when 5 images are selected, the last one is displayed, split quad while open images 5,4,3,2. It seems better to me. ------------------------------------------------------------------------- -r1048 | nadvornik | 2008-07-28 20:02:10 +0200 (Mon, 28 Jul 2008) | 2 lines +commit cce7425dc23b06d7267eb110ce0b8814e469285f +Author: Laurent Monin +Date: Sat Nov 22 22:43:18 2008 +0000 -do not free unallocated exif data + When more than one image is selected, Split Horizontal, Vertical and Quad will use selected images when initialized. ------------------------------------------------------------------------- -r1047 | zas_ | 2008-07-28 19:59:09 +0200 (Mon, 28 Jul 2008) | 2 lines +commit bebe10914b96c3a07f748984b3e6fba18cccfa94 +Author: Laurent Monin +Date: Sat Nov 22 22:10:10 2008 +0000 -Cache strcmp() result. + Tidy up. ------------------------------------------------------------------------- -r1046 | zas_ | 2008-07-28 19:56:56 +0200 (Mon, 28 Jul 2008) | 2 lines +commit 15821ce9a76d8afe0614dc5ed494161c67f8ad70 +Author: Laurent Monin +Date: Sat Nov 22 22:04:21 2008 +0000 -Optimize redundant tests. + Use common code for layout_image_setup_split_none() too. ------------------------------------------------------------------------- -r1045 | zas_ | 2008-07-28 19:55:06 +0200 (Mon, 28 Jul 2008) | 2 lines +commit 67f56552a7bf85f99f537d06885ebb71876a1c25 +Author: Laurent Monin +Date: Sat Nov 22 21:58:07 2008 +0000 -Move dest_dir variable to inner block. + layout_image_setup_split_*(): simplify code. ------------------------------------------------------------------------- -r1044 | zas_ | 2008-07-28 11:44:50 +0200 (Mon, 28 Jul 2008) | 2 lines +commit 25ac01ca80b9a13f843aad26643a21e2c991314e +Author: Laurent Monin +Date: Sat Nov 22 21:11:09 2008 +0000 -Reduce code redundancy and minor typo fixes. + layout_image_setup_split_*(): move common code to a new function layout_image_setup_split_common(). ------------------------------------------------------------------------- -r1043 | zas_ | 2008-07-28 11:14:10 +0200 (Mon, 28 Jul 2008) | 2 lines +commit 7f699d74c05ce9e81e83210a231e0ca86c7c004c +Author: Laurent Monin +Date: Sat Nov 22 16:24:23 2008 +0000 -French translation was updated. + Add a back button in the toolbar: it allows to go back and forth between two directories. Experimental, please test and comment on ml. ------------------------------------------------------------------------- -r1042 | zas_ | 2008-07-28 11:12:33 +0200 (Mon, 28 Jul 2008) | 2 lines +commit f7327cbd9fa590af75336916692ae40832ab32e7 +Author: Laurent Monin +Date: Thu Nov 20 17:28:34 2008 +0000 -Typo fix. + Force font weight and style to normal for keys. ------------------------------------------------------------------------- -r1041 | nadvornik | 2008-07-27 21:22:40 +0200 (Sun, 27 Jul 2008) | 2 lines +commit 540d86584baf5d6070b04254129f25e28a359541 +Author: Laurent Monin +Date: Thu Nov 20 17:23:46 2008 +0000 -abort file operations when the file list is empty + Fix up yet unmarked keys. ------------------------------------------------------------------------- -r1040 | nadvornik | 2008-07-27 20:20:59 +0200 (Sun, 27 Jul 2008) | 3 lines +commit ad4dacfae1907d2ba1e2e8889aac84d7d54121b1 +Author: Laurent Monin +Date: Thu Nov 20 11:46:43 2008 +0000 -remember path entered in file dialog -http://sourceforge.net/tracker/index.php?func=detail&aid=2028977&group_id=222125&atid=1054680 + Fix compilation warnings. ------------------------------------------------------------------------- -r1039 | nadvornik | 2008-07-27 15:46:24 +0200 (Sun, 27 Jul 2008) | 2 lines +commit a7fe24499d26daa57bfe1492bcb79aa8ddf4a92f +Author: Laurent Monin +Date: Thu Nov 20 07:22:56 2008 +0000 -speed-up of directory notification on deleting large number of files + Fix up some missing html code. ------------------------------------------------------------------------- -r1038 | nadvornik | 2008-07-27 11:51:28 +0200 (Sun, 27 Jul 2008) | 2 lines +commit 7d5e78bf230b7f02687139acadb0a29b2483b6af +Author: Laurent Monin +Date: Wed Nov 19 22:57:40 2008 +0000 -added "Symlink" as an example of "filter" command + More keys. ------------------------------------------------------------------------- -r1037 | nadvornik | 2008-07-27 10:57:12 +0200 (Sun, 27 Jul 2008) | 2 lines +commit 85c37fcfec1a92989c5301fc8dc9f2e8d5de2e8e +Author: Laurent Monin +Date: Wed Nov 19 22:46:27 2008 +0000 -improved updating of view_dir_tree + Fix text wrongly marked as key. ------------------------------------------------------------------------- -r1036 | nadvornik | 2008-07-27 10:40:47 +0200 (Sun, 27 Jul 2008) | 2 lines +commit 7f8324bf49907dfbbb582e8b96b6a10cad070490 +Author: Laurent Monin +Date: Wed Nov 19 22:42:20 2008 +0000 -fixed deleting of non-empty folder + Mark keyboard keys with a span and make them look like a key through css style. ------------------------------------------------------------------------- -r1035 | nadvornik | 2008-07-27 00:36:58 +0200 (Sun, 27 Jul 2008) | 2 lines +commit 5aba0342d8c4fef02b48d436d8bc65550f382a9b +Author: Laurent Monin +Date: Wed Nov 19 21:36:02 2008 +0000 -fixed spec file + Replace [Control] by shorter and more common [Ctrl]. ------------------------------------------------------------------------- -r1034 | nadvornik | 2008-07-27 00:26:08 +0200 (Sun, 27 Jul 2008) | 2 lines +commit 67e91a0baa946ac71c5e34c227d2769a11fab8d0 +Author: Laurent Monin +Date: Wed Nov 19 21:16:27 2008 +0000 -fixed invalid warning on running editors + Unify [Shift] and [Control] notation. ------------------------------------------------------------------------- -r1033 | nadvornik | 2008-07-26 22:34:24 +0200 (Sat, 26 Jul 2008) | 2 lines +commit 68a305ccc3b4e14657c8f88a7258d0d6b41f8dd2 +Author: Laurent Monin +Date: Wed Nov 19 20:53:53 2008 +0000 -updated version string + Move (and update) image pane shortcuts to a table. Simplify css styles for those tables. ------------------------------------------------------------------------- -r1032 | nadvornik | 2008-07-26 22:15:00 +0200 (Sat, 26 Jul 2008) | 3 lines +commit 7d76bf997f408ba74840477446b590492430ed7a +Author: Laurent Monin +Date: Wed Nov 19 17:42:36 2008 +0000 -dropped references to OpenOffice.org as suggested at -https://sourceforge.net/tracker/index.php?func=detail&aid=1972534&group_id=222125&atid=1054680 + Update documentation. ------------------------------------------------------------------------- -r1031 | nadvornik | 2008-07-26 22:02:20 +0200 (Sat, 26 Jul 2008) | 2 lines +commit 0362a31ed7bc49569607a2b6cbec49c6c4288da1 +Author: Laurent Monin +Date: Mon Nov 17 18:05:42 2008 +0000 -string cleanup + Fix up links and various enhancements. ------------------------------------------------------------------------- -r1030 | nadvornik | 2008-07-26 21:52:40 +0200 (Sat, 26 Jul 2008) | 2 lines +commit 84d0eeb779804970775a1a2b151094999df1f39c +Author: Laurent Monin +Date: Mon Nov 17 17:17:47 2008 +0000 -removed unused messages.desc_dlist + Remove colored background in headings for printable version. ------------------------------------------------------------------------- -r1029 | nadvornik | 2008-07-26 21:41:46 +0200 (Sat, 26 Jul 2008) | 2 lines +commit bb0dccd452eaaaad56dba8028f17789632e10ff8 +Author: Laurent Monin +Date: Mon Nov 17 17:09:44 2008 +0000 -fixed new folder command + Change metadata directory to be $XDG_DATA_HOME instead of $XDG_CACHE_HOME as discussed on the ml (obviously it has impact only when XDG support is set). Suggestion by Omari Stephens. ------------------------------------------------------------------------- -r1028 | nadvornik | 2008-07-26 21:33:36 +0200 (Sat, 26 Jul 2008) | 2 lines +commit b4ef8546331d9128999cc531faaa35556eb242d2 +Author: Laurent Monin +Date: Mon Nov 17 07:10:32 2008 +0000 -fixed renaming of directories + Comment out css code that slipped through by cut'n paste error. It may be useful at some time though. ------------------------------------------------------------------------- -r1027 | nadvornik | 2008-07-26 21:01:20 +0200 (Sat, 26 Jul 2008) | 2 lines +commit 4575fa4ac78579835bfd17a13ccdaf61989066a4 +Author: Laurent Monin +Date: Sun Nov 16 19:58:43 2008 +0000 -warn about changed file extensions + Add specific css for print media(has to be improved). ------------------------------------------------------------------------- -r1026 | nadvornik | 2008-07-26 20:33:49 +0200 (Sat, 26 Jul 2008) | 2 lines +commit 69f15e9da78b7404be497d657110cfad1a266722 +Author: Laurent Monin +Date: Sun Nov 16 16:32:14 2008 +0000 -added icon for changes without warnings + Update svn:ignore property: add some files and replace gqview by geeqie where applicable. ------------------------------------------------------------------------- -r1025 | nadvornik | 2008-07-26 20:17:56 +0200 (Sat, 26 Jul 2008) | 3 lines +commit 19e042015022768094ac5d2e90a32db866698467 +Author: Laurent Monin +Date: Sat Nov 15 20:17:14 2008 +0000 -allow only existing folders in destination dialog -http://sourceforge.net/tracker/index.php?func=detail&aid=2011243&group_id=222125&atid=1054680 + Implement preliminary support for XDG Base Directory Specification. + See http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html. + + This feature was requested for a long time (feature requests #1950978 and #2289481). + For now, it is disabled since it breaks compatibility with previous versions. + To be able to test it, you have to enable it by defining USE_XDG to 1 in main.h. + + geeqierc and other conf files are going to: + $XDG_CONFIG_HOME/geeqie/ (default to $HOME/.config/geeqie/). + + metadata and thumbnails cache (if std is not used) are going to: + $XDG_CACHE_HOME/geeqie/metadata/ (default to $HOME/.cache/geeqie/metadata/) + and $XDG_CACHE_HOME/geeqie/thumbnails/ (default to $HOME/.cache/geeqie/thumbnails/) + + collections are going to: + $XDG_DATA_HOME/geeqie/collections/ (default to $HOME/.local/share/geeqie/collections/) + + + Please test and report any issue. ------------------------------------------------------------------------- -r1024 | nadvornik | 2008-07-26 12:27:41 +0200 (Sat, 26 Jul 2008) | 2 lines +commit 6419843202ec66cdb0aa9e763a777a06f6617f19 +Author: Laurent Monin +Date: Sat Nov 15 20:01:25 2008 +0000 -clean up - checks are handled elsewhere + Replace cache_ensure_dir_exists() by new recursive_mkdir_if_not_exists(). ------------------------------------------------------------------------- -r1023 | nadvornik | 2008-07-26 11:58:25 +0200 (Sat, 26 Jul 2008) | 2 lines +commit 8b10477d6c451a8a952db33eea29a7d289261635 +Author: Vladimir Nadvornik +Date: Sat Nov 15 19:13:43 2008 +0000 -more checks for file operations + fixed usage of deprecated functions - patch by Omari Stephens ------------------------------------------------------------------------- -r1022 | nadvornik | 2008-07-26 00:04:55 +0200 (Sat, 26 Jul 2008) | 2 lines +commit 27bcad2478c6a0e5ebda8849c9a6bf67d4dfa222 +Author: Laurent Monin +Date: Sat Nov 15 17:48:31 2008 +0000 -improved error reporting + Rename check_for_home_path() to mkdir_if_not_exists(). ------------------------------------------------------------------------- -r1021 | zas_ | 2008-07-25 08:35:35 +0200 (Fri, 25 Jul 2008) | 2 lines +commit 788a57656d4085ba2e526a29648ec1477bafa46f +Author: Laurent Monin +Date: Sat Nov 15 17:30:45 2008 +0000 -Minor tidy up and optimization. + Use functions to return directories instead of constants. + Following functions were added: + get_collections_dir() + get_metadata_cache_dir() + get_rc_dir() + get_thumbnails_cache_dir() + get_trash_dir() + + They return the full directory path. ------------------------------------------------------------------------- -r1020 | zas_ | 2008-07-24 22:24:04 +0200 (Thu, 24 Jul 2008) | 6 lines +commit e5dd414c28b825002568ea99797a4ad7e5bb64ad +Author: Laurent Monin +Date: Sat Nov 15 10:35:43 2008 +0000 -Set GIO channels to binary encoding. -This is needed since messages from commands may not be UTF8-encoded -and g_io_channel_read_chars() may incorrectly interpret some characters. -In practice it was truncating some ISO-8859-1 messages containing some -french characters. This fixes it. + Add a wrapper around system() call named runcmd() which allows easier debugging. Improve the code launching the help browser. ------------------------------------------------------------------------- -r1019 | nadvornik | 2008-07-24 22:03:57 +0200 (Thu, 24 Jul 2008) | 3 lines +commit f56852b68c19db3f71dd69c44c8cc38ddbc644ae +Author: Laurent Monin +Date: Fri Nov 14 01:10:18 2008 +0000 -separated debugging log and debug CFLAGS -enable debugging log support by default + Fix up Makefile.am: add missing files and do not install template.html. ------------------------------------------------------------------------- -r1018 | nadvornik | 2008-07-24 00:19:16 +0200 (Thu, 24 Jul 2008) | 2 lines +commit 55bdd3344fd5f342d30362fe301808f826710112 +Author: Laurent Monin +Date: Wed Nov 12 21:38:00 2008 +0000 -indicate check warnings and errors in delete and rename dialogs + Fix a cut'n'paste error. ------------------------------------------------------------------------- -r1017 | nadvornik | 2008-07-23 22:53:05 +0200 (Wed, 23 Jul 2008) | 3 lines +commit 609fc80ba907a18bd5b0998b155580654e8749db +Author: Laurent Monin +Date: Wed Nov 12 21:34:55 2008 +0000 -removed file_data_add_change_info -reduced code redundancy - patch by Laurent, slightly modified + More precise description of the pan view find feature and a note about ressources eating was added. ------------------------------------------------------------------------- -r1016 | zas_ | 2008-07-23 19:38:04 +0200 (Wed, 23 Jul 2008) | 2 lines +commit 3005309e752b5f6d9378487b6856f18eb40b365f +Author: Laurent Monin +Date: Wed Nov 12 21:15:12 2008 +0000 -Minor tidy up. + Add some information about the pan view. ------------------------------------------------------------------------- -r1015 | zas_ | 2008-07-23 14:46:35 +0200 (Wed, 23 Jul 2008) | 2 lines +commit 3effb3cd44a5b956cd0d7416eec0f2aaea94b774 +Author: Laurent Monin +Date: Wed Nov 12 17:59:14 2008 +0000 -Tidy up. + Add a note about splitted view. ------------------------------------------------------------------------- -r1014 | zas_ | 2008-07-23 14:45:59 +0200 (Wed, 23 Jul 2008) | 2 lines +commit ae7645d7323cc203e69f73e51976c8d8ea7f7017 +Author: Laurent Monin +Date: Wed Nov 12 17:48:16 2008 +0000 -Use g_strconcat() instead of g_strdup_printf("%s%s", ...). + Add Connected zoom and Split menu items. ------------------------------------------------------------------------- -r1013 | zas_ | 2008-07-23 12:21:37 +0200 (Wed, 23 Jul 2008) | 2 lines +commit f055d32815e382a5cac2117e46ecad2b866e942b +Author: Laurent Monin +Date: Tue Nov 11 23:35:39 2008 +0000 -Simplify parse_out_relatives(). + Add missing s... ------------------------------------------------------------------------- -r1012 | zas_ | 2008-07-23 11:10:41 +0200 (Wed, 23 Jul 2008) | 2 lines +commit 5078d7e58ebafa27aac3c50703e1c0fcb180d186 +Author: Laurent Monin +Date: Tue Nov 11 23:30:13 2008 +0000 -Tidy up. + Minor fixes. ------------------------------------------------------------------------- -r1011 | zas_ | 2008-07-23 11:00:38 +0200 (Wed, 23 Jul 2008) | 2 lines +commit 0dabd8de27a7e8c7801dddc5d848246a001c97ac +Author: Laurent Monin +Date: Tue Nov 11 21:50:42 2008 +0000 -Fix missing newline at end of file. + Give a new style to menus. ------------------------------------------------------------------------- -r1010 | zas_ | 2008-07-23 10:59:29 +0200 (Wed, 23 Jul 2008) | 2 lines +commit ec48abb7939ef9919bbd905d147cfda9e884c457 +Author: Laurent Monin +Date: Tue Nov 11 21:49:33 2008 +0000 -Fix warning: passing argument 1 of 'gtk_tree_store_set' from incompatible pointer type + Fix missing parts. ------------------------------------------------------------------------- -r1009 | nadvornik | 2008-07-23 00:05:20 +0200 (Wed, 23 Jul 2008) | 2 lines +commit c1a85ebf0418f0b0b4fe9b175702ad86a5f5ed0b +Author: Laurent Monin +Date: Tue Nov 11 21:17:55 2008 +0000 -do not create duplicate FileData entries + Update main window menus description to match current Geeqie. ------------------------------------------------------------------------- -r1008 | nadvornik | 2008-07-22 23:46:08 +0200 (Tue, 22 Jul 2008) | 3 lines +commit d6bc7dc5e3b0a140523fcfc9eac0566b569e26eb +Author: Laurent Monin +Date: Tue Nov 11 21:17:03 2008 +0000 -basic infrastructure for early error and dangerous operations checking -it needs more work + Drop dots. ------------------------------------------------------------------------- -r1007 | nadvornik | 2008-07-22 20:27:12 +0200 (Tue, 22 Jul 2008) | 2 lines +commit f9071c86d19c4fb8417c8838aa1b99176e65342c +Author: Laurent Monin +Date: Tue Nov 11 10:32:03 2008 +0000 -clean up fd->change on error + Update exif pane documentation a bit. ------------------------------------------------------------------------- -r1006 | nadvornik | 2008-07-22 20:13:41 +0200 (Tue, 22 Jul 2008) | 3 lines +commit aeca4f3163c33f41b5cc1d0f371fb43d4138ae73 +Author: Laurent Monin +Date: Tue Nov 11 10:24:04 2008 +0000 -remove items from file_data_planned_change_hash when the operation is -canceled + Add Properties Options page. ------------------------------------------------------------------------- -r1005 | nadvornik | 2008-07-22 19:57:22 +0200 (Tue, 22 Jul 2008) | 2 lines +commit 51a2344638f5f1c738f03d023f4f3139f23761d7 +Author: Laurent Monin +Date: Tue Nov 11 10:09:09 2008 +0000 -fixed stop button in editor dialog + Advanced options documentation is now almost in sync with current geeqie. ------------------------------------------------------------------------- -r1004 | nadvornik | 2008-07-22 19:40:24 +0200 (Tue, 22 Jul 2008) | 2 lines +commit eeae9191dcb131a7fa9a85876b4314869bffe007 +Author: Laurent Monin +Date: Tue Nov 11 09:12:10 2008 +0000 -delete file_data_planned_change_hash when it is not used + More updates to advanced options documentation. Not yet finished. ------------------------------------------------------------------------- -r1003 | nadvornik | 2008-07-21 23:38:26 +0200 (Mon, 21 Jul 2008) | 3 lines +commit 9f3cc9ef382cae5ef8c0b6cc050844a796321a15 +Author: Laurent Monin +Date: Mon Nov 10 23:36:12 2008 +0000 -fixed -http://sourceforge.net/tracker/index.php?func=detail&aid=2019012&group_id=222125&atid=1054680 + Page cleanup and fixed. Remove obsolete note. ------------------------------------------------------------------------- -r1002 | nadvornik | 2008-07-21 22:50:24 +0200 (Mon, 21 Jul 2008) | 2 lines +commit f13928fef829928a7a807a11a5e4d9603592597c +Author: Laurent Monin +Date: Mon Nov 10 23:15:42 2008 +0000 -file_util_rename_dir should not return anything + Add missing link. ------------------------------------------------------------------------- -r1001 | nadvornik | 2008-07-21 22:40:29 +0200 (Mon, 21 Jul 2008) | 2 lines +commit 757b8ebc5495d81fb1fb1b531e2f5e682a0ad9c9 +Author: Laurent Monin +Date: Mon Nov 10 23:05:50 2008 +0000 -added notification handler to view_dir + Update documentation a bit: General, Image, Windows, Filtering, Editors and a part of Advanced (Image Overlay) options. ------------------------------------------------------------------------- -r1000 | zas_ | 2008-07-21 10:31:43 +0200 (Mon, 21 Jul 2008) | 2 lines +commit b72d86d30095cef07dd61ab15b949c74ef7c0d1c +Author: Laurent Monin +Date: Mon Nov 10 21:33:38 2008 +0000 -French translation was updated. + Let subsection menus match index style. ------------------------------------------------------------------------- -r999 | zas_ | 2008-07-20 17:21:06 +0200 (Sun, 20 Jul 2008) | 2 lines +commit 3c766c9124437106f8c84886680b53b1a17ff6c3 +Author: Laurent Monin +Date: Mon Nov 10 21:14:34 2008 +0000 -Update POTFILES.in. + Cosmetic changes in image search and find duplicates shortcuts tables. ------------------------------------------------------------------------- -r998 | zas_ | 2008-07-20 17:16:05 +0200 (Sun, 20 Jul 2008) | 2 lines +commit c410dad0a2007582d3460f222d52f193e8718d12 +Author: Laurent Monin +Date: Mon Nov 10 20:42:44 2008 +0000 -Move uri_*() functions to separate files: uri_utils.[ch] + Tidy up. ------------------------------------------------------------------------- -r997 | nadvornik | 2008-07-20 17:04:40 +0200 (Sun, 20 Jul 2008) | 1 line +commit 25735fd6a8ef1890f8b57d8ba9262f256c0243a7 +Author: Laurent Monin +Date: Mon Nov 10 20:40:50 2008 +0000 -periodic testing of changed files can be now disabled ------------------------------------------------------------------------- -r996 | zas_ | 2008-07-20 16:56:32 +0200 (Sun, 20 Jul 2008) | 3 lines + Move from xhtml transitional to xhtml strict. -Move history_list_*() functions to separate files: -history_list.c and history_list.h. +commit 60ff2fb4b9a39322f5f685310e7f3a8aea316c76 +Author: Laurent Monin +Date: Mon Nov 10 20:16:45 2008 +0000 ------------------------------------------------------------------------- -r995 | nadvornik | 2008-07-20 16:52:00 +0200 (Sun, 20 Jul 2008) | 2 lines + Minor cleanup. -implemented "create directory" command +commit 9b5b933912d1badd83d0e5691fc03f63be9673fc +Author: Laurent Monin +Date: Mon Nov 10 19:37:17 2008 +0000 ------------------------------------------------------------------------- -r994 | nadvornik | 2008-07-20 15:59:55 +0200 (Sun, 20 Jul 2008) | 2 lines + Tidy up and minor fixes. -fixed file copy/move dialog +commit e07b06778a28e3911cd830a44bc27333d017bd15 +Author: Laurent Monin +Date: Mon Nov 10 18:02:09 2008 +0000 ------------------------------------------------------------------------- -r993 | nadvornik | 2008-07-20 15:19:22 +0200 (Sun, 20 Jul 2008) | 5 lines + Notes cleanup and minor stylistic fixes. -fixed the case when a renamed file is detected by directory scanning -before the external rename commands exits. We have to update the -FileData structure immediately, othervise we would get duplicate -entries. +commit 82cd089fb37bda5fc685b5cd43486e8ff26d2679 +Author: Laurent Monin +Date: Mon Nov 10 17:16:16 2008 +0000 ------------------------------------------------------------------------- -r992 | zas_ | 2008-07-20 14:20:12 +0200 (Sun, 20 Jul 2008) | 2 lines + Various fixes and cleanup. -Optimize history_list_add_to_key() a bit. +commit 2ec1474ac5685ed1bf48a7dc35033b502dd81af1 +Author: Laurent Monin +Date: Mon Nov 10 16:11:28 2008 +0000 ------------------------------------------------------------------------- -r991 | nadvornik | 2008-07-20 13:29:12 +0200 (Sun, 20 Jul 2008) | 2 lines + Fix up some errors. -fixed previous checkin +commit 0a594f66306b196a0d9872de6fecc4b3cc9c3511 +Author: Laurent Monin +Date: Mon Nov 10 15:20:13 2008 +0000 ------------------------------------------------------------------------- -r990 | nadvornik | 2008-07-20 13:22:19 +0200 (Sun, 20 Jul 2008) | 2 lines + Fix up unvalid xhtml. -implemented directory rename and delete operations +commit 12fe48da5151ce1ef688f03ba44cde89c9eca910 +Author: Laurent Monin +Date: Mon Nov 10 14:56:11 2008 +0000 ------------------------------------------------------------------------- -r989 | zas_ | 2008-07-20 09:52:16 +0200 (Sun, 20 Jul 2008) | 2 lines + Fix up a broken link. -Move out test outside the loop. +commit f7216dd164399e1d34e22e5210544e2db6a84746 +Author: Laurent Monin +Date: Mon Nov 10 14:10:39 2008 +0000 ------------------------------------------------------------------------- -r988 | zas_ | 2008-07-19 15:57:03 +0200 (Sat, 19 Jul 2008) | 2 lines + Beautify the manual. -Tidy up. +commit b8742eb7f9aaafdb91ede39c8e6ebdb86b4959c3 +Author: Laurent Monin +Date: Mon Nov 10 13:00:29 2008 +0000 ------------------------------------------------------------------------- -r987 | zas_ | 2008-07-19 14:36:46 +0200 (Sat, 19 Jul 2008) | 2 lines + Reformat more pages. -Fix missing newline at end of file. +commit 7c5c88540dd54a35510d1a92a2b1512efbcc6ac5 +Author: Laurent Monin +Date: Mon Nov 10 12:06:05 2008 +0000 ------------------------------------------------------------------------- -r986 | nadvornik | 2008-07-19 11:06:24 +0200 (Sat, 19 Jul 2008) | 2 lines + Reformat remaining options pages. -increase reference count before sending notification in file_data_new +commit 2b02d7edc774a42f6b19cec9ba3da91416a73d65 +Author: Laurent Monin +Date: Mon Nov 10 10:26:51 2008 +0000 ------------------------------------------------------------------------- -r985 | nadvornik | 2008-07-18 23:20:49 +0200 (Fri, 18 Jul 2008) | 2 lines + Reformatting: notes, advanced options page and more. -fixed test for changed files in cache +commit 2f3f12a07cc0a9f8e7b6feb83824374df09711c0 +Author: Laurent Monin +Date: Sun Nov 9 21:53:33 2008 +0000 ------------------------------------------------------------------------- -r984 | zas_ | 2008-07-18 11:55:15 +0200 (Fri, 18 Jul 2008) | 2 lines + Reformatting. -Introduce image_loader_set_done_func(). +commit 49c72a6ce8b97276a8895d4598ca460738aef7cc +Author: Laurent Monin +Date: Sun Nov 9 17:17:19 2008 +0000 ------------------------------------------------------------------------- -r983 | zas_ | 2008-07-18 00:36:58 +0200 (Fri, 18 Jul 2008) | 2 lines + Reformat and cleanup. -Reduce code redundancy by moving common code to new menu_choice_get_match_type(). +commit 029e68efd2ef971a29888ed7e316b22d7e0637fd +Author: Laurent Monin +Date: Sun Nov 9 13:37:39 2008 +0000 ------------------------------------------------------------------------- -r982 | nadvornik | 2008-07-17 23:51:21 +0200 (Thu, 17 Jul 2008) | 2 lines + More cleanup of tables. -reload changed images +commit fcea33c191163edd21e0749e2ef9fae54d6aee95 +Author: Laurent Monin +Date: Sun Nov 9 13:06:16 2008 +0000 ------------------------------------------------------------------------- -r981 | zas_ | 2008-07-15 17:37:14 +0200 (Tue, 15 Jul 2008) | 2 lines + Cleanup some tables. -Move code from image_osd_update_cb() to separate functions. +commit cd465d19d90ae48c5ba6353f9eacdd2c4232a7f5 +Author: Laurent Monin +Date: Sun Nov 9 12:48:00 2008 +0000 ------------------------------------------------------------------------- -r980 | zas_ | 2008-07-15 16:32:00 +0200 (Tue, 15 Jul 2008) | 2 lines + Drop most old css classes. -Tidy up and code redundancy reduction. +commit eb65646611a5675182a3207280eb609cead4bded +Author: Laurent Monin +Date: Sun Nov 9 09:39:14 2008 +0000 ------------------------------------------------------------------------- -r979 | zas_ | 2008-07-15 14:52:02 +0200 (Tue, 15 Jul 2008) | 4 lines + Move dialog descriptions to definitions lists, first step. -Use a specific enum for image.zoom_mode values (ZoomMode) and -simplify calls to image_zoom_get_default(), dropping last parameter -which was always options->image.zoom_mode. +commit d9afdf93b04b6031b118fbd5a8c128e53adc9534 +Author: Laurent Monin +Date: Sun Nov 9 09:33:01 2008 +0000 ------------------------------------------------------------------------- -r978 | zas_ | 2008-07-13 16:50:07 +0200 (Sun, 13 Jul 2008) | 9 lines + Index cleanup. -Improve ways to specify html browser (used for help, see bug 2015099). -Two new rc file options were added: -- helpers.html_browser.command_name -- helpers.html_browser.command_line -These are checked first before trying common browser locations. -If these do not lead to a valid browser, then geeqie will -search for geeqie_html_browser script in the path, then -it will try various common browsers. +commit 4c65837d7b39fa0bc99179bcff5448f988750e99 +Author: Laurent Monin +Date: Sun Nov 9 09:28:59 2008 +0000 ------------------------------------------------------------------------- -r977 | zas_ | 2008-07-13 15:51:23 +0200 (Sun, 13 Jul 2008) | 2 lines + Move menu descriptions to definitions lists. -Apply debian-specific patch to launch help browser (bug 2015099). +commit db25a0d2c859dbfa694dff305fd195de00f40f1a +Author: Laurent Monin +Date: Sat Nov 8 22:11:51 2008 +0000 ------------------------------------------------------------------------- -r976 | zas_ | 2008-07-13 14:36:18 +0200 (Sun, 13 Jul 2008) | 3 lines + Re-introduce Geeqie User Manual footer. -Fix a segfault occuring when opening some collection files. -Skip all lines not starting with a # when only geometry is required. +commit 8d87ca532ad0db744b99bff3eb9322b889ca6cb1 +Author: Laurent Monin +Date: Sat Nov 8 17:38:36 2008 +0000 ------------------------------------------------------------------------- -r975 | zas_ | 2008-07-05 12:21:09 +0200 (Sat, 05 Jul 2008) | 2 lines + Simplify bottom navigation table. -Prevent segfault in certain conditions when displaying debug message. +commit 8b3ed1c3eb50c9455f89dfedc33b62e96b6fdcdc +Author: Laurent Monin +Date: Sat Nov 8 17:24:02 2008 +0000 ------------------------------------------------------------------------- -r974 | zas_ | 2008-07-05 00:49:04 +0200 (Sat, 05 Jul 2008) | 2 lines + Use col tags with id in top and bottom navigation tables. -French translation was updated. +commit 0bfece3a257621edda3fefbb44ed64667bac828b +Author: Laurent Monin +Date: Sat Nov 8 11:37:17 2008 +0000 ------------------------------------------------------------------------- -r973 | zas_ | 2008-07-04 22:32:48 +0200 (Fri, 04 Jul 2008) | 3 lines + Add a generic spacer at the bottom of the page, remove now unused css classes. -Optimize a bit when connected zoom and scrolling are unset, -just move the test outside loops. +commit 357f067eddfbf2e74cf835d8952d43cc1f139ac7 +Author: Laurent Monin +Date: Sat Nov 8 10:59:45 2008 +0000 ------------------------------------------------------------------------- -r972 | zas_ | 2008-07-04 19:21:07 +0200 (Fri, 04 Jul 2008) | 2 lines + Add two css classes navtop and navbottom and remove unused ones. -layout_color_button_press_cb(): tidy up, drop useless memory allocations, improve i18n. +commit 20f28b5685dd8cb5f6163e37786bf6806e46e02d +Author: Laurent Monin +Date: Sat Nov 8 10:49:18 2008 +0000 ------------------------------------------------------------------------- -r971 | nadvornik | 2008-07-03 22:16:15 +0200 (Thu, 03 Jul 2008) | 2 lines + Add style.css to list of files to install. -refresh thumbnails on file change +commit 2cff73427b00b0155b526b080dcd7ade516686cb +Author: Laurent Monin +Date: Sat Nov 8 10:47:31 2008 +0000 ------------------------------------------------------------------------- -r970 | nadvornik | 2008-07-03 21:38:19 +0200 (Thu, 03 Jul 2008) | 2 lines + Move css styles to an external stylesheet. -set fallback thumbnail pixbuf only if the loading really fails +commit 450ff6891d977952fa624731f8da7b8d7994305f +Author: Laurent Monin +Date: Thu Nov 6 23:49:31 2008 +0000 ------------------------------------------------------------------------- -r969 | zas_ | 2008-07-03 20:16:39 +0200 (Thu, 03 Jul 2008) | 4 lines + Remove reference to numbered section. -Fix missing references for the current directory in pan folder stuff. -It was causing an fd magick assertion failure. -Bug reported by Omari Stephens. +commit 5837dbaac197166d0cb046f3119767b44a9b9fa2 +Author: Laurent Monin +Date: Thu Nov 6 23:43:46 2008 +0000 ------------------------------------------------------------------------- -r968 | zas_ | 2008-07-03 10:33:10 +0200 (Thu, 03 Jul 2008) | 4 lines + Remove references to numbered sections. -Increase debugging info in file_data_ref() and file_data_unref(). -When compiled with DEBUG defined, file and line of the caller is displayed -in debug log. +commit d2b8b50ff787b13270e54bab25489d5cbb3ebacb +Author: Laurent Monin +Date: Thu Nov 6 23:39:22 2008 +0000 ------------------------------------------------------------------------- -r967 | zas_ | 2008-07-02 10:38:47 +0200 (Wed, 02 Jul 2008) | 5 lines + Simplify the table. -Optimize file_cache_get() by only moving element to front if needed -(most of the time there is no need). -Reduce code redundancy in file_cache_put() by calling file_cache_get(). -Enhance debugging code. +commit a5760993339ed221d1377724beb2485c28237945 +Author: Laurent Monin +Date: Thu Nov 6 20:01:32 2008 +0000 ------------------------------------------------------------------------- -r966 | nadvornik | 2008-06-30 23:08:28 +0200 (Mon, 30 Jun 2008) | 2 lines + Previous patch (revision 1185) for the comments-related segfault was incomplete, and as such, it broke keywords in files whose metadata had keywords but no comments. + + This patch fixes that (and still fixes the case where one searches on + comments and hits a file with keywords but no comments). Lastly, I would + imagine that there exists a failure mode where one searches for a keyword and + hits a file with a comment but no keyword, and I imagine this patch should fix + that case as well. + + Patch by Omari Stephens (aka xsdg). -fixed division by zero in pixbuf_renderer_get_scroll_center +commit ebf81820c51edd5ab948021d75e79f9d933937fe +Author: Laurent Monin +Date: Tue Nov 4 17:26:46 2008 +0000 ------------------------------------------------------------------------- -r965 | zas_ | 2008-06-29 17:51:54 +0200 (Sun, 29 Jun 2008) | 4 lines + Fix a segfault occuring when searching for comments in a directory where at least one photo doesn't have a comment. The fix modifies comment_read() function to return FALSE when a comment doesn't exist. Patch by Omari Stephens. -Merge thumb_loader_save_to_cache() and thumb_loader_mark_failure() -into thumb_loader_save_thumbnail(). -Most of the code was redundant. +commit 6a2475e57fdb9ee5e405acee23261b83f5c31230 +Author: Laurent Monin +Date: Tue Nov 4 17:11:53 2008 +0000 ------------------------------------------------------------------------- -r964 | zas_ | 2008-06-29 12:11:43 +0200 (Sun, 29 Jun 2008) | 3 lines + Do a gtk_init before the parsing of command line arguments to allow gtk specific options. (See http://library.gnome.org/devel/gtk/2.14/gtk-running.html). Patch by Klaus Ethgen. -Make better matching between options types in options.h and the rest of the code. -Most changes are from gint to gboolean pseudo type and between gint / guint. +commit 54ae8be35d9e69aa570cba8baf9f2e60ef018ba8 +Author: Laurent Monin +Date: Mon Oct 27 13:31:39 2008 +0000 ------------------------------------------------------------------------- -r963 | zas_ | 2008-06-28 10:01:36 +0200 (Sat, 28 Jun 2008) | 2 lines + Do not install doc/Makefile*. Reported and fixed by Krzysztof Kotlenga. -layout_image_drag_cb(): optimize when connected scrolling is unset. +commit 7771d3caa664a6563b229ee2b322e0d0fd4e4036 +Author: Laurent Monin +Date: Sun Oct 26 19:27:20 2008 +0000 ------------------------------------------------------------------------- -r962 | zas_ | 2008-06-28 09:43:37 +0200 (Sat, 28 Jun 2008) | 2 lines + Use h2/h3 tags where appropriate. -Reduce number of parameters (mostly unused), just pass the event pointer. +commit 15759e0f4884b7b9ec62c0d388707244c7ca0b58 +Author: Petr Ostadal +Date: Sun Oct 26 13:43:10 2008 +0000 ------------------------------------------------------------------------- -r961 | zas_ | 2008-06-28 02:44:31 +0200 (Sat, 28 Jun 2008) | 3 lines + Fixed doc/Makefile.am according to renamed doc files. -Fix warning: -thumb.c:31: warning : 'normalize_thumb' declared 'static' but never defined +commit eab8813037f2cedc25857bc889b55502b1666455 +Author: Laurent Monin +Date: Sat Oct 25 14:42:52 2008 +0000 ------------------------------------------------------------------------- -r960 | zas_ | 2008-06-28 00:57:48 +0200 (Sat, 28 Jun 2008) | 3 lines + Keyboard table cleanup attempt. Need more work. -image_osd_mkinfo(): pipe replacement by " - " separator was fixed to work correctly with -empty first element. +commit fcae84ab900d0203d2339e22888956a9c7565fe8 +Author: Laurent Monin +Date: Sat Oct 25 13:14:00 2008 +0000 ------------------------------------------------------------------------- -r959 | nadvornik | 2008-06-27 23:35:21 +0200 (Fri, 27 Jun 2008) | 3 lines + Move menus to unordered lists - step 2. -do not read keywords and comment between exif_read_fd and exif_free_fd -calls (fd->exif does not have reference counting) +commit f5596799545b5e6c482ef267d892b674f544e7fc +Author: Laurent Monin +Date: Sat Oct 25 11:02:09 2008 +0000 ------------------------------------------------------------------------- -r958 | nadvornik | 2008-06-27 23:09:15 +0200 (Fri, 27 Jun 2008) | 3 lines + Move menus to unordered lists - step 1. -added pixbuf_fallback function -fixed thumb loader for non-image files +commit 1f80d96fb573f9597105e5bd3f8d4062d90632f7 +Author: Laurent Monin +Date: Sat Oct 25 08:49:07 2008 +0000 ------------------------------------------------------------------------- -r957 | nadvornik | 2008-06-27 20:43:05 +0200 (Fri, 27 Jun 2008) | 2 lines + Align Previous to the left, drop useless col tags. -fixed crash in entering fullscreen during loading +commit ad8d4b695280105b9d60e155bbebddc0437c22fe +Author: Laurent Monin +Date: Sat Oct 25 08:14:34 2008 +0000 ------------------------------------------------------------------------- -r956 | zas_ | 2008-06-27 12:00:55 +0200 (Fri, 27 Jun 2008) | 2 lines + Drop meta CREATED and CHANGED since they will never be updated and svn takes care of versions. -osd_template_insert(): optimize and simplify using flags. +commit fdde32bc5523fba5186ffa2e53fdf931df96aaeb +Author: Laurent Monin +Date: Sat Oct 25 08:10:11 2008 +0000 ------------------------------------------------------------------------- -r955 | zas_ | 2008-06-27 10:05:51 +0200 (Fri, 27 Jun 2008) | 3 lines + Fix page titles. -image_osd_info_render(): ensure values are always escaped before using pango_layout_set_markup(). -Two helper functions were added: osd_template_insert() and osd_template_insert_and_free(). +commit fef02967c23d615d5ce61eb4718cb7e5ac369b51 +Author: Laurent Monin +Date: Sat Oct 25 08:07:57 2008 +0000 ------------------------------------------------------------------------- -r954 | zas_ | 2008-06-27 01:29:08 +0200 (Fri, 27 Jun 2008) | 2 lines + Drop chapters numbers from h1 title, and reformat top title a bit. -image_osd_info_render(): code cleanup and simplification, drop some useless memory allocations. +commit 0e44cb8c2afa66bc481ce2aff26e00995e9a8626 +Author: Laurent Monin +Date: Sat Oct 25 07:47:47 2008 +0000 ------------------------------------------------------------------------- -r953 | zas_ | 2008-06-26 17:59:20 +0200 (Thu, 26 Jun 2008) | 2 lines + Get rid off of chapters numbers in html documentation filenames. It will ease re-ordering. -Use flags for pr_zoom_*() functions. +commit 2ad4eda59805bb107467b55ebd9b4128c247324b +Author: Laurent Monin +Date: Thu Oct 23 22:45:44 2008 +0000 ------------------------------------------------------------------------- -r952 | zas_ | 2008-06-26 16:43:52 +0200 (Thu, 26 Jun 2008) | 2 lines + Update legal notice and copyright to mention The Geeqie Team. -Use stricter types for image options. +commit 89ae704a2393f7a89d56b9fc9bd233004c046219 +Author: Laurent Monin +Date: Thu Oct 23 19:06:23 2008 +0000 ------------------------------------------------------------------------- -r951 | zas_ | 2008-06-26 14:23:48 +0200 (Thu, 26 Jun 2008) | 2 lines + With the help of tidy and sed, move html files to xhtml+css. Css classes were prefixed to ease future changes (like a common css file). -Use flags instead of int parameters for pixbuf_renderer_overlay_add(). +commit d92d4a31ba855a0a9e282ea398fab5667896d445 +Author: Laurent Monin +Date: Thu Oct 23 18:06:28 2008 +0000 ------------------------------------------------------------------------- -r950 | zas_ | 2008-06-26 13:48:40 +0200 (Thu, 26 Jun 2008) | 3 lines + Change occurences of GQview and gqview to Geeqie and geeqie. Rename gqview_faq.html to faq.html -Only define ExifOrientationType if GQ_BUILD is not defined since -it is already defined in exif.h. +commit f21cc1844a4d3cc73a9852aee48f7087a35b773b +Author: Laurent Monin +Date: Wed Oct 22 19:56:29 2008 +0000 ------------------------------------------------------------------------- -r949 | zas_ | 2008-06-25 22:53:52 +0200 (Wed, 25 Jun 2008) | 2 lines + Let Create thumbnails start in current directory (fallback to home directory if not available) as requested by Marcin Zajaczkowski (feature request 2166691). -Tidy up. +commit e6eba8a87fe7c07c39dac82d07a298c65d31041a +Author: Vladimir Nadvornik +Date: Mon Oct 20 21:00:18 2008 +0000 ------------------------------------------------------------------------- -r948 | zas_ | 2008-06-25 22:22:02 +0200 (Wed, 25 Jun 2008) | 2 lines + Fix a cut and paste error when implementing the comment search (Klaus + Ethgen) -French translation was updated. +commit a06197472f69c64332a5e67e191e95654a8ed82d +Author: Vladimir Nadvornik +Date: Mon Oct 20 17:13:32 2008 +0000 ------------------------------------------------------------------------- -r947 | nadvornik | 2008-06-22 22:07:32 +0200 (Sun, 22 Jun 2008) | 2 lines + fixed failed assertion in exif_free -optimized marks drawing +commit 652c3a9fcca7b81091ac80e539df441a4cf6df22 +Author: Vladimir Nadvornik +Date: Sat Oct 18 20:17:55 2008 +0000 ------------------------------------------------------------------------- -r946 | nadvornik | 2008-06-22 22:01:20 +0200 (Sun, 22 Jun 2008) | 2 lines + create xmp sidecar when needed -show marks in iconview +commit fe16e7bfad961a8ebcc27b50a5dac4aef1b99396 +Author: Vladimir Nadvornik +Date: Sat Oct 18 19:20:27 2008 +0000 ------------------------------------------------------------------------- -r945 | nadvornik | 2008-06-22 12:01:26 +0200 (Sun, 22 Jun 2008) | 2 lines + simple synchronization XMP <-> Exif, IPTC -show sidecars in icon view +commit 003a4a917981dcc3d7004fe9896518ee86016198 +Author: Vladimir Nadvornik +Date: Sat Oct 18 18:22:57 2008 +0000 ------------------------------------------------------------------------- -r944 | nadvornik | 2008-06-22 11:40:57 +0200 (Sun, 22 Jun 2008) | 2 lines + infrastructure for preprocessing of metadata -fixed in-place renaming +commit 40e5b63b8b32a28f4ab9877d48ae5fe5fddd0acf +Author: Vladimir Nadvornik +Date: Sat Oct 18 09:07:52 2008 +0000 ------------------------------------------------------------------------- -r943 | nadvornik | 2008-06-22 11:19:42 +0200 (Sun, 22 Jun 2008) | 2 lines + fixed bar_exif separator -added possibility to disable grouping of selected files +commit 666154c6c7576bff4647b0a9dfff08665026cb42 +Author: Vladimir Nadvornik +Date: Sat Oct 18 08:40:32 2008 +0000 ------------------------------------------------------------------------- -r942 | nadvornik | 2008-06-22 00:01:45 +0200 (Sun, 22 Jun 2008) | 2 lines + reordered advanced exif columns -cache size made configurable +commit 2741df92d520da9047e0ca966e2f6fd095cb75c3 +Author: Vladimir Nadvornik +Date: Sat Oct 18 08:31:25 2008 +0000 ------------------------------------------------------------------------- -r941 | nadvornik | 2008-06-21 21:26:01 +0200 (Sat, 21 Jun 2008) | 2 lines + no need to validate description, it is in utf8 -measure pixbuf cache size in bytes +commit b8cfa7eea753ca24de28db8ee08c1a3c0fae32ad +Author: Vladimir Nadvornik +Date: Fri Oct 17 22:00:07 2008 +0000 ------------------------------------------------------------------------- -r940 | nadvornik | 2008-06-21 18:00:13 +0200 (Sat, 21 Jun 2008) | 2 lines + improved custom exif look: + - use toggle instead of remove button + - display description instead of property key -simple cache for loaded pixbufs +commit 0109fd0fea063d111a314fee97da5fc3adf13cdc +Author: Vladimir Nadvornik +Date: Tue Oct 14 21:24:34 2008 +0000 ------------------------------------------------------------------------- -r939 | nadvornik | 2008-06-21 13:05:55 +0200 (Sat, 21 Jun 2008) | 2 lines + follow Exiv2 SVN changes -renamed fd->pixbuf to fd->thumb_pixbuf +commit 100552d7587b35759b1492a3ba51df58565b96f5 +Author: Laurent Monin +Date: Sun Oct 12 08:49:45 2008 +0000 ------------------------------------------------------------------------- -r938 | nadvornik | 2008-06-19 00:26:52 +0200 (Thu, 19 Jun 2008) | 3 lines + French translation was updated. -implemented generic FileData cache -use it for caching decoded exif data +commit 2ed614f0a404a3f6311976ea15eb7839baaf51f5 +Author: Laurent Monin +Date: Sun Oct 12 08:43:14 2008 +0000 ------------------------------------------------------------------------- -r937 | nadvornik | 2008-06-17 22:25:05 +0200 (Tue, 17 Jun 2008) | 2 lines + Add a button for each advanced entry in Properties Exif Panel that allow to remove it from display. It fixes bug 1962611. -more robust thumbs progress bar +commit 801d2c19571cfc858f1348a05d17f22fb39d1679 +Author: Laurent Monin +Date: Sun Oct 12 08:36:53 2008 +0000 ------------------------------------------------------------------------- -r936 | nadvornik | 2008-06-17 21:56:21 +0200 (Tue, 17 Jun 2008) | 2 lines + Better handling of accels map file writing errors. + Secure save is also used for those now, at the expense of + a bit of duplication of gtk functions. + It should fix bug 2146917 (debian BTS #501131), reported by + Stanislav Maslovski. -do not allocate new buffer for thumbnails with correct orientation +commit d198cfafce20a7866d0a3dd80b1592ca59f5dcbc +Author: Vladimir Nadvornik +Date: Sat Oct 11 20:19:48 2008 +0000 ------------------------------------------------------------------------- -r935 | nadvornik | 2008-06-16 21:07:02 +0200 (Mon, 16 Jun 2008) | 2 lines + added option to use exif thumbnails + - it requires exiv2 0.18 or the current svn + - it is disabled by default because the exif thumbnails + may be outdated if the image was edited -fixed memory leak +commit dfb0fdc2f0b5cbc0207e360a3bcce9f6bd0b5c75 +Author: Laurent Monin +Date: Tue Oct 7 19:34:11 2008 +0000 ------------------------------------------------------------------------- -r934 | nadvornik | 2008-06-16 20:37:35 +0200 (Mon, 16 Jun 2008) | 2 lines + French translation was updated. -another try to free layout at exit +commit bce60ede0854a7a65ad009bd51b16549ba58bc1e +Author: Laurent Monin +Date: Tue Oct 7 19:29:13 2008 +0000 ------------------------------------------------------------------------- -r933 | nadvornik | 2008-06-15 23:52:15 +0200 (Sun, 15 Jun 2008) | 2 lines + Fix up few signed vs unsigned warnings: exif_item_get_rational() last parameter is now of guint type. -rotate thumbnails by exif +commit eee2c88df65f6cc0112be1098cdcf79f0560e947 +Author: Vladimir Nadvornik +Date: Tue Oct 7 18:37:32 2008 +0000 ------------------------------------------------------------------------- -r932 | nadvornik | 2008-06-15 22:09:15 +0200 (Sun, 15 Jun 2008) | 2 lines + Implement the search for image comment - patch by Klaus Ethgen -use FileData in thumb_loader +commit d8c1c93fea463eb0a309de7509676624774c0ad3 +Author: Vladimir Nadvornik +Date: Tue Oct 7 18:22:58 2008 +0000 ------------------------------------------------------------------------- -r931 | nadvornik | 2008-06-14 23:49:48 +0200 (Sat, 14 Jun 2008) | 2 lines + Fixed degree symbol encoding -use GtkSizeGroup to control initial size of split images +commit 0cd8f42464c6e1e152f1bb9e79b1144f4529b4d1 +Author: Vladimir Nadvornik +Date: Tue Oct 7 18:20:22 2008 +0000 ------------------------------------------------------------------------- -r930 | nadvornik | 2008-06-14 20:41:30 +0200 (Sat, 14 Jun 2008) | 2 lines + Adding a vim modeline to all files - patch by Klaus Ethgen -preserve image center on refresh +commit be6e4ea715f504545a7d0edc5767b0b82f71477f +Author: Vladimir Nadvornik +Date: Sun Oct 5 18:25:44 2008 +0000 ------------------------------------------------------------------------- -r929 | nadvornik | 2008-06-14 20:33:40 +0200 (Sat, 14 Jun 2008) | 4 lines + fixed confirm_delete option -use multiline description in vflist with large thumbnails -always display marks in the first column -show expander in "name" column +commit 69282a3890ec9264e5471249ad51c8fdb0ed7418 +Author: Vladimir Nadvornik +Date: Sat Oct 4 20:28:31 2008 +0000 ------------------------------------------------------------------------- -r928 | nadvornik | 2008-06-14 19:32:27 +0200 (Sat, 14 Jun 2008) | 2 lines + fixed charset of exiv2 strings in non-utf8 locales -join name and sidecars to one string +commit 7c50f768d91be9ff48b5cb64de603df00393c52f +Author: Vladimir Nadvornik +Date: Wed Oct 1 20:57:56 2008 +0000 ------------------------------------------------------------------------- -r927 | nadvornik | 2008-06-14 19:14:28 +0200 (Sat, 14 Jun 2008) | 2 lines + Add support for GPSInfo - patch by Klaus Ethgen -optimized vflist_setup_iter_recursive +commit 599380cc2099521bbf7c879666140943e1c684b6 +Author: Vladimir Nadvornik +Date: Mon Sep 29 21:17:19 2008 +0000 ------------------------------------------------------------------------- -r926 | nadvornik | 2008-06-14 14:43:39 +0200 (Sat, 14 Jun 2008) | 2 lines + The comment section in the meta file is the last section. However it do + not accept comment lines starting with a '['. This patch will fix that. + - patch by Klaus Ethgen -iconlist_refresh optimization +commit 1d1f495c4b3881f540059444ff5aa20eb9bda175 +Author: Vladimir Nadvornik +Date: Mon Sep 29 21:09:48 2008 +0000 ------------------------------------------------------------------------- -r925 | nadvornik | 2008-06-14 14:30:44 +0200 (Sat, 14 Jun 2008) | 2 lines + fixes executable right of images -fixed iconview update after deletion of selected image +commit 9ab09626f588694ad7ada2e522b74e205fd96795 +Author: Vladimir Nadvornik +Date: Mon Sep 29 21:01:30 2008 +0000 ------------------------------------------------------------------------- -r924 | zas_ | 2008-06-14 08:52:52 +0200 (Sat, 14 Jun 2008) | 2 lines + enlarge the dupe window - patch by Klaus Ethgen -Silent unused variable warning. +commit cf8398c63f204d0dcf375577446c732c66122f6b +Author: Vladimir Nadvornik +Date: Sat Sep 27 18:48:32 2008 +0000 ------------------------------------------------------------------------- -r923 | nadvornik | 2008-06-13 23:32:58 +0200 (Fri, 13 Jun 2008) | 2 lines + updated preview loader to work with current svn version of libexiv2 -optimized vflist_setup_iter +commit d4bc6c7e66a32bb0cc5a3e889ce8bef9b1374908 +Author: Vladimir Nadvornik +Date: Wed Sep 10 20:37:30 2008 +0000 ------------------------------------------------------------------------- -r922 | zas_ | 2008-06-13 15:33:11 +0200 (Fri, 13 Jun 2008) | 2 lines + use SHIFT for connected scroll and zoom + + SHIFT + keys or mouse: affects all split windows + keys or mouse: affects only active window + + CONTROL + mouse: moves fast (originally it was SHIFT + mouse) -French translation was updated. +commit f7a5afb6959672b77b973544b217867329a30c5f +Author: Vladimir Nadvornik +Date: Tue Sep 9 19:46:44 2008 +0000 ------------------------------------------------------------------------- -r921 | zas_ | 2008-06-13 14:27:41 +0200 (Fri, 13 Jun 2008) | 5 lines + reverted buggy part of rev. 1138 - it made the filelist jump + unexpectedly -Revert patches 759 and 760. -759 patch broke adding selection of files through sort manager -to an unopened collection. +commit a7c9810b152dd9bb01d18e7d048f405d8f11f0ac +Author: Vladimir Nadvornik +Date: Mon Sep 8 19:57:51 2008 +0000 + added possibility to redraw only the parts of image that are already + loaded ------------------------------------------------------------------------- -r920 | zas_ | 2008-06-13 13:51:23 +0200 (Fri, 13 Jun 2008) | 2 lines +commit 383624b87b5f9ea402e0fe4479b955f591025f73 +Author: Laurent Monin +Date: Mon Sep 8 15:53:01 2008 +0000 -Display total size of files in collection window, for the list and for the selection. + Fix a compiler warning regarding argument type. ------------------------------------------------------------------------- -r919 | zas_ | 2008-06-13 13:11:57 +0200 (Fri, 13 Jun 2008) | 4 lines +commit a53fb65f7e552f4a07760fd72dfd0a6caa5753ff +Author: Petr Ostadal +Date: Sun Sep 7 23:01:30 2008 +0000 -Optionnally display directory's date in list view. -It can be set through Preferences > Advanced > Behavior and -is saved to rc file as layout.show_directory_date option. + Replaced gtk depreceated code. ------------------------------------------------------------------------- -r918 | zas_ | 2008-06-13 00:43:32 +0200 (Fri, 13 Jun 2008) | 7 lines +commit a5aea8fd342ca8d4834464428cab25d373925409 +Author: Laurent Monin +Date: Sun Sep 7 19:42:19 2008 +0000 -load_options_from(): -- do not copy option name and value anywhere, only copy value_all to a separate buffer -- allow more relaxed syntax on read, so we can correctly read option name and value - even if user made some errors like replacing ':' by '=' or inserting a space before ':'. -- minor aesthetical changes + Shorten config_window_apply() a bit, reduce code redunancy. +commit 587b4b8d1136e5f043da5566c996cd7a6e288387 +Author: Laurent Monin +Date: Thu Sep 4 22:35:33 2008 +0000 ------------------------------------------------------------------------- -r917 | zas_ | 2008-06-12 23:21:32 +0200 (Thu, 12 Jun 2008) | 2 lines + Update translations stats. -Add a comment about relative positions of image overlay in the rc file. +commit aff258e59eca1aa6a8bd8e5401fccbfceaf4954f +Author: Laurent Monin +Date: Thu Sep 4 22:29:32 2008 +0000 ------------------------------------------------------------------------- -r916 | zas_ | 2008-06-12 22:33:51 +0200 (Thu, 12 Jun 2008) | 6 lines + French translation was updated. -Allow to set image overlay info position through options: -- image_overlay.common.x -- image_overlay.common.y +commit 9b64bd058039a1d7d926670d90bffadeb0db3bb4 +Author: Laurent Monin +Date: Thu Sep 4 22:04:32 2008 +0000 -For now, there are only editable through rc file. + Allow all Preferences pages to scroll vertically. Reduce code redundancy. ------------------------------------------------------------------------- -r915 | zas_ | 2008-06-12 22:17:22 +0200 (Thu, 12 Jun 2008) | 6 lines +commit aa81bf7cdffe666d7e5b7098c564d50e46401312 +Author: Laurent Monin +Date: Thu Sep 4 21:38:28 2008 +0000 -Move some functions from image.[ch] to image-overlay.c and make them static: -- image_overlay_add() -- image_overlay_set() -- image_overlay_remove() -- image_overlay_get() (unused) + Allow to change image.scroll_reset_method in Preferences > Image. ------------------------------------------------------------------------- -r914 | nadvornik | 2008-06-12 20:30:33 +0200 (Thu, 12 Jun 2008) | 2 lines +commit baedcd2f82ac6f4b819d9919e280a54c7edaa6b7 +Author: Vladimir Nadvornik +Date: Thu Sep 4 21:19:09 2008 +0000 -reverted changes in layout_close made in rev. 890 and 901 + fixed various problems with preserving viewport on image change, + options->image.scroll_reset_method should work again (it needs to be + added to the preferences dialog) ------------------------------------------------------------------------- -r913 | nadvornik | 2008-06-10 21:25:21 +0200 (Tue, 10 Jun 2008) | 2 lines +commit 9050223df5347b7d2f1ed1d23669e05f19405f77 +Author: Vladimir Nadvornik +Date: Wed Sep 3 21:54:49 2008 +0000 -fixed vdtree_sort_cb + load thumbnails with lower priority + TODO: maybe implement an exception for visible thumbnails ------------------------------------------------------------------------- -r912 | nadvornik | 2008-06-10 20:39:19 +0200 (Tue, 10 Jun 2008) | 2 lines +commit e1a5a486095b6987c45f9612c97816a6b01f1de1 +Author: Laurent Monin +Date: Wed Sep 3 21:13:02 2008 +0000 -fixed segfault in vd_rename_cb + Improve debug messages. ------------------------------------------------------------------------- -r911 | nadvornik | 2008-06-10 20:19:17 +0200 (Tue, 10 Jun 2008) | 2 lines +commit 6f89fefc8a298f05304f3f7cab37fc76df97c2b8 +Author: Vladimir Nadvornik +Date: Wed Sep 3 20:43:10 2008 +0000 -dropped vficon_sync, use vficon_refresh everywhere + adjusted default options ------------------------------------------------------------------------- -r910 | zas_ | 2008-06-10 13:55:18 +0200 (Tue, 10 Jun 2008) | 2 lines +commit c518bcef3c44e37ec7cdc935961607db5113f8b5 +Author: Vladimir Nadvornik +Date: Wed Sep 3 20:29:32 2008 +0000 -collection_from_dnd_data(): simplify and optimize. + adjusted redraw priority relative to icon drawing ------------------------------------------------------------------------- -r909 | zas_ | 2008-06-10 13:27:35 +0200 (Tue, 10 Jun 2008) | 2 lines +commit 48519673cc4fea79e657453ed4785457a8e59ea2 +Author: Vladimir Nadvornik +Date: Wed Sep 3 19:58:21 2008 +0000 -collection_info_list_to_dnd_data(): simplify and optimize. + dropped IMAGE_THROTTLE_LARGER_IMAGES code ------------------------------------------------------------------------- -r908 | nadvornik | 2008-06-09 22:27:39 +0200 (Mon, 09 Jun 2008) | 2 lines +commit 47a0c37d34499a1f71085093447789949350e063 +Author: Vladimir Nadvornik +Date: Wed Sep 3 19:52:11 2008 +0000 -moved notification to view_file.c + fixed handling of broken images ------------------------------------------------------------------------- -r907 | nadvornik | 2008-06-09 21:43:56 +0200 (Mon, 09 Jun 2008) | 2 lines +commit 64aea117f708ea87c87ce2706d4c6b1bafa21541 +Author: Vladimir Nadvornik +Date: Mon Sep 1 19:18:32 2008 +0000 -run idle function just once + improved pixbuf draw priority control ------------------------------------------------------------------------- -r906 | nadvornik | 2008-06-09 21:41:37 +0200 (Mon, 09 Jun 2008) | 2 lines +commit c6db02fc9beb44c3f4921cb362c397ff0a54ba26 +Author: Laurent Monin +Date: Mon Sep 1 17:29:07 2008 +0000 -use vficon_refresh for updating + Use a constant for minimal window size. Set it to 32 for all dialogs. ------------------------------------------------------------------------- -r905 | nadvornik | 2008-06-09 21:00:47 +0200 (Mon, 09 Jun 2008) | 2 lines +commit bf183b8e89e1244c13f8812bd51a134dd82e66d0 +Author: Laurent Monin +Date: Mon Sep 1 17:22:19 2008 +0000 -handle deletion of selected files + Remove redundant debug.h inclusion. ------------------------------------------------------------------------- -r904 | nadvornik | 2008-06-09 20:28:28 +0200 (Mon, 09 Jun 2008) | 2 lines +commit 14596dddc9e279d6444b473378668618b0200842 +Author: Vladimir Nadvornik +Date: Sun Aug 31 21:19:00 2008 +0000 -optimized vficon_refresh_real + fixed read ahead callback ------------------------------------------------------------------------- -r903 | zas_ | 2008-06-09 12:10:34 +0200 (Mon, 09 Jun 2008) | 2 lines +commit 0aef642959d09a0a417e3a1bd9838290673da331 +Author: Vladimir Nadvornik +Date: Sun Aug 31 21:02:09 2008 +0000 -Minor fixes and add a note about variable declaration. + fixed error handling in image loader ------------------------------------------------------------------------- -r902 | zas_ | 2008-06-09 09:14:46 +0200 (Mon, 09 Jun 2008) | 2 lines +commit b10a2e1226a762c6f5e5a76255469c9a58312937 +Author: Vladimir Nadvornik +Date: Sun Aug 31 18:53:11 2008 +0000 -Use unsigned type for marks since it is used as a bitfield. + fixed possible endless loop ------------------------------------------------------------------------- -r901 | nadvornik | 2008-06-09 09:06:53 +0200 (Mon, 09 Jun 2008) | 2 lines +commit 131dc85e54bb154ece413c99e10d0bb07aced996 +Author: Laurent Monin +Date: Sun Aug 31 12:29:49 2008 +0000 -fixed saving options on exit + Add a Save button to Preferences dialog, which allow to save options to file without quitting the application. ------------------------------------------------------------------------- -r900 | zas_ | 2008-06-09 01:42:51 +0200 (Mon, 09 Jun 2008) | 2 lines +commit 7725546b83707d675c466dd1b9eb96380ad2f067 +Author: Laurent Monin +Date: Sun Aug 31 11:27:24 2008 +0000 -Tidy up: add/remove white lines, minor code changes. + Move quoted_value() and escquote_value() to misc.[ch]. ------------------------------------------------------------------------- -r899 | nadvornik | 2008-06-08 23:21:13 +0200 (Sun, 08 Jun 2008) | 2 lines +commit ea455387a49dc8457b2489fefdd8f7cd5a178e0b +Author: Laurent Monin +Date: Sun Aug 31 10:51:41 2008 +0000 -improved vficon_populate + Move miscellaneous functions to their own files (new misc.[ch]). ------------------------------------------------------------------------- -r898 | nadvornik | 2008-06-08 22:24:46 +0200 (Sun, 08 Jun 2008) | 2 lines +commit 2b9bf5f494fa20b8531a3bbbe6140c15985ec13a +Author: Vladimir Nadvornik +Date: Sun Aug 31 10:08:48 2008 +0000 -vficon_sync speed-up + use GThreadPool ------------------------------------------------------------------------- -r897 | nadvornik | 2008-06-08 21:09:44 +0200 (Sun, 08 Jun 2008) | 2 lines +commit 5cf88e588d2c061c470aa524d4a89561b5182c1b +Author: Vladimir Nadvornik +Date: Sun Aug 31 09:20:29 2008 +0000 -better check for notify type + improved thread support in image loader ------------------------------------------------------------------------- -r896 | nadvornik | 2008-06-08 11:25:39 +0200 (Sun, 08 Jun 2008) | 2 lines +commit 9212340ececba2346d599fa8ffaa6f7ddafcc558 +Author: Laurent Monin +Date: Sun Aug 31 09:13:42 2008 +0000 -fixed switching thumbnails in listview on and off - bug 1984825 + Move save/load_options() to options.[ch]. ------------------------------------------------------------------------- -r895 | nadvornik | 2008-06-08 00:44:17 +0200 (Sun, 08 Jun 2008) | 2 lines +commit 77bc802fa727e39b259cef5431bb897618f888d3 +Author: Laurent Monin +Date: Sun Aug 31 08:59:39 2008 +0000 -various refresh and notification fixes + Move sync_options_with_current_state() call to save_options(). ------------------------------------------------------------------------- -r894 | nadvornik | 2008-06-07 17:08:33 +0200 (Sat, 07 Jun 2008) | 2 lines +commit 0db9254e25cad32d5e954f04696e6e5fe74554e3 +Author: Laurent Monin +Date: Sun Aug 31 08:41:42 2008 +0000 -various notification improvements + Move some code to new functions, to simplify main(). ------------------------------------------------------------------------- -r893 | nadvornik | 2008-06-07 12:45:33 +0200 (Sat, 07 Jun 2008) | 2 lines +commit f01ec2c48c555c486ad40ced8341c57dcc4d5e2d +Author: Laurent Monin +Date: Sun Aug 31 08:13:36 2008 +0000 -use the new notification for collections + Fix two minor compilation warnings. ------------------------------------------------------------------------- -r892 | zas_ | 2008-06-07 12:18:30 +0200 (Sat, 07 Jun 2008) | 3 lines +commit a710f33e4b885e22e3744beb9af9b9285d73640c +Author: Vladimir Nadvornik +Date: Sat Aug 30 20:15:47 2008 +0000 -Display Lirc state in config log. -Re-organize the config log a bit. + run image loader in separate thread + this feature is disabled by default for now, it must be enabled by + configure --enable-threads ------------------------------------------------------------------------- -r891 | nadvornik | 2008-06-07 11:36:12 +0200 (Sat, 07 Jun 2008) | 2 lines +commit 6a73bcf507697b77cebc69761bb2db8801210641 +Author: Vladimir Nadvornik +Date: Sat Aug 30 13:04:06 2008 +0000 -use new notification in img-view + prepared image loader code for threads ------------------------------------------------------------------------- -r890 | nadvornik | 2008-06-07 11:10:01 +0200 (Sat, 07 Jun 2008) | 2 lines +commit 01bbfff007b6e540e22a1966971a9d00a41a66ad +Author: Laurent Monin +Date: Sat Aug 30 10:39:35 2008 +0000 -use new notification in layout and layout_image + Allow to override documentation paths through options: + - documentation.helpdir + - documentation.htmldir + Default values are set at configure time. ------------------------------------------------------------------------- -r889 | nadvornik | 2008-06-07 10:13:22 +0200 (Sat, 07 Jun 2008) | 2 lines +commit ba17ee7539c814d49d3b57158fc91000a4fae2e1 +Author: Vladimir Nadvornik +Date: Fri Aug 29 20:53:53 2008 +0000 -used new notification in search.c + converted image loader to a GObject and use signals for notification ------------------------------------------------------------------------- -r888 | nadvornik | 2008-06-07 09:45:08 +0200 (Sat, 07 Jun 2008) | 2 lines +commit 6f13139c2ac0a4e11e21e041ca4f5c4f1327dfac +Author: Vladimir Nadvornik +Date: Fri Aug 29 12:35:13 2008 +0000 -used new notification in dupe.c + do not access image_loader directly ------------------------------------------------------------------------- -r887 | nadvornik | 2008-06-07 00:34:15 +0200 (Sat, 07 Jun 2008) | 2 lines +commit dc649dfbb31df6e75c7283405ba99084ea328206 +Author: Vladimir Nadvornik +Date: Fri Aug 29 09:59:20 2008 +0000 -used new notification in cache_maint + added new raw preview interface for legacy exif ------------------------------------------------------------------------- -r886 | nadvornik | 2008-06-07 00:11:03 +0200 (Sat, 07 Jun 2008) | 2 lines +commit 6654b671684992272856344aa34b59301c35e023 +Author: Vladimir Nadvornik +Date: Fri Aug 29 09:38:10 2008 +0000 -added NotifyType + fixed thumbnail loader for the new raw preview interface ------------------------------------------------------------------------- -r885 | nadvornik | 2008-06-06 23:50:09 +0200 (Fri, 06 Jun 2008) | 2 lines +commit bea9cd293c96a86d196b6fa2af689e41fbfa65a2 +Author: Vladimir Nadvornik +Date: Thu Aug 28 22:26:09 2008 +0000 -realtime file monitor + use mmaped files image loader + implemented new interface for extracting raw previews + experiments with previews support in SVN version of Exiv2 ------------------------------------------------------------------------- -r884 | nadvornik | 2008-06-06 22:59:03 +0200 (Fri, 06 Jun 2008) | 2 lines +commit 7fa8df7737575cc63b627b4337131122faffe496 +Author: Petr Ostadal +Date: Thu Aug 28 12:51:02 2008 +0000 -zero-lenght path must be allowed for now + Removed converting fd->name to utf8 from file_data_set_collate_keys(), because fd->name is utf8. ------------------------------------------------------------------------- -r883 | zas_ | 2008-06-06 10:01:19 +0200 (Fri, 06 Jun 2008) | 2 lines +commit 4908ddd714be7cab8e1cf290fec62d7288692856 +Author: Laurent Monin +Date: Thu Aug 28 10:50:02 2008 +0000 -French translation was updated. + Silent warnings about unused functions when lcms is not used. ------------------------------------------------------------------------- -r882 | zas_ | 2008-06-06 01:31:22 +0200 (Fri, 06 Jun 2008) | 2 lines +commit 35776f2dee4439e5ece5ec4746acaffa36fee793 +Author: Laurent Monin +Date: Wed Aug 27 17:02:14 2008 +0000 -Fix "No newline at end of file" warning. + Comment out unused functions. ------------------------------------------------------------------------- -r881 | nadvornik | 2008-06-05 20:43:44 +0200 (Thu, 05 Jun 2008) | 2 lines +commit dd4ea407ecdeea13e0117b242aa4ceac71239b9d +Author: Laurent Monin +Date: Wed Aug 27 16:42:59 2008 +0000 -use new notification in vficon + Silent a compiler warning. ------------------------------------------------------------------------- -r880 | zas_ | 2008-06-05 11:24:42 +0200 (Thu, 05 Jun 2008) | 3 lines +commit 109ecd8c2e8beda448113dcaf36527b889b5f8ab +Author: Laurent Monin +Date: Wed Aug 27 16:40:21 2008 +0000 -Compare paths using utf8_collate_key() since paths are utf8-encoded. -It fixes bug 1959854. + const gpointer -> gconstpointer. ------------------------------------------------------------------------- -r879 | zas_ | 2008-06-05 10:41:02 +0200 (Thu, 05 Jun 2008) | 6 lines +commit 3ec7e5728fa2a17086d3b3144b46318e7a1f761d +Author: Laurent Monin +Date: Tue Aug 26 22:37:18 2008 +0000 -Use uft8_collate_key() to sort utf8 strings. -Modify file_data_set_path() to sync collate keys and file_data_pool -on path change. + Use gpointer instead of void *. -Partially fix bug 1959854. +commit cd85461e278e79a4894b5bc400273d3f6719416d +Author: Laurent Monin +Date: Tue Aug 26 22:30:40 2008 +0000 ------------------------------------------------------------------------- -r878 | nadvornik | 2008-06-04 23:12:47 +0200 (Wed, 04 Jun 2008) | 2 lines + Consistency: type * instead of type*. -new notification system (used only in vflist for now) +commit c1006fb758679c5349ac658fe74562ebd88ddf8c +Author: Laurent Monin +Date: Tue Aug 26 22:22:51 2008 +0000 ------------------------------------------------------------------------- -r877 | nadvornik | 2008-06-03 21:44:19 +0200 (Tue, 03 Jun 2008) | 2 lines + For the sake of consistency, use glib basic types everywhere. -replaced directory path with FileData* dir_fd +commit aea00af29f6f572581b8bcc6e856e17b4676d381 +Author: Laurent Monin +Date: Tue Aug 26 21:19:33 2008 +0000 ------------------------------------------------------------------------- -r876 | zas_ | 2008-06-03 17:54:05 +0200 (Tue, 03 Jun 2008) | 4 lines + Indentation fixes. -Allow to modify the aspect of Geeqie through the use of a -gtkrc file that may be present in the geeqie rc directory. -Patch by Aldric RENAUDIN and me. +commit 4073149801dc3484ae0c231c56cb814a8a20024b +Author: Petr Ostadal +Date: Tue Aug 26 20:21:30 2008 +0000 ------------------------------------------------------------------------- -r875 | zas_ | 2008-06-03 15:54:22 +0200 (Tue, 03 Jun 2008) | 2 lines + Fixed segfault when is run inside directory with non valid uft-8 image + filename. -Replace hardcoded collection filename extension by a macro (GQ_COLLECTION_EXT). +commit ead8d30aaa1f5e02f703d7ca97c6eaed6df61234 +Author: Petr Ostadal +Date: Tue Aug 26 13:56:56 2008 +0000 ------------------------------------------------------------------------- -r874 | zas_ | 2008-06-03 13:24:16 +0200 (Tue, 03 Jun 2008) | 2 lines + Fixed calling "Image search" function in a directory without image. -Drop initialization to NULL since filelist_read() will take care of it. +commit aa4d496a3c5caddb81fb114bebcf583784098e4e +Author: Vladimir Nadvornik +Date: Mon Aug 25 22:45:38 2008 +0000 ------------------------------------------------------------------------- -r873 | zas_ | 2008-06-03 11:41:00 +0200 (Tue, 03 Jun 2008) | 2 lines + correctly maintain selection during iconlist refresh -filelist_read_real(): optimize and clean up. +commit f39b5907f8825173f29be37f76c94d2c8b547188 +Author: Laurent Monin +Date: Mon Aug 25 22:20:45 2008 +0000 ------------------------------------------------------------------------- -r872 | zas_ | 2008-06-03 11:03:33 +0200 (Tue, 03 Jun 2008) | 2 lines + Whitespaces cleanup. -Reduce indentation level. +commit d04050839306a01814536f12e5480288dab52e0e +Author: Petr Ostadal +Date: Mon Aug 25 18:13:33 2008 +0000 ------------------------------------------------------------------------- -r871 | zas_ | 2008-06-03 10:57:46 +0200 (Tue, 03 Jun 2008) | 2 lines + Fixed segfaulting when alter image in directory without images. -Reduce indentation level. +commit c85a911368d6535d8553e6c81654accfbc486ae6 +Author: Vladimir Nadvornik +Date: Mon Aug 25 16:58:27 2008 +0000 ------------------------------------------------------------------------- -r870 | zas_ | 2008-06-03 10:53:53 +0200 (Tue, 03 Jun 2008) | 2 lines + removed unused code -collection_table_find_data_by_coord(): tidy up. +commit 6b22ce5fd0f6a5b14ae6b761f1982e545385ec22 +Author: Laurent Monin +Date: Sun Aug 24 14:40:18 2008 +0000 ------------------------------------------------------------------------- -r869 | zas_ | 2008-06-03 09:37:24 +0200 (Tue, 03 Jun 2008) | 3 lines + Typo fixes. -vflist_maint(): only allocate memory and compare strings if needed. +commit f20dd48a59ee12d0f21a79f745d1a331f921cf17 +Author: Laurent Monin +Date: Sun Aug 24 14:33:03 2008 +0000 + Slight code redundancy reduction. ------------------------------------------------------------------------- -r868 | zas_ | 2008-06-03 09:32:13 +0200 (Tue, 03 Jun 2008) | 3 lines +commit 1e7b2c34c6d1229c7d95319c909fb550e64e5acf +Author: Laurent Monin +Date: Sun Aug 24 14:14:37 2008 +0000 -layout_real_renamed(), layout_real_removed(), layout_real_moved(): -simplify code. + Drop redundant variable affectation. ------------------------------------------------------------------------- -r867 | nadvornik | 2008-05-31 21:46:26 +0200 (Sat, 31 May 2008) | 2 lines +commit 7d788c98fbd2c656f2b5354e95bc8c1d5fa1093b +Author: Laurent Monin +Date: Sun Aug 24 13:22:08 2008 +0000 -do not change original FileData on copy + Fix untranslated messages. French translation and POTFILES.in were updated. ------------------------------------------------------------------------- -r866 | nadvornik | 2008-05-31 21:44:41 +0200 (Sat, 31 May 2008) | 3 lines +commit 9a1cc0021d442af191023c485a2dbcc69c218be2 +Author: Laurent Monin +Date: Sun Aug 24 10:00:40 2008 +0000 -replaced vflist_maint functions by vflist_refresh - it allows to follow -changes made by external editors more precisely + French translation was updated. ------------------------------------------------------------------------- -r865 | nadvornik | 2008-05-30 23:41:46 +0200 (Fri, 30 May 2008) | 2 lines +commit eca846433372d875c2bbaaf5160a9142ef86c203 +Author: Laurent Monin +Date: Sun Aug 24 10:00:02 2008 +0000 -vflist_populate_view: better handle selected files that are renamed or deleted + Mark forgotten string for translation. ------------------------------------------------------------------------- -r864 | nadvornik | 2008-05-30 22:13:16 +0200 (Fri, 30 May 2008) | 2 lines +commit 46691080d3ca954f0cf45bb2bfad5f11701230f5 +Author: Laurent Monin +Date: Sat Aug 23 21:07:25 2008 +0000 -fixed thumb index (thumbnails are shown again) + Fix another missing separator bug in image overlay. This one was occuring with default string when no ISO data was available from exif. ------------------------------------------------------------------------- -r863 | nadvornik | 2008-05-30 21:53:52 +0200 (Fri, 30 May 2008) | 2 lines +commit acc2c3b1b830e67f94c5648acee3706d7637a2df +Author: Laurent Monin +Date: Sat Aug 23 20:46:31 2008 +0000 -simplified vflist_populate_view + Minor optimization: no need to copy the whole remaining of the string, just copy next char. ------------------------------------------------------------------------- -r862 | zas_ | 2008-05-30 10:39:52 +0200 (Fri, 30 May 2008) | 4 lines +commit b5bc1451f70cb5e9b92bf65789206cfd9c478cad +Author: Laurent Monin +Date: Sat Aug 23 17:35:57 2008 +0000 -Use functions to set editors name and command and ensure they are -utf8-encoded. -Previously, non-utf8 strings from rc file caused some issues. + Only display status if there is at least one file in the file list. ------------------------------------------------------------------------- -r861 | zas_ | 2008-05-30 10:36:23 +0200 (Fri, 30 May 2008) | 2 lines +commit 060c2f9cf332a93e40c273e580133be05a984bf9 +Author: Laurent Monin +Date: Sat Aug 23 17:00:59 2008 +0000 -Make utf8_validate_or_convert() to always allocate a new string. + Remove unneeded type casting. ------------------------------------------------------------------------- -r860 | zas_ | 2008-05-30 09:20:25 +0200 (Fri, 30 May 2008) | 2 lines +commit 50483da19c8039bb06121572573d0880df979c2c +Author: Vladimir Nadvornik +Date: Sat Aug 23 08:42:12 2008 +0000 -Check for existing editor command using is_valid_editor_command(). + fixed vd_refresh ------------------------------------------------------------------------- -r859 | zas_ | 2008-05-29 09:58:34 +0200 (Thu, 29 May 2008) | 4 lines +commit bec02e283784eac07cda9f03ba0b255946944702 +Author: Laurent Monin +Date: Fri Aug 22 22:09:54 2008 +0000 -Preserve properties window width and height during session even when -layout.save_window_positions is not set. -It restores the pre revision 858 behavior. + French translation was updated. ------------------------------------------------------------------------- -r858 | zas_ | 2008-05-29 09:52:05 +0200 (Thu, 29 May 2008) | 3 lines +commit eb72228e196dd942f5ebf11d6ffdbdc298046d27 +Author: Laurent Monin +Date: Fri Aug 22 21:52:13 2008 +0000 -Save properties window width and height to rc file and restore -them on next session if layout.save_window_positions is set to TRUE. + Add an option named layout.home_path which modifies the behavior of the Home button. + By default, pressing this button goes to the user's home directory. + When this option is set to a path, this path is used instead. + One can change the option value through Preferences > Advanced > Navigation + or directly in .geeqierc. + Feature proposed by Colin Clark. ------------------------------------------------------------------------- -r857 | nadvornik | 2008-05-29 00:12:10 +0200 (Thu, 29 May 2008) | 2 lines +commit d58451c5831ce52023c007574c0d118f27096d72 +Author: Laurent Monin +Date: Thu Aug 21 22:49:30 2008 +0000 -improved infrastructure for tracing changes, optimized vflist_populate_view + Typo fix: vf -> vd ------------------------------------------------------------------------- -r856 | nadvornik | 2008-05-27 20:46:34 +0200 (Tue, 27 May 2008) | 2 lines +commit 83cfd4393002fb06fc0a1b480f1221319f192ce8 +Author: Laurent Monin +Date: Thu Aug 21 22:47:49 2008 +0000 -measure time of filelist update + Replace macros VDLIST_INFO() and VDTREE_INFO() by shorter VDLIST() and VDTREE(). VDLIST_INFO(vd, part) becomes VDLIST(vd)->part. ------------------------------------------------------------------------- -r855 | nadvornik | 2008-05-27 20:37:15 +0200 (Tue, 27 May 2008) | 2 lines +commit 43c576558ba327e4aa71b35471e0863d159c44d1 +Author: Laurent Monin +Date: Thu Aug 21 22:36:20 2008 +0000 -another fix in notification + Indentation fix. ------------------------------------------------------------------------- -r854 | nadvornik | 2008-05-26 20:32:04 +0200 (Mon, 26 May 2008) | 2 lines +commit de499c4c05275f24081780bc77b06519d7d9d12e +Author: Laurent Monin +Date: Wed Aug 20 22:26:34 2008 +0000 -Fix histogram grid - patch by Uwe Ohse + Use constants instead of enum since value (0xffff0000) overflow INT_MAX on some platforms (seen on Solaris 10 SPARC system using the native Sun version 5.9 compilers). Reported by Jeffery Small. ------------------------------------------------------------------------- -r853 | nadvornik | 2008-05-26 20:22:08 +0200 (Mon, 26 May 2008) | 2 lines +commit 66bc3de86cf6c443c6e2399fb5df9d515898014d +Author: Laurent Monin +Date: Wed Aug 20 22:19:35 2008 +0000 -use fputs instead of printf - patch by Uwe Ohse + Do not return values of void functions. Reported by Jeffery Small. ------------------------------------------------------------------------- -r852 | nadvornik | 2008-05-26 19:06:30 +0200 (Mon, 26 May 2008) | 2 lines +commit da981595f5f724233a7b54661e25e424a9134474 +Author: Vladimir Nadvornik +Date: Wed Aug 20 20:36:36 2008 +0000 -fixed bug in notification code + update the FileData structure when a new folder is created ------------------------------------------------------------------------- -r851 | zas_ | 2008-05-25 22:17:07 +0200 (Sun, 25 May 2008) | 2 lines +commit b65f4f5667141545c1c2bccdca0ce93e92b26abe +Author: Vladimir Nadvornik +Date: Tue Aug 19 22:58:31 2008 +0000 -Tidy up: indentation fixes, typo fixes, ... + improved refresh in view_dir_list ------------------------------------------------------------------------- -r850 | zas_ | 2008-05-25 21:54:00 +0200 (Sun, 25 May 2008) | 2 lines +commit e8b3ce85469bc2ff88cdbf5abc38b22fa6c5f7cf +Author: Vladimir Nadvornik +Date: Tue Aug 19 21:01:29 2008 +0000 -Typo fix. + set fallback pixbuf in case of missing file ------------------------------------------------------------------------- -r849 | zas_ | 2008-05-25 21:13:04 +0200 (Sun, 25 May 2008) | 2 lines +commit fe2d42004e25e8a5303ab7155731f7188062d1ca +Author: Vladimir Nadvornik +Date: Tue Aug 19 20:58:23 2008 +0000 -Typo fix. + fixed possible segfault ------------------------------------------------------------------------- -r848 | zas_ | 2008-05-25 21:03:30 +0200 (Sun, 25 May 2008) | 2 lines +commit e1a9ff9eaba12db2969dc68da34956d3c97f9098 +Author: Vladimir Nadvornik +Date: Sun Aug 17 14:18:51 2008 +0000 -bar_sort_set_filter_cb(): filter_idx was set as uint so get it as uint. + removed code for maintaining filelist position, gtk_tree_view itself handles it + better ------------------------------------------------------------------------- -r847 | nadvornik | 2008-05-25 00:44:18 +0200 (Sun, 25 May 2008) | 4 lines +commit 951b62566ba5616b63efe574ee956ac2c4fc5a3d +Author: Laurent Monin +Date: Sun Aug 17 09:36:02 2008 +0000 -rewritten utilops.h: -- better integration of external commands -- filter commands + French translation was updated. ------------------------------------------------------------------------- -r846 | zas_ | 2008-05-24 22:01:59 +0200 (Sat, 24 May 2008) | 6 lines +commit 3e3a0a459781d1008725274bde950589465acf6d +Author: Laurent Monin +Date: Sun Aug 17 09:30:45 2008 +0000 -Allow to escape star characters in the template string with a \. -One can insert a \ by escaping it with another \. -Fix deletion of empty parts when using | trick. -Append the separator " - " only if data is neither NULL nor empty. -Patch by Uwe Ohse and Laurent Monin. + Simplify things related to ViewFileInfoList * and ViewFileInfoIcon * type casting: + - drop VFICON_INFO() and VFLIST_INFO() macros + - rename VFLIST_INFO_POINTER() and VFICON_INFO_POINTER() to shorter VFLIST() and VFICON(). + - replace all related occurrences by shorter expressions. + + For example: + VFICON_INFO(vf, columns) becomes VFICON(vf)->columns + VFLIST_INFO(vf, click_fd) becomes VFLIST(vf)->click_fd ------------------------------------------------------------------------- -r845 | nadvornik | 2008-05-24 11:18:09 +0200 (Sat, 24 May 2008) | 2 lines +commit 728c032c4cf6b098b968851a75f6bbe5488040b3 +Author: Laurent Monin +Date: Sun Aug 17 09:00:33 2008 +0000 -improved filedata interface + Move variable declaration at start of block. ------------------------------------------------------------------------- -r844 | zas_ | 2008-05-24 01:40:12 +0200 (Sat, 24 May 2008) | 3 lines +commit cb3202692eb4bcd65f45699b44ded4ac64cc9ad0 +Author: Vladimir Nadvornik +Date: Sat Aug 16 23:37:26 2008 +0000 -Fix display of libpthread detection. -Fix display of lirc support, do not test for headers if disabled. + marks in iconview made clickable ------------------------------------------------------------------------- -r843 | zas_ | 2008-05-24 01:18:40 +0200 (Sat, 24 May 2008) | 2 lines +commit dbf66300f4c6978d22a0a618778be09ad2fd1ed1 +Author: Vladimir Nadvornik +Date: Sat Aug 16 20:57:40 2008 +0000 -Silent few warnings that appeared when using --disable-exiv2 configure option. + keep files with non-zero marks in memory ------------------------------------------------------------------------- -r842 | zas_ | 2008-05-24 00:57:51 +0200 (Sat, 24 May 2008) | 2 lines +commit df8df1eea01d8c71e3b719cfd2a00c920f0e15fb +Author: Vladimir Nadvornik +Date: Sat Aug 16 20:34:14 2008 +0000 -French translation was updated. + implemented marks filter ------------------------------------------------------------------------- -r841 | zas_ | 2008-05-24 00:55:23 +0200 (Sat, 24 May 2008) | 2 lines +commit f0606958123d00b30a9ed649813229d951012dc3 +Author: Laurent Monin +Date: Sat Aug 16 07:18:16 2008 +0000 -Use the same label for toolbar buttons tooltip than in main menu. + Fix double escaping of image overlay text. + Bug 2051955, reported by Emmanuel Dupuis. ------------------------------------------------------------------------- -r840 | zas_ | 2008-05-23 17:07:30 +0200 (Fri, 23 May 2008) | 6 lines +commit 8fc4646c4c8a48c5793743b76233bc8c78c49093 +Author: Vladimir Nadvornik +Date: Wed Aug 13 21:07:06 2008 +0000 -Add -Wstrict-prototypes to gcc options only in developer mode -since it clutters the compilation log with unfixable warnings. -Add -Wall in developer mode to display even more warnings. -Fix display of --enable-deprecated at end of configure (yes -and no were inversed). + added keyboard map generator ------------------------------------------------------------------------- -r839 | zas_ | 2008-05-23 14:27:28 +0200 (Fri, 23 May 2008) | 2 lines +commit 178dee898565791d42e39aad71049b79eebb2758 +Author: Vladimir Nadvornik +Date: Wed Aug 13 20:46:06 2008 +0000 -slideshow_next(), slideshow_prev(): move code to common slideshow_move(), reducing code redundancy. + a workaround for http://bugzilla.gnome.org/show_bug.cgi?id=547669 ------------------------------------------------------------------------- -r838 | zas_ | 2008-05-23 14:19:42 +0200 (Fri, 23 May 2008) | 2 lines +commit 86166813f7b90e81cf1c493be7f0ca5c86bec550 +Author: Vladimir Nadvornik +Date: Tue Aug 12 20:21:25 2008 +0000 -Move code from slideshow_timer_reset() to new slideshow_timer_stop() and simplify calls. + fixed crash with float file list and geeqie --blank ------------------------------------------------------------------------- -r837 | zas_ | 2008-05-23 02:20:56 +0200 (Fri, 23 May 2008) | 9 lines +commit 5e7e6ce8ff5a7de451480e1c3892ac5ad3ba2b3f +Author: Vladimir Nadvornik +Date: Mon Aug 11 18:53:19 2008 +0000 -Try to load a system-wide rc file if any, before per-user rc file. -For now, system-wide rc file path is set to /etc/geeqie/geeqierc -(defined by GQ_SYSTEM_WIDE_DIR in main.h). -filter_parse() was modified to replace entries having the same key, -needed since it may be called more than once. + fixed crash in geeqie --blank -Please test heavily. +commit 2316a8ab4f877611dd31e4bfeff4ce048d279af6 +Author: Vladimir Nadvornik +Date: Mon Aug 11 17:45:26 2008 +0000 + fixed setting visible entry in view_dir_tree ------------------------------------------------------------------------- -r836 | zas_ | 2008-05-23 01:22:12 +0200 (Fri, 23 May 2008) | 2 lines +commit d3f019fc2e0bd00cc403b5860749c365964a8306 +Author: Vladimir Nadvornik +Date: Wed Jul 30 18:44:49 2008 +0000 -Pass ConfOptions * to save_options() and load_options(). + updated ChangeLog from svn log ------------------------------------------------------------------------- -r835 | zas_ | 2008-05-23 01:17:26 +0200 (Fri, 23 May 2008) | 3 lines +commit 28642010130af8533f50a3c5fb88187a9f845803 +Author: Laurent Monin +Date: Mon Jul 28 18:35:19 2008 +0000 -Move code from save_options() to new save_options_to() which takes -the destination path as parameter. + Move declarations at the beginning of blocks. ------------------------------------------------------------------------- -r834 | zas_ | 2008-05-23 01:09:53 +0200 (Fri, 23 May 2008) | 4 lines +commit bb6bd4711d2a4884fdc19a7f8916170520efc924 +Author: Laurent Monin +Date: Mon Jul 28 18:07:42 2008 +0000 -Move setup_default_options() and sync_options_with_current_state() to options.[ch]. -Pass ConfOptions * to these instead of directly using global variable. -Cleanup #include in main.c. + Optimize tests even more using last changes. ------------------------------------------------------------------------- -r833 | zas_ | 2008-05-23 00:49:07 +0200 (Fri, 23 May 2008) | 2 lines +commit a4d5b30df4f5f2bff3d35237d31c6ab1701e1c52 +Author: Vladimir Nadvornik +Date: Mon Jul 28 18:02:10 2008 +0000 -Move code from exit_program_final() to new sync_options_with_current_state(). + do not free unallocated exif data ------------------------------------------------------------------------- -r832 | zas_ | 2008-05-23 00:43:07 +0200 (Fri, 23 May 2008) | 4 lines +commit 6eac9ecc53b989bf432e066aada6ecb1d81609ab +Author: Laurent Monin +Date: Mon Jul 28 17:59:09 2008 +0000 -Separate path building code from options loading code. -Most code of load_options() is moved to new load_options_from(). -ExifUIList initialization is moved to setup_default_options(). + Cache strcmp() result. ------------------------------------------------------------------------- -r831 | zas_ | 2008-05-22 22:22:13 +0200 (Thu, 22 May 2008) | 10 lines +commit 660c688332d92dcb8f4ad521d777c6f0cf1472f3 +Author: Laurent Monin +Date: Mon Jul 28 17:56:56 2008 +0000 -Make shell command and its option rc file options instead of hardcoded strings. -This allows users to modify the shell command that execute "editors". -Two new options appear in rc file: -- shell.path (default to "/bin/sh") -- shell.options (default to "-c") + Optimize redundant tests. -These options can only be changed from the rc file, not at runtime. -Tests are made to check that shell.path is not empty and lead to -an executable file. +commit 299bab0e7d1fcdabd41279f7b8916396862c00d2 +Author: Laurent Monin +Date: Mon Jul 28 17:55:06 2008 +0000 ------------------------------------------------------------------------- -r830 | zas_ | 2008-05-22 15:00:45 +0200 (Thu, 22 May 2008) | 3 lines + Move dest_dir variable to inner block. -Fix signed vs unsigned warnings. -In most cases, gint was used instead of guint. +commit 9899b80f490d32f5e40e0f02236c8cdedddb0d88 +Author: Laurent Monin +Date: Mon Jul 28 09:44:50 2008 +0000 ------------------------------------------------------------------------- -r829 | zas_ | 2008-05-22 13:28:35 +0200 (Thu, 22 May 2008) | 2 lines + Reduce code redundancy and minor typo fixes. -Comment out unused static function extension_truncate(). +commit 760c313e51c7e9bff61fad1c9c5ea8c70a35fc88 +Author: Laurent Monin +Date: Mon Jul 28 09:14:10 2008 +0000 ------------------------------------------------------------------------- -r828 | zas_ | 2008-05-22 13:27:43 +0200 (Thu, 22 May 2008) | 2 lines + French translation was updated. -Fix up some types, make some signed vs unsigned warnings quiet. +commit f4a4b21d34e24261b19d3adb920085856345f850 +Author: Laurent Monin +Date: Mon Jul 28 09:12:33 2008 +0000 ------------------------------------------------------------------------- -r827 | zas_ | 2008-05-22 12:09:07 +0200 (Thu, 22 May 2008) | 3 lines + Typo fix. -Modify set_default_image_overlay_template_string() to accept the pointer to -the string to modify and add a generic function to set template_string value. +commit 22f458af63bb1cc6490d1c47d8f8a76ac8161650 +Author: Vladimir Nadvornik +Date: Sun Jul 27 19:22:40 2008 +0000 ------------------------------------------------------------------------- -r826 | zas_ | 2008-05-22 11:22:29 +0200 (Thu, 22 May 2008) | 2 lines + abort file operations when the file list is empty -French translation was updated. +commit 473d1760b5fe683a04b531e6d54de13cf093b12c +Author: Vladimir Nadvornik +Date: Sun Jul 27 18:20:59 2008 +0000 ------------------------------------------------------------------------- -r825 | zas_ | 2008-05-22 11:12:36 +0200 (Thu, 22 May 2008) | 3 lines + remember path entered in file dialog + http://sourceforge.net/tracker/index.php?func=detail&aid=2028977&group_id=222125&atid=1054680 -Introduce an helper function that returns the name of an editor. -It helps to reduce code redundancy. +commit 49ed0b4fb2dd49d2ec0485707c50dec61f242ef3 +Author: Vladimir Nadvornik +Date: Sun Jul 27 13:46:24 2008 +0000 ------------------------------------------------------------------------- -r824 | zas_ | 2008-05-22 10:49:52 +0200 (Thu, 22 May 2008) | 2 lines + speed-up of directory notification on deleting large number of files -Use a struct to handle editor's properties. +commit a4311dd534152241fca227385319ef249fc98ab7 +Author: Vladimir Nadvornik +Date: Sun Jul 27 09:51:28 2008 +0000 ------------------------------------------------------------------------- -r823 | zas_ | 2008-05-21 21:37:18 +0200 (Wed, 21 May 2008) | 6 lines + added "Symlink" as an example of "filter" command -Make stricter match for option's names consisting of a prefix and a number. -It allows to have names like "prefix_12" and "prefix_something" in the same file. -Using strtol() was wrong since it allowed names like "prefix_-0xa", leading -to unpredictable results. It was wrong too with "prefix_something", which -was equivalent to "prefix_0", instead of being an option of its own. +commit b1d0747ca385ba0b6366b6ab1eb88858400c7ba7 +Author: Vladimir Nadvornik +Date: Sun Jul 27 08:57:12 2008 +0000 ------------------------------------------------------------------------- -r822 | zas_ | 2008-05-21 13:46:19 +0200 (Wed, 21 May 2008) | 2 lines + improved updating of view_dir_tree -Replace hardcoded "/" by G_DIR_SEPARATOR_S where applicable. +commit db21a0fc8760058841b38b2fc8bc4970099cd8f7 +Author: Vladimir Nadvornik +Date: Sun Jul 27 08:40:47 2008 +0000 ------------------------------------------------------------------------- -r821 | zas_ | 2008-05-21 13:45:29 +0200 (Wed, 21 May 2008) | 2 lines + fixed deleting of non-empty folder -Use g_build_filename(). +commit fadf71ace27daec42c57292eca569da9afddf890 +Author: Vladimir Nadvornik +Date: Sat Jul 26 22:36:58 2008 +0000 ------------------------------------------------------------------------- -r820 | zas_ | 2008-05-21 13:07:23 +0200 (Wed, 21 May 2008) | 2 lines + fixed spec file -Use G_DIR_SEPARATOR where applicable. +commit 453565d11e275816de5e7eec28b3a558a34b77bb +Author: Vladimir Nadvornik +Date: Sat Jul 26 22:26:08 2008 +0000 ------------------------------------------------------------------------- -r819 | zas_ | 2008-05-21 13:00:13 +0200 (Wed, 21 May 2008) | 2 lines + fixed invalid warning on running editors -Use G_DIR_SEPARATOR_S where applicable. +commit 71e1b5a7dbf543c6f87751a387ede8e84d365d4b +Author: Vladimir Nadvornik +Date: Sat Jul 26 20:34:24 2008 +0000 ------------------------------------------------------------------------- -r818 | zas_ | 2008-05-21 12:52:38 +0200 (Wed, 21 May 2008) | 2 lines + updated version string -Use g_build_filename() and G_DIR_SEPARATOR_S. +commit fdd9338faf0ee30d483b9d1c30885241c340449c +Author: Vladimir Nadvornik +Date: Sat Jul 26 20:15:00 2008 +0000 ------------------------------------------------------------------------- -r817 | zas_ | 2008-05-21 12:46:33 +0200 (Wed, 21 May 2008) | 2 lines + dropped references to OpenOffice.org as suggested at + https://sourceforge.net/tracker/index.php?func=detail&aid=1972534&group_id=222125&atid=1054680 -Use g_build_filename() instead of g_strconcat(). +commit da4c68a9e11dd9d457e6eca2c9b552cde5a9a660 +Author: Vladimir Nadvornik +Date: Sat Jul 26 20:02:20 2008 +0000 ------------------------------------------------------------------------- -r816 | zas_ | 2008-05-21 12:11:56 +0200 (Wed, 21 May 2008) | 2 lines + string cleanup -tab_completion_do(): use g_build_filename(), G_DIR_SEPARATOR, G_DIR_SEPARATOR_S. +commit 8e4dcbe60ca1974787466e0bb93d10d34ed80afb +Author: Vladimir Nadvornik +Date: Sat Jul 26 19:52:40 2008 +0000 ------------------------------------------------------------------------- -r815 | zas_ | 2008-05-21 11:58:29 +0200 (Wed, 21 May 2008) | 2 lines + removed unused messages.desc_dlist -tab_completion_popup_cb(): use g_build_filename() and simplify code. +commit b2334b66c903a66cdd5a1b984d6b4b40a885c02d +Author: Vladimir Nadvornik +Date: Sat Jul 26 19:41:46 2008 +0000 ------------------------------------------------------------------------- -r814 | zas_ | 2008-05-21 11:50:32 +0200 (Wed, 21 May 2008) | 3 lines + fixed new folder command -Use expand_tilde() instead of simple concatenation, it allows correct expansion -of ~user as well as ~dir. +commit b90ac509d431b791b45d2e365e039aabcc497f22 +Author: Vladimir Nadvornik +Date: Sat Jul 26 19:33:36 2008 +0000 ------------------------------------------------------------------------- -r813 | zas_ | 2008-05-21 11:30:53 +0200 (Wed, 21 May 2008) | 2 lines + fixed renaming of directories -dest_change_dir(): rewrite to use g_build_filename(), g_path_get_dirname() and g_path_get_basename(). +commit f7c504c8ada6dae3a66c55ee221d508d6ff5fe36 +Author: Vladimir Nadvornik +Date: Sat Jul 26 19:01:20 2008 +0000 ------------------------------------------------------------------------- -r812 | zas_ | 2008-05-21 10:53:51 +0200 (Wed, 21 May 2008) | 2 lines + warn about changed file extensions -Fix a segfault occuring when logging an empty message and there is no log window. +commit 4d670783f8436b85a3816245d9126f09f6f9a573 +Author: Vladimir Nadvornik +Date: Sat Jul 26 18:33:49 2008 +0000 ------------------------------------------------------------------------- -r811 | zas_ | 2008-05-21 02:42:14 +0200 (Wed, 21 May 2008) | 2 lines + added icon for changes without warnings -Use g_build_filename(). +commit 12bc9f40c65d59e9f3b547b6e3e8649a70809498 +Author: Vladimir Nadvornik +Date: Sat Jul 26 18:17:56 2008 +0000 ------------------------------------------------------------------------- -r810 | zas_ | 2008-05-21 02:39:16 +0200 (Wed, 21 May 2008) | 2 lines + allow only existing folders in destination dialog + http://sourceforge.net/tracker/index.php?func=detail&aid=2011243&group_id=222125&atid=1054680 -thumb_std_cache_path(): use g_build_filename() and simplify. +commit 0ec960565c5febd5c59d49eb820c2a98043d4ece +Author: Vladimir Nadvornik +Date: Sat Jul 26 10:27:41 2008 +0000 ------------------------------------------------------------------------- -r809 | zas_ | 2008-05-21 02:32:57 +0200 (Wed, 21 May 2008) | 2 lines + clean up - checks are handled elsewhere -Use g_build_filename(). +commit dfab6c695e56757791d68763444c5ef65c338797 +Author: Vladimir Nadvornik +Date: Sat Jul 26 09:58:25 2008 +0000 ------------------------------------------------------------------------- -r808 | zas_ | 2008-05-21 02:20:13 +0200 (Wed, 21 May 2008) | 2 lines + more checks for file operations -Use g_build_filename() where applicable. +commit e3b713522adbaea2fc0f9be3c8e11ed7acc66239 +Author: Vladimir Nadvornik +Date: Fri Jul 25 22:04:55 2008 +0000 ------------------------------------------------------------------------- -r807 | zas_ | 2008-05-21 02:15:41 +0200 (Wed, 21 May 2008) | 2 lines + improved error reporting -Use g_build_filename() instead of g_strconcat(). +commit 3d6b2cc44f9b7dd36102f3626c115027094a2591 +Author: Laurent Monin +Date: Fri Jul 25 06:35:35 2008 +0000 ------------------------------------------------------------------------- -r806 | zas_ | 2008-05-21 02:13:12 +0200 (Wed, 21 May 2008) | 2 lines + Minor tidy up and optimization. -Use g_build_filename() and get rid of "root dir fix". +commit c658a3d30ac0f2b77788f08d30e5088b2e93845e +Author: Laurent Monin +Date: Thu Jul 24 20:24:04 2008 +0000 ------------------------------------------------------------------------- -r805 | zas_ | 2008-05-21 02:12:19 +0200 (Wed, 21 May 2008) | 2 lines + Set GIO channels to binary encoding. + This is needed since messages from commands may not be UTF8-encoded + and g_io_channel_read_chars() may incorrectly interpret some characters. + In practice it was truncating some ISO-8859-1 messages containing some + french characters. This fixes it. -Use g_build_filename(). +commit 227a6784ab87c0ba1ddde38334b1897813f0612d +Author: Vladimir Nadvornik +Date: Thu Jul 24 20:03:57 2008 +0000 ------------------------------------------------------------------------- -r804 | zas_ | 2008-05-21 02:01:03 +0200 (Wed, 21 May 2008) | 5 lines + separated debugging log and debug CFLAGS + enable debugging log support by default -Disable unused code: -- cache_maintain_home_dir() -- cache_maintain_dir() +commit bb9823e32e5f9993d1ed9384a6d295108fd6f5bd +Author: Vladimir Nadvornik +Date: Wed Jul 23 22:19:16 2008 +0000 + indicate check warnings and errors in delete and rename dialogs ------------------------------------------------------------------------- -r803 | zas_ | 2008-05-21 01:41:13 +0200 (Wed, 21 May 2008) | 2 lines +commit 1b80edd5e0264c412231b3c9457226830dc33955 +Author: Vladimir Nadvornik +Date: Wed Jul 23 20:53:05 2008 +0000 -Build path using g_build_filename() then calculate its length. + removed file_data_add_change_info + reduced code redundancy - patch by Laurent, slightly modified ------------------------------------------------------------------------- -r802 | zas_ | 2008-05-21 01:11:47 +0200 (Wed, 21 May 2008) | 2 lines +commit da4ec2a7e37133b2547bb17849c06ce99340c905 +Author: Laurent Monin +Date: Wed Jul 23 17:38:04 2008 +0000 -Use G_DIR_SEPARATOR_S instead of hardcoded "/". + Minor tidy up. ------------------------------------------------------------------------- -r801 | zas_ | 2008-05-21 01:07:09 +0200 (Wed, 21 May 2008) | 2 lines +commit bd26225bab7fddc99464ba9f7e0a394d15769496 +Author: Laurent Monin +Date: Wed Jul 23 12:46:35 2008 +0000 -Use g_build_filename() and move location label creation from cache_manager_show() to new cache_manager_location_label(). + Tidy up. ------------------------------------------------------------------------- -r800 | zas_ | 2008-05-21 00:47:13 +0200 (Wed, 21 May 2008) | 2 lines +commit a01c5f4c0819876620c7cabbf7bf3d8ecfd605e3 +Author: Laurent Monin +Date: Wed Jul 23 12:45:59 2008 +0000 -cache_find_location(): use g_build_filename() and move redundant code to new functions. + Use g_strconcat() instead of g_strdup_printf("%s%s", ...). ------------------------------------------------------------------------- -r799 | zas_ | 2008-05-21 00:22:11 +0200 (Wed, 21 May 2008) | 2 lines +commit b0a7f6e3aa5647d7736140b431bd0b3d83afec9c +Author: Laurent Monin +Date: Wed Jul 23 10:21:37 2008 +0000 -Use g_build_filename(). + Simplify parse_out_relatives(). ------------------------------------------------------------------------- -r798 | zas_ | 2008-05-21 00:13:48 +0200 (Wed, 21 May 2008) | 2 lines +commit 9810215a7e23167a29088e86191ceee820e4f715 +Author: Laurent Monin +Date: Wed Jul 23 09:10:41 2008 +0000 -Use size_t instead of gint, it silents a signed vs unsigned warning. + Tidy up. ------------------------------------------------------------------------- -r797 | zas_ | 2008-05-21 00:11:59 +0200 (Wed, 21 May 2008) | 2 lines +commit f46043bfae09b7903aa412302d02756449ebc28b +Author: Laurent Monin +Date: Wed Jul 23 09:00:38 2008 +0000 -Use g_build_filename() instead of g_strconcat(). + Fix missing newline at end of file. ------------------------------------------------------------------------- -r796 | zas_ | 2008-05-21 00:09:04 +0200 (Wed, 21 May 2008) | 2 lines +commit 90970bd92397908270e53c9178c67a804863eee0 +Author: Laurent Monin +Date: Wed Jul 23 08:59:29 2008 +0000 -Drop concat_dir_and_file() and use g_build_filename() instead. + Fix warning: passing argument 1 of 'gtk_tree_store_set' from incompatible pointer type ------------------------------------------------------------------------- -r795 | zas_ | 2008-05-21 00:00:14 +0200 (Wed, 21 May 2008) | 2 lines +commit d576f7bbcabdba02d4e295f1e6140634500c3920 +Author: Vladimir Nadvornik +Date: Tue Jul 22 22:05:20 2008 +0000 -Use G_DIR_SEPARATOR instead of '/' where applicable. + do not create duplicate FileData entries ------------------------------------------------------------------------- -r794 | zas_ | 2008-05-20 23:51:25 +0200 (Tue, 20 May 2008) | 2 lines +commit 96293a9f07bf5057924635d9a23e4058a2807bb1 +Author: Vladimir Nadvornik +Date: Tue Jul 22 21:46:08 2008 +0000 -Use g_build_filename() to build paths. + basic infrastructure for early error and dangerous operations checking + it needs more work ------------------------------------------------------------------------- -r793 | zas_ | 2008-05-20 22:11:29 +0200 (Tue, 20 May 2008) | 3 lines +commit 3a442a31ebc195299be3d7bc289754b09370a5b4 +Author: Vladimir Nadvornik +Date: Tue Jul 22 18:27:12 2008 +0000 -Do not use glib posix wrappers since they were introduced in 2.6 -and we want 2.4 compatibility. + clean up fd->change on error ------------------------------------------------------------------------- -r792 | zas_ | 2008-05-20 22:06:11 +0200 (Tue, 20 May 2008) | 2 lines +commit c8d7bc43bfb2e8355dc6871dd5df87f38a34bcfd +Author: Vladimir Nadvornik +Date: Tue Jul 22 18:13:41 2008 +0000 -Use access() instead of g_access() which is only available in 2.8. + remove items from file_data_planned_change_hash when the operation is + canceled ------------------------------------------------------------------------- -r791 | zas_ | 2008-05-20 21:14:36 +0200 (Tue, 20 May 2008) | 3 lines +commit 3a0d2bb75e53a03a19e88a979403acd9455ade1f +Author: Vladimir Nadvornik +Date: Tue Jul 22 17:57:22 2008 +0000 -Use utf-8 charset instead of iso-8859-1. -Minor cleanup. + fixed stop button in editor dialog ------------------------------------------------------------------------- -r790 | nadvornik | 2008-05-20 19:43:37 +0200 (Tue, 20 May 2008) | 2 lines +commit 9f2b4b649b703a20350e1962684fe4422d4d39a8 +Author: Vladimir Nadvornik +Date: Tue Jul 22 17:40:24 2008 +0000 -updated ru.po by Alexandre Prokoudine + delete file_data_planned_change_hash when it is not used ------------------------------------------------------------------------- -r789 | zas_ | 2008-05-20 10:18:30 +0200 (Tue, 20 May 2008) | 2 lines +commit ff4704f404d5097698f17139c07f37bd76da3124 +Author: Vladimir Nadvornik +Date: Mon Jul 21 21:38:26 2008 +0000 -French translation was updated. + fixed + http://sourceforge.net/tracker/index.php?func=detail&aid=2019012&group_id=222125&atid=1054680 ------------------------------------------------------------------------- -r788 | zas_ | 2008-05-20 10:14:35 +0200 (Tue, 20 May 2008) | 2 lines +commit 84e21974c1752c800a9be9332429747355340d94 +Author: Vladimir Nadvornik +Date: Mon Jul 21 20:50:24 2008 +0000 -Sort out log_printf() vs printf_term() mix up. + file_util_rename_dir should not return anything ------------------------------------------------------------------------- -r787 | zas_ | 2008-05-20 09:52:49 +0200 (Tue, 20 May 2008) | 3 lines +commit 89736895aec4a438f30211d49b23391c22282669 +Author: Vladimir Nadvornik +Date: Mon Jul 21 20:40:29 2008 +0000 -Use print_term() instead of printf(), since it handles charset conversion -from utf8 to locale if needed. + added notification handler to view_dir ------------------------------------------------------------------------- -r786 | zas_ | 2008-05-19 13:09:23 +0200 (Mon, 19 May 2008) | 3 lines +commit c8f289fb70c4d46a985c701f2b8f8f8874cf7e30 +Author: Laurent Monin +Date: Mon Jul 21 08:31:43 2008 +0000 -Remove C-specific gcc options from CXXFLAGS. -Add few more warnings. + French translation was updated. ------------------------------------------------------------------------- -r785 | zas_ | 2008-05-19 11:27:30 +0200 (Mon, 19 May 2008) | 2 lines +commit 46a1dea4cc0119a888dd652a13b0dd444ca71e32 +Author: Laurent Monin +Date: Sun Jul 20 15:21:06 2008 +0000 -Fix some incomplete initialization warnings. + Update POTFILES.in. ------------------------------------------------------------------------- -r784 | zas_ | 2008-05-19 10:46:37 +0200 (Mon, 19 May 2008) | 2 lines +commit ddb8f1b1b4360a2a1fb5ac5902697a84c0339cec +Author: Laurent Monin +Date: Sun Jul 20 15:16:05 2008 +0000 -depreceated -> deprecated + Move uri_*() functions to separate files: uri_utils.[ch] ------------------------------------------------------------------------- -r783 | zas_ | 2008-05-19 10:43:11 +0200 (Mon, 19 May 2008) | 2 lines +commit 101520eae1a9f6a1efd7e0a659fa7342ec94f2ac +Author: Vladimir Nadvornik +Date: Sun Jul 20 15:04:40 2008 +0000 -Typo fixes. + periodic testing of changed files can be now disabled ------------------------------------------------------------------------- -r782 | zas_ | 2008-05-19 10:36:06 +0200 (Mon, 19 May 2008) | 2 lines +commit b8ea5645e91e203e09389311c412a0873e0343fc +Author: Laurent Monin +Date: Sun Jul 20 14:56:32 2008 +0000 -Create auxdir if needed. + Move history_list_*() functions to separate files: + history_list.c and history_list.h. ------------------------------------------------------------------------- -r781 | zas_ | 2008-05-19 10:24:10 +0200 (Mon, 19 May 2008) | 2 lines +commit c4685e9702624774fb70b01eb130f26f74ccc267 +Author: Vladimir Nadvornik +Date: Sun Jul 20 14:52:00 2008 +0000 -Fix spurious end of line introduced in revision 780. + implemented "create directory" command ------------------------------------------------------------------------- -r780 | bruclik | 2008-05-19 03:15:17 +0200 (Mon, 19 May 2008) | 10 lines +commit ae2ab4e282fe7851e502acb9f699814d38204176 +Author: Vladimir Nadvornik +Date: Sun Jul 20 13:59:55 2008 +0000 -configure.in was rewritten: -- uses PKG_CHECK_MODULES everywhere -- added --enable-debug (enable debugging support) -- added --enable-developer (developer mode, checks depreceated code ...) -- removed obsoleted INCLUDES from Makefile.am -Fixed src/debug.h (added glib.h). -Fixed src/exiv2.c compilation with libexiv2 v0.15. -Added src/trash.h to src/Makefile.am (fixed generating 'make dist'). + fixed file copy/move dialog +commit a3c139eafad2246f8bde6cef391def6ab4670127 +Author: Vladimir Nadvornik +Date: Sun Jul 20 13:19:22 2008 +0000 ------------------------------------------------------------------------- -r779 | bruclik | 2008-05-19 02:54:59 +0200 (Mon, 19 May 2008) | 3 lines + fixed the case when a renamed file is detected by directory scanning + before the external rename commands exits. We have to update the + FileData structure immediately, othervise we would get duplicate + entries. -Updated CODING (GPL header, macros, svn change-log, ...). +commit 8e0c8b700fad60a5de29b60144140f805668fcd3 +Author: Laurent Monin +Date: Sun Jul 20 12:20:12 2008 +0000 + Optimize history_list_add_to_key() a bit. ------------------------------------------------------------------------- -r778 | zas_ | 2008-05-18 23:14:01 +0200 (Sun, 18 May 2008) | 7 lines +commit 303bc18d4a21e0097d6eb6a9e266127294a26ebe +Author: Vladimir Nadvornik +Date: Sun Jul 20 11:29:12 2008 +0000 -Save order of Properties dialog tabs to rc file. -Users of GTK+ <2.10 can set tabs order directly in the rc file, -others can move tabs using drag'n drop. -The option is named properties.tabs_order, its default value -is "123" which is General, Keywords, Exif tabs (left to right). + fixed previous checkin +commit c6fd35649fa8e25e651dd202e03a211442d57f59 +Author: Vladimir Nadvornik +Date: Sun Jul 20 11:22:19 2008 +0000 ------------------------------------------------------------------------- -r777 | zas_ | 2008-05-18 14:56:18 +0200 (Sun, 18 May 2008) | 3 lines + implemented directory rename and delete operations -Cleanup and code redundancy reduction. +commit 9684fd6b6fcab39a5aa29c33da2ab3f60137665e +Author: Laurent Monin +Date: Sun Jul 20 07:52:16 2008 +0000 + Move out test outside the loop. ------------------------------------------------------------------------- -r776 | zas_ | 2008-05-18 13:39:58 +0200 (Sun, 18 May 2008) | 4 lines +commit 120db8041b40ffc83cb90d0b82084862707ec190 +Author: Laurent Monin +Date: Sat Jul 19 13:57:03 2008 +0000 -Memorize text to display in the log window when the window is -not yet created. On log window display, the memorized text -is then recalled and displayed. + Tidy up. ------------------------------------------------------------------------- -r775 | zas_ | 2008-05-18 09:36:57 +0200 (Sun, 18 May 2008) | 2 lines +commit 2e9c246e6145e7fb7fac6990524b718bc6826396 +Author: Laurent Monin +Date: Sat Jul 19 12:36:46 2008 +0000 -Do not create log window more than once. + Fix missing newline at end of file. ------------------------------------------------------------------------- -r774 | zas_ | 2008-05-18 00:37:04 +0200 (Sun, 18 May 2008) | 2 lines +commit 3054110d18c6717f764cab2baf31f929ebdcaa66 +Author: Vladimir Nadvornik +Date: Sat Jul 19 09:06:24 2008 +0000 -Fix formatted.SubjectDistance appearing twice in exif bar configuration. + increase reference count before sending notification in file_data_new ------------------------------------------------------------------------- -r773 | zas_ | 2008-05-17 23:28:02 +0200 (Sat, 17 May 2008) | 2 lines +commit a7213169bf5d2afbc94ef083fcb1aae6711746ee +Author: Vladimir Nadvornik +Date: Fri Jul 18 21:20:49 2008 +0000 -Update POTFILES.in. + fixed test for changed files in cache ------------------------------------------------------------------------- -r772 | zas_ | 2008-05-17 23:26:45 +0200 (Sat, 17 May 2008) | 1 line +commit c4de295c0a3115d91e45602f4f9ed5a69d5d7e0e +Author: Laurent Monin +Date: Fri Jul 18 09:55:15 2008 +0000 -Add a log window that shows normal and debug messages. For now, it was added to Help menu. ------------------------------------------------------------------------- -r771 | nadvornik | 2008-05-16 22:12:11 +0200 (Fri, 16 May 2008) | 2 lines + Introduce image_loader_set_done_func(). -fixed exiv2 version test +commit e1ea2ccd4d041e0ef457d6b94e4325340ca8d874 +Author: Laurent Monin +Date: Thu Jul 17 22:36:58 2008 +0000 ------------------------------------------------------------------------- -r770 | nadvornik | 2008-05-16 22:09:32 +0200 (Fri, 16 May 2008) | 3 lines + Reduce code redundancy by moving common code to new menu_choice_get_match_type(). -get processed values from exiv2 -http://sourceforge.net/tracker/index.php?func=detail&aid=1962444&group_id=222125&atid=1054680 +commit 6da5f506c0c4f58e352af4886120efa9765431e9 +Author: Vladimir Nadvornik +Date: Thu Jul 17 21:51:21 2008 +0000 ------------------------------------------------------------------------- -r769 | zas_ | 2008-05-16 16:59:45 +0200 (Fri, 16 May 2008) | 3 lines + reload changed images -Fix redundant application name in window titles. -It simplifies code. +commit 01e819ff19279f8291ccbbac04f7cb843109c59d +Author: Laurent Monin +Date: Tue Jul 15 15:37:14 2008 +0000 ------------------------------------------------------------------------- -r768 | zas_ | 2008-05-16 16:38:05 +0200 (Fri, 16 May 2008) | 2 lines + Move code from image_osd_update_cb() to separate functions. -French translation was updated. +commit 56907bd2e2deb8a01b2b0ca2c005ff4df0b81ef9 +Author: Laurent Monin +Date: Tue Jul 15 14:32:00 2008 +0000 ------------------------------------------------------------------------- -r767 | zas_ | 2008-05-16 14:16:49 +0200 (Fri, 16 May 2008) | 3 lines + Tidy up and code redundancy reduction. -Do not use printf() directly but use new wrapper function log_printf() instead. +commit 46f96c81c85a3e03e6756c718e3758db8c520208 +Author: Laurent Monin +Date: Tue Jul 15 12:52:02 2008 +0000 + Use a specific enum for image.zoom_mode values (ZoomMode) and + simplify calls to image_zoom_get_default(), dropping last parameter + which was always options->image.zoom_mode. ------------------------------------------------------------------------- -r766 | zas_ | 2008-05-16 14:08:51 +0200 (Fri, 16 May 2008) | 2 lines +commit e51449e7326f517be62d65c0263b8bbc2f8b85b6 +Author: Laurent Monin +Date: Sun Jul 13 14:50:07 2008 +0000 -Drop include "debug.h". + Improve ways to specify html browser (used for help, see bug 2015099). + Two new rc file options were added: + - helpers.html_browser.command_name + - helpers.html_browser.command_line + These are checked first before trying common browser locations. + If these do not lead to a valid browser, then geeqie will + search for geeqie_html_browser script in the path, then + it will try various common browsers. ------------------------------------------------------------------------- -r765 | zas_ | 2008-05-16 12:02:56 +0200 (Fri, 16 May 2008) | 3 lines +commit ccd82ce4a52dd8e7b60bf5a6dc56952255d1f6a1 +Author: Laurent Monin +Date: Sun Jul 13 13:51:23 2008 +0000 -Include debug.h from main.h since debug macros may be used anywhere in the code. + Apply debian-specific patch to launch help browser (bug 2015099). +commit e1dd1bb488601f3df4cd9b4b5d261c3f1d5a015a +Author: Laurent Monin +Date: Sun Jul 13 12:36:18 2008 +0000 ------------------------------------------------------------------------- -r764 | zas_ | 2008-05-16 11:10:56 +0200 (Fri, 16 May 2008) | 5 lines + Fix a segfault occuring when opening some collection files. + Skip all lines not starting with a # when only geometry is required. -Improve editor commands error display: -- display all errors (not only syntax errors) -- display errors from Preferences (checks are made on Apply or OK) +commit 19c2605cff0e070dc41424b913a624be8057a56a +Author: Laurent Monin +Date: Sat Jul 5 10:21:09 2008 +0000 + Prevent segfault in certain conditions when displaying debug message. ------------------------------------------------------------------------- -r763 | zas_ | 2008-05-16 10:37:07 +0200 (Fri, 16 May 2008) | 7 lines +commit 1823d233d1681647245a00996df74e08a67b0489 +Author: Laurent Monin +Date: Fri Jul 4 22:49:04 2008 +0000 -Improve editors a bit: -- allow whitespaces before and after %v, %V, %w -- allow % escaping using %% (mandatory to use shell commands than contain % characters) -- display a dialog on execution if a syntax error is detected (only for generic editors) -- update README editors section + French translation was updated. +commit 01e6b8f7eb33d65ea295731275a353e83721e40d +Author: Laurent Monin +Date: Fri Jul 4 20:32:48 2008 +0000 ------------------------------------------------------------------------- -r762 | zas_ | 2008-05-14 20:12:11 +0200 (Wed, 14 May 2008) | 9 lines + Optimize a bit when connected zoom and scrolling are unset, + just move the test outside loops. -The Encoding key is now deprecated by the FreeDesktop standard and all -strings are required to be encoded in UTF-8. This desktop entry -explicitly specifies an Encoding of UTF-8, which is harmless but no longer -necessary. +commit 4dfe7f7b01cb84421d6af7040ffcf74aabad02e7 +Author: Laurent Monin +Date: Fri Jul 4 17:21:07 2008 +0000 -See http://standards.freedesktop.org/desktop-entry-spec/1.0/apc.html + layout_color_button_press_cb(): tidy up, drop useless memory allocations, improve i18n. -Patch #1963689. +commit 4fa28d67f125e31256616b2102b7fdef52861584 +Author: Vladimir Nadvornik +Date: Thu Jul 3 20:16:15 2008 +0000 ------------------------------------------------------------------------- -r761 | zas_ | 2008-05-14 20:09:05 +0200 (Wed, 14 May 2008) | 3 lines + refresh thumbnails on file change -Patch #1963690 was applied. -It fixes hyphens/minus confusion in the man page. +commit 579c42a76147582e9c4ad2cb8b476e7033f434ac +Author: Vladimir Nadvornik +Date: Thu Jul 3 19:38:19 2008 +0000 ------------------------------------------------------------------------- -r760 | zas_ | 2008-05-14 19:00:25 +0200 (Wed, 14 May 2008) | 4 lines + set fallback thumbnail pixbuf only if the loading really fails -Simplify thumb_std_maint_moved(), since g_list_append knows -how to append to a NULL list. Patch by Uwe Ohse. +commit 1a227f62b8195434db73cd8b27f50bf5b39cee7e +Author: Laurent Monin +Date: Thu Jul 3 18:16:39 2008 +0000 + Fix missing references for the current directory in pan folder stuff. + It was causing an fd magick assertion failure. + Bug reported by Omari Stephens. ------------------------------------------------------------------------- -r759 | zas_ | 2008-05-14 18:52:55 +0200 (Wed, 14 May 2008) | 4 lines +commit 83c79d4c81a9b2521d102bbe414abb81722e0dd9 +Author: Laurent Monin +Date: Thu Jul 3 08:33:10 2008 +0000 -Simplify collect_manager_add_action(), since g_list_append knows -how to append to a NULL list. Patch by Uwe Ohse. + Increase debugging info in file_data_ref() and file_data_unref(). + When compiled with DEBUG defined, file and line of the caller is displayed + in debug log. +commit 86bea118fffeba039beb5838e0c401629d501faa +Author: Laurent Monin +Date: Wed Jul 2 08:38:47 2008 +0000 ------------------------------------------------------------------------- -r758 | zas_ | 2008-05-14 14:59:00 +0200 (Wed, 14 May 2008) | 2 lines + Optimize file_cache_get() by only moving element to front if needed + (most of the time there is no need). + Reduce code redundancy in file_cache_put() by calling file_cache_get(). + Enhance debugging code. -Merge vflist_row_by_path() into vflist_index_by_path(). +commit 5f4a945ac78df503f9765056e946c68905ed0a32 +Author: Vladimir Nadvornik +Date: Mon Jun 30 21:08:28 2008 +0000 ------------------------------------------------------------------------- -r757 | zas_ | 2008-05-14 12:40:43 +0200 (Wed, 14 May 2008) | 3 lines + fixed division by zero in pixbuf_renderer_get_scroll_center -Fix some typos. Thanks to Michal \u010ciha\u0159 and James R. Van Zandt. -Patch #1963691. +commit e2bd6f78452c5fbe3850dfbc6b353edfd8b42f65 +Author: Laurent Monin +Date: Sun Jun 29 15:51:54 2008 +0000 ------------------------------------------------------------------------- -r756 | zas_ | 2008-05-14 10:56:08 +0200 (Wed, 14 May 2008) | 2 lines + Merge thumb_loader_save_to_cache() and thumb_loader_mark_failure() + into thumb_loader_save_thumbnail(). + Most of the code was redundant. -Make vf_pop_menu_*_cb static. +commit 29242ec0f56bb937f754dd574979b380656e84e4 +Author: Laurent Monin +Date: Sun Jun 29 10:11:43 2008 +0000 ------------------------------------------------------------------------- -r755 | zas_ | 2008-05-13 22:31:35 +0200 (Tue, 13 May 2008) | 2 lines + Make better matching between options types in options.h and the rest of the code. + Most changes are from gint to gboolean pseudo type and between gint / guint. -French translation fixes. +commit f40224fd22d5387a0ad45859568d79d67060209f +Author: Laurent Monin +Date: Sat Jun 28 08:01:36 2008 +0000 ------------------------------------------------------------------------- -r754 | zas_ | 2008-05-13 22:21:00 +0200 (Tue, 13 May 2008) | 3 lines + layout_image_drag_cb(): optimize when connected scrolling is unset. -Resync POTFILES.in and *.po, update french translation and -regenerate statistics in README. +commit ed00275170d23e38bff5a01130e5056a799788c1 +Author: Laurent Monin +Date: Sat Jun 28 07:43:37 2008 +0000 ------------------------------------------------------------------------- -r753 | zas_ | 2008-05-13 22:13:44 +0200 (Tue, 13 May 2008) | 2 lines + Reduce number of parameters (mostly unused), just pass the event pointer. -Merge vflist_pop_menu() and vficon_pop_menu() into vf_pop_menu(). +commit 6f624aae6d3d044bc0e6058ee93cc43082838e53 +Author: Laurent Monin +Date: Sat Jun 28 00:44:31 2008 +0000 ------------------------------------------------------------------------- -r752 | zas_ | 2008-05-13 21:56:52 +0200 (Tue, 13 May 2008) | 2 lines + Fix warning: + thumb.c:31: warning : 'normalize_thumb' declared 'static' but never defined -Move VFICON_INFO() and VFLIST_INFO() macros to view_file.h +commit bfc848fe14ebb30a49356f1b2d96b6498e3d5667 +Author: Laurent Monin +Date: Fri Jun 27 22:57:48 2008 +0000 ------------------------------------------------------------------------- -r751 | zas_ | 2008-05-13 21:54:13 +0200 (Tue, 13 May 2008) | 2 lines + image_osd_mkinfo(): pipe replacement by " - " separator was fixed to work correctly with + empty first element. -vficon_pop_menu(): drop "gint active" parameter, use stored click_id instead. +commit 6b6574bad4336981d6b373c52259e43fa9743d17 +Author: Vladimir Nadvornik +Date: Fri Jun 27 21:35:21 2008 +0000 ------------------------------------------------------------------------- -r750 | zas_ | 2008-05-13 21:51:22 +0200 (Tue, 13 May 2008) | 3 lines + do not read keywords and comment between exif_read_fd and exif_free_fd + calls (fd->exif does not have reference counting) -vflist_pop_menu(): drop FileData * parameter, use stored click_fd instead. +commit 530a58fe366997da61f48b7c6156fa655d22d020 +Author: Vladimir Nadvornik +Date: Fri Jun 27 21:09:15 2008 +0000 + added pixbuf_fallback function + fixed thumb loader for non-image files ------------------------------------------------------------------------- -r749 | zas_ | 2008-05-13 21:45:04 +0200 (Tue, 13 May 2008) | 2 lines +commit 84accd5956890abf9612f9b7e0aa72d8e0ea7b8a +Author: Vladimir Nadvornik +Date: Fri Jun 27 18:43:05 2008 +0000 -Fix last patch, only set vf->clicked_mark for a valid mark. + fixed crash in entering fullscreen during loading ------------------------------------------------------------------------- -r748 | zas_ | 2008-05-13 21:32:25 +0200 (Tue, 13 May 2008) | 6 lines +commit 7d44fe8aa857d7a740a9b867301fa06f373ffcec +Author: Laurent Monin +Date: Fri Jun 27 10:00:55 2008 +0000 -Get rid of vflist_pop_menu() col_idx parameter, use new Viewfile field -named clicked_mark. -Marks numbering is now consistent with menus (starting at 1, 0 is an -invalid mark), assertions were modified accordingly. + osd_template_insert(): optimize and simplify using flags. +commit 42fc5158d4408a77c51570d34b5f83d0add42340 +Author: Laurent Monin +Date: Fri Jun 27 08:05:51 2008 +0000 ------------------------------------------------------------------------- -r747 | zas_ | 2008-05-13 18:09:43 +0200 (Tue, 13 May 2008) | 6 lines + image_osd_info_render(): ensure values are always escaped before using pango_layout_set_markup(). + Two helper functions were added: osd_template_insert() and osd_template_insert_and_free(). -Expand tilde with file: and view: remote parameters. -Now these are working: -geeqie -r file:~/dir -geeqie -r view:~user/file +commit ea7852bed519679c1a98f5b240e7065af7abef2e +Author: Laurent Monin +Date: Thu Jun 26 23:29:08 2008 +0000 + image_osd_info_render(): code cleanup and simplification, drop some useless memory allocations. ------------------------------------------------------------------------- -r746 | zas_ | 2008-05-13 16:49:38 +0200 (Tue, 13 May 2008) | 3 lines +commit 98622a4338ee516d3e06da6153adb61e6cd68b09 +Author: Laurent Monin +Date: Thu Jun 26 15:59:20 2008 +0000 -Display a message when invalid remote options are used. + Use flags for pr_zoom_*() functions. +commit b26d38c1a3189bf6d4edfdcab5d8dfe9aab19a9f +Author: Laurent Monin +Date: Thu Jun 26 14:43:52 2008 +0000 ------------------------------------------------------------------------- -r745 | zas_ | 2008-05-13 16:35:51 +0200 (Tue, 13 May 2008) | 2 lines + Use stricter types for image options. -Comparing tag id is not sufficient, check the tag name too. +commit cd68217e812b2419e92301d76902edd05c361aee +Author: Laurent Monin +Date: Thu Jun 26 12:23:48 2008 +0000 ------------------------------------------------------------------------- -r744 | zas_ | 2008-05-13 13:58:47 +0200 (Tue, 13 May 2008) | 2 lines + Use flags instead of int parameters for pixbuf_renderer_overlay_add(). -Keywords and comment can now be displayed in OSD info using %keywords% and %comment%. +commit a3ffd5d74d5baad16a8a35a02ab28267dd15efd2 +Author: Laurent Monin +Date: Thu Jun 26 11:48:40 2008 +0000 ------------------------------------------------------------------------- -r743 | zas_ | 2008-05-13 10:53:26 +0200 (Tue, 13 May 2008) | 2 lines + Only define ExifOrientationType if GQ_BUILD is not defined since + it is already defined in exif.h. -Move all remote stuff from main.c to remote.[ch]. +commit d29cd729b404fc3901d862214231ef514f855aa5 +Author: Laurent Monin +Date: Wed Jun 25 20:53:52 2008 +0000 ------------------------------------------------------------------------- -r742 | zas_ | 2008-05-13 10:02:46 +0200 (Tue, 13 May 2008) | 2 lines + Tidy up. -Move some functions from main.[ch] to new window.[ch]. +commit 0633bc36c636a0f2afa5bf3211639454870ac177 +Author: Laurent Monin +Date: Wed Jun 25 20:22:02 2008 +0000 ------------------------------------------------------------------------- -r741 | zas_ | 2008-05-13 09:34:37 +0200 (Tue, 13 May 2008) | 2 lines + French translation was updated. -Ensure that we end with UTF8 encoded comment and keywords. +commit 7c4531fa7d4bdf83eb347a0e2e31e92070773930 +Author: Vladimir Nadvornik +Date: Sun Jun 22 20:07:32 2008 +0000 ------------------------------------------------------------------------- -r740 | zas_ | 2008-05-13 01:26:00 +0200 (Tue, 13 May 2008) | 4 lines + optimized marks drawing -Reading of Iptc.Application2.Keywords should now be fixed. -Use uft8_validate_or_convert() on exif's text data to be safe. +commit 3d04c8792f8b45bc2a5ba7e69a269e0404cd40d0 +Author: Vladimir Nadvornik +Date: Sun Jun 22 20:01:20 2008 +0000 + show marks in iconview ------------------------------------------------------------------------- -r739 | zas_ | 2008-05-13 01:21:35 +0200 (Tue, 13 May 2008) | 2 lines +commit 975fc4e9e6d3601e83ecd38c159e841205b4bf59 +Author: Vladimir Nadvornik +Date: Sun Jun 22 10:01:26 2008 +0000 -Rename bar_exif_validate_text() to utf8_validate_or_convert() and move it to main.[ch]. + show sidecars in icon view ------------------------------------------------------------------------- -r738 | zas_ | 2008-05-13 01:00:04 +0200 (Tue, 13 May 2008) | 2 lines +commit 5a236ea28726e79b2e00b6b054580b6a4d00f441 +Author: Vladimir Nadvornik +Date: Sun Jun 22 09:40:57 2008 +0000 -bar_exif_validate_text(): use computed length and cleanup. + fixed in-place renaming ------------------------------------------------------------------------- -r737 | zas_ | 2008-05-12 21:56:28 +0200 (Mon, 12 May 2008) | 2 lines +commit 5b05e1156a0efc4e39afb58ae89a034d47b6aa81 +Author: Vladimir Nadvornik +Date: Sun Jun 22 09:19:42 2008 +0000 -Disable non-working Iptc.Application2.Keywords reading introduced in revision 736. + added possibility to disable grouping of selected files ------------------------------------------------------------------------- -r736 | zas_ | 2008-05-12 19:10:40 +0200 (Mon, 12 May 2008) | 5 lines +commit 58b7c37cd74e7f8eedca2b706c4b89137702c9f5 +Author: Vladimir Nadvornik +Date: Sat Jun 21 22:01:45 2008 +0000 -Extract and append keywords from Iptc.Application2.Keywords tags. -A function was added to make the keywords unique in the list. -Note: Iptc.Application2.Keywords is only read, not written. + cache size made configurable +commit c74e05815240fc255b0267d9d9f5ae4a60d1ae68 +Author: Vladimir Nadvornik +Date: Sat Jun 21 19:26:01 2008 +0000 ------------------------------------------------------------------------- -r735 | zas_ | 2008-05-12 12:46:23 +0200 (Mon, 12 May 2008) | 2 lines + measure pixbuf cache size in bytes -When an option was successfully read, just continue to next line. +commit 1986378ee25aef236908a6a1f67952406c9d51e7 +Author: Vladimir Nadvornik +Date: Sat Jun 21 16:00:13 2008 +0000 ------------------------------------------------------------------------- -r734 | zas_ | 2008-05-12 12:37:37 +0200 (Mon, 12 May 2008) | 2 lines + simple cache for loaded pixbufs -Minor formatting fix in rc file header. +commit 70fb724412e907f541d14eac8e1e67db474d1086 +Author: Vladimir Nadvornik +Date: Sat Jun 21 11:05:55 2008 +0000 ------------------------------------------------------------------------- -r733 | zas_ | 2008-05-12 10:52:17 +0200 (Mon, 12 May 2008) | 8 lines + renamed fd->pixbuf to fd->thumb_pixbuf -Rework read_*_option(): -- read_u?int_option() now interpret a value of "true" as 1 -- read_bool_option() now interpret any value different from 0 as true. -- make functions return TRUE on successful read, FALSE else +commit 065cba7850d0dc548bfc7c33ecddf50bbb0ba0d7 +Author: Vladimir Nadvornik +Date: Wed Jun 18 22:26:52 2008 +0000 -Theses changes will help to maintain compatibility when options are modified. + implemented generic FileData cache + use it for caching decoded exif data +commit 2ca1adb7912dfd23318e829d9f01c4e9a2f76284 +Author: Vladimir Nadvornik +Date: Tue Jun 17 20:25:05 2008 +0000 ------------------------------------------------------------------------- -r732 | zas_ | 2008-05-12 10:11:27 +0200 (Mon, 12 May 2008) | 3 lines + more robust thumbs progress bar -Rename option image_overlay.common.enabled to image_overlay.common.state -since it is not a boolean anymore. +commit 11224ad1e9f6e9517523beb1ffb62b973228ebc9 +Author: Vladimir Nadvornik +Date: Tue Jun 17 19:56:21 2008 +0000 ------------------------------------------------------------------------- -r731 | zas_ | 2008-05-12 02:22:38 +0200 (Mon, 12 May 2008) | 2 lines + do not allocate new buffer for thumbnails with correct orientation -Add some wrapper functions for not yet common code. +commit 304e05c4c8845e40cd58ec758d56c7174d202899 +Author: Vladimir Nadvornik +Date: Mon Jun 16 19:07:02 2008 +0000 ------------------------------------------------------------------------- -r730 | zas_ | 2008-05-12 01:56:40 +0200 (Mon, 12 May 2008) | 3 lines + fixed memory leak -Make vf_pop_menu_toggle_view_type_cb() independent of FILEVIEW_LIST/FILEVIEW_ICON real values. +commit 57a04dae8f42380d5df07158b1c80ba21f393c6c +Author: Vladimir Nadvornik +Date: Mon Jun 16 18:37:35 2008 +0000 + another try to free layout at exit ------------------------------------------------------------------------- -r729 | zas_ | 2008-05-12 01:47:59 +0200 (Mon, 12 May 2008) | 2 lines +commit b4d3e9956e2ce9ed23dab2fcf08974ec679f5453 +Author: Vladimir Nadvornik +Date: Sun Jun 15 21:52:15 2008 +0000 -Move a part of pop up menu common code to view_file.[ch]. + rotate thumbnails by exif ------------------------------------------------------------------------- -r728 | zas_ | 2008-05-12 01:09:39 +0200 (Mon, 12 May 2008) | 3 lines +commit f59f132343a9b70c1fbb8abc755d514751e3e2d7 +Author: Vladimir Nadvornik +Date: Sun Jun 15 20:09:15 2008 +0000 -Introduce vf_pop_menu_file_list() as a wrapper to -vflist_pop_menu_file_list() and vficon_pop_menu_file_list(). + use FileData in thumb_loader ------------------------------------------------------------------------- -r727 | zas_ | 2008-05-11 23:11:54 +0200 (Sun, 11 May 2008) | 2 lines +commit 0d80d51136e02c021dcc07f45d78adce8a3ada33 +Author: Vladimir Nadvornik +Date: Sat Jun 14 21:49:48 2008 +0000 -Use vf_* functions where possible. + use GtkSizeGroup to control initial size of split images ------------------------------------------------------------------------- -r726 | zas_ | 2008-05-11 22:38:21 +0200 (Sun, 11 May 2008) | 2 lines +commit 1df917cf51c93c886a2b27eb91d9161f5ea64b2f +Author: Vladimir Nadvornik +Date: Sat Jun 14 18:41:30 2008 +0000 -Drop unused layout_list_get_path() and vf*_index_get_path(). + preserve image center on refresh ------------------------------------------------------------------------- -r725 | zas_ | 2008-05-11 15:17:38 +0200 (Sun, 11 May 2008) | 2 lines +commit aac341d52f5b64196ffd78652fc95a58a5bfd6d0 +Author: Vladimir Nadvornik +Date: Sat Jun 14 18:33:40 2008 +0000 -French translation was updated. + use multiline description in vflist with large thumbnails + always display marks in the first column + show expander in "name" column ------------------------------------------------------------------------- -r724 | zas_ | 2008-05-11 15:14:58 +0200 (Sun, 11 May 2008) | 4 lines +commit ac6e8d73416d1b72e768729b917aa4532da3844a +Author: Vladimir Nadvornik +Date: Sat Jun 14 17:32:27 2008 +0000 -An option to save and restore the last path used was added. -This option appears as startup.use_last_path in rc file. -Preferences > General > Startup was modified accordingly. + join name and sidecars to one string ------------------------------------------------------------------------- -r723 | zas_ | 2008-05-11 14:23:26 +0200 (Sun, 11 May 2008) | 8 lines +commit 17344587a815f0057e8739cfbf5d2afbea4f2667 +Author: Vladimir Nadvornik +Date: Sat Jun 14 17:14:28 2008 +0000 -Rename options: -startup_path_enable -> startup.restore_path -startup_path -> startup.path + optimized vflist_setup_iter_recursive -Geeqie is still able to read old options. +commit 8244a9e46297c4adc8dd5095a04a199e9b536a71 +Author: Vladimir Nadvornik +Date: Sat Jun 14 12:43:39 2008 +0000 + iconlist_refresh optimization +commit 0f4fcde469fc6f9081e4078fa3a88f1c993ff296 +Author: Vladimir Nadvornik +Date: Sat Jun 14 12:30:44 2008 +0000 ------------------------------------------------------------------------- -r722 | zas_ | 2008-05-11 13:46:48 +0200 (Sun, 11 May 2008) | 2 lines + fixed iconview update after deletion of selected image -Fix help window title. +commit 37fd19aa6a5df3496f5995ac518599b1b74798b8 +Author: Laurent Monin +Date: Sat Jun 14 06:52:52 2008 +0000 ------------------------------------------------------------------------- -r721 | zas_ | 2008-05-11 13:44:58 +0200 (Sun, 11 May 2008) | 2 lines + Silent unused variable warning. -Use computed string length. +commit 5f7b05915dcf7c7ead03ba825ecdd1f825c07482 +Author: Vladimir Nadvornik +Date: Fri Jun 13 21:32:58 2008 +0000 ------------------------------------------------------------------------- -r720 | zas_ | 2008-05-11 13:41:32 +0200 (Sun, 11 May 2008) | 2 lines + optimized vflist_setup_iter -Slightly increase help window's default width. +commit 922cb25e24b4c735857883757c923bc03002f475 +Author: Laurent Monin +Date: Fri Jun 13 13:33:11 2008 +0000 ------------------------------------------------------------------------- -r719 | zas_ | 2008-05-11 13:30:41 +0200 (Sun, 11 May 2008) | 4 lines + French translation was updated. -Add an help button to OSD info configuration in Preferences dialog. -Make its own section named "Overlay Screen Display". +commit 669a4954c3e7a9c8b7dd5fe8610e6bd163787738 +Author: Laurent Monin +Date: Fri Jun 13 12:27:41 2008 +0000 + Revert patches 759 and 760. + 759 patch broke adding selection of files through sort manager + to an unopened collection. ------------------------------------------------------------------------- -r718 | zas_ | 2008-05-11 12:25:04 +0200 (Sun, 11 May 2008) | 5 lines +commit 16aa61eb9064f9a2ff7faeb5cb6c49878ea0d735 +Author: Laurent Monin +Date: Fri Jun 13 11:51:23 2008 +0000 -Partially update main README. -A section concerning overlay info was added. -Translation statistics were updated. + Display total size of files in collection window, for the list and for the selection. +commit c687f78e1f9625ec8afb0bfc04e43baf9c841a7d +Author: Laurent Monin +Date: Fri Jun 13 11:11:57 2008 +0000 ------------------------------------------------------------------------- -r717 | zas_ | 2008-05-11 11:37:46 +0200 (Sun, 11 May 2008) | 50 lines + Optionnally display directory's date in list view. + It can be set through Preferences > Advanced > Behavior and + is saved to rc file as layout.show_directory_date option. -Change translations statistics formatting to match the style -use in the README file. +commit 0a1ad21b4dda0f856b023b01dfd9df79f71ca97f +Author: Laurent Monin +Date: Thu Jun 12 22:43:32 2008 +0000 -Here is the result for current trunk: + load_options_from(): + - do not copy option name and value anywhere, only copy value_all to a separate buffer + - allow more relaxed syntax on read, so we can correctly read option name and value + even if user made some errors like replacing ':' by '=' or inserting a space before ':'. + - minor aesthetical changes -Translations statistics -Date: Sun, 11 May 2008 11:33:14 +0200 +commit 11a07ebce120ac8f073b1ffbd2dc828ad54783e1 +Author: Laurent Monin +Date: Thu Jun 12 21:21:32 2008 +0000 -Note: completion % in the chart below may not be quite correct - when fuzzy translations exist but do not appear in the source. - For exact results, run make update-po with up to date POTFILES.in. - comp % = trans / (trans + fuzzy + untrans) + Add a comment about relative positions of image overlay in the rc file. -Language Comp(%) Trans Fuzzy Untrans Total -fr 100.00 985 0 0 985 -be 90.56 892 25 68 985 -eu 68.53 675 150 160 985 -eo 68.22 672 153 160 985 -vi 68.02 670 156 159 985 -it 67.82 668 154 163 985 -pt_BR 67.82 668 154 163 985 -zh_TW 66.90 659 150 176 985 -sk 66.50 655 158 172 985 -fi 64.37 634 176 175 985 -nl 64.37 634 179 172 985 -sv 64.16 632 175 178 985 -bg 64.06 631 175 179 985 -ca 64.06 631 175 179 985 -cs 64.06 631 175 179 985 -de 64.06 631 175 179 985 -es 64.06 631 175 179 985 -ja 64.06 631 175 179 985 -ru 64.06 631 175 179 985 -pl 60.61 597 148 240 985 -ar 42.94 423 315 247 985 -ro 37.56 370 342 273 985 -hu 36.14 356 332 297 985 -id 19.70 194 408 383 985 -et 19.29 190 407 388 985 -uk 17.16 169 411 405 985 -nb 15.94 157 416 412 985 -zh_CN.GB2312 15.94 157 416 412 985 -th 15.13 149 413 423 985 -sl 14.72 145 419 421 985 -da 12.99 128 402 455 985 -ko 11.37 112 52 821 985 -tr 6.60 65 398 522 985 +commit 943be3f7f7676c11b6826fd507e98477aee44281 +Author: Laurent Monin +Date: Thu Jun 12 20:33:51 2008 +0000 + Allow to set image overlay info position through options: + - image_overlay.common.x + - image_overlay.common.y + + For now, there are only editable through rc file. +commit e6b5b17219e75d276407a55c9fa9833a0d3a5848 +Author: Laurent Monin +Date: Thu Jun 12 20:17:22 2008 +0000 ------------------------------------------------------------------------- -r716 | zas_ | 2008-05-10 23:29:53 +0200 (Sat, 10 May 2008) | 25 lines + Move some functions from image.[ch] to image-overlay.c and make them static: + - image_overlay_add() + - image_overlay_set() + - image_overlay_remove() + - image_overlay_get() (unused) -Fix display of collection in overlay info. -Due to markup escaped collection was displayed instead of collection's in italic. +commit c5eb8769b9462b318f52c0d70635fda0c92038cc +Author: Vladimir Nadvornik +Date: Thu Jun 12 18:30:33 2008 +0000 -Overlay info syntax was extended to allow the wrapping of displayed data with markup. + reverted changes in layout_close made in rev. 890 and 901 -General syntax is: %name[:length limit][:extra]% -Extra string uses special character '*' to mark the place of the data to display. -If no '*' is present, then extra string is just appended to data. -Any "\n" is replaced by a newline on display. -Pango mark up is accepted in left and right parts. -If data is empty, nothing will be displayed. +commit 86a4f3c90de18942b84b33046721801cb1edd504 +Author: Vladimir Nadvornik +Date: Tue Jun 10 19:25:21 2008 +0000 -Examples: -"%name:*\n%" -> name is displayed in italics ended with a newline -"%size:\n%" -> size is displayed with a newline at end -"%formatted.ISOSpeedRating:ISO *%" -> prefix iso number with "ISO " (ie. "ISO 100") -"Collection *\n" -> display collection name in bold prefixed by "Collection " and a newline is appended + fixed vdtree_sort_cb +commit 69b52cb5e907359a473418866f74461822448737 +Author: Vladimir Nadvornik +Date: Tue Jun 10 18:39:19 2008 +0000 -Collection name formatting was slighly improved by not displaying the .gqv extension. -The default overlay info string was modified to use the new syntax, but older info strings should be -displayed as usual. + fixed segfault in vd_rename_cb +commit 08524203c709cf0013c2bd1d04c348067685e526 +Author: Vladimir Nadvornik +Date: Tue Jun 10 18:19:17 2008 +0000 + dropped vficon_sync, use vficon_refresh everywhere ------------------------------------------------------------------------- -r715 | zas_ | 2008-05-10 16:22:18 +0200 (Sat, 10 May 2008) | 2 lines +commit f42d498ea1a214bb6c7bf0c6e451489a50c9ab7f +Author: Laurent Monin +Date: Tue Jun 10 11:55:18 2008 +0000 -image_osd_get() now returns OsdShowFlags. + collection_from_dnd_data(): simplify and optimize. ------------------------------------------------------------------------- -r714 | zas_ | 2008-05-10 15:54:25 +0200 (Sat, 10 May 2008) | 2 lines +commit 554bfe983c1442fc84a832a0a6d6cc89ef8182a7 +Author: Laurent Monin +Date: Tue Jun 10 11:27:35 2008 +0000 -Display a simple grid with histogram. + collection_info_list_to_dnd_data(): simplify and optimize. ------------------------------------------------------------------------- -r713 | zas_ | 2008-05-10 14:33:52 +0200 (Sat, 10 May 2008) | 2 lines +commit 55be71b45a3c28de13d1c532bd2d6e9278fc0239 +Author: Vladimir Nadvornik +Date: Mon Jun 9 20:27:39 2008 +0000 -Initialize to correct value (OSD_SHOW_NOTHING instead of FALSE). + moved notification to view_file.c ------------------------------------------------------------------------- -r712 | zas_ | 2008-05-10 11:00:14 +0200 (Sat, 10 May 2008) | 4 lines +commit e04699877776b3d59fc4ac827cc57166f47328f6 +Author: Vladimir Nadvornik +Date: Mon Jun 9 19:43:56 2008 +0000 -Save full OSD state to rc file and restore it on startup. -It allows to restore OSD with or without histogram depending -on previous state. + run idle function just once ------------------------------------------------------------------------- -r711 | zas_ | 2008-05-09 14:43:10 +0200 (Fri, 09 May 2008) | 3 lines +commit d77ba4a93e80fa8e39ce81d7cb803c55e7da0ca7 +Author: Vladimir Nadvornik +Date: Mon Jun 9 19:41:37 2008 +0000 -image_osd_info_render(): if there's no fd, just return. + use vficon_refresh for updating +commit 1e0be504a15f4eb0228b8b99d69741fed67e6ff5 +Author: Vladimir Nadvornik +Date: Mon Jun 9 19:00:47 2008 +0000 ------------------------------------------------------------------------- -r710 | zas_ | 2008-05-09 14:33:24 +0200 (Fri, 09 May 2008) | 5 lines + handle deletion of selected files -Move overlay histogram stuff from ImageWindow to OverlayStateData. -It simplifies things a lot and make more sense. +commit eff5536c6f25a057eacc0c9a59ef4a0997ce50e5 +Author: Vladimir Nadvornik +Date: Mon Jun 9 18:28:28 2008 +0000 -Note: overlay icons display is broken since a long time it seems. + optimized vficon_refresh_real ------------------------------------------------------------------------- -r709 | zas_ | 2008-05-09 13:15:56 +0200 (Fri, 09 May 2008) | 2 lines +commit f4c575e663819adb425f9a7468cd7614a56b03be +Author: Laurent Monin +Date: Mon Jun 9 10:10:34 2008 +0000 -Introduce image_get_osd_data() and image_set_osd_data(). + Minor fixes and add a note about variable declaration. ------------------------------------------------------------------------- -r708 | zas_ | 2008-05-09 11:58:46 +0200 (Fri, 09 May 2008) | 2 lines +commit 1e2563b337e30225c07935af8041a7d1744c8d72 +Author: Laurent Monin +Date: Mon Jun 9 07:14:46 2008 +0000 -image_osd_get() and image_osd_set() now uses flags. + Use unsigned type for marks since it is used as a bitfield. ------------------------------------------------------------------------- -r707 | zas_ | 2008-05-09 11:34:38 +0200 (Fri, 09 May 2008) | 3 lines +commit f104380fae8162102711930439e8b2e5fc9e3910 +Author: Vladimir Nadvornik +Date: Mon Jun 9 07:06:53 2008 +0000 -image_osd_histogram_chan_toggle(), image_osd_histogram_log_toggle(): -reduce indentation level. + fixed saving options on exit ------------------------------------------------------------------------- -r706 | zas_ | 2008-05-09 10:39:18 +0200 (Fri, 09 May 2008) | 7 lines +commit 020655c63732ec867014ba4e41637831789e05c3 +Author: Laurent Monin +Date: Sun Jun 8 23:42:51 2008 +0000 -Preserve last histogram modes. -When a new histogram is displayed, it uses previously chosen -modes. -These modes are saved on exit to rc file as options: -histogram.last_channel_mode -histogram.last_log_mode + Tidy up: add/remove white lines, minor code changes. ------------------------------------------------------------------------- -r705 | zas_ | 2008-05-09 10:03:25 +0200 (Fri, 09 May 2008) | 2 lines +commit 1f83c4e6344aeed363e504be79d50d1485dd8160 +Author: Vladimir Nadvornik +Date: Sun Jun 8 21:21:13 2008 +0000 -Update CODING and HACKING files, and add po/README file for translators. + improved vficon_populate ------------------------------------------------------------------------- -r704 | zas_ | 2008-05-09 09:46:18 +0200 (Fri, 09 May 2008) | 2 lines +commit a871f2934cd24dd852a1810a82d7029cf8cfb3e9 +Author: Vladimir Nadvornik +Date: Sun Jun 8 20:24:46 2008 +0000 -Make lirc_cleanup() and lirc_input_callback() static. + vficon_sync speed-up ------------------------------------------------------------------------- -r703 | zas_ | 2008-05-09 09:32:30 +0200 (Fri, 09 May 2008) | 4 lines +commit b4f826d25c1daec9e7b3ca63203b615b2490ac8e +Author: Vladimir Nadvornik +Date: Sun Jun 8 19:09:44 2008 +0000 -Use function(void) instead of function() for declaring functions which -do not take any parameters at all. -It respects current Geeqie coding style more. + better check for notify type ------------------------------------------------------------------------- -r702 | zas_ | 2008-05-09 00:59:14 +0200 (Fri, 09 May 2008) | 4 lines +commit c64e06ce0192ac8386a54296c09c2b5ee5989aa5 +Author: Vladimir Nadvornik +Date: Sun Jun 8 09:25:39 2008 +0000 -In the search results view, hide dimensions column instead of -displaying an empty one. -When dimensions search criteria is used, it is always displayed. + fixed switching thumbnails in listview on and off - bug 1984825 ------------------------------------------------------------------------- -r701 | zas_ | 2008-05-09 00:49:16 +0200 (Fri, 09 May 2008) | 3 lines +commit cd2e0e411d683cd490371d4756b0235e2679071a +Author: Vladimir Nadvornik +Date: Sat Jun 7 22:44:17 2008 +0000 -Reset thumbnail column to NULL when hidden. -It fixes bug 1960274. + various refresh and notification fixes ------------------------------------------------------------------------- -r700 | zas_ | 2008-05-08 22:21:03 +0200 (Thu, 08 May 2008) | 2 lines +commit b993ae7cb2ecc511e009ee18dfa720fd66e3a715 +Author: Vladimir Nadvornik +Date: Sat Jun 7 15:08:33 2008 +0000 -search_status_update(): slightly reduce code redundancy. + various notification improvements ------------------------------------------------------------------------- -r699 | zas_ | 2008-05-08 14:50:25 +0200 (Thu, 08 May 2008) | 4 lines +commit 063bd585c8e7e4c8bf3c00a0403f7a6ba88cb180 +Author: Vladimir Nadvornik +Date: Sat Jun 7 10:45:33 2008 +0000 -Use g_ascii_strncasecmp() instead of strncasecmp() where applicable. -Add a FIXME where potential improper usage of strncasecmp() is made. + use the new notification for collections +commit ee08f41b89a36d13dfabb071fccdb532c58f69bf +Author: Laurent Monin +Date: Sat Jun 7 10:18:30 2008 +0000 ------------------------------------------------------------------------- -r698 | zas_ | 2008-05-08 14:38:34 +0200 (Thu, 08 May 2008) | 3 lines + Display Lirc state in config log. + Re-organize the config log a bit. -Use g_ascii_strcasecmp() instead of strcasecmp() where ascii-only strings -are used. +commit 4df45b3ded4ba25fe8daaafdb3ea0de18eb9769c +Author: Vladimir Nadvornik +Date: Sat Jun 7 09:36:12 2008 +0000 ------------------------------------------------------------------------- -r697 | zas_ | 2008-05-08 01:27:26 +0200 (Thu, 08 May 2008) | 8 lines + use new notification in img-view -Replace deprecated functions by their counterparts: -g_strcasecmp() -> g_ascii_strcasecmp() -g_strncasecmp() -> g_ascii_strncasecmp() -gtk_input_remove() -> g_source_remove() -g_io_channel_close() -> g_io_channel_shutdown() + g_io_channel_unref() +commit 92497f66b819d5862cc221344b102d04c59204f4 +Author: Vladimir Nadvornik +Date: Sat Jun 7 09:10:01 2008 +0000 -All these are deprecated either since 2.2 or 2.4. + use new notification in layout and layout_image ------------------------------------------------------------------------- -r696 | zas_ | 2008-05-08 00:54:33 +0200 (Thu, 08 May 2008) | 3 lines +commit f745066286b72604eddc365c088df7a82eafbbcd +Author: Vladimir Nadvornik +Date: Sat Jun 7 08:13:22 2008 +0000 -Resync po files. -French translation was updated. + used new notification in search.c ------------------------------------------------------------------------- -r695 | zas_ | 2008-05-08 00:48:30 +0200 (Thu, 08 May 2008) | 5 lines +commit 7637e235738516de25759d26d3feb45a171a18d3 +Author: Vladimir Nadvornik +Date: Sat Jun 7 07:45:08 2008 +0000 -Add a way to invert the current selection. -An item labeled "Invert selection" was added to the Select submenu -in the main menu. + used new notification in dupe.c +commit dd62fe18714c2f714e444c6c6f2de5e7e07acd84 +Author: Vladimir Nadvornik +Date: Fri Jun 6 22:34:15 2008 +0000 ------------------------------------------------------------------------- -r694 | zas_ | 2008-05-07 01:58:08 +0200 (Wed, 07 May 2008) | 2 lines + used new notification in cache_maint -Tidy up. +commit f335345202a840721560f5aab41ba110a449ddd1 +Author: Vladimir Nadvornik +Date: Fri Jun 6 22:11:03 2008 +0000 ------------------------------------------------------------------------- -r693 | zas_ | 2008-05-07 01:53:12 +0200 (Wed, 07 May 2008) | 2 lines + added NotifyType -French translation was updated. +commit 8bca5d11043655dcb7156598c15884b81eabb83a +Author: Vladimir Nadvornik +Date: Fri Jun 6 21:50:09 2008 +0000 ------------------------------------------------------------------------- -r692 | zas_ | 2008-05-07 01:52:09 +0200 (Wed, 07 May 2008) | 2 lines + realtime file monitor -Add trash.c. +commit f0ca274daef77b01f134d6c556d2efa775169944 +Author: Vladimir Nadvornik +Date: Fri Jun 6 20:59:03 2008 +0000 ------------------------------------------------------------------------- -r691 | nadvornik | 2008-05-06 23:35:31 +0200 (Tue, 06 May 2008) | 2 lines + zero-lenght path must be allowed for now -moved safe delete functions to separate file +commit 765ce1d52bad52bbfeb8b930c0428318d93185d1 +Author: Laurent Monin +Date: Fri Jun 6 08:01:19 2008 +0000 ------------------------------------------------------------------------- -r690 | nadvornik | 2008-05-06 22:24:16 +0200 (Tue, 06 May 2008) | 2 lines + French translation was updated. -use some of the new functions in filedata.c +commit f64e2fa6ee80241e0bcd786c7c9dc3f70980367d +Author: Laurent Monin +Date: Thu Jun 5 23:31:22 2008 +0000 ------------------------------------------------------------------------- -r689 | zas_ | 2008-05-06 19:00:55 +0200 (Tue, 06 May 2008) | 3 lines + Fix "No newline at end of file" warning. -Allow the user to append or replace comments for a group of selected files. -Two buttons were added to the Keywords panel. +commit 7839d6af203658adba7d3de9d18233f48bffc292 +Author: Vladimir Nadvornik +Date: Thu Jun 5 18:43:44 2008 +0000 ------------------------------------------------------------------------- -r688 | zas_ | 2008-05-06 14:31:23 +0200 (Tue, 06 May 2008) | 6 lines + use new notification in vficon -Use a dedicated option to enable keywords and comment saving as XMP tags -in image's files. -This new option is named "save_metadata_in_image_file" in configuration file. -User can toggle it through Preferences > Advanced > Miscellaneous > Store keywords and comments as XMP tags in image files. -Description of enable_metadata_dirs was modified as an attempt to improve clarity. +commit 3cf04e271280aed1006b46d02e25b5d026c9a3e2 +Author: Laurent Monin +Date: Thu Jun 5 09:24:42 2008 +0000 ------------------------------------------------------------------------- -r687 | zas_ | 2008-05-06 14:03:39 +0200 (Tue, 06 May 2008) | 2 lines + Compare paths using utf8_collate_key() since paths are utf8-encoded. + It fixes bug 1959854. -comment_xmp_read(), comment_xmp_write(): cleanup and improve readibility. +commit baf540a744f37d692c00c740cfe77505f3e4971c +Author: Laurent Monin +Date: Thu Jun 5 08:41:02 2008 +0000 ------------------------------------------------------------------------- -r686 | zas_ | 2008-05-05 23:27:39 +0200 (Mon, 05 May 2008) | 2 lines + Use uft8_collate_key() to sort utf8 strings. + Modify file_data_set_path() to sync collate keys and file_data_pool + on path change. + + Partially fix bug 1959854. -French translation was updated, various fixes. +commit 6129e31e323e0064a6c9bb2285dab6cf32088146 +Author: Vladimir Nadvornik +Date: Wed Jun 4 21:12:47 2008 +0000 ------------------------------------------------------------------------- -r685 | zas_ | 2008-05-05 22:56:20 +0200 (Mon, 05 May 2008) | 2 lines + new notification system (used only in vflist for now) -Belarusian translation was updated. Thanks to Pavel Piatruk. +commit b83763acf8f3ec6b12ca5302a6e7c73d20eb2ecb +Author: Vladimir Nadvornik +Date: Tue Jun 3 19:44:19 2008 +0000 ------------------------------------------------------------------------- -r684 | nadvornik | 2008-05-05 22:51:51 +0200 (Mon, 05 May 2008) | 2 lines + replaced directory path with FileData* dir_fd -started implementation of API for sidecar files +commit af94f830d3c67610709600c6a57e85dc583630c1 +Author: Laurent Monin +Date: Tue Jun 3 15:54:05 2008 +0000 ------------------------------------------------------------------------- -r683 | zas_ | 2008-05-05 22:51:50 +0200 (Mon, 05 May 2008) | 2 lines + Allow to modify the aspect of Geeqie through the use of a + gtkrc file that may be present in the geeqie rc directory. + Patch by Aldric RENAUDIN and me. -Update POTFILES.in (filelist.c -> filedata.c). +commit fa9d41fdd5e0e83247ffcf9195db3c5d069a1976 +Author: Laurent Monin +Date: Tue Jun 3 13:54:22 2008 +0000 ------------------------------------------------------------------------- -r682 | zas_ | 2008-05-05 22:49:40 +0200 (Mon, 05 May 2008) | 3 lines + Replace hardcoded collection filename extension by a macro (GQ_COLLECTION_EXT). -Modify regen_potfiles.sh to generate a patch instead of -directly applying changes to POTFILES.in. +commit 02ad66458b97d359e9612846624e49f42d7109ba +Author: Laurent Monin +Date: Tue Jun 3 11:24:16 2008 +0000 ------------------------------------------------------------------------- -r681 | nadvornik | 2008-05-05 21:20:46 +0200 (Mon, 05 May 2008) | 2 lines + Drop initialization to NULL since filelist_read() will take care of it. -added .gqv to known file types +commit 3df14dfb67589c306fb4095b7087638d4aad61bc +Author: Laurent Monin +Date: Tue Jun 3 09:41:00 2008 +0000 ------------------------------------------------------------------------- -r680 | nadvornik | 2008-05-05 21:11:12 +0200 (Mon, 05 May 2008) | 2 lines + filelist_read_real(): optimize and clean up. -split filelist.c to filefilter.c and filedata.c +commit c3cbb65ba80d2339026513a32fac2ddf1f866bbe +Author: Laurent Monin +Date: Tue Jun 3 09:03:33 2008 +0000 ------------------------------------------------------------------------- -r679 | zas_ | 2008-05-05 11:21:01 +0200 (Mon, 05 May 2008) | 2 lines + Reduce indentation level. -Revert wrong patch rev 676. +commit 18f3117f7949d432a1ebf2d4bfcb47a1a50b146d +Author: Laurent Monin +Date: Tue Jun 3 08:57:46 2008 +0000 ------------------------------------------------------------------------- -r678 | zas_ | 2008-05-05 11:12:07 +0200 (Mon, 05 May 2008) | 4 lines + Reduce indentation level. -Add an helper script to regenerate POTFILES.in file. -POTFILES.in was updated. -French translation was updated. +commit 688b1111bc04b733c4d879b16faf5c75d4bcbdbf +Author: Laurent Monin +Date: Tue Jun 3 08:53:53 2008 +0000 ------------------------------------------------------------------------- -r677 | zas_ | 2008-05-05 10:32:18 +0200 (Mon, 05 May 2008) | 2 lines + collection_table_find_data_by_coord(): tidy up. -Revert patch 675, and correctly fix gtk assertion failure. +commit 25c47b533a126a95dd10c663d9f6a32b5e78b8e5 +Author: Laurent Monin +Date: Tue Jun 3 07:37:24 2008 +0000 ------------------------------------------------------------------------- -r676 | zas_ | 2008-05-05 10:15:52 +0200 (Mon, 05 May 2008) | 2 lines + vflist_maint(): only allocate memory and compare strings if needed. -Fix two memory leaks. +commit 9069f1e009b20f29cf15c7ad6632476589f8516c +Author: Laurent Monin +Date: Tue Jun 3 07:32:13 2008 +0000 ------------------------------------------------------------------------- -r675 | zas_ | 2008-05-05 09:46:32 +0200 (Mon, 05 May 2008) | 3 lines + layout_real_renamed(), layout_real_removed(), layout_real_moved(): + simplify code. -Fix Gtk-CRITICAL **: gtk_label_set_text: assertion `GTK_IS_LABEL (label)' failed -when swapping to/from file icon view. +commit e1edb9d5c4d980e5c1615f96cd91804cb62ed922 +Author: Vladimir Nadvornik +Date: Sat May 31 19:46:26 2008 +0000 ------------------------------------------------------------------------- -r674 | zas_ | 2008-05-05 01:57:20 +0200 (Mon, 05 May 2008) | 2 lines + do not change original FileData on copy -vficon_release_cb(): use switch() and cleanup. +commit 7fe6112289193b5421a08fc9a27da23a293d8622 +Author: Vladimir Nadvornik +Date: Sat May 31 19:44:41 2008 +0000 ------------------------------------------------------------------------- -r673 | zas_ | 2008-05-05 01:20:43 +0200 (Mon, 05 May 2008) | 2 lines + replaced vflist_maint functions by vflist_refresh - it allows to follow + changes made by external editors more precisely -Minor tidyup. +commit 10e0bd5513c5c314d7feba61bac30c2d2bd50669 +Author: Vladimir Nadvornik +Date: Fri May 30 21:41:46 2008 +0000 ------------------------------------------------------------------------- -r672 | zas_ | 2008-05-05 01:06:46 +0200 (Mon, 05 May 2008) | 2 lines + vflist_populate_view: better handle selected files that are renamed or deleted -Drop unused vficon_select_by_path() and vflist_select_by_path(). +commit 44179fa3ab21aca878d86a7b84a4822927e62dfb +Author: Vladimir Nadvornik +Date: Fri May 30 20:13:16 2008 +0000 ------------------------------------------------------------------------- -r671 | zas_ | 2008-05-05 01:03:36 +0200 (Mon, 05 May 2008) | 2 lines + fixed thumb index (thumbnails are shown again) -Minor cleanup. +commit f5bae1ffc402de38549948787c689ce02fc598f1 +Author: Vladimir Nadvornik +Date: Fri May 30 19:53:52 2008 +0000 ------------------------------------------------------------------------- -r670 | nadvornik | 2008-05-04 23:54:20 +0200 (Sun, 04 May 2008) | 2 lines + simplified vflist_populate_view -dropped path_list functions, use filelist functions everywhere +commit ce29b00d2ae2d4461da481c9703d1a1e34d03926 +Author: Laurent Monin +Date: Fri May 30 08:39:52 2008 +0000 ------------------------------------------------------------------------- -r669 | zas_ | 2008-05-04 21:00:39 +0200 (Sun, 04 May 2008) | 9 lines + Use functions to set editors name and command and ensure they are + utf8-encoded. + Previously, non-utf8 strings from rc file caused some issues. -Remove unused functions: -vflist_set_status_func() -vflist_set_thumb_status_func() -vflist_set_layout() -vficon_set_status_func() -vficon_set_thumb_status_func() -vficon_set_layout() +commit 639e6684b4c4097f95fc2d732eb98a8119d09791 +Author: Laurent Monin +Date: Fri May 30 08:36:23 2008 +0000 + Make utf8_validate_or_convert() to always allocate a new string. ------------------------------------------------------------------------- -r668 | zas_ | 2008-05-04 20:45:06 +0200 (Sun, 04 May 2008) | 2 lines +commit ab16da5e16b325b51e888d8969360b48770b0cf3 +Author: Laurent Monin +Date: Fri May 30 07:20:25 2008 +0000 -Drop ViewFileIcon, use ViewFile and ViewFileInfoIcon instead. + Check for existing editor command using is_valid_editor_command(). ------------------------------------------------------------------------- -r667 | zas_ | 2008-05-04 18:16:07 +0200 (Sun, 04 May 2008) | 2 lines +commit 7afa3a0b07b38b082a647bc50c046a4d9758a1e7 +Author: Laurent Monin +Date: Thu May 29 07:58:34 2008 +0000 -Drop ViewFileList, use ViewFile and ViewFileInfoList instead. + Preserve properties window width and height during session even when + layout.save_window_positions is not set. + It restores the pre revision 858 behavior. ------------------------------------------------------------------------- -r666 | zas_ | 2008-05-04 13:47:36 +0200 (Sun, 04 May 2008) | 2 lines +commit 05f3eb89357157adbe443d71986902c2e80c997f +Author: Laurent Monin +Date: Thu May 29 07:52:05 2008 +0000 -Prepare switch to ViewFile (unused yet). + Save properties window width and height to rc file and restore + them on next session if layout.save_window_positions is set to TRUE. ------------------------------------------------------------------------- -r665 | zas_ | 2008-05-04 02:32:05 +0200 (Sun, 04 May 2008) | 3 lines +commit f89fbbf03e4d4593445a2fa731557db2596b0305 +Author: Vladimir Nadvornik +Date: Wed May 28 22:12:10 2008 +0000 -Shorten Edit menu labels, dropping "in ". It will ease -translations too, and user can define its own label in Preferences. + improved infrastructure for tracing changes, optimized vflist_populate_view ------------------------------------------------------------------------- -r664 | zas_ | 2008-05-04 02:21:14 +0200 (Sun, 04 May 2008) | 3 lines +commit 335a8f5397ddda92fc0bf7acc0d3e48be3732cc8 +Author: Vladimir Nadvornik +Date: Tue May 27 18:46:34 2008 +0000 -Do not show Copy, Move, Rename, Delete, New Folder external commands -in the Edit section of contextual menus. + measure time of filelist update ------------------------------------------------------------------------- -r663 | zas_ | 2008-05-04 02:16:37 +0200 (Sun, 04 May 2008) | 2 lines +commit 01a388eb2885bc5a9dbbb0faafc437a171ff557d +Author: Vladimir Nadvornik +Date: Tue May 27 18:37:15 2008 +0000 -Use GQ_EDITOR_GENERIC_SLOTS instead of hardcoded value. + another fix in notification ------------------------------------------------------------------------- -r662 | zas_ | 2008-05-03 22:55:16 +0200 (Sat, 03 May 2008) | 2 lines +commit d5c322089bf472b8061116dda437870fb7724939 +Author: Vladimir Nadvornik +Date: Mon May 26 18:32:04 2008 +0000 -exif_get_description_by_key(): check for "formatted." prefix, and optimize. + Fix histogram grid - patch by Uwe Ohse ------------------------------------------------------------------------- -r661 | zas_ | 2008-05-03 22:49:25 +0200 (Sat, 03 May 2008) | 2 lines +commit 9530a02bc561d40f936c44d5e45d37ddf32815b9 +Author: Vladimir Nadvornik +Date: Mon May 26 18:22:08 2008 +0000 -exif_get_formatted_by_key(): skip prefix when comparing. + use fputs instead of printf - patch by Uwe Ohse ------------------------------------------------------------------------- -r660 | zas_ | 2008-05-03 22:40:50 +0200 (Sat, 03 May 2008) | 5 lines +commit 1f01199c3dbd8ca9e796ff42b8b591ab90745158 +Author: Vladimir Nadvornik +Date: Mon May 26 17:06:30 2008 +0000 -Change the prefix of formatted exif tags to a more explicit "formatted." prefix -instead of the shorter "f". -Warning: custom overlay info string has to be modified since old names are no -more recognized, one can reset it to default through Preferences > Advanced. + fixed bug in notification code ------------------------------------------------------------------------- -r659 | zas_ | 2008-05-03 18:58:17 +0200 (Sat, 03 May 2008) | 17 lines +commit 5407c7dd1d47999deb999ddcc4908d7c47b7d74c +Author: Laurent Monin +Date: Sun May 25 20:17:07 2008 +0000 -Fix a bug occuring when using certain actions on a collection -item which is not in the selection. -Triggering it will either result in an assertion failure or a -segfault. + Tidy up: indentation fixes, typo fixes, ... -To reproduce: -- open a collection -- right-click on a non-selected image -- select Delete... menu entry (or Copy, Move, Rename, Properties...) +commit aa3fda66e2e90d4f87fdb0e71106829aedaac9b0 +Author: Laurent Monin +Date: Sun May 25 19:54:00 2008 +0000 -It results in the best case: -** ERROR **: file filelist.c: line 905 (file_data_ref): assertion failed: (fd->magick == 0x12345678) -or a pure segfault due to corrupted data. + Typo fix. -collection_table_popup_file_list() has to return a list of filedata * -not a list of gchar *. +commit 7aca9bde7ea89130df6934148287dc3c0f290cd2 +Author: Laurent Monin +Date: Sun May 25 19:13:04 2008 +0000 ------------------------------------------------------------------------- -r658 | zas_ | 2008-05-03 17:19:35 +0200 (Sat, 03 May 2008) | 3 lines + Typo fix. -Move marks-related fields from _ViewFileInfoList to _ViewFile, since -they'll be used for file icon view too. +commit 8973118af85916c7dd6240428d865b593d4e889c +Author: Laurent Monin +Date: Sun May 25 19:03:30 2008 +0000 ------------------------------------------------------------------------- -r657 | zas_ | 2008-05-03 17:17:24 +0200 (Sat, 03 May 2008) | 3 lines + bar_sort_set_filter_cb(): filter_idx was set as uint so get it as uint. -Move common thumbs_* fields from _ViewFileInfoIcon and _ViewFileInfoList -to _ViewFile. +commit 56b0d6ecccbd5ef448fb59983828fccc2c5dd5a2 +Author: Vladimir Nadvornik +Date: Sat May 24 22:44:18 2008 +0000 ------------------------------------------------------------------------- -r656 | zas_ | 2008-05-03 17:13:15 +0200 (Sat, 03 May 2008) | 3 lines + rewritten utilops.h: + - better integration of external commands + - filter commands -Rename thumbs_fd to thumbs_filedata in ViewFileIcon struct to match -the name used in ViewFileList. +commit d2e0888194442fe09a3f099f149e3d4fb3884bc9 +Author: Laurent Monin +Date: Sat May 24 20:01:59 2008 +0000 ------------------------------------------------------------------------- -r655 | zas_ | 2008-05-03 17:09:21 +0200 (Sat, 03 May 2008) | 2 lines + Allow to escape star characters in the template string with a \. + One can insert a \ by escaping it with another \. + Fix deletion of empty parts when using | trick. + Append the separator " - " only if data is neither NULL nor empty. + Patch by Uwe Ohse and Laurent Monin. -Remove useless thumbs_list from ViewFileIcon. +commit c3c6184b858a57f359937a912a8db3f715844270 +Author: Vladimir Nadvornik +Date: Sat May 24 09:18:09 2008 +0000 ------------------------------------------------------------------------- -r654 | zas_ | 2008-05-03 14:50:52 +0200 (Sat, 03 May 2008) | 2 lines + improved filedata interface -Add function prototypes (yet unused). +commit 2f9f06e43c1d6e6b9d1d7c7af3c038ab830f132f +Author: Laurent Monin +Date: Fri May 23 23:40:12 2008 +0000 ------------------------------------------------------------------------- -r653 | zas_ | 2008-05-03 14:48:45 +0200 (Sat, 03 May 2008) | 3 lines + Fix display of libpthread detection. + Fix display of lirc support, do not test for headers if disabled. -Drop redundant vflist_thumbs_set() introduced in revision 649, -modify and use existing vflist_thumb_set(). +commit 8c7decff43cd66410be772b6c1a3204efe7a7e00 +Author: Laurent Monin +Date: Fri May 23 23:18:40 2008 +0000 ------------------------------------------------------------------------- -r652 | zas_ | 2008-05-03 14:21:22 +0200 (Sat, 03 May 2008) | 2 lines + Silent few warnings that appeared when using --disable-exiv2 configure option. -Remove redundant prototype. +commit a2f6ae48d9b6632eef9b4b2ad77e189afb61016d +Author: Laurent Monin +Date: Fri May 23 22:57:51 2008 +0000 ------------------------------------------------------------------------- -r651 | zas_ | 2008-05-03 13:58:41 +0200 (Sat, 03 May 2008) | 2 lines + French translation was updated. -Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet). +commit 6e80a2dae26e190fdd56461021cc945a9b807ecc +Author: Laurent Monin +Date: Fri May 23 22:55:23 2008 +0000 ------------------------------------------------------------------------- -r650 | zas_ | 2008-05-03 13:34:13 +0200 (Sat, 03 May 2008) | 3 lines + Use the same label for toolbar buttons tooltip than in main menu. -Replace Layout icon_view field by more generic file_view_type. -Replace option layout.view_as_icons by layout.file_view_type. +commit 2d39c9d42b6214b53b9f70ca5a9f946974ad326a +Author: Laurent Monin +Date: Fri May 23 15:07:30 2008 +0000 ------------------------------------------------------------------------- -r649 | zas_ | 2008-05-03 12:31:37 +0200 (Sat, 03 May 2008) | 4 lines + Add -Wstrict-prototypes to gcc options only in developer mode + since it clutters the compilation log with unfixable warnings. + Add -Wall in developer mode to display even more warnings. + Fix display of --enable-deprecated at end of configure (yes + and no were inversed). -Set thumbs_enabled through new function vflist_thumbs_set() instead -of vflist_new(). +commit 07c127246cdf49873cbcb769e00bf6299956dc70 +Author: Laurent Monin +Date: Fri May 23 12:27:28 2008 +0000 + slideshow_next(), slideshow_prev(): move code to common slideshow_move(), reducing code redundancy. ------------------------------------------------------------------------- -r648 | zas_ | 2008-05-03 11:41:09 +0200 (Sat, 03 May 2008) | 3 lines +commit 5caa58afa57bc3340d49ea1701b06038cfbb345b +Author: Laurent Monin +Date: Fri May 23 12:19:42 2008 +0000 -Prepare merging of some parts of view_file_list and view_file_icon and -simplification of view_file* interface. + Move code from slideshow_timer_reset() to new slideshow_timer_stop() and simplify calls. ------------------------------------------------------------------------- -r647 | zas_ | 2008-05-03 10:35:08 +0200 (Sat, 03 May 2008) | 3 lines +commit 001635e8163ec0bc1615dd10de3da4271dd44c00 +Author: Laurent Monin +Date: Fri May 23 00:20:56 2008 +0000 -Change default positions of dividers since width of the main menu -was increased. + Try to load a system-wide rc file if any, before per-user rc file. + For now, system-wide rc file path is set to /etc/geeqie/geeqierc + (defined by GQ_SYSTEM_WIDE_DIR in main.h). + filter_parse() was modified to replace entries having the same key, + needed since it may be called more than once. + + Please test heavily. ------------------------------------------------------------------------- -r646 | zas_ | 2008-05-03 01:11:31 +0200 (Sat, 03 May 2008) | 3 lines +commit 43b4e4860807c26bd83cd99da58ecd68f052eb44 +Author: Laurent Monin +Date: Thu May 22 23:22:12 2008 +0000 -Make exif_rational_to_double() and exif_get_rational_as_double() static. + Pass ConfOptions * to save_options() and load_options(). +commit 0fe33428a668c783d42432bf80a574d7df6b564d +Author: Laurent Monin +Date: Thu May 22 23:17:26 2008 +0000 ------------------------------------------------------------------------- -r645 | zas_ | 2008-05-03 01:08:18 +0200 (Sat, 03 May 2008) | 3 lines + Move code from save_options() to new save_options_to() which takes + the destination path as parameter. -info_notebook_reordered_cb(): do not call info_tabs_sync(), it causes exif -info disappearing when moving the tab. +commit 9d0560eb4199b16058bc3623e49a90393f62b968 +Author: Laurent Monin +Date: Thu May 22 23:09:53 2008 +0000 ------------------------------------------------------------------------- -r644 | zas_ | 2008-05-03 00:59:04 +0200 (Sat, 03 May 2008) | 3 lines + Move setup_default_options() and sync_options_with_current_state() to options.[ch]. + Pass ConfOptions * to these instead of directly using global variable. + Cleanup #include in main.c. -Fix a Pango warning related to UTF8 when displaying internationalized -description in Advanced Exif Properties panel. +commit 91a77c72ce0c65eacd4ef3810128c7aef9d646db +Author: Laurent Monin +Date: Thu May 22 22:49:07 2008 +0000 ------------------------------------------------------------------------- -r643 | zas_ | 2008-05-03 00:31:24 +0200 (Sat, 03 May 2008) | 2 lines + Move code from exit_program_final() to new sync_options_with_current_state(). -exif_get_description_by_key(): tidy up. +commit 2d0d34eaa30a4d1d8be28eae5158c096e9401174 +Author: Laurent Monin +Date: Thu May 22 22:43:07 2008 +0000 ------------------------------------------------------------------------- -r642 | zas_ | 2008-05-03 00:28:39 +0200 (Sat, 03 May 2008) | 3 lines + Separate path building code from options loading code. + Most code of load_options() is moved to new load_options_from(). + ExifUIList initialization is moved to setup_default_options(). -Add a pointer to the build function in the formatted exif tags struct -and use a loop in exif_get_formatted_by_key(). +commit b5d0f1f91b10a1efb6bea5fe4878d946b18d124e +Author: Laurent Monin +Date: Thu May 22 20:22:13 2008 +0000 ------------------------------------------------------------------------- -r641 | zas_ | 2008-05-02 23:58:36 +0200 (Fri, 02 May 2008) | 2 lines + Make shell command and its option rc file options instead of hardcoded strings. + This allows users to modify the shell command that execute "editors". + Two new options appear in rc file: + - shell.path (default to "/bin/sh") + - shell.options (default to "-c") + + These options can only be changed from the rc file, not at runtime. + Tests are made to check that shell.path is not empty and lead to + an executable file. -Indentation fix. +commit 94c67ee52b2e81260f2f63c17771c4902942857a +Author: Laurent Monin +Date: Thu May 22 13:00:45 2008 +0000 ------------------------------------------------------------------------- -r640 | zas_ | 2008-05-02 23:34:26 +0200 (Fri, 02 May 2008) | 3 lines + Fix signed vs unsigned warnings. + In most cases, gint was used instead of guint. -Explode exif_get_formatted_by_key() in smaller functions prefixed "exif_build_f". -An helper macro was added to call them. +commit a4226d0deebed8e331e8b5de48d9c2c11a9e01ff +Author: Laurent Monin +Date: Thu May 22 11:28:35 2008 +0000 ------------------------------------------------------------------------- -r639 | zas_ | 2008-05-02 22:56:59 +0200 (Fri, 02 May 2008) | 3 lines + Comment out unused static function extension_truncate(). -Remove unused checksum_simple() function. +commit 6f08b3a0bfb9a539e0144313ec7b02071f19b7f4 +Author: Laurent Monin +Date: Thu May 22 11:27:43 2008 +0000 + Fix up some types, make some signed vs unsigned warnings quiet. ------------------------------------------------------------------------- -r638 | zas_ | 2008-05-02 22:40:47 +0200 (Fri, 02 May 2008) | 2 lines +commit e050d2a0bb71d56ddd0d7e6a8b60648357d7bcd9 +Author: Laurent Monin +Date: Thu May 22 10:09:07 2008 +0000 -Simplify remove_extension_from_path(). + Modify set_default_image_overlay_template_string() to accept the pointer to + the string to modify and add a generic function to set template_string value. ------------------------------------------------------------------------- -r637 | zas_ | 2008-05-02 22:27:47 +0200 (Fri, 02 May 2008) | 2 lines +commit 4abc67156b7e0728230026f9c47a091ab69b0f53 +Author: Laurent Monin +Date: Thu May 22 09:22:29 2008 +0000 -remove_level_from_path() was simplified. + French translation was updated. ------------------------------------------------------------------------- -r636 | zas_ | 2008-05-02 11:03:52 +0200 (Fri, 02 May 2008) | 2 lines +commit a331805a87ce4d65fcc06826054f115a9c8a7108 +Author: Laurent Monin +Date: Thu May 22 09:12:36 2008 +0000 -Move variable declaration and affectation near where it is used. + Introduce an helper function that returns the name of an editor. + It helps to reduce code redundancy. ------------------------------------------------------------------------- -r635 | zas_ | 2008-05-02 10:41:32 +0200 (Fri, 02 May 2008) | 2 lines +commit 48582c3600eacfd7985aff255372c4909cf87e40 +Author: Laurent Monin +Date: Thu May 22 08:49:52 2008 +0000 -Replace GQView by Geeqie. + Use a struct to handle editor's properties. ------------------------------------------------------------------------- -r634 | zas_ | 2008-05-02 01:20:26 +0200 (Fri, 02 May 2008) | 2 lines +commit cceaf6dd59921919c0f8c1478bc025de7812ba9f +Author: Laurent Monin +Date: Wed May 21 19:37:18 2008 +0000 -Use sizeof() instead of hardcoded buffer sizes. + Make stricter match for option's names consisting of a prefix and a number. + It allows to have names like "prefix_12" and "prefix_something" in the same file. + Using strtol() was wrong since it allowed names like "prefix_-0xa", leading + to unpredictable results. It was wrong too with "prefix_something", which + was equivalent to "prefix_0", instead of being an option of its own. ------------------------------------------------------------------------- -r633 | zas_ | 2008-05-02 00:59:54 +0200 (Fri, 02 May 2008) | 2 lines +commit f4fdeefe1b2f4573b91a19682a134a50f675c8ff +Author: Laurent Monin +Date: Wed May 21 11:46:19 2008 +0000 -cache_sim_write_similarity(): cleanup and simplification. + Replace hardcoded "/" by G_DIR_SEPARATOR_S where applicable. ------------------------------------------------------------------------- -r632 | zas_ | 2008-05-02 00:31:14 +0200 (Fri, 02 May 2008) | 2 lines +commit ec28448108d471c5fc8705e5502a81e116c506e4 +Author: Laurent Monin +Date: Wed May 21 11:45:29 2008 +0000 -Use secure_save stuff to write .sim files. + Use g_build_filename(). ------------------------------------------------------------------------- -r631 | zas_ | 2008-05-02 00:30:16 +0200 (Fri, 02 May 2008) | 2 lines +commit f42ea51102878335515db3058de36d3ac2c68e27 +Author: Laurent Monin +Date: Wed May 21 11:07:23 2008 +0000 -save_options(): minor code simplification. + Use G_DIR_SEPARATOR where applicable. ------------------------------------------------------------------------- -r630 | zas_ | 2008-05-02 00:27:44 +0200 (Fri, 02 May 2008) | 2 lines +commit 88b1387337bed6aae3c4eb9eabb6b5646bc2e743 +Author: Laurent Monin +Date: Wed May 21 11:00:13 2008 +0000 -Add a wrapper to fwrite(). + Use G_DIR_SEPARATOR_S where applicable. ------------------------------------------------------------------------- -r629 | zas_ | 2008-05-01 23:42:22 +0200 (Thu, 01 May 2008) | 2 lines +commit 1ba45c263f1a40689c0f015d00adab032d9ea4b8 +Author: Laurent Monin +Date: Wed May 21 10:52:38 2008 +0000 -Typo fix. + Use g_build_filename() and G_DIR_SEPARATOR_S. ------------------------------------------------------------------------- -r628 | zas_ | 2008-05-01 20:37:50 +0200 (Thu, 01 May 2008) | 2 lines +commit 9cbd3ca276a034db2e38e1d302f59ea59000961e +Author: Laurent Monin +Date: Wed May 21 10:46:33 2008 +0000 -Indentation fixes. + Use g_build_filename() instead of g_strconcat(). ------------------------------------------------------------------------- -r627 | zas_ | 2008-05-01 20:26:30 +0200 (Thu, 01 May 2008) | 2 lines +commit 0be6f799a2986d22c2e42e8c51d09a16030875f6 +Author: Laurent Monin +Date: Wed May 21 10:11:56 2008 +0000 -Simplify and optimize extension_find_dot(). + tab_completion_do(): use g_build_filename(), G_DIR_SEPARATOR, G_DIR_SEPARATOR_S. ------------------------------------------------------------------------- -r626 | nadvornik | 2008-04-30 00:44:06 +0200 (Wed, 30 Apr 2008) | 2 lines +commit a847d10f2debed4c4e7f01e6f4e4fcf246f3a281 +Author: Laurent Monin +Date: Wed May 21 09:58:29 2008 +0000 -fixed a memory leak + tab_completion_popup_cb(): use g_build_filename() and simplify code. ------------------------------------------------------------------------- -r625 | nadvornik | 2008-04-29 20:12:49 +0200 (Tue, 29 Apr 2008) | 2 lines +commit e07eab477089e688f3d3668e110b651f1cf346f4 +Author: Laurent Monin +Date: Wed May 21 09:50:32 2008 +0000 -cleanup: use image_get_image_size + Use expand_tilde() instead of simple concatenation, it allows correct expansion + of ~user as well as ~dir. ------------------------------------------------------------------------- -r624 | nadvornik | 2008-04-29 19:52:12 +0200 (Tue, 29 Apr 2008) | 4 lines +commit 5acd3990069f22b64c0336bd89067c1cf265927e +Author: Laurent Monin +Date: Wed May 21 09:30:53 2008 +0000 -fixed connected zoom and scroll that didn't work in some cases -http://sourceforge.net/tracker/index.php?func=detail&aid=1952429&group_id=222125&atid=1054680 + dest_change_dir(): rewrite to use g_build_filename(), g_path_get_dirname() and g_path_get_basename(). +commit 550af58c76fd602a08a811f5be218bcec90d1598 +Author: Laurent Monin +Date: Wed May 21 08:53:51 2008 +0000 ------------------------------------------------------------------------- -r623 | bruclik | 2008-04-28 01:31:20 +0200 (Mon, 28 Apr 2008) | 5 lines + Fix a segfault occuring when logging an empty message and there is no log window. -fix warning cast from pointer to integer of different size (when an integer is -passed instead of a pointer to a callback, GINT_TO_POINTER(i) should be used) +commit 98cabee9637e5ddfd9b2f6fcd9296572c6d7253d +Author: Laurent Monin +Date: Wed May 21 00:42:14 2008 +0000 + Use g_build_filename(). +commit e45c0d959bfbc09115bf447ccc7813d25ace3e1a +Author: Laurent Monin +Date: Wed May 21 00:39:16 2008 +0000 ------------------------------------------------------------------------- -r622 | nadvornik | 2008-04-27 22:05:11 +0200 (Sun, 27 Apr 2008) | 2 lines + thumb_std_cache_path(): use g_build_filename() and simplify. -Added LIRC patch written by Matteo Beniamino +commit c656b4ad0212e24cbd9ae2844b0bbf904571ab2f +Author: Laurent Monin +Date: Wed May 21 00:32:57 2008 +0000 ------------------------------------------------------------------------- -r621 | zas_ | 2008-04-25 22:23:21 +0200 (Fri, 25 Apr 2008) | 2 lines + Use g_build_filename(). -Fix number of directory views, bug introduced in revision 617. +commit 9fbfbb253e2e700806714e6ef5c7813148c8b72a +Author: Laurent Monin +Date: Wed May 21 00:20:13 2008 +0000 ------------------------------------------------------------------------- -r620 | nadvornik | 2008-04-25 22:08:47 +0200 (Fri, 25 Apr 2008) | 4 lines + Use g_build_filename() where applicable. -fixed dragging multiple files from file list -http://sourceforge.net/tracker/index.php?func=detail&aid=1950740&group_id=222125&atid=1054680 +commit a9bd1c761342532867bee1fc112d7c5f93deb5b6 +Author: Laurent Monin +Date: Wed May 21 00:15:41 2008 +0000 + Use g_build_filename() instead of g_strconcat(). ------------------------------------------------------------------------- -r619 | zas_ | 2008-04-25 11:31:32 +0200 (Fri, 25 Apr 2008) | 2 lines +commit fe45471190349960979b37aebea84cc2c7cb9675 +Author: Laurent Monin +Date: Wed May 21 00:13:12 2008 +0000 -Add a line about variable and function names. + Use g_build_filename() and get rid of "root dir fix". ------------------------------------------------------------------------- -r618 | zas_ | 2008-04-25 11:28:45 +0200 (Fri, 25 Apr 2008) | 3 lines +commit 0b30da0498c23b1237ebbf41eac69e341394043a +Author: Laurent Monin +Date: Wed May 21 00:12:19 2008 +0000 -Document the Geeqie coding style. -This is a draft, please improve. + Use g_build_filename(). ------------------------------------------------------------------------- -r617 | zas_ | 2008-04-25 10:07:22 +0200 (Fri, 25 Apr 2008) | 3 lines +commit 5e710445fc08a56ddd1c73585953d2c791dc866a +Author: Laurent Monin +Date: Wed May 21 00:01:03 2008 +0000 -Handle the case of reduction of the number of view directory types. -Previously it was leading to a segfault. + Disable unused code: + - cache_maintain_home_dir() + - cache_maintain_dir() ------------------------------------------------------------------------- -r616 | zas_ | 2008-04-24 22:29:09 +0200 (Thu, 24 Apr 2008) | 4 lines +commit 95eebfff0a5472e885a2cebd38024a59b37db8af +Author: Laurent Monin +Date: Tue May 20 23:41:13 2008 +0000 -Allow to copy the path of a directory to clipboard from directory views. -Show Copy path option has to be enabled. -Suggested by Fr?\195?\169d?\195?\169ric Mantegazza. + Build path using g_build_filename() then calculate its length. ------------------------------------------------------------------------- -r615 | zas_ | 2008-04-24 22:18:59 +0200 (Thu, 24 Apr 2008) | 4 lines +commit e80fa4c91453bf056e384a888e051272b04b7abd +Author: Laurent Monin +Date: Tue May 20 23:11:47 2008 +0000 -Do not allow to add anything but directories to sort bar in -folder mode through drag'n'drop. -Introduce a new field only_directories to _BookMarkData struct. + Use G_DIR_SEPARATOR_S instead of hardcoded "/". ------------------------------------------------------------------------- -r614 | zas_ | 2008-04-24 18:35:02 +0200 (Thu, 24 Apr 2008) | 2 lines +commit 381f82f295a52ba43179d6e0e5036ac73ac8887d +Author: Laurent Monin +Date: Tue May 20 23:07:09 2008 +0000 -Add missing spaces around equal sign. + Use g_build_filename() and move location label creation from cache_manager_show() to new cache_manager_location_label(). ------------------------------------------------------------------------- -r613 | zas_ | 2008-04-24 18:32:20 +0200 (Thu, 24 Apr 2008) | 2 lines +commit d145a20894f4c757ea29b79ed25d31004ae97a8a +Author: Laurent Monin +Date: Tue May 20 22:47:13 2008 +0000 -Cleanup exif_get_formatted_by_key(). + cache_find_location(): use g_build_filename() and move redundant code to new functions. ------------------------------------------------------------------------- -r612 | zas_ | 2008-04-24 17:57:58 +0200 (Thu, 24 Apr 2008) | 2 lines +commit 267dbe2ad0cf72a577b2e236245c39e0b1930d59 +Author: Laurent Monin +Date: Tue May 20 22:22:11 2008 +0000 -Add missing space. + Use g_build_filename(). ------------------------------------------------------------------------- -r611 | zas_ | 2008-04-24 17:53:08 +0200 (Thu, 24 Apr 2008) | 2 lines +commit d1ad0442c58c29df914c80e211f8c90abf145427 +Author: Laurent Monin +Date: Tue May 20 22:13:48 2008 +0000 -6 for() vs 201 for (): winner is for (). + Use size_t instead of gint, it silents a signed vs unsigned warning. ------------------------------------------------------------------------- -r610 | zas_ | 2008-04-24 17:49:57 +0200 (Thu, 24 Apr 2008) | 2 lines +commit 3bd79d0d86bee23a6514faf22c68f6e3898411a5 +Author: Laurent Monin +Date: Tue May 20 22:11:59 2008 +0000 -Convert the minority of while() to while (). + Use g_build_filename() instead of g_strconcat(). ------------------------------------------------------------------------- -r609 | zas_ | 2008-04-24 17:44:43 +0200 (Thu, 24 Apr 2008) | 2 lines +commit 73e10c62fc9d789afd29b46183078407369700e6 +Author: Laurent Monin +Date: Tue May 20 22:09:04 2008 +0000 -Use only one secure_fprintf() call instead of two. + Drop concat_dir_and_file() and use g_build_filename() instead. ------------------------------------------------------------------------- -r608 | zas_ | 2008-04-24 17:31:21 +0200 (Thu, 24 Apr 2008) | 2 lines +commit ca505f0dd3957eeea0d69dfc3e133c320bba2683 +Author: Laurent Monin +Date: Tue May 20 22:00:14 2008 +0000 -Use sizeof(). + Use G_DIR_SEPARATOR instead of '/' where applicable. ------------------------------------------------------------------------- -r607 | zas_ | 2008-04-24 14:47:09 +0200 (Thu, 24 Apr 2008) | 2 lines +commit c56dcb92792b030d9f14cf68d5260be924a999ee +Author: Laurent Monin +Date: Tue May 20 21:51:25 2008 +0000 -Remove whitespace between function name and first parenthesis for the sake of consistency. (pass 2) + Use g_build_filename() to build paths. ------------------------------------------------------------------------- -r606 | zas_ | 2008-04-24 14:23:02 +0200 (Thu, 24 Apr 2008) | 2 lines +commit ddee8f88900c6e3af7b48541514e0f029912bd20 +Author: Laurent Monin +Date: Tue May 20 20:11:29 2008 +0000 -Remove whitespace between function name and first parenthesis for the sake of consistency. + Do not use glib posix wrappers since they were introduced in 2.6 + and we want 2.4 compatibility. ------------------------------------------------------------------------- -r605 | zas_ | 2008-04-24 13:40:26 +0200 (Thu, 24 Apr 2008) | 2 lines +commit dc3b44026a577f54f257a543223b1d99ea298693 +Author: Laurent Monin +Date: Tue May 20 20:06:11 2008 +0000 -Indentation fix. + Use access() instead of g_access() which is only available in 2.8. ------------------------------------------------------------------------- -r604 | zas_ | 2008-04-24 11:50:37 +0200 (Thu, 24 Apr 2008) | 1 line +commit f2424a9a424a11d32fdc4514b143d67a8285b0d0 +Author: Laurent Monin +Date: Tue May 20 19:14:36 2008 +0000 -Display file_data debug messages only at level 2. ------------------------------------------------------------------------- -r603 | zas_ | 2008-04-24 11:43:23 +0200 (Thu, 24 Apr 2008) | 2 lines + Use utf-8 charset instead of iso-8859-1. + Minor cleanup. -Move get_exec_time() to debug.{c,h}. +commit dd45f154d660065acd669bae936995f889237604 +Author: Vladimir Nadvornik +Date: Tue May 20 17:43:37 2008 +0000 ------------------------------------------------------------------------- -r602 | zas_ | 2008-04-24 11:09:48 +0200 (Thu, 24 Apr 2008) | 2 lines + updated ru.po by Alexandre Prokoudine -Move options stuff to options.{c,h} and remove globals.c +commit 231d9567dc36494096b87e29a1ba245c932f646a +Author: Laurent Monin +Date: Tue May 20 08:18:30 2008 +0000 ------------------------------------------------------------------------- -r601 | zas_ | 2008-04-24 10:53:39 +0200 (Thu, 24 Apr 2008) | 5 lines + French translation was updated. -Move debug macros from main.h to new debug.h. -Make debug_level static to debug.c and add utility functions -to manipulate it. -Add #include "debug.h" where needed. +commit b130dfe52635ff03a61994eee9fd98ab12e10f9a +Author: Laurent Monin +Date: Tue May 20 08:14:35 2008 +0000 ------------------------------------------------------------------------- -r600 | zas_ | 2008-04-24 02:15:03 +0200 (Thu, 24 Apr 2008) | 3 lines + Sort out log_printf() vs printf_term() mix up. -Handle the newline in DEBUG_N() macro instead of adding one -in each debug message string. +commit a8d4af5cfbfc17f65b7f23db463ebc0220c26dd3 +Author: Laurent Monin +Date: Tue May 20 07:52:49 2008 +0000 ------------------------------------------------------------------------- -r599 | zas_ | 2008-04-24 01:52:20 +0200 (Thu, 24 Apr 2008) | 2 lines + Use print_term() instead of printf(), since it handles charset conversion + from utf8 to locale if needed. -French translation was updated. +commit 11819b31099e4db5bb0488a404dd633928e806a9 +Author: Laurent Monin +Date: Mon May 19 11:09:23 2008 +0000 ------------------------------------------------------------------------- -r598 | zas_ | 2008-04-24 01:51:02 +0200 (Thu, 24 Apr 2008) | 2 lines + Remove C-specific gcc options from CXXFLAGS. + Add few more warnings. -Make image_osd_histogram_onoff_toggle() and image_osd_histogram_onoff_status() static. +commit 592f33931c27c10012614e90bf7486b3ffa66039 +Author: Laurent Monin +Date: Mon May 19 09:27:30 2008 +0000 ------------------------------------------------------------------------- -r597 | zas_ | 2008-04-24 01:47:53 +0200 (Thu, 24 Apr 2008) | 2 lines + Fix some incomplete initialization warnings. -Fix image overlay displayed only on second "I" press in layout view. +commit 2a2b70b7061760b54f1075902caee61fe6c6a95f +Author: Laurent Monin +Date: Mon May 19 08:46:37 2008 +0000 ------------------------------------------------------------------------- -r596 | zas_ | 2008-04-24 01:35:13 +0200 (Thu, 24 Apr 2008) | 3 lines + depreceated -> deprecated -Display file and line along debug messages for any debug level but level 1. -Add a DEBUG_0() macro for instant debugging. +commit 17c0fcefeedde3e92482b78685528b2b667bddde +Author: Laurent Monin +Date: Mon May 19 08:43:11 2008 +0000 ------------------------------------------------------------------------- -r595 | zas_ | 2008-04-24 00:40:55 +0200 (Thu, 24 Apr 2008) | 4 lines + Typo fixes. -Fix Gtk-CRITICAL **: gtk_entry_set_text: assertion `GTK_IS_ENTRY (entry)' failed -occuring when toggling file list view <-> file icon view. +commit 55c5b71c9d49e5d6b39c3b5fa6f4ce966193c881 +Author: Laurent Monin +Date: Mon May 19 08:36:06 2008 +0000 + Create auxdir if needed. ------------------------------------------------------------------------- -r594 | nadvornik | 2008-04-24 00:38:34 +0200 (Thu, 24 Apr 2008) | 2 lines +commit 397adc4d43c61ec94d54a03edcf3605de977aed7 +Author: Laurent Monin +Date: Mon May 19 08:24:10 2008 +0000 -clear the buffer before loading of an image + Fix spurious end of line introduced in revision 780. ------------------------------------------------------------------------- -r593 | zas_ | 2008-04-24 00:33:18 +0200 (Thu, 24 Apr 2008) | 2 lines +commit bc32bf0bd821a6e5ba5fb37abce4f8d00ccdf5c7 +Author: Petr Ostadal +Date: Mon May 19 01:15:17 2008 +0000 -Use menu_item_add_stock_sensitive() and menu_item_add_sensitive(). + configure.in was rewritten: + - uses PKG_CHECK_MODULES everywhere + - added --enable-debug (enable debugging support) + - added --enable-developer (developer mode, checks depreceated code ...) + - removed obsoleted INCLUDES from Makefile.am + Fixed src/debug.h (added glib.h). + Fixed src/exiv2.c compilation with libexiv2 v0.15. + Added src/trash.h to src/Makefile.am (fixed generating 'make dist'). ------------------------------------------------------------------------- -r592 | zas_ | 2008-04-24 00:22:37 +0200 (Thu, 24 Apr 2008) | 2 lines +commit 51e2636cbf3a5d444dc16041eae47c39ecc9d3ae +Author: Petr Ostadal +Date: Mon May 19 00:54:59 2008 +0000 -Update to contributors list. + Updated CODING (GPL header, macros, svn change-log, ...). ------------------------------------------------------------------------- -r591 | zas_ | 2008-04-24 00:17:21 +0200 (Thu, 24 Apr 2008) | 8 lines +commit 31ed8e20e511d9ab92a842cc205e6962b6417f62 +Author: Laurent Monin +Date: Sun May 18 21:14:01 2008 +0000 -Allow the copy of file paths to clipboard. -This feature is disabled by default, it can be set through -Preferences > Advanced > Behavior > Show "Copy path" ... -When enabled, it adds a menu entry "Copy path" that let the -user copies current selection's paths to X clipboard. -It is very convenient to paste paths to xterm for example. -Patch by Carles Pina i Estany and me. + Save order of Properties dialog tabs to rc file. + Users of GTK+ <2.10 can set tabs order directly in the rc file, + others can move tabs using drag'n drop. + The option is named properties.tabs_order, its default value + is "123" which is General, Keywords, Exif tabs (left to right). ------------------------------------------------------------------------- -r590 | nadvornik | 2008-04-23 23:08:29 +0200 (Wed, 23 Apr 2008) | 2 lines +commit a1726043d910102910fa32c669a45a4b23779cbb +Author: Laurent Monin +Date: Sun May 18 12:56:18 2008 +0000 -fixed a bug in opening files with non-utf8 locales in exiv2.cc + Cleanup and code redundancy reduction. ------------------------------------------------------------------------- -r589 | zas_ | 2008-04-23 22:47:19 +0200 (Wed, 23 Apr 2008) | 9 lines +commit 3df95a31203a2deb4e0ec0ce019e1cc528e32d39 +Author: Laurent Monin +Date: Sun May 18 11:39:58 2008 +0000 -Introduce macros to display debug messages. -if (debug) printf(...) is now replaced by variadic macros: -DEBUG_1() -And for higher debugging levels: -DEBUG_2() -DEBUG_3() -DEBUG_4() + Memorize text to display in the log window when the window is + not yet created. On log window display, the memorized text + is then recalled and displayed. +commit c219d832b90357a8df605bb444757be70bed2c68 +Author: Laurent Monin +Date: Sun May 18 07:36:57 2008 +0000 ------------------------------------------------------------------------- -r588 | zas_ | 2008-04-23 15:46:18 +0200 (Wed, 23 Apr 2008) | 7 lines + Do not create log window more than once. -Honor Control and Shift keys while drag'n'droping files -to directories. -Before a menu (Copy/Move/Cancel) was always displayed, now -if the user hold Shift key or Control key, the menu -is not shown, but move or copy actions take place. -If no modifier key is used, the menu is displayed as usual. +commit aa1e905eb793586cdfa564228ca939438ce50a91 +Author: Laurent Monin +Date: Sat May 17 22:37:04 2008 +0000 ------------------------------------------------------------------------- -r587 | zas_ | 2008-04-23 15:03:04 +0200 (Wed, 23 Apr 2008) | 2 lines + Fix formatted.SubjectDistance appearing twice in exif bar configuration. -Only display message if in debug mode. +commit d5ddb658018102f15fce0efaba39cde3cd89d976 +Author: Laurent Monin +Date: Sat May 17 21:28:02 2008 +0000 ------------------------------------------------------------------------- -r586 | zas_ | 2008-04-23 11:56:21 +0200 (Wed, 23 Apr 2008) | 5 lines + Update POTFILES.in. -Fix adding a selection to a collection with no window open -using the sort manager. Only one file was added, now all -files in the selection are added (but duplicates). -A pointer was not reset correctly. +commit c293dfff35a58ab31b1225ea712ea766fdae96b0 +Author: Laurent Monin +Date: Sat May 17 21:26:45 2008 +0000 ------------------------------------------------------------------------- -r585 | zas_ | 2008-04-23 01:53:24 +0200 (Wed, 23 Apr 2008) | 2 lines + Add a log window that shows normal and debug messages. For now, it was added to Help menu. -Save sort manager state to rc file. +commit 44bf725c587e93c7852e2232b3cb30692341a1bd +Author: Vladimir Nadvornik +Date: Fri May 16 20:12:11 2008 +0000 ------------------------------------------------------------------------- -r584 | zas_ | 2008-04-23 00:45:51 +0200 (Wed, 23 Apr 2008) | 2 lines + fixed exiv2 version test -Remove unused function bar_info_size_request(). +commit 4e2cbf60d0811c493595007e6c6dcac42588609d +Author: Vladimir Nadvornik +Date: Fri May 16 20:09:32 2008 +0000 ------------------------------------------------------------------------- -r583 | zas_ | 2008-04-23 00:44:10 +0200 (Wed, 23 Apr 2008) | 3 lines + get processed values from exiv2 + http://sourceforge.net/tracker/index.php?func=detail&aid=1962444&group_id=222125&atid=1054680 -Save state and width of exif, info and sort panels to rc file. -Width is restored only if save windows dimensions is set. +commit 2cf6296486285045389eae9162c5e20e6f7ca0a6 +Author: Laurent Monin +Date: Fri May 16 14:59:45 2008 +0000 ------------------------------------------------------------------------- -r581 | nadvornik | 2008-04-22 21:26:07 +0200 (Tue, 22 Apr 2008) | 2 lines + Fix redundant application name in window titles. + It simplifies code. -updated ChangeLog from svn log +commit 4dd8a0ca5bcf4a1060a3cded4e8eea666d96a300 +Author: Laurent Monin +Date: Fri May 16 14:38:05 2008 +0000 ------------------------------------------------------------------------- -r580 | nadvornik | 2008-04-22 20:06:38 +0200 (Tue, 22 Apr 2008) | 2 lines + French translation was updated. -fixed version string ;) +commit 80363827d0206ced152428b414af7ee12754ccb0 +Author: Laurent Monin +Date: Fri May 16 12:16:49 2008 +0000 ------------------------------------------------------------------------- -r579 | nadvornik | 2008-04-22 19:45:08 +0200 (Tue, 22 Apr 2008) | 2 lines + Do not use printf() directly but use new wrapper function log_printf() instead. -updated version number +commit 4419bda7c472e6addfa8c204b3be6b9a159c472a +Author: Laurent Monin +Date: Fri May 16 12:08:51 2008 +0000 ------------------------------------------------------------------------- -r578 | nadvornik | 2008-04-22 19:40:29 +0200 (Tue, 22 Apr 2008) | 2 lines + Drop include "debug.h". -fixed reading of signed rational type with Exiv2 +commit 08f6266ee30f28a20ec40150ce1371cedcb943ca +Author: Laurent Monin +Date: Fri May 16 10:02:56 2008 +0000 ------------------------------------------------------------------------- -r577 | nadvornik | 2008-04-22 11:57:26 +0200 (Tue, 22 Apr 2008) | 2 lines + Include debug.h from main.h since debug macros may be used anywhere in the code. -fixed instalation of doc files +commit 9cdcce43a34e0c63b05fecaf6b1fbcbcef522781 +Author: Laurent Monin +Date: Fri May 16 09:10:56 2008 +0000 ------------------------------------------------------------------------- -r576 | zas_ | 2008-04-22 11:40:05 +0200 (Tue, 22 Apr 2008) | 3 lines + Improve editor commands error display: + - display all errors (not only syntax errors) + - display errors from Preferences (checks are made on Apply or OK) -Correctly escape data before using pango_layout_set_markup(). -Exif data may contain characters like & or < >. +commit dbb4e406f3b1893911d5c44f3fe5f75ae3b87f4d +Author: Laurent Monin +Date: Fri May 16 08:37:07 2008 +0000 ------------------------------------------------------------------------- -r575 | zas_ | 2008-04-22 11:01:29 +0200 (Tue, 22 Apr 2008) | 3 lines + Improve editors a bit: + - allow whitespaces before and after %v, %V, %w + - allow % escaping using %% (mandatory to use shell commands than contain % characters) + - display a dialog on execution if a syntax error is detected (only for generic editors) + - update README editors section -Use image_osd_toggle() in layout_menu_overlay_cb(). -Drop layout_image_overlay_update(). +commit 8cf9235c20b8f059c00c09caf55fd2b81adb683b +Author: Laurent Monin +Date: Wed May 14 18:12:11 2008 +0000 ------------------------------------------------------------------------- -r574 | zas_ | 2008-04-22 10:53:07 +0200 (Tue, 22 Apr 2008) | 2 lines + The Encoding key is now deprecated by the FreeDesktop standard and all + strings are required to be encoded in UTF-8. This desktop entry + explicitly specifies an Encoding of UTF-8, which is harmless but no longer + necessary. + + See http://standards.freedesktop.org/desktop-entry-spec/1.0/apc.html + + Patch #1963689. -Merge view_overlay_toggle() and layout_image_overlay_toggle() into new image_osd_toggle(). +commit 696b1afc8d1987bb420d36261a7362f58519291f +Author: Laurent Monin +Date: Wed May 14 18:09:05 2008 +0000 ------------------------------------------------------------------------- -r573 | zas_ | 2008-04-22 10:34:30 +0200 (Tue, 22 Apr 2008) | 3 lines + Patch #1963690 was applied. + It fixes hyphens/minus confusion in the man page. -Make histogram depends on image window not layout window. -It simplifies the code, and make more sense. +commit 12d37bfbf24c80a2574d430200c559f2d20da751 +Author: Laurent Monin +Date: Wed May 14 17:00:25 2008 +0000 ------------------------------------------------------------------------- -r572 | zas_ | 2008-04-22 10:16:02 +0200 (Tue, 22 Apr 2008) | 4 lines + Simplify thumb_std_maint_moved(), since g_list_append knows + how to append to a NULL list. Patch by Uwe Ohse. -Ensure Properties dialog is displayed above fullscreen window. -Add a parameter to info_window_new() to pass parent window and -revert patch 472. +commit 7c3a92575e1832ac7896aada1b619eef12d5c1c7 +Author: Laurent Monin +Date: Wed May 14 16:52:55 2008 +0000 ------------------------------------------------------------------------- -r571 | zas_ | 2008-04-22 00:19:32 +0200 (Tue, 22 Apr 2008) | 2 lines + Simplify collect_manager_add_action(), since g_list_append knows + how to append to a NULL list. Patch by Uwe Ohse. -Indicate bugs and feature requests trackers, remove obsolete stuff. +commit e6057c67b6938aa5f5d9f15567fd6302e2ef58aa +Author: Laurent Monin +Date: Wed May 14 12:59:00 2008 +0000 ------------------------------------------------------------------------- -r570 | zas_ | 2008-04-22 00:15:56 +0200 (Tue, 22 Apr 2008) | 2 lines + Merge vflist_row_by_path() into vflist_index_by_path(). -Lowercased name. +commit 53d0d0d3918a36df3a483989ea02cbea4daa0dbe +Author: Laurent Monin +Date: Wed May 14 10:40:43 2008 +0000 ------------------------------------------------------------------------- -r569 | zas_ | 2008-04-22 00:14:57 +0200 (Tue, 22 Apr 2008) | 2 lines + Fix some typos. Thanks to Michal \u010ciha\u0159 and James R. Van Zandt. + Patch #1963691. -. -> dot +commit d8bacc9a88f9332a45d49d890f62c0141738fa9f +Author: Laurent Monin +Date: Wed May 14 08:56:08 2008 +0000 ------------------------------------------------------------------------- -r568 | nadvornik | 2008-04-21 23:46:38 +0200 (Mon, 21 Apr 2008) | 2 lines + Make vf_pop_menu_*_cb static. -updated copyright in source files +commit a2b5404ac9f5fbf0e5a7c0e71dcd94252bf3186d +Author: Laurent Monin +Date: Tue May 13 20:31:35 2008 +0000 ------------------------------------------------------------------------- -r567 | zas_ | 2008-04-21 22:45:35 +0200 (Mon, 21 Apr 2008) | 3 lines + French translation fixes. -Properly initialize image_overlay options. +commit 81193b24e0f5eade934c698fc0ac485d33751269 +Author: Laurent Monin +Date: Tue May 13 20:21:00 2008 +0000 + Resync POTFILES.in and *.po, update french translation and + regenerate statistics in README. ------------------------------------------------------------------------- -r566 | zas_ | 2008-04-21 22:42:18 +0200 (Mon, 21 Apr 2008) | 2 lines +commit 16e84c761e71ac9052621a396d6880b96abe3221 +Author: Laurent Monin +Date: Tue May 13 20:13:44 2008 +0000 -Few more fixes to french translation. + Merge vflist_pop_menu() and vficon_pop_menu() into vf_pop_menu(). ------------------------------------------------------------------------- -r565 | zas_ | 2008-04-21 22:39:36 +0200 (Mon, 21 Apr 2008) | 3 lines +commit d62b5063e0616d905f58fc6036382a7b6d791368 +Author: Laurent Monin +Date: Tue May 13 19:56:52 2008 +0000 -Add some macros to handle rc file compatibility issues related to -option name changes. + Move VFICON_INFO() and VFLIST_INFO() macros to view_file.h ------------------------------------------------------------------------- -r564 | zas_ | 2008-04-21 22:27:39 +0200 (Mon, 21 Apr 2008) | 2 lines +commit 0ae96b1f2356d2f6eb6218ac85d8f07830118553 +Author: Laurent Monin +Date: Tue May 13 19:54:13 2008 +0000 -Minor french translation fix. + vficon_pop_menu(): drop "gint active" parameter, use stored click_id instead. ------------------------------------------------------------------------- -r563 | zas_ | 2008-04-21 22:24:15 +0200 (Mon, 21 Apr 2008) | 2 lines +commit d89bc943dfc7c14031b36c49aeb8544defa5d450 +Author: Laurent Monin +Date: Tue May 13 19:51:22 2008 +0000 -French translation was updated. + vflist_pop_menu(): drop FileData * parameter, use stored click_fd instead. ------------------------------------------------------------------------- -r562 | zas_ | 2008-04-21 22:12:49 +0200 (Mon, 21 Apr 2008) | 6 lines +commit dc820ece32ce4e8541b8e0d51a82a2486e645ab0 +Author: Laurent Monin +Date: Tue May 13 19:45:04 2008 +0000 -Rename few functions and replace fullscreen info with image overlay template string. -fullscreen_info_default_cb() -> image_overlay_default_template_cb() -fullscreen_info_default_ok_cb() -> image_overlay_default_template_ok_cb() -set_default_fullscreen_info() -> set_default_image_overlay_template_string() (moved to image-overlay.h) + Fix last patch, only set vf->clicked_mark for a valid mark. +commit 91e4b2d69adc9398df664f4d355880ae146ab994 +Author: Laurent Monin +Date: Tue May 13 19:32:25 2008 +0000 ------------------------------------------------------------------------- -r561 | zas_ | 2008-04-21 22:01:22 +0200 (Mon, 21 Apr 2008) | 9 lines + Get rid of vflist_pop_menu() col_idx parameter, use new Viewfile field + named clicked_mark. + Marks numbering is now consistent with menus (starting at 1, 0 is an + invalid mark), assertions were modified accordingly. -Replace fullscreen.info and fullscreen.show_info options by: -image_overlay.common.enabled => to save last state to rc file -image_overlay.common.show_at_startup => overrides .common.enabled at startup -image_overlay.common.template_string => replace fullscreen.info +commit 86ebde92c37840f27e7f81f0051a1b501b398bcb +Author: Laurent Monin +Date: Tue May 13 16:09:43 2008 +0000 -common is used since for now there is only one image overlay setup, -later specific setups may be added. + Expand tilde with file: and view: remote parameters. + Now these are working: + geeqie -r file:~/dir + geeqie -r view:~user/file +commit 38975e5efdefc3d56f710847821efc2173561f72 +Author: Laurent Monin +Date: Tue May 13 14:49:38 2008 +0000 ------------------------------------------------------------------------- -r560 | nadvornik | 2008-04-21 21:42:58 +0200 (Mon, 21 Apr 2008) | 2 lines + Display a message when invalid remote options are used. -fixed another "gqview" occurence +commit e88a963a320d1728638984277c0cad4bb3ab3f00 +Author: Laurent Monin +Date: Tue May 13 14:35:51 2008 +0000 ------------------------------------------------------------------------- -r559 | nadvornik | 2008-04-21 21:10:41 +0200 (Mon, 21 Apr 2008) | 2 lines + Comparing tag id is not sufficient, check the tag name too. -updated NEWS, README and other documentation files +commit f558c8c220211ffd1950748350a09cf4d471f761 +Author: Laurent Monin +Date: Tue May 13 11:58:47 2008 +0000 ------------------------------------------------------------------------- -r558 | nadvornik | 2008-04-21 20:09:30 +0200 (Mon, 21 Apr 2008) | 2 lines + Keywords and comment can now be displayed in OSD info using %keywords% and %comment%. -renamed no.po to nb.po +commit 2ce8b27e1caba72f8f08fa62c2cae7def628cdaf +Author: Laurent Monin +Date: Tue May 13 08:53:26 2008 +0000 ------------------------------------------------------------------------- -r557 | zas_ | 2008-04-21 17:30:16 +0200 (Mon, 21 Apr 2008) | 3 lines + Move all remote stuff from main.c to remote.[ch]. -Fix a segfault occuring when pressing 'i' for overlay info -in a separate image window (no layout). +commit 12639ee4b8d55c4d4b17b888fe4f18d9ba45c382 +Author: Laurent Monin +Date: Tue May 13 08:02:46 2008 +0000 ------------------------------------------------------------------------- -r556 | zas_ | 2008-04-21 16:19:48 +0200 (Mon, 21 Apr 2008) | 2 lines + Move some functions from main.[ch] to new window.[ch]. -histogram_draw(): tidy up. +commit c8611249cdc9ee9247803ff04a39a049e7db57d0 +Author: Laurent Monin +Date: Tue May 13 07:34:37 2008 +0000 ------------------------------------------------------------------------- -r555 | zas_ | 2008-04-21 15:39:17 +0200 (Mon, 21 Apr 2008) | 2 lines + Ensure that we end with UTF8 encoded comment and keywords. -histogram_read(): speed up calculations by 20%. +commit 8b3ee1eef7b80997fc1c6ef43d3c622d01d1737c +Author: Laurent Monin +Date: Mon May 12 23:26:00 2008 +0000 ------------------------------------------------------------------------- -r554 | zas_ | 2008-04-21 13:44:03 +0200 (Mon, 21 Apr 2008) | 2 lines + Reading of Iptc.Application2.Keywords should now be fixed. + Use uft8_validate_or_convert() on exif's text data to be safe. -histogram_read(): use memset() to initialize histogram data instead of for() loop. +commit 9aacc4a2448ac1f21bee1ff71ed4ebba4f4eeb81 +Author: Laurent Monin +Date: Mon May 12 23:21:35 2008 +0000 ------------------------------------------------------------------------- -r553 | zas_ | 2008-04-21 12:11:55 +0200 (Mon, 21 Apr 2008) | 2 lines + Rename bar_exif_validate_text() to utf8_validate_or_convert() and move it to main.[ch]. -French translation was updated. +commit 885b212391d1bf9503c9b1d3e0324d22a8c24f80 +Author: Laurent Monin +Date: Mon May 12 23:00:04 2008 +0000 ------------------------------------------------------------------------- -r552 | zas_ | 2008-04-21 12:10:23 +0200 (Mon, 21 Apr 2008) | 2 lines + bar_exif_validate_text(): use computed length and cleanup. -Add compat.c to POTFILES +commit 7b4885c281b47d456d0985ad6b084cb20fc7cc08 +Author: Laurent Monin +Date: Mon May 12 19:56:28 2008 +0000 ------------------------------------------------------------------------- -r551 | zas_ | 2008-04-21 12:09:01 +0200 (Mon, 21 Apr 2008) | 4 lines + Disable non-working Iptc.Application2.Keywords reading introduced in revision 736. -Allow the user to set the drag'n drop icon size through -Preferences > Advanced > Behavior > Drag'n drop icon size. -It is saved to rc file as dnd_icon_size. +commit 874ac4eafacb90b111161275fc71f6345e77d30d +Author: Laurent Monin +Date: Mon May 12 17:10:40 2008 +0000 ------------------------------------------------------------------------- -r550 | zas_ | 2008-04-21 01:17:35 +0200 (Mon, 21 Apr 2008) | 4 lines + Extract and append keywords from Iptc.Application2.Keywords tags. + A function was added to make the keywords unique in the list. + Note: Iptc.Application2.Keywords is only read, not written. -Add a replacement for gtk_radio_action_set_current_value() which -require GTK+ >= 2.10. -Two new files were added, compat.h and compat.c. +commit c50d73be0f5f860103b2bf66b845e33aae9ce7c7 +Author: Laurent Monin +Date: Mon May 12 10:46:23 2008 +0000 ------------------------------------------------------------------------- -r549 | zas_ | 2008-04-21 00:51:53 +0200 (Mon, 21 Apr 2008) | 2 lines + When an option was successfully read, just continue to next line. -French translation was updated. +commit 75f14d8caa9b739913c96b353e100c1088722907 +Author: Laurent Monin +Date: Mon May 12 10:37:37 2008 +0000 ------------------------------------------------------------------------- -r548 | zas_ | 2008-04-21 00:45:00 +0200 (Mon, 21 Apr 2008) | 2 lines + Minor formatting fix in rc file header. -Add number mnemonics to image view editors submenu. +commit ff365dc6cc9abcf3331fe3eb048c9f8bc082f5c3 +Author: Laurent Monin +Date: Mon May 12 08:52:17 2008 +0000 ------------------------------------------------------------------------- -r547 | zas_ | 2008-04-21 00:29:23 +0200 (Mon, 21 Apr 2008) | 3 lines + Rework read_*_option(): + - read_u?int_option() now interpret a value of "true" as 1 + - read_bool_option() now interpret any value different from 0 as true. + - make functions return TRUE on successful read, FALSE else + + Theses changes will help to maintain compatibility when options are modified. -Prefix editor entries in the main menu with numbers. -It allows Alt+E+number as shortcut to start an editor. +commit 0481d1d4e1ee29d28e766e47ab5dfd39798f9378 +Author: Laurent Monin +Date: Mon May 12 08:11:27 2008 +0000 ------------------------------------------------------------------------- -r546 | zas_ | 2008-04-21 00:14:54 +0200 (Mon, 21 Apr 2008) | 2 lines + Rename option image_overlay.common.enabled to image_overlay.common.state + since it is not a boolean anymore. -Add missing shortcuts. +commit 99a50120349e25795138098cb35616a3cc953f33 +Author: Laurent Monin +Date: Mon May 12 00:22:38 2008 +0000 ------------------------------------------------------------------------- -r545 | nadvornik | 2008-04-21 00:14:38 +0200 (Mon, 21 Apr 2008) | 3 lines + Add some wrapper functions for not yet common code. -fixed color profile code for older versions of exiv2 -compilation fixes +commit 98e46592bd5e0f88061eb983c092d57594a479d6 +Author: Laurent Monin +Date: Sun May 11 23:56:40 2008 +0000 ------------------------------------------------------------------------- -r544 | zas_ | 2008-04-21 00:01:26 +0200 (Mon, 21 Apr 2008) | 4 lines + Make vf_pop_menu_toggle_view_type_cb() independent of FILEVIEW_LIST/FILEVIEW_ICON real values. -Mark slideshow toggle state in the menu. -There is still an issue due to layout vs view slideshows... +commit c2147d9b7fd901a7a6ffd89fed45c89c138d2281 +Author: Laurent Monin +Date: Sun May 11 23:47:59 2008 +0000 + Move a part of pop up menu common code to view_file.[ch]. ------------------------------------------------------------------------- -r543 | zas_ | 2008-04-20 23:38:45 +0200 (Sun, 20 Apr 2008) | 2 lines +commit 4ba97284fc9972458cc337decd8f5e539a74bbb4 +Author: Laurent Monin +Date: Sun May 11 23:09:39 2008 +0000 -Fix a typo introduced by revision 521. + Introduce vf_pop_menu_file_list() as a wrapper to + vflist_pop_menu_file_list() and vficon_pop_menu_file_list(). ------------------------------------------------------------------------- -r542 | nadvornik | 2008-04-20 23:35:03 +0200 (Sun, 20 Apr 2008) | 2 lines +commit 2be39b52cf821f156ff7e35613f682cb85b8b8bc +Author: Laurent Monin +Date: Sun May 11 21:11:54 2008 +0000 -read color profiles from jpeg also with Exiv2 + Use vf_* functions where possible. ------------------------------------------------------------------------- -r541 | zas_ | 2008-04-20 23:30:36 +0200 (Sun, 20 Apr 2008) | 6 lines +commit 2a9c38f82f64a01d9c2984a778d8a1702f97c3a1 +Author: Laurent Monin +Date: Sun May 11 20:38:21 2008 +0000 -Use explicit names for mouse buttons instead of numbers. -MOUSE_BUTTON_LEFT = 1 -MOUSE_BUTTON_MIDDLE = 2 -MOUSE_BUTTON_RIGHT = 3 -It makes the code easier to read. + Drop unused layout_list_get_path() and vf*_index_get_path(). ------------------------------------------------------------------------- -r540 | zas_ | 2008-04-20 22:35:26 +0200 (Sun, 20 Apr 2008) | 2 lines +commit 1fe24ccb2ec1ecfaecf2618da3c5353a346a3566 +Author: Laurent Monin +Date: Sun May 11 13:17:38 2008 +0000 -Fix a typo: unoffical -> unofficial + French translation was updated. ------------------------------------------------------------------------- -r539 | zas_ | 2008-04-20 20:07:51 +0200 (Sun, 20 Apr 2008) | 2 lines +commit 814bbc284c9bcb08ce6a3a45b34b601b86459870 +Author: Laurent Monin +Date: Sun May 11 13:14:58 2008 +0000 -Effectively drop empty newlines at end of files (missing from rev 535) + An option to save and restore the last path used was added. + This option appears as startup.use_last_path in rc file. + Preferences > General > Startup was modified accordingly. ------------------------------------------------------------------------- -r538 | zas_ | 2008-04-20 18:50:19 +0200 (Sun, 20 Apr 2008) | 3 lines +commit ff3bbba625e982d3341491b771cf6a6b5b3ccd2c +Author: Laurent Monin +Date: Sun May 11 12:23:26 2008 +0000 -comment_file_read(): rewrite the parser, drop leading and trailing newlines -in comment. + Rename options: + startup_path_enable -> startup.restore_path + startup_path -> startup.path + + Geeqie is still able to read old options. ------------------------------------------------------------------------- -r537 | zas_ | 2008-04-20 15:42:22 +0200 (Sun, 20 Apr 2008) | 2 lines +commit 4e0f18ac54c4b327c380d9c3be9db0dde2f964a7 +Author: Laurent Monin +Date: Sun May 11 11:46:48 2008 +0000 -Minor cleanup and code redundancy reduction. + Fix help window title. ------------------------------------------------------------------------- -r536 | zas_ | 2008-04-20 15:30:36 +0200 (Sun, 20 Apr 2008) | 2 lines +commit b01f014ebaba751530160ac533299d71681d5bc3 +Author: Laurent Monin +Date: Sun May 11 11:44:58 2008 +0000 -editor_command_one(): tidy up. + Use computed string length. ------------------------------------------------------------------------- -r535 | zas_ | 2008-04-20 15:04:57 +0200 (Sun, 20 Apr 2008) | 6 lines +commit 53e7b0df5c55a782d95cb892e1ba74b57221f2d6 +Author: Laurent Monin +Date: Sun May 11 11:41:32 2008 +0000 -Big whitespaces cleanup: -- drop whitespaces at end of lines -- convert eight spaces to tab at start of lines -- drop spurious spaces mixed with tabs -- remove empty lines at end of files + Slightly increase help window's default width. ------------------------------------------------------------------------- -r534 | zas_ | 2008-04-20 12:05:27 +0200 (Sun, 20 Apr 2008) | 3 lines +commit 4e6dd6649934183de0294ce5cbfe76a6a00fd83f +Author: Laurent Monin +Date: Sun May 11 11:30:41 2008 +0000 -Allow the user to change open_recent_list_maxsize option through -Preferences > Advanced > Navigation. + Add an help button to OSD info configuration in Preferences dialog. + Make its own section named "Overlay Screen Display". ------------------------------------------------------------------------- -r533 | nadvornik | 2008-04-20 11:53:37 +0200 (Sun, 20 Apr 2008) | 2 lines +commit c7a434caff3c658986b5e3188b47c9d31cb3b221 +Author: Laurent Monin +Date: Sun May 11 10:25:04 2008 +0000 -rm as external delete command is too dangerous, even for testing + Partially update main README. + A section concerning overlay info was added. + Translation statistics were updated. ------------------------------------------------------------------------- -r532 | zas_ | 2008-04-20 11:47:51 +0200 (Sun, 20 Apr 2008) | 2 lines +commit 1fa5d80bd4c211fd31199ba5b8eab8ec638957d1 +Author: Laurent Monin +Date: Sun May 11 09:37:46 2008 +0000 -Add a way to restore original state in Adjust menu. + Change translations statistics formatting to match the style + use in the README file. + + Here is the result for current trunk: + + Translations statistics + Date: Sun, 11 May 2008 11:33:14 +0200 + + Note: completion % in the chart below may not be quite correct + when fuzzy translations exist but do not appear in the source. + For exact results, run make update-po with up to date POTFILES.in. + comp % = trans / (trans + fuzzy + untrans) + + Language Comp(%) Trans Fuzzy Untrans Total + fr 100.00 985 0 0 985 + be 90.56 892 25 68 985 + eu 68.53 675 150 160 985 + eo 68.22 672 153 160 985 + vi 68.02 670 156 159 985 + it 67.82 668 154 163 985 + pt_BR 67.82 668 154 163 985 + zh_TW 66.90 659 150 176 985 + sk 66.50 655 158 172 985 + fi 64.37 634 176 175 985 + nl 64.37 634 179 172 985 + sv 64.16 632 175 178 985 + bg 64.06 631 175 179 985 + ca 64.06 631 175 179 985 + cs 64.06 631 175 179 985 + de 64.06 631 175 179 985 + es 64.06 631 175 179 985 + ja 64.06 631 175 179 985 + ru 64.06 631 175 179 985 + pl 60.61 597 148 240 985 + ar 42.94 423 315 247 985 + ro 37.56 370 342 273 985 + hu 36.14 356 332 297 985 + id 19.70 194 408 383 985 + et 19.29 190 407 388 985 + uk 17.16 169 411 405 985 + nb 15.94 157 416 412 985 + zh_CN.GB2312 15.94 157 416 412 985 + th 15.13 149 413 423 985 + sl 14.72 145 419 421 985 + da 12.99 128 402 455 985 + ko 11.37 112 52 821 985 + tr 6.60 65 398 522 985 ------------------------------------------------------------------------- -r531 | nadvornik | 2008-04-20 11:29:46 +0200 (Sun, 20 Apr 2008) | 2 lines +commit 0cbf32806223d6271b1bd211cd4dfc22ba2736ca +Author: Laurent Monin +Date: Sat May 10 21:29:53 2008 +0000 -added fColorProfile pseudo-tag with detailed information + Fix display of collection in overlay info. + Due to markup escaped collection was displayed instead of collection's in italic. + + Overlay info syntax was extended to allow the wrapping of displayed data with markup. + + General syntax is: %name[:length limit][:extra]% + Extra string uses special character '*' to mark the place of the data to display. + If no '*' is present, then extra string is just appended to data. + Any "\n" is replaced by a newline on display. + Pango mark up is accepted in left and right parts. + If data is empty, nothing will be displayed. + + Examples: + "%name:*\n%" -> name is displayed in italics ended with a newline + "%size:\n%" -> size is displayed with a newline at end + "%formatted.ISOSpeedRating:ISO *%" -> prefix iso number with "ISO " (ie. "ISO 100") + "Collection *\n" -> display collection name in bold prefixed by "Collection " and a newline is appended + + + Collection name formatting was slighly improved by not displaying the .gqv extension. + The default overlay info string was modified to use the new syntax, but older info strings should be + displayed as usual. ------------------------------------------------------------------------- -r530 | zas_ | 2008-04-20 11:02:05 +0200 (Sun, 20 Apr 2008) | 3 lines +commit fc25dbbf61f437c785404029bfce99ed4a71f6b1 +Author: Laurent Monin +Date: Sat May 10 14:22:18 2008 +0000 -Fix the case "orientation from FileData, color profile from exif". -Reported by Vladimir Nadvornik. + image_osd_get() now returns OsdShowFlags. ------------------------------------------------------------------------- -r529 | zas_ | 2008-04-20 01:12:30 +0200 (Sun, 20 Apr 2008) | 3 lines +commit 73fa427e25508213e47fb0671e2a35a790b21b48 +Author: Laurent Monin +Date: Sat May 10 13:54:25 2008 +0000 -Rename inappropriate folder_size to folder. + Display a simple grid with histogram. +commit af4f4a115221b7c92ba4d7e6805ecc8988dc7147 +Author: Laurent Monin +Date: Sat May 10 12:33:52 2008 +0000 ------------------------------------------------------------------------- -r528 | zas_ | 2008-04-20 00:32:07 +0200 (Sun, 20 Apr 2008) | 2 lines + Initialize to correct value (OSD_SHOW_NOTHING instead of FALSE). -Use sizeof() for buffer size where appropriate. +commit 48916cac7e50d057096dc76cab7401e3c0dc35b0 +Author: Laurent Monin +Date: Sat May 10 09:00:14 2008 +0000 ------------------------------------------------------------------------- -r527 | zas_ | 2008-04-19 23:50:05 +0200 (Sat, 19 Apr 2008) | 2 lines + Save full OSD state to rc file and restore it on startup. + It allows to restore OSD with or without histogram depending + on previous state. -Keep image orientation set by the user during the session. +commit 8ccd362187273137e9ed4b51671c6eeef90851dd +Author: Laurent Monin +Date: Fri May 9 12:43:10 2008 +0000 ------------------------------------------------------------------------- -r526 | zas_ | 2008-04-19 23:30:19 +0200 (Sat, 19 Apr 2008) | 3 lines + image_osd_info_render(): if there's no fd, just return. -Save Show Marks state to rc file and display current state in menu. -It is saved as boolean option layout.show_marks. +commit c93ee033bf6c9c8d6169cb2e826f5f612990659b +Author: Laurent Monin +Date: Fri May 9 12:33:24 2008 +0000 ------------------------------------------------------------------------- -r525 | nadvornik | 2008-04-19 23:20:08 +0200 (Sat, 19 Apr 2008) | 2 lines + Move overlay histogram stuff from ImageWindow to OverlayStateData. + It simplifies things a lot and make more sense. + + Note: overlay icons display is broken since a long time it seems. -fixed max. number of profiles +commit 46a015d5305c8d75297c3d6748ca2b4375851e19 +Author: Laurent Monin +Date: Fri May 9 11:15:56 2008 +0000 ------------------------------------------------------------------------- -r524 | zas_ | 2008-04-19 23:18:24 +0200 (Sat, 19 Apr 2008) | 2 lines + Introduce image_get_osd_data() and image_set_osd_data(). -Sort options. +commit 77d3ccb4b995e0de2e0ac0facf1e03347549cadf +Author: Laurent Monin +Date: Fri May 9 09:58:46 2008 +0000 ------------------------------------------------------------------------- -r523 | nadvornik | 2008-04-19 23:10:18 +0200 (Sat, 19 Apr 2008) | 2 lines + image_osd_get() and image_osd_set() now uses flags. -fixed color profile index +commit 94833dae9ada87a15401be7361988be493bbeaad +Author: Laurent Monin +Date: Fri May 9 09:34:38 2008 +0000 ------------------------------------------------------------------------- -r522 | zas_ | 2008-04-19 22:53:12 +0200 (Sat, 19 Apr 2008) | 2 lines + image_osd_histogram_chan_toggle(), image_osd_histogram_log_toggle(): + reduce indentation level. -Let toggle marks with numeric keypad. +commit dd431ef1f82d42b02899f1ca1c9f6ad4e172ede4 +Author: Laurent Monin +Date: Fri May 9 08:39:18 2008 +0000 ------------------------------------------------------------------------- -r521 | nadvornik | 2008-04-19 22:19:27 +0200 (Sat, 19 Apr 2008) | 4 lines + Preserve last histogram modes. + When a new histogram is displayed, it uses previously chosen + modes. + These modes are saved on exit to rc file as options: + histogram.last_channel_mode + histogram.last_log_mode -I have finally found how to add alternative hotkeys -removed more hard-coded keys -"Split Quad" is without hotkey for now +commit 7917c5a3e4e89fd1b32de87c3788e32025820c41 +Author: Laurent Monin +Date: Fri May 9 08:03:25 2008 +0000 ------------------------------------------------------------------------- -r520 | zas_ | 2008-04-19 21:28:10 +0200 (Sat, 19 Apr 2008) | 3 lines + Update CODING and HACKING files, and add po/README file for translators. -Accept keywords composed by two words ("Todo" = "A faire" in french). -Prevent duplicate keywords in the list. +commit 8ef1e8c83e2cc7f9ee8715be574a2f72d2b1143c +Author: Laurent Monin +Date: Fri May 9 07:46:18 2008 +0000 ------------------------------------------------------------------------- -r519 | nadvornik | 2008-04-19 19:55:41 +0200 (Sat, 19 Apr 2008) | 2 lines + Make lirc_cleanup() and lirc_input_callback() static. -show the AdobeRGB profile in the menu, indicate input profile from image +commit 9cb23ddf80cbb03ee4b4557e4aaa9ecbee7dcb91 +Author: Laurent Monin +Date: Fri May 9 07:32:30 2008 +0000 ------------------------------------------------------------------------- -r518 | zas_ | 2008-04-19 19:14:03 +0200 (Sat, 19 Apr 2008) | 2 lines + Use function(void) instead of function() for declaring functions which + do not take any parameters at all. + It respects current Geeqie coding style more. -file_dat_unref: display number of references as well of path (debug only). +commit 524cf262d075f28b08c51b187598b6c1f3276dde +Author: Laurent Monin +Date: Thu May 8 22:59:14 2008 +0000 ------------------------------------------------------------------------- -r517 | nadvornik | 2008-04-19 18:26:29 +0200 (Sat, 19 Apr 2008) | 2 lines + In the search results view, hide dimensions column instead of + displaying an empty one. + When dimensions search criteria is used, it is always displayed. -first support for AdobeRGB colorspace +commit 6b17a6ad374a2077265c1f806558aba0dd89b585 +Author: Laurent Monin +Date: Thu May 8 22:49:16 2008 +0000 ------------------------------------------------------------------------- -r516 | zas_ | 2008-04-19 18:10:08 +0200 (Sat, 19 Apr 2008) | 2 lines + Reset thumbnail column to NULL when hidden. + It fixes bug 1960274. -French translation fixes. +commit 786c7401047ffbbec27820cf0e89d008e16ea488 +Author: Laurent Monin +Date: Thu May 8 20:21:03 2008 +0000 ------------------------------------------------------------------------- -r515 | zas_ | 2008-04-19 15:40:20 +0200 (Sat, 19 Apr 2008) | 3 lines + search_status_update(): slightly reduce code redundancy. -French translation fixes and updates. +commit cfe2b3ba31e60ed9863f7f9af807b2f936893ef7 +Author: Laurent Monin +Date: Thu May 8 12:50:25 2008 +0000 + Use g_ascii_strncasecmp() instead of strncasecmp() where applicable. + Add a FIXME where potential improper usage of strncasecmp() is made. ------------------------------------------------------------------------- -r514 | zas_ | 2008-04-19 15:39:21 +0200 (Sat, 19 Apr 2008) | 2 lines +commit 6559dd1a68980c2e4a1708a84cfbb60e9775be33 +Author: Laurent Monin +Date: Thu May 8 12:38:34 2008 +0000 -Add missing _(). + Use g_ascii_strcasecmp() instead of strcasecmp() where ascii-only strings + are used. ------------------------------------------------------------------------- -r513 | zas_ | 2008-04-19 14:46:59 +0200 (Sat, 19 Apr 2008) | 4 lines +commit 947a8668dbefb4da50c01673a18a6cfb2ec1908b +Author: Laurent Monin +Date: Wed May 7 23:27:26 2008 +0000 -Add the possibility to update only one translation file using, -for example: make update-po PO=fr -autogen.sh applies a patch made against glib-gettextize generated Makefile.in.in + Replace deprecated functions by their counterparts: + g_strcasecmp() -> g_ascii_strcasecmp() + g_strncasecmp() -> g_ascii_strncasecmp() + gtk_input_remove() -> g_source_remove() + g_io_channel_close() -> g_io_channel_shutdown() + g_io_channel_unref() + + All these are deprecated either since 2.2 or 2.4. ------------------------------------------------------------------------- -r512 | zas_ | 2008-04-19 13:11:53 +0200 (Sat, 19 Apr 2008) | 5 lines +commit c5f3fab36157bac8c74ef5401afc4b5478dc436b +Author: Laurent Monin +Date: Wed May 7 22:54:33 2008 +0000 -Cleanup last patch: -- drop vd_pop_menu_dir_view_as_cb() since it is now unused. -- use G_N_ELEMENTS() + Resync po files. + French translation was updated. +commit 0479ab313fcf0ac12489dfc4df49593b86e212f6 +Author: Laurent Monin +Date: Wed May 7 22:48:30 2008 +0000 ------------------------------------------------------------------------- -r511 | nadvornik | 2008-04-19 11:49:14 +0200 (Sat, 19 Apr 2008) | 2 lines + Add a way to invert the current selection. + An item labeled "Invert selection" was added to the Select submenu + in the main menu. -improved spec file +commit 2927044d43b56069079cfeac00aa6989b1c9c126 +Author: Laurent Monin +Date: Tue May 6 23:58:08 2008 +0000 ------------------------------------------------------------------------- -r510 | zas_ | 2008-04-19 11:36:30 +0200 (Sat, 19 Apr 2008) | 3 lines + Tidy up. -Fix directory view popup menu to display a View As submenu -to switch between different directory views. +commit 38ac488dfcdb0f560617f615b4ced2c01b63821c +Author: Laurent Monin +Date: Tue May 6 23:53:12 2008 +0000 ------------------------------------------------------------------------- -r509 | zas_ | 2008-04-19 01:35:16 +0200 (Sat, 19 Apr 2008) | 2 lines + French translation was updated. -gimp-remote has no -n option. +commit 4b93995fdf301e4c54c7919ab2a7b4a50b08f87d +Author: Laurent Monin +Date: Tue May 6 23:52:09 2008 +0000 ------------------------------------------------------------------------- -r508 | zas_ | 2008-04-19 01:09:03 +0200 (Sat, 19 Apr 2008) | 4 lines + Add trash.c. -Add zoom ratio display to OSD in fullscreen mode. -It appears as [%zoom%] in fullscreen info string. -It is now displayed by default. +commit 25ad32ba818bbb3c7cb4c620a3ede5f9ed374541 +Author: Vladimir Nadvornik +Date: Tue May 6 21:35:31 2008 +0000 ------------------------------------------------------------------------- -r507 | nadvornik | 2008-04-19 00:31:58 +0200 (Sat, 19 Apr 2008) | 2 lines + moved safe delete functions to separate file -partially fixed reading embedded color profiles with exiv2 +commit 8546ea31f763bd7e3386e4231be062ff2a73d55a +Author: Vladimir Nadvornik +Date: Tue May 6 20:24:16 2008 +0000 ------------------------------------------------------------------------- -r506 | zas_ | 2008-04-19 00:15:01 +0200 (Sat, 19 Apr 2008) | 5 lines + use some of the new functions in filedata.c -Add two new options to control image read buffer at runtime. -They are available in Preferences > Advanced > Image loading and caching. -Default read buffer size was set to 4096 instead of 512. -These options are saved to rc file. +commit f05bac9cdc8755273958466df6df1b3f5305ee41 +Author: Laurent Monin +Date: Tue May 6 17:00:55 2008 +0000 ------------------------------------------------------------------------- -r505 | zas_ | 2008-04-18 23:53:33 +0200 (Fri, 18 Apr 2008) | 2 lines + Allow the user to append or replace comments for a group of selected files. + Two buttons were added to the Keywords panel. -Display elapsed time since previous get_exec_time() call (debug only). +commit 5f3ddd491eb4d90e18663d030155cfae254ac385 +Author: Laurent Monin +Date: Tue May 6 12:31:23 2008 +0000 ------------------------------------------------------------------------- -r504 | zas_ | 2008-04-18 23:51:08 +0200 (Fri, 18 Apr 2008) | 2 lines + Use a dedicated option to enable keywords and comment saving as XMP tags + in image's files. + This new option is named "save_metadata_in_image_file" in configuration file. + User can toggle it through Preferences > Advanced > Miscellaneous > Store keywords and comments as XMP tags in image files. + Description of enable_metadata_dirs was modified as an attempt to improve clarity. -Remove forgotten debug printf(). +commit 5ecec83ad07f14578f4922ad7ba7befca9a09c31 +Author: Laurent Monin +Date: Tue May 6 12:03:39 2008 +0000 ------------------------------------------------------------------------- -r503 | zas_ | 2008-04-18 23:42:00 +0200 (Fri, 18 Apr 2008) | 2 lines + comment_xmp_read(), comment_xmp_write(): cleanup and improve readibility. -Fix OSD display when fullscreen info string is empty. +commit a729f5905a8ca4faeafca4f4e66832e408c52ccd +Author: Laurent Monin +Date: Mon May 5 21:27:39 2008 +0000 ------------------------------------------------------------------------- -r502 | nadvornik | 2008-04-18 23:30:12 +0200 (Fri, 18 Apr 2008) | 2 lines + French translation was updated, various fixes. -replace inner loops with memcpy +commit 146b6e2a59584bda8c274ba313862a3abb82a634 +Author: Laurent Monin +Date: Mon May 5 20:56:20 2008 +0000 ------------------------------------------------------------------------- -r501 | zas_ | 2008-04-18 22:41:09 +0200 (Fri, 18 Apr 2008) | 5 lines + Belarusian translation was updated. Thanks to Pavel Piatruk. -Explode pr_tile_mirror() in three optimized functions: -pr_tile_mirror_only() -pr_tile_mirror_and_flip() -pr_tile_flip_only() +commit 117767d634649683e27badb1d7c2cffc1eac5334 +Author: Vladimir Nadvornik +Date: Mon May 5 20:51:51 2008 +0000 ------------------------------------------------------------------------- -r500 | zas_ | 2008-04-18 18:53:41 +0200 (Fri, 18 Apr 2008) | 5 lines + started implementation of API for sidecar files -Rename vd_drop_update() to vd_dnd_drop_update(). -Add two function pointers to ViewDir struct to keep -vdtree_dnd_drop_expand_cancel() and vdtree_dnd_drop_expand() -static to view_dir_tree.c. +commit ffc2e29991a2d8d968133f5340cd711c1fd50c42 +Author: Laurent Monin +Date: Mon May 5 20:51:50 2008 +0000 ------------------------------------------------------------------------- -r499 | zas_ | 2008-04-18 18:29:47 +0200 (Fri, 18 Apr 2008) | 2 lines + Update POTFILES.in (filelist.c -> filedata.c). -Drop 3 useless #define. +commit 512e5dddd1d85da2fe030e0a464d953d0733cd1e +Author: Laurent Monin +Date: Mon May 5 20:49:40 2008 +0000 ------------------------------------------------------------------------- -r498 | zas_ | 2008-04-18 18:25:40 +0200 (Fri, 18 Apr 2008) | 4 lines + Modify regen_potfiles.sh to generate a patch instead of + directly applying changes to POTFILES.in. -Fix forgotten vd->pf affectation. -Cleanup, and reduce code redundancy a bit. +commit bf41ef491c80e033e2d028a87e00605ac893609f +Author: Vladimir Nadvornik +Date: Mon May 5 19:20:46 2008 +0000 + added .gqv to known file types ------------------------------------------------------------------------- -r497 | zas_ | 2008-04-18 13:01:41 +0200 (Fri, 18 Apr 2008) | 6 lines +commit 6e7bf48d03f50655a0e70015b3d33ce96bd80f5f +Author: Vladimir Nadvornik +Date: Mon May 5 19:11:12 2008 +0000 -Explode pr_tile_rotate_90() in two functions: -pr_tile_rotate_90_clockwise() -pr_tile_rotate_90_counter_clockwise() -Optimize the code at the expense of a bit of code redundancy: -tests were moved outside the loops, intermediate results are now cached. + split filelist.c to filefilter.c and filedata.c ------------------------------------------------------------------------- -r496 | zas_ | 2008-04-18 11:15:09 +0200 (Fri, 18 Apr 2008) | 2 lines +commit f798c6ab2cd9c89fa905f5003783a6c445551805 +Author: Laurent Monin +Date: Mon May 5 09:21:01 2008 +0000 -Introduce printf_term() macro and use it. + Revert wrong patch rev 676. ------------------------------------------------------------------------- -r495 | zas_ | 2008-04-17 22:14:49 +0200 (Thu, 17 Apr 2008) | 3 lines +commit cfa6a11856d742e7b1e1bd46d6e7125eb1694a1b +Author: Laurent Monin +Date: Mon May 5 09:12:07 2008 +0000 -Add a shortcut key for List (L) and change the one for Tree (T), -they are now in a submenu. + Add an helper script to regenerate POTFILES.in file. + POTFILES.in was updated. + French translation was updated. ------------------------------------------------------------------------- -r494 | zas_ | 2008-04-17 22:03:49 +0200 (Thu, 17 Apr 2008) | 2 lines +commit 0a259ddb8f1c4e2929ea0a5c7570e86d27cddc22 +Author: Laurent Monin +Date: Mon May 5 08:32:18 2008 +0000 -Add some wrappers in view_dir.c and simplify even more. + Revert patch 675, and correctly fix gtk assertion failure. ------------------------------------------------------------------------- -r493 | zas_ | 2008-04-17 21:57:41 +0200 (Thu, 17 Apr 2008) | 2 lines +commit 37193c248cd813a72f62bce349c788072ca5b311 +Author: Laurent Monin +Date: Mon May 5 08:15:52 2008 +0000 -Fix a bug introduced in revision 489. + Fix two memory leaks. ------------------------------------------------------------------------- -r492 | zas_ | 2008-04-17 20:44:17 +0200 (Thu, 17 Apr 2008) | 3 lines +commit 6c35f9de22600d4b8243b8d84095dfb716cedec9 +Author: Laurent Monin +Date: Mon May 5 07:46:32 2008 +0000 -Reduce code redundancy with the introduction of a new -function named vd_get_fd_from_tree_path(). + Fix Gtk-CRITICAL **: gtk_label_set_text: assertion `GTK_IS_LABEL (label)' failed + when swapping to/from file icon view. ------------------------------------------------------------------------- -r491 | nadvornik | 2008-04-17 19:44:54 +0200 (Thu, 17 Apr 2008) | 3 lines +commit 5cacdd949c21b1c5b989b62eb48d91e094ef3e89 +Author: Laurent Monin +Date: Sun May 4 23:57:20 2008 +0000 -image post-processing (rotation and color management) moved to -pixbuf-renderer + vficon_release_cb(): use switch() and cleanup. ------------------------------------------------------------------------- -r490 | zas_ | 2008-04-17 19:35:51 +0200 (Thu, 17 Apr 2008) | 3 lines +commit b9cb52f0d53dbc898c252dfef98fae9f832bb14d +Author: Laurent Monin +Date: Sun May 4 23:20:43 2008 +0000 -Merge vd(list|tree)_release_cb() in vd_release_cb(). -I made some assumptions here i hope correct. + Minor tidyup. ------------------------------------------------------------------------- -r489 | zas_ | 2008-04-17 19:19:41 +0200 (Thu, 17 Apr 2008) | 2 lines +commit c2117e7e72686ada0203a1d562263dc7f198cb4a +Author: Laurent Monin +Date: Sun May 4 23:06:46 2008 +0000 -Merge few more functions to view_dir.c. + Drop unused vficon_select_by_path() and vflist_select_by_path(). ------------------------------------------------------------------------- -r488 | zas_ | 2008-04-17 18:33:31 +0200 (Thu, 17 Apr 2008) | 2 lines +commit b6ea14610564d2367b0a74656717913362166e62 +Author: Laurent Monin +Date: Sun May 4 23:03:36 2008 +0000 -Move common menu position callback to view_dir.c. + Minor cleanup. ------------------------------------------------------------------------- -r487 | zas_ | 2008-04-17 16:51:32 +0200 (Thu, 17 Apr 2008) | 2 lines +commit 509c70381ce8847866bb84ce398d074a749a6abf +Author: Vladimir Nadvornik +Date: Sun May 4 21:54:20 2008 +0000 -Merge dirlist/dirview dnd code. + dropped path_list functions, use filelist functions everywhere ------------------------------------------------------------------------- -r486 | zas_ | 2008-04-17 00:51:32 +0200 (Thu, 17 Apr 2008) | 2 lines +commit ac3bd2a2622adbf9154d805e6a0df4bab97f54af +Author: Laurent Monin +Date: Sun May 4 19:00:39 2008 +0000 -Regenerate translations files and update french translation. + Remove unused functions: + vflist_set_status_func() + vflist_set_thumb_status_func() + vflist_set_layout() + vficon_set_status_func() + vficon_set_thumb_status_func() + vficon_set_layout() ------------------------------------------------------------------------- -r485 | zas_ | 2008-04-17 00:31:52 +0200 (Thu, 17 Apr 2008) | 2 lines +commit d3ade2f9fd8e00a1fce9d8fc7bb32d359af96259 +Author: Laurent Monin +Date: Sun May 4 18:45:06 2008 +0000 -Fix new folder feature in dirlist mode, it was broken by revision 481. + Drop ViewFileIcon, use ViewFile and ViewFileInfoIcon instead. ------------------------------------------------------------------------- -r484 | zas_ | 2008-04-17 00:23:43 +0200 (Thu, 17 Apr 2008) | 2 lines +commit 1267a5c07d5fb00b4eb9f9837b9d82aff3172b6e +Author: Laurent Monin +Date: Sun May 4 16:16:07 2008 +0000 -Fix a crash introduced in revision 477. + Drop ViewFileList, use ViewFile and ViewFileInfoList instead. ------------------------------------------------------------------------- -r483 | zas_ | 2008-04-17 00:21:01 +0200 (Thu, 17 Apr 2008) | 2 lines +commit be9e09722d788060c1ccf58222ee9ca8c80871b6 +Author: Laurent Monin +Date: Sun May 4 11:47:36 2008 +0000 -Fix two errors made in revision 473. + Prepare switch to ViewFile (unused yet). ------------------------------------------------------------------------- -r482 | zas_ | 2008-04-16 23:58:05 +0200 (Wed, 16 Apr 2008) | 2 lines +commit 7192ff23dcf4fb721d72404649a98de99993f042 +Author: Laurent Monin +Date: Sun May 4 00:32:05 2008 +0000 -Merge few more vdlist/vdtree functions. + Shorten Edit menu labels, dropping "in ". It will ease + translations too, and user can define its own label in Preferences. ------------------------------------------------------------------------- -r481 | zas_ | 2008-04-16 22:36:10 +0200 (Wed, 16 Apr 2008) | 2 lines +commit f83f83eed158cf9671c8ccec4e52e4916802eb73 +Author: Laurent Monin +Date: Sun May 4 00:21:14 2008 +0000 -Make directory view popup menu common and move it to view_dir.{c,h}. + Do not show Copy, Move, Rename, Delete, New Folder external commands + in the Edit section of contextual menus. ------------------------------------------------------------------------- -r480 | nadvornik | 2008-04-16 22:32:44 +0200 (Wed, 16 Apr 2008) | 2 lines +commit 50a7b03151f939ddc0f61ae9560de5c17412c3c1 +Author: Laurent Monin +Date: Sun May 4 00:16:37 2008 +0000 -fixed compiler warnings + Use GQ_EDITOR_GENERIC_SLOTS instead of hardcoded value. ------------------------------------------------------------------------- -r479 | nadvornik | 2008-04-16 22:15:42 +0200 (Wed, 16 Apr 2008) | 2 lines +commit 66238168387b3ff974f886b5a039bbccd2d44099 +Author: Laurent Monin +Date: Sat May 3 20:55:16 2008 +0000 -in debug mode print time information on selected events + exif_get_description_by_key(): check for "formatted." prefix, and optimize. ------------------------------------------------------------------------- -r478 | zas_ | 2008-04-16 20:57:50 +0200 (Wed, 16 Apr 2008) | 2 lines +commit 03acb7cb8dc91e0f307f818a61f6a7671fe8d9cc +Author: Laurent Monin +Date: Sat May 3 20:49:25 2008 +0000 -Clean up and simplify. + exif_get_formatted_by_key(): skip prefix when comparing. ------------------------------------------------------------------------- -r477 | zas_ | 2008-04-16 18:54:38 +0200 (Wed, 16 Apr 2008) | 3 lines +commit 1000ac5af7b62b93b673d48353edbea43aff67e4 +Author: Laurent Monin +Date: Sat May 3 20:40:50 2008 +0000 -Merge parts of view_dir_list/tree constructors/destructors to -view_dir. + Change the prefix of formatted exif tags to a more explicit "formatted." prefix + instead of the shorter "f". + Warning: custom overlay info string has to be modified since old names are no + more recognized, one can reset it to default through Preferences > Advanced. ------------------------------------------------------------------------- -r476 | zas_ | 2008-04-16 18:05:12 +0200 (Wed, 16 Apr 2008) | 3 lines +commit e01df0556e0bbca765a2e07987148d3b6d10760a +Author: Laurent Monin +Date: Sat May 3 16:58:17 2008 +0000 -Move some dnd common code from view_dir_list.c and view_dir_tree.c -to view_dir.c. + Fix a bug occuring when using certain actions on a collection + item which is not in the selection. + Triggering it will either result in an assertion failure or a + segfault. + + To reproduce: + - open a collection + - right-click on a non-selected image + - select Delete... menu entry (or Copy, Move, Rename, Properties...) + + It results in the best case: + ** ERROR **: file filelist.c: line 905 (file_data_ref): assertion failed: (fd->magick == 0x12345678) + or a pure segfault due to corrupted data. + + collection_table_popup_file_list() has to return a list of filedata * + not a list of gchar *. ------------------------------------------------------------------------- -r475 | zas_ | 2008-04-16 16:56:31 +0200 (Wed, 16 Apr 2008) | 2 lines +commit 31ba226eb280ab241b855069dbc7cc10fc31f225 +Author: Laurent Monin +Date: Sat May 3 15:19:35 2008 +0000 -Rename vdt occurences to vd. + Move marks-related fields from _ViewFileInfoList to _ViewFile, since + they'll be used for file icon view too. ------------------------------------------------------------------------- -r474 | zas_ | 2008-04-16 16:51:39 +0200 (Wed, 16 Apr 2008) | 2 lines +commit 13e75141b49669425e206f358d06f6e1ca4a9627 +Author: Laurent Monin +Date: Sat May 3 15:17:24 2008 +0000 -Rename vdl occurences to vd. + Move common thumbs_* fields from _ViewFileInfoIcon and _ViewFileInfoList + to _ViewFile. ------------------------------------------------------------------------- -r473 | zas_ | 2008-04-16 16:45:22 +0200 (Wed, 16 Apr 2008) | 11 lines +commit 8ac7dc269a5411ee3504599b3c6a085f6aad312c +Author: Laurent Monin +Date: Sat May 3 15:13:15 2008 +0000 -Introduce a new struct ViewDir to handle directory views common -data. -Specific data is now in ViewDirInfoList and ViewDirInfoTree. -Type of directory view can be specified with enum DirViewType. -This is saved to rc file as layout.dir_view_type, which replace -layout.view_as_tree. -Code was modified to reflect these changes. -This is a first to move to merge common code of view_dir_list.c -and view_dir_tree.c and ease the introduction of new types -of directory view. + Rename thumbs_fd to thumbs_filedata in ViewFileIcon struct to match + the name used in ViewFileList. ------------------------------------------------------------------------- -r472 | zas_ | 2008-04-15 23:49:28 +0200 (Tue, 15 Apr 2008) | 2 lines +commit fd7d8c583de748c29c5304ee300e7af6a8d36ed8 +Author: Laurent Monin +Date: Sat May 3 15:09:21 2008 +0000 -Indicate --debug[=level] in usage display. + Remove useless thumbs_list from ViewFileIcon. ------------------------------------------------------------------------- -r471 | zas_ | 2008-04-15 23:47:03 +0200 (Tue, 15 Apr 2008) | 4 lines +commit e1c39fa29264aea839610dfedca5e086b5128395 +Author: Laurent Monin +Date: Sat May 3 12:50:52 2008 +0000 -Parse command line for --debug option as soon as possible and allow ---debug[=level] syntax. -Only display message indication debug level once. + Add function prototypes (yet unused). ------------------------------------------------------------------------- -r470 | zas_ | 2008-04-15 23:06:00 +0200 (Tue, 15 Apr 2008) | 2 lines +commit a4659c7ea41ec4d1eeb659b1b1dd3d6bcc9bb833 +Author: Laurent Monin +Date: Sat May 3 12:48:45 2008 +0000 -Cleanup read/write of image.zoom_mode option. + Drop redundant vflist_thumbs_set() introduced in revision 649, + modify and use existing vflist_thumb_set(). ------------------------------------------------------------------------- -r469 | zas_ | 2008-04-15 22:56:55 +0200 (Tue, 15 Apr 2008) | 2 lines +commit 26de6ed0184a1c43652a582938b2ceb688c4e6d4 +Author: Laurent Monin +Date: Sat May 3 12:21:22 2008 +0000 -Read show_icon_names only once. + Remove redundant prototype. ------------------------------------------------------------------------- -r468 | zas_ | 2008-04-15 22:55:21 +0200 (Tue, 15 Apr 2008) | 2 lines +commit c790abbf70208af477971ec3b3af3fa8e11dbe21 +Author: Laurent Monin +Date: Sat May 3 11:58:41 2008 +0000 -Rename l_conf to layout_order and make it more local. + Introduce ViewFileInfoList and ViewFileInfoIcon (not used yet). ------------------------------------------------------------------------- -r467 | zas_ | 2008-04-15 22:46:14 +0200 (Tue, 15 Apr 2008) | 5 lines +commit 26cd72f831ddba954a4e85eb9300427e5e3e0b2a +Author: Laurent Monin +Date: Sat May 3 11:34:13 2008 +0000 -Fix a bug that was here since a long time, buf has nothing -to do with options->layout.order, so compare it to l_conf instead. -It fixes refreshing of files and directories lists when changing -filtering options. + Replace Layout icon_view field by more generic file_view_type. + Replace option layout.view_as_icons by layout.file_view_type. ------------------------------------------------------------------------- -r466 | zas_ | 2008-04-15 22:36:11 +0200 (Tue, 15 Apr 2008) | 6 lines +commit f5b1784d9050d4fdd3d6badb8acfdf8112d53e68 +Author: Laurent Monin +Date: Sat May 3 10:31:37 2008 +0000 -Add a new option in Preferences > Filtering to allow the -user to choose to display '.' directory in folder lists or not. -This option is saved to rc file as file_filter.show_dot_directory. -A minor fix was made to disable display of .. in folder selection -dialogs when current path is /. + Set thumbs_enabled through new function vflist_thumbs_set() instead + of vflist_new(). ------------------------------------------------------------------------- -r465 | zas_ | 2008-04-15 22:00:27 +0200 (Tue, 15 Apr 2008) | 2 lines +commit 04a9e3e249e4f237ff01a40c6fd3e8ce241eb107 +Author: Laurent Monin +Date: Sat May 3 09:41:09 2008 +0000 -Add and use few new macros in rc file writing code. + Prepare merging of some parts of view_file_list and view_file_icon and + simplification of view_file* interface. ------------------------------------------------------------------------- -r464 | nadvornik | 2008-04-15 20:34:24 +0200 (Tue, 15 Apr 2008) | 2 lines +commit f520f8c5a7f3a470fe072b6f00499612d759964f +Author: Laurent Monin +Date: Sat May 3 08:35:08 2008 +0000 -this might fix the freezes on freebsd, solaris, etc. + Change default positions of dividers since width of the main menu + was increased. ------------------------------------------------------------------------- -r463 | nadvornik | 2008-04-15 18:57:30 +0200 (Tue, 15 Apr 2008) | 2 lines +commit d2e52306a94755c9fdaae1ffca917ceefc3595f6 +Author: Laurent Monin +Date: Fri May 2 23:11:31 2008 +0000 -save file_class to config file + Make exif_rational_to_double() and exif_get_rational_as_double() static. ------------------------------------------------------------------------- -r462 | zas_ | 2008-04-15 09:16:51 +0200 (Tue, 15 Apr 2008) | 2 lines +commit 4d369ddac3bd4da17eab8ea2397ddcf0d9be1f73 +Author: Laurent Monin +Date: Fri May 2 23:08:18 2008 +0000 -Exit fullscreen mode when Properties is displayed. + info_notebook_reordered_cb(): do not call info_tabs_sync(), it causes exif + info disappearing when moving the tab. ------------------------------------------------------------------------- -r461 | zas_ | 2008-04-15 08:56:25 +0200 (Tue, 15 Apr 2008) | 7 lines +commit 2fc5d88ca3589beeee18a669cac708b719d90963 +Author: Laurent Monin +Date: Fri May 2 22:59:04 2008 +0000 -New Go to directory view feature that permits to find and display the directory -corresponding to an image view. -For example, when you open an image in new window from collection, right clicking on -the newly displayed image will let you choose Go to directory view, which would open -a new window, with image and directory list. -If current directory is the one of the image, menu item is disabled. + Fix a Pango warning related to UTF8 when displaying internationalized + description in Advanced Exif Properties panel. ------------------------------------------------------------------------- -r460 | zas_ | 2008-04-15 01:47:13 +0200 (Tue, 15 Apr 2008) | 2 lines +commit 66d230fa707f98cbb75db6de0dd3cd66e235ab95 +Author: Laurent Monin +Date: Fri May 2 22:31:24 2008 +0000 -Move layout.order default init to setup_default_options(). + exif_get_description_by_key(): tidy up. ------------------------------------------------------------------------- -r459 | zas_ | 2008-04-15 01:39:46 +0200 (Tue, 15 Apr 2008) | 2 lines +commit 30eb0123db8ca4fdacc34e21589f718ed3c9e260 +Author: Laurent Monin +Date: Fri May 2 22:28:39 2008 +0000 -collection_load(): use booleans and always count failures (for debug). + Add a pointer to the build function in the formatted exif tags struct + and use a loop in exif_get_formatted_by_key(). ------------------------------------------------------------------------- -r458 | zas_ | 2008-04-15 01:29:54 +0200 (Tue, 15 Apr 2008) | 2 lines +commit c59ca563a159852e616063a9595c24f432cf9ef7 +Author: Laurent Monin +Date: Fri May 2 21:58:36 2008 +0000 -collection_load(): improve headers parsing. + Indentation fix. ------------------------------------------------------------------------- -r457 | zas_ | 2008-04-15 01:09:48 +0200 (Tue, 15 Apr 2008) | 2 lines +commit 74dc50f227b9f46e2c6746db4f0cfe7d7607888d +Author: Laurent Monin +Date: Fri May 2 21:34:26 2008 +0000 -collection_load(): fix typo (missing #) made in rev 453. + Explode exif_get_formatted_by_key() in smaller functions prefixed "exif_build_f". + An helper macro was added to call them. ------------------------------------------------------------------------- -r456 | zas_ | 2008-04-15 01:08:27 +0200 (Tue, 15 Apr 2008) | 2 lines +commit 4fff33dde0de9160cf9ea5df78c69905a00ba24c +Author: Laurent Monin +Date: Fri May 2 20:56:59 2008 +0000 -collection_load(): accept whitespaces at start of lines. + Remove unused checksum_simple() function. ------------------------------------------------------------------------- -r455 | zas_ | 2008-04-15 00:57:26 +0200 (Tue, 15 Apr 2008) | 2 lines +commit 7fd292e32d3445f1cf7c60d2268f8a3c0d10d49b +Author: Laurent Monin +Date: Fri May 2 20:40:47 2008 +0000 -collection_load(): increase verbosity in debug mode. + Simplify remove_extension_from_path(). ------------------------------------------------------------------------- -r454 | zas_ | 2008-04-15 00:50:50 +0200 (Tue, 15 Apr 2008) | 3 lines +commit 4f05f85b26d36c87e449a59d68c7105a7cdb138b +Author: Laurent Monin +Date: Fri May 2 20:27:47 2008 +0000 -collection_load(): replace official by limit_failures (and -invert the tests). + remove_level_from_path() was simplified. ------------------------------------------------------------------------- -r453 | zas_ | 2008-04-15 00:45:53 +0200 (Tue, 15 Apr 2008) | 3 lines +commit f4b58f7255ce0a67d0076b09f11f2e542f387b51 +Author: Laurent Monin +Date: Fri May 2 09:03:52 2008 +0000 -Increase collection_load() buffer size and do not activate -error limiting for GQview collections. + Move variable declaration and affectation near where it is used. ------------------------------------------------------------------------- -r452 | zas_ | 2008-04-15 00:28:29 +0200 (Tue, 15 Apr 2008) | 2 lines +commit 0142966824cfdbcefc79a188a4b3aae3d8253c6e +Author: Laurent Monin +Date: Fri May 2 08:41:32 2008 +0000 -Merge collection_load_only_geometry() into collection_load(). + Replace GQView by Geeqie. ------------------------------------------------------------------------- -r451 | zas_ | 2008-04-15 00:05:47 +0200 (Tue, 15 Apr 2008) | 2 lines +commit 3cce6caefa4385a18b79e83df02743f2c0652103 +Author: Laurent Monin +Date: Thu May 1 23:20:26 2008 +0000 -Use flags for collection_load*(). + Use sizeof() instead of hardcoded buffer sizes. ------------------------------------------------------------------------- -r450 | zas_ | 2008-04-13 22:33:45 +0200 (Sun, 13 Apr 2008) | 2 lines +commit 787538b30bd23fc85a3e8aae38c1ea6877aed636 +Author: Laurent Monin +Date: Thu May 1 22:59:54 2008 +0000 -Apply exif display config (Never/If set/Always) to pan view too. + cache_sim_write_similarity(): cleanup and simplification. ------------------------------------------------------------------------- -r449 | zas_ | 2008-04-13 21:21:13 +0200 (Sun, 13 Apr 2008) | 4 lines +commit 0d8286ddc775e675c1f3552f92047d3928637d32 +Author: Laurent Monin +Date: Thu May 1 22:31:14 2008 +0000 -Rename show_dot_files to show_hidden_files. -There is no need to expose the underlying method to hide -files. + Use secure_save stuff to write .sim files. ------------------------------------------------------------------------- -r448 | zas_ | 2008-04-13 20:56:24 +0200 (Sun, 13 Apr 2008) | 3 lines +commit 68cf3760029075a5e3877954eacef14ee5f67956 +Author: Laurent Monin +Date: Thu May 1 22:30:16 2008 +0000 -Let toggle the visibility of hidden files from directories list -or tree contextual menu. + save_options(): minor code simplification. ------------------------------------------------------------------------- -r447 | zas_ | 2008-04-13 14:24:42 +0200 (Sun, 13 Apr 2008) | 2 lines +commit a2ff3d30a0ccf398323de9245d13cb166256f333 +Author: Laurent Monin +Date: Thu May 1 22:27:44 2008 +0000 -Add a button to reset fullscreen info string to default value. + Add a wrapper to fwrite(). ------------------------------------------------------------------------- -r446 | zas_ | 2008-04-13 14:12:44 +0200 (Sun, 13 Apr 2008) | 2 lines +commit cae11cbe267cb6f95da10ea3c5d472d4e6069a34 +Author: Laurent Monin +Date: Thu May 1 21:42:22 2008 +0000 -Fix a typo, READ_CHAR() must use value_all. + Typo fix. ------------------------------------------------------------------------- -r445 | zas_ | 2008-04-13 11:10:38 +0200 (Sun, 13 Apr 2008) | 3 lines +commit 394f2839406f77bc462f371da7c81539804e3d5d +Author: Laurent Monin +Date: Thu May 1 18:37:50 2008 +0000 -Use convenient macros to read options, it will ensure options -names are matching (in the rc file and internally). + Indentation fixes. ------------------------------------------------------------------------- -r444 | zas_ | 2008-04-13 10:36:17 +0200 (Sun, 13 Apr 2008) | 5 lines +commit ac59f9924c35122eaa97af9ce56f966b97738035 +Author: Laurent Monin +Date: Thu May 1 18:26:30 2008 +0000 -Simplify read_*_option() stuff by passing pointer to option value. -Introduce read_uint_option() to read enum values and read_int_option_clamp() -to read clamped values. + Simplify and optimize extension_find_dot(). +commit e00eb93689768d84f6edd346ae2d4619d1fc2399 +Author: Vladimir Nadvornik +Date: Tue Apr 29 22:44:06 2008 +0000 ------------------------------------------------------------------------- -r443 | zas_ | 2008-04-13 01:59:31 +0200 (Sun, 13 Apr 2008) | 3 lines + fixed a memory leak -Partly rewrite option parser to accept whitespaces at start -of lines. +commit 53bb7d6c6c0eba150ceda32609281a2bccc43241 +Author: Vladimir Nadvornik +Date: Tue Apr 29 18:12:49 2008 +0000 ------------------------------------------------------------------------- -r442 | zas_ | 2008-04-13 01:41:35 +0200 (Sun, 13 Apr 2008) | 2 lines + cleanup: use image_get_image_size -exif_* -> exif.display.* +commit 76b0903edc9ab43fcf41d2a9134c4ef969b8ccb6 +Author: Vladimir Nadvornik +Date: Tue Apr 29 17:52:12 2008 +0000 ------------------------------------------------------------------------- -r441 | zas_ | 2008-04-13 01:32:08 +0200 (Sun, 13 Apr 2008) | 2 lines + fixed connected zoom and scroll that didn't work in some cases + http://sourceforge.net/tracker/index.php?func=detail&aid=1952429&group_id=222125&atid=1054680 -Add a note in the rc file about special editor slots. +commit 6e5e4f7670c45b55f2fca8b3916f1b9f9397a318 +Author: Petr Ostadal +Date: Sun Apr 27 23:31:20 2008 +0000 ------------------------------------------------------------------------- -r440 | zas_ | 2008-04-13 01:16:41 +0200 (Sun, 13 Apr 2008) | 2 lines + fix warning cast from pointer to integer of different size (when an integer is + passed instead of a pointer to a callback, GINT_TO_POINTER(i) should be used) -sidecar_ext -> sidecar.ext +commit 5ae4228a32c2758ec72a0a780a2480474033bb80 +Author: Vladimir Nadvornik +Date: Sun Apr 27 20:05:11 2008 +0000 ------------------------------------------------------------------------- -r439 | zas_ | 2008-04-13 01:07:04 +0200 (Sun, 13 Apr 2008) | 2 lines + Added LIRC patch written by Matteo Beniamino -Unify names of options between variables and rc file. +commit 24110e7cf37b69fd01db02f203c5f1a25b5d113d +Author: Laurent Monin +Date: Fri Apr 25 20:23:21 2008 +0000 ------------------------------------------------------------------------- -r438 | zas_ | 2008-04-13 01:02:00 +0200 (Sun, 13 Apr 2008) | 2 lines + Fix number of directory views, bug introduced in revision 617. -Use tree_descend_subdirs everywhere. +commit 1f3d7a4f31640be1c85f8cd4d8bd966665d7399c +Author: Vladimir Nadvornik +Date: Fri Apr 25 20:08:47 2008 +0000 ------------------------------------------------------------------------- -r437 | zas_ | 2008-04-13 00:22:11 +0200 (Sun, 13 Apr 2008) | 2 lines + fixed dragging multiple files from file list + http://sourceforge.net/tracker/index.php?func=detail&aid=1950740&group_id=222125&atid=1054680 -Use startup_path_enable everywhere. +commit 0fb3e0276867a5224e267571b04641290d9b1013 +Author: Laurent Monin +Date: Fri Apr 25 09:31:32 2008 +0000 ------------------------------------------------------------------------- -r436 | zas_ | 2008-04-13 00:17:14 +0200 (Sun, 13 Apr 2008) | 2 lines + Add a line about variable and function names. -Rename recent_list_max/open_recent_max to open_recent_list_maxsize. +commit 23b982817520f7e361b3252b18efb0c391f08e17 +Author: Laurent Monin +Date: Fri Apr 25 09:28:45 2008 +0000 ------------------------------------------------------------------------- -r435 | zas_ | 2008-04-13 00:10:38 +0200 (Sun, 13 Apr 2008) | 2 lines + Document the Geeqie coding style. + This is a draft, please improve. -Rename dupe_custom_threshold option to duplicates_similarity_threshold. +commit 74182a124ee9eca4d76d2e4da9b690dea61a651e +Author: Laurent Monin +Date: Fri Apr 25 08:07:22 2008 +0000 ------------------------------------------------------------------------- -r434 | zas_ | 2008-04-13 00:04:29 +0200 (Sun, 13 Apr 2008) | 4 lines + Handle the case of reduction of the number of view directory types. + Previously it was leading to a segfault. -Move safe_delete* and in place rename options to file_ops -struct. -Re-order rc file a bit. +commit 856f0b26d9bd498c8e093e75c5a7f7b5bdb8238f +Author: Laurent Monin +Date: Thu Apr 24 20:29:09 2008 +0000 ------------------------------------------------------------------------- -r433 | zas_ | 2008-04-12 23:45:30 +0200 (Sat, 12 Apr 2008) | 3 lines + Allow to copy the path of a directory to clipboard from directory views. + Show Copy path option has to be enabled. + Suggested by Frédéric Mantegazza. -Rename option thumbnails.enabled to layout.show_thumbnails as it makes -more sense. +commit 76747275b6e719dbb4efb93d414f82ab2f177d79 +Author: Laurent Monin +Date: Thu Apr 24 20:18:59 2008 +0000 ------------------------------------------------------------------------- -r432 | zas_ | 2008-04-12 23:38:55 +0200 (Sat, 12 Apr 2008) | 5 lines + Do not allow to add anything but directories to sort bar in + folder mode through drag'n'drop. + Introduce a new field only_directories to _BookMarkData struct. -Rename user_specified_window_background and window_background_color -to image.use_custom_border_color and image.border_color. -Rename pref_background_color_set_cb() to pref_color_button_set_cb(). -Rename pref_colorbutton_new() to pref_color_button_new(). +commit 9816ef505ad7693841db4e85a5f64d43669675df +Author: Laurent Monin +Date: Thu Apr 24 16:35:02 2008 +0000 ------------------------------------------------------------------------- -r431 | zas_ | 2008-04-12 21:33:59 +0200 (Sat, 12 Apr 2008) | 2 lines + Add missing spaces around equal sign. -Rename window options (moved to layout) and re-order rc file. +commit a792a5a9f9267bf8872daff3494a374909d9fca7 +Author: Laurent Monin +Date: Thu Apr 24 16:32:20 2008 +0000 ------------------------------------------------------------------------- -r430 | zas_ | 2008-04-12 19:20:34 +0200 (Sat, 12 Apr 2008) | 2 lines + Cleanup exif_get_formatted_by_key(). -Fix bad image option name in the rc file. +commit de5436b46e7f303f7c16620e67b18ccde63b386e +Author: Laurent Monin +Date: Thu Apr 24 15:57:58 2008 +0000 ------------------------------------------------------------------------- -r429 | zas_ | 2008-04-12 19:09:20 +0200 (Sat, 12 Apr 2008) | 2 lines + Add missing space. -Fix display bug when using "Limit image size when autofitting" option. +commit f6a8c6dfbe0c9db2e662734deb336b57de9bdb6f +Author: Laurent Monin +Date: Thu Apr 24 15:53:08 2008 +0000 ------------------------------------------------------------------------- -r428 | zas_ | 2008-04-12 17:13:00 +0200 (Sat, 12 Apr 2008) | 2 lines + 6 for() vs 201 for (): winner is for (). -Beautify rc file, adding sub-sections titles. +commit db804e24c3646853cd23436cff8ae6ae8926d726 +Author: Laurent Monin +Date: Thu Apr 24 15:49:57 2008 +0000 ------------------------------------------------------------------------- -r427 | zas_ | 2008-04-12 17:04:58 +0200 (Sat, 12 Apr 2008) | 2 lines + Convert the minority of while() to while (). -Rename image-related options. +commit 371332db2d9c7cc5f72c701fd92623c395489280 +Author: Laurent Monin +Date: Thu Apr 24 15:44:43 2008 +0000 ------------------------------------------------------------------------- -r426 | zas_ | 2008-04-12 11:41:44 +0200 (Sat, 12 Apr 2008) | 2 lines + Use only one secure_fprintf() call instead of two. -Rename thumbnails related options. +commit 1203b7f1892105a3ac8019cabb7b7d5a8e85cb34 +Author: Laurent Monin +Date: Thu Apr 24 15:31:21 2008 +0000 ------------------------------------------------------------------------- -r425 | zas_ | 2008-04-12 11:12:37 +0200 (Sat, 12 Apr 2008) | 2 lines + Use sizeof(). -Rename file filtering options. +commit 0b16c7147a350800d4f4afd2c191d62bbf590e7c +Author: Laurent Monin +Date: Thu Apr 24 12:47:09 2008 +0000 ------------------------------------------------------------------------- -r424 | zas_ | 2008-04-12 10:59:52 +0200 (Sat, 12 Apr 2008) | 2 lines + Remove whitespace between function name and first parenthesis for the sake of consistency. (pass 2) -Drop unused stuff. +commit 002da4045e3fb091adca1bd57745334f40514257 +Author: Laurent Monin +Date: Thu Apr 24 12:23:02 2008 +0000 ------------------------------------------------------------------------- -r423 | zas_ | 2008-04-12 10:40:02 +0200 (Sat, 12 Apr 2008) | 2 lines + Remove whitespace between function name and first parenthesis for the sake of consistency. -Rename collection options. +commit a603169a7d2e745aeb638509fbe839d1182257ec +Author: Laurent Monin +Date: Thu Apr 24 11:40:26 2008 +0000 ------------------------------------------------------------------------- -r422 | zas_ | 2008-04-12 10:35:58 +0200 (Sat, 12 Apr 2008) | 2 lines + Indentation fix. -Rename file sorting options. +commit 9ed4108d3855b95889c28bd7860f746da900a11d +Author: Laurent Monin +Date: Thu Apr 24 09:50:37 2008 +0000 ------------------------------------------------------------------------- -r421 | zas_ | 2008-04-12 10:28:08 +0200 (Sat, 12 Apr 2008) | 2 lines + Display file_data debug messages only at level 2. -Re-order and try to group options. +commit 7e6cbe554f63e4a16a1ab72333c9f66a7e196347 +Author: Laurent Monin +Date: Thu Apr 24 09:43:23 2008 +0000 ------------------------------------------------------------------------- -r420 | zas_ | 2008-04-12 10:05:44 +0200 (Sat, 12 Apr 2008) | 2 lines + Move get_exec_time() to debug.{c,h}. -Rename color profile options. +commit 161a3cf407b2af7ce02dcf15792dd9ca8c5c8c16 +Author: Laurent Monin +Date: Thu Apr 24 09:09:48 2008 +0000 ------------------------------------------------------------------------- -r419 | zas_ | 2008-04-12 09:46:01 +0200 (Sat, 12 Apr 2008) | 2 lines + Move options stuff to options.{c,h} and remove globals.c -Rename slideshow options. +commit af1beef9f10c4d5408d73ecbd606cbc0a87b68a3 +Author: Laurent Monin +Date: Thu Apr 24 08:53:39 2008 +0000 ------------------------------------------------------------------------- -r418 | zas_ | 2008-04-12 09:09:19 +0200 (Sat, 12 Apr 2008) | 3 lines + Move debug macros from main.h to new debug.h. + Make debug_level static to debug.c and add utility functions + to manipulate it. + Add #include "debug.h" where needed. -Only display defined exif tags by default. +commit b23c9dac6850b794e8002b031704bff3d83f0b20 +Author: Laurent Monin +Date: Thu Apr 24 00:15:03 2008 +0000 + Handle the newline in DEBUG_N() macro instead of adding one + in each debug message string. ------------------------------------------------------------------------- -r417 | zas_ | 2008-04-12 09:00:14 +0200 (Sat, 12 Apr 2008) | 2 lines +commit 30cfbdf85a61414f63e52f8e21a4fb0ede49acf3 +Author: Laurent Monin +Date: Wed Apr 23 23:52:20 2008 +0000 -Drop redundant code. + French translation was updated. ------------------------------------------------------------------------- -r416 | zas_ | 2008-04-12 08:42:47 +0200 (Sat, 12 Apr 2008) | 3 lines +commit 9a8f43f7c1f08425b82ab3f52e22ecd81e7c7834 +Author: Laurent Monin +Date: Wed Apr 23 23:51:02 2008 +0000 -Add Exif.Photo.ColorSpace tag in Preferences > Properties > Exif. -Requested by Fr?\195?\169d?\195?\169ric Mantegazza. + Make image_osd_histogram_onoff_toggle() and image_osd_histogram_onoff_status() static. ------------------------------------------------------------------------- -r415 | zas_ | 2008-04-12 01:32:22 +0200 (Sat, 12 Apr 2008) | 2 lines +commit addef370767780cc6253b4e0d4a592de481f01e4 +Author: Laurent Monin +Date: Wed Apr 23 23:47:53 2008 +0000 -Rationalize fullscreen options naming. + Fix image overlay displayed only on second "I" press in layout view. ------------------------------------------------------------------------- -r414 | zas_ | 2008-04-12 01:01:00 +0200 (Sat, 12 Apr 2008) | 2 lines +commit 7d68ee688db510528ad6338e6b9e7b909e02c9cf +Author: Laurent Monin +Date: Wed Apr 23 23:35:13 2008 +0000 -options_c -> c_options + Display file and line along debug messages for any debug level but level 1. + Add a DEBUG_0() macro for instant debugging. ------------------------------------------------------------------------- -r413 | zas_ | 2008-04-12 00:52:22 +0200 (Sat, 12 Apr 2008) | 2 lines +commit e153caa7d02808144fdae1a5348336e61083d972 +Author: Laurent Monin +Date: Wed Apr 23 22:40:55 2008 +0000 -Move more options to ConfOptions. + Fix Gtk-CRITICAL **: gtk_entry_set_text: assertion `GTK_IS_ENTRY (entry)' failed + occuring when toggling file list view <-> file icon view. ------------------------------------------------------------------------- -r412 | zas_ | 2008-04-12 00:27:54 +0200 (Sat, 12 Apr 2008) | 3 lines +commit a2a3d0fee28a20f0ede745ab50e3e482aa40dc88 +Author: Vladimir Nadvornik +Date: Wed Apr 23 22:38:34 2008 +0000 -Move file_sort_case_sensitive to ConfOptions. + clear the buffer before loading of an image +commit 1d9e03e85df8fde6dec5542ed0125e445fe3ee02 +Author: Laurent Monin +Date: Wed Apr 23 22:33:18 2008 +0000 ------------------------------------------------------------------------- -r411 | zas_ | 2008-04-12 00:14:36 +0200 (Sat, 12 Apr 2008) | 6 lines + Use menu_item_add_stock_sensitive() and menu_item_add_sensitive(). -Add a new struct ConfOptions to handle options. -Changes were made among the code to use only one global var -named "options" of type ConfOptions *. -Initialization takes place in new init_options(). +commit 5773dedeb1eacfe953bcfae30c251bd27f158b81 +Author: Laurent Monin +Date: Wed Apr 23 22:22:37 2008 +0000 + Update to contributors list. ------------------------------------------------------------------------- -r410 | zas_ | 2008-04-11 22:35:37 +0200 (Fri, 11 Apr 2008) | 4 lines +commit 3a71a78dc06c95ba23d1662e97621aef80d7ad92 +Author: Laurent Monin +Date: Wed Apr 23 22:17:21 2008 +0000 -Make thumbnail standard fail directory after current application -name and version. + Allow the copy of file paths to clipboard. + This feature is disabled by default, it can be set through + Preferences > Advanced > Behavior > Show "Copy path" ... + When enabled, it adds a menu entry "Copy path" that let the + user copies current selection's paths to X clipboard. + It is very convenient to paste paths to xterm for example. + Patch by Carles Pina i Estany and me. +commit b022eddfd7c892f7db4b262e9f027237255c8735 +Author: Vladimir Nadvornik +Date: Wed Apr 23 21:08:29 2008 +0000 ------------------------------------------------------------------------- -r409 | zas_ | 2008-04-11 22:01:29 +0200 (Fri, 11 Apr 2008) | 3 lines + fixed a bug in opening files with non-utf8 locales in exiv2.cc -Define drag and drop target string in dnd.h. -Make it use the current name of the application. +commit 51514f069a0c030ac9ff092a89979f48cc55e10b +Author: Laurent Monin +Date: Wed Apr 23 20:47:19 2008 +0000 ------------------------------------------------------------------------- -r408 | zas_ | 2008-04-11 21:43:36 +0200 (Fri, 11 Apr 2008) | 2 lines + Introduce macros to display debug messages. + if (debug) printf(...) is now replaced by variadic macros: + DEBUG_1() + And for higher debugging levels: + DEBUG_2() + DEBUG_3() + DEBUG_4() -Use secure save in history_list_save(). +commit b98126503e690efb410be9b153b582879f5b3831 +Author: Laurent Monin +Date: Wed Apr 23 13:46:18 2008 +0000 ------------------------------------------------------------------------- -r407 | zas_ | 2008-04-11 19:11:14 +0200 (Fri, 11 Apr 2008) | 3 lines + Honor Control and Shift keys while drag'n'droping files + to directories. + Before a menu (Copy/Move/Cancel) was always displayed, now + if the user hold Shift key or Control key, the menu + is not shown, but move or copy actions take place. + If no modifier key is used, the menu is displayed as usual. -Use secure save in comment_file_write(). +commit 8239272a1d8bd4af22478acb3f5776a5f2faf1a2 +Author: Laurent Monin +Date: Wed Apr 23 13:03:04 2008 +0000 + Only display message if in debug mode. ------------------------------------------------------------------------- -r406 | zas_ | 2008-04-11 18:46:21 +0200 (Fri, 11 Apr 2008) | 5 lines +commit 682629894b3882e3de68c123c531fb8d8b261424 +Author: Laurent Monin +Date: Wed Apr 23 09:56:21 2008 +0000 -Secure save now unlinks temporary file on error by default. -It will prevent left-behind temporary files, but also prevent -potential data recovery from partially written files (it -should not be a problem here). + Fix adding a selection to a collection with no window open + using the sort manager. Only one file was added, now all + files in the selection are added (but duplicates). + A pointer was not reset correctly. ------------------------------------------------------------------------- -r405 | zas_ | 2008-04-11 18:04:37 +0200 (Fri, 11 Apr 2008) | 2 lines +commit 9b106381f25bf9d76db2590c1a08586330da4a33 +Author: Laurent Monin +Date: Tue Apr 22 23:53:24 2008 +0000 -Use secure save feature when saving collections. + Save sort manager state to rc file. ------------------------------------------------------------------------- -r404 | zas_ | 2008-04-11 18:02:33 +0200 (Fri, 11 Apr 2008) | 2 lines +commit b1c55eb8df1c22305054d139fbfe65e2a73f377b +Author: Laurent Monin +Date: Tue Apr 22 22:45:51 2008 +0000 -Preserve permissions of the destination file when using secure save. + Remove unused function bar_info_size_request(). ------------------------------------------------------------------------- -r403 | zas_ | 2008-04-11 17:27:08 +0200 (Fri, 11 Apr 2008) | 4 lines +commit 38c13e591d7ff69980e0886af4fba060bee911d4 +Author: Laurent Monin +Date: Tue Apr 22 22:44:10 2008 +0000 -Revert part of the previous patch, let the caller take care -of calling path_from_utf8(). + Save state and width of exif, info and sort panels to rc file. + Width is restored only if save windows dimensions is set. +commit a634981a6a28b9f16aef7839b60b2f822ed0971d +Author: Vladimir Nadvornik +Date: Tue Apr 22 19:26:07 2008 +0000 ------------------------------------------------------------------------- -r402 | zas_ | 2008-04-11 16:27:55 +0200 (Fri, 11 Apr 2008) | 3 lines + updated ChangeLog from svn log -Use path_from_utf8() on the passed filename. -Add const attribute. +commit 1aeed5d363fa31ad42d7f8aaaf5d8abc47470a87 +Author: Vladimir Nadvornik +Date: Tue Apr 22 18:06:38 2008 +0000 ------------------------------------------------------------------------- -r401 | zas_ | 2008-04-11 15:07:48 +0200 (Fri, 11 Apr 2008) | 8 lines + fixed version string ;) -ui_icons.h and icons_inline.h depend on gdk-pixbuf-csource, -so add a test for it in configure. -Wrap generated headers files with #ifdef/#endif and add -a comment related to their auto-generated nature. -Make the generation itself quiet, but display a message -on error. -Make these targets depend on respective Makefile.in. +commit 3ace564b446504e8cc34456c46623e16e939fbfa +Author: Vladimir Nadvornik +Date: Tue Apr 22 17:45:08 2008 +0000 ------------------------------------------------------------------------- -r400 | zas_ | 2008-04-11 14:31:32 +0200 (Fri, 11 Apr 2008) | 2 lines + updated version number -Move secure save code to its own files: secure_save.{c,h}. +commit 17fd8dee35ce3751744578a472f1b14de63a4f30 +Author: Vladimir Nadvornik +Date: Tue Apr 22 17:40:29 2008 +0000 ------------------------------------------------------------------------- -r399 | zas_ | 2008-04-11 14:25:36 +0200 (Fri, 11 Apr 2008) | 2 lines + fixed reading of signed rational type with Exiv2 -Add missing #ifdef/#endif. +commit 0975a01fb79e3c92c058903a311cbc87e0d06370 +Author: Vladimir Nadvornik +Date: Tue Apr 22 09:57:26 2008 +0000 ------------------------------------------------------------------------- -r398 | zas_ | 2008-04-11 12:46:52 +0200 (Fri, 11 Apr 2008) | 2 lines + fixed instalation of doc files -Ensure that gcc flag -Wall is set. +commit d19be6a6cb20a06c7ee518de9fff486458f4ad10 +Author: Laurent Monin +Date: Tue Apr 22 09:40:05 2008 +0000 ------------------------------------------------------------------------- -r397 | zas_ | 2008-04-11 12:45:37 +0200 (Fri, 11 Apr 2008) | 2 lines + Correctly escape data before using pango_layout_set_markup(). + Exif data may contain characters like & or < >. -Silent some gcc warnings. +commit b38d66e98392adcdd1494ab7949254e9b4e99f95 +Author: Laurent Monin +Date: Tue Apr 22 09:01:29 2008 +0000 ------------------------------------------------------------------------- -r396 | zas_ | 2008-04-11 11:02:20 +0200 (Fri, 11 Apr 2008) | 3 lines + Use image_osd_toggle() in layout_menu_overlay_cb(). + Drop layout_image_overlay_update(). -Prevent multiple insertion of the same file in a collection. -Use a hash table to speed up existence tests. +commit 996cf10ace4e17c5a537497d7a1d04bf8e15ee36 +Author: Laurent Monin +Date: Tue Apr 22 08:53:07 2008 +0000 ------------------------------------------------------------------------- -r395 | zas_ | 2008-04-11 10:10:40 +0200 (Fri, 11 Apr 2008) | 2 lines + Merge view_overlay_toggle() and layout_image_overlay_toggle() into new image_osd_toggle(). -Only display these messages if debug mode is enabled. +commit 5a18e80ff0ad111a754d3bdc8360269cadbd1615 +Author: Laurent Monin +Date: Tue Apr 22 08:34:30 2008 +0000 ------------------------------------------------------------------------- -r394 | nadvornik | 2008-04-10 21:27:42 +0200 (Thu, 10 Apr 2008) | 2 lines + Make histogram depends on image window not layout window. + It simplifies the code, and make more sense. -fixed dates in pan-calendar +commit 360f7fcab05c29e3a84dab69169b4018f469fbee +Author: Laurent Monin +Date: Tue Apr 22 08:16:02 2008 +0000 ------------------------------------------------------------------------- -r393 | zas_ | 2008-04-10 14:07:34 +0200 (Thu, 10 Apr 2008) | 2 lines + Ensure Properties dialog is displayed above fullscreen window. + Add a parameter to info_window_new() to pass parent window and + revert patch 472. -Fix fCamera even more. +commit e67ca23513e0fd8f06fbef46a4ca1468a88c6ce2 +Author: Laurent Monin +Date: Mon Apr 21 22:19:32 2008 +0000 ------------------------------------------------------------------------- -r392 | zas_ | 2008-04-10 13:31:20 +0200 (Thu, 10 Apr 2008) | 2 lines + Indicate bugs and feature requests trackers, remove obsolete stuff. -Do not display ... if not truncated. +commit 3f5e512adb9df8f201ecf8d8bce049b63dfa4f4e +Author: Laurent Monin +Date: Mon Apr 21 22:15:56 2008 +0000 ------------------------------------------------------------------------- -r391 | zas_ | 2008-04-10 12:43:15 +0200 (Thu, 10 Apr 2008) | 5 lines + Lowercased name. -Add the possibility to truncate overlay infos displayed: -%fCamera:20% will truncate data displayed to 20 characters -and add 3 dots at the end. -For example, %name% -> some_file, %name:4% -> some... +commit c5b86fa162157a545e37a9ed018c52c919082580 +Author: Laurent Monin +Date: Mon Apr 21 22:14:57 2008 +0000 ------------------------------------------------------------------------- -r390 | zas_ | 2008-04-10 02:09:43 +0200 (Thu, 10 Apr 2008) | 2 lines + . -> dot -Fix broken remove_common_prefix(), fCamera didn't display model as it should. +commit 29042cb9cebffa90766495d7bf8814879474af89 +Author: Vladimir Nadvornik +Date: Mon Apr 21 21:46:38 2008 +0000 ------------------------------------------------------------------------- -r389 | zas_ | 2008-04-10 00:47:43 +0200 (Thu, 10 Apr 2008) | 2 lines + updated copyright in source files -Resync .po files. French translation was updated (100% made). +commit db4cefbd463659115e9d976d6f230129c93194bb +Author: Laurent Monin +Date: Mon Apr 21 20:45:35 2008 +0000 ------------------------------------------------------------------------- -r388 | zas_ | 2008-04-10 00:36:43 +0200 (Thu, 10 Apr 2008) | 2 lines + Properly initialize image_overlay options. -Add 3 missing files to POTFILES.in. +commit f717a49667e8ff0062bb65eda5a01cf40b076c21 +Author: Laurent Monin +Date: Mon Apr 21 20:42:18 2008 +0000 ------------------------------------------------------------------------- -r387 | zas_ | 2008-04-10 00:33:06 +0200 (Thu, 10 Apr 2008) | 2 lines + Few more fixes to french translation. -Simple helper script to display translation statistics. +commit 6be1d7a64de4a9a366b0d121b113250df5a42a28 +Author: Laurent Monin +Date: Mon Apr 21 20:39:36 2008 +0000 ------------------------------------------------------------------------- -r386 | zas_ | 2008-04-10 00:13:11 +0200 (Thu, 10 Apr 2008) | 3 lines + Add some macros to handle rc file compatibility issues related to + option name changes. -Fix a typo: "while fluorescent" -> "white fluorescent" +commit c3d35ef8b25f158d7be74ff154babded3ef26f29 +Author: Laurent Monin +Date: Mon Apr 21 20:27:39 2008 +0000 + Minor french translation fix. ------------------------------------------------------------------------- -r385 | zas_ | 2008-04-10 00:01:52 +0200 (Thu, 10 Apr 2008) | 2 lines +commit f47a3abcefad2232201d57ecb20385673dd05d1f +Author: Laurent Monin +Date: Mon Apr 21 20:24:15 2008 +0000 -Resync .po files. Update french translation. + French translation was updated. ------------------------------------------------------------------------- -r384 | nadvornik | 2008-04-09 23:14:50 +0200 (Wed, 09 Apr 2008) | 2 lines +commit 5a38c6d5dc83b4c142ea82ee702ab72e33f69403 +Author: Laurent Monin +Date: Mon Apr 21 20:12:49 2008 +0000 -fixed crash in pan_calendar + Rename few functions and replace fullscreen info with image overlay template string. + fullscreen_info_default_cb() -> image_overlay_default_template_cb() + fullscreen_info_default_ok_cb() -> image_overlay_default_template_ok_cb() + set_default_fullscreen_info() -> set_default_image_overlay_template_string() (moved to image-overlay.h) ------------------------------------------------------------------------- -r383 | nadvornik | 2008-04-09 22:49:32 +0200 (Wed, 09 Apr 2008) | 2 lines +commit 7eb4f7249138c689fd41c2890b0a8ad3b24566d9 +Author: Laurent Monin +Date: Mon Apr 21 20:01:22 2008 +0000 -improved histogram drawing + Replace fullscreen.info and fullscreen.show_info options by: + image_overlay.common.enabled => to save last state to rc file + image_overlay.common.show_at_startup => overrides .common.enabled at startup + image_overlay.common.template_string => replace fullscreen.info + + common is used since for now there is only one image overlay setup, + later specific setups may be added. ------------------------------------------------------------------------- -r382 | zas_ | 2008-04-09 18:37:54 +0200 (Wed, 09 Apr 2008) | 5 lines +commit 1b40318865ffee3150d652c83bb4eca400f78431 +Author: Vladimir Nadvornik +Date: Mon Apr 21 19:42:58 2008 +0000 -Simplify and unify gtk_window creation with the help of -the new window_new() function, that wraps gtk_window_new() -call. -Subclass, title and icon are set in the same call. + fixed another "gqview" occurence ------------------------------------------------------------------------- -r381 | zas_ | 2008-04-09 15:53:01 +0200 (Wed, 09 Apr 2008) | 2 lines +commit 83e3573f5fb4bec00d4377ddc27e1904f4f68da1 +Author: Vladimir Nadvornik +Date: Mon Apr 21 19:10:41 2008 +0000 -Replace occurences of Geeqie / geeqie by constants defined in main.h. + updated NEWS, README and other documentation files ------------------------------------------------------------------------- -r380 | zas_ | 2008-04-09 01:41:01 +0200 (Wed, 09 Apr 2008) | 2 lines +commit 00157fa203d628c0903da8332a40d0e1e0a0e6f8 +Author: Vladimir Nadvornik +Date: Mon Apr 21 18:09:30 2008 +0000 -int -> gint + renamed no.po to nb.po ------------------------------------------------------------------------- -r379 | zas_ | 2008-04-09 01:39:27 +0200 (Wed, 09 Apr 2008) | 2 lines +commit e13355d5fc8beff343cda7db7187822b688dd61f +Author: Laurent Monin +Date: Mon Apr 21 15:30:16 2008 +0000 -Make xmp debug info only appears when debug >= 2. + Fix a segfault occuring when pressing 'i' for overlay info + in a separate image window (no layout). ------------------------------------------------------------------------- -r378 | zas_ | 2008-04-09 01:33:49 +0200 (Wed, 09 Apr 2008) | 3 lines +commit 4d1beccf7d7de512882e5f59757c52c326d1a1b6 +Author: Laurent Monin +Date: Mon Apr 21 14:19:48 2008 +0000 -Enable image rotation depending on EXIF by default. -New users shouldn't have to search for it. + histogram_draw(): tidy up. ------------------------------------------------------------------------- -r377 | zas_ | 2008-04-09 01:25:46 +0200 (Wed, 09 Apr 2008) | 2 lines +commit 667d057287d39224fd008329ec6a5e0d28dcc818 +Author: Laurent Monin +Date: Mon Apr 21 13:39:17 2008 +0000 -Fix missing header files inclusions. + histogram_read(): speed up calculations by 20%. ------------------------------------------------------------------------- -r376 | zas_ | 2008-04-09 01:16:12 +0200 (Wed, 09 Apr 2008) | 2 lines +commit c397f66ddcc3c7651cda421f11a5cae13afa92ba +Author: Laurent Monin +Date: Mon Apr 21 11:44:03 2008 +0000 -GQVIEW_* -> GQ_* + histogram_read(): use memset() to initialize histogram data instead of for() loop. ------------------------------------------------------------------------- -r375 | zas_ | 2008-04-09 01:07:09 +0200 (Wed, 09 Apr 2008) | 2 lines +commit a7ae368828f16b5cd0d2ea3375242f6cb90eee86 +Author: Laurent Monin +Date: Mon Apr 21 10:11:55 2008 +0000 -GQVIEW_H -> MAIN_H + French translation was updated. ------------------------------------------------------------------------- -r374 | zas_ | 2008-04-09 01:02:33 +0200 (Wed, 09 Apr 2008) | 2 lines +commit 56adb85f9ede97ad87f1c8adbe2b95814128ee7c +Author: Laurent Monin +Date: Mon Apr 21 10:10:23 2008 +0000 -gqview.h -> main.h + Add compat.c to POTFILES ------------------------------------------------------------------------- -r373 | zas_ | 2008-04-09 00:31:42 +0200 (Wed, 09 Apr 2008) | 2 lines +commit d3339b5ef4ccfc029f07766426faf12b30ff5824 +Author: Laurent Monin +Date: Mon Apr 21 10:09:01 2008 +0000 -Remove obsolete prototype. + Allow the user to set the drag'n drop icon size through + Preferences > Advanced > Behavior > Drag'n drop icon size. + It is saved to rc file as dnd_icon_size. ------------------------------------------------------------------------- -r372 | zas_ | 2008-04-09 00:28:55 +0200 (Wed, 09 Apr 2008) | 9 lines +commit c10bf95960a1aa871faf0d9930098bdd9a9b1b1c +Author: Laurent Monin +Date: Sun Apr 20 23:17:35 2008 +0000 + Add a replacement for gtk_radio_action_set_current_value() which + require GTK+ >= 2.10. + Two new files were added, compat.h and compat.c. -gqview_remote -> remote_connection -gqview_command_collection -> command_collection -gqview_remote_control() -> remote_control() -gqview_remote_help() -> remote_help() -gqview_remote_command_find() -> remote_command_find() -gqview_remote_build_list() -> remote_build_list() -gqview_remote_cb() -> remote_cb() +commit bac25c157f02acaf5d06970e49a87cf31809bb44 +Author: Laurent Monin +Date: Sun Apr 20 22:51:53 2008 +0000 ------------------------------------------------------------------------- -r371 | zas_ | 2008-04-09 00:16:56 +0200 (Wed, 09 Apr 2008) | 4 lines + French translation was updated. +commit 1563535bd6d10e9615ab1c67c12531ceaa15ae79 +Author: Laurent Monin +Date: Sun Apr 20 22:45:00 2008 +0000 -exit_gqview() renamed to exit_program(). -exit_gqview_final() renamed to exit_program_final(). + Add number mnemonics to image view editors submenu. ------------------------------------------------------------------------- -r370 | zas_ | 2008-04-09 00:05:04 +0200 (Wed, 09 Apr 2008) | 8 lines +commit ea59e24d4f4084f19376efb2a1ff8687e549ed6b +Author: Laurent Monin +Date: Sun Apr 20 22:29:23 2008 +0000 -Add support for some Samsung raw files (.pef). + Prefix editor entries in the main menu with numbers. + It allows Alt+E+number as shortcut to start an editor. -Samsung raw not strongly differ from Pentax raw. -The only difference in header (manufacturer, camera name and etc). -Tested on Samsung GX-1S and Pentax *ist DS. -Patch by Max Lushnikov. +commit 2fa99cc17f3ce25101d9dcd1f9a8a9313e39532f +Author: Laurent Monin +Date: Sun Apr 20 22:14:54 2008 +0000 + Add missing shortcuts. ------------------------------------------------------------------------- -r369 | zas_ | 2008-04-08 23:55:58 +0200 (Tue, 08 Apr 2008) | 7 lines +commit 8b4cfba15cf968c6ad9cb9804838924d3988b19f +Author: Vladimir Nadvornik +Date: Sun Apr 20 22:14:38 2008 +0000 -Implement secure rc file saving. -First data is written to a temporary file, then if nothing -was wrong, this file is renamed to the final name. -This way the risk of corrupted rc file is greatly reduced. -The code is borrowed from ELinks (http://elinks.cz). + fixed color profile code for older versions of exiv2 + compilation fixes +commit 118f92d8da6b070dba40ad7e56311e40cc923107 +Author: Laurent Monin +Date: Sun Apr 20 22:01:26 2008 +0000 ------------------------------------------------------------------------- -r368 | nadvornik | 2008-04-08 23:52:04 +0200 (Tue, 08 Apr 2008) | 2 lines + Mark slideshow toggle state in the menu. + There is still an issue due to layout vs view slideshows... -fixed histogram label +commit 59c6c8f009efbe091aabc08e26671790ef8fbba9 +Author: Laurent Monin +Date: Sun Apr 20 21:38:45 2008 +0000 ------------------------------------------------------------------------- -r367 | zas_ | 2008-04-08 23:33:29 +0200 (Tue, 08 Apr 2008) | 11 lines + Fix a typo introduced by revision 521. -Fix the "continuous display" of tooltips in the collection view -(before the tooltip delay occured once, then changing icon to icon never hide the -tooltip again, now the tip is displayed shortly after the cursor moved on the icon, -but disappears when moving cursor to another icon). +commit 282581c95553818382b548f0900e04ae661a8db7 +Author: Vladimir Nadvornik +Date: Sun Apr 20 21:35:03 2008 +0000 -Display the full path to the file when Show filename text is on (before nothing -was displayed). + read color profiles from jpeg also with Exiv2 -When Show filename text is off, behavior is unchanged, the (short) filename is -displayed. +commit 7d1f6b971340bdf761b26db2b075c205745ba91f +Author: Laurent Monin +Date: Sun Apr 20 21:30:36 2008 +0000 ------------------------------------------------------------------------- -r366 | nadvornik | 2008-04-08 22:56:50 +0200 (Tue, 08 Apr 2008) | 3 lines + Use explicit names for mouse buttons instead of numbers. + MOUSE_BUTTON_LEFT = 1 + MOUSE_BUTTON_MIDDLE = 2 + MOUSE_BUTTON_RIGHT = 3 + It makes the code easier to read. -reworked the histogram patch by Uwe Ohse, most of the code is in -separate files +commit cd9fb13e5fcc4e47598bb671e05c6b88e2698aed +Author: Laurent Monin +Date: Sun Apr 20 20:35:26 2008 +0000 ------------------------------------------------------------------------- -r365 | nadvornik | 2008-04-08 19:26:13 +0200 (Tue, 08 Apr 2008) | 2 lines + Fix a typo: unoffical -> unofficial -fixed file delete notification in view_file_icon +commit b880b00f068794630e7a358b5cec718e7e594019 +Author: Laurent Monin +Date: Sun Apr 20 18:07:51 2008 +0000 ------------------------------------------------------------------------- -r364 | zas_ | 2008-04-08 18:22:21 +0200 (Tue, 08 Apr 2008) | 2 lines + Effectively drop empty newlines at end of files (missing from rev 535) -gtk_notebook_set_tab_reorderable() is only available sinc gtk+ 2.10. +commit a1c71d3b2ba033f5baa6e19d1ed39a8d6f192279 +Author: Laurent Monin +Date: Sun Apr 20 16:50:19 2008 +0000 ------------------------------------------------------------------------- -r363 | zas_ | 2008-04-08 17:53:03 +0200 (Tue, 08 Apr 2008) | 2 lines + comment_file_read(): rewrite the parser, drop leading and trailing newlines + in comment. -Move active variable affectation after the test. +commit d4392d114707bdc5888aeee2d614377a0609a9c0 +Author: Laurent Monin +Date: Sun Apr 20 13:42:22 2008 +0000 ------------------------------------------------------------------------- -r362 | zas_ | 2008-04-08 16:52:42 +0200 (Tue, 08 Apr 2008) | 2 lines + Minor cleanup and code redundancy reduction. -Simplify layout_color_name_parse() using g_strdelimit(). +commit 9ad0a718914f45230e0f19475875e09a9afd3ceb +Author: Laurent Monin +Date: Sun Apr 20 13:30:36 2008 +0000 ------------------------------------------------------------------------- -r361 | zas_ | 2008-04-08 16:50:14 +0200 (Tue, 08 Apr 2008) | 2 lines + editor_command_one(): tidy up. -Tidy up, whitespaces and indentation fix. +commit 7adf4f744a2e3b8ba952263f51155b634660b38d +Author: Laurent Monin +Date: Sun Apr 20 13:04:57 2008 +0000 ------------------------------------------------------------------------- -r360 | zas_ | 2008-04-08 13:53:35 +0200 (Tue, 08 Apr 2008) | 7 lines + Big whitespaces cleanup: + - drop whitespaces at end of lines + - convert eight spaces to tab at start of lines + - drop spurious spaces mixed with tabs + - remove empty lines at end of files -Remove dependency on GTK 2.12, reported by John Vodden and Vladimir -Nadvornik. -gtk_set_tooltip_markup() calls were disabled for GTK+ versions < 2.12. -gdk_color_to_string() was replaced by a equivalent function. +commit c97955e4ac06a81f2a352a24ea21ebfeaeb7bb71 +Author: Laurent Monin +Date: Sun Apr 20 10:05:27 2008 +0000 + Allow the user to change open_recent_list_maxsize option through + Preferences > Advanced > Navigation. +commit 71f3f6c7065587a9c1d15fe1a33af8ed5f6d3e12 +Author: Vladimir Nadvornik +Date: Sun Apr 20 09:53:37 2008 +0000 ------------------------------------------------------------------------- -r359 | zas_ | 2008-04-07 21:47:22 +0200 (Mon, 07 Apr 2008) | 9 lines + rm as external delete command is too dangerous, even for testing -Add the possibility to print file names with path. -A checkbox was added to the Text tab in the Print dialog. +commit 95eb1d8bc4485bc510073487e2f83f4f60905258 +Author: Laurent Monin +Date: Sun Apr 20 09:47:51 2008 +0000 -Name checked and Path unchecked -> filename.jpg -Name checked and Path checked -> /some/dir/filename.jpg -Name unchecked and Path checked -> /some/dir/ + Add a way to restore original state in Adjust menu. -Patch by Michael Mokeev and Laurent Monin. +commit 8b67bd63f4e6e07b45fc738face1abf359dfc937 +Author: Vladimir Nadvornik +Date: Sun Apr 20 09:29:46 2008 +0000 ------------------------------------------------------------------------- -r358 | zas_ | 2008-04-07 21:06:17 +0200 (Mon, 07 Apr 2008) | 2 lines + added fColorProfile pseudo-tag with detailed information -Fix a segfault on fullscreen file deletion reported by Fr?\195?\169d?\195?\169ric Mantegazza. +commit c648cdf41aa74fb22dfda4d427f88b2bfe46a0f0 +Author: Laurent Monin +Date: Sun Apr 20 09:02:05 2008 +0000 ------------------------------------------------------------------------- -r357 | zas_ | 2008-04-07 20:52:54 +0200 (Mon, 07 Apr 2008) | 3 lines + Fix the case "orientation from FileData, color profile from exif". + Reported by Vladimir Nadvornik. -Add the possibility to match duplicates on the name but ignoring the case. -A new item was added to types of match combo box in the Find duplicates dialog. +commit 448b0fb89c7de9573e5ec7ff440fa301ac7ffb3e +Author: Laurent Monin +Date: Sat Apr 19 23:12:30 2008 +0000 ------------------------------------------------------------------------- -r356 | zas_ | 2008-04-07 10:09:39 +0200 (Mon, 07 Apr 2008) | 3 lines + Rename inappropriate folder_size to folder. -Display marks in overlay info only if at least one is set. -Fix a missing g_string_free(). +commit 49f7e41a9d6f9bfb35c76870e296bc2fdc8aa395 +Author: Laurent Monin +Date: Sat Apr 19 22:32:07 2008 +0000 ------------------------------------------------------------------------- -r355 | zas_ | 2008-04-06 12:17:41 +0200 (Sun, 06 Apr 2008) | 3 lines + Use sizeof() for buffer size where appropriate. -Mark all exif labels as translatable. -Before only some of them were enclosed by N_(). +commit 3e04d15e24bcfb5ef26ed869c301e06a170f780d +Author: Laurent Monin +Date: Sat Apr 19 21:50:05 2008 +0000 ------------------------------------------------------------------------- -r354 | zas_ | 2008-04-06 12:03:54 +0200 (Sun, 06 Apr 2008) | 2 lines + Keep image orientation set by the user during the session. -Mark strings as translatable. +commit a99ca586e977ec78bc4255917a9cf9b2b216d9b7 +Author: Laurent Monin +Date: Sat Apr 19 21:30:19 2008 +0000 ------------------------------------------------------------------------- -r353 | zas_ | 2008-04-05 17:23:39 +0200 (Sat, 05 Apr 2008) | 4 lines + Save Show Marks state to rc file and display current state in menu. + It is saved as boolean option layout.show_marks. -Improve remove_trailing_slash() so it allocates no more than -needed bytes and remove all trailing slashes instead only one. +commit 1879b71339a3fef471ddf453198cda29293498b8 +Author: Vladimir Nadvornik +Date: Sat Apr 19 21:20:08 2008 +0000 + fixed max. number of profiles ------------------------------------------------------------------------- -r352 | zas_ | 2008-04-05 13:59:29 +0200 (Sat, 05 Apr 2008) | 4 lines +commit 9fbfd4fb566a6f1e7cdb2f8789573197a2c60231 +Author: Laurent Monin +Date: Sat Apr 19 21:18:24 2008 +0000 + Sort options. -Comment out unused code. -Geeqie code now compiles cleanly with -Wall gcc option. +commit b2b6e8ce2fddde58139ddebc40ef655d828b216e +Author: Vladimir Nadvornik +Date: Sat Apr 19 21:10:18 2008 +0000 ------------------------------------------------------------------------- -r351 | zas_ | 2008-04-05 00:34:55 +0200 (Sat, 05 Apr 2008) | 3 lines + fixed color profile index -Change default exif order a bit to move up common and useful -info. +commit 218f722e6adc43c59d01a2d28706909d128fa0a5 +Author: Laurent Monin +Date: Sat Apr 19 20:53:12 2008 +0000 ------------------------------------------------------------------------- -r350 | zas_ | 2008-04-05 00:23:36 +0200 (Sat, 05 Apr 2008) | 3 lines + Let toggle marks with numeric keypad. +commit cc35c193b2e718a4c336f4eb5c92e8133ac63587 +Author: Vladimir Nadvornik +Date: Sat Apr 19 20:19:27 2008 +0000 -Re-add "What to show in properties dialog:" label before the table. + I have finally found how to add alternative hotkeys + removed more hard-coded keys + "Split Quad" is without hotkey for now ------------------------------------------------------------------------- -r349 | zas_ | 2008-04-05 00:12:28 +0200 (Sat, 05 Apr 2008) | 3 lines +commit 28b3a3ee99d6ea34fd3c711cbe1fdc1ea32d66d8 +Author: Laurent Monin +Date: Sat Apr 19 19:28:10 2008 +0000 -Rename exif preferences tab to "Properties", and name the -subsection "Exif". + Accept keywords composed by two words ("Todo" = "A faire" in french). + Prevent duplicate keywords in the list. ------------------------------------------------------------------------- -r348 | zas_ | 2008-04-04 20:50:52 +0200 (Fri, 04 Apr 2008) | 3 lines +commit 3cb190ac4fff1239d5dd27a2d20e9e85c3fbcf8d +Author: Vladimir Nadvornik +Date: Sat Apr 19 17:55:41 2008 +0000 -Fix a segfault occuring when enabling debug mode. -At this point il->fd can be null. + show the AdobeRGB profile in the menu, indicate input profile from image ------------------------------------------------------------------------- -r347 | zas_ | 2008-04-04 01:29:14 +0200 (Fri, 04 Apr 2008) | 6 lines +commit f3f92c31a15a0dc60c5b0cd69840c25addcff285 +Author: Laurent Monin +Date: Sat Apr 19 17:14:03 2008 +0000 -Make the wmclass value unique among the code by defining -it in main header file as GQ_WMCLASS. -Before this patch, it was set using PACKAGE (="geeqie"), -or by the hardcoded string "Geeqie". -Now all Geeqie windows have the same value for wmclass. + file_dat_unref: display number of references as well of path (debug only). ------------------------------------------------------------------------- -r346 | zas_ | 2008-04-04 00:39:50 +0200 (Fri, 04 Apr 2008) | 2 lines +commit 1a73876d6a93b15ef5f5ec6bbbfbdf34320c80bf +Author: Vladimir Nadvornik +Date: Sat Apr 19 16:26:29 2008 +0000 -Initialize variables, clearing a gcc warning. + first support for AdobeRGB colorspace ------------------------------------------------------------------------- -r345 | zas_ | 2008-04-04 00:33:28 +0200 (Fri, 04 Apr 2008) | 2 lines +commit fa1a2b4b8ce6f2d80b7abffcffbc41101bf069a7 +Author: Laurent Monin +Date: Sat Apr 19 16:10:08 2008 +0000 -Add missing prototype to header file. + French translation fixes. ------------------------------------------------------------------------- -r344 | zas_ | 2008-04-04 00:29:20 +0200 (Fri, 04 Apr 2008) | 2 lines +commit 9654df9924eb462012f0b45cf69164107912779d +Author: Laurent Monin +Date: Sat Apr 19 13:40:20 2008 +0000 -Add few missing prototypes to header file. + French translation fixes and updates. ------------------------------------------------------------------------- -r343 | zas_ | 2008-04-04 00:20:42 +0200 (Fri, 04 Apr 2008) | 2 lines +commit 7d2b5d37b2f6261648d57961a895c90b504c7f81 +Author: Laurent Monin +Date: Sat Apr 19 13:39:21 2008 +0000 -Drop a bunch of unused variables. + Add missing _(). ------------------------------------------------------------------------- -r342 | zas_ | 2008-04-04 00:14:37 +0200 (Fri, 04 Apr 2008) | 2 lines +commit 7f2c5644543924da2eba00708070b3b612718f29 +Author: Laurent Monin +Date: Sat Apr 19 12:46:59 2008 +0000 -Add missing #include. + Add the possibility to update only one translation file using, + for example: make update-po PO=fr + autogen.sh applies a patch made against glib-gettextize generated Makefile.in.in ------------------------------------------------------------------------- -r341 | zas_ | 2008-04-04 00:13:12 +0200 (Fri, 04 Apr 2008) | 2 lines +commit c96a154ee7cfeddc35acfb23999639f8d2004d3d +Author: Laurent Monin +Date: Sat Apr 19 11:11:53 2008 +0000 -Remove unused variables. + Cleanup last patch: + - drop vd_pop_menu_dir_view_as_cb() since it is now unused. + - use G_N_ELEMENTS() ------------------------------------------------------------------------- -r340 | zas_ | 2008-04-04 00:09:36 +0200 (Fri, 04 Apr 2008) | 2 lines +commit a139b891f3932562bae2980e03ad4986f89847ab +Author: Vladimir Nadvornik +Date: Sat Apr 19 09:49:14 2008 +0000 -Add missing prototype. + improved spec file ------------------------------------------------------------------------- -r339 | zas_ | 2008-04-04 00:06:31 +0200 (Fri, 04 Apr 2008) | 2 lines +commit d338acaf8596de02899bd7d5965855b354d3ceec +Author: Laurent Monin +Date: Sat Apr 19 09:36:30 2008 +0000 -Drop 3 unused variables and comment out 2 unused functions. + Fix directory view popup menu to display a View As submenu + to switch between different directory views. ------------------------------------------------------------------------- -r338 | zas_ | 2008-04-04 00:03:14 +0200 (Fri, 04 Apr 2008) | 2 lines +commit faead0406f174630dbb35832acd36d89aabdc293 +Author: Laurent Monin +Date: Fri Apr 18 23:35:16 2008 +0000 -Add parenthesis around affection to clear a gcc warning. + gimp-remote has no -n option. ------------------------------------------------------------------------- -r337 | zas_ | 2008-04-04 00:01:08 +0200 (Fri, 04 Apr 2008) | 2 lines +commit 2167314197590c1a13c1f2d13e3b5cb018d17de1 +Author: Laurent Monin +Date: Fri Apr 18 23:09:03 2008 +0000 -Fix a signedness warning. + Add zoom ratio display to OSD in fullscreen mode. + It appears as [%zoom%] in fullscreen info string. + It is now displayed by default. ------------------------------------------------------------------------- -r336 | zas_ | 2008-04-03 23:54:23 +0200 (Thu, 03 Apr 2008) | 3 lines +commit f595a30b44e656fa390abb9aba67d0c6768f3369 +Author: Vladimir Nadvornik +Date: Fri Apr 18 22:31:58 2008 +0000 -Main configuration file was renamed from gqviewrc to geeqierc. + partially fixed reading embedded color profiles with exiv2 +commit aa3a6e89bf61d28862db69c00596385c2a72733d +Author: Laurent Monin +Date: Fri Apr 18 22:15:01 2008 +0000 ------------------------------------------------------------------------- -r335 | zas_ | 2008-04-03 23:50:53 +0200 (Thu, 03 Apr 2008) | 3 lines + Add two new options to control image read buffer at runtime. + They are available in Preferences > Advanced > Image loading and caching. + Default read buffer size was set to 4096 instead of 512. + These options are saved to rc file. -Fix a segfault occuring when using --without-exiv2 and -concerning exif stuff. +commit 37af10a74df5d4f3031849ab0a678a9fc2e3d47f +Author: Laurent Monin +Date: Fri Apr 18 21:53:33 2008 +0000 ------------------------------------------------------------------------- -r334 | zas_ | 2008-04-03 23:49:17 +0200 (Thu, 03 Apr 2008) | 2 lines + Display elapsed time since previous get_exec_time() call (debug only). -Fix missing bit of previous patch. +commit a010c8ea1081d31b948c09e3ab1e87a433c5ee10 +Author: Laurent Monin +Date: Fri Apr 18 21:51:08 2008 +0000 ------------------------------------------------------------------------- -r333 | zas_ | 2008-04-03 23:04:19 +0200 (Thu, 03 Apr 2008) | 2 lines + Remove forgotten debug printf(). -Fix two more gcc warnings related to function declarations. +commit 763f8437ee2541f39a309154d249b088323eacad +Author: Laurent Monin +Date: Fri Apr 18 21:42:00 2008 +0000 ------------------------------------------------------------------------- -r332 | zas_ | 2008-04-03 22:53:13 +0200 (Thu, 03 Apr 2008) | 3 lines + Fix OSD display when fullscreen info string is empty. -Remove two unused variables declarations, and add a missing #include. +commit 7df25c1ba74b9a175fdf33d90bce28db6cd908b2 +Author: Vladimir Nadvornik +Date: Fri Apr 18 21:30:12 2008 +0000 + replace inner loops with memcpy ------------------------------------------------------------------------- -r331 | zas_ | 2008-04-03 22:46:55 +0200 (Thu, 03 Apr 2008) | 2 lines +commit a31575c389e7d8c007dbcac3e47f94e56f9188bf +Author: Laurent Monin +Date: Fri Apr 18 20:41:09 2008 +0000 -Drop unused variable. + Explode pr_tile_mirror() in three optimized functions: + pr_tile_mirror_only() + pr_tile_mirror_and_flip() + pr_tile_flip_only() ------------------------------------------------------------------------- -r330 | zas_ | 2008-04-03 22:45:55 +0200 (Thu, 03 Apr 2008) | 2 lines +commit 41f45372c2b917e1595d8e9d83871326d07ea97b +Author: Laurent Monin +Date: Fri Apr 18 16:53:41 2008 +0000 -Add missing return at the end of editor_command_next_start(). + Rename vd_drop_update() to vd_dnd_drop_update(). + Add two function pointers to ViewDir struct to keep + vdtree_dnd_drop_expand_cancel() and vdtree_dnd_drop_expand() + static to view_dir_tree.c. ------------------------------------------------------------------------- -r329 | zas_ | 2008-04-03 22:40:15 +0200 (Thu, 03 Apr 2008) | 2 lines +commit 1b102510a0a4900076a2a34467feb80dab809734 +Author: Laurent Monin +Date: Fri Apr 18 16:29:47 2008 +0000 -Drop unused variable. + Drop 3 useless #define. ------------------------------------------------------------------------- -r328 | zas_ | 2008-04-03 22:38:59 +0200 (Thu, 03 Apr 2008) | 2 lines +commit 5add0a6fd3900ca0c6ea0ed8989e74780f27a8c7 +Author: Laurent Monin +Date: Fri Apr 18 16:25:40 2008 +0000 -Make collect_manager_process_action() static. + Fix forgotten vd->pf affectation. + Cleanup, and reduce code redundancy a bit. ------------------------------------------------------------------------- -r327 | zas_ | 2008-04-03 22:34:49 +0200 (Thu, 03 Apr 2008) | 2 lines +commit 07b43fa0b6dd45d7961e0c6472577ba1562a26e9 +Author: Laurent Monin +Date: Fri Apr 18 11:01:41 2008 +0000 -Fix typos in functions names: file_list -> filelist. + Explode pr_tile_rotate_90() in two functions: + pr_tile_rotate_90_clockwise() + pr_tile_rotate_90_counter_clockwise() + Optimize the code at the expense of a bit of code redundancy: + tests were moved outside the loops, intermediate results are now cached. ------------------------------------------------------------------------- -r326 | zas_ | 2008-04-03 22:25:22 +0200 (Thu, 03 Apr 2008) | 2 lines +commit d7c3043727595dcb6024590e37180486d1da9793 +Author: Laurent Monin +Date: Fri Apr 18 09:15:09 2008 +0000 -Remove unused variable declarations. + Introduce printf_term() macro and use it. ------------------------------------------------------------------------- -r325 | zas_ | 2008-04-03 22:24:20 +0200 (Thu, 03 Apr 2008) | 2 lines +commit 8d5ef0b6c0b83a18dc1c9b72b01a5a84ad998468 +Author: Laurent Monin +Date: Thu Apr 17 20:14:49 2008 +0000 -Fix missing header include (filelist.h). + Add a shortcut key for List (L) and change the one for Tree (T), + they are now in a submenu. ------------------------------------------------------------------------- -r324 | zas_ | 2008-04-03 22:19:16 +0200 (Thu, 03 Apr 2008) | 2 lines +commit 1b4a527e848a686aff4d182347b8c113646c5e6f +Author: Laurent Monin +Date: Thu Apr 17 20:03:49 2008 +0000 -Remove unused variables declarations. + Add some wrappers in view_dir.c and simplify even more. ------------------------------------------------------------------------- -r323 | zas_ | 2008-04-03 22:11:09 +0200 (Thu, 03 Apr 2008) | 7 lines +commit c53023e25a970f212a1e33b6921b1ad5084525db +Author: Laurent Monin +Date: Thu Apr 17 19:57:41 2008 +0000 -Move tabs code from config_window_create() to new smaller functions. -Each tab has now its own function named: -config_tab_general(), config_tab_image(), config_tab_windows(), -config_tab_filtering(), config_tab_editors(), config_tab_exif(), -config_tab_advanced(); + Fix a bug introduced in revision 489. +commit fb146a2c8938469f9a9a9e17ad10762f02792919 +Author: Laurent Monin +Date: Thu Apr 17 18:44:17 2008 +0000 ------------------------------------------------------------------------- -r322 | zas_ | 2008-04-03 20:20:39 +0200 (Thu, 03 Apr 2008) | 2 lines + Reduce code redundancy with the introduction of a new + function named vd_get_fd_from_tree_path(). -Use more generic names for some cache manager callback functions. +commit 8015d0ae2c89c1c524292fc72d0cf41a8318ef18 +Author: Vladimir Nadvornik +Date: Thu Apr 17 17:44:54 2008 +0000 ------------------------------------------------------------------------- -r321 | zas_ | 2008-04-03 19:34:30 +0200 (Thu, 03 Apr 2008) | 3 lines + image post-processing (rotation and color management) moved to + pixbuf-renderer -Replace some occurences of gqview by Geeqie. +commit 524fc51faed3885c6126225ad9627f7b2e345286 +Author: Laurent Monin +Date: Thu Apr 17 17:35:51 2008 +0000 + Merge vd(list|tree)_release_cb() in vd_release_cb(). + I made some assumptions here i hope correct. ------------------------------------------------------------------------- -r320 | zas_ | 2008-04-03 19:15:49 +0200 (Thu, 03 Apr 2008) | 6 lines +commit a165d9a199cfcc40f8a7510e31c3809fd3a15ef0 +Author: Laurent Monin +Date: Thu Apr 17 17:19:41 2008 +0000 -Add a debug level spinner at the end of Preferences > Advanced. -One can now enable debug mode without restarting geeqie. -A possibility to disable all debugging code and related options -at compile time was added. + Merge few more functions to view_dir.c. +commit 054116d5c6fa3f7afb7773b64eb5d0ddba4385d8 +Author: Laurent Monin +Date: Thu Apr 17 16:33:31 2008 +0000 ------------------------------------------------------------------------- -r319 | zas_ | 2008-04-03 16:35:03 +0200 (Thu, 03 Apr 2008) | 7 lines + Move common menu position callback to view_dir.c. -Fix and simplify thumbnails size combo box related code. -Some variables were unused, code was buggy (spurious entry at -the end of the list). A sanity check for values coming from -rc file was added. Two constants now define the default -thumbnail size. +commit 4394fa7a38bcb5b24ee6064a753cf78ee18adcec +Author: Laurent Monin +Date: Thu Apr 17 14:51:32 2008 +0000 + Merge dirlist/dirview dnd code. ------------------------------------------------------------------------- -r318 | zas_ | 2008-04-03 15:58:20 +0200 (Thu, 03 Apr 2008) | 4 lines +commit a264c79b0c70ef6160afe5914ad1a68828ada895 +Author: Laurent Monin +Date: Wed Apr 16 22:51:32 2008 +0000 + Regenerate translations files and update french translation. -Make the preferences window resizeable, and try to improve -display of editors tab. +commit add5ed9d94ecc2d0df2d60610480d23c1082ae3e +Author: Laurent Monin +Date: Wed Apr 16 22:31:52 2008 +0000 ------------------------------------------------------------------------- -r317 | zas_ | 2008-04-03 15:24:13 +0200 (Thu, 03 Apr 2008) | 3 lines + Fix new folder feature in dirlist mode, it was broken by revision 481. -Tidy up. Fix indentation and missing whitespaces. -Make editors table creation code a bit more readable. +commit d129ccdd86cf18e37a020dd2be7760c395f92895 +Author: Laurent Monin +Date: Wed Apr 16 22:23:43 2008 +0000 ------------------------------------------------------------------------- -r316 | zas_ | 2008-04-03 10:51:32 +0200 (Thu, 03 Apr 2008) | 11 lines + Fix a crash introduced in revision 477. -Setting no limit size to trash directory is now possible using zero as value. -A tooltip was added to the spinner to inform the user of this possibility. -When 0 is set, no remaining/free space check occurs. -Default size of the trash was set to a 128M and maximum size is now 2048MB, which -is more conform to today's standards. -The delete dialog now displays more information: -- if external command will be used -- if safe delete is on, max size and path to the trash -- if safe delete is off +commit ed88a7f0f8aaa1d3aac7914d1c30de5aa271b89e +Author: Laurent Monin +Date: Wed Apr 16 22:21:01 2008 +0000 + Fix two errors made in revision 473. ------------------------------------------------------------------------- -r315 | nadvornik | 2008-04-02 22:44:40 +0200 (Wed, 02 Apr 2008) | 3 lines +commit 0313a63861e92a60d1e08d92b68c9ccbb30d6d67 +Author: Laurent Monin +Date: Wed Apr 16 21:58:05 2008 +0000 -various exif improvements based on patch by Uwe Ohse -try to compute 35mm focal length + Merge few more vdlist/vdtree functions. ------------------------------------------------------------------------- -r314 | zas_ | 2008-04-02 14:12:50 +0200 (Wed, 02 Apr 2008) | 6 lines +commit 87388b59fb39365d12d12febc2a2aab528380fd8 +Author: Laurent Monin +Date: Wed Apr 16 20:36:10 2008 +0000 -Make properties tabs reorderable through drag'n drop. -Order is preserved during the whole session. -When a new properties dialog is open, it uses the last order used. -Currently, order isn't saved to rc file. + Make directory view popup menu common and move it to view_dir.{c,h}. +commit 8b709929d5caf41ffd68acb1350c785335131a97 +Author: Vladimir Nadvornik +Date: Wed Apr 16 20:32:44 2008 +0000 ------------------------------------------------------------------------- -r313 | zas_ | 2008-04-02 12:40:54 +0200 (Wed, 02 Apr 2008) | 5 lines + fixed compiler warnings -Honor selection while fullscreen navigation. -The behavior is now consistent in full screen and windowed mode. -It fixes the fact that the selection was discarded on "Next". -Patch by Uwe Ohse. Cleanups by Laurent Monin. +commit 6820b9f7ef0d66634915b7d0538fb3f81bc86272 +Author: Vladimir Nadvornik +Date: Wed Apr 16 20:15:42 2008 +0000 ------------------------------------------------------------------------- -r312 | zas_ | 2008-04-01 09:42:31 +0200 (Tue, 01 Apr 2008) | 1 line + in debug mode print time information on selected events -Fix display of image number in properties dialog when more than one image is selected. ------------------------------------------------------------------------- -r311 | zas_ | 2008-04-01 00:10:25 +0200 (Tue, 01 Apr 2008) | 1 line +commit 5a2f5a7a783b7e8b1138d32b9c5059e32fe7c1a2 +Author: Laurent Monin +Date: Wed Apr 16 18:57:50 2008 +0000 -Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10. ------------------------------------------------------------------------- -r310 | nadvornik | 2008-03-31 23:09:36 +0200 (Mon, 31 Mar 2008) | 3 lines + Clean up and simplify. -use quoted_value everywhere -simplify parsing of multiple quoted values on one line +commit 2bf00ad0b8236c09a056412b49ae3f0fd89ce6bc +Author: Laurent Monin +Date: Wed Apr 16 16:54:38 2008 +0000 ------------------------------------------------------------------------- -r309 | zas_ | 2008-03-31 09:29:03 +0200 (Mon, 31 Mar 2008) | 1 line + Merge parts of view_dir_list/tree constructors/destructors to + view_dir. -Indentation and white lines minor fixes. ------------------------------------------------------------------------- -r308 | zas_ | 2008-03-30 21:26:35 +0200 (Sun, 30 Mar 2008) | 1 line +commit 2ed8126b688006feba5fb928af379d3a1713d14d +Author: Laurent Monin +Date: Wed Apr 16 16:05:12 2008 +0000 -Move strlen() calls outside the while loop. ------------------------------------------------------------------------- -r307 | zas_ | 2008-03-30 16:19:34 +0200 (Sun, 30 Mar 2008) | 1 line + Move some dnd common code from view_dir_list.c and view_dir_tree.c + to view_dir.c. -Comment out forgotten debugging code. ------------------------------------------------------------------------- -r306 | zas_ | 2008-03-30 16:18:04 +0200 (Sun, 30 Mar 2008) | 1 line +commit 49506cdbbc2eab38968eaf7a71836ec3c8261d00 +Author: Laurent Monin +Date: Wed Apr 16 14:56:31 2008 +0000 -Fix two minor compilation warnings. ------------------------------------------------------------------------- -r305 | nadvornik | 2008-03-30 13:47:14 +0200 (Sun, 30 Mar 2008) | 6 lines + Rename vdt occurences to vd. -differentiate among normal image, raw image and metadata -removed raw extension lists on various places and fixed most of the -Exiv2 warnings -todo: configuration and a special icons for unreadable raw or metadata +commit 252ecb111253c410ee55fd732ac19750e0e81b2e +Author: Laurent Monin +Date: Wed Apr 16 14:51:39 2008 +0000 + Rename vdl occurences to vd. ------------------------------------------------------------------------- -r304 | zas_ | 2008-03-30 09:14:37 +0200 (Sun, 30 Mar 2008) | 1 line +commit b90ce4354563cb43ad69dc3fe97be4ad12f5eb89 +Author: Laurent Monin +Date: Wed Apr 16 14:45:22 2008 +0000 -Make the zoom increment spinner more precise, step is now 0.1 instead of 1. ------------------------------------------------------------------------- -r303 | zas_ | 2008-03-29 22:47:10 +0100 (Sat, 29 Mar 2008) | 1 line + Introduce a new struct ViewDir to handle directory views common + data. + Specific data is now in ViewDirInfoList and ViewDirInfoTree. + Type of directory view can be specified with enum DirViewType. + This is saved to rc file as layout.dir_view_type, which replace + layout.view_as_tree. + Code was modified to reflect these changes. + This is a first to move to merge common code of view_dir_list.c + and view_dir_tree.c and ease the introduction of new types + of directory view. -Improve escaping and quoting of strings saved in rc files. ------------------------------------------------------------------------- -r302 | nadvornik | 2008-03-29 15:59:14 +0100 (Sat, 29 Mar 2008) | 2 lines +commit 926c9122c33a25e49679e9689c2a22d8b032b7d8 +Author: Laurent Monin +Date: Tue Apr 15 21:49:28 2008 +0000 -configurable frame around image - geeqie_autofit_maxsize.patch by Laurent MONIN + Indicate --debug[=level] in usage display. ------------------------------------------------------------------------- -r301 | nadvornik | 2008-03-29 11:38:15 +0100 (Sat, 29 Mar 2008) | 2 lines +commit 5d5d65dbb005ee639931f424d7acdb65865eebb2 +Author: Laurent Monin +Date: Tue Apr 15 21:47:03 2008 +0000 -set user-defined color as image background - patch by Laurent MONIN + Parse command line for --debug option as soon as possible and allow + --debug[=level] syntax. + Only display message indication debug level once. ------------------------------------------------------------------------- -r300 | nadvornik | 2008-03-29 11:11:02 +0100 (Sat, 29 Mar 2008) | 2 lines +commit 68ec77a8cd6d07d78de3c56cf977e24add191706 +Author: Laurent Monin +Date: Tue Apr 15 21:06:00 2008 +0000 -fixed color management initialization + Cleanup read/write of image.zoom_mode option. ------------------------------------------------------------------------- -r299 | nadvornik | 2008-03-26 13:07:00 +0100 (Wed, 26 Mar 2008) | 2 lines +commit dbdee25d4a8be12e7f334659d0041a0987aeb403 +Author: Laurent Monin +Date: Tue Apr 15 20:56:55 2008 +0000 -README fixes + Read show_icon_names only once. ------------------------------------------------------------------------- -r298 | nadvornik | 2008-03-26 09:02:45 +0100 (Wed, 26 Mar 2008) | 2 lines +commit 02d26d43e10b7dbc2a9ca41f1d87429e6ed21f0f +Author: Laurent Monin +Date: Tue Apr 15 20:55:21 2008 +0000 -updated README files + Rename l_conf to layout_order and make it more local. ------------------------------------------------------------------------- -r297 | nadvornik | 2008-03-26 09:00:46 +0100 (Wed, 26 Mar 2008) | 2 lines +commit ba6443e9b37c7c9c629809e8bd079234bf846ad8 +Author: Laurent Monin +Date: Tue Apr 15 20:46:14 2008 +0000 -improved xmp vs. legacy metadata handling + Fix a bug that was here since a long time, buf has nothing + to do with options->layout.order, so compare it to l_conf instead. + It fixes refreshing of files and directories lists when changing + filtering options. ------------------------------------------------------------------------- -r296 | nadvornik | 2008-03-25 00:15:29 +0100 (Tue, 25 Mar 2008) | 2 lines +commit 7919d6756adc49486a6ec3c3e863fd745757820d +Author: Laurent Monin +Date: Tue Apr 15 20:36:11 2008 +0000 -fixed crashes with --debug + Add a new option in Preferences > Filtering to allow the + user to choose to display '.' directory in folder lists or not. + This option is saved to rc file as file_filter.show_dot_directory. + A minor fix was made to disable display of .. in folder selection + dialogs when current path is /. ------------------------------------------------------------------------- -r295 | nadvornik | 2008-03-24 21:42:39 +0100 (Mon, 24 Mar 2008) | 2 lines +commit 5fb1b9fa3f94b44fd4cb3571bc561df67703ad39 +Author: Laurent Monin +Date: Tue Apr 15 20:00:27 2008 +0000 -added all possible raw extensions that I could find + Add and use few new macros in rc file writing code. ------------------------------------------------------------------------- -r294 | nadvornik | 2008-03-24 15:49:00 +0100 (Mon, 24 Mar 2008) | 2 lines +commit 0612855a4da8b544bed995add70c6bb6900b9e95 +Author: Vladimir Nadvornik +Date: Tue Apr 15 18:34:24 2008 +0000 -improved support for older exiv2 versions + this might fix the freezes on freebsd, solaris, etc. ------------------------------------------------------------------------- -r293 | nadvornik | 2008-03-24 15:03:46 +0100 (Mon, 24 Mar 2008) | 2 lines +commit 0e4f634e7ad58ae90048e8648355d0e9d9017869 +Author: Vladimir Nadvornik +Date: Tue Apr 15 16:57:30 2008 +0000 -exiv2 version checks + save file_class to config file ------------------------------------------------------------------------- -r292 | nadvornik | 2008-03-24 13:04:31 +0100 (Mon, 24 Mar 2008) | 2 lines +commit 9225b41f98bcf9d21d458973e72af78153eaacc3 +Author: Laurent Monin +Date: Tue Apr 15 07:16:51 2008 +0000 -more renames + Exit fullscreen mode when Properties is displayed. ------------------------------------------------------------------------- -r291 | nadvornik | 2008-03-24 11:27:22 +0100 (Mon, 24 Mar 2008) | 2 lines +commit 4ad9ed88281b7b4000fffea1c1e68e5ad6c919a0 +Author: Laurent Monin +Date: Tue Apr 15 06:56:25 2008 +0000 -changed logo + New Go to directory view feature that permits to find and display the directory + corresponding to an image view. + For example, when you open an image in new window from collection, right clicking on + the newly displayed image will let you choose Go to directory view, which would open + a new window, with image and directory list. + If current directory is the one of the image, menu item is disabled. ------------------------------------------------------------------------- -r290 | nadvornik | 2008-03-24 10:55:09 +0100 (Mon, 24 Mar 2008) | 2 lines +commit 28d489b1dc7ee32ffe576e3fc2b9b98056062e98 +Author: Laurent Monin +Date: Mon Apr 14 23:47:13 2008 +0000 -more renames + Move layout.order default init to setup_default_options(). ------------------------------------------------------------------------- -r289 | nadvornik | 2008-03-23 21:38:54 +0100 (Sun, 23 Mar 2008) | 2 lines +commit ec46e7a26e75c60f577a17dbdadddf5421c17ce1 +Author: Laurent Monin +Date: Mon Apr 14 23:39:46 2008 +0000 -rename GQview -> Geeqie over the code + collection_load(): use booleans and always count failures (for debug). ------------------------------------------------------------------------- -r288 | nadvornik | 2008-03-23 21:18:51 +0100 (Sun, 23 Mar 2008) | 2 lines +commit 95f5f103e834a2d31c60c329a30d10116bf6b015 +Author: Laurent Monin +Date: Mon Apr 14 23:29:54 2008 +0000 -renamed to geeqie + collection_load(): improve headers parsing. ------------------------------------------------------------------------- -r287 | nadvornik | 2008-03-22 20:28:45 +0100 (Sat, 22 Mar 2008) | 2 lines +commit d11ebdf00ddd802dabdab77d870cf017663573db +Author: Laurent Monin +Date: Mon Apr 14 23:09:48 2008 +0000 -raw related fixes + collection_load(): fix typo (missing #) made in rev 453. ------------------------------------------------------------------------- -r286 | nadvornik | 2008-03-22 18:32:43 +0100 (Sat, 22 Mar 2008) | 2 lines +commit 51a638cf38c21da8bbb44166a27c9441d17d6b69 +Author: Laurent Monin +Date: Mon Apr 14 23:08:27 2008 +0000 -overview of supported raw formats + collection_load(): accept whitespaces at start of lines. ------------------------------------------------------------------------- -r285 | nadvornik | 2008-03-22 18:09:14 +0100 (Sat, 22 Mar 2008) | 2 lines +commit 598acd263839791e2ed5ce66c0cccd351f67e4a4 +Author: Laurent Monin +Date: Mon Apr 14 22:57:26 2008 +0000 -configure --without-exiv2 + collection_load(): increase verbosity in debug mode. ------------------------------------------------------------------------- -r284 | nadvornik | 2008-03-22 17:43:59 +0100 (Sat, 22 Mar 2008) | 2 lines +commit d0738ee165622d8e1782bb9a6eb7834f7d067fb6 +Author: Laurent Monin +Date: Mon Apr 14 22:50:50 2008 +0000 -crw preview support with exiv2 + collection_load(): replace official by limit_failures (and + invert the tests). ------------------------------------------------------------------------- -r283 | nadvornik | 2008-03-16 15:11:22 +0100 (Sun, 16 Mar 2008) | 3 lines +commit 7b5e4b9910d9630dd8337bf7595a72adc5353fbf +Author: Laurent Monin +Date: Mon Apr 14 22:45:53 2008 +0000 -whitelist of files that can have an xmp sidecar, sample external command -for creating sidecar + Increase collection_load() buffer size and do not activate + error limiting for GQview collections. ------------------------------------------------------------------------- -r282 | nadvornik | 2008-03-16 11:52:44 +0100 (Sun, 16 Mar 2008) | 2 lines +commit 0b84d42bbae8d46d469262d5bc53acf46d935049 +Author: Laurent Monin +Date: Mon Apr 14 22:28:29 2008 +0000 -fixed reading sidecar extensions from config file + Merge collection_load_only_geometry() into collection_load(). ------------------------------------------------------------------------- -r281 | nadvornik | 2008-03-16 11:32:52 +0100 (Sun, 16 Mar 2008) | 2 lines +commit 3ababb59e475a61f1f0bd085d0e33e0312c0baf2 +Author: Laurent Monin +Date: Mon Apr 14 22:05:47 2008 +0000 -write comment and keywords to xmp, sidecars are used if exist + Use flags for collection_load*(). ------------------------------------------------------------------------- -r280 | nadvornik | 2008-03-15 20:53:33 +0100 (Sat, 15 Mar 2008) | 2 lines +commit 03dfde5430fc9f9529840dce357ba17703f98042 +Author: Laurent Monin +Date: Sun Apr 13 20:33:45 2008 +0000 -write support in Exiv2 wrapper; for now only string values + Apply exif display config (Never/If set/Always) to pan view too. ------------------------------------------------------------------------- -r279 | nadvornik | 2008-02-24 19:55:19 +0100 (Sun, 24 Feb 2008) | 3 lines +commit d8dac8fc58190ffde1b6602dbccd62cd5d7b5aa4 +Author: Laurent Monin +Date: Sun Apr 13 19:21:13 2008 +0000 -a hack to read raw previews with exiv2 0.16, however it should be fixed -in the library + Rename show_dot_files to show_hidden_files. + There is no need to expose the underlying method to hide + files. ------------------------------------------------------------------------- -r278 | nadvornik | 2008-02-15 11:48:09 +0100 (Fri, 15 Feb 2008) | 2 lines +commit 38e6918e9817e663d99f827afab64e30ece28904 +Author: Laurent Monin +Date: Sun Apr 13 18:56:24 2008 +0000 -read also iptc and xmp + Let toggle the visibility of hidden files from directories list + or tree contextual menu. ------------------------------------------------------------------------- -r277 | nadvornik | 2008-02-14 15:04:43 +0100 (Thu, 14 Feb 2008) | 2 lines +commit c1b559c372212ba25d25c3033900465580a95aae +Author: Laurent Monin +Date: Sun Apr 13 12:24:42 2008 +0000 -more exiv2 fixes + Add a button to reset fullscreen info string to default value. ------------------------------------------------------------------------- -r276 | nadvornik | 2008-02-14 12:03:20 +0100 (Thu, 14 Feb 2008) | 2 lines +commit a7f368b7d5697a10f2a07a2d7a323054593ff985 +Author: Laurent Monin +Date: Sun Apr 13 12:12:44 2008 +0000 -more exiv2 fixes + Fix a typo, READ_CHAR() must use value_all. ------------------------------------------------------------------------- -r275 | nadvornik | 2008-02-14 00:02:48 +0100 (Thu, 14 Feb 2008) | 2 lines +commit 8b62dc72ea0a17ea87ac9eff59eb193de82a6e7f +Author: Laurent Monin +Date: Sun Apr 13 09:10:38 2008 +0000 -more exiv2 fixes + Use convenient macros to read options, it will ensure options + names are matching (in the rc file and internally). ------------------------------------------------------------------------- -r274 | nadvornik | 2008-02-13 20:31:50 +0100 (Wed, 13 Feb 2008) | 2 lines +commit 9ca550aba088f91cc6996f6cc087cdfd62bba93f +Author: Laurent Monin +Date: Sun Apr 13 08:36:17 2008 +0000 -unified tag names between exiv2 and internal rxif parser + Simplify read_*_option() stuff by passing pointer to option value. + Introduce read_uint_option() to read enum values and read_int_option_clamp() + to read clamped values. ------------------------------------------------------------------------- -r273 | nadvornik | 2008-02-13 18:47:55 +0100 (Wed, 13 Feb 2008) | 2 lines +commit 49b7c7fe48866f69d080a098f8a9d06edc818738 +Author: Laurent Monin +Date: Sat Apr 12 23:59:31 2008 +0000 -more exiv2 fixes + Partly rewrite option parser to accept whitespaces at start + of lines. ------------------------------------------------------------------------- -r272 | nadvornik | 2008-02-13 18:08:04 +0100 (Wed, 13 Feb 2008) | 2 lines +commit 3d8e37380a4959e12ccd2fba88d432bd93270827 +Author: Laurent Monin +Date: Sat Apr 12 23:41:35 2008 +0000 -and first version that actually shows some exif data (see advanced view) + exif_* -> exif.display.* ------------------------------------------------------------------------- -r271 | nadvornik | 2008-02-13 17:52:41 +0100 (Wed, 13 Feb 2008) | 2 lines +commit e343ae4e578a24d6e49059bc0c5b0dbde0971b88 +Author: Laurent Monin +Date: Sat Apr 12 23:32:08 2008 +0000 -first exiv2 support that does not crash immediately + Add a note in the rc file about special editor slots. ------------------------------------------------------------------------- -r270 | nadvornik | 2008-02-13 15:46:23 +0100 (Wed, 13 Feb 2008) | 2 lines +commit e2a2cc276a702ce73821ec81d0768252f2f463dd +Author: Laurent Monin +Date: Sat Apr 12 23:16:41 2008 +0000 -started exiv2 integration + sidecar_ext -> sidecar.ext ------------------------------------------------------------------------- -r269 | nadvornik | 2008-02-13 14:57:31 +0100 (Wed, 13 Feb 2008) | 2 lines +commit 92b6d1c6f6d91e0732716f934aa5bb999313aab5 +Author: Laurent Monin +Date: Sat Apr 12 23:07:04 2008 +0000 -simplified exif.h, moved implementation-specific stuff to exif-int.h + Unify names of options between variables and rc file. ------------------------------------------------------------------------- -r268 | nadvornik | 2008-02-11 16:23:43 +0100 (Mon, 11 Feb 2008) | 2 lines +commit 8f2f4ae8a8fbba517d9c2e2c196b7f9ff5a40647 +Author: Laurent Monin +Date: Sat Apr 12 23:02:00 2008 +0000 -do not show frame for full-window images + Use tree_descend_subdirs everywhere. ------------------------------------------------------------------------- -r267 | nadvornik | 2008-02-11 13:51:28 +0100 (Mon, 11 Feb 2008) | 2 lines +commit e5253f24cda55574222c41b5c84e49643ea9049b +Author: Laurent Monin +Date: Sat Apr 12 22:22:11 2008 +0000 -improved drawing of image frames + Use startup_path_enable everywhere. ------------------------------------------------------------------------- -r266 | nadvornik | 2008-01-26 22:18:23 +0100 (Sat, 26 Jan 2008) | 2 lines +commit 32611f3c4549e3506390d41fefc5050b80739ca0 +Author: Laurent Monin +Date: Sat Apr 12 22:17:14 2008 +0000 -updated TODO list + Rename recent_list_max/open_recent_max to open_recent_list_maxsize. ------------------------------------------------------------------------- -r265 | nadvornik | 2008-01-20 20:04:18 +0100 (Sun, 20 Jan 2008) | 2 lines +commit fc112e86d9cf2d7b99aa0b40a07f28c8ecd08b4c +Author: Laurent Monin +Date: Sat Apr 12 22:10:38 2008 +0000 -debug messages cleanup + Rename dupe_custom_threshold option to duplicates_similarity_threshold. ------------------------------------------------------------------------- -r264 | nadvornik | 2008-01-16 20:37:54 +0100 (Wed, 16 Jan 2008) | 2 lines +commit a882880361dd72f9002595502f954d0eff7c1feb +Author: Laurent Monin +Date: Sat Apr 12 22:04:29 2008 +0000 -added file with release notes and TODO + Move safe_delete* and in place rename options to file_ops + struct. + Re-order rc file a bit. ------------------------------------------------------------------------- -r263 | nadvornik | 2007-12-23 22:24:48 +0100 (Sun, 23 Dec 2007) | 2 lines +commit cae690dfacfc833d50ff8543d50dd1d6ccc5654a +Author: Laurent Monin +Date: Sat Apr 12 21:45:30 2008 +0000 -basic sidecar files configuration via preferences dialog + Rename option thumbnails.enabled to layout.show_thumbnails as it makes + more sense. ------------------------------------------------------------------------- -r262 | nadvornik | 2007-12-23 21:28:50 +0100 (Sun, 23 Dec 2007) | 2 lines +commit 99862dd609c1002a0b307e840377956a7c825fa0 +Author: Laurent Monin +Date: Sat Apr 12 21:38:55 2008 +0000 -fixed loading thumbnails for sidecar files + Rename user_specified_window_background and window_background_color + to image.use_custom_border_color and image.border_color. + Rename pref_background_color_set_cb() to pref_color_button_set_cb(). + Rename pref_colorbutton_new() to pref_color_button_new(). ------------------------------------------------------------------------- -r261 | nadvornik | 2007-12-23 16:49:23 +0100 (Sun, 23 Dec 2007) | 3 lines +commit 4f893077aa3abd5ef6771504c572a941ddb39f1c +Author: Laurent Monin +Date: Sat Apr 12 19:33:59 2008 +0000 -fixed vflist_find_row and vflist_sort_set to work correctly with sidecar -files + Rename window options (moved to layout) and re-order rc file. ------------------------------------------------------------------------- -r260 | nadvornik | 2007-12-22 21:33:09 +0100 (Sat, 22 Dec 2007) | 2 lines +commit 3b9d8732905f125947f2b447e9cbf42505af1d2e +Author: Laurent Monin +Date: Sat Apr 12 17:20:34 2008 +0000 -fixed filelist refresh + Fix bad image option name in the rc file. ------------------------------------------------------------------------- -r259 | nadvornik | 2007-12-22 11:10:40 +0100 (Sat, 22 Dec 2007) | 3 lines +commit 3129bfd4c67ad166a10cf68684e34c420c528ffd +Author: Laurent Monin +Date: Sat Apr 12 17:09:20 2008 +0000 -preserve marks setting on layout change + Fix display bug when using "Limit image size when autofitting" option. +commit 41eed8061d6fcdae47cda65e816da4a8c99d7e00 +Author: Laurent Monin +Date: Sat Apr 12 15:13:00 2008 +0000 ------------------------------------------------------------------------- -r258 | nadvornik | 2007-12-22 10:51:12 +0100 (Sat, 22 Dec 2007) | 2 lines + Beautify rc file, adding sub-sections titles. -basic support for marks in view_file_icon.c +commit 72d1f62068bc2edf087fe11c4003bb2bdfc6f9ac +Author: Laurent Monin +Date: Sat Apr 12 15:04:58 2008 +0000 ------------------------------------------------------------------------- -r257 | nadvornik | 2007-12-20 23:43:52 +0100 (Thu, 20 Dec 2007) | 2 lines + Rename image-related options. -update FileData on file change +commit 0291156001ed57fd4ae86f34facde1f9dfbf408e +Author: Laurent Monin +Date: Sat Apr 12 09:41:44 2008 +0000 ------------------------------------------------------------------------- -r256 | nadvornik | 2007-12-20 17:18:28 +0100 (Thu, 20 Dec 2007) | 3 lines + Rename thumbnails related options. - toggles mark num - selects mark num +commit b9dfc44002659a2d65061c92167c054e5c7929cb +Author: Laurent Monin +Date: Sat Apr 12 09:12:37 2008 +0000 ------------------------------------------------------------------------- -r255 | nadvornik | 2007-12-20 17:06:20 +0100 (Thu, 20 Dec 2007) | 2 lines + Rename file filtering options. -created menu "Select" with selection and marks operations +commit cbe3a31e45f964d1ec1a13644dbfada38f16bd0e +Author: Laurent Monin +Date: Sat Apr 12 08:59:52 2008 +0000 ------------------------------------------------------------------------- -r254 | nadvornik | 2007-12-19 23:01:46 +0100 (Wed, 19 Dec 2007) | 3 lines + Drop unused stuff. -complete set of boolean operation with marks - -union, intersection, complement +commit 2868bf63fa4ab10c32447d58cb054cc6bebe901a +Author: Laurent Monin +Date: Sat Apr 12 08:40:02 2008 +0000 ------------------------------------------------------------------------- -r253 | nadvornik | 2007-12-18 22:15:16 +0100 (Tue, 18 Dec 2007) | 2 lines + Rename collection options. -use accels also in fullscreen mode +commit 08116df6d62d699829022021020d180e0b2e390e +Author: Laurent Monin +Date: Sat Apr 12 08:35:58 2008 +0000 ------------------------------------------------------------------------- -r252 | nadvornik | 2007-12-17 22:42:24 +0100 (Mon, 17 Dec 2007) | 2 lines + Rename file sorting options. -moved some actions to menu and accels +commit 7aa112520e180d55e51b04770b8faaa3cf099491 +Author: Laurent Monin +Date: Sat Apr 12 08:28:08 2008 +0000 ------------------------------------------------------------------------- -r251 | nadvornik | 2007-12-17 20:34:43 +0100 (Mon, 17 Dec 2007) | 2 lines + Re-order and try to group options. -removed unused variable +commit 640bb21dc6aee7dccc6d1f76b611db31163b198b +Author: Laurent Monin +Date: Sat Apr 12 08:05:44 2008 +0000 ------------------------------------------------------------------------- -r250 | nadvornik | 2007-12-16 23:30:19 +0100 (Sun, 16 Dec 2007) | 2 lines + Rename color profile options. -fixed in-place rename +commit e67112638b3f486d8aff634119904205779f9187 +Author: Laurent Monin +Date: Sat Apr 12 07:46:01 2008 +0000 ------------------------------------------------------------------------- -r249 | nadvornik | 2007-12-15 18:58:51 +0100 (Sat, 15 Dec 2007) | 2 lines + Rename slideshow options. -better integration of split image functions into menu +commit 4c1a8d75a041016494c6cfa286c22cbcfbc7d166 +Author: Laurent Monin +Date: Sat Apr 12 07:09:19 2008 +0000 ------------------------------------------------------------------------- -r248 | nadvornik | 2007-12-14 22:51:46 +0100 (Fri, 14 Dec 2007) | 2 lines + Only display defined exif tags by default. -show active marks in image overlay +commit 766bebce3cd6701a545a8d310f5e48561f2712d0 +Author: Laurent Monin +Date: Sat Apr 12 07:00:14 2008 +0000 ------------------------------------------------------------------------- -r247 | nadvornik | 2007-12-09 22:20:27 +0100 (Sun, 09 Dec 2007) | 2 lines + Drop redundant code. -fixed image focus +commit d0cc864a8050573cbe14ad87334b01a0d21e8d11 +Author: Laurent Monin +Date: Sat Apr 12 06:42:47 2008 +0000 ------------------------------------------------------------------------- -r246 | nadvornik | 2007-12-09 13:33:51 +0100 (Sun, 09 Dec 2007) | 2 lines + Add Exif.Photo.ColorSpace tag in Preferences > Properties > Exif. + Requested by Frédéric Mantegazza. -fixed copying zoom an scroll values from the original image on splitting +commit 165c0da79cf3bad89da98b574c1eb6709c47dd38 +Author: Laurent Monin +Date: Fri Apr 11 23:32:22 2008 +0000 ------------------------------------------------------------------------- -r245 | nadvornik | 2007-12-09 12:58:39 +0100 (Sun, 09 Dec 2007) | 2 lines + Rationalize fullscreen options naming. -do not hilight selected image in SPLIT_NONE +commit 52e680bc814903e8132c0416e85e94774c39b4c4 +Author: Laurent Monin +Date: Fri Apr 11 23:01:00 2008 +0000 ------------------------------------------------------------------------- -r244 | nadvornik | 2007-12-09 01:11:40 +0100 (Sun, 09 Dec 2007) | 2 lines + options_c -> c_options -improved drawing of frame around selected image +commit 90490472d271ef57cc6d8edb1bde9ed01f333bab +Author: Laurent Monin +Date: Fri Apr 11 22:52:22 2008 +0000 ------------------------------------------------------------------------- -r243 | nadvornik | 2007-11-25 11:25:25 +0100 (Sun, 25 Nov 2007) | 2 lines + Move more options to ConfOptions. -more operations with file marks +commit 638d6c3771f6967ac749cf4d06eb9142a83c69c6 +Author: Laurent Monin +Date: Fri Apr 11 22:27:54 2008 +0000 ------------------------------------------------------------------------- -r242 | nadvornik | 2007-11-24 22:06:30 +0100 (Sat, 24 Nov 2007) | 2 lines + Move file_sort_case_sensitive to ConfOptions. -marks: fixes and cleanup +commit d2979ca0c264ed0421e5cc25cbe12cb1b7f88f0e +Author: Laurent Monin +Date: Fri Apr 11 22:14:36 2008 +0000 ------------------------------------------------------------------------- -r241 | nadvornik | 2007-11-22 22:15:35 +0100 (Thu, 22 Nov 2007) | 2 lines + Add a new struct ConfOptions to handle options. + Changes were made among the code to use only one global var + named "options" of type ConfOptions *. + Initialization takes place in new init_options(). -improved directory scanning a bit +commit 115597977870a18c7ffcd527d381ba7babad049d +Author: Laurent Monin +Date: Fri Apr 11 20:35:37 2008 +0000 ------------------------------------------------------------------------- -r240 | nadvornik | 2007-11-21 23:46:50 +0100 (Wed, 21 Nov 2007) | 2 lines + Make thumbnail standard fail directory after current application + name and version. -added possibility to specify prefered file type for external commands +commit f4b07b916eca315af4f7681bf01e36a69dfdf6fc +Author: Laurent Monin +Date: Fri Apr 11 20:01:29 2008 +0000 ------------------------------------------------------------------------- -r239 | nadvornik | 2007-11-21 22:21:17 +0100 (Wed, 21 Nov 2007) | 2 lines + Define drag and drop target string in dnd.h. + Make it use the current name of the application. -prevent duplicate sidecar files; code cleanup +commit bfa84d177977c2d1d5c7d2db52a5efee6009d6fb +Author: Laurent Monin +Date: Fri Apr 11 19:43:36 2008 +0000 ------------------------------------------------------------------------- -r238 | nadvornik | 2007-11-20 23:28:40 +0100 (Tue, 20 Nov 2007) | 3 lines + Use secure save in history_list_save(). -fixed grouping sidecar files and made it configurable via config file -(no gui yet) +commit 22e2b40b59d5968e6eb54fdf0abc8c3e26c59a52 +Author: Laurent Monin +Date: Fri Apr 11 17:11:14 2008 +0000 ------------------------------------------------------------------------- -r237 | nadvornik | 2007-10-22 21:58:47 +0200 (Mon, 22 Oct 2007) | 2 lines + Use secure save in comment_file_write(). -fixed preloading images in file list +commit e91c9429984b95358b9f9bd6161ab6003a47d321 +Author: Laurent Monin +Date: Fri Apr 11 16:46:21 2008 +0000 ------------------------------------------------------------------------- -r236 | nadvornik | 2007-10-08 21:41:49 +0200 (Mon, 08 Oct 2007) | 2 lines + Secure save now unlinks temporary file on error by default. + It will prevent left-behind temporary files, but also prevent + potential data recovery from partially written files (it + should not be a problem here). -improved FileDataChangeInfo structure, check for another file operation in progress +commit 8f7571734ad7780f9a56a63b590dc59979dceaea +Author: Laurent Monin +Date: Fri Apr 11 16:04:37 2008 +0000 ------------------------------------------------------------------------- -r235 | nadvornik | 2007-10-02 23:49:02 +0200 (Tue, 02 Oct 2007) | 7 lines + Use secure save feature when saving collections. -display sidecar files (jpeg + raw) using gtk_tree_store -This is just a prototype to test the functionality, it needs more work. +commit 90a5034f8953a616e3e3bc8f0d2482b5542b1dd8 +Author: Laurent Monin +Date: Fri Apr 11 16:02:33 2008 +0000 -Please test, omments are welcome :) + Preserve permissions of the destination file when using secure save. +commit 960050a743c0faf468c2be4608d90b506cd7e7ec +Author: Laurent Monin +Date: Fri Apr 11 15:27:08 2008 +0000 + Revert part of the previous patch, let the caller take care + of calling path_from_utf8(). ------------------------------------------------------------------------- -r234 | nadvornik | 2007-10-01 21:52:10 +0200 (Mon, 01 Oct 2007) | 2 lines +commit 6b819d4c9fc7ce8932e2fb43e2fea8d1ded661bd +Author: Laurent Monin +Date: Fri Apr 11 14:27:55 2008 +0000 -use FileData even for sidecar file list + Use path_from_utf8() on the passed filename. + Add const attribute. ------------------------------------------------------------------------- -r233 | nadvornik | 2007-09-30 23:10:54 +0200 (Sun, 30 Sep 2007) | 6 lines +commit add11b2e5e37c14112a234a84434518a81e0d88e +Author: Laurent Monin +Date: Fri Apr 11 13:07:48 2008 +0000 -editors.c was almost completely rewritten: -- centralized template parsing -- better control of executed editors -- possibility to get editor exit status via callback + ui_icons.h and icons_inline.h depend on gdk-pixbuf-csource, + so add a test for it in configure. + Wrap generated headers files with #ifdef/#endif and add + a comment related to their auto-generated nature. + Make the generation itself quiet, but display a message + on error. + Make these targets depend on respective Makefile.in. +commit b27dd030781ba757068cc7c2722830eafc33bd8c +Author: Laurent Monin +Date: Fri Apr 11 12:31:32 2008 +0000 ------------------------------------------------------------------------- -r232 | nadvornik | 2007-09-12 23:17:31 +0200 (Wed, 12 Sep 2007) | 4 lines + Move secure save code to its own files: secure_save.{c,h}. -display sidecar extensions in filelist -some cleanup of file marks +commit cb6d88cccee47caad26ff3f1cd09cb3e4abf3f66 +Author: Laurent Monin +Date: Fri Apr 11 12:25:36 2008 +0000 + Add missing #ifdef/#endif. ------------------------------------------------------------------------- -r231 | nadvornik | 2007-09-11 22:06:29 +0200 (Tue, 11 Sep 2007) | 3 lines +commit 9bdd3084d7fad2323f4706eb6d069012637568a8 +Author: Laurent Monin +Date: Fri Apr 11 10:46:52 2008 +0000 -replaced gchar* path with FileData *fd + Ensure that gcc flag -Wall is set. +commit 10a062d55d36f749cc16773cb39daadd3761d8a8 +Author: Laurent Monin +Date: Fri Apr 11 10:45:37 2008 +0000 ------------------------------------------------------------------------- -r230 | nadvornik | 2007-08-23 22:45:59 +0200 (Thu, 23 Aug 2007) | 2 lines + Silent some gcc warnings. -started support for sidecar files like xmp, raw+jpeg etc. +commit ee484a48eecb7bf11090a2cffe64957dfacc7c70 +Author: Laurent Monin +Date: Fri Apr 11 09:02:20 2008 +0000 ------------------------------------------------------------------------- -r229 | nadvornik | 2007-08-20 22:11:32 +0200 (Mon, 20 Aug 2007) | 2 lines + Prevent multiple insertion of the same file in a collection. + Use a hash table to speed up existence tests. -more external commands +commit 9c0b2f023a5c9e0da316e4a2bc5cf01117c56f3f +Author: Laurent Monin +Date: Fri Apr 11 08:10:40 2008 +0000 ------------------------------------------------------------------------- -r228 | nadvornik | 2007-08-16 22:57:09 +0200 (Thu, 16 Aug 2007) | 2 lines + Only display these messages if debug mode is enabled. -improved external delete command +commit d934f5a735c2816ff6fca653672b65536c79eb2f +Author: Vladimir Nadvornik +Date: Thu Apr 10 19:27:42 2008 +0000 ------------------------------------------------------------------------- -r227 | nadvornik | 2007-08-15 23:37:51 +0200 (Wed, 15 Aug 2007) | 2 lines + fixed dates in pan-calendar -started implementation of external commands; external Delete should work +commit 6b5b5bbdb0126cb96fe38d5f9d2e15859e9dd8f3 +Author: Laurent Monin +Date: Thu Apr 10 12:07:34 2008 +0000 ------------------------------------------------------------------------- -r226 | bruclik | 2007-07-20 09:10:48 +0200 (Fri, 20 Jul 2007) | 3 lines + Fix fCamera even more. -compilation fix +commit 3655d6512451651b6daa4659732765e41a42805e +Author: Laurent Monin +Date: Thu Apr 10 11:31:20 2008 +0000 + Do not display ... if not truncated. ------------------------------------------------------------------------- -r225 | bruclik | 2007-07-13 16:03:08 +0200 (Fri, 13 Jul 2007) | 3 lines +commit 4f1fc98c467e8ee49a5110caeac20f19d6a40547 +Author: Laurent Monin +Date: Thu Apr 10 10:43:15 2008 +0000 -First implementation of marks for all photos. + Add the possibility to truncate overlay infos displayed: + %fCamera:20% will truncate data displayed to 20 characters + and add 3 dots at the end. + For example, %name% -> some_file, %name:4% -> some... +commit c3a31cca879b0496a7cff3c7443a705a8183854d +Author: Laurent Monin +Date: Thu Apr 10 00:09:43 2008 +0000 ------------------------------------------------------------------------- -r224 | nadvornik | 2007-07-12 22:46:28 +0200 (Thu, 12 Jul 2007) | 2 lines + Fix broken remove_common_prefix(), fCamera didn't display model as it should. -relative scroll is working; some cleanup +commit c265a3b27d21585787453f51c6c88f9919731700 +Author: Laurent Monin +Date: Wed Apr 9 22:47:43 2008 +0000 ------------------------------------------------------------------------- -r223 | nadvornik | 2007-07-11 23:10:25 +0200 (Wed, 11 Jul 2007) | 2 lines + Resync .po files. French translation was updated (100% made). -connected zoom +commit cbf85334fc7aeaa7cb4c0f824285fb505712d03a +Author: Laurent Monin +Date: Wed Apr 9 22:36:43 2008 +0000 ------------------------------------------------------------------------- -r222 | nadvornik | 2007-07-11 22:00:07 +0200 (Wed, 11 Jul 2007) | 2 lines + Add 3 missing files to POTFILES.in. -started relative scroll, keep scroll position +commit 9e55d96d9e8dbd550e574d0c95e97052db85ff4d +Author: Laurent Monin +Date: Wed Apr 9 22:33:06 2008 +0000 ------------------------------------------------------------------------- -r221 | nadvornik | 2007-07-10 23:25:51 +0200 (Tue, 10 Jul 2007) | 2 lines + Simple helper script to display translation statistics. -improved connected scroll and active image switching +commit 472a9ba634085ee3442f8e2af802cc1392c1a403 +Author: Laurent Monin +Date: Wed Apr 9 22:13:11 2008 +0000 ------------------------------------------------------------------------- -r220 | nadvornik | 2007-06-29 17:16:46 +0200 (Fri, 29 Jun 2007) | 4 lines + Fix a typo: "while fluorescent" -> "white fluorescent" -implemented split windows -TODO: menus and hotkeys, connected zoom, activating on drag +commit 2e2e9de4bbd7c8bb7f7f352fa7954df9395c56a3 +Author: Laurent Monin +Date: Wed Apr 9 22:01:52 2008 +0000 + Resync .po files. Update french translation. ------------------------------------------------------------------------- +commit dcd6cfb9d8e4635614f83aead3e35f83cf0cd097 +Author: Vladimir Nadvornik +Date: Wed Apr 9 21:14:50 2008 +0000 + + fixed crash in pan_calendar + +commit 64e92b479d212e4fbe94c6ad4148bb29766d6191 +Author: Vladimir Nadvornik +Date: Wed Apr 9 20:49:32 2008 +0000 + + improved histogram drawing + +commit 5bf349caeeb48de48e69613e10f1202c51f6a6a2 +Author: Laurent Monin +Date: Wed Apr 9 16:37:54 2008 +0000 + + Simplify and unify gtk_window creation with the help of + the new window_new() function, that wraps gtk_window_new() + call. + Subclass, title and icon are set in the same call. + +commit c6bd6b0ee75d77f6f4d6d3987a185639a008c02c +Author: Laurent Monin +Date: Wed Apr 9 13:53:01 2008 +0000 + + Replace occurences of Geeqie / geeqie by constants defined in main.h. + +commit ce0e2d8485b356cce35869d956b863fe7c0884f7 +Author: Laurent Monin +Date: Tue Apr 8 23:41:01 2008 +0000 + + int -> gint + +commit ea52620169109844ba024c26d1b1c4a6dc29c885 +Author: Laurent Monin +Date: Tue Apr 8 23:39:27 2008 +0000 + + Make xmp debug info only appears when debug >= 2. + +commit 1e8eddcf3c0bf7b23f77e70c50a20dcfbbebfed1 +Author: Laurent Monin +Date: Tue Apr 8 23:33:49 2008 +0000 + + Enable image rotation depending on EXIF by default. + New users shouldn't have to search for it. + +commit f798c6956fcd2665e56d184bc45887d0f4d4edee +Author: Laurent Monin +Date: Tue Apr 8 23:25:46 2008 +0000 + + Fix missing header files inclusions. + +commit 0d0b4d754bd31988e8eed4f3eef0f519b1abf21c +Author: Laurent Monin +Date: Tue Apr 8 23:16:12 2008 +0000 + + GQVIEW_* -> GQ_* + +commit dd06ccc36568ace67c9d8982c8021ffd33ba6968 +Author: Laurent Monin +Date: Tue Apr 8 23:07:09 2008 +0000 + + GQVIEW_H -> MAIN_H + +commit f4398500f5a7fbe6236d5573170f8e359823d87e +Author: Laurent Monin +Date: Tue Apr 8 23:02:33 2008 +0000 + + gqview.h -> main.h + +commit 4ccdd1c26c852dedbe58543d845e5fc9a55ba53e +Author: Laurent Monin +Date: Tue Apr 8 22:31:42 2008 +0000 + + Remove obsolete prototype. + +commit 656ba051f062a61bbb21e5add2eda10b9ff18c77 +Author: Laurent Monin +Date: Tue Apr 8 22:28:55 2008 +0000 + + gqview_remote -> remote_connection + gqview_command_collection -> command_collection + gqview_remote_control() -> remote_control() + gqview_remote_help() -> remote_help() + gqview_remote_command_find() -> remote_command_find() + gqview_remote_build_list() -> remote_build_list() + gqview_remote_cb() -> remote_cb() + +commit ae45bad7722ac83ba3fbd91499209c5054bda199 +Author: Laurent Monin +Date: Tue Apr 8 22:16:56 2008 +0000 + + exit_gqview() renamed to exit_program(). + exit_gqview_final() renamed to exit_program_final(). + +commit a7475aea1b68e02c4ec5444cad4d8fde1ed7691b +Author: Laurent Monin +Date: Tue Apr 8 22:05:04 2008 +0000 + + Add support for some Samsung raw files (.pef). + + Samsung raw not strongly differ from Pentax raw. + The only difference in header (manufacturer, camera name and etc). + Tested on Samsung GX-1S and Pentax *ist DS. + Patch by Max Lushnikov. + +commit ccc538651bada138f49aec344cc69398359c1fce +Author: Laurent Monin +Date: Tue Apr 8 21:55:58 2008 +0000 + + Implement secure rc file saving. + First data is written to a temporary file, then if nothing + was wrong, this file is renamed to the final name. + This way the risk of corrupted rc file is greatly reduced. + The code is borrowed from ELinks (http://elinks.cz). + +commit 0e8b4aabb88cf20b361334edbdd817303de4a768 +Author: Vladimir Nadvornik +Date: Tue Apr 8 21:52:04 2008 +0000 + + fixed histogram label + +commit e975cd7b5e7737c6fc2c0606ea17b814c9b4c4ea +Author: Laurent Monin +Date: Tue Apr 8 21:33:29 2008 +0000 + + Fix the "continuous display" of tooltips in the collection view + (before the tooltip delay occured once, then changing icon to icon never hide the + tooltip again, now the tip is displayed shortly after the cursor moved on the icon, + but disappears when moving cursor to another icon). + + Display the full path to the file when Show filename text is on (before nothing + was displayed). + + When Show filename text is off, behavior is unchanged, the (short) filename is + displayed. + +commit bddcf782295eb021e6b525ee5773fbea3947b83b +Author: Vladimir Nadvornik +Date: Tue Apr 8 20:56:50 2008 +0000 + + reworked the histogram patch by Uwe Ohse, most of the code is in + separate files + +commit 149161487904c823cc003a0c45fe1e3cc82205e8 +Author: Vladimir Nadvornik +Date: Tue Apr 8 17:26:13 2008 +0000 + + fixed file delete notification in view_file_icon + +commit 692e15a37d917d37f5171a64264c06b7635cb39a +Author: Laurent Monin +Date: Tue Apr 8 16:22:21 2008 +0000 + + gtk_notebook_set_tab_reorderable() is only available sinc gtk+ 2.10. + +commit 7e989ce8338140c5c9b0de7f674e2954649e5993 +Author: Laurent Monin +Date: Tue Apr 8 15:53:03 2008 +0000 + + Move active variable affectation after the test. + +commit 94caf46eba71f1653d014fbdfa0888b43d98f7d9 +Author: Laurent Monin +Date: Tue Apr 8 14:52:42 2008 +0000 + + Simplify layout_color_name_parse() using g_strdelimit(). + +commit b43697803c521709dc639805718e079b3f4edcdd +Author: Laurent Monin +Date: Tue Apr 8 14:50:14 2008 +0000 + + Tidy up, whitespaces and indentation fix. + +commit 5d4ea30f551b19d199da2a16b7b252df8244ebb7 +Author: Laurent Monin +Date: Tue Apr 8 11:53:35 2008 +0000 + + Remove dependency on GTK 2.12, reported by John Vodden and Vladimir + Nadvornik. + gtk_set_tooltip_markup() calls were disabled for GTK+ versions < 2.12. + gdk_color_to_string() was replaced by a equivalent function. + +commit 255ee5523caae0230e4e163109b00364f3b8180f +Author: Laurent Monin +Date: Mon Apr 7 19:47:22 2008 +0000 + + Add the possibility to print file names with path. + A checkbox was added to the Text tab in the Print dialog. + + Name checked and Path unchecked -> filename.jpg + Name checked and Path checked -> /some/dir/filename.jpg + Name unchecked and Path checked -> /some/dir/ + + Patch by Michael Mokeev and Laurent Monin. + +commit cf45b42ee7dbd8287eecd728cf225c2f45aed5db +Author: Laurent Monin +Date: Mon Apr 7 19:06:17 2008 +0000 + + Fix a segfault on fullscreen file deletion reported by Frédéric Mantegazza. + +commit da12ecf1747a682afe776cf99ea76f4342fd9876 +Author: Laurent Monin +Date: Mon Apr 7 18:52:54 2008 +0000 + + Add the possibility to match duplicates on the name but ignoring the case. + A new item was added to types of match combo box in the Find duplicates dialog. + +commit e0831fd697ffb602fc780ea49f4f09259978f867 +Author: Laurent Monin +Date: Mon Apr 7 08:09:39 2008 +0000 + + Display marks in overlay info only if at least one is set. + Fix a missing g_string_free(). + +commit 7391c9ddeddc9372876f2759b4c8908ea2085fa1 +Author: Laurent Monin +Date: Sun Apr 6 10:17:41 2008 +0000 + + Mark all exif labels as translatable. + Before only some of them were enclosed by N_(). + +commit 99f37aedb447817ff1cb9e243f768b45099d17a7 +Author: Laurent Monin +Date: Sun Apr 6 10:03:54 2008 +0000 + + Mark strings as translatable. + +commit 6033096a6d309a6ebab2d1aa1c2d2152b5e6e56a +Author: Laurent Monin +Date: Sat Apr 5 15:23:39 2008 +0000 + + Improve remove_trailing_slash() so it allocates no more than + needed bytes and remove all trailing slashes instead only one. + +commit 3cd193f19c714ea492ef75b7af92ccddae6d9043 +Author: Laurent Monin +Date: Sat Apr 5 11:59:29 2008 +0000 + + Comment out unused code. + Geeqie code now compiles cleanly with -Wall gcc option. + +commit 4b5d366799dd336e39bda4570cb48c706b87512d +Author: Laurent Monin +Date: Fri Apr 4 22:34:55 2008 +0000 + + Change default exif order a bit to move up common and useful + info. + +commit 629f646396dece8527f11d9c55cf37e96420df7a +Author: Laurent Monin +Date: Fri Apr 4 22:23:36 2008 +0000 + + Re-add "What to show in properties dialog:" label before the table. + +commit 9c6fe295906cac617f7ffb57e1f80519982263c0 +Author: Laurent Monin +Date: Fri Apr 4 22:12:28 2008 +0000 + + Rename exif preferences tab to "Properties", and name the + subsection "Exif". + +commit b74a5e41092be8d442a5edc8927c388f8f064ab4 +Author: Laurent Monin +Date: Fri Apr 4 18:50:52 2008 +0000 + + Fix a segfault occuring when enabling debug mode. + At this point il->fd can be null. + +commit e8cca019825f81696bed7d0e7ac8adb46107d66e +Author: Laurent Monin +Date: Thu Apr 3 23:29:14 2008 +0000 + + Make the wmclass value unique among the code by defining + it in main header file as GQ_WMCLASS. + Before this patch, it was set using PACKAGE (="geeqie"), + or by the hardcoded string "Geeqie". + Now all Geeqie windows have the same value for wmclass. + +commit ba02c7206762d6851a1af2776361daaf16a3db9a +Author: Laurent Monin +Date: Thu Apr 3 22:39:50 2008 +0000 + + Initialize variables, clearing a gcc warning. + +commit 9c57ca463347c5dfe77e25e634135ee282a11d6a +Author: Laurent Monin +Date: Thu Apr 3 22:33:28 2008 +0000 + + Add missing prototype to header file. + +commit 1d07e403b4460791de952fa6b3089e667b60264b +Author: Laurent Monin +Date: Thu Apr 3 22:29:20 2008 +0000 + + Add few missing prototypes to header file. + +commit bae17221c04c2d7ac5a473e94ac0562603d83507 +Author: Laurent Monin +Date: Thu Apr 3 22:20:42 2008 +0000 + + Drop a bunch of unused variables. + +commit 4233904c10730a743c21449f929ff99ab6a9cb2e +Author: Laurent Monin +Date: Thu Apr 3 22:14:37 2008 +0000 + + Add missing #include. + +commit b5004054f8709b415a62b457fc166216014e4d6c +Author: Laurent Monin +Date: Thu Apr 3 22:13:12 2008 +0000 + + Remove unused variables. + +commit 0f370af7df0f6b59e783a3c6655d6b8db4986ce9 +Author: Laurent Monin +Date: Thu Apr 3 22:09:36 2008 +0000 + + Add missing prototype. + +commit 46cbdf33c88a15bca579a00022356361f7854ec8 +Author: Laurent Monin +Date: Thu Apr 3 22:06:31 2008 +0000 + + Drop 3 unused variables and comment out 2 unused functions. + +commit b452f41cefd0a7d578b4e5310543d397ec4ca21b +Author: Laurent Monin +Date: Thu Apr 3 22:03:14 2008 +0000 + + Add parenthesis around affection to clear a gcc warning. + +commit fab357ea72855cdc4397ad4e4009206f47e9065e +Author: Laurent Monin +Date: Thu Apr 3 22:01:08 2008 +0000 + + Fix a signedness warning. + +commit 91d0e07df572f7e7b2bb4564b3d96737ba432650 +Author: Laurent Monin +Date: Thu Apr 3 21:54:23 2008 +0000 + + Main configuration file was renamed from gqviewrc to geeqierc. + +commit 94fe3fcbb8e57a53b1ca2fbd2874d319988a3f05 +Author: Laurent Monin +Date: Thu Apr 3 21:50:53 2008 +0000 + + Fix a segfault occuring when using --without-exiv2 and + concerning exif stuff. + +commit c34caea4863dc67b9420eefeab15fea347482d00 +Author: Laurent Monin +Date: Thu Apr 3 21:49:17 2008 +0000 + + Fix missing bit of previous patch. + +commit 287ce3f2961b8d47d7b16b14206de769419a70b0 +Author: Laurent Monin +Date: Thu Apr 3 21:04:19 2008 +0000 + + Fix two more gcc warnings related to function declarations. + +commit 7c014bcacbdf6a41bf9b4d056c23af1b095d2c5e +Author: Laurent Monin +Date: Thu Apr 3 20:53:13 2008 +0000 + + Remove two unused variables declarations, and add a missing #include. + +commit ae6a05ca1496e697792873538344986662731d33 +Author: Laurent Monin +Date: Thu Apr 3 20:46:55 2008 +0000 + + Drop unused variable. + +commit 71e3199f6438dedfad6c9f887c61377e25d2ecd8 +Author: Laurent Monin +Date: Thu Apr 3 20:45:55 2008 +0000 + + Add missing return at the end of editor_command_next_start(). + +commit f73531befc98f27f324b2d8931037cb992cee5eb +Author: Laurent Monin +Date: Thu Apr 3 20:40:15 2008 +0000 + + Drop unused variable. + +commit 66f99ad9b066545846752becd21c8fe28360d27d +Author: Laurent Monin +Date: Thu Apr 3 20:38:59 2008 +0000 + + Make collect_manager_process_action() static. + +commit 8e4da844d26d88157198173ae9085700c3ad7e15 +Author: Laurent Monin +Date: Thu Apr 3 20:34:49 2008 +0000 + + Fix typos in functions names: file_list -> filelist. + +commit c2eef3c9f81fcfdc2871d68fc70429ee0022b0a1 +Author: Laurent Monin +Date: Thu Apr 3 20:25:22 2008 +0000 + + Remove unused variable declarations. + +commit 6c8390b4bf350c22d5dadc4f7cbeecfcf66b2241 +Author: Laurent Monin +Date: Thu Apr 3 20:24:20 2008 +0000 + + Fix missing header include (filelist.h). + +commit a161508a7fcab4d94be9661e844e1cbadb459016 +Author: Laurent Monin +Date: Thu Apr 3 20:19:16 2008 +0000 + + Remove unused variables declarations. + +commit 8746b22d3ed1b600016bd97a5547dc10248cc0e5 +Author: Laurent Monin +Date: Thu Apr 3 20:11:09 2008 +0000 + + Move tabs code from config_window_create() to new smaller functions. + Each tab has now its own function named: + config_tab_general(), config_tab_image(), config_tab_windows(), + config_tab_filtering(), config_tab_editors(), config_tab_exif(), + config_tab_advanced(); + +commit 1557cbb59eeb34ce818337a2c9a57cb8e03c9c05 +Author: Laurent Monin +Date: Thu Apr 3 18:20:39 2008 +0000 + + Use more generic names for some cache manager callback functions. + +commit aecafd20f3ac481c1c919484ebb2dd79af07caca +Author: Laurent Monin +Date: Thu Apr 3 17:34:30 2008 +0000 + + Replace some occurences of gqview by Geeqie. + +commit e10dc3fb90621a74d1641c54cba4e3eb58ed306b +Author: Laurent Monin +Date: Thu Apr 3 17:15:49 2008 +0000 + + Add a debug level spinner at the end of Preferences > Advanced. + One can now enable debug mode without restarting geeqie. + A possibility to disable all debugging code and related options + at compile time was added. + +commit 7cc8e4c3ec69055695aea75aec756ab8623d9b1b +Author: Laurent Monin +Date: Thu Apr 3 14:35:03 2008 +0000 + + Fix and simplify thumbnails size combo box related code. + Some variables were unused, code was buggy (spurious entry at + the end of the list). A sanity check for values coming from + rc file was added. Two constants now define the default + thumbnail size. + +commit 1671ec2fa789db8370f51fb6ef8efca946865931 +Author: Laurent Monin +Date: Thu Apr 3 13:58:20 2008 +0000 + + Make the preferences window resizeable, and try to improve + display of editors tab. + +commit ab990a8c71aed99def1757293cbb888da37af2a9 +Author: Laurent Monin +Date: Thu Apr 3 13:24:13 2008 +0000 + + Tidy up. Fix indentation and missing whitespaces. + Make editors table creation code a bit more readable. + +commit cf5166859290614def5203aea1900d302d02c6de +Author: Laurent Monin +Date: Thu Apr 3 08:51:32 2008 +0000 + + Setting no limit size to trash directory is now possible using zero as value. + A tooltip was added to the spinner to inform the user of this possibility. + When 0 is set, no remaining/free space check occurs. + Default size of the trash was set to a 128M and maximum size is now 2048MB, which + is more conform to today's standards. + The delete dialog now displays more information: + - if external command will be used + - if safe delete is on, max size and path to the trash + - if safe delete is off + +commit 84a0008e3167969e2250ac1169da57ad8464624d +Author: Vladimir Nadvornik +Date: Wed Apr 2 20:44:40 2008 +0000 + + various exif improvements based on patch by Uwe Ohse + try to compute 35mm focal length + +commit a667d7a3491b2758ffff532fc66c76bd84de59cf +Author: Laurent Monin +Date: Wed Apr 2 12:12:50 2008 +0000 + + Make properties tabs reorderable through drag'n drop. + Order is preserved during the whole session. + When a new properties dialog is open, it uses the last order used. + Currently, order isn't saved to rc file. + +commit 119f6773b7605d8ce443c6f79ee1becd5d2250b2 +Author: Laurent Monin +Date: Wed Apr 2 10:40:54 2008 +0000 + + Honor selection while fullscreen navigation. + The behavior is now consistent in full screen and windowed mode. + It fixes the fact that the selection was discarded on "Next". + Patch by Uwe Ohse. Cleanups by Laurent Monin. + +commit 9c13e122221c8c594e9c686eb44c00ebe5653a8d +Author: Laurent Monin +Date: Tue Apr 1 07:42:31 2008 +0000 + + Fix display of image number in properties dialog when more than one image is selected. + +commit 46b72816ae905359b0f58dc9306391a045c64851 +Author: Laurent Monin +Date: Mon Mar 31 22:10:25 2008 +0000 + + Customizable info overlay in fullscreen, based on the patch posted to gqview-devel list by Timo on 2007-09-10. + +commit 04eaaa21a6ba71239f7c4564ff98a3268326cc40 +Author: Vladimir Nadvornik +Date: Mon Mar 31 21:09:36 2008 +0000 + + use quoted_value everywhere + simplify parsing of multiple quoted values on one line + +commit e24208c28c3cc4cebd512e16b81183ec1df6bae1 +Author: Laurent Monin +Date: Mon Mar 31 07:29:03 2008 +0000 + + Indentation and white lines minor fixes. + +commit fcd13bbcea7020864510cb36b878e08fab2f90b2 +Author: Laurent Monin +Date: Sun Mar 30 19:26:35 2008 +0000 + + Move strlen() calls outside the while loop. + +commit 05e266040ad17850e0b808ba3ddc94fefb526120 +Author: Laurent Monin +Date: Sun Mar 30 14:19:34 2008 +0000 + + Comment out forgotten debugging code. + +commit 7bfda96a852553fd035ffefcd44c82dab63de722 +Author: Laurent Monin +Date: Sun Mar 30 14:18:04 2008 +0000 + + Fix two minor compilation warnings. + +commit a3842d6ede2ca127f40bdab206c0bfd35b31e92b +Author: Vladimir Nadvornik +Date: Sun Mar 30 11:47:14 2008 +0000 + + differentiate among normal image, raw image and metadata + removed raw extension lists on various places and fixed most of the + Exiv2 warnings + todo: configuration and a special icons for unreadable raw or metadata + +commit 07a39dad79cab9d0ffb31934ffffb46cac283614 +Author: Laurent Monin +Date: Sun Mar 30 07:14:37 2008 +0000 + + Make the zoom increment spinner more precise, step is now 0.1 instead of 1. + +commit 4cd843a2af59ae49b25ee2cf0cc1a4e777567628 +Author: Laurent Monin +Date: Sat Mar 29 21:47:10 2008 +0000 + + Improve escaping and quoting of strings saved in rc files. + +commit a6b652131200ed7c783431147a4ea52024341200 +Author: Vladimir Nadvornik +Date: Sat Mar 29 14:59:14 2008 +0000 + + configurable frame around image - geeqie_autofit_maxsize.patch by Laurent MONIN + +commit 34d53a4678e430076251d04a4e7e4e4c755a21e1 +Author: Vladimir Nadvornik +Date: Sat Mar 29 10:38:15 2008 +0000 + + set user-defined color as image background - patch by Laurent MONIN + +commit a33be8446827d48bdf2c3a390cac83a46c998a9b +Author: Vladimir Nadvornik +Date: Sat Mar 29 10:11:02 2008 +0000 + + fixed color management initialization + +commit c8156a82ec7f5c50ca3879f3d7950be7d2141ad0 +Author: Vladimir Nadvornik +Date: Wed Mar 26 12:07:00 2008 +0000 + + README fixes + +commit 407aa583a11e3dc639b45941cd642636e90b8da4 +Author: Vladimir Nadvornik +Date: Wed Mar 26 08:02:45 2008 +0000 + + updated README files + +commit 326749190b90a0d6856aadc41863147f4036ef74 +Author: Vladimir Nadvornik +Date: Wed Mar 26 08:00:46 2008 +0000 + + improved xmp vs. legacy metadata handling + +commit 6d057f053b0096f75d54ca1072efbc3519fb1fd6 +Author: Vladimir Nadvornik +Date: Mon Mar 24 23:15:29 2008 +0000 + + fixed crashes with --debug + +commit b62f6a36bb78ebcfdc7e3ebb5ed8053e4602ff31 +Author: Vladimir Nadvornik +Date: Mon Mar 24 20:42:39 2008 +0000 + + added all possible raw extensions that I could find + +commit 667f7560d8b10468f4c7297519555a3c8decbc4c +Author: Vladimir Nadvornik +Date: Mon Mar 24 14:49:00 2008 +0000 + + improved support for older exiv2 versions + +commit da4c691f61c0f2ca628b9ad5e97c3214df774d69 +Author: Vladimir Nadvornik +Date: Mon Mar 24 14:03:46 2008 +0000 + + exiv2 version checks + +commit 84ae856159768b019f9e84bc7755870d81919ff4 +Author: Vladimir Nadvornik +Date: Mon Mar 24 12:04:31 2008 +0000 + + more renames + +commit 70dabcc54b1d89de945f04eda7b3a64c353f9b55 +Author: Vladimir Nadvornik +Date: Mon Mar 24 10:27:22 2008 +0000 + + changed logo + +commit 81d7720e912922961e82aa9b1a1dc87e7d75a74a +Author: Vladimir Nadvornik +Date: Mon Mar 24 09:55:09 2008 +0000 + + more renames + +commit 63da021597cd98d86a924b3e233ef17974df5360 +Author: Vladimir Nadvornik +Date: Sun Mar 23 20:38:54 2008 +0000 + + rename GQview -> Geeqie over the code + +commit a0778c990d5e40044d61b06dc2fbdbb9a7e70b04 +Author: Vladimir Nadvornik +Date: Sun Mar 23 20:18:51 2008 +0000 + + renamed to geeqie + +commit ea452132ffaeb843e0679ff75cea362888cf1e6d +Author: Vladimir Nadvornik +Date: Sat Mar 22 19:28:45 2008 +0000 + + raw related fixes + +commit 492c7832025b9958963965fafb009de3d8fde085 +Author: Vladimir Nadvornik +Date: Sat Mar 22 17:32:43 2008 +0000 + + overview of supported raw formats + +commit 6974277ce5e41e0271523dbbd5ece82abeec678e +Author: Vladimir Nadvornik +Date: Sat Mar 22 17:09:14 2008 +0000 + + configure --without-exiv2 + +commit 2e9a8e8d10e6aefb5965f7b68c7ea0304bc962b2 +Author: Vladimir Nadvornik +Date: Sat Mar 22 16:43:59 2008 +0000 + + crw preview support with exiv2 + +commit 7f9de3a441f0cda2f3f6338e605ac623c0939e60 +Author: Vladimir Nadvornik +Date: Sun Mar 16 14:11:22 2008 +0000 + + whitelist of files that can have an xmp sidecar, sample external command + for creating sidecar + +commit a7b47030ebe7432a344a9af140418143a3e60510 +Author: Vladimir Nadvornik +Date: Sun Mar 16 10:52:44 2008 +0000 + + fixed reading sidecar extensions from config file + +commit 7597fd790455ba66f96c22589c14f77041473c04 +Author: Vladimir Nadvornik +Date: Sun Mar 16 10:32:52 2008 +0000 + + write comment and keywords to xmp, sidecars are used if exist + +commit c0cdc48934658fca8cd0c98c642f6f79139eb546 +Author: Vladimir Nadvornik +Date: Sat Mar 15 19:53:33 2008 +0000 + + write support in Exiv2 wrapper; for now only string values + +commit 61e73a06de7a43766561aa634ed092f92074fda8 +Author: Vladimir Nadvornik +Date: Sun Feb 24 18:55:19 2008 +0000 + + a hack to read raw previews with exiv2 0.16, however it should be fixed + in the library + +commit 406e5426f94d6f73156a64864486bfc15a57e18e +Author: Vladimir Nadvornik +Date: Fri Feb 15 10:48:09 2008 +0000 + + read also iptc and xmp + +commit 8c7b5e49053a0f3c00c437d10b0456ccfe08149d +Author: Vladimir Nadvornik +Date: Thu Feb 14 14:04:43 2008 +0000 + + more exiv2 fixes + +commit 2b56231212f7ea7f07ce26525b1b20d8acfba5e4 +Author: Vladimir Nadvornik +Date: Thu Feb 14 11:03:20 2008 +0000 + + more exiv2 fixes + +commit 0330894fadd7202f8df008f7c8b68c6806d480ac +Author: Vladimir Nadvornik +Date: Wed Feb 13 23:02:48 2008 +0000 + + more exiv2 fixes + +commit 4f5f09180a9a03d951a695611df2426342201596 +Author: Vladimir Nadvornik +Date: Wed Feb 13 19:31:50 2008 +0000 + + unified tag names between exiv2 and internal rxif parser + +commit bf05ea3fd28410a74676a407f659899e4c912046 +Author: Vladimir Nadvornik +Date: Wed Feb 13 17:47:55 2008 +0000 + + more exiv2 fixes + +commit 69bc9e2f08edac2dd933f5b7ea25864a30c5d660 +Author: Vladimir Nadvornik +Date: Wed Feb 13 17:08:04 2008 +0000 + + and first version that actually shows some exif data (see advanced view) + +commit fd37e582550777f9c82609aacb4dd5fc2b4aab86 +Author: Vladimir Nadvornik +Date: Wed Feb 13 16:52:41 2008 +0000 + + first exiv2 support that does not crash immediately + +commit d5f48145d5d4cc13c73fb372b6d6a618eca3ce75 +Author: Vladimir Nadvornik +Date: Wed Feb 13 14:46:23 2008 +0000 + + started exiv2 integration + +commit dd9103a22cd380d10bffb153f495109066f8065e +Author: Vladimir Nadvornik +Date: Wed Feb 13 13:57:31 2008 +0000 + + simplified exif.h, moved implementation-specific stuff to exif-int.h + +commit 431265bcd9755e6074140f587a9512bb50f0549a +Author: Vladimir Nadvornik +Date: Mon Feb 11 15:23:43 2008 +0000 + + do not show frame for full-window images + +commit b3b7ee17996db74480664bcc1f68e0ef2b15d420 +Author: Vladimir Nadvornik +Date: Mon Feb 11 12:51:28 2008 +0000 + + improved drawing of image frames + +commit 0628b6e3e6e9712711131850b85d7d471fd22b20 +Author: Vladimir Nadvornik +Date: Sat Jan 26 21:18:23 2008 +0000 + + updated TODO list + +commit bf5d79e01c27563022cf7bf091b12d62375157d6 +Author: Vladimir Nadvornik +Date: Sun Jan 20 19:04:18 2008 +0000 + + debug messages cleanup + +commit 631cb03570ea6c6ea72b1b16246c954ddb0e10d8 +Author: Vladimir Nadvornik +Date: Wed Jan 16 19:37:54 2008 +0000 + + added file with release notes and TODO + +commit 6d82f53ecfeab8d6094f82a95cbdd7746d295fa1 +Author: Vladimir Nadvornik +Date: Sun Dec 23 21:24:48 2007 +0000 + + basic sidecar files configuration via preferences dialog + +commit 45bbe448e671704146e0bc767810ba93df03ce50 +Author: Vladimir Nadvornik +Date: Sun Dec 23 20:28:50 2007 +0000 + + fixed loading thumbnails for sidecar files + +commit 29b1508bf7b5e237cfeebcb70d1db839105d6e72 +Author: Vladimir Nadvornik +Date: Sun Dec 23 15:49:23 2007 +0000 + + fixed vflist_find_row and vflist_sort_set to work correctly with sidecar + files + +commit c1a3110b9f809032dbc8b8aa87fe5ba30e5fedc6 +Author: Vladimir Nadvornik +Date: Sat Dec 22 20:33:09 2007 +0000 + + fixed filelist refresh + +commit b06e457b334a134777618c729eb99e71bf1725c9 +Author: Vladimir Nadvornik +Date: Sat Dec 22 10:10:40 2007 +0000 + + preserve marks setting on layout change + +commit c753cf51a86606bdcc34cb5bafde19ad9e75bda2 +Author: Vladimir Nadvornik +Date: Sat Dec 22 09:51:12 2007 +0000 + + basic support for marks in view_file_icon.c + +commit ec7b00c244dd33aa0db84f09db46e5603f9f3dc1 +Author: Vladimir Nadvornik +Date: Thu Dec 20 22:43:52 2007 +0000 + + update FileData on file change + +commit 9114e31e1e4e433948d6b6380ea955b4909ddff0 +Author: Vladimir Nadvornik +Date: Thu Dec 20 16:18:28 2007 +0000 + + toggles mark num + selects mark num + +commit eda3ed612bc1b1f96ef2956db9d1a07e4da1509f +Author: Vladimir Nadvornik +Date: Thu Dec 20 16:06:20 2007 +0000 + + created menu "Select" with selection and marks operations + +commit 3d075305738ca1931d074e207e546f3a5c3fcd3d +Author: Vladimir Nadvornik +Date: Wed Dec 19 22:01:46 2007 +0000 + + complete set of boolean operation with marks - + union, intersection, complement + +commit 89bad26edcaf2df8dd67d3b965ffdb89ceb05a6f +Author: Vladimir Nadvornik +Date: Tue Dec 18 21:15:16 2007 +0000 + + use accels also in fullscreen mode + +commit a9437da31efbdf69f6d9f7bba573f3925dc6a3aa +Author: Vladimir Nadvornik +Date: Mon Dec 17 21:42:24 2007 +0000 + + moved some actions to menu and accels + +commit a38f59e3953d625d8209673f67380f2cd34ef824 +Author: Vladimir Nadvornik +Date: Mon Dec 17 19:34:43 2007 +0000 + + removed unused variable + +commit 345a2cf80b5165d3eb651ef6ade21323280d6ebe +Author: Vladimir Nadvornik +Date: Sun Dec 16 22:30:19 2007 +0000 + + fixed in-place rename + +commit 05cfc9b2aa804a81b39e792cdf5d7fe8119e8df6 +Author: Vladimir Nadvornik +Date: Sat Dec 15 17:58:51 2007 +0000 + + better integration of split image functions into menu + +commit 69f60d962f323105247e0eaae029ab5d4c4d7395 +Author: Vladimir Nadvornik +Date: Fri Dec 14 21:51:46 2007 +0000 + + show active marks in image overlay + +commit 9ccee7c53567b57b5d54b727ad0d82e453c69d58 +Author: Vladimir Nadvornik +Date: Sun Dec 9 21:20:27 2007 +0000 + + fixed image focus + +commit b44635e7ed331a57eda5ba5d5b4886ddfaf453dc +Author: Vladimir Nadvornik +Date: Sun Dec 9 12:33:51 2007 +0000 + + fixed copying zoom an scroll values from the original image on splitting + +commit ce0883ff7b010d5562f1d7d1213b326503229644 +Author: Vladimir Nadvornik +Date: Sun Dec 9 11:58:39 2007 +0000 + + do not hilight selected image in SPLIT_NONE + +commit 4c1e2733efabf185cf89ce1c12da428f3402f5e9 +Author: Vladimir Nadvornik +Date: Sun Dec 9 00:11:40 2007 +0000 + + improved drawing of frame around selected image + +commit 7ea79525bc616c4b570ed79cd5a930d85e34cbb6 +Author: Vladimir Nadvornik +Date: Sun Nov 25 10:25:25 2007 +0000 + + more operations with file marks + +commit a0cf6aaa112b855b737422d74eb8ba048598d223 +Author: Vladimir Nadvornik +Date: Sat Nov 24 21:06:30 2007 +0000 + + marks: fixes and cleanup + +commit 5c3c80672cb96a81b25289f09f82d3f642cf2846 +Author: Vladimir Nadvornik +Date: Thu Nov 22 21:15:35 2007 +0000 + + improved directory scanning a bit + +commit 106211b13e3e057b69bb7676d70155e64eb093cd +Author: Vladimir Nadvornik +Date: Wed Nov 21 22:46:50 2007 +0000 + + added possibility to specify prefered file type for external commands + +commit 439688c617f392e5e63b68bac42663a05be7df61 +Author: Vladimir Nadvornik +Date: Wed Nov 21 21:21:17 2007 +0000 + + prevent duplicate sidecar files; code cleanup + +commit 07fcc6b5f7298e70aa7fc5530427997eece2bb44 +Author: Vladimir Nadvornik +Date: Tue Nov 20 22:28:40 2007 +0000 + + fixed grouping sidecar files and made it configurable via config file + (no gui yet) + +commit f4cbb100a217060899694be8fbe42a496f00f443 +Author: Vladimir Nadvornik +Date: Mon Oct 22 19:58:47 2007 +0000 + + fixed preloading images in file list + +commit db51b5674d885e18d75a4c4638ec70a5fbb0ee6a +Author: Vladimir Nadvornik +Date: Mon Oct 8 19:41:49 2007 +0000 + + improved FileDataChangeInfo structure, check for another file operation in progress + +commit 0f0a7caad365e1040b989a58a53c5cd22270d631 +Author: Vladimir Nadvornik +Date: Tue Oct 2 21:49:02 2007 +0000 + + display sidecar files (jpeg + raw) using gtk_tree_store + This is just a prototype to test the functionality, it needs more work. + + Please test, omments are welcome :) + +commit bd71fb9aabd65b6e530a82bf61b0787d5f9218a6 +Author: Vladimir Nadvornik +Date: Mon Oct 1 19:52:10 2007 +0000 + + use FileData even for sidecar file list + +commit dab00f02153474d52c62447e25e4a89f70ce918b +Author: Vladimir Nadvornik +Date: Sun Sep 30 21:10:54 2007 +0000 + + editors.c was almost completely rewritten: + - centralized template parsing + - better control of executed editors + - possibility to get editor exit status via callback + +commit 0521644af7926c994e85a57345d7d9e4045dee23 +Author: Vladimir Nadvornik +Date: Wed Sep 12 21:17:31 2007 +0000 + + display sidecar extensions in filelist + some cleanup of file marks + +commit 06959abbda81a200519ad4b57b16995487b8acd8 +Author: Vladimir Nadvornik +Date: Tue Sep 11 20:06:29 2007 +0000 + + replaced gchar* path with FileData *fd + +commit d9367f6d1ce776d8a9c2cf67fe9f8166e4e41b6b +Author: Vladimir Nadvornik +Date: Thu Aug 23 20:45:59 2007 +0000 + + started support for sidecar files like xmp, raw+jpeg etc. + +commit d42c34b8f61d1769f068d253d52043862cc49e56 +Author: Vladimir Nadvornik +Date: Mon Aug 20 20:11:32 2007 +0000 + + more external commands + +commit a4e65742955bd3ca929032eac09ea49b57a6873e +Author: Vladimir Nadvornik +Date: Thu Aug 16 20:57:09 2007 +0000 + + improved external delete command + +commit 19d0a14182426bf5e9a9591c65f44af4c6fc3c06 +Author: Vladimir Nadvornik +Date: Wed Aug 15 21:37:51 2007 +0000 + + started implementation of external commands; external Delete should work + +commit 57c15b1c97b8d075ebb879fc4af67ba41a5d8471 +Author: Petr Ostadal +Date: Fri Jul 20 07:10:48 2007 +0000 + + compilation fix + +commit 84f67e529bc28f1888d58736ed92d69b227a72a4 +Author: Petr Ostadal +Date: Fri Jul 13 14:03:08 2007 +0000 + + First implementation of marks for all photos. + +commit f231104ffad164bd37990a2b4d8e4ffa392f3949 +Author: Vladimir Nadvornik +Date: Thu Jul 12 20:46:28 2007 +0000 + + relative scroll is working; some cleanup + +commit 45424fcc2bf63a47442a1669f19c57233ed07386 +Author: Vladimir Nadvornik +Date: Wed Jul 11 21:10:25 2007 +0000 + + connected zoom + +commit 625f31c5f44e5ad9b1689949b3e0553a1a89a2a6 +Author: Vladimir Nadvornik +Date: Wed Jul 11 20:00:07 2007 +0000 + + started relative scroll, keep scroll position + +commit 44d8cd9bde65b823801ea1f5eca8137641ce5c18 +Author: Vladimir Nadvornik +Date: Tue Jul 10 21:25:51 2007 +0000 + + improved connected scroll and active image switching + +commit f2c63eb24b224a0f9023dc2fa27dc1fe64a5c047 +Author: Vladimir Nadvornik +Date: Fri Jun 29 15:16:46 2007 +0000 + + implemented split windows + TODO: menus and hotkeys, connected zoom, activating on drag Wed Jan 17 16:50:39 2007 John Ellis diff -Nru geeqie-1.0/INSTALL geeqie-1.1/INSTALL --- geeqie-1.0/INSTALL 2008-12-03 10:04:52.000000000 +0000 +++ geeqie-1.1/INSTALL 2011-10-22 19:13:32.000000000 +0000 @@ -2,18 +2,24 @@ ************************* Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005, -2006, 2007 Free Software Foundation, Inc. +2006, 2007, 2008, 2009 Free Software Foundation, Inc. -This file is free documentation; the Free Software Foundation gives -unlimited permission to copy, distribute and modify it. + Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. This file is offered as-is, +without warranty of any kind. Basic Installation ================== -Briefly, the shell commands `./configure; make; make install' should + Briefly, the shell commands `./configure; make; make install' should configure, build, and install this package. The following more-detailed instructions are generic; see the `README' file for -instructions specific to this package. +instructions specific to this package. Some packages provide this +`INSTALL' file but do not implement all of the features documented +below. The lack of an optional feature in a given package is not +necessarily a bug. More recommendations for GNU packages can be found +in *note Makefile Conventions: (standards)Makefile Conventions. The `configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses @@ -42,7 +48,7 @@ you want to change it or regenerate `configure' using a newer version of `autoconf'. -The simplest way to compile this package is: + 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. @@ -53,12 +59,22 @@ 2. Type `make' to compile the package. 3. Optionally, type `make check' to run any self-tests that come with - the package. + the package, generally using the just-built uninstalled binaries. 4. Type `make install' to install the programs and any data files and - documentation. + documentation. When installing into a prefix owned by root, it is + recommended that the package be configured and built as a regular + user, and only the `make install' phase executed with root + privileges. + + 5. Optionally, type `make installcheck' to repeat any self-tests, but + this time using the binaries in their final installed location. + This target does not install anything. Running this target as a + regular user, particularly if the prior `make install' required + root privileges, verifies that the installation completed + correctly. - 5. You can remove the program binaries and object files from the + 6. 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 @@ -67,15 +83,22 @@ all sorts of other programs in order to regenerate files that came with the distribution. - 6. Often, you can also type `make uninstall' to remove the installed - files again. + 7. Often, you can also type `make uninstall' to remove the installed + files again. In practice, not all packages have tested that + uninstallation works correctly, even though it is required by the + GNU Coding Standards. + + 8. Some packages, particularly those that use Automake, provide `make + distcheck', which can by used by developers to test that all other + targets like `make install' and `make uninstall' work correctly. + This target is generally not run by end users. 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. + 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 @@ -88,25 +111,41 @@ Compiling For Multiple Architectures ==================================== -You can compile the package for more than one kind of computer at the + 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 can use 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 `..'. +source code in the directory that `configure' is in and in `..'. This +is known as a "VPATH" build. With a non-GNU `make', it is safer 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. + On MacOS X 10.5 and later systems, you can create libraries and +executables that work on multiple system types--known as "fat" or +"universal" binaries--by specifying multiple `-arch' options to the +compiler but only a single `-arch' option to the preprocessor. Like +this: + + ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ + CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ + CPP="gcc -E" CXXCPP="g++ -E" + + This is not guaranteed to produce working output in all cases, you +may have to build one architecture at a time and combine the results +using the `lipo' tool if you have problems. + Installation Names ================== -By default, `make install' installs the package's commands under + By default, `make install' installs the package's commands under `/usr/local/bin', include files under `/usr/local/include', etc. You can specify an installation prefix other than `/usr/local' by giving -`configure' the option `--prefix=PREFIX'. +`configure' the option `--prefix=PREFIX', where PREFIX must be an +absolute file name. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you @@ -117,16 +156,47 @@ In addition, if you use an unusual directory layout you can give options like `--bindir=DIR' 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. +you can set and what kinds of files go in them. In general, the +default for these options is expressed in terms of `${prefix}', so that +specifying just `--prefix' will affect all of the other directory +specifications that were not explicitly provided. + + The most portable way to affect installation locations is to pass the +correct locations to `configure'; however, many packages provide one or +both of the following shortcuts of passing variable assignments to the +`make install' command line to change installation locations without +having to reconfigure or recompile. + + The first method involves providing an override variable for each +affected directory. For example, `make install +prefix=/alternate/directory' will choose an alternate location for all +directory configuration variables that were expressed in terms of +`${prefix}'. Any directories that were specified during `configure', +but not in terms of `${prefix}', must each be overridden at install +time for the entire installation to be relocated. The approach of +makefile variable overrides for each directory variable is required by +the GNU Coding Standards, and ideally causes no recompilation. +However, some platforms have known limitations with the semantics of +shared libraries that end up requiring recompilation when using this +method, particularly noticeable in packages that use GNU Libtool. + + The second method involves providing the `DESTDIR' variable. For +example, `make install DESTDIR=/alternate/directory' will prepend +`/alternate/directory' before all installation names. The approach of +`DESTDIR' overrides is not required by the GNU Coding Standards, and +does not work on platforms that have drive letters. On the other hand, +it does better at avoiding recompilation issues, and works well even +when some directory options were not specified in terms of `${prefix}' +at `configure' time. + +Optional Features +================= 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 + 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 @@ -138,14 +208,53 @@ you can use the `configure' options `--x-includes=DIR' and `--x-libraries=DIR' to specify their locations. + Some packages offer the ability to configure how verbose the +execution of `make' will be. For these packages, running `./configure +--enable-silent-rules' sets the default to minimal output, which can be +overridden with `make V=1'; while running `./configure +--disable-silent-rules' sets the default to verbose, which can be +overridden with `make V=0'. + +Particular systems +================== + + On HP-UX, the default C compiler is not ANSI C compatible. If GNU +CC is not installed, it is recommended to use the following options in +order to use an ANSI C compiler: + + ./configure CC="cc -Ae -D_XOPEN_SOURCE=500" + +and if that doesn't work, install pre-built binaries of GCC for HP-UX. + + On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot +parse its `' header file. The option `-nodtk' can be used as +a workaround. If GNU CC is not installed, it is therefore recommended +to try + + ./configure CC="cc" + +and if that doesn't work, try + + ./configure CC="cc -nodtk" + + On Solaris, don't put `/usr/ucb' early in your `PATH'. This +directory contains several dysfunctional programs; working variants of +these programs are available in `/usr/bin'. So, if you need `/usr/ucb' +in your `PATH', put it _after_ `/usr/bin'. + + On Haiku, software installed for all users goes in `/boot/common', +not `/usr/local'. It is recommended to use the following options: + + ./configure --prefix=/boot/common + 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 + 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: @@ -153,7 +262,8 @@ where SYSTEM can have one of these forms: - OS KERNEL-OS + 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 @@ -171,9 +281,9 @@ 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'. + 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. @@ -182,7 +292,7 @@ Defining Variables ================== -Variables not defined in a site shell script can be set in the + 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 @@ -201,11 +311,19 @@ `configure' Invocation ====================== -`configure' recognizes the following options to control how it operates. + `configure' recognizes the following options to control how it +operates. `--help' `-h' - Print a summary of the options to `configure', and exit. + Print a summary of all of the options to `configure', and exit. + +`--help=short' +`--help=recursive' + Print a summary of the options unique to this package's + `configure', and exit. The `short' variant lists options used + only in the top level, while the `recursive' variant lists options + also present in any nested packages. `--version' `-V' @@ -232,6 +350,16 @@ Look for the package's source code in directory DIR. Usually `configure' can determine that directory automatically. +`--prefix=DIR' + Use DIR as the installation prefix. *note Installation Names:: + for more details, including other options available for fine-tuning + the installation locations. + +`--no-create' +`-n' + Run the configure checks, but stop before creating any output + files. + `configure' also accepts some other, not widely useful, options. Run `configure --help' for more details. diff -Nru geeqie-1.0/Makefile.in geeqie-1.1/Makefile.in --- geeqie-1.0/Makefile.in 2010-02-17 21:21:45.000000000 +0000 +++ geeqie-1.1/Makefile.in 2012-08-12 20:14:07.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -46,8 +47,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c @@ -77,6 +79,7 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/auxdir/mkinstalldirs CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = geeqie.spec +CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ @@ -86,32 +89,72 @@ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive -man1dir = $(mandir)/man1 -am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(desktopdir)" \ - "$(DESTDIR)$(icondir)" "$(DESTDIR)$(readmedir)" -NROFF = nroff -MANS = $(man_MANS) 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|^.*/||'`; -desktopDATA_INSTALL = $(INSTALL_DATA) -iconDATA_INSTALL = $(INSTALL_DATA) -readmeDATA_INSTALL = $(INSTALL_DATA) +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +man1dir = $(mandir)/man1 +am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(desktopdir)" \ + "$(DESTDIR)$(icondir)" "$(DESTDIR)$(readmedir)" +NROFF = nroff +MANS = $(man_MANS) DATA = $(desktop_DATA) $(icon_DATA) $(readme_DATA) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive +AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ + $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ + distdir dist dist-all distcheck ETAGS = etags CTAGS = ctags 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); }; } + { test ! -d "$(distdir)" \ + || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ + && rm -fr "$(distdir)"; }; } +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print @@ -196,6 +239,8 @@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ +JPEG_CFLAGS = @JPEG_CFLAGS@ +JPEG_LIBS = @JPEG_LIBS@ LCMS_CFLAGS = @LCMS_CFLAGS@ LCMS_LIBS = @LCMS_LIBS@ LDFLAGS = @LDFLAGS@ @@ -209,6 +254,7 @@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ +MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ @@ -218,10 +264,13 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATHSEP = @PATHSEP@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ @@ -229,6 +278,8 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ +TIFF_CFLAGS = @TIFF_CFLAGS@ +TIFF_LIBS = @TIFF_LIBS@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WINDRES = @WINDRES@ @@ -333,15 +384,15 @@ @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \ - cd $(srcdir) && $(AUTOMAKE) --gnu \ + echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \ + $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \ && exit 0; \ exit 1;; \ esac; \ done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -357,9 +408,10 @@ $(SHELL) ./config.status --recheck $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(srcdir) && $(AUTOCONF) + $(am__cd) $(srcdir) && $(AUTOCONF) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) + $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) +$(am__aclocal_m4_deps): config.h: stamp-h1 @if test ! -f $@; then \ @@ -371,7 +423,7 @@ @rm -f stamp-h1 cd $(top_builddir) && $(SHELL) ./config.status config.h $(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_srcdir) && $(AUTOHEADER) + ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) rm -f stamp-h1 touch $@ @@ -379,102 +431,104 @@ -rm -f config.h stamp-h1 geeqie.spec: $(top_builddir)/config.status $(srcdir)/geeqie.spec.in cd $(top_builddir) && $(SHELL) ./config.status $@ -install-man1: $(man1_MANS) $(man_MANS) +install-man1: $(man_MANS) @$(NORMAL_INSTALL) test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)" - @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \ - l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ - for i in $$l2; do \ - case "$$i" in \ - *.1*) list="$$list $$i" ;; \ - esac; \ + @list=''; test -n "$(man1dir)" || exit 0; \ + { for i in $$list; do echo "$$i"; done; \ + l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ + sed -n '/\.1[a-z]*$$/p'; \ + } | while read p; do \ + if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; echo "$$p"; \ + done | \ + sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ + -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ + sed 'N;N;s,\n, ,g' | { \ + list=; while read file base inst; do \ + if test "$$base" = "$$inst"; then list="$$list $$file"; else \ + echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ + $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \ + fi; \ done; \ - for i in $$list; do \ - if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ - else file=$$i; fi; \ - ext=`echo $$i | sed -e 's/^.*\\.//'`; \ - case "$$ext" in \ - 1*) ;; \ - *) ext='1' ;; \ - esac; \ - inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ - inst=`echo $$inst | sed -e 's/^.*\///'`; \ - inst=`echo $$inst | sed '$(transform)'`.$$ext; \ - echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ - $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \ - done + for i in $$list; do echo "$$i"; done | $(am__base_list) | \ + while read files; do \ + test -z "$$files" || { \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \ + done; } + uninstall-man1: @$(NORMAL_UNINSTALL) - @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \ - l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ - for i in $$l2; do \ - case "$$i" in \ - *.1*) list="$$list $$i" ;; \ - esac; \ - done; \ - for i in $$list; do \ - ext=`echo $$i | sed -e 's/^.*\\.//'`; \ - case "$$ext" in \ - 1*) ;; \ - *) ext='1' ;; \ - esac; \ - inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ - inst=`echo $$inst | sed -e 's/^.*\///'`; \ - inst=`echo $$inst | sed '$(transform)'`.$$ext; \ - echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \ - rm -f "$(DESTDIR)$(man1dir)/$$inst"; \ - done + @list=''; test -n "$(man1dir)" || exit 0; \ + files=`{ for i in $$list; do echo "$$i"; done; \ + l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ + sed -n '/\.1[a-z]*$$/p'; \ + } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ + -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ + test -z "$$files" || { \ + echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(man1dir)" && rm -f $$files; } install-desktopDATA: $(desktop_DATA) @$(NORMAL_INSTALL) test -z "$(desktopdir)" || $(MKDIR_P) "$(DESTDIR)$(desktopdir)" - @list='$(desktop_DATA)'; for p in $$list; do \ + @list='$(desktop_DATA)'; test -n "$(desktopdir)" || list=; \ + 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"; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(desktopdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(desktopdir)" || exit $$?; \ 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 + @list='$(desktop_DATA)'; test -n "$(desktopdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '$(DESTDIR)$(desktopdir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(desktopdir)" && rm -f $$files install-iconDATA: $(icon_DATA) @$(NORMAL_INSTALL) test -z "$(icondir)" || $(MKDIR_P) "$(DESTDIR)$(icondir)" - @list='$(icon_DATA)'; for p in $$list; do \ + @list='$(icon_DATA)'; test -n "$(icondir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f=$(am__strip_dir) \ - echo " $(iconDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(icondir)/$$f'"; \ - $(iconDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(icondir)/$$f"; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(icondir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(icondir)" || exit $$?; \ done uninstall-iconDATA: @$(NORMAL_UNINSTALL) - @list='$(icon_DATA)'; for p in $$list; do \ - f=$(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(icondir)/$$f'"; \ - rm -f "$(DESTDIR)$(icondir)/$$f"; \ - done + @list='$(icon_DATA)'; test -n "$(icondir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '$(DESTDIR)$(icondir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(icondir)" && rm -f $$files install-readmeDATA: $(readme_DATA) @$(NORMAL_INSTALL) test -z "$(readmedir)" || $(MKDIR_P) "$(DESTDIR)$(readmedir)" - @list='$(readme_DATA)'; for p in $$list; do \ + @list='$(readme_DATA)'; test -n "$(readmedir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f=$(am__strip_dir) \ - echo " $(readmeDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(readmedir)/$$f'"; \ - $(readmeDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(readmedir)/$$f"; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(readmedir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(readmedir)" || exit $$?; \ done uninstall-readmeDATA: @$(NORMAL_UNINSTALL) - @list='$(readme_DATA)'; for p in $$list; do \ - f=$(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(readmedir)/$$f'"; \ - rm -f "$(DESTDIR)$(readmedir)/$$f"; \ - done + @list='$(readme_DATA)'; test -n "$(readmedir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '$(DESTDIR)$(readmedir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(readmedir)" && rm -f $$files # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. @@ -483,7 +537,7 @@ # (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'; \ + @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ @@ -500,7 +554,7 @@ else \ local_target="$$target"; \ fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ @@ -508,7 +562,7 @@ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): - @failcom='exit 1'; \ + @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ @@ -534,16 +588,16 @@ else \ local_target="$$target"; \ fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) @@ -551,14 +605,14 @@ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + $(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=; \ + set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ @@ -570,7 +624,7 @@ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ - tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ @@ -579,36 +633,54 @@ 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 \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - 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" \ + test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique + $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) + @list='$(MANS)'; if test -n "$$list"; then \ + list=`for p in $$list; do \ + if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ + if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \ + if test -n "$$list" && \ + grep 'ab help2man is required to generate this page' $$list >/dev/null; then \ + echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \ + grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \ + echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \ + echo " typically \`make maintainer-clean' will remove them" >&2; \ + exit 1; \ + else :; fi; \ + else :; fi $(am__remove_distdir) - test -d $(distdir) || mkdir $(distdir) + test -d "$(distdir)" || mkdir "$(distdir)" @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -624,29 +696,44 @@ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done - list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + @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 && \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$top_distdir" \ - distdir="$$distdir/$$subdir" \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ + am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ @@ -654,11 +741,13 @@ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$(top_distdir)" distdir="$(distdir)" \ dist-hook - -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ + -test -n "$(am__skip_mode_fix)" \ + || find "$(distdir)" -type d ! -perm -755 \ + -exec chmod u+rwx,go+rx {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ - || chmod -R a+r $(distdir) + || chmod -R a+r "$(distdir)" dist-gzip: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) @@ -671,6 +760,10 @@ tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma $(am__remove_distdir) +dist-xz: distdir + tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz + $(am__remove_distdir) + dist-tarZ: distdir tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__remove_distdir) @@ -694,15 +787,17 @@ distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ - GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ + GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ - bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ + bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lzma*) \ - unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\ + lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\ + *.tar.xz*) \ + xz -dc $(distdir).tar.xz | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ - GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ + GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac @@ -710,9 +805,11 @@ mkdir $(distdir)/_build mkdir $(distdir)/_inst chmod a-w $(distdir) + test -d $(distdir)/_build || exit 0; \ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ - && cd $(distdir)/_build \ + && am__cwd=`pwd` \ + && $(am__cd) $(distdir)/_build \ && ../configure --srcdir=.. --prefix="$$dc_install_base" \ $(DISTCHECK_CONFIGURE_FLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) \ @@ -734,13 +831,15 @@ && rm -rf "$$dc_destdir" \ && $(MAKE) $(AM_MAKEFLAGS) dist \ && rm -rf $(DIST_ARCHIVES) \ - && $(MAKE) $(AM_MAKEFLAGS) distcleancheck + && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ + && cd "$$am__cwd" \ + || exit 1 $(am__remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' distuninstallcheck: - @cd $(distuninstallcheck_dir) \ + @$(am__cd) '$(distuninstallcheck_dir)' \ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "$(DESTDIR)"; then \ @@ -785,6 +884,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) maintainer-clean-generic: @@ -805,6 +905,8 @@ html: html-recursive +html-am: + info: info-recursive info-am: @@ -814,18 +916,28 @@ install-dvi: install-dvi-recursive +install-dvi-am: + install-exec-am: install-html: install-html-recursive +install-html-am: + install-info: install-info-recursive +install-info-am: + install-man: install-man1 install-pdf: install-pdf-recursive +install-pdf-am: + install-ps: install-ps-recursive +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-recursive @@ -851,20 +963,20 @@ uninstall-man: uninstall-man1 -.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ - install-strip +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \ + ctags-recursive install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am am--refresh check check-am clean clean-generic \ ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \ - dist-hook 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-desktopDATA install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-iconDATA install-info install-info-am install-man \ - install-man1 install-pdf install-pdf-am install-ps \ + dist-hook dist-lzma dist-shar dist-tarZ dist-xz 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-desktopDATA install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-iconDATA install-info install-info-am \ + install-man install-man1 install-pdf install-pdf-am install-ps \ install-ps-am install-readmeDATA install-strip installcheck \ installcheck-am installdirs installdirs-am maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \ @@ -922,6 +1034,7 @@ dist-hook: geeqie.spec cp $(top_builddir)/geeqie.spec $(distdir) + # 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: diff -Nru geeqie-1.0/NEWS geeqie-1.1/NEWS --- geeqie-1.0/NEWS 2010-02-17 21:21:23.000000000 +0000 +++ geeqie-1.1/NEWS 2012-08-12 20:13:40.000000000 +0000 @@ -1,8 +1,17 @@ +Geeqie 1.1 +========== -This is a snapshot of a wiki page, from the time of release. For current version -of the page look at http://geeqie.wiki.sourceforge.net/new_features +- support for stereoscopic images + - input: side-by-side (JPS) and MPO format + - output: single image, anaglyph, SBS, mirror, SBS half size (3DTV) -================================================================================ +- custom tiff loader - better handling of large tiff files + +- rewritten file grouping + + +Geeqie 1.0 +========== Comparing images side-to-side diff -Nru geeqie-1.0/README geeqie-1.1/README --- geeqie-1.0/README 2010-02-17 21:21:23.000000000 +0000 +++ geeqie-1.1/README 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ ################################################################### -## Geeqie 1.0 ## +## Geeqie 1.1 ## ## ## -## Copyright (C) 2008 - 2010 The Geeqie Team ## +## Copyright (C) 2008 - 2012 The Geeqie Team ## ## Copyright (C) 1999 - 2006 John Ellis. ## ## ## ## Use at your own risk! ## @@ -17,8 +17,8 @@ Geeqie projects goal is to move the development forward and also integrate the existing patches. -Geeqie is currently in beta state. All planed features for 1.0 are implemented, -but there are bugs. Please report any crash or odd behavior to the bugtracker: +Geeqie is currently considered stable. +Please report any crash or odd behavior to the bugtracker: https://sourceforge.net/tracker/?group_id=222125&atid=1054680 For more info see: @@ -104,6 +104,11 @@ - Comparison of images to find duplicates by name, size, date, dimensions, or image content similarity. - EXIF support. + + Geeqie 1.1: + - support for stereoscopic images + - input: side-by-side (JPS) and MPO format + - output: single image, anaglyph, SBS, mirror, SBS half size (3DTV) ======== Documentation (brief) [section:documentation] diff -Nru geeqie-1.0/aclocal.m4 geeqie-1.1/aclocal.m4 --- geeqie-1.0/aclocal.m4 2010-02-17 21:21:43.000000000 +0000 +++ geeqie-1.1/aclocal.m4 2012-08-12 20:14:05.000000000 +0000 @@ -1,7 +1,7 @@ -# generated automatically by aclocal 1.10.1 -*- Autoconf -*- +# generated automatically by aclocal 1.11.1 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, -# 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -13,8 +13,8 @@ m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -m4_if(AC_AUTOCONF_VERSION, [2.63],, -[m4_warning([this file was generated for autoconf 2.63. +m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],, +[m4_warning([this file was generated for autoconf 2.68. 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'.])]) @@ -112,15 +112,14 @@ int main () { - int major, minor, micro; + unsigned int major, minor, micro; char *tmp_version; - int ignored; - ignored = system ("touch conf.glibtest"); + fclose (fopen ("conf.glibtest", "w")); /* HP/UX 9 (%@#!) writes to sscanf strings */ tmp_version = g_strdup("$min_glib_version"); - if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { + if (sscanf(tmp_version, "%u.%u.%u", &major, &minor, µ) != 3) { printf("%s, bad version string\n", "$min_glib_version"); exit(1); } @@ -159,9 +158,9 @@ } else { - printf("\n*** An old version of GLIB (%d.%d.%d) was found.\n", + printf("\n*** An old version of GLIB (%u.%u.%u) was found.\n", glib_major_version, glib_minor_version, glib_micro_version); - printf("*** You need a version of GLIB newer than %d.%d.%d. The latest version of\n", + printf("*** You need a version of GLIB newer than %u.%u.%u. The latest version of\n", major, minor, micro); printf("*** GLIB is always available from ftp://ftp.gtk.org.\n"); printf("***\n"); @@ -473,6 +472,10 @@ [CATOBJEXT=.mo DATADIRNAME=lib]) ;; + *-*-openbsd*) + CATOBJEXT=.mo + DATADIRNAME=share + ;; *) CATOBJEXT=.mo DATADIRNAME=lib @@ -514,7 +517,7 @@ 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. + dnl in configure.ac. for lang in $ALL_LINGUAS; do GMOFILES="$GMOFILES $lang.gmo" POFILES="$POFILES $lang.po" @@ -587,6 +590,18 @@ 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 @@ -631,7 +646,7 @@ dnl dnl Now the definitions that aclocal will find dnl -ifdef(glib_configure_in,[],[ +ifdef(glib_configure_ac,[],[ AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)]) AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)]) ])dnl @@ -740,7 +755,7 @@ int major, minor, micro; char *tmp_version; - system ("touch conf.gtktest"); + fclose (fopen ("conf.gtktest", "w")); /* HP/UX 9 (%@#!) writes to sscanf strings */ tmp_version = g_strdup("$min_gtk_version"); @@ -1001,7 +1016,7 @@ 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 The following CONFIG_COMMANDS should be executed at the very end dnl of config.status. AC_CONFIG_COMMANDS_PRE([ AC_CONFIG_COMMANDS([$1/stamp-it], [ @@ -1044,8 +1059,9 @@ # AC_DEFUN([AC_PROG_INTLTOOL], ...) -# nls.m4 serial 3 (gettext-0.15) -dnl Copyright (C) 1995-2003, 2005-2006 Free Software Foundation, Inc. +# nls.m4 serial 5 (gettext-0.18) +dnl Copyright (C) 1995-2003, 2005-2006, 2008-2010 Free Software Foundation, +dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -1063,20 +1079,21 @@ dnl Ulrich Drepper , 1995-2000. dnl Bruno Haible , 2000-2003. -AC_PREREQ(2.50) +AC_PREREQ([2.50]) AC_DEFUN([AM_NLS], [ AC_MSG_CHECKING([whether NLS is requested]) dnl Default is enabled NLS - AC_ARG_ENABLE(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) + AC_MSG_RESULT([$USE_NLS]) + AC_SUBST([USE_NLS]) ]) # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- +# serial 1 (pkg-config-0.24) # # Copyright © 2004 Scott James Remnant . # @@ -1104,7 +1121,10 @@ 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 +AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) +AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) +AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) + if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) fi @@ -1117,7 +1137,6 @@ AC_MSG_RESULT([no]) PKG_CONFIG="" fi - fi[]dnl ])# PKG_PROG_PKG_CONFIG @@ -1126,21 +1145,20 @@ # 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 +# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) +# only at the first occurence in configure.ac, so if the first place +# it's called might be skipped (such as if it is within an "if", you +# have 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_default([$2], [:]) m4_ifvaln([$3], [else $3])dnl fi]) - # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) # --------------------------------------------- m4_define([_PKG_CONFIG], @@ -1193,6 +1211,7 @@ See the pkg-config man page for more details.]) if test $pkg_failed = yes; then + AC_MSG_RESULT([no]) _PKG_SHORT_ERRORS_SUPPORTED if test $_pkg_short_errors_supported = yes; then $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1` @@ -1202,7 +1221,7 @@ # 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 + m4_default([$4], [AC_MSG_ERROR( [Package requirements ($2) were not met: $$1_PKG_ERRORS @@ -1210,29 +1229,28 @@ Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. -_PKG_TEXT -])], - [AC_MSG_RESULT([no]) - $4]) +_PKG_TEXT])[]dnl + ]) elif test $pkg_failed = untried; then - ifelse([$4], , [AC_MSG_FAILURE(dnl + AC_MSG_RESULT([no]) + m4_default([$4], [AC_MSG_FAILURE( [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]) +To get pkg-config, see .])[]dnl + ]) else $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS $1[]_LIBS=$pkg_cv_[]$1[]_LIBS AC_MSG_RESULT([yes]) - ifelse([$3], , :, [$3]) + $3 fi[]dnl ])# PKG_CHECK_MODULES -# Copyright (C) 2002, 2003, 2005, 2006, 2007 Free Software Foundation, Inc. +# 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, @@ -1244,10 +1262,10 @@ # 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' +[am__api_version='1.11' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.10.1], [], +m4_if([$1], [1.11.1], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -1261,12 +1279,12 @@ # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. -# This function is AC_REQUIREd by AC_INIT_AUTOMAKE. +# This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.10.1])dnl +[AM_AUTOMAKE_VERSION([1.11.1])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -_AM_AUTOCONF_VERSION(AC_AUTOCONF_VERSION)]) +_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- @@ -1323,14 +1341,14 @@ # AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006 +# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 8 +# serial 9 # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- @@ -1343,6 +1361,7 @@ AC_SUBST([$1_FALSE])dnl _AM_SUBST_NOTMAKE([$1_TRUE])dnl _AM_SUBST_NOTMAKE([$1_FALSE])dnl +m4_define([_AM_COND_VALUE_$1], [$2])dnl if $2; then $1_TRUE= $1_FALSE='#' @@ -1356,14 +1375,14 @@ Usually this means the macro was only invoked conditionally.]]) fi])]) -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 9 +# serial 10 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, @@ -1420,6 +1439,16 @@ if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` fi + am__universal=false + m4_case([$1], [CC], + [case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac], + [CXX], + [case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac]) + for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and @@ -1437,7 +1466,17 @@ done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + # We check with `-c' and `-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle `-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs + am__obj=sub/conftest.${OBJEXT-o} + am__minus_obj="-o $am__obj" case $depmode in + gcc) + # This depmode causes a compiler race in universal mode. + test "$am__universal" = false || continue + ;; nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested @@ -1447,19 +1486,23 @@ break fi ;; + msvisualcpp | msvcmsys) + # This compiler won't grok `-c -o', but also, the minuso test has + # not run yet. These depmodes are late enough in the game, and + # so weak that their functioning should not be impacted. + am__obj=conftest.${OBJEXT-o} + am__minus_obj= + ;; none) break ;; esac - # 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} \ + source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ + $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && + grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message @@ -1516,57 +1559,68 @@ # Generate code to set up dependency tracking. -*- Autoconf -*- -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +# 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 3 +#serial 5 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], -[for mf in $CONFIG_FILES; 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" +[{ + # 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 -done +} ])# _AM_OUTPUT_DEPENDENCY_COMMANDS @@ -1586,13 +1640,13 @@ # 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. +# 2005, 2006, 2008, 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 13 +# serial 16 # This macro actually does too much. Some checks are only needed if # your package does certain things. But this isn't really a big deal. @@ -1609,7 +1663,7 @@ # 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 +[AC_PREREQ([2.62])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl @@ -1660,8 +1714,8 @@ 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_INSTALL_SH])dnl +AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl AC_REQUIRE([AM_PROG_MKDIR_P])dnl # We need awk for the "check" target. The system "awk" is bad on # some platforms. @@ -1669,24 +1723,37 @@ 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([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 + [_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 + [_AM_DEPENDENCIES(CXX)], + [define([AC_PROG_CXX], + defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl AC_PROVIDE_IFELSE([AC_PROG_OBJC], - [_AM_DEPENDENCIES(OBJC)], - [define([AC_PROG_OBJC], - defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl + [_AM_DEPENDENCIES(OBJC)], + [define([AC_PROG_OBJC], + defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl ]) +_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl +dnl The `parallel-tests' driver may need to know about EXEEXT, so add the +dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro +dnl is hooked onto _AC_COMPILER_EXEEXT early, see below. +AC_CONFIG_COMMANDS_PRE(dnl +[m4_provide_if([_AM_COMPILER_EXEEXT], + [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl ]) +dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not +dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further +dnl mangled by Autoconf and run in a shell conditional statement. +m4_define([_AC_COMPILER_EXEEXT], +m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) + # When config.status generates a header, we must update the stamp-h file. # This file resides in the same directory as the config header @@ -1709,7 +1776,7 @@ done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) -# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1720,7 +1787,14 @@ # 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"} +if test x"${install_sh}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; + *) + install_sh="\${SHELL} $am_aux_dir/install-sh" + esac +fi AC_SUBST(install_sh)]) # Copyright (C) 2003, 2005 Free Software Foundation, Inc. @@ -1747,27 +1821,38 @@ # Add --enable-maintainer-mode option to configure. -*- Autoconf -*- # From Jim Meyering -# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005 +# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 4 +# serial 5 +# AM_MAINTAINER_MODE([DEFAULT-MODE]) +# ---------------------------------- +# Control maintainer-specific portions of Makefiles. +# Default is to disable them, unless `enable' is passed literally. +# For symmetry, `disable' may be passed as well. Anyway, the user +# can override the default with the --enable/--disable switch. AC_DEFUN([AM_MAINTAINER_MODE], -[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) - dnl maintainer-mode is disabled by default - AC_ARG_ENABLE(maintainer-mode, -[ --enable-maintainer-mode enable make rules and dependencies not useful +[m4_case(m4_default([$1], [disable]), + [enable], [m4_define([am_maintainer_other], [disable])], + [disable], [m4_define([am_maintainer_other], [enable])], + [m4_define([am_maintainer_other], [enable]) + m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])]) +AC_MSG_CHECKING([whether to am_maintainer_other maintainer-specific portions of Makefiles]) + dnl maintainer-mode's default is 'disable' unless 'enable' is passed + AC_ARG_ENABLE([maintainer-mode], +[ --][am_maintainer_other][-maintainer-mode am_maintainer_other make rules and dependencies not useful (and sometimes confusing) to the casual installer], - USE_MAINTAINER_MODE=$enableval, - USE_MAINTAINER_MODE=no) + [USE_MAINTAINER_MODE=$enableval], + [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes])) AC_MSG_RESULT([$USE_MAINTAINER_MODE]) - AM_CONDITIONAL(MAINTAINER_MODE, [test $USE_MAINTAINER_MODE = yes]) + AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes]) MAINT=$MAINTAINER_MODE_TRUE - AC_SUBST(MAINT)dnl + AC_SUBST([MAINT])dnl ] ) @@ -1775,13 +1860,13 @@ # Check to see how 'make' treats includes. -*- Autoconf -*- -# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. +# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 3 +# serial 4 # AM_MAKE_INCLUDE() # ----------------- @@ -1790,7 +1875,7 @@ [am_make=${MAKE-make} cat > confinc << 'END' am__doit: - @echo done + @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. @@ -1800,24 +1885,24 @@ _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 +# Ignore all kinds of additional output from `make'. +case `$am_make -s -f confmf 2> /dev/null` in #( +*the\ am__doit\ target*) + am__include=include + am__quote= + _am_result=GNU + ;; +esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf - if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then - am__include=.include - am__quote="\"" - _am_result=BSD - fi + case `$am_make -s -f confmf 2> /dev/null` in #( + *the\ am__doit\ target*) + am__include=.include + am__quote="\"" + _am_result=BSD + ;; + esac fi AC_SUBST([am__include]) AC_SUBST([am__quote]) @@ -1827,14 +1912,14 @@ # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005 +# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 5 +# serial 6 # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ @@ -1851,7 +1936,14 @@ 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" +if test x"${MISSING+set}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; + *) + MISSING="\${SHELL} $am_aux_dir/missing" ;; + esac +fi # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " @@ -1889,13 +1981,13 @@ # Helper functions for option handling. -*- Autoconf -*- -# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. +# 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 3 +# serial 4 # _AM_MANGLE_OPTION(NAME) # ----------------------- @@ -1912,7 +2004,7 @@ # ---------------------------------- # OPTIONS is a space-separated list of Automake options. AC_DEFUN([_AM_SET_OPTIONS], -[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) +[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) # ------------------------------------------- @@ -1922,14 +2014,14 @@ # Check to make sure that the build environment is sane. -*- Autoconf -*- -# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005 +# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 4 +# serial 5 # AM_SANITY_CHECK # --------------- @@ -1938,16 +2030,29 @@ # Just in case sleep 1 echo timestamp > conftest.file +# Reject unsafe characters in $srcdir or the absolute working directory +# name. Accept space and tab only in the latter. +am_lf=' +' +case `pwd` in + *[[\\\"\#\$\&\'\`$am_lf]]*) + AC_MSG_ERROR([unsafe absolute working directory name]);; +esac +case $srcdir in + *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) + AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);; +esac + # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( - set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null` + 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` + set X `ls -t "$srcdir/configure" conftest.file` fi rm -f conftest.file if test "$[*]" != "X $srcdir/configure conftest.file" \ @@ -2000,18 +2105,25 @@ INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) -# Copyright (C) 2006 Free Software Foundation, Inc. +# Copyright (C) 2006, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 2 + # _AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. # This macro is traced by Automake. AC_DEFUN([_AM_SUBST_NOTMAKE]) +# AM_SUBST_NOTMAKE(VARIABLE) +# --------------------------- +# Public sister of _AM_SUBST_NOTMAKE. +AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) + # Check how to create a tarball. -*- Autoconf -*- # Copyright (C) 2004, 2005 Free Software Foundation, Inc. diff -Nru geeqie-1.0/auxdir/depcomp geeqie-1.1/auxdir/depcomp --- geeqie-1.0/auxdir/depcomp 2008-12-03 10:04:52.000000000 +0000 +++ geeqie-1.1/auxdir/depcomp 2011-10-22 19:13:32.000000000 +0000 @@ -1,10 +1,10 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2007-03-29.01 +scriptversion=2009-04-28.21; # UTC -# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007 Free Software -# Foundation, Inc. +# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free +# Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -17,9 +17,7 @@ # 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. +# along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -87,6 +85,15 @@ depmode=dashmstdout fi +cygpath_u="cygpath -u -f -" +if test "$depmode" = msvcmsys; then + # This is just like msvisualcpp but w/o cygpath translation. + # Just convert the backslash-escaped backslashes to single forward + # slashes to satisfy depend.m4 + cygpath_u="sed s,\\\\\\\\,/,g" + depmode=msvisualcpp +fi + case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what @@ -192,14 +199,14 @@ ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ tr ' -' ' ' >> $depfile - echo >> $depfile +' ' ' >> "$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 + >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile @@ -328,7 +335,12 @@ 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" + sed -ne '2,${ + s/^ *// + s/ \\*$// + s/$/:/ + p + }' "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi @@ -404,7 +416,7 @@ # Remove the call to Libtool. if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do + while test "X$1" != 'X--mode=compile'; do shift done shift @@ -455,32 +467,39 @@ "$@" || exit $? # Remove any Libtool call if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do + while test "X$1" != 'X--mode=compile'; do shift done shift fi # X makedepend shift - cleared=no - for arg in "$@"; do + cleared=no eat=no + for arg + do case $cleared in no) set ""; shift cleared=yes ;; esac + if test $eat = yes; then + eat=no + continue + fi case "$arg" in -D*|-I*) set fnord "$@" "$arg"; shift ;; # Strip any option that makedepend may not understand. Remove # the object too, otherwise makedepend will parse it as a source file. + -arch) + eat=yes ;; -*|$object) ;; *) set fnord "$@" "$arg"; shift ;; esac done - obj_suffix="`echo $object | sed 's/^.*\././'`" + obj_suffix=`echo "$object" | sed 's/^.*\././'` touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" @@ -500,7 +519,7 @@ # Remove the call to Libtool. if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do + while test "X$1" != 'X--mode=compile'; do shift done shift @@ -538,13 +557,27 @@ 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. + # always write the preprocessed file to stdout. "$@" || exit $? + + # Remove the call to Libtool. + if test "$libtool" = yes; then + while test "X$1" != 'X--mode=compile'; do + shift + done + shift + fi + IFS=" " for arg do case "$arg" in + -o) + shift + ;; + $object) + shift + ;; "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") set fnord "$@" shift @@ -557,16 +590,23 @@ ;; esac done - "$@" -E | - sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" + "$@" -E 2>/dev/null | + sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" - . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" + sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" echo " " >> "$depfile" - . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" + sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; +msvcmsys) + # This case exists only to let depend.m4 do its work. It works by + # looking at the text of this script. This case will never be run, + # since it is checked for above. + exit 1 + ;; + none) exec "$@" ;; @@ -585,5 +625,6 @@ # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" # End: diff -Nru geeqie-1.0/auxdir/install-sh geeqie-1.1/auxdir/install-sh --- geeqie-1.0/auxdir/install-sh 2008-12-03 10:04:52.000000000 +0000 +++ geeqie-1.1/auxdir/install-sh 2011-10-22 19:13:32.000000000 +0000 @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2006-12-25.00 +scriptversion=2009-04-28.21; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -515,5 +515,6 @@ # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" # End: diff -Nru geeqie-1.0/auxdir/missing geeqie-1.1/auxdir/missing --- geeqie-1.0/auxdir/missing 2008-12-03 10:04:52.000000000 +0000 +++ geeqie-1.1/auxdir/missing 2011-10-22 19:13:32.000000000 +0000 @@ -1,10 +1,10 @@ #! /bin/sh # Common stub for a few missing GNU programs while installing. -scriptversion=2006-05-10.23 +scriptversion=2009-04-28.21; # UTC -# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006 -# Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, +# 2008, 2009 Free Software Foundation, Inc. # Originally by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify @@ -18,9 +18,7 @@ # 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. +# along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -89,6 +87,9 @@ tar try tar, gnutar, gtar, then tar without non-portable flags yacc create \`y.tab.[ch]', if possible, from existing .[ch] +Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and +\`g' are ignored when checking the name. + Send bug reports to ." exit $? ;; @@ -106,15 +107,22 @@ esac +# normalize program name to check for. +program=`echo "$1" | sed ' + s/^gnu-//; t + s/^gnu//; t + s/^g//; t'` + # Now exit if we have it, but it failed. Also exit now if we # don't have it and --version was passed (most likely to detect -# the program). +# the program). This is about non-GNU programs, so use $1 not +# $program. case $1 in - lex|yacc) + lex*|yacc*) # Not GNU programs, they don't have --version. ;; - tar) + tar*) if test -n "$run"; then echo 1>&2 "ERROR: \`tar' requires --run" exit 1 @@ -138,7 +146,7 @@ # If it does not exist, or fails to run (possibly an outdated version), # try to emulate it. -case $1 in +case $program in aclocal*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if @@ -148,7 +156,7 @@ touch aclocal.m4 ;; - autoconf) + autoconf*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`${configure_ac}'. You might want to install the @@ -157,7 +165,7 @@ touch configure ;; - autoheader) + autoheader*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acconfig.h' or \`${configure_ac}'. You might want @@ -187,7 +195,7 @@ while read f; do touch "$f"; done ;; - autom4te) + autom4te*) echo 1>&2 "\ WARNING: \`$1' is needed, but is $msg. You might have modified some files without having the @@ -210,7 +218,7 @@ fi ;; - bison|yacc) + 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 @@ -240,7 +248,7 @@ fi ;; - lex|flex) + 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 @@ -263,7 +271,7 @@ fi ;; - help2man) + 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 @@ -277,11 +285,11 @@ else test -z "$file" || exec >$file echo ".ab help2man is required to generate this page" - exit 1 + exit $? fi ;; - makeinfo) + 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 @@ -310,7 +318,7 @@ touch $file ;; - tar) + tar*) shift # We have already tried tar in the generic part. @@ -363,5 +371,6 @@ # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" # End: diff -Nru geeqie-1.0/auxdir/mkinstalldirs geeqie-1.1/auxdir/mkinstalldirs --- geeqie-1.0/auxdir/mkinstalldirs 2010-02-17 21:21:42.000000000 +0000 +++ geeqie-1.1/auxdir/mkinstalldirs 2012-08-12 20:14:04.000000000 +0000 @@ -1,7 +1,7 @@ #! /bin/sh # mkinstalldirs --- make directory hierarchy -scriptversion=2006-05-11.19 +scriptversion=2009-04-28.21; # UTC # Original author: Noah Friedman # Created: 1993-05-16 @@ -157,5 +157,6 @@ # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" # End: diff -Nru geeqie-1.0/config.h.in geeqie-1.1/config.h.in --- geeqie-1.0/config.h.in 2010-02-17 21:21:44.000000000 +0000 +++ geeqie-1.1/config.h.in 2012-08-12 20:14:06.000000000 +0000 @@ -8,7 +8,7 @@ /* * This file is a part of Geeqie project (http://geeqie.sourceforge.net/). - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * 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 @@ -76,6 +76,9 @@ /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H +/* define to enable use of custom jpeg loader */ +#undef HAVE_JPEG + /* define to enable use of color profiles with lcms */ #undef HAVE_LCMS @@ -118,6 +121,9 @@ /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TYPES_H +/* define to enable use of custom tiff loader */ +#undef HAVE_TIFF + /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H @@ -139,6 +145,9 @@ /* Define to the one symbol short name of this package. */ #undef PACKAGE_TARNAME +/* Define to the home page for this package. */ +#undef PACKAGE_URL + /* Define to the version of this package. */ #undef PACKAGE_VERSION @@ -151,4 +160,10 @@ /* Version number of package */ #undef VERSION +/* Number of bits in a file offset, on hosts where this is settable. */ +#undef _FILE_OFFSET_BITS + +/* Define for large files, on AIX-style hosts. */ +#undef _LARGE_FILES + #endif diff -Nru geeqie-1.0/configure geeqie-1.1/configure --- geeqie-1.0/configure 2010-02-17 21:21:46.000000000 +0000 +++ geeqie-1.1/configure 2012-08-12 20:14:08.000000000 +0000 @@ -1,20 +1,24 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for geeqie 1.0. +# Generated by GNU Autoconf 2.68 for geeqie 1.1. # # 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. +# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 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. ## -## --------------------- ## +## -------------------- ## +## 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 +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 @@ -22,23 +26,15 @@ alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; + 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 @@ -46,7 +42,13 @@ 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 +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else @@ -57,7 +59,7 @@ as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; - case $arg in + case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; @@ -80,13 +82,6 @@ } 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 @@ -96,15 +91,16 @@ IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. -case $0 in +as_myself= +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 + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done IFS=$as_save_IFS ;; @@ -116,12 +112,16 @@ 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; } + 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 +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' @@ -133,330 +133,307 @@ 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 - +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH if test "x$CONFIG_SHELL" = x; then - if (eval ":") 2>/dev/null; then - as_have_required=yes + as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST else - as_have_required=no + case \`(set -o) 2>/dev/null\` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac 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 -} +" + as_required="as_fn_return () { (exit \$1); } +as_fn_success () { as_fn_return 0; } +as_fn_failure () { as_fn_return 1; } +as_fn_ret_success () { return 0; } +as_fn_ret_failure () { return 1; } exitcode=0 -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 - : +as_fn_success || { exitcode=1; echo as_fn_success failed.; } +as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } +as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } +as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } +if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : + +else + exitcode=1; echo positional parameters were not saved. +fi +test x\$exitcode = x0 || exit 1" + as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO + as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO + eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && + test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 +test \$(( 1 + 1 )) = 2 || exit 1" + if (eval "$as_required") 2>/dev/null; then : + as_have_required=yes else - exitcode=1 - echo positional parameters were not saved. + as_have_required=no fi + if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : -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 + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +as_found=false for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - case $as_dir in + as_found=: + case $as_dir in #( /*) for as_base in sh bash ksh sh5; do - as_candidate_shells="$as_candidate_shells $as_dir/$as_base" + # Try only shells that exist, to save several forks. + as_shell=$as_dir/$as_base + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : + CONFIG_SHELL=$as_shell as_have_required=yes + if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : + break 2 +fi +fi done;; esac + as_found=false done +$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : + CONFIG_SHELL=$SHELL as_have_required=yes +fi; } IFS=$as_save_IFS - 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. + if test "x$CONFIG_SHELL" != x; then : + # We cannot yet assume a decent shell, so we have to provide a + # neutralization value for shells without unset; and this also + # works around shells that cannot unset nonexistent variables. + # Preserve -v and -x to the replacement shell. + BASH_ENV=/dev/null + ENV=/dev/null + (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV + export CONFIG_SHELL + case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; + esac + exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"} 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 + if test x$as_have_required = xno; then : + $as_echo "$0: This script requires a shell more modern than all" + $as_echo "$0: the shells that I found on your system." + if test x${ZSH_VERSION+set} = xset ; then + $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" + $as_echo "$0: be upgraded to zsh 4.3.4 or later." + else + $as_echo "$0: Please tell bug-autoconf@gnu.org and +$0: geeqie-devel@lists.sourceforge.net about your system, +$0: including any error possibly output before this +$0: message. Then install a modern shell, or manually run +$0: the script under such a shell if you do have one." + fi + exit 1 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 +SHELL=${CONFIG_SHELL-/bin/sh} +export SHELL +# Unset more variables known to interfere with behavior of common tools. +CLICOLOR_FORCE= GREP_OPTIONS= +unset CLICOLOR_FORCE GREP_OPTIONS +## --------------------- ## +## M4sh Shell Functions. ## +## --------------------- ## +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ - 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 - + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" -fi -fi +} # as_fn_mkdir_p +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith -(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 -} +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error -exitcode=0 -if as_func_success; then - : +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr else - exitcode=1 - echo as_func_success failed. -fi - -if as_func_failure; then - exitcode=1 - echo as_func_failure succeeded. + as_expr=false fi -if as_func_ret_success; then - : +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename else - exitcode=1 - echo as_func_ret_success failed. -fi - -if as_func_ret_failure; then - exitcode=1 - echo as_func_ret_failure succeeded. + as_basename=false fi -if ( set x; as_func_ret_success y && test x = \"\$1\" ); then - : +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname else - exitcode=1 - echo positional parameters were not saved. + as_dirname=false 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_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits - as_lineno_1=$LINENO - as_lineno_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. :-) + as_lineno_1=$LINENO as_lineno_1a=$LINENO + as_lineno_2=$LINENO as_lineno_2a=$LINENO + eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && + test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { + # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) sed -n ' p /[$]LINENO/= @@ -473,8 +450,7 @@ 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; }; } + { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the @@ -484,29 +460,18 @@ 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 +case `echo -n x` in #((((( -n*) - case `echo 'x\c'` in + case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; 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 @@ -536,7 +501,7 @@ rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then - as_mkdir_p=: + as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false @@ -555,10 +520,10 @@ if test -d "$1"; then test -d "$1/."; else - case $1 in + case $1 in #( -*)set "./$1";; esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( ???[sx]*):;;*)false;;esac;fi '\'' sh ' @@ -572,11 +537,11 @@ as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - -exec 7<&0 &1 +test -n "$DJDIR" || exec 7<&0 &1 # Name of the host. -# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, +# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` @@ -591,14 +556,14 @@ subdirs= MFLAGS= MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='geeqie' PACKAGE_TARNAME='geeqie' -PACKAGE_VERSION='1.0' -PACKAGE_STRING='geeqie 1.0' +PACKAGE_VERSION='1.1' +PACKAGE_STRING='geeqie 1.1' PACKAGE_BUGREPORT='geeqie-devel@lists.sourceforge.net' +PACKAGE_URL='' ac_unique_file="src/main.c" # Factoring default headers for most tests. @@ -637,7 +602,9 @@ # include #endif" -ac_subst_vars='LTLIBOBJS +ac_subst_vars='am__EXEEXT_FALSE +am__EXEEXT_TRUE +LTLIBOBJS LIBOBJS HAVE_LIBCHAMPLAIN_GTK_FALSE HAVE_LIBCHAMPLAIN_GTK_TRUE @@ -645,6 +612,7 @@ LIBCHAMPLAIN_GTK_CFLAGS LIBCHAMPLAIN_LIBS LIBCHAMPLAIN_CFLAGS +MKINSTALLDIRS POSUB POFILES PO_IN_DATADIR_FALSE @@ -661,6 +629,14 @@ HAVE_EXIV2_TRUE EXIV2_LIBS EXIV2_CFLAGS +TIFF_LIBS +TIFF_CFLAGS +HAVE_TIFF_FALSE +HAVE_TIFF_TRUE +JPEG_LIBS +JPEG_CFLAGS +HAVE_JPEG_FALSE +HAVE_JPEG_TRUE HAVE_LCMS_FALSE HAVE_LCMS_TRUE LCMS_LIBS @@ -681,6 +657,8 @@ GLIB_GENMARSHAL GLIB_LIBS GLIB_CFLAGS +PKG_CONFIG_LIBDIR +PKG_CONFIG_PATH PKG_CONFIG HAVE_WINDRES_FALSE HAVE_WINDRES_TRUE @@ -855,6 +833,7 @@ program_transform_name prefix exec_prefix +PACKAGE_URL PACKAGE_BUGREPORT PACKAGE_STRING PACKAGE_VERSION @@ -881,6 +860,7 @@ enable_debug_log enable_deprecated enable_dependency_tracking +enable_largefile enable_nls enable_glibtest enable_gtktest @@ -890,6 +870,8 @@ enable_lirc with_lirc_prefix enable_lcms +enable_jpeg +enable_tiff enable_exiv2 enable_gps ' @@ -907,6 +889,8 @@ CCC CPP PKG_CONFIG +PKG_CONFIG_PATH +PKG_CONFIG_LIBDIR GTHREAD_CFLAGS GTHREAD_LIBS LCMS_CFLAGS @@ -979,8 +963,9 @@ fi case $ac_option in - *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; - *) ac_optarg=yes ;; + *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; + *=) ac_optarg= ;; + *) ac_optarg=yes ;; esac # Accept the important Cygnus configure options, so we can diagnose typos. @@ -1025,8 +1010,7 @@ 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; }; } + as_fn_error $? "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -1052,8 +1036,7 @@ 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; }; } + as_fn_error $? "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -1257,8 +1240,7 @@ 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; }; } + as_fn_error $? "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -1274,8 +1256,7 @@ 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; }; } + as_fn_error $? "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -1305,17 +1286,17 @@ | --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; }; } + -*) as_fn_error $? "unrecognized option: \`$ac_option' +Try \`$0 --help' for more information" ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { $as_echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } + case $ac_envvar in #( + '' | [0-9]* | *[!_$as_cr_alnum]* ) + as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; + esac eval $ac_envvar=\$ac_optarg export $ac_envvar ;; @@ -1324,7 +1305,7 @@ $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} + : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" ;; esac @@ -1332,15 +1313,13 @@ 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; }; } + as_fn_error $? "missing argument to $ac_option" 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; }; } ;; + fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; esac fi @@ -1363,8 +1342,7 @@ [\\/$]* | ?:[\\/]* ) 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; }; } + as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" done # There might be people who depend on the old broken behavior: `$host' @@ -1378,8 +1356,8 @@ 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 + $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 @@ -1394,11 +1372,9 @@ 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; }; } + as_fn_error $? "working directory cannot be determined" 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; }; } + as_fn_error $? "pwd does not report name of working directory" # Find the source files, if location was not specified. @@ -1437,13 +1413,11 @@ 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; }; } + as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" fi ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" ac_abs_confdir=`( - cd "$srcdir" && test -r "./$ac_unique_file" || { $as_echo "$as_me: error: $ac_msg" >&2 - { (exit 1); exit 1; }; } + cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" pwd)` # When building in place, set srcdir=. if test "$ac_abs_confdir" = "$ac_pwd"; then @@ -1469,7 +1443,7 @@ # 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 geeqie 1.0 to adapt to many kinds of systems. +\`configure' configures geeqie 1.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1483,7 +1457,7 @@ --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 + -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 @@ -1535,7 +1509,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of geeqie 1.0:";; + short | recursive ) echo "Configuration of geeqie 1.1:";; esac cat <<\_ACEOF @@ -1570,12 +1544,15 @@ [default=yes] --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors + --disable-largefile omit support for large files --disable-nls do not use Native Language Support --disable-glibtest do not try to compile and run a test GLIB program --disable-gtktest do not try to compile and run a test GTK+ program --disable-threads disable thread support --disable-lirc disable lirc support (auto) --disable-lcms disable lcms support + --disable-jpeg disable direct jpeg support + --disable-tiff disable direct tiff support --disable-exiv2 disable exiv2 support --enable-gps enable GPS map support - experimental @@ -1594,12 +1571,16 @@ 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 + CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if you have headers in a nonstandard directory CXX C++ compiler command CXXFLAGS C++ compiler flags CPP C preprocessor PKG_CONFIG path to pkg-config utility + PKG_CONFIG_PATH + directories to add to pkg-config's search path + PKG_CONFIG_LIBDIR + path overriding pkg-config's built-in search path GTHREAD_CFLAGS C compiler flags for GTHREAD, overriding pkg-config GTHREAD_LIBS @@ -1618,88 +1599,481 @@ LIBCHAMPLAIN_GTK_LIBS linker flags for LIBCHAMPLAIN_GTK, 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. +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 +geeqie configure 1.1 +generated by GNU Autoconf 2.68 + +Copyright (C) 2010 Free Software Foundation, Inc. +This configure script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it. +_ACEOF + exit +fi + +## ------------------------ ## +## Autoconf initialization. ## +## ------------------------ ## + +# ac_fn_c_try_compile LINENO +# -------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_compile + +# ac_fn_c_try_link LINENO +# ----------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_link + +# ac_fn_cxx_try_compile LINENO +# ---------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_cxx_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_cxx_try_compile + +# ac_fn_c_try_cpp LINENO +# ---------------------- +# Try to preprocess conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_cpp () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } > conftest.i && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_cpp + +# ac_fn_c_try_run LINENO +# ---------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes +# that executables *can* be run. +ac_fn_c_try_run () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then : + ac_retval=0 +else + $as_echo "$as_me: program exited with status $ac_status" >&5 + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=$ac_status +fi + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_run + +# ac_fn_c_check_func LINENO FUNC VAR +# ---------------------------------- +# Tests whether FUNC exists, setting the cache variable VAR accordingly +ac_fn_c_check_func () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Define $2 to an innocuous variant, in case declares $2. + For example, HP-UX 11i declares gettimeofday. */ +#define $2 innocuous_$2 + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $2 (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $2 -Report bugs to . +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $2 (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$2 || defined __stub___$2 +choke me +#endif + +int +main () +{ +return $2 (); + ; + return 0; +} _ACEOF -ac_status=$? +if ac_fn_c_try_link "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno -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=. +} # ac_fn_c_check_func -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 +# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists, giving a warning if it cannot be compiled using +# the include files in INCLUDES and setting the cache variable VAR +# accordingly. +ac_fn_c_check_header_mongrel () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if eval \${$3+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 +$as_echo_n "checking $2 usability... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_header_compiler=yes +else + ac_header_compiler=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } -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 +# Is the header present? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 +$as_echo_n "checking $2 presence... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include <$2> +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + ac_header_preproc=yes +else + ac_header_preproc=no +fi +rm -f conftest.err conftest.i conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } - 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 +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( + yes:no: ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} + ;; + no:yes:* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} +( $as_echo "## ------------------------------------------------- ## +## Report this to geeqie-devel@lists.sourceforge.net ## +## ------------------------------------------------- ##" + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=\$ac_header_compiler" +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno -test -n "$ac_init_help" && exit $ac_status -if $ac_init_version; then - cat <<\_ACEOF -geeqie configure 1.0 -generated by GNU Autoconf 2.63 +} # ac_fn_c_check_header_mongrel -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. +# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists and can be compiled using the include files in +# INCLUDES, setting the cache variable VAR accordingly. +ac_fn_c_check_header_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> _ACEOF - exit +if ac_fn_c_try_compile "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_header_compile 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 geeqie $as_me 1.0, which was -generated by GNU Autoconf 2.63. Invocation command line was +It was created by geeqie $as_me 1.1, which was +generated by GNU Autoconf 2.68. Invocation command line was $ $0 $@ @@ -1735,8 +2109,8 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - $as_echo "PATH: $as_dir" -done + $as_echo "PATH: $as_dir" + done IFS=$as_save_IFS } >&5 @@ -1773,9 +2147,9 @@ ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in - 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; + 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; 2) - ac_configure_args1="$ac_configure_args1 '$ac_arg'" + as_fn_append ac_configure_args1 " '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else @@ -1791,13 +2165,13 @@ -* ) ac_must_keep_next=true ;; esac fi - ac_configure_args="$ac_configure_args '$ac_arg'" + as_fn_append 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; } +{ ac_configure_args0=; unset ac_configure_args0;} +{ ac_configure_args1=; unset ac_configure_args1;} # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there @@ -1809,11 +2183,9 @@ { echo - cat <<\_ASBOX -## ---------------- ## + $as_echo "## ---------------- ## ## Cache variables. ## -## ---------------- ## -_ASBOX +## ---------------- ##" echo # The following way of writing the cache mishandles newlines in values, ( @@ -1822,13 +2194,13 @@ 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 + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) $as_unset $ac_var ;; + *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done @@ -1847,11 +2219,9 @@ ) echo - cat <<\_ASBOX -## ----------------- ## + $as_echo "## ----------------- ## ## Output variables. ## -## ----------------- ## -_ASBOX +## ----------------- ##" echo for ac_var in $ac_subst_vars do @@ -1864,11 +2234,9 @@ echo if test -n "$ac_subst_files"; then - cat <<\_ASBOX -## ------------------- ## + $as_echo "## ------------------- ## ## File substitutions. ## -## ------------------- ## -_ASBOX +## ------------------- ##" echo for ac_var in $ac_subst_files do @@ -1882,11 +2250,9 @@ fi if test -s confdefs.h; then - cat <<\_ASBOX -## ----------- ## + $as_echo "## ----------- ## ## confdefs.h. ## -## ----------- ## -_ASBOX +## ----------- ##" echo cat confdefs.h echo @@ -1900,46 +2266,53 @@ exit $exit_status ' 0 for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal + trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -f -r conftest* confdefs.h +$as_echo "/* confdefs.h */" > confdefs.h + # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF +cat >>confdefs.h <<_ACEOF +#define PACKAGE_URL "$PACKAGE_URL" +_ACEOF + # Let the site file select an alternate cache file if it wants to. # Prefer an explicitly selected file to automatically selected ones. ac_site_file1=NONE ac_site_file2=NONE if test -n "$CONFIG_SITE"; then - ac_site_file1=$CONFIG_SITE + # We do not want a PATH search for config.site. + case $CONFIG_SITE in #(( + -*) ac_site_file1=./$CONFIG_SITE;; + */*) ac_site_file1=$CONFIG_SITE;; + *) ac_site_file1=./$CONFIG_SITE;; + esac elif test "x$prefix" != xNONE; then ac_site_file1=$prefix/share/config.site ac_site_file2=$prefix/etc/config.site @@ -1950,19 +2323,23 @@ 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 + if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 $as_echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" + . "$ac_site_file" \ + || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "failed to load site script $ac_site_file +See \`config.log' for more details" "$LINENO" 5; } 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 + # Some versions of bash will fail to source /dev/null (special files + # actually), so we avoid doing that. DJGPP emulates it as a regular file. + if test /dev/null != "$cache_file" && test -f "$cache_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 $as_echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . "$cache_file";; @@ -1970,7 +2347,7 @@ esac fi else - { $as_echo "$as_me:$LINENO: creating cache $cache_file" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 $as_echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi @@ -1985,11 +2362,11 @@ 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:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) - { $as_echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; @@ -1999,17 +2376,17 @@ 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:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} ac_cache_corrupted=: else - { $as_echo "$as_me:$LINENO: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} eval $ac_var=\$ac_old_val fi - { $as_echo "$as_me:$LINENO: former value: \`$ac_old_val'" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 $as_echo "$as_me: former value: \`$ac_old_val'" >&2;} - { $as_echo "$as_me:$LINENO: current value: \`$ac_new_val'" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 $as_echo "$as_me: current value: \`$ac_new_val'" >&2;} fi;; esac @@ -2021,43 +2398,20 @@ esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; + *) as_fn_append 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:${as_lineno-$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:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} - { { $as_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; }; } + as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 fi - - - - - - - - - - - - - - - - - - - - - - - - +## -------------------- ## +## Main body of script. ## +## -------------------- ## ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -2087,9 +2441,7 @@ fi done if test -z "$ac_aux_dir"; then - { { $as_echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in auxdir \"$srcdir\"/auxdir" >&5 -$as_echo "$as_me: error: cannot find install-sh or install.sh in auxdir \"$srcdir\"/auxdir" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "cannot find install-sh, install.sh, or shtool in auxdir \"$srcdir\"/auxdir" "$LINENO" 5 fi # These three variables are undocumented and unsupported, @@ -2101,7 +2453,7 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. -am__api_version='1.10' +am__api_version='1.11' # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or @@ -2117,10 +2469,10 @@ # 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 "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 $as_echo_n "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then -if test "${ac_cv_path_install+set}" = set; then +if ${ac_cv_path_install+:} false; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -2128,11 +2480,11 @@ 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/* | \ + # 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\\/* | \ + ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. @@ -2169,7 +2521,7 @@ ;; esac -done + done IFS=$as_save_IFS rm -rf conftest.one conftest.two conftest.dir @@ -2185,7 +2537,7 @@ INSTALL=$ac_install_sh fi fi -{ $as_echo "$as_me:$LINENO: result: $INSTALL" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 $as_echo "$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. @@ -2196,21 +2548,34 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' -{ $as_echo "$as_me:$LINENO: checking whether build environment is sane" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 $as_echo_n "checking whether build environment is sane... " >&6; } # Just in case sleep 1 echo timestamp > conftest.file +# Reject unsafe characters in $srcdir or the absolute working directory +# name. Accept space and tab only in the latter. +am_lf=' +' +case `pwd` in + *[\\\"\#\$\&\'\`$am_lf]*) + as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;; +esac +case $srcdir in + *[\\\"\#\$\&\'\`$am_lf\ \ ]*) + as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;; +esac + # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( - set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null` + 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` + set X `ls -t "$srcdir/configure" conftest.file` fi rm -f conftest.file if test "$*" != "X $srcdir/configure conftest.file" \ @@ -2220,11 +2585,8 @@ # 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; }; } + as_fn_error $? "ls -t appears to fail. Make sure there is not a broken +alias in your environment" "$LINENO" 5 fi test "$2" = conftest.file @@ -2233,13 +2595,10 @@ # 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; }; } + as_fn_error $? "newly created file is older than distributed files! +Check your system clock" "$LINENO" 5 fi -{ $as_echo "$as_me:$LINENO: result: yes" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } test "$program_prefix" != NONE && program_transform_name="s&^&$program_prefix&;$program_transform_name" @@ -2254,20 +2613,136 @@ # 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" +if test x"${MISSING+set}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; + *) + MISSING="\${SHELL} $am_aux_dir/missing" ;; + esac +fi # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else - am_missing_run= - { $as_echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5 -$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} + am_missing_run= + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5 +$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} +fi + +if test x"${install_sh}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; + *) + install_sh="\${SHELL} $am_aux_dir/install-sh" + esac +fi + +# Installed binaries are usually stripped using `strip' when the user +# run `make install-strip'. However `strip' might not be the right +# tool to use in cross-compilation environments, therefore Automake +# will honor the `STRIP' environment variable to overrule this program. +if test "$cross_compiling" != no; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. +set dummy ${ac_tool_prefix}strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +STRIP=$ac_cv_prog_STRIP +if test -n "$STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 +$as_echo "$STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_STRIP"; then + ac_ct_STRIP=$STRIP + # Extract the first word of "strip", so it can be a program name with args. +set dummy strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_STRIP"; then + ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_STRIP="strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP +if test -n "$ac_ct_STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 +$as_echo "$ac_ct_STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi +else + STRIP="$ac_cv_prog_STRIP" +fi + fi +INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" -{ $as_echo "$as_me:$LINENO: checking for a thread-safe mkdir -p" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 $as_echo_n "checking for a thread-safe mkdir -p... " >&6; } if test -z "$MKDIR_P"; then - if test "${ac_cv_path_mkdir+set}" = set; then + if ${ac_cv_path_mkdir+:} false; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -2275,7 +2750,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_prog in mkdir gmkdir; do + 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 #( @@ -2287,11 +2762,12 @@ esac done done -done + done IFS=$as_save_IFS fi + test -d ./--version && rmdir ./--version if test "${ac_cv_path_mkdir+set}" = set; then MKDIR_P="$ac_cv_path_mkdir -p" else @@ -2299,11 +2775,10 @@ # 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 "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 $as_echo "$MKDIR_P" >&6; } mkdir_p="$MKDIR_P" @@ -2316,9 +2791,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_AWK+set}" = set; then +if ${ac_cv_prog_AWK+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$AWK"; then @@ -2329,24 +2804,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -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 "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 $as_echo "$AWK" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2354,11 +2829,11 @@ test -n "$AWK" && break done -{ $as_echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` -if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then +if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : $as_echo_n "(cached) " >&6 else cat >conftest.make <<\_ACEOF @@ -2366,7 +2841,7 @@ all: @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF -# GNU make sometimes prints "make[1]: Entering...", which would confuse us. +# 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;; @@ -2376,11 +2851,11 @@ 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 "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } SET_MAKE= else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi @@ -2400,9 +2875,7 @@ 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; }; } + as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 fi fi @@ -2418,7 +2891,7 @@ # Define the identity of the package. PACKAGE='geeqie' - VERSION='1.0' + VERSION='1.1' cat >>confdefs.h <<_ACEOF @@ -2446,108 +2919,6 @@ 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. @@ -2565,16 +2936,17 @@ # Only for developers -{ $as_echo "$as_me:$LINENO: checking whether to enable maintainer-specific portions of Makefiles" >&5 + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 $as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } # Check whether --enable-maintainer-mode was given. -if test "${enable_maintainer_mode+set}" = set; then +if test "${enable_maintainer_mode+set}" = set; then : enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval else USE_MAINTAINER_MODE=no fi - { $as_echo "$as_me:$LINENO: result: $USE_MAINTAINER_MODE" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 $as_echo "$USE_MAINTAINER_MODE" >&6; } if test $USE_MAINTAINER_MODE = yes; then MAINTAINER_MODE_TRUE= @@ -2589,7 +2961,7 @@ # Check whether --enable-developer was given. -if test "${enable_developer+set}" = set; then +if test "${enable_developer+set}" = set; then : enableval=$enable_developer; __IS_DEVELOPER=yes @@ -2640,7 +3012,7 @@ # Check whether --enable-doxygen-doc was given. -if test "${enable_doxygen_doc+set}" = set; then +if test "${enable_doxygen_doc+set}" = set; then : enableval=$enable_doxygen_doc; case "$enableval" in #( @@ -2654,9 +3026,7 @@ ;; #( *) - { { $as_echo "$as_me:$LINENO: error: invalid value '$enableval' given to doxygen-doc" >&5 -$as_echo "$as_me: error: invalid value '$enableval' given to doxygen-doc" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "invalid value '$enableval' given to doxygen-doc" "$LINENO" 5 ;; esac @@ -2673,9 +3043,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}doxygen", so it can be a program name with args. set dummy ${ac_tool_prefix}doxygen; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_DX_DOXYGEN+set}" = set; then +if ${ac_cv_path_DX_DOXYGEN+:} false; then : $as_echo_n "(cached) " >&6 else case $DX_DOXYGEN in @@ -2688,14 +3058,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_DOXYGEN="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -2703,10 +3073,10 @@ fi DX_DOXYGEN=$ac_cv_path_DX_DOXYGEN if test -n "$DX_DOXYGEN"; then - { $as_echo "$as_me:$LINENO: result: $DX_DOXYGEN" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DX_DOXYGEN" >&5 $as_echo "$DX_DOXYGEN" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2716,9 +3086,9 @@ ac_pt_DX_DOXYGEN=$DX_DOXYGEN # Extract the first word of "doxygen", so it can be a program name with args. set dummy doxygen; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ac_pt_DX_DOXYGEN+set}" = set; then +if ${ac_cv_path_ac_pt_DX_DOXYGEN+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_DX_DOXYGEN in @@ -2731,14 +3101,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_DOXYGEN="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -2746,10 +3116,10 @@ fi ac_pt_DX_DOXYGEN=$ac_cv_path_ac_pt_DX_DOXYGEN if test -n "$ac_pt_DX_DOXYGEN"; then - { $as_echo "$as_me:$LINENO: result: $ac_pt_DX_DOXYGEN" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_DX_DOXYGEN" >&5 $as_echo "$ac_pt_DX_DOXYGEN" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2758,7 +3128,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -2769,7 +3139,7 @@ fi if test "$DX_FLAG_doc$DX_DOXYGEN" = 1; then - { $as_echo "$as_me:$LINENO: WARNING: doxygen not found - will not generate any doxygen documentation" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: doxygen not found - will not generate any doxygen documentation" >&5 $as_echo "$as_me: WARNING: doxygen not found - will not generate any doxygen documentation" >&2;} DX_FLAG_doc=0 @@ -2779,9 +3149,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}perl", so it can be a program name with args. set dummy ${ac_tool_prefix}perl; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_DX_PERL+set}" = set; then +if ${ac_cv_path_DX_PERL+:} false; then : $as_echo_n "(cached) " >&6 else case $DX_PERL in @@ -2794,14 +3164,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_PERL="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -2809,10 +3179,10 @@ fi DX_PERL=$ac_cv_path_DX_PERL if test -n "$DX_PERL"; then - { $as_echo "$as_me:$LINENO: result: $DX_PERL" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DX_PERL" >&5 $as_echo "$DX_PERL" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2822,9 +3192,9 @@ ac_pt_DX_PERL=$DX_PERL # 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ac_pt_DX_PERL+set}" = set; then +if ${ac_cv_path_ac_pt_DX_PERL+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_DX_PERL in @@ -2837,14 +3207,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_PERL="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -2852,10 +3222,10 @@ fi ac_pt_DX_PERL=$ac_cv_path_ac_pt_DX_PERL if test -n "$ac_pt_DX_PERL"; then - { $as_echo "$as_me:$LINENO: result: $ac_pt_DX_PERL" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_DX_PERL" >&5 $as_echo "$ac_pt_DX_PERL" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2864,7 +3234,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -2875,7 +3245,7 @@ fi if test "$DX_FLAG_doc$DX_PERL" = 1; then - { $as_echo "$as_me:$LINENO: WARNING: perl not found - will not generate any doxygen documentation" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: perl not found - will not generate any doxygen documentation" >&5 $as_echo "$as_me: WARNING: perl not found - will not generate any doxygen documentation" >&2;} DX_FLAG_doc=0 @@ -2915,7 +3285,7 @@ # Check whether --enable-doxygen-dot was given. -if test "${enable_doxygen_dot+set}" = set; then +if test "${enable_doxygen_dot+set}" = set; then : enableval=$enable_doxygen_dot; case "$enableval" in #( @@ -2924,9 +3294,7 @@ test "$DX_FLAG_doc" = "1" \ -|| { { $as_echo "$as_me:$LINENO: error: doxygen-dot requires doxygen-dot" >&5 -$as_echo "$as_me: error: doxygen-dot requires doxygen-dot" >&2;} - { (exit 1); exit 1; }; } +|| as_fn_error $? "doxygen-dot requires doxygen-dot" "$LINENO" 5 ;; #( n|N|no|No|NO) @@ -2934,9 +3302,7 @@ ;; #( *) - { { $as_echo "$as_me:$LINENO: error: invalid value '$enableval' given to doxygen-dot" >&5 -$as_echo "$as_me: error: invalid value '$enableval' given to doxygen-dot" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "invalid value '$enableval' given to doxygen-dot" "$LINENO" 5 ;; esac @@ -2956,9 +3322,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}dot", so it can be a program name with args. set dummy ${ac_tool_prefix}dot; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_DX_DOT+set}" = set; then +if ${ac_cv_path_DX_DOT+:} false; then : $as_echo_n "(cached) " >&6 else case $DX_DOT in @@ -2971,14 +3337,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_DOT="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -2986,10 +3352,10 @@ fi DX_DOT=$ac_cv_path_DX_DOT if test -n "$DX_DOT"; then - { $as_echo "$as_me:$LINENO: result: $DX_DOT" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DX_DOT" >&5 $as_echo "$DX_DOT" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2999,9 +3365,9 @@ ac_pt_DX_DOT=$DX_DOT # Extract the first word of "dot", so it can be a program name with args. set dummy dot; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ac_pt_DX_DOT+set}" = set; then +if ${ac_cv_path_ac_pt_DX_DOT+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_DX_DOT in @@ -3014,14 +3380,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_DOT="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -3029,10 +3395,10 @@ fi ac_pt_DX_DOT=$ac_cv_path_ac_pt_DX_DOT if test -n "$ac_pt_DX_DOT"; then - { $as_echo "$as_me:$LINENO: result: $ac_pt_DX_DOT" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_DX_DOT" >&5 $as_echo "$ac_pt_DX_DOT" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -3041,7 +3407,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -3052,7 +3418,7 @@ fi if test "$DX_FLAG_dot$DX_DOT" = 1; then - { $as_echo "$as_me:$LINENO: WARNING: dot not found - will not generate graphics for doxygen documentation" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: dot not found - will not generate graphics for doxygen documentation" >&5 $as_echo "$as_me: WARNING: dot not found - will not generate graphics for doxygen documentation" >&2;} DX_FLAG_dot=0 @@ -3095,7 +3461,7 @@ # Check whether --enable-doxygen-man was given. -if test "${enable_doxygen_man+set}" = set; then +if test "${enable_doxygen_man+set}" = set; then : enableval=$enable_doxygen_man; case "$enableval" in #( @@ -3104,9 +3470,7 @@ test "$DX_FLAG_doc" = "1" \ -|| { { $as_echo "$as_me:$LINENO: error: doxygen-man requires doxygen-man" >&5 -$as_echo "$as_me: error: doxygen-man requires doxygen-man" >&2;} - { (exit 1); exit 1; }; } +|| as_fn_error $? "doxygen-man requires doxygen-man" "$LINENO" 5 ;; #( n|N|no|No|NO) @@ -3114,9 +3478,7 @@ ;; #( *) - { { $as_echo "$as_me:$LINENO: error: invalid value '$enableval' given to doxygen-man" >&5 -$as_echo "$as_me: error: invalid value '$enableval' given to doxygen-man" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "invalid value '$enableval' given to doxygen-man" "$LINENO" 5 ;; esac @@ -3168,7 +3530,7 @@ # Check whether --enable-doxygen-rtf was given. -if test "${enable_doxygen_rtf+set}" = set; then +if test "${enable_doxygen_rtf+set}" = set; then : enableval=$enable_doxygen_rtf; case "$enableval" in #( @@ -3177,9 +3539,7 @@ test "$DX_FLAG_doc" = "1" \ -|| { { $as_echo "$as_me:$LINENO: error: doxygen-rtf requires doxygen-rtf" >&5 -$as_echo "$as_me: error: doxygen-rtf requires doxygen-rtf" >&2;} - { (exit 1); exit 1; }; } +|| as_fn_error $? "doxygen-rtf requires doxygen-rtf" "$LINENO" 5 ;; #( n|N|no|No|NO) @@ -3187,9 +3547,7 @@ ;; #( *) - { { $as_echo "$as_me:$LINENO: error: invalid value '$enableval' given to doxygen-rtf" >&5 -$as_echo "$as_me: error: invalid value '$enableval' given to doxygen-rtf" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "invalid value '$enableval' given to doxygen-rtf" "$LINENO" 5 ;; esac @@ -3241,7 +3599,7 @@ # Check whether --enable-doxygen-xml was given. -if test "${enable_doxygen_xml+set}" = set; then +if test "${enable_doxygen_xml+set}" = set; then : enableval=$enable_doxygen_xml; case "$enableval" in #( @@ -3250,9 +3608,7 @@ test "$DX_FLAG_doc" = "1" \ -|| { { $as_echo "$as_me:$LINENO: error: doxygen-xml requires doxygen-xml" >&5 -$as_echo "$as_me: error: doxygen-xml requires doxygen-xml" >&2;} - { (exit 1); exit 1; }; } +|| as_fn_error $? "doxygen-xml requires doxygen-xml" "$LINENO" 5 ;; #( n|N|no|No|NO) @@ -3260,9 +3616,7 @@ ;; #( *) - { { $as_echo "$as_me:$LINENO: error: invalid value '$enableval' given to doxygen-xml" >&5 -$as_echo "$as_me: error: invalid value '$enableval' given to doxygen-xml" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "invalid value '$enableval' given to doxygen-xml" "$LINENO" 5 ;; esac @@ -3314,7 +3668,7 @@ # Check whether --enable-doxygen-chm was given. -if test "${enable_doxygen_chm+set}" = set; then +if test "${enable_doxygen_chm+set}" = set; then : enableval=$enable_doxygen_chm; case "$enableval" in #( @@ -3323,9 +3677,7 @@ test "$DX_FLAG_doc" = "1" \ -|| { { $as_echo "$as_me:$LINENO: error: doxygen-chm requires doxygen-chm" >&5 -$as_echo "$as_me: error: doxygen-chm requires doxygen-chm" >&2;} - { (exit 1); exit 1; }; } +|| as_fn_error $? "doxygen-chm requires doxygen-chm" "$LINENO" 5 ;; #( n|N|no|No|NO) @@ -3333,9 +3685,7 @@ ;; #( *) - { { $as_echo "$as_me:$LINENO: error: invalid value '$enableval' given to doxygen-chm" >&5 -$as_echo "$as_me: error: invalid value '$enableval' given to doxygen-chm" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "invalid value '$enableval' given to doxygen-chm" "$LINENO" 5 ;; esac @@ -3355,9 +3705,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}hhc", so it can be a program name with args. set dummy ${ac_tool_prefix}hhc; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_DX_HHC+set}" = set; then +if ${ac_cv_path_DX_HHC+:} false; then : $as_echo_n "(cached) " >&6 else case $DX_HHC in @@ -3370,14 +3720,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_HHC="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -3385,10 +3735,10 @@ fi DX_HHC=$ac_cv_path_DX_HHC if test -n "$DX_HHC"; then - { $as_echo "$as_me:$LINENO: result: $DX_HHC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DX_HHC" >&5 $as_echo "$DX_HHC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -3398,9 +3748,9 @@ ac_pt_DX_HHC=$DX_HHC # Extract the first word of "hhc", so it can be a program name with args. set dummy hhc; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ac_pt_DX_HHC+set}" = set; then +if ${ac_cv_path_ac_pt_DX_HHC+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_DX_HHC in @@ -3413,14 +3763,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_HHC="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -3428,10 +3778,10 @@ fi ac_pt_DX_HHC=$ac_cv_path_ac_pt_DX_HHC if test -n "$ac_pt_DX_HHC"; then - { $as_echo "$as_me:$LINENO: result: $ac_pt_DX_HHC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_DX_HHC" >&5 $as_echo "$ac_pt_DX_HHC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -3440,7 +3790,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -3451,7 +3801,7 @@ fi if test "$DX_FLAG_chm$DX_HHC" = 1; then - { $as_echo "$as_me:$LINENO: WARNING: hhc not found - will not generate doxygen compressed HTML help documentation" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: hhc not found - will not generate doxygen compressed HTML help documentation" >&5 $as_echo "$as_me: WARNING: hhc not found - will not generate doxygen compressed HTML help documentation" >&2;} DX_FLAG_chm=0 @@ -3496,7 +3846,7 @@ # Check whether --enable-doxygen-chi was given. -if test "${enable_doxygen_chi+set}" = set; then +if test "${enable_doxygen_chi+set}" = set; then : enableval=$enable_doxygen_chi; case "$enableval" in #( @@ -3505,9 +3855,7 @@ test "$DX_FLAG_chm" = "1" \ -|| { { $as_echo "$as_me:$LINENO: error: doxygen-chi requires doxygen-chi" >&5 -$as_echo "$as_me: error: doxygen-chi requires doxygen-chi" >&2;} - { (exit 1); exit 1; }; } +|| as_fn_error $? "doxygen-chi requires doxygen-chi" "$LINENO" 5 ;; #( n|N|no|No|NO) @@ -3515,9 +3863,7 @@ ;; #( *) - { { $as_echo "$as_me:$LINENO: error: invalid value '$enableval' given to doxygen-chi" >&5 -$as_echo "$as_me: error: invalid value '$enableval' given to doxygen-chi" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "invalid value '$enableval' given to doxygen-chi" "$LINENO" 5 ;; esac @@ -3569,7 +3915,7 @@ # Check whether --enable-doxygen-html was given. -if test "${enable_doxygen_html+set}" = set; then +if test "${enable_doxygen_html+set}" = set; then : enableval=$enable_doxygen_html; case "$enableval" in #( @@ -3578,14 +3924,10 @@ test "$DX_FLAG_doc" = "1" \ -|| { { $as_echo "$as_me:$LINENO: error: doxygen-html requires doxygen-html" >&5 -$as_echo "$as_me: error: doxygen-html requires doxygen-html" >&2;} - { (exit 1); exit 1; }; } +|| as_fn_error $? "doxygen-html requires doxygen-html" "$LINENO" 5 test "$DX_FLAG_chm" = "0" \ -|| { { $as_echo "$as_me:$LINENO: error: doxygen-html contradicts doxygen-html" >&5 -$as_echo "$as_me: error: doxygen-html contradicts doxygen-html" >&2;} - { (exit 1); exit 1; }; } +|| as_fn_error $? "doxygen-html contradicts doxygen-html" "$LINENO" 5 ;; #( n|N|no|No|NO) @@ -3593,9 +3935,7 @@ ;; #( *) - { { $as_echo "$as_me:$LINENO: error: invalid value '$enableval' given to doxygen-html" >&5 -$as_echo "$as_me: error: invalid value '$enableval' given to doxygen-html" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "invalid value '$enableval' given to doxygen-html" "$LINENO" 5 ;; esac @@ -3650,7 +3990,7 @@ # Check whether --enable-doxygen-ps was given. -if test "${enable_doxygen_ps+set}" = set; then +if test "${enable_doxygen_ps+set}" = set; then : enableval=$enable_doxygen_ps; case "$enableval" in #( @@ -3659,9 +3999,7 @@ test "$DX_FLAG_doc" = "1" \ -|| { { $as_echo "$as_me:$LINENO: error: doxygen-ps requires doxygen-ps" >&5 -$as_echo "$as_me: error: doxygen-ps requires doxygen-ps" >&2;} - { (exit 1); exit 1; }; } +|| as_fn_error $? "doxygen-ps requires doxygen-ps" "$LINENO" 5 ;; #( n|N|no|No|NO) @@ -3669,9 +4007,7 @@ ;; #( *) - { { $as_echo "$as_me:$LINENO: error: invalid value '$enableval' given to doxygen-ps" >&5 -$as_echo "$as_me: error: invalid value '$enableval' given to doxygen-ps" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "invalid value '$enableval' given to doxygen-ps" "$LINENO" 5 ;; esac @@ -3691,9 +4027,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}latex", so it can be a program name with args. set dummy ${ac_tool_prefix}latex; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_DX_LATEX+set}" = set; then +if ${ac_cv_path_DX_LATEX+:} false; then : $as_echo_n "(cached) " >&6 else case $DX_LATEX in @@ -3706,14 +4042,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_LATEX="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -3721,10 +4057,10 @@ fi DX_LATEX=$ac_cv_path_DX_LATEX if test -n "$DX_LATEX"; then - { $as_echo "$as_me:$LINENO: result: $DX_LATEX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DX_LATEX" >&5 $as_echo "$DX_LATEX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -3734,9 +4070,9 @@ ac_pt_DX_LATEX=$DX_LATEX # Extract the first word of "latex", so it can be a program name with args. set dummy latex; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ac_pt_DX_LATEX+set}" = set; then +if ${ac_cv_path_ac_pt_DX_LATEX+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_DX_LATEX in @@ -3749,14 +4085,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_LATEX="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -3764,10 +4100,10 @@ fi ac_pt_DX_LATEX=$ac_cv_path_ac_pt_DX_LATEX if test -n "$ac_pt_DX_LATEX"; then - { $as_echo "$as_me:$LINENO: result: $ac_pt_DX_LATEX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_DX_LATEX" >&5 $as_echo "$ac_pt_DX_LATEX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -3776,7 +4112,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -3787,7 +4123,7 @@ fi if test "$DX_FLAG_ps$DX_LATEX" = 1; then - { $as_echo "$as_me:$LINENO: WARNING: latex not found - will not generate doxygen PostScript documentation" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: latex not found - will not generate doxygen PostScript documentation" >&5 $as_echo "$as_me: WARNING: latex not found - will not generate doxygen PostScript documentation" >&2;} DX_FLAG_ps=0 @@ -3797,9 +4133,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}makeindex", so it can be a program name with args. set dummy ${ac_tool_prefix}makeindex; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_DX_MAKEINDEX+set}" = set; then +if ${ac_cv_path_DX_MAKEINDEX+:} false; then : $as_echo_n "(cached) " >&6 else case $DX_MAKEINDEX in @@ -3812,14 +4148,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_MAKEINDEX="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -3827,10 +4163,10 @@ fi DX_MAKEINDEX=$ac_cv_path_DX_MAKEINDEX if test -n "$DX_MAKEINDEX"; then - { $as_echo "$as_me:$LINENO: result: $DX_MAKEINDEX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DX_MAKEINDEX" >&5 $as_echo "$DX_MAKEINDEX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -3840,9 +4176,9 @@ ac_pt_DX_MAKEINDEX=$DX_MAKEINDEX # Extract the first word of "makeindex", so it can be a program name with args. set dummy makeindex; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ac_pt_DX_MAKEINDEX+set}" = set; then +if ${ac_cv_path_ac_pt_DX_MAKEINDEX+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_DX_MAKEINDEX in @@ -3855,14 +4191,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_MAKEINDEX="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -3870,10 +4206,10 @@ fi ac_pt_DX_MAKEINDEX=$ac_cv_path_ac_pt_DX_MAKEINDEX if test -n "$ac_pt_DX_MAKEINDEX"; then - { $as_echo "$as_me:$LINENO: result: $ac_pt_DX_MAKEINDEX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_DX_MAKEINDEX" >&5 $as_echo "$ac_pt_DX_MAKEINDEX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -3882,7 +4218,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -3893,7 +4229,7 @@ fi if test "$DX_FLAG_ps$DX_MAKEINDEX" = 1; then - { $as_echo "$as_me:$LINENO: WARNING: makeindex not found - will not generate doxygen PostScript documentation" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: makeindex not found - will not generate doxygen PostScript documentation" >&5 $as_echo "$as_me: WARNING: makeindex not found - will not generate doxygen PostScript documentation" >&2;} DX_FLAG_ps=0 @@ -3903,9 +4239,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}dvips", so it can be a program name with args. set dummy ${ac_tool_prefix}dvips; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_DX_DVIPS+set}" = set; then +if ${ac_cv_path_DX_DVIPS+:} false; then : $as_echo_n "(cached) " >&6 else case $DX_DVIPS in @@ -3918,14 +4254,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_DVIPS="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -3933,10 +4269,10 @@ fi DX_DVIPS=$ac_cv_path_DX_DVIPS if test -n "$DX_DVIPS"; then - { $as_echo "$as_me:$LINENO: result: $DX_DVIPS" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DX_DVIPS" >&5 $as_echo "$DX_DVIPS" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -3946,9 +4282,9 @@ ac_pt_DX_DVIPS=$DX_DVIPS # Extract the first word of "dvips", so it can be a program name with args. set dummy dvips; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ac_pt_DX_DVIPS+set}" = set; then +if ${ac_cv_path_ac_pt_DX_DVIPS+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_DX_DVIPS in @@ -3961,14 +4297,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_DVIPS="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -3976,10 +4312,10 @@ fi ac_pt_DX_DVIPS=$ac_cv_path_ac_pt_DX_DVIPS if test -n "$ac_pt_DX_DVIPS"; then - { $as_echo "$as_me:$LINENO: result: $ac_pt_DX_DVIPS" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_DX_DVIPS" >&5 $as_echo "$ac_pt_DX_DVIPS" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -3988,7 +4324,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -3999,7 +4335,7 @@ fi if test "$DX_FLAG_ps$DX_DVIPS" = 1; then - { $as_echo "$as_me:$LINENO: WARNING: dvips not found - will not generate doxygen PostScript documentation" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: dvips not found - will not generate doxygen PostScript documentation" >&5 $as_echo "$as_me: WARNING: dvips not found - will not generate doxygen PostScript documentation" >&2;} DX_FLAG_ps=0 @@ -4009,9 +4345,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}egrep", so it can be a program name with args. set dummy ${ac_tool_prefix}egrep; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_DX_EGREP+set}" = set; then +if ${ac_cv_path_DX_EGREP+:} false; then : $as_echo_n "(cached) " >&6 else case $DX_EGREP in @@ -4024,14 +4360,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_EGREP="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -4039,10 +4375,10 @@ fi DX_EGREP=$ac_cv_path_DX_EGREP if test -n "$DX_EGREP"; then - { $as_echo "$as_me:$LINENO: result: $DX_EGREP" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DX_EGREP" >&5 $as_echo "$DX_EGREP" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4052,9 +4388,9 @@ ac_pt_DX_EGREP=$DX_EGREP # Extract the first word of "egrep", so it can be a program name with args. set dummy egrep; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ac_pt_DX_EGREP+set}" = set; then +if ${ac_cv_path_ac_pt_DX_EGREP+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_DX_EGREP in @@ -4067,14 +4403,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_EGREP="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -4082,10 +4418,10 @@ fi ac_pt_DX_EGREP=$ac_cv_path_ac_pt_DX_EGREP if test -n "$ac_pt_DX_EGREP"; then - { $as_echo "$as_me:$LINENO: result: $ac_pt_DX_EGREP" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_DX_EGREP" >&5 $as_echo "$ac_pt_DX_EGREP" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4094,7 +4430,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -4105,7 +4441,7 @@ fi if test "$DX_FLAG_ps$DX_EGREP" = 1; then - { $as_echo "$as_me:$LINENO: WARNING: egrep not found - will not generate doxygen PostScript documentation" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: egrep not found - will not generate doxygen PostScript documentation" >&5 $as_echo "$as_me: WARNING: egrep not found - will not generate doxygen PostScript documentation" >&2;} DX_FLAG_ps=0 @@ -4144,7 +4480,7 @@ # Check whether --enable-doxygen-pdf was given. -if test "${enable_doxygen_pdf+set}" = set; then +if test "${enable_doxygen_pdf+set}" = set; then : enableval=$enable_doxygen_pdf; case "$enableval" in #( @@ -4153,9 +4489,7 @@ test "$DX_FLAG_doc" = "1" \ -|| { { $as_echo "$as_me:$LINENO: error: doxygen-pdf requires doxygen-pdf" >&5 -$as_echo "$as_me: error: doxygen-pdf requires doxygen-pdf" >&2;} - { (exit 1); exit 1; }; } +|| as_fn_error $? "doxygen-pdf requires doxygen-pdf" "$LINENO" 5 ;; #( n|N|no|No|NO) @@ -4163,9 +4497,7 @@ ;; #( *) - { { $as_echo "$as_me:$LINENO: error: invalid value '$enableval' given to doxygen-pdf" >&5 -$as_echo "$as_me: error: invalid value '$enableval' given to doxygen-pdf" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "invalid value '$enableval' given to doxygen-pdf" "$LINENO" 5 ;; esac @@ -4185,9 +4517,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pdflatex", so it can be a program name with args. set dummy ${ac_tool_prefix}pdflatex; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_DX_PDFLATEX+set}" = set; then +if ${ac_cv_path_DX_PDFLATEX+:} false; then : $as_echo_n "(cached) " >&6 else case $DX_PDFLATEX in @@ -4200,14 +4532,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_PDFLATEX="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -4215,10 +4547,10 @@ fi DX_PDFLATEX=$ac_cv_path_DX_PDFLATEX if test -n "$DX_PDFLATEX"; then - { $as_echo "$as_me:$LINENO: result: $DX_PDFLATEX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DX_PDFLATEX" >&5 $as_echo "$DX_PDFLATEX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4228,9 +4560,9 @@ ac_pt_DX_PDFLATEX=$DX_PDFLATEX # Extract the first word of "pdflatex", so it can be a program name with args. set dummy pdflatex; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ac_pt_DX_PDFLATEX+set}" = set; then +if ${ac_cv_path_ac_pt_DX_PDFLATEX+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_DX_PDFLATEX in @@ -4243,14 +4575,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_PDFLATEX="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -4258,10 +4590,10 @@ fi ac_pt_DX_PDFLATEX=$ac_cv_path_ac_pt_DX_PDFLATEX if test -n "$ac_pt_DX_PDFLATEX"; then - { $as_echo "$as_me:$LINENO: result: $ac_pt_DX_PDFLATEX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_DX_PDFLATEX" >&5 $as_echo "$ac_pt_DX_PDFLATEX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4270,7 +4602,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -4281,7 +4613,7 @@ fi if test "$DX_FLAG_pdf$DX_PDFLATEX" = 1; then - { $as_echo "$as_me:$LINENO: WARNING: pdflatex not found - will not generate doxygen PDF documentation" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: pdflatex not found - will not generate doxygen PDF documentation" >&5 $as_echo "$as_me: WARNING: pdflatex not found - will not generate doxygen PDF documentation" >&2;} DX_FLAG_pdf=0 @@ -4291,9 +4623,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}makeindex", so it can be a program name with args. set dummy ${ac_tool_prefix}makeindex; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_DX_MAKEINDEX+set}" = set; then +if ${ac_cv_path_DX_MAKEINDEX+:} false; then : $as_echo_n "(cached) " >&6 else case $DX_MAKEINDEX in @@ -4306,14 +4638,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_MAKEINDEX="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -4321,10 +4653,10 @@ fi DX_MAKEINDEX=$ac_cv_path_DX_MAKEINDEX if test -n "$DX_MAKEINDEX"; then - { $as_echo "$as_me:$LINENO: result: $DX_MAKEINDEX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DX_MAKEINDEX" >&5 $as_echo "$DX_MAKEINDEX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4334,9 +4666,9 @@ ac_pt_DX_MAKEINDEX=$DX_MAKEINDEX # Extract the first word of "makeindex", so it can be a program name with args. set dummy makeindex; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ac_pt_DX_MAKEINDEX+set}" = set; then +if ${ac_cv_path_ac_pt_DX_MAKEINDEX+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_DX_MAKEINDEX in @@ -4349,14 +4681,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_MAKEINDEX="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -4364,10 +4696,10 @@ fi ac_pt_DX_MAKEINDEX=$ac_cv_path_ac_pt_DX_MAKEINDEX if test -n "$ac_pt_DX_MAKEINDEX"; then - { $as_echo "$as_me:$LINENO: result: $ac_pt_DX_MAKEINDEX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_DX_MAKEINDEX" >&5 $as_echo "$ac_pt_DX_MAKEINDEX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4376,7 +4708,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -4387,7 +4719,7 @@ fi if test "$DX_FLAG_pdf$DX_MAKEINDEX" = 1; then - { $as_echo "$as_me:$LINENO: WARNING: makeindex not found - will not generate doxygen PDF documentation" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: makeindex not found - will not generate doxygen PDF documentation" >&5 $as_echo "$as_me: WARNING: makeindex not found - will not generate doxygen PDF documentation" >&2;} DX_FLAG_pdf=0 @@ -4397,9 +4729,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}egrep", so it can be a program name with args. set dummy ${ac_tool_prefix}egrep; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_DX_EGREP+set}" = set; then +if ${ac_cv_path_DX_EGREP+:} false; then : $as_echo_n "(cached) " >&6 else case $DX_EGREP in @@ -4412,14 +4744,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_EGREP="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -4427,10 +4759,10 @@ fi DX_EGREP=$ac_cv_path_DX_EGREP if test -n "$DX_EGREP"; then - { $as_echo "$as_me:$LINENO: result: $DX_EGREP" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DX_EGREP" >&5 $as_echo "$DX_EGREP" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4440,9 +4772,9 @@ ac_pt_DX_EGREP=$DX_EGREP # Extract the first word of "egrep", so it can be a program name with args. set dummy egrep; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ac_pt_DX_EGREP+set}" = set; then +if ${ac_cv_path_ac_pt_DX_EGREP+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_DX_EGREP in @@ -4455,14 +4787,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_DX_EGREP="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -4470,10 +4802,10 @@ fi ac_pt_DX_EGREP=$ac_cv_path_ac_pt_DX_EGREP if test -n "$ac_pt_DX_EGREP"; then - { $as_echo "$as_me:$LINENO: result: $ac_pt_DX_EGREP" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_DX_EGREP" >&5 $as_echo "$ac_pt_DX_EGREP" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4482,7 +4814,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -4493,7 +4825,7 @@ fi if test "$DX_FLAG_pdf$DX_EGREP" = 1; then - { $as_echo "$as_me:$LINENO: WARNING: egrep not found - will not generate doxygen PDF documentation" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: egrep not found - will not generate doxygen PDF documentation" >&5 $as_echo "$as_me: WARNING: egrep not found - will not generate doxygen PDF documentation" >&2;} DX_FLAG_pdf=0 @@ -4564,9 +4896,7 @@ ;; #( *) - { { $as_echo "$as_me:$LINENO: error: unknown DOXYGEN_PAPER_SIZE='$DOXYGEN_PAPER_SIZE'" >&5 -$as_echo "$as_me: error: unknown DOXYGEN_PAPER_SIZE='$DOXYGEN_PAPER_SIZE'" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "unknown DOXYGEN_PAPER_SIZE='$DOXYGEN_PAPER_SIZE'" "$LINENO" 5 ;; esac @@ -4589,7 +4919,7 @@ # Check whether --enable-debug-flags was given. -if test "${enable_debug_flags+set}" = set; then +if test "${enable_debug_flags+set}" = set; then : enableval=$enable_debug_flags; else @@ -4604,7 +4934,7 @@ # Check whether --enable-debug-log was given. -if test "${enable_debug_log+set}" = set; then +if test "${enable_debug_log+set}" = set; then : enableval=$enable_debug_log; else enable_debug_log="yes" @@ -4629,9 +4959,7 @@ if test "x${enable_debug_log}" != "xno" then -cat >>confdefs.h <<\_ACEOF -#define DEBUG 1 -_ACEOF +$as_echo "#define DEBUG 1" >>confdefs.h __IS_DEBUG_LOG=yes else @@ -4648,7 +4976,7 @@ # Check whether --enable-deprecated was given. -if test "${enable_deprecated+set}" = set; then +if test "${enable_deprecated+set}" = set; then : enableval=$enable_deprecated; else @@ -4680,44 +5008,44 @@ am_make=${MAKE-make} cat > confinc << 'END' am__doit: - @echo done + @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. -{ $as_echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 $as_echo_n "checking for style of include used by $am_make... " >&6; } am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf -# 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 +# Ignore all kinds of additional output from `make'. +case `$am_make -s -f confmf 2> /dev/null` in #( +*the\ am__doit\ target*) + am__include=include + am__quote= + _am_result=GNU + ;; +esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf - if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then - am__include=.include - am__quote="\"" - _am_result=BSD - fi + case `$am_make -s -f confmf 2> /dev/null` in #( + *the\ am__doit\ target*) + am__include=.include + am__quote="\"" + _am_result=BSD + ;; + esac fi -{ $as_echo "$as_me:$LINENO: result: $_am_result" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 $as_echo "$_am_result" >&6; } rm -f confinc confmf # Check whether --enable-dependency-tracking was given. -if test "${enable_dependency_tracking+set}" = set; then +if test "${enable_dependency_tracking+set}" = set; then : enableval=$enable_dependency_tracking; fi @@ -4742,9 +5070,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -4755,24 +5083,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -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 "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4782,9 +5110,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then +if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then @@ -4795,24 +5123,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -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 "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4821,7 +5149,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -4835,9 +5163,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -4848,24 +5176,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -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 "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4875,9 +5203,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -4889,18 +5217,18 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then @@ -4919,10 +5247,10 @@ fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:$LINENO: result: $CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4934,9 +5262,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -4947,24 +5275,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -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 "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4978,9 +5306,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then +if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then @@ -4991,24 +5319,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -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 "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -5021,7 +5349,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -5032,57 +5360,37 @@ fi -test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_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; }; }; } +as_fn_error $? "no acceptable C compiler found in \$PATH +See \`config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. -$as_echo "$as_me:$LINENO: checking for C compiler version" >&5 +$as_echo "$as_me:${as_lineno-$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" +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -v >&5") 2>&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? - $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); } + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5098,8 +5406,8 @@ # 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; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 +$as_echo_n "checking whether the C compiler works... " >&6; } ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` # The possible output files: @@ -5115,17 +5423,17 @@ done rm -f $ac_rmfiles -if { (ac_try="$ac_link_default" +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_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 (eval "$ac_link_default") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. # So ignore a value of `no', otherwise this would lead to `EXEEXT = no' # in a Makefile. We should not override ac_cv_exeext if it was cached, @@ -5142,7 +5450,7 @@ # certainly right. break;; *.* ) - if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; then :; else ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` fi @@ -5152,93 +5460,50 @@ # 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 + * ) + break;; + esac +done +test "$ac_cv_exeext" = no && ac_cv_exeext= + +else + ac_file='' fi -{ $as_echo "$as_me:$LINENO: result: yes" >&5 +if test -z "$ac_file"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error 77 "C compiler cannot create executables +See \`config.log' for more details" "$LINENO" 5; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 +$as_echo_n "checking for C compiler default output file name... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 +$as_echo "$ac_file" >&6; } +ac_exeext=$ac_cv_exeext rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save -# 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 "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 $as_echo_n "checking for suffix of executables... " >&6; } -if { (ac_try="$ac_link" +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_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with @@ -5253,32 +5518,83 @@ esac done else - { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$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; }; }; } +as_fn_error $? "cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details" "$LINENO" 5; } fi - -rm -f conftest$ac_cv_exeext -{ $as_echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 +rm -f conftest conftest$ac_cv_exeext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 $as_echo "$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT -{ $as_echo "$as_me:$LINENO: checking for suffix of object files" >&5 +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +FILE *f = fopen ("conftest.out", "w"); + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +ac_clean_files="$ac_clean_files conftest.out" +# Check that the compiler produces executables we can run. If not, either +# the compiler is broken, or we cross compile. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 +$as_echo_n "checking whether we are cross compiling... " >&6; } +if test "$cross_compiling" != yes; then + { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if { ac_try='./conftest$ac_cv_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then + cross_compiling=no + else + if test "$cross_compiling" = maybe; then + cross_compiling=yes + else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot run C compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details" "$LINENO" 5; } + fi + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 +$as_echo "$cross_compiling" >&6; } + +rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out +ac_clean_files=$ac_clean_files_save +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 $as_echo_n "checking for suffix of object files... " >&6; } -if test "${ac_cv_objext+set}" = set; then +if ${ac_cv_objext+:} false; 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5290,17 +5606,17 @@ } _ACEOF rm -f conftest.o conftest.obj -if { (ac_try="$ac_compile" +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_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : for ac_file in conftest.o conftest.obj conftest.*; do test -f "$ac_file" || continue; case $ac_file in @@ -5313,31 +5629,23 @@ $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:${as_lineno-$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; }; }; } +as_fn_error $? "cannot compute suffix of object files: cannot compile +See \`config.log' for more details" "$LINENO" 5; } fi - rm -f conftest.$ac_cv_objext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 $as_echo "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT -{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } -if test "${ac_cv_c_compiler_gnu+set}" = set; then +if ${ac_cv_c_compiler_gnu+:} false; 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5351,37 +5659,16 @@ 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 +if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_compiler_gnu=no + 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 "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes @@ -5390,20 +5677,16 @@ fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS -{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } -if test "${ac_cv_prog_cc_g+set}" = set; then +if ${ac_cv_prog_cc_g+:} false; 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5414,35 +5697,11 @@ 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 +if ac_fn_c_try_compile "$LINENO"; 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 + CFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5453,36 +5712,12 @@ 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 +if ac_fn_c_try_compile "$LINENO"; then : - ac_c_werror_flag=$ac_save_c_werror_flag +else + 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5493,42 +5728,17 @@ 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 +if ac_fn_c_try_compile "$LINENO"; 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 "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS @@ -5545,18 +5755,14 @@ CFLAGS= fi fi -{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if test "${ac_cv_prog_cc_c89+set}" = set; then +if ${ac_cv_prog_cc_c89+:} false; 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 +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -5613,32 +5819,9 @@ -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 + if ac_fn_c_try_compile "$LINENO"; 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 @@ -5649,17 +5832,19 @@ # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) - { $as_echo "$as_me:$LINENO: result: none needed" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) - { $as_echo "$as_me:$LINENO: result: unsupported" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" - { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac +if test "x$ac_cv_prog_cc_c89" != xno; then : +fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -5669,9 +5854,9 @@ depcc="$CC" am_compiler_list= -{ $as_echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } -if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then +if ${am_cv_CC_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then @@ -5697,6 +5882,11 @@ if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi + am__universal=false + case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac + for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and @@ -5714,7 +5904,17 @@ done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + # We check with `-c' and `-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle `-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs + am__obj=sub/conftest.${OBJEXT-o} + am__minus_obj="-o $am__obj" case $depmode in + gcc) + # This depmode causes a compiler race in universal mode. + test "$am__universal" = false || continue + ;; nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested @@ -5724,19 +5924,23 @@ break fi ;; + msvisualcpp | msvcmsys) + # This compiler won't grok `-c -o', but also, the minuso test has + # not run yet. These depmodes are late enough in the game, and + # so weak that their functioning should not be impacted. + am__obj=conftest.${OBJEXT-o} + am__minus_obj= + ;; none) break ;; esac - # 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} \ + source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ + $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && + grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message @@ -5760,7 +5964,7 @@ fi fi -{ $as_echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type @@ -5776,17 +5980,13 @@ -{ $as_echo "$as_me:$LINENO: checking for library containing strerror" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing strerror" >&5 $as_echo_n "checking for library containing strerror... " >&6; } -if test "${ac_cv_search_strerror+set}" = set; then +if ${ac_cv_search_strerror+:} false; then : $as_echo_n "(cached) " >&6 else ac_func_search_save_LIBS=$LIBS -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. @@ -5811,54 +6011,27 @@ ac_res=-l$ac_lib LIBS="-l$ac_lib $ac_func_search_save_LIBS" fi - 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_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then + if ac_fn_c_try_link "$LINENO"; then : ac_cv_search_strerror=$ac_res -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext - if test "${ac_cv_search_strerror+set}" = set; then +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if ${ac_cv_search_strerror+:} false; then : break fi done -if test "${ac_cv_search_strerror+set}" = set; then - : +if ${ac_cv_search_strerror+:} false; then : + else ac_cv_search_strerror=no fi rm conftest.$ac_ext LIBS=$ac_func_search_save_LIBS fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_strerror" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_strerror" >&5 $as_echo "$ac_cv_search_strerror" >&6; } ac_res=$ac_cv_search_strerror -if test "$ac_res" != no; then +if test "$ac_res" != no; then : test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" fi @@ -5871,9 +6044,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -5884,24 +6057,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -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 "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -5911,9 +6084,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then +if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then @@ -5924,24 +6097,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -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 "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -5950,7 +6123,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -5964,9 +6137,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -5977,24 +6150,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -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 "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -6004,9 +6177,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -6018,18 +6191,18 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then @@ -6048,10 +6221,10 @@ fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:$LINENO: result: $CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -6063,9 +6236,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -6076,24 +6249,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -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 "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -6107,9 +6280,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then +if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then @@ -6120,24 +6293,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -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 "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -6150,7 +6323,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -6161,62 +6334,42 @@ fi -test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_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; }; }; } +as_fn_error $? "no acceptable C compiler found in \$PATH +See \`config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. -$as_echo "$as_me:$LINENO: checking for C compiler version" >&5 +$as_echo "$as_me:${as_lineno-$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" +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -V >&5") 2>&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done -{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } -if test "${ac_cv_c_compiler_gnu+set}" = set; then +if ${ac_cv_c_compiler_gnu+:} false; 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -6230,37 +6383,16 @@ 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 +if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_compiler_gnu=no + 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 "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes @@ -6269,20 +6401,16 @@ fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS -{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } -if test "${ac_cv_prog_cc_g+set}" = set; then +if ${ac_cv_prog_cc_g+:} false; 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -6293,35 +6421,11 @@ 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 +if ac_fn_c_try_compile "$LINENO"; 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 + CFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -6332,36 +6436,12 @@ 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 +if ac_fn_c_try_compile "$LINENO"; then : - ac_c_werror_flag=$ac_save_c_werror_flag +else + 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -6372,42 +6452,17 @@ 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 +if ac_fn_c_try_compile "$LINENO"; 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 "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS @@ -6424,18 +6479,14 @@ CFLAGS= fi fi -{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if test "${ac_cv_prog_cc_c89+set}" = set; then +if ${ac_cv_prog_cc_c89+:} false; 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 +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -6486,38 +6537,15 @@ 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 +} +_ACEOF +for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ + -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +do + CC="$ac_save_CC $ac_arg" + if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg -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 @@ -6528,17 +6556,19 @@ # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) - { $as_echo "$as_me:$LINENO: result: none needed" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) - { $as_echo "$as_me:$LINENO: result: unsupported" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" - { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac +if test "x$ac_cv_prog_cc_c89" != xno; then : +fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -6548,9 +6578,9 @@ depcc="$CC" am_compiler_list= -{ $as_echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } -if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then +if ${am_cv_CC_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then @@ -6576,6 +6606,11 @@ if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi + am__universal=false + case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac + for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and @@ -6593,7 +6628,17 @@ done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + # We check with `-c' and `-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle `-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs + am__obj=sub/conftest.${OBJEXT-o} + am__minus_obj="-o $am__obj" case $depmode in + gcc) + # This depmode causes a compiler race in universal mode. + test "$am__universal" = false || continue + ;; nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested @@ -6603,19 +6648,23 @@ break fi ;; + msvisualcpp | msvcmsys) + # This compiler won't grok `-c -o', but also, the minuso test has + # not run yet. These depmodes are late enough in the game, and + # so weak that their functioning should not be impacted. + am__obj=conftest.${OBJEXT-o} + am__minus_obj= + ;; none) break ;; esac - # 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} \ + source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ + $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && + grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message @@ -6639,7 +6688,7 @@ fi fi -{ $as_echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type @@ -6668,9 +6717,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CXX+set}" = set; then +if ${ac_cv_prog_CXX+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CXX"; then @@ -6681,24 +6730,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -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 "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5 $as_echo "$CXX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -6712,9 +6761,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then +if ${ac_cv_prog_ac_ct_CXX+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CXX"; then @@ -6725,24 +6774,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -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 "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5 $as_echo "$ac_ct_CXX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -6755,7 +6804,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -6766,53 +6815,36 @@ fi fi # Provide some information about the compiler. -$as_echo "$as_me:$LINENO: checking for C++ compiler version" >&5 +$as_echo "$as_me:${as_lineno-$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" +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -V >&5") 2>&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done -{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5 $as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; } -if test "${ac_cv_cxx_compiler_gnu+set}" = set; then +if ${ac_cv_cxx_compiler_gnu+:} false; 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -6826,37 +6858,16 @@ 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 +if ac_fn_cxx_try_compile "$LINENO"; then : ac_compiler_gnu=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_compiler_gnu=no + 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 "$as_me:${as_lineno-$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 @@ -6865,20 +6876,16 @@ fi ac_test_CXXFLAGS=${CXXFLAGS+set} ac_save_CXXFLAGS=$CXXFLAGS -{ $as_echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 +{ $as_echo "$as_me:${as_lineno-$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 +if ${ac_cv_prog_cxx_g+:} false; 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -6889,35 +6896,11 @@ 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 +if ac_fn_cxx_try_compile "$LINENO"; 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 + CXXFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -6928,36 +6911,12 @@ 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 +if ac_fn_cxx_try_compile "$LINENO"; then : - ac_cxx_werror_flag=$ac_save_cxx_werror_flag +else + 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -6968,42 +6927,17 @@ 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 +if ac_fn_cxx_try_compile "$LINENO"; 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 "$as_me:${as_lineno-$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 @@ -7028,9 +6962,9 @@ depcc="$CXX" am_compiler_list= -{ $as_echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } -if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then +if ${am_cv_CXX_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then @@ -7056,6 +6990,11 @@ if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi + am__universal=false + case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac + for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and @@ -7073,7 +7012,17 @@ done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + # We check with `-c' and `-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle `-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs + am__obj=sub/conftest.${OBJEXT-o} + am__minus_obj="-o $am__obj" case $depmode in + gcc) + # This depmode causes a compiler race in universal mode. + test "$am__universal" = false || continue + ;; nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested @@ -7083,19 +7032,23 @@ break fi ;; + msvisualcpp | msvcmsys) + # This compiler won't grok `-c -o', but also, the minuso test has + # not run yet. These depmodes are late enough in the game, and + # so weak that their functioning should not be impacted. + am__obj=conftest.${OBJEXT-o} + am__minus_obj= + ;; none) break ;; esac - # 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} \ + source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ + $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && + grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message @@ -7119,7 +7072,7 @@ fi fi -{ $as_echo "$as_me:$LINENO: result: $am_cv_CXX_dependencies_compiler_type" >&5 +{ $as_echo "$as_me:${as_lineno-$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 @@ -7139,14 +7092,14 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 $as_echo_n "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then + if ${ac_cv_prog_CPP+:} false; then : $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded @@ -7161,11 +7114,7 @@ # 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -7174,78 +7123,34 @@ #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_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi - -rm -f conftest.err conftest.$ac_ext +rm -f conftest.err conftest.i 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* 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_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then +if ac_fn_c_try_cpp "$LINENO"; 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 +rm -f conftest.err conftest.i 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 +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : break fi @@ -7257,7 +7162,7 @@ else ac_cv_prog_CPP=$CPP fi -{ $as_echo "$as_me:$LINENO: result: $CPP" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 $as_echo "$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes @@ -7268,11 +7173,7 @@ # 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -7281,87 +7182,40 @@ #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_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi - -rm -f conftest.err conftest.$ac_ext +rm -f conftest.err conftest.i 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* 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_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then +if ac_fn_c_try_cpp "$LINENO"; 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 +rm -f conftest.err conftest.i 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 - : +rm -f conftest.i 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:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +as_fn_error $? "C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details" "$LINENO" 5; } fi ac_ext=c @@ -7371,9 +7225,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 $as_echo_n "checking for grep that handles long lines and -e... " >&6; } -if test "${ac_cv_path_GREP+set}" = set; then +if ${ac_cv_path_GREP+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$GREP"; then @@ -7384,7 +7238,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_prog in grep ggrep; do + 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 @@ -7404,7 +7258,7 @@ $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` + as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_GREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_GREP="$ac_path_GREP" @@ -7419,26 +7273,24 @@ $ac_path_GREP_found && break 3 done 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; }; } + as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_GREP=$GREP fi fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 $as_echo "$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" -{ $as_echo "$as_me:$LINENO: checking for egrep" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 $as_echo_n "checking for egrep... " >&6; } -if test "${ac_cv_path_EGREP+set}" = set; then +if ${ac_cv_path_EGREP+:} false; then : $as_echo_n "(cached) " >&6 else if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 @@ -7452,7 +7304,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_prog in egrep; do + 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 @@ -7472,7 +7324,7 @@ $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` + as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_EGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_EGREP="$ac_path_EGREP" @@ -7487,12 +7339,10 @@ $ac_path_EGREP_found && break 3 done 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; }; } + as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_EGREP=$EGREP @@ -7500,21 +7350,17 @@ fi fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 $as_echo "$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" -{ $as_echo "$as_me:$LINENO: checking for ANSI C header files" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } -if test "${ac_cv_header_stdc+set}" = set; then +if ${ac_cv_header_stdc+:} false; 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -7529,48 +7375,23 @@ 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 +if ac_fn_c_try_compile "$LINENO"; 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 + 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : + $EGREP "memchr" >/dev/null 2>&1; then : + else ac_cv_header_stdc=no fi @@ -7580,18 +7401,14 @@ 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : + $EGREP "free" >/dev/null 2>&1; then : + else ac_cv_header_stdc=no fi @@ -7601,14 +7418,10 @@ 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 + 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -7627,74 +7440,243 @@ int main () { - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - return 2; + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + return 2; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + +else + ac_cv_header_stdc=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then + +$as_echo "#define STDC_HEADERS 1" >>confdefs.h + +fi + + +# Check whether --enable-largefile was given. +if test "${enable_largefile+set}" = set; then : + enableval=$enable_largefile; +fi + +if test "$enable_largefile" != no; then + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5 +$as_echo_n "checking for special C compiler options needed for large files... " >&6; } +if ${ac_cv_sys_largefile_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_sys_largefile_CC=no + if test "$GCC" != yes; then + ac_save_CC=$CC + while :; do + # IRIX 6.2 and later do not support large files by default, + # so use the C compiler's -n32 option if that helps. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; +int +main () +{ + + ; + return 0; +} +_ACEOF + if ac_fn_c_try_compile "$LINENO"; then : + break +fi +rm -f core conftest.err conftest.$ac_objext + CC="$CC -n32" + if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_sys_largefile_CC=' -n32'; break +fi +rm -f core conftest.err conftest.$ac_objext + break + done + CC=$ac_save_CC + rm -f conftest.$ac_ext + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5 +$as_echo "$ac_cv_sys_largefile_CC" >&6; } + if test "$ac_cv_sys_largefile_CC" != no; then + CC=$CC$ac_cv_sys_largefile_CC + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5 +$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; } +if ${ac_cv_sys_file_offset_bits+:} false; then : + $as_echo_n "(cached) " >&6 +else + while :; do + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_sys_file_offset_bits=no; break +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#define _FILE_OFFSET_BITS 64 +#include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_sys_file_offset_bits=64; break +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cv_sys_file_offset_bits=unknown + break +done +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5 +$as_echo "$ac_cv_sys_file_offset_bits" >&6; } +case $ac_cv_sys_file_offset_bits in #( + no | unknown) ;; + *) +cat >>confdefs.h <<_ACEOF +#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits +_ACEOF +;; +esac +rm -rf conftest* + if test $ac_cv_sys_file_offset_bits = unknown; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5 +$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; } +if ${ac_cv_sys_large_files+:} false; then : + $as_echo_n "(cached) " >&6 +else + while :; do + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; +int +main () +{ + + ; 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 +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_sys_large_files=no; break 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 - +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#define _LARGE_FILES 1 +#include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; +int +main () +{ + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_sys_large_files=1; break fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cv_sys_large_files=unknown + break +done 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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5 +$as_echo "$ac_cv_sys_large_files" >&6; } +case $ac_cv_sys_large_files in #( + no | unknown) ;; + *) +cat >>confdefs.h <<_ACEOF +#define _LARGE_FILES $ac_cv_sys_large_files _ACEOF - +;; +esac +rm -rf conftest* + fi fi - - { $as_echo "$as_me:$LINENO: checking whether NLS is requested" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5 $as_echo_n "checking whether NLS is requested... " >&6; } # Check whether --enable-nls was given. -if test "${enable_nls+set}" = set; then +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 "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 $as_echo "$USE_NLS" >&6; } @@ -7702,35 +7684,31 @@ 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; }; } + as_fn_error $? "Automake 1.5 or newer is required to use intltool" "$LINENO" 5 ;; *) ;; esac if test -n "0.35.0"; then - { $as_echo "$as_me:$LINENO: checking for intltool >= 0.35.0" >&5 + { $as_echo "$as_me:${as_lineno-$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 "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_APPLIED_VERSION found" >&5 $as_echo "$INTLTOOL_APPLIED_VERSION found" >&6; } test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || - { { $as_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; }; } + as_fn_error $? "Your intltool is too old. You need intltool 0.35.0 or later." "$LINENO" 5 fi # Extract the first word of "intltool-update", so it can be a program name with args. set dummy intltool-update; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_INTLTOOL_UPDATE+set}" = set; then +if ${ac_cv_path_INTLTOOL_UPDATE+:} false; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_UPDATE in @@ -7743,14 +7721,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -7758,19 +7736,19 @@ 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 "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_UPDATE" >&5 $as_echo "$INTLTOOL_UPDATE" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "intltool-merge", so it can be a program name with args. set dummy intltool-merge; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_INTLTOOL_MERGE+set}" = set; then +if ${ac_cv_path_INTLTOOL_MERGE+:} false; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_MERGE in @@ -7783,14 +7761,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -7798,19 +7776,19 @@ 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 "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_MERGE" >&5 $as_echo "$INTLTOOL_MERGE" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "intltool-extract", so it can be a program name with args. set dummy intltool-extract; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_INTLTOOL_EXTRACT+set}" = set; then +if ${ac_cv_path_INTLTOOL_EXTRACT+:} false; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_EXTRACT in @@ -7823,14 +7801,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -7838,18 +7816,16 @@ 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 "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_EXTRACT" >&5 $as_echo "$INTLTOOL_EXTRACT" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then - { { $as_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; }; } + as_fn_error $? "The intltool scripts were not found. Please install intltool." "$LINENO" 5 fi INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' @@ -7971,9 +7947,9 @@ # 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_XGETTEXT+set}" = set; then +if ${ac_cv_path_XGETTEXT+:} false; then : $as_echo_n "(cached) " >&6 else case $XGETTEXT in @@ -7986,14 +7962,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -8001,19 +7977,19 @@ fi XGETTEXT=$ac_cv_path_XGETTEXT if test -n "$XGETTEXT"; then - { $as_echo "$as_me:$LINENO: result: $XGETTEXT" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 $as_echo "$XGETTEXT" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "msgmerge", so it can be a program name with args. set dummy msgmerge; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_MSGMERGE+set}" = set; then +if ${ac_cv_path_MSGMERGE+:} false; then : $as_echo_n "(cached) " >&6 else case $MSGMERGE in @@ -8026,14 +8002,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -8041,19 +8017,19 @@ fi MSGMERGE=$ac_cv_path_MSGMERGE if test -n "$MSGMERGE"; then - { $as_echo "$as_me:$LINENO: result: $MSGMERGE" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5 $as_echo "$MSGMERGE" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_MSGFMT+set}" = set; then +if ${ac_cv_path_MSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else case $MSGFMT in @@ -8066,14 +8042,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -8081,19 +8057,19 @@ fi MSGFMT=$ac_cv_path_MSGFMT if test -n "$MSGFMT"; then - { $as_echo "$as_me:$LINENO: result: $MSGFMT" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 $as_echo "$MSGFMT" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_GMSGFMT+set}" = set; then +if ${ac_cv_path_GMSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else case $GMSGFMT in @@ -8106,14 +8082,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" @@ -8122,33 +8098,29 @@ fi GMSGFMT=$ac_cv_path_GMSGFMT if test -n "$GMSGFMT"; then - { $as_echo "$as_me:$LINENO: result: $GMSGFMT" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 $as_echo "$GMSGFMT" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then - { { $as_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; }; } + as_fn_error $? "GNU gettext tools not found; required for intltool" "$LINENO" 5 fi xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then - { { $as_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; }; } + as_fn_error $? "GNU gettext tools not found; required for intltool" "$LINENO" 5 fi # Extract the first word of "perl", so it can be a program name with args. set dummy perl; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_INTLTOOL_PERL+set}" = set; then +if ${ac_cv_path_INTLTOOL_PERL+:} false; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_PERL in @@ -8161,14 +8133,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -8176,41 +8148,35 @@ 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 "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_PERL" >&5 $as_echo "$INTLTOOL_PERL" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$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; }; } + as_fn_error $? "perl not found" "$LINENO" 5 fi -{ $as_echo "$as_me:$LINENO: checking for perl >= 5.8.1" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for perl >= 5.8.1" >&5 $as_echo_n "checking for perl >= 5.8.1... " >&6; } $INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1 if test $? -ne 0; then - { { $as_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; }; } + as_fn_error $? "perl 5.8.1 is required for intltool" "$LINENO" 5 else IT_PERL_VERSION="`$INTLTOOL_PERL -e \"printf '%vd', $^V\"`" - { $as_echo "$as_me:$LINENO: result: $IT_PERL_VERSION" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $IT_PERL_VERSION" >&5 $as_echo "$IT_PERL_VERSION" >&6; } fi if test "x" != "xno-xml"; then - { $as_echo "$as_me:$LINENO: checking for XML::Parser" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XML::Parser" >&5 $as_echo_n "checking for XML::Parser... " >&6; } if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then - { $as_echo "$as_me:$LINENO: result: ok" >&5 + { $as_echo "$as_me:${as_lineno-$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; }; } + as_fn_error $? "XML::Parser perl module is required for intltool" "$LINENO" 5 fi fi @@ -8220,11 +8186,7 @@ # 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -8236,120 +8198,13 @@ 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_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; then : DATADIRNAME=share else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - case $host in + 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_c_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 + ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" +if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : DATADIRNAME=share else DATADIRNAME=lib @@ -8361,10 +8216,8 @@ ;; esac fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext fi @@ -8373,103 +8226,11 @@ - - - - for ac_func in strverscmp access fsync fflush -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_c_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 +do : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF @@ -8482,22 +8243,20 @@ # Check target architecture # Check for Win32 -{ $as_echo "$as_me:$LINENO: checking for some Win32 platform" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for some Win32 platform" >&5 $as_echo_n "checking for some Win32 platform... " >&6; } case "$target_os" in mingw* | cygwin*) platform_win32=yes -cat >>confdefs.h <<\_ACEOF -#define PLATFORM_WIN32 1 -_ACEOF +$as_echo "#define PLATFORM_WIN32 1" >>confdefs.h ;; *) platform_win32=no ;; esac -{ $as_echo "$as_me:$LINENO: result: $platform_win32" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $platform_win32" >&5 $as_echo "$platform_win32" >&6; } if test "$platform_win32" = "yes"; then PLATFORM_WIN32_TRUE= @@ -8508,15 +8267,13 @@ fi -{ $as_echo "$as_me:$LINENO: checking for native Win32" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for native Win32" >&5 $as_echo_n "checking for native Win32... " >&6; } case "$target_os" in mingw*) os_win32=yes -cat >>confdefs.h <<\_ACEOF -#define OS_WIN32 1 -_ACEOF +$as_echo "#define OS_WIN32 1" >>confdefs.h os_unix=no PATHSEP=';' @@ -8527,7 +8284,7 @@ PATHSEP=':' ;; esac -{ $as_echo "$as_me:$LINENO: result: $os_win32" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $os_win32" >&5 $as_echo "$os_win32" >&6; } if test "$os_win32" = "yes"; then @@ -8550,9 +8307,9 @@ if test "$os_win32" = "yes"; then # Extract the first word of "lib.exe", so it can be a program name with args. set dummy lib.exe; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ms_librarian+set}" = set; then +if ${ac_cv_prog_ms_librarian+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ms_librarian"; then @@ -8563,14 +8320,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_ms_librarian="yes" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_prog_ms_librarian" && ac_cv_prog_ms_librarian="no" @@ -8578,10 +8335,10 @@ fi ms_librarian=$ac_cv_prog_ms_librarian if test -n "$ms_librarian"; then - { $as_echo "$as_me:$LINENO: result: $ms_librarian" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ms_librarian" >&5 $as_echo "$ms_librarian" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -8589,9 +8346,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}windres", so it can be a program name with args. set dummy ${ac_tool_prefix}windres; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_WINDRES+set}" = set; then +if ${ac_cv_prog_WINDRES+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$WINDRES"; then @@ -8602,24 +8359,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_WINDRES="${ac_tool_prefix}windres" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi WINDRES=$ac_cv_prog_WINDRES if test -n "$WINDRES"; then - { $as_echo "$as_me:$LINENO: result: $WINDRES" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $WINDRES" >&5 $as_echo "$WINDRES" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -8629,9 +8386,9 @@ ac_ct_WINDRES=$WINDRES # Extract the first word of "windres", so it can be a program name with args. set dummy windres; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_WINDRES+set}" = set; then +if ${ac_cv_prog_ac_ct_WINDRES+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_WINDRES"; then @@ -8642,24 +8399,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_WINDRES="windres" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi ac_ct_WINDRES=$ac_cv_prog_ac_ct_WINDRES if test -n "$ac_ct_WINDRES"; then - { $as_echo "$as_me:$LINENO: result: $ac_ct_WINDRES" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_WINDRES" >&5 $as_echo "$ac_ct_WINDRES" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -8668,7 +8425,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -8707,7 +8464,7 @@ fi # Check whether --enable-glibtest was given. -if test "${enable_glibtest+set}" = set; then +if test "${enable_glibtest+set}" = set; then : enableval=$enable_glibtest; else enable_glibtest=yes @@ -8738,13 +8495,17 @@ + + + + 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_PKG_CONFIG+set}" = set; then +if ${ac_cv_path_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $PKG_CONFIG in @@ -8757,14 +8518,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -8772,10 +8533,10 @@ 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 "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 $as_echo "$PKG_CONFIG" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -8785,9 +8546,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then +if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_PKG_CONFIG in @@ -8800,14 +8561,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -8815,10 +8576,10 @@ 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 "$as_me:${as_lineno-$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 "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -8827,7 +8588,7 @@ 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:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -8840,17 +8601,16 @@ fi if test -n "$PKG_CONFIG"; then _pkg_min_version=0.16 - { $as_echo "$as_me:$LINENO: checking pkg-config is at least version $_pkg_min_version" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 $as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; } if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then - { $as_echo "$as_me:$LINENO: result: yes" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } PKG_CONFIG="" fi - fi no_glib="" @@ -8861,7 +8621,7 @@ fi min_glib_version=2.4.0 - { $as_echo "$as_me:$LINENO: checking for GLIB - version >= $min_glib_version" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLIB - version >= $min_glib_version" >&5 $as_echo_n "checking for GLIB - version >= $min_glib_version... " >&6; } if test x$PKG_CONFIG != xno ; then @@ -8897,14 +8657,10 @@ CFLAGS="$CFLAGS $GLIB_CFLAGS" LIBS="$GLIB_LIBS $LIBS" rm -f conf.glibtest - if test "$cross_compiling" = yes; then + if test "$cross_compiling" = yes; then : echo $ac_n "cross compiling; assumed OK... $ac_c" else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -8914,15 +8670,14 @@ int main () { - int major, minor, micro; + unsigned int major, minor, micro; char *tmp_version; - int ignored; - ignored = system ("touch conf.glibtest"); + fclose (fopen ("conf.glibtest", "w")); /* HP/UX 9 (%@#!) writes to sscanf strings */ tmp_version = g_strdup("$min_glib_version"); - if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { + if (sscanf(tmp_version, "%u.%u.%u", &major, &minor, µ) != 3) { printf("%s, bad version string\n", "$min_glib_version"); exit(1); } @@ -8961,9 +8716,9 @@ } else { - printf("\n*** An old version of GLIB (%d.%d.%d) was found.\n", + printf("\n*** An old version of GLIB (%u.%u.%u) was found.\n", glib_major_version, glib_minor_version, glib_micro_version); - printf("*** You need a version of GLIB newer than %d.%d.%d. The latest version of\n", + printf("*** You need a version of GLIB newer than %u.%u.%u. The latest version of\n", major, minor, micro); printf("*** GLIB is always available from ftp://ftp.gtk.org.\n"); printf("***\n"); @@ -8973,59 +8728,32 @@ printf("*** of GLIB, but you can also set the PKG_CONFIG environment to point to the\n"); printf("*** correct copy of pkg-config. (In this case, you will have to\n"); printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n"); - printf("*** so that the correct libraries are found at run-time))\n"); - } - } - return 1; -} - -_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 + printf("*** so that the correct libraries are found at run-time))\n"); + } + } + return 1; +} + +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : -( exit $ac_status ) -no_glib=yes +else + no_glib=yes fi -rm -rf conftest.dSYM -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi - CFLAGS="$ac_save_CFLAGS" LIBS="$ac_save_LIBS" fi fi if test "x$no_glib" = x ; then - { $as_echo "$as_me:$LINENO: result: yes (version $glib_config_major_version.$glib_config_minor_version.$glib_config_micro_version)" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (version $glib_config_major_version.$glib_config_minor_version.$glib_config_micro_version)" >&5 $as_echo "yes (version $glib_config_major_version.$glib_config_minor_version.$glib_config_micro_version)" >&6; } : else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if test "$PKG_CONFIG" = "no" ; then echo "*** A new enough version of pkg-config was not found." @@ -9039,11 +8767,7 @@ ac_save_LIBS="$LIBS" CFLAGS="$CFLAGS $GLIB_CFLAGS" LIBS="$LIBS $GLIB_LIBS" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -9057,27 +8781,7 @@ 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_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; then : echo "*** The test program compiled, but did not run. This usually means" echo "*** that the run-time linker is not finding GLIB or finding the wrong" echo "*** version of GLIB. If it is not finding GLIB, you'll need to set your" @@ -9088,16 +8792,11 @@ echo "*** If you have an old version installed, it is best to remove it, although" echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - echo "*** The test program failed to compile or link. See the file config.log for the" + echo "*** The test program failed to compile or link. See the file config.log for the" echo "*** exact error that occured. This usually means GLIB is incorrectly installed." fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext CFLAGS="$ac_save_CFLAGS" LIBS="$ac_save_LIBS" fi @@ -9107,9 +8806,7 @@ GLIB_GENMARSHAL="" GOBJECT_QUERY="" GLIB_MKENUMS="" - { { $as_echo "$as_me:$LINENO: error: GLIB >= 2.4.0 not installed." >&5 -$as_echo "$as_me: error: GLIB >= 2.4.0 not installed." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "GLIB >= 2.4.0 not installed." "$LINENO" 5 fi @@ -9119,7 +8816,7 @@ rm -f conf.glibtest # Check whether --enable-gtktest was given. -if test "${enable_gtktest+set}" = set; then +if test "${enable_gtktest+set}" = set; then : enableval=$enable_gtktest; else enable_gtktest=yes @@ -9140,9 +8837,9 @@ # 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_PKG_CONFIG+set}" = set; then +if ${ac_cv_path_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $PKG_CONFIG in @@ -9155,14 +8852,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no" @@ -9171,10 +8868,10 @@ 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 "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 $as_echo "$PKG_CONFIG" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -9193,7 +8890,7 @@ fi min_gtk_version=2.4.0 - { $as_echo "$as_me:$LINENO: checking for GTK+ - version >= $min_gtk_version" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTK+ - version >= $min_gtk_version" >&5 $as_echo_n "checking for GTK+ - version >= $min_gtk_version... " >&6; } if test x$PKG_CONFIG != xno ; then @@ -9225,14 +8922,10 @@ CFLAGS="$CFLAGS $GTK_CFLAGS" LIBS="$GTK_LIBS $LIBS" rm -f conf.gtktest - if test "$cross_compiling" = yes; then + if test "$cross_compiling" = yes; then : echo $ac_n "cross compiling; assumed OK... $ac_c" else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -9245,7 +8938,7 @@ int major, minor, micro; char *tmp_version; - system ("touch conf.gtktest"); + fclose (fopen ("conf.gtktest", "w")); /* HP/UX 9 (%@#!) writes to sscanf strings */ tmp_version = g_strdup("$min_gtk_version"); @@ -9307,52 +9000,25 @@ } _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 +if ac_fn_c_try_run "$LINENO"; then : -( exit $ac_status ) -no_gtk=yes +else + no_gtk=yes fi -rm -rf conftest.dSYM -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi - CFLAGS="$ac_save_CFLAGS" LIBS="$ac_save_LIBS" fi fi if test "x$no_gtk" = x ; then - { $as_echo "$as_me:$LINENO: result: yes (version $gtk_config_major_version.$gtk_config_minor_version.$gtk_config_micro_version)" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (version $gtk_config_major_version.$gtk_config_minor_version.$gtk_config_micro_version)" >&5 $as_echo "yes (version $gtk_config_major_version.$gtk_config_minor_version.$gtk_config_micro_version)" >&6; } : else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if test "$PKG_CONFIG" = "no" ; then echo "*** A new enough version of pkg-config was not found." @@ -9366,11 +9032,7 @@ ac_save_LIBS="$LIBS" CFLAGS="$CFLAGS $GTK_CFLAGS" LIBS="$LIBS $GTK_LIBS" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -9384,27 +9046,7 @@ 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_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; then : echo "*** The test program compiled, but did not run. This usually means" echo "*** that the run-time linker is not finding GTK+ or finding the wrong" echo "*** version of GTK+. If it is not finding GTK+, you'll need to set your" @@ -9415,25 +9057,18 @@ echo "*** If you have an old version installed, it is best to remove it, although" echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - echo "*** The test program failed to compile or link. See the file config.log for the" + echo "*** The test program failed to compile or link. See the file config.log for the" echo "*** exact error that occured. This usually means GTK+ is incorrectly installed." fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext CFLAGS="$ac_save_CFLAGS" LIBS="$ac_save_LIBS" fi fi GTK_CFLAGS="" GTK_LIBS="" - { { $as_echo "$as_me:$LINENO: error: GTK+ >= 2.4.0 not installed." >&5 -$as_echo "$as_me: error: GTK+ >= 2.4.0 not installed." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "GTK+ >= 2.4.0 not installed." "$LINENO" 5 fi @@ -9442,7 +9077,7 @@ threads="auto" # Check whether --enable-threads was given. -if test "${enable_threads+set}" = set; then +if test "${enable_threads+set}" = set; then : enableval=$enable_threads; threads="${enableval}" fi @@ -9451,18 +9086,18 @@ if test "x${threads}" != "xno" ; then pkg_failed=no -{ $as_echo "$as_me:$LINENO: checking for GTHREAD" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTHREAD" >&5 $as_echo_n "checking for GTHREAD... " >&6; } if test -n "$GTHREAD_CFLAGS"; then pkg_cv_GTHREAD_CFLAGS="$GTHREAD_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gthread-2.0\"") >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gthread-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gthread-2.0") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then pkg_cv_GTHREAD_CFLAGS=`$PKG_CONFIG --cflags "gthread-2.0" 2>/dev/null` else pkg_failed=yes @@ -9474,11 +9109,11 @@ pkg_cv_GTHREAD_LIBS="$GTHREAD_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gthread-2.0\"") >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gthread-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gthread-2.0") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then pkg_cv_GTHREAD_LIBS=`$PKG_CONFIG --libs "gthread-2.0" 2>/dev/null` else pkg_failed=yes @@ -9490,6 +9125,8 @@ if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -9504,17 +9141,17 @@ # Put the nasty error message in config.log where it belongs echo "$GTHREAD_PKG_ERRORS" >&5 - { $as_echo "$as_me:$LINENO: result: no" >&5 -$as_echo "no" >&6; } - { $as_echo "$as_me:$LINENO: WARNING: \"No thread support in glib\"" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \"No thread support in glib\"" >&5 $as_echo "$as_me: WARNING: \"No thread support in glib\"" >&2;} elif test $pkg_failed = untried; then - { $as_echo "$as_me:$LINENO: WARNING: \"No thread support in glib\"" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \"No thread support in glib\"" >&5 $as_echo "$as_me: WARNING: \"No thread support in glib\"" >&2;} else GTHREAD_CFLAGS=$pkg_cv_GTHREAD_CFLAGS GTHREAD_LIBS=$pkg_cv_GTHREAD_LIBS - { $as_echo "$as_me:$LINENO: result: yes" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } have_gthread="yes" fi @@ -9522,9 +9159,7 @@ if test "x$have_gthread" != "xno"; then -cat >>confdefs.h <<\_ACEOF -#define HAVE_GTHREAD 1 -_ACEOF +$as_echo "#define HAVE_GTHREAD 1" >>confdefs.h GLIB_CFLAGS="$GTHREAD_CFLAGS" GLIB_LIBS="$GTHREAD_LIBS" @@ -9535,9 +9170,9 @@ 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_GDK_PIXBUF_CSOURCE+set}" = set; then +if ${ac_cv_path_GDK_PIXBUF_CSOURCE+:} false; then : $as_echo_n "(cached) " >&6 else case $GDK_PIXBUF_CSOURCE in @@ -9550,14 +9185,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_GDK_PIXBUF_CSOURCE="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -9565,10 +9200,10 @@ fi GDK_PIXBUF_CSOURCE=$ac_cv_path_GDK_PIXBUF_CSOURCE if test -n "$GDK_PIXBUF_CSOURCE"; then - { $as_echo "$as_me:$LINENO: result: $GDK_PIXBUF_CSOURCE" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GDK_PIXBUF_CSOURCE" >&5 $as_echo "$GDK_PIXBUF_CSOURCE" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -9578,9 +9213,9 @@ # Extract the first word of "glib-genmarshal", so it can be a program name with args. set dummy glib-genmarshal; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_GLIB_GENMARSHAL+set}" = set; then +if ${ac_cv_path_GLIB_GENMARSHAL+:} false; then : $as_echo_n "(cached) " >&6 else case $GLIB_GENMARSHAL in @@ -9593,14 +9228,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GLIB_GENMARSHAL="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -9608,10 +9243,10 @@ fi GLIB_GENMARSHAL=$ac_cv_path_GLIB_GENMARSHAL if test -n "$GLIB_GENMARSHAL"; then - { $as_echo "$as_me:$LINENO: result: $GLIB_GENMARSHAL" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GLIB_GENMARSHAL" >&5 $as_echo "$GLIB_GENMARSHAL" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -9619,7 +9254,7 @@ # Check whether --with-readmedir was given. -if test "${with_readmedir+set}" = set; then +if test "${with_readmedir+set}" = set; then : withval=$with_readmedir; readmedir=$withval else readmedir="$prefix/share/doc/geeqie-$VERSION" @@ -9627,7 +9262,7 @@ # Check whether --with-htmldir was given. -if test "${with_htmldir+set}" = set; then +if test "${with_htmldir+set}" = set; then : withval=$with_htmldir; htmldir=$withval else htmldir="$readmedir/html" @@ -9647,9 +9282,9 @@ # Extract the first word of "gnome-doc-tool", so it can be a program name with args. set dummy gnome-doc-tool; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_GNOME_DOC_TOOL+set}" = set; then +if ${ac_cv_path_GNOME_DOC_TOOL+:} false; then : $as_echo_n "(cached) " >&6 else case $GNOME_DOC_TOOL in @@ -9662,14 +9297,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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_GNOME_DOC_TOOL="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -9677,10 +9312,10 @@ fi GNOME_DOC_TOOL=$ac_cv_path_GNOME_DOC_TOOL if test -n "$GNOME_DOC_TOOL"; then - { $as_echo "$as_me:$LINENO: result: $GNOME_DOC_TOOL" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GNOME_DOC_TOOL" >&5 $as_echo "$GNOME_DOC_TOOL" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -9708,23 +9343,23 @@ # LIRC support # ---------------------------------------------------------------------- -{ $as_echo "$as_me:$LINENO: checking if LIRC support is enabled" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if LIRC support is enabled" >&5 $as_echo_n "checking if LIRC support is enabled... " >&6; } lirc=no # Check whether --enable-lirc was given. -if test "${enable_lirc+set}" = set; then +if test "${enable_lirc+set}" = set; then : enableval=$enable_lirc; if test "x${enableval}" = "xyes" -a "x$GCC" = "xyes"; then - { $as_echo "$as_me:$LINENO: result: yes" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } lirc=yes else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } lirc=no fi else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -9732,7 +9367,7 @@ # Check whether --with-lirc-prefix was given. -if test "${with_lirc_prefix+set}" = set; then +if test "${with_lirc_prefix+set}" = set; then : withval=$with_lirc_prefix; for dir in `echo "$withval" | tr : ' '`; do if test -d $dir/lib; then CXXFLAGS="$CXXFLAGS -L$dir/lib"; fi @@ -9745,69 +9380,13 @@ HAVE_LIRC=no if test "x${lirc}" != "xno" ; then # 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_c_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 +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default +" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF @@ -9817,151 +9396,16 @@ done -if test "${ac_cv_header_lirc_lirc_client_h+set}" = set; then - { $as_echo "$as_me:$LINENO: checking for lirc/lirc_client.h" >&5 -$as_echo_n "checking for lirc/lirc_client.h... " >&6; } -if test "${ac_cv_header_lirc_lirc_client_h+set}" = set; then - $as_echo_n "(cached) " >&6 -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_lirc_lirc_client_h" >&5 -$as_echo "$ac_cv_header_lirc_lirc_client_h" >&6; } -else - # Is the header compilable? -{ $as_echo "$as_me:$LINENO: checking lirc/lirc_client.h usability" >&5 -$as_echo_n "checking lirc/lirc_client.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_c_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 lirc/lirc_client.h presence" >&5 -$as_echo_n "checking lirc/lirc_client.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_c_preproc_warn_flag$ac_c_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_c_preproc_warn_flag in - yes:no: ) - { $as_echo "$as_me:$LINENO: WARNING: lirc/lirc_client.h: accepted by the compiler, rejected by the preprocessor!" >&5 -$as_echo "$as_me: WARNING: lirc/lirc_client.h: accepted by the compiler, rejected by the preprocessor!" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: lirc/lirc_client.h: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: lirc/lirc_client.h: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { $as_echo "$as_me:$LINENO: WARNING: lirc/lirc_client.h: present but cannot be compiled" >&5 -$as_echo "$as_me: WARNING: lirc/lirc_client.h: present but cannot be compiled" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: lirc/lirc_client.h: check for missing prerequisite headers?" >&5 -$as_echo "$as_me: WARNING: lirc/lirc_client.h: check for missing prerequisite headers?" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: lirc/lirc_client.h: see the Autoconf documentation" >&5 -$as_echo "$as_me: WARNING: lirc/lirc_client.h: see the Autoconf documentation" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: lirc/lirc_client.h: section \"Present But Cannot Be Compiled\"" >&5 -$as_echo "$as_me: WARNING: lirc/lirc_client.h: section \"Present But Cannot Be Compiled\"" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: lirc/lirc_client.h: proceeding with the preprocessor's result" >&5 -$as_echo "$as_me: WARNING: lirc/lirc_client.h: proceeding with the preprocessor's result" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: lirc/lirc_client.h: in the future, the compiler will take precedence" >&5 -$as_echo "$as_me: WARNING: lirc/lirc_client.h: in the future, the compiler will take precedence" >&2;} - ( cat <<\_ASBOX -## ------------------------------------------------- ## -## Report this to geeqie-devel@lists.sourceforge.net ## -## ------------------------------------------------- ## -_ASBOX - ) | sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -{ $as_echo "$as_me:$LINENO: checking for lirc/lirc_client.h" >&5 -$as_echo_n "checking for lirc/lirc_client.h... " >&6; } -if test "${ac_cv_header_lirc_lirc_client_h+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_header_lirc_lirc_client_h=$ac_header_preproc -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_lirc_lirc_client_h" >&5 -$as_echo "$ac_cv_header_lirc_lirc_client_h" >&6; } - -fi -if test "x$ac_cv_header_lirc_lirc_client_h" = x""yes; then - { $as_echo "$as_me:$LINENO: checking for lirc_init in -llirc_client" >&5 +ac_fn_c_check_header_mongrel "$LINENO" "lirc/lirc_client.h" "ac_cv_header_lirc_lirc_client_h" "$ac_includes_default" +if test "x$ac_cv_header_lirc_lirc_client_h" = xyes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for lirc_init in -llirc_client" >&5 $as_echo_n "checking for lirc_init in -llirc_client... " >&6; } -if test "${ac_cv_lib_lirc_client_lirc_init+set}" = set; then +if ${ac_cv_lib_lirc_client_lirc_init+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-llirc_client $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. @@ -9979,47 +9423,20 @@ 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_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_lirc_client_lirc_init=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_lib_lirc_client_lirc_init=no + ac_cv_lib_lirc_client_lirc_init=no fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_lirc_client_lirc_init" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lirc_client_lirc_init" >&5 $as_echo "$ac_cv_lib_lirc_client_lirc_init" >&6; } -if test "x$ac_cv_lib_lirc_client_lirc_init" = x""yes; then +if test "x$ac_cv_lib_lirc_client_lirc_init" = xyes; then : HAVE_LIRC=yes;LIBS=-llirc_client $LIBS; -cat >>confdefs.h <<\_ACEOF -#define HAVE_LIRC /**/ -_ACEOF +$as_echo "#define HAVE_LIRC /**/" >>confdefs.h fi @@ -10041,7 +9458,7 @@ # ---------------------------------------------------------------------- # Check whether --enable-lcms was given. -if test "${enable_lcms+set}" = set; then +if test "${enable_lcms+set}" = set; then : enableval=$enable_lcms; liblcms=$enableval else liblcms=auto @@ -10051,18 +9468,18 @@ if test "x${liblcms}" != "xno"; then pkg_failed=no -{ $as_echo "$as_me:$LINENO: checking for LCMS" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LCMS" >&5 $as_echo_n "checking for LCMS... " >&6; } if test -n "$LCMS_CFLAGS"; then pkg_cv_LCMS_CFLAGS="$LCMS_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"lcms >= 1.14\"") >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"lcms >= 1.14\""; } >&5 ($PKG_CONFIG --exists --print-errors "lcms >= 1.14") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then pkg_cv_LCMS_CFLAGS=`$PKG_CONFIG --cflags "lcms >= 1.14" 2>/dev/null` else pkg_failed=yes @@ -10074,11 +9491,11 @@ pkg_cv_LCMS_LIBS="$LCMS_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"lcms >= 1.14\"") >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"lcms >= 1.14\""; } >&5 ($PKG_CONFIG --exists --print-errors "lcms >= 1.14") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then pkg_cv_LCMS_LIBS=`$PKG_CONFIG --libs "lcms >= 1.14" 2>/dev/null` else pkg_failed=yes @@ -10090,6 +9507,8 @@ if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -10104,43 +9523,188 @@ # Put the nasty error message in config.log where it belongs echo "$LCMS_PKG_ERRORS" >&5 - { $as_echo "$as_me:$LINENO: result: no" >&5 -$as_echo "no" >&6; } HAVE_LCMS=no - { $as_echo "$as_me:$LINENO: WARNING: $LCMS_PKG_ERRORS" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $LCMS_PKG_ERRORS" >&5 $as_echo "$as_me: WARNING: $LCMS_PKG_ERRORS" >&2;} elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } HAVE_LCMS=no - { $as_echo "$as_me:$LINENO: WARNING: $LCMS_PKG_ERRORS" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $LCMS_PKG_ERRORS" >&5 $as_echo "$as_me: WARNING: $LCMS_PKG_ERRORS" >&2;} else LCMS_CFLAGS=$pkg_cv_LCMS_CFLAGS LCMS_LIBS=$pkg_cv_LCMS_LIBS - { $as_echo "$as_me:$LINENO: result: yes" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } HAVE_LCMS=yes -cat >>confdefs.h <<\_ACEOF -#define HAVE_LCMS 1 +$as_echo "#define HAVE_LCMS 1" >>confdefs.h + + +fi +else + HAVE_LCMS=disabled +fi + + if test "x$HAVE_LCMS" = xyes; then + HAVE_LCMS_TRUE= + HAVE_LCMS_FALSE='#' +else + HAVE_LCMS_TRUE='#' + HAVE_LCMS_FALSE= +fi + + + + +# libjpeg support +# ---------------------------------------------------------------------- + +# Check whether --enable-jpeg was given. +if test "${enable_jpeg+set}" = set; then : + enableval=$enable_jpeg; libjpeg=$enableval +else + libjpeg=auto +fi + + +if test "x${libjpeg}" != "xno"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for jpeg_destroy_decompress in -ljpeg" >&5 +$as_echo_n "checking for jpeg_destroy_decompress in -ljpeg... " >&6; } +if ${ac_cv_lib_jpeg_jpeg_destroy_decompress+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ljpeg $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char jpeg_destroy_decompress (); +int +main () +{ +return jpeg_destroy_decompress (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_jpeg_jpeg_destroy_decompress=yes +else + ac_cv_lib_jpeg_jpeg_destroy_decompress=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_jpeg_jpeg_destroy_decompress" >&5 +$as_echo "$ac_cv_lib_jpeg_jpeg_destroy_decompress" >&6; } +if test "x$ac_cv_lib_jpeg_jpeg_destroy_decompress" = xyes; then : + HAVE_JPEG=yes + JPEG_LIBS=-ljpeg + +$as_echo "#define HAVE_JPEG 1" >>confdefs.h + +else + HAVE_JPEG=no +fi + +else + HAVE_JPEG=disabled +fi + + if test "x$HAVE_JPEG" = xyes; then + HAVE_JPEG_TRUE= + HAVE_JPEG_FALSE='#' +else + HAVE_JPEG_TRUE='#' + HAVE_JPEG_FALSE= +fi + + + + + +# libtiff support +# ---------------------------------------------------------------------- + +# Check whether --enable-tiff was given. +if test "${enable_tiff+set}" = set; then : + enableval=$enable_tiff; libtiff=$enableval +else + libtiff=auto +fi + + +if test "x${libtiff}" != "xno"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for TIFFClientOpen in -ltiff" >&5 +$as_echo_n "checking for TIFFClientOpen in -ltiff... " >&6; } +if ${ac_cv_lib_tiff_TIFFClientOpen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ltiff $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char TIFFClientOpen (); +int +main () +{ +return TIFFClientOpen (); + ; + return 0; +} _ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_tiff_TIFFClientOpen=yes +else + ac_cv_lib_tiff_TIFFClientOpen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_tiff_TIFFClientOpen" >&5 +$as_echo "$ac_cv_lib_tiff_TIFFClientOpen" >&6; } +if test "x$ac_cv_lib_tiff_TIFFClientOpen" = xyes; then : + HAVE_TIFF=yes + TIFF_LIBS=-ltiff +$as_echo "#define HAVE_TIFF 1" >>confdefs.h +else + HAVE_TIFF=no fi + else - HAVE_LCMS=disabled + HAVE_TIFF=disabled fi - if test "x$HAVE_LCMS" = xyes; then - HAVE_LCMS_TRUE= - HAVE_LCMS_FALSE='#' + if test "x$HAVE_TIFF" = xyes; then + HAVE_TIFF_TRUE= + HAVE_TIFF_FALSE='#' else - HAVE_LCMS_TRUE='#' - HAVE_LCMS_FALSE= + HAVE_TIFF_TRUE='#' + HAVE_TIFF_FALSE= fi @@ -10151,7 +9715,7 @@ # ---------------------------------------------------------------------- # Check whether --enable-exiv2 was given. -if test "${enable_exiv2+set}" = set; then +if test "${enable_exiv2+set}" = set; then : enableval=$enable_exiv2; libexiv2=$enableval else libexiv2=auto @@ -10161,18 +9725,18 @@ if test "x${libexiv2}" != "xno"; then pkg_failed=no -{ $as_echo "$as_me:$LINENO: checking for EXIV2" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for EXIV2" >&5 $as_echo_n "checking for EXIV2... " >&6; } if test -n "$EXIV2_CFLAGS"; then pkg_cv_EXIV2_CFLAGS="$EXIV2_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"exiv2 >= 0.11\"") >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"exiv2 >= 0.11\""; } >&5 ($PKG_CONFIG --exists --print-errors "exiv2 >= 0.11") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then pkg_cv_EXIV2_CFLAGS=`$PKG_CONFIG --cflags "exiv2 >= 0.11" 2>/dev/null` else pkg_failed=yes @@ -10184,11 +9748,11 @@ pkg_cv_EXIV2_LIBS="$EXIV2_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"exiv2 >= 0.11\"") >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"exiv2 >= 0.11\""; } >&5 ($PKG_CONFIG --exists --print-errors "exiv2 >= 0.11") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then pkg_cv_EXIV2_LIBS=`$PKG_CONFIG --libs "exiv2 >= 0.11" 2>/dev/null` else pkg_failed=yes @@ -10200,6 +9764,8 @@ if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -10214,30 +9780,28 @@ # Put the nasty error message in config.log where it belongs echo "$EXIV2_PKG_ERRORS" >&5 - { $as_echo "$as_me:$LINENO: result: no" >&5 -$as_echo "no" >&6; } HAVE_EXIV2=no - { $as_echo "$as_me:$LINENO: WARNING: $EXIV2_PKG_ERRORS" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $EXIV2_PKG_ERRORS" >&5 $as_echo "$as_me: WARNING: $EXIV2_PKG_ERRORS" >&2;} elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } HAVE_EXIV2=no - { $as_echo "$as_me:$LINENO: WARNING: $EXIV2_PKG_ERRORS" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $EXIV2_PKG_ERRORS" >&5 $as_echo "$as_me: WARNING: $EXIV2_PKG_ERRORS" >&2;} else EXIV2_CFLAGS=$pkg_cv_EXIV2_CFLAGS EXIV2_LIBS=$pkg_cv_EXIV2_LIBS - { $as_echo "$as_me:$LINENO: result: yes" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } HAVE_EXIV2=yes -cat >>confdefs.h <<\_ACEOF -#define HAVE_EXIV2 1 -_ACEOF +$as_echo "#define HAVE_EXIV2 1" >>confdefs.h fi @@ -10272,151 +9836,12 @@ _ACEOF - -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_c_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_c_preproc_warn_flag$ac_c_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_c_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 geeqie-devel@lists.sourceforge.net ## -## ------------------------------------------------- ## -_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 + for ac_header in locale.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "locale.h" "ac_cv_header_locale_h" "$ac_includes_default" +if test "x$ac_cv_header_locale_h" = xyes; then : cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +#define HAVE_LOCALE_H 1 _ACEOF fi @@ -10424,16 +9849,12 @@ done if test $ac_cv_header_locale_h = yes; then - { $as_echo "$as_me:$LINENO: checking for LC_MESSAGES" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LC_MESSAGES" >&5 $as_echo_n "checking for LC_MESSAGES... " >&6; } -if test "${am_cv_val_LC_MESSAGES+set}" = set; then +if ${am_cv_val_LC_MESSAGES+:} false; 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int @@ -10444,46 +9865,19 @@ 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_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; 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 + 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 +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $am_cv_val_LC_MESSAGES" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_val_LC_MESSAGES" >&5 $as_echo "$am_cv_val_LC_MESSAGES" >&6; } if test $am_cv_val_LC_MESSAGES = yes; then -cat >>confdefs.h <<\_ACEOF -#define HAVE_LC_MESSAGES 1 -_ACEOF +$as_echo "#define HAVE_LC_MESSAGES 1" >>confdefs.h fi fi @@ -10496,155 +9890,20 @@ 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_c_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_c_preproc_warn_flag$ac_c_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_c_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 geeqie-devel@lists.sourceforge.net ## -## ------------------------------------------------- ## -_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 + ac_fn_c_check_header_mongrel "$LINENO" "libintl.h" "ac_cv_header_libintl_h" "$ac_includes_default" +if test "x$ac_cv_header_libintl_h" = xyes; 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 "$as_me:${as_lineno-$LINENO}: checking for ngettext in libc" >&5 $as_echo_n "checking for ngettext in libc... " >&6; } -if test "${gt_cv_func_ngettext_libc+set}" = set; then +if ${gt_cv_func_ngettext_libc+:} false; 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -10657,54 +9916,25 @@ 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_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; 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 + 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 +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $gt_cv_func_ngettext_libc" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_ngettext_libc" >&5 $as_echo "$gt_cv_func_ngettext_libc" >&6; } if test "$gt_cv_func_ngettext_libc" = "yes" ; then - { $as_echo "$as_me:$LINENO: checking for dgettext in libc" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in libc" >&5 $as_echo_n "checking for dgettext in libc... " >&6; } -if test "${gt_cv_func_dgettext_libc+set}" = set; then +if ${gt_cv_func_dgettext_libc+:} false; 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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -10717,141 +9947,26 @@ 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_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; 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 + 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 +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $gt_cv_func_dgettext_libc" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_dgettext_libc" >&5 $as_echo "$gt_cv_func_dgettext_libc" >&6; } fi if test "$gt_cv_func_ngettext_libc" = "yes" ; then - -for ac_func in bind_textdomain_codeset -do -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_c_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 + for ac_func in bind_textdomain_codeset +do : + ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" +if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +#define HAVE_BIND_TEXTDOMAIN_CODESET 1 _ACEOF fi @@ -10866,18 +9981,14 @@ || 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 "$as_me:${as_lineno-$LINENO}: checking for bindtextdomain in -lintl" >&5 $as_echo_n "checking for bindtextdomain in -lintl... " >&6; } -if test "${ac_cv_lib_intl_bindtextdomain+set}" = set; then +if ${ac_cv_lib_intl_bindtextdomain+:} false; 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 +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. @@ -10895,55 +10006,26 @@ 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_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; 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 + 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 +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_bindtextdomain" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_bindtextdomain" >&5 $as_echo "$ac_cv_lib_intl_bindtextdomain" >&6; } -if test "x$ac_cv_lib_intl_bindtextdomain" = x""yes; then - { $as_echo "$as_me:$LINENO: checking for ngettext in -lintl" >&5 +if test "x$ac_cv_lib_intl_bindtextdomain" = xyes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5 $as_echo_n "checking for ngettext in -lintl... " >&6; } -if test "${ac_cv_lib_intl_ngettext+set}" = set; then +if ${ac_cv_lib_intl_ngettext+:} false; 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 +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. @@ -10961,55 +10043,26 @@ 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_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; 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 + 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 +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_ngettext" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_ngettext" >&5 $as_echo "$ac_cv_lib_intl_ngettext" >&6; } -if test "x$ac_cv_lib_intl_ngettext" = x""yes; then - { $as_echo "$as_me:$LINENO: checking for dgettext in -lintl" >&5 +if test "x$ac_cv_lib_intl_ngettext" = xyes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in -lintl" >&5 $as_echo_n "checking for dgettext in -lintl... " >&6; } -if test "${ac_cv_lib_intl_dgettext+set}" = set; then +if ${ac_cv_lib_intl_dgettext+:} false; 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 +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. @@ -11027,43 +10080,18 @@ 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_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; 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 + 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 +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_dgettext" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_dgettext" >&5 $as_echo "$ac_cv_lib_intl_dgettext" >&6; } -if test "x$ac_cv_lib_intl_dgettext" = x""yes; then +if test "x$ac_cv_lib_intl_dgettext" = xyes; then : gt_cv_func_dgettext_libintl=yes fi @@ -11073,22 +10101,18 @@ 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 "$as_me:${as_lineno-$LINENO}: checking if -liconv is needed to use gettext" >&5 $as_echo_n "checking if -liconv is needed to use gettext... " >&6; } - { $as_echo "$as_me:$LINENO: result: " >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5 $as_echo "" >&6; } - { $as_echo "$as_me:$LINENO: checking for ngettext in -lintl" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5 $as_echo_n "checking for ngettext in -lintl... " >&6; } -if test "${ac_cv_lib_intl_ngettext+set}" = set; then +if ${ac_cv_lib_intl_ngettext+:} false; 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 +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. @@ -11106,55 +10130,26 @@ 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_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; 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 + 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 +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_ngettext" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_ngettext" >&5 $as_echo "$ac_cv_lib_intl_ngettext" >&6; } -if test "x$ac_cv_lib_intl_ngettext" = x""yes; then - { $as_echo "$as_me:$LINENO: checking for dcgettext in -lintl" >&5 +if test "x$ac_cv_lib_intl_ngettext" = xyes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dcgettext in -lintl" >&5 $as_echo_n "checking for dcgettext in -lintl... " >&6; } -if test "${ac_cv_lib_intl_dcgettext+set}" = set; then +if ${ac_cv_lib_intl_dcgettext+:} false; 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 +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. @@ -11172,43 +10167,18 @@ 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_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; 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 + 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 +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_dcgettext" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_dcgettext" >&5 $as_echo "$ac_cv_lib_intl_dcgettext" >&6; } -if test "x$ac_cv_lib_intl_dcgettext" = x""yes; then +if test "x$ac_cv_lib_intl_dcgettext" = xyes; then : gt_cv_func_dgettext_libintl=yes libintl_extra_libs=-liconv else @@ -11230,102 +10200,12 @@ 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_c_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 + for ac_func in bind_textdomain_codeset +do : + ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" +if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +#define HAVE_BIND_TEXTDOMAIN_CODESET 1 _ACEOF fi @@ -11355,15 +10235,13 @@ if test "$gt_cv_have_gettext" = "yes"; then -cat >>confdefs.h <<\_ACEOF -#define HAVE_GETTEXT 1 -_ACEOF +$as_echo "#define HAVE_GETTEXT 1" >>confdefs.h # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_MSGFMT+set}" = set; then +if ${ac_cv_path_MSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else case "$MSGFMT" in @@ -11388,118 +10266,28 @@ fi MSGFMT="$ac_cv_path_MSGFMT" if test "$MSGFMT" != "no"; then - { $as_echo "$as_me:$LINENO: result: $MSGFMT" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 $as_echo "$MSGFMT" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "$MSGFMT" != "no"; then glib_save_LIBS="$LIBS" LIBS="$LIBS $INTLLIBS" - -for ac_func in dcgettext -do -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_c_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 + for ac_func in dcgettext +do : + ac_fn_c_check_func "$LINENO" "dcgettext" "ac_cv_func_dcgettext" +if test "x$ac_cv_func_dcgettext" = xyes; then : cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +#define HAVE_DCGETTEXT 1 _ACEOF fi done MSGFMT_OPTS= - { $as_echo "$as_me:$LINENO: checking if msgfmt accepts -c" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if msgfmt accepts -c" >&5 $as_echo_n "checking if msgfmt accepts -c... " >&6; } cat >conftest.foo <<_ACEOF @@ -11514,14 +10302,14 @@ "Content-Transfer-Encoding: 8bit\n" _ACEOF -if { ($as_echo "$as_me:$LINENO: \$MSGFMT -c -o /dev/null conftest.foo") >&5 +if { { $as_echo "$as_me:${as_lineno-$LINENO}: \$MSGFMT -c -o /dev/null conftest.foo"; } >&5 ($MSGFMT -c -o /dev/null conftest.foo) 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - MSGFMT_OPTS=-c; { $as_echo "$as_me:$LINENO: result: yes" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + MSGFMT_OPTS=-c; { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } -else { $as_echo "$as_me:$LINENO: result: no" >&5 +else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } echo "$as_me: failed input was:" >&5 sed 's/^/| /' conftest.foo >&5 @@ -11529,9 +10317,9 @@ # 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 "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_GMSGFMT+set}" = set; then +if ${ac_cv_path_GMSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else case $GMSGFMT in @@ -11544,14 +10332,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + 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 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" @@ -11560,19 +10348,19 @@ fi GMSGFMT=$ac_cv_path_GMSGFMT if test -n "$GMSGFMT"; then - { $as_echo "$as_me:$LINENO: result: $GMSGFMT" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 $as_echo "$GMSGFMT" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_XGETTEXT+set}" = set; then +if ${ac_cv_path_XGETTEXT+:} false; then : $as_echo_n "(cached) " >&6 else case "$XGETTEXT" in @@ -11597,18 +10385,14 @@ fi XGETTEXT="$ac_cv_path_XGETTEXT" if test "$XGETTEXT" != ":"; then - { $as_echo "$as_me:$LINENO: result: $XGETTEXT" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 $as_echo "$XGETTEXT" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$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 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -11620,121 +10404,14 @@ 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_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; 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_c_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 + case $host in + *-*-solaris*) + ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" +if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : CATOBJEXT=.gmo DATADIRNAME=share else @@ -11743,16 +10420,18 @@ fi ;; + *-*-openbsd*) + CATOBJEXT=.mo + DATADIRNAME=share + ;; *) 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 +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS="$glib_save_LIBS" INSTOBJEXT=.mo else @@ -11766,9 +10445,7 @@ if test "$gt_cv_have_gettext" = "yes" ; then -cat >>confdefs.h <<\_ACEOF -#define ENABLE_NLS 1 -_ACEOF +$as_echo "#define ENABLE_NLS 1" >>confdefs.h fi @@ -11776,7 +10453,7 @@ 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 "$as_me:${as_lineno-$LINENO}: result: found xgettext program is not GNU xgettext; ignore it" >&5 $as_echo "found xgettext program is not GNU xgettext; ignore it" >&6; } XGETTEXT=":" fi @@ -11809,7 +10486,7 @@ if test "x$ALL_LINGUAS" = "x"; then LINGUAS= else - { $as_echo "$as_me:$LINENO: checking for catalogs to be installed" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for catalogs to be installed" >&5 $as_echo_n "checking for catalogs to be installed... " >&6; } NEW_LINGUAS= for presentlang in $ALL_LINGUAS; do @@ -11834,7 +10511,7 @@ fi done LINGUAS=$NEW_LINGUAS - { $as_echo "$as_me:$LINENO: result: $LINGUAS" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LINGUAS" >&5 $as_echo "$LINGUAS" >&6; } fi @@ -11843,6 +10520,15 @@ 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 @@ -11888,7 +10574,7 @@ # ---------------------------------------------------------------------- # Check whether --enable-gps was given. -if test "${enable_gps+set}" = set; then +if test "${enable_gps+set}" = set; then : enableval=$enable_gps; libgps=$enableval else libgps=auto @@ -11898,18 +10584,18 @@ if test "x${libgps}" = "xyes"; then pkg_failed=no -{ $as_echo "$as_me:$LINENO: checking for LIBCHAMPLAIN" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBCHAMPLAIN" >&5 $as_echo_n "checking for LIBCHAMPLAIN... " >&6; } if test -n "$LIBCHAMPLAIN_CFLAGS"; then pkg_cv_LIBCHAMPLAIN_CFLAGS="$LIBCHAMPLAIN_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"champlain-0.4 >= 0.4\"") >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"champlain-0.4 >= 0.4\""; } >&5 ($PKG_CONFIG --exists --print-errors "champlain-0.4 >= 0.4") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then pkg_cv_LIBCHAMPLAIN_CFLAGS=`$PKG_CONFIG --cflags "champlain-0.4 >= 0.4" 2>/dev/null` else pkg_failed=yes @@ -11921,11 +10607,11 @@ pkg_cv_LIBCHAMPLAIN_LIBS="$LIBCHAMPLAIN_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"champlain-0.4 >= 0.4\"") >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"champlain-0.4 >= 0.4\""; } >&5 ($PKG_CONFIG --exists --print-errors "champlain-0.4 >= 0.4") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then pkg_cv_LIBCHAMPLAIN_LIBS=`$PKG_CONFIG --libs "champlain-0.4 >= 0.4" 2>/dev/null` else pkg_failed=yes @@ -11937,6 +10623,8 @@ if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -11951,30 +10639,28 @@ # Put the nasty error message in config.log where it belongs echo "$LIBCHAMPLAIN_PKG_ERRORS" >&5 - { $as_echo "$as_me:$LINENO: result: no" >&5 -$as_echo "no" >&6; } HAVE_LIBCHAMPLAIN=no - { $as_echo "$as_me:$LINENO: WARNING: $LIBCHAMPLAIN_PKG_ERRORS" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $LIBCHAMPLAIN_PKG_ERRORS" >&5 $as_echo "$as_me: WARNING: $LIBCHAMPLAIN_PKG_ERRORS" >&2;} elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } HAVE_LIBCHAMPLAIN=no - { $as_echo "$as_me:$LINENO: WARNING: $LIBCHAMPLAIN_PKG_ERRORS" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $LIBCHAMPLAIN_PKG_ERRORS" >&5 $as_echo "$as_me: WARNING: $LIBCHAMPLAIN_PKG_ERRORS" >&2;} else LIBCHAMPLAIN_CFLAGS=$pkg_cv_LIBCHAMPLAIN_CFLAGS LIBCHAMPLAIN_LIBS=$pkg_cv_LIBCHAMPLAIN_LIBS - { $as_echo "$as_me:$LINENO: result: yes" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } HAVE_LIBCHAMPLAIN=yes -cat >>confdefs.h <<\_ACEOF -#define HAVE_LIBCHAMPLAIN 1 -_ACEOF +$as_echo "#define HAVE_LIBCHAMPLAIN 1" >>confdefs.h fi @@ -11985,18 +10671,18 @@ if test "x${libgps}" = "xyes"; then pkg_failed=no -{ $as_echo "$as_me:$LINENO: checking for LIBCHAMPLAIN_GTK" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBCHAMPLAIN_GTK" >&5 $as_echo_n "checking for LIBCHAMPLAIN_GTK... " >&6; } if test -n "$LIBCHAMPLAIN_GTK_CFLAGS"; then pkg_cv_LIBCHAMPLAIN_GTK_CFLAGS="$LIBCHAMPLAIN_GTK_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"champlain-gtk-0.4 >= 0.4\"") >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"champlain-gtk-0.4 >= 0.4\""; } >&5 ($PKG_CONFIG --exists --print-errors "champlain-gtk-0.4 >= 0.4") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then pkg_cv_LIBCHAMPLAIN_GTK_CFLAGS=`$PKG_CONFIG --cflags "champlain-gtk-0.4 >= 0.4" 2>/dev/null` else pkg_failed=yes @@ -12008,11 +10694,11 @@ pkg_cv_LIBCHAMPLAIN_GTK_LIBS="$LIBCHAMPLAIN_GTK_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"champlain-gtk-0.4 >= 0.4\"") >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"champlain-gtk-0.4 >= 0.4\""; } >&5 ($PKG_CONFIG --exists --print-errors "champlain-gtk-0.4 >= 0.4") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then pkg_cv_LIBCHAMPLAIN_GTK_LIBS=`$PKG_CONFIG --libs "champlain-gtk-0.4 >= 0.4" 2>/dev/null` else pkg_failed=yes @@ -12024,6 +10710,8 @@ if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes @@ -12038,30 +10726,28 @@ # Put the nasty error message in config.log where it belongs echo "$LIBCHAMPLAIN_GTK_PKG_ERRORS" >&5 - { $as_echo "$as_me:$LINENO: result: no" >&5 -$as_echo "no" >&6; } HAVE_LIBCHAMPLAIN_GTK=no - { $as_echo "$as_me:$LINENO: WARNING: $LIBCHAMPLAIN_GTK_PKG_ERRORS" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $LIBCHAMPLAIN_GTK_PKG_ERRORS" >&5 $as_echo "$as_me: WARNING: $LIBCHAMPLAIN_GTK_PKG_ERRORS" >&2;} elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } HAVE_LIBCHAMPLAIN_GTK=no - { $as_echo "$as_me:$LINENO: WARNING: $LIBCHAMPLAIN_GTK_PKG_ERRORS" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $LIBCHAMPLAIN_GTK_PKG_ERRORS" >&5 $as_echo "$as_me: WARNING: $LIBCHAMPLAIN_GTK_PKG_ERRORS" >&2;} else LIBCHAMPLAIN_GTK_CFLAGS=$pkg_cv_LIBCHAMPLAIN_GTK_CFLAGS LIBCHAMPLAIN_GTK_LIBS=$pkg_cv_LIBCHAMPLAIN_GTK_LIBS - { $as_echo "$as_me:$LINENO: result: yes" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } HAVE_LIBCHAMPLAIN_GTK=yes -cat >>confdefs.h <<\_ACEOF -#define HAVE_LIBCHAMPLAIN_GTK 1 -_ACEOF +$as_echo "#define HAVE_LIBCHAMPLAIN_GTK 1" >>confdefs.h fi @@ -12085,8 +10771,6 @@ - - ac_config_files="$ac_config_files Makefile src/Makefile src/icons/Makefile src/icons/svg/Makefile po/Makefile.in doc/Makefile plugins/Makefile plugins/symlink/Makefile plugins/rotate/Makefile plugins/ufraw/Makefile plugins/import/Makefile geeqie.spec" @@ -12117,13 +10801,13 @@ 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 + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) $as_unset $ac_var ;; + *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done @@ -12131,8 +10815,8 @@ (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 \). + # `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" @@ -12154,12 +10838,23 @@ :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 + if test "x$cache_file" != "x/dev/null"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 $as_echo "$as_me: updating cache $cache_file" >&6;} - cat confcache >$cache_file + if test ! -f "$cache_file" || test -h "$cache_file"; then + cat confcache >"$cache_file" + else + case $cache_file in #( + */* | ?:*) + mv -f confcache "$cache_file"$$ && + mv -f "$cache_file"$$ "$cache_file" ;; #( + *) + mv -f confcache "$cache_file" ;; + esac + fi + fi else - { $as_echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi @@ -12173,291 +10868,198 @@ ac_libobjs= ac_ltlibobjs= +U= 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' + as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" + as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs + if test -n "$EXEEXT"; then + am__EXEEXT_TRUE= + am__EXEEXT_FALSE='#' +else + am__EXEEXT_TRUE='#' + am__EXEEXT_FALSE= +fi + if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"MAINTAINER_MODE\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_doc_TRUE}" && test -z "${DX_COND_doc_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_doc\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_doc\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_doc\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_doc_TRUE}" && test -z "${DX_COND_doc_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_doc\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_doc\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_doc\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_dot_TRUE}" && test -z "${DX_COND_dot_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_dot\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_dot\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_dot\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_dot_TRUE}" && test -z "${DX_COND_dot_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_dot\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_dot\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_dot\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_man_TRUE}" && test -z "${DX_COND_man_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_man\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_man\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_man\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_man_TRUE}" && test -z "${DX_COND_man_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_man\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_man\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_man\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_rtf_TRUE}" && test -z "${DX_COND_rtf_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_rtf\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_rtf\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_rtf\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_rtf_TRUE}" && test -z "${DX_COND_rtf_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_rtf\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_rtf\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_rtf\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_xml_TRUE}" && test -z "${DX_COND_xml_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_xml\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_xml\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_xml\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_xml_TRUE}" && test -z "${DX_COND_xml_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_xml\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_xml\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_xml\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_chm_TRUE}" && test -z "${DX_COND_chm_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_chm\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_chm\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_chm\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_chm_TRUE}" && test -z "${DX_COND_chm_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_chm\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_chm\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_chm\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_chi_TRUE}" && test -z "${DX_COND_chi_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_chi\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_chi\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_chi\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_chi_TRUE}" && test -z "${DX_COND_chi_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_chi\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_chi\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_chi\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_html_TRUE}" && test -z "${DX_COND_html_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_html\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_html\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_html\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_html_TRUE}" && test -z "${DX_COND_html_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_html\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_html\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_html\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_ps_TRUE}" && test -z "${DX_COND_ps_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_ps\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_ps\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_ps\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_ps_TRUE}" && test -z "${DX_COND_ps_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_ps\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_ps\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_ps\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_pdf_TRUE}" && test -z "${DX_COND_pdf_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_pdf\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_pdf\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_pdf\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_pdf_TRUE}" && test -z "${DX_COND_pdf_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_pdf\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_pdf\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_pdf\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_latex_TRUE}" && test -z "${DX_COND_latex_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_latex\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_latex\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_latex\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DX_COND_latex_TRUE}" && test -z "${DX_COND_latex_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DX_COND_latex\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DX_COND_latex\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DX_COND_latex\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DEBUG_TRUE}" && test -z "${DEBUG_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"DEBUG\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"DEBUG\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DEBUG\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then - { { $as_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; }; } + as_fn_error $? "conditional \"AMDEP\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then - { { $as_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; }; } + as_fn_error $? "conditional \"am__fastdepCC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then - { { $as_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; }; } + as_fn_error $? "conditional \"am__fastdepCC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__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; }; } + as_fn_error $? "conditional \"am__fastdepCXX\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi ac_config_commands="$ac_config_commands po/stamp-it" if test -z "${PLATFORM_WIN32_TRUE}" && test -z "${PLATFORM_WIN32_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"PLATFORM_WIN32\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"PLATFORM_WIN32\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"PLATFORM_WIN32\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${OS_WIN32_TRUE}" && test -z "${OS_WIN32_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"OS_WIN32\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"OS_WIN32\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"OS_WIN32\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${OS_UNIX_TRUE}" && test -z "${OS_UNIX_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"OS_UNIX\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"OS_UNIX\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"OS_UNIX\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${MS_LIB_AVAILABLE_TRUE}" && test -z "${MS_LIB_AVAILABLE_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"MS_LIB_AVAILABLE\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"MS_LIB_AVAILABLE\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"MS_LIB_AVAILABLE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${HAVE_WINDRES_TRUE}" && test -z "${HAVE_WINDRES_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_WINDRES\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"HAVE_WINDRES\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"HAVE_WINDRES\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${HAVE_LIRC_TRUE}" && test -z "${HAVE_LIRC_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_LIRC\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"HAVE_LIRC\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"HAVE_LIRC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${HAVE_LCMS_TRUE}" && test -z "${HAVE_LCMS_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_LCMS\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"HAVE_LCMS\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"HAVE_LCMS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${HAVE_JPEG_TRUE}" && test -z "${HAVE_JPEG_FALSE}"; then + as_fn_error $? "conditional \"HAVE_JPEG\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${HAVE_TIFF_TRUE}" && test -z "${HAVE_TIFF_FALSE}"; then + as_fn_error $? "conditional \"HAVE_TIFF\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${HAVE_EXIV2_TRUE}" && test -z "${HAVE_EXIV2_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_EXIV2\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"HAVE_EXIV2\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"HAVE_EXIV2\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${HAVE_LIBCHAMPLAIN_GTK_TRUE}" && test -z "${HAVE_LIBCHAMPLAIN_GTK_FALSE}"; then - { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_LIBCHAMPLAIN_GTK\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -$as_echo "$as_me: error: conditional \"HAVE_LIBCHAMPLAIN_GTK\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"HAVE_LIBCHAMPLAIN_GTK\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -: ${CONFIG_STATUS=./config.status} +: "${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:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 $as_echo "$as_me: creating $CONFIG_STATUS" >&6;} -cat >$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +as_write_fail=0 +cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. @@ -12467,17 +11069,18 @@ 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. ## -## --------------------- ## +SHELL=\${CONFIG_SHELL-$SHELL} +export SHELL +_ASEOF +cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then +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 @@ -12485,23 +11088,15 @@ alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; + 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 @@ -12509,7 +11104,13 @@ 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 +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else @@ -12520,7 +11121,7 @@ as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; - case $arg in + case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; @@ -12543,13 +11144,6 @@ } 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 @@ -12559,15 +11153,16 @@ IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. -case $0 in +as_myself= +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 + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done IFS=$as_save_IFS ;; @@ -12579,12 +11174,16 @@ 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; } + 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 +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' @@ -12596,7 +11195,89 @@ LANGUAGE=C export LANGUAGE -# Required to use basename. +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr @@ -12610,8 +11291,12 @@ as_basename=false fi +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi -# Name of the executable. as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ @@ -12631,76 +11316,25 @@ } 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 +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in +case `echo -n x` in #((((( -n*) - case `echo 'x\c'` in + case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; 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 @@ -12729,8 +11363,56 @@ rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p if mkdir -p . 2>/dev/null; then - as_mkdir_p=: + as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false @@ -12749,10 +11431,10 @@ if test -d "$1"; then test -d "$1/."; else - case $1 in + case $1 in #( -*)set "./$1";; esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( ???[sx]*):;;*)false;;esac;fi '\'' sh ' @@ -12767,13 +11449,19 @@ exec 6>&1 +## ----------------------------------- ## +## Main body of $CONFIG_STATUS script. ## +## ----------------------------------- ## +_ASEOF +test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 -# Save the log message, to keep $[0] and so on meaningful, and to +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# Save the log message, to keep $0 and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by geeqie $as_me 1.0, which was -generated by GNU Autoconf 2.63. Invocation command line was +This file was extended by geeqie $as_me 1.1, which was +generated by GNU Autoconf 2.68. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -12805,13 +11493,15 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. +\`$as_me' instantiates files and other configuration actions +from templates according to the current configuration. Unless the files +and actions are specified as TAGs, all are instantiated by default. -Usage: $0 [OPTION]... [FILE]... +Usage: $0 [OPTION]... [TAG]... -h, --help print this help, then exit -V, --version print version number and configuration settings, then exit + --config print configuration, then exit -q, --quiet, --silent do not print progress messages -d, --debug don't remove temporary files @@ -12830,16 +11520,17 @@ Configuration commands: $config_commands -Report bugs to ." +Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -geeqie config.status 1.0 -configured by $0, generated by GNU Autoconf 2.63, - with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" +geeqie config.status 1.1 +configured by $0, generated by GNU Autoconf 2.68, + with options \\"\$ac_cs_config\\" -Copyright (C) 2008 Free Software Foundation, Inc. +Copyright (C) 2010 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." @@ -12857,11 +11548,16 @@ while test $# != 0 do case $1 in - --*=*) + --*=?*) ac_option=`expr "X$1" : 'X\([^=]*\)='` ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` ac_shift=: ;; + --*=) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg= + ac_shift=: + ;; *) ac_option=$1 ac_optarg=$2 @@ -12875,27 +11571,29 @@ ac_cs_recheck=: ;; --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) $as_echo "$ac_cs_version"; exit ;; + --config | --confi | --conf | --con | --co | --c ) + $as_echo "$ac_cs_config"; exit ;; --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + '') as_fn_error $? "missing file argument" ;; esac - CONFIG_FILES="$CONFIG_FILES '$ac_optarg'" + as_fn_append CONFIG_FILES " '$ac_optarg'" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; esac - CONFIG_HEADERS="$CONFIG_HEADERS '$ac_optarg'" + as_fn_append 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; }; };; + as_fn_error $? "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; --help | --hel | -h ) $as_echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ @@ -12903,11 +11601,10 @@ 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; }; } ;; + -*) as_fn_error $? "unrecognized option: \`$1' +Try \`$0 --help' for more information." ;; - *) ac_config_targets="$ac_config_targets $1" + *) as_fn_append ac_config_targets " $1" ac_need_defaults=false ;; esac @@ -12976,9 +11673,7 @@ "geeqie.spec") CONFIG_FILES="$CONFIG_FILES geeqie.spec" ;; "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; }; };; + *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac done @@ -13001,26 +11696,24 @@ # after its creation but before its name has been assigned to `$tmp'. $debug || { - tmp= + tmp= ac_tmp= trap 'exit_status=$? - { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status + : "${ac_tmp:=$tmp}" + { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status ' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 + trap 'as_fn_exit 1' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. { tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" + 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; } -} +} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 +ac_tmp=$tmp # Set up the scripts for CONFIG_FILES section. # No need to generate them if there are no CONFIG_FILES. @@ -13028,7 +11721,13 @@ if test -n "$CONFIG_FILES"; then -ac_cr=' ' +ac_cr=`echo X | tr X '\015'` +# On cygwin, bash can eat \r inside `` if the user requested igncr. +# But we know of no other shell where ac_cr would be empty at this +# point, so we can use a bashism as a fallback. +if test "x$ac_cr" = x; then + eval ac_cr=\$\'\\r\' +fi ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then ac_cs_awk_cr='\\r' @@ -13036,7 +11735,7 @@ ac_cs_awk_cr=$ac_cr fi -echo 'BEGIN {' >"$tmp/subs1.awk" && +echo 'BEGIN {' >"$ac_tmp/subs1.awk" && _ACEOF @@ -13045,24 +11744,18 @@ 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 '$'` + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 +ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` ac_delim='%!_!# ' for ac_last_try in false false false false false :; do . ./conf$$subs.sh || - { { $as_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; }; } + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` if test $ac_delim_n = $ac_delim_num; then break elif $ac_last_try; then - { { $as_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; }; } + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi @@ -13070,7 +11763,7 @@ rm -f conf$$subs.sh cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -cat >>"\$tmp/subs1.awk" <<\\_ACAWK && +cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && _ACEOF sed -n ' h @@ -13084,7 +11777,7 @@ t delim :nl h -s/\(.\{148\}\).*/\1/ +s/\(.\{148\}\)..*/\1/ t more1 s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ p @@ -13098,7 +11791,7 @@ t nl :delim h -s/\(.\{148\}\).*/\1/ +s/\(.\{148\}\)..*/\1/ t more2 s/["\\]/\\&/g; s/^/"/; s/$/"/ p @@ -13118,7 +11811,7 @@ rm -f conf$$subs.awk cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 _ACAWK -cat >>"\$tmp/subs1.awk" <<_ACAWK && +cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && for (key in S) S_is_set[key] = 1 FS = "" @@ -13150,23 +11843,29 @@ 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; }; } +fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ + || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 _ACEOF -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and +# VPATH may cause trouble with some makes, so we remove sole $(srcdir), +# ${srcdir} and @srcdir@ entries 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/ + ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ +h +s/// +s/^/:/ +s/[ ]*$/:/ +s/:\$(srcdir):/:/g +s/:\${srcdir}:/:/g +s/:@srcdir@:/:/g +s/^:*// s/:*$// +x +s/\(=[ ]*\).*/\1/ +G +s/\n// s/^[^=]*=[ ]*$// }' fi @@ -13178,7 +11877,7 @@ # 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 || +cat >"$ac_tmp/defines.awk" <<\_ACAWK || BEGIN { _ACEOF @@ -13190,13 +11889,11 @@ # 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 + ac_tt=`sed -n "/$ac_delim/p" confdefs.h` + if test -z "$ac_tt"; 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; }; } + as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi @@ -13281,9 +11978,7 @@ _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; }; } + as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 fi # test -n "$CONFIG_HEADERS" @@ -13296,9 +11991,7 @@ 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; }; };; + :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; :[FH]-) ac_tag=-:-;; :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; esac @@ -13317,7 +12010,7 @@ for ac_f do case $ac_f in - -) ac_f="$tmp/stdin";; + -) ac_f="$ac_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 `:'. @@ -13326,12 +12019,10 @@ [\\/$]*) 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; }; };; + as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; esac case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - ac_file_inputs="$ac_file_inputs '$ac_f'" + as_fn_append ac_file_inputs " '$ac_f'" done # Let's still pretend it is `configure' which instantiates (i.e., don't @@ -13342,7 +12033,7 @@ `' 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:${as_lineno-$LINENO}: creating $ac_file" >&5 $as_echo "$as_me: creating $ac_file" >&6;} fi # Neutralize special characters interpreted by sed in replacement strings. @@ -13354,10 +12045,8 @@ 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; }; } ;; + *:-:* | *:-) cat >"$ac_tmp/stdin" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; esac ;; esac @@ -13385,47 +12074,7 @@ 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; }; }; } + as_dir="$ac_dir"; as_fn_mkdir_p ac_builddir=. case "$ac_dir" in @@ -13482,7 +12131,6 @@ # 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 @@ -13492,12 +12140,11 @@ /@docdir@/p /@infodir@/p /@localedir@/p -/@mandir@/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:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 @@ -13507,7 +12154,7 @@ s&@infodir@&$infodir&g s&@localedir@&$localedir&g s&@mandir@&$mandir&g - s&\\\${datarootdir}&$datarootdir&g' ;; + s&\\\${datarootdir}&$datarootdir&g' ;; esac _ACEOF @@ -13535,27 +12182,24 @@ 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; }; } +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ + >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&5 + { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ + "$ac_tmp/out"`; test -z "$ac_out"; } && + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&5 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&2;} +which seems to be undefined. Please make sure it is defined" >&2;} - rm -f "$tmp/stdin" + rm -f "$ac_tmp/stdin" case $ac_file in - -) cat "$tmp/out" && rm -f "$tmp/out";; - *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; + -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; + *) rm -f "$ac_file" && mv "$ac_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; }; } + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; :H) # @@ -13564,27 +12208,21 @@ 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 + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" + } >"$ac_tmp/config.h" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then + { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 $as_echo "$as_me: $ac_file is unchanged" >&6;} else rm -f "$ac_file" - mv "$tmp/config.h" "$ac_file" \ - || { { $as_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; }; } + mv "$ac_tmp/config.h" "$ac_file" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 fi else $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ - || { { $as_echo "$as_me:$LINENO: error: could not create -" >&5 -$as_echo "$as_me: error: could not create -" >&2;} - { (exit 1); exit 1; }; } + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ + || as_fn_error $? "could not create -" "$LINENO" 5 fi # Compute "$ac_file"'s index in $config_headers. _am_arg="$ac_file" @@ -13622,25 +12260,35 @@ s/.*/./; q'`/stamp-h$_am_stamp_count ;; - :C) { $as_echo "$as_me:$LINENO: executing $ac_file commands" >&5 + :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 $as_echo "$as_me: executing $ac_file commands" >&6;} ;; esac case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; 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" || + "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\(//\)$' \| \ @@ -13663,28 +12311,28 @@ 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" || + 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\(//\)$' \| \ @@ -13707,60 +12355,19 @@ 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 + as_dir=$dirpart/$fdir; as_fn_mkdir_p + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" 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; }; } + as_fn_error $? "po/Makefile.in.in was not created by intltoolize." "$LINENO" 5 fi rm -f "po/stamp-it" "po/stamp-it.tmp" "po/POTFILES" "po/Makefile.tmp" >"po/stamp-it.tmp" @@ -13783,15 +12390,12 @@ done # for ac_tag -{ (exit 0); exit 0; } +as_fn_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; }; } + as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 # configure is writing to config.log, and then calls config.status. @@ -13812,10 +12416,10 @@ 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; } + $ac_cs_success || as_fn_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:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi @@ -13844,7 +12448,7 @@ Gtk: $GTK_CFLAGS Glib: $GLIB_CFLAGS Thread: $GTHREAD_LIBS - Others: $LCMS_LIBS $EXIV2_LIBS $LIBCHAMPLAIN_LIBS $LIBCHAMPLAIN_GTK_LIBS + Others: $JPEG_LIBS $TIFF_LIBS $LCMS_LIBS $EXIV2_LIBS $LIBCHAMPLAIN_LIBS $LIBCHAMPLAIN_GTK_LIBS Localization: NLS support: $USE_NLS diff -Nru geeqie-1.0/configure.in geeqie-1.1/configure.in --- geeqie-1.0/configure.in 2010-02-17 21:21:23.000000000 +0000 +++ geeqie-1.1/configure.in 2012-08-12 20:13:40.000000000 +0000 @@ -2,7 +2,7 @@ -*- dnl This file is a part of Geeqie project (http://geeqie.sourceforge.net/). -dnl Copyright (C) 2008 - 2010 The Geeqie Team +dnl Copyright (C) 2008 - 2012 The Geeqie Team dnl dnl This program is free software; you can redistribute it and/or modify dnl it under the terms of the GNU General Public License as published by @@ -15,7 +15,7 @@ dnl GNU General Public License for more details. AC_PREREQ(2.57) -AC_INIT(geeqie, 1.0, geeqie-devel@lists.sourceforge.net) +AC_INIT(geeqie, 1.1, geeqie-devel@lists.sourceforge.net) # Check for rightly dirs AC_CONFIG_SRCDIR([src/main.c]) @@ -128,6 +128,7 @@ AC_PROG_CXX AC_STDC_HEADERS AC_ARG_PROGRAM +AC_SYS_LARGEFILE IT_PROG_INTLTOOL([0.35.0]) @@ -291,6 +292,49 @@ AC_SUBST(LCMS_CFLAGS) AC_SUBST(LCMS_LIBS) +# libjpeg support +# ---------------------------------------------------------------------- + +AC_ARG_ENABLE([jpeg], + AC_HELP_STRING([--disable-jpeg], [disable direct jpeg support]), + [libjpeg=$enableval], [libjpeg=auto]) + +if test "x${libjpeg}" != "xno"; then + AC_CHECK_LIB(jpeg, jpeg_destroy_decompress, + HAVE_JPEG=yes + JPEG_LIBS=-ljpeg + AC_DEFINE(HAVE_JPEG, 1, [define to enable use of custom jpeg loader]), + HAVE_JPEG=no) +else + HAVE_JPEG=disabled +fi + +AM_CONDITIONAL(HAVE_JPEG, [test "x$HAVE_JPEG" = xyes]) +AC_SUBST(JPEG_CFLAGS) +AC_SUBST(JPEG_LIBS) + + +# libtiff support +# ---------------------------------------------------------------------- + +AC_ARG_ENABLE([tiff], + AC_HELP_STRING([--disable-tiff], [disable direct tiff support]), + [libtiff=$enableval], [libtiff=auto]) + +if test "x${libtiff}" != "xno"; then + AC_CHECK_LIB(tiff, TIFFClientOpen, + HAVE_TIFF=yes + TIFF_LIBS=-ltiff + AC_DEFINE(HAVE_TIFF, 1, [define to enable use of custom tiff loader]), + HAVE_TIFF=no) +else + HAVE_TIFF=disabled +fi + +AM_CONDITIONAL(HAVE_TIFF, [test "x$HAVE_TIFF" = xyes]) +AC_SUBST(TIFF_CFLAGS) +AC_SUBST(TIFF_LIBS) + # Exiv2 support # ---------------------------------------------------------------------- @@ -384,7 +428,7 @@ /* * This file is a part of Geeqie project (http://geeqie.sourceforge.net/). - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * 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 @@ -449,7 +493,7 @@ Gtk: $GTK_CFLAGS Glib: $GLIB_CFLAGS Thread: $GTHREAD_LIBS - Others: $LCMS_LIBS $EXIV2_LIBS $LIBCHAMPLAIN_LIBS $LIBCHAMPLAIN_GTK_LIBS + Others: $JPEG_LIBS $TIFF_LIBS $LCMS_LIBS $EXIV2_LIBS $LIBCHAMPLAIN_LIBS $LIBCHAMPLAIN_GTK_LIBS Localization: NLS support: $USE_NLS diff -Nru geeqie-1.0/debian/changelog geeqie-1.1/debian/changelog --- geeqie-1.0/debian/changelog 2012-05-13 06:51:21.000000000 +0000 +++ geeqie-1.1/debian/changelog 2012-09-29 16:50:21.000000000 +0000 @@ -1,8 +1,62 @@ -geeqie (1:1.0-10.1build1) quantal; urgency=low +geeqie (1:1.1-0~ppa6) quantal; urgency=low - * No change rebuild for new libexiv2 + * - -- Micah Gersten Sat, 12 May 2012 23:50:55 -0700 + -- Sawa (ikoinoba) Wed, 05 Sep 2012 22:05:19 +0900 + +geeqie (1:1.1-6) experimental; urgency=low + + * Fixed another FTBFS on some architectures. + + -- Michal Čihař Thu, 23 Aug 2012 10:18:17 +0200 + +geeqie (1:1.1-5) experimental; urgency=low + + * Fixed typo in a patch. + + -- Michal Čihař Wed, 22 Aug 2012 14:58:48 +0200 + +geeqie (1:1.1-4) experimental; urgency=low + + * Another attempt to fix big endians by not using private GdkPixbuf data. + + -- Michal Čihař Wed, 22 Aug 2012 14:21:51 +0200 + +geeqie (1:1.1-3) experimental; urgency=low + + * Fix FTBFS on big endian architectures. + + -- Michal Čihař Tue, 21 Aug 2012 14:54:43 +0200 + +geeqie (1:1.1-2) experimental; urgency=low + + * Fix FTBFS on several architectures. + + -- Michal Čihař Tue, 21 Aug 2012 13:11:24 +0200 + +geeqie (1:1.1-1) experimental; urgency=low + + [ Andreas Metzler ] + * New upstream version (Closes: #684987). + - Fixes crash on no read permission (Closes: #582636, LP: #617233). + - Better handles incorrect file name encodings (Closes: #657041). + - Fixes crash on opening new view (Closes: #619976). + - Fixes setting background color (LP: #887711). + - Correctly shows PGMs (LP: #879290). + * Drop patches included upstream. (lfs-suport.patch bug-529531.patch + bug-562488.patch bug-574853.patch bug-620895.patch) + * Add build-depends on libtiff-dev and libjpeg-dev to make use of newly + available custom loaders. + + [ Michal Čihař ] + * Upload to experimental. + * Bump standards to 3.9.3. + * Use dpkg build flags. + * Drop transitional gqview packages. + * Stop using alternatives for geeqie (LP: #986499). + * Update thumbnail while rotating images (Closes: #669870). + + -- Michal Čihař Tue, 21 Aug 2012 10:06:33 +0200 geeqie (1:1.0-10.1) unstable; urgency=high @@ -76,7 +130,7 @@ geeqie (1:1.0-4) unstable; urgency=low - * Rebuild against fixed libexiv version and build conflict with + * Rebuild against fixed libexiv version and build conflict with broken one (Closes: #586058). -- Michal Čihař Wed, 16 Jun 2010 10:15:24 +0200 @@ -111,7 +165,7 @@ * Add plugins for lossless rotation (Closes: #330543, #562538). * Better description of geeqie-gps package. * Include README.lirc in documentation (Closes: #563282). - * Update README.Debian to match current state of GQview/Geeqie + * Update README.Debian to match current state of GQview/Geeqie (Closes: #562489). -- Michal Čihař Sat, 02 Jan 2010 11:28:50 +0100 @@ -119,7 +173,7 @@ geeqie (1:1.0~beta2-8) unstable; urgency=low * Convert to 3.0 (quilt) source format. - * Fix conflicts/replaces of -common package (epoch was forgotten) + * Fix conflicts/replaces of -common package (epoch was forgotten) (Closes: #557764). -- Michal Čihař Tue, 24 Nov 2009 13:34:42 +0100 @@ -150,7 +204,7 @@ * Fix typo in suggests. * Recommend exiv2 it is used by rotate and ufraw plugin. - * Recommend ufraw and zenity for ufraw plugin. + * Recommend ufraw and zenity for ufraw plugin. * Recommend imagemagick for rotate plugin. -- Michal Čihař Mon, 02 Nov 2009 16:06:28 +0100 @@ -174,7 +228,7 @@ * gqview package provides compatibility script which calls geeqie. * Drop stability warnings, it should not be the case anymore. * Update Cristians email address. - * Add transitional package for geeqie-dbg. + * Add transitional package for geeqie-dbg. -- Michal Čihař Fri, 30 Oct 2009 14:11:45 +0100 @@ -345,4 +399,3 @@ * Initial release (Closes: #480874). -- Michal Čihař Wed, 14 May 2008 10:00:34 +0200 - diff -Nru geeqie-1.0/debian/control geeqie-1.1/debian/control --- geeqie-1.0/debian/control 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/control 2012-09-29 16:50:09.000000000 +0000 @@ -1,8 +1,10 @@ Source: geeqie Section: graphics Priority: optional -Maintainer: Michal Čihař +Maintainer: Sawa (ikoinoba) +Original-Maintainer: Michal Čihař Build-Depends: debhelper (>= 7.3.7), + dpkg-dev (>= 1.16.1~), libtool, autoconf, automake, @@ -14,9 +16,11 @@ liblircclient-dev, intltool, gnome-doc-utils, - imagemagick + imagemagick, + libtiff-dev, + libjpeg-dev Build-Conflicts: libexiv2-dev (= 0.19-2) -Standards-Version: 3.9.2 +Standards-Version: 3.9.3 Homepage: http://geeqie.sourceforge.net/ Vcs-Browser: http://git.debian.org/?p=collab-maint/geeqie.git Vcs-Git: git://git.debian.org/git/collab-maint/geeqie.git @@ -60,27 +64,3 @@ features and external editor support. . This package contains the debugging symbols. - -Package: gqview -Architecture: all -Depends: geeqie, ${misc:Depends} -Priority: extra -Section: oldlibs -Description: image viewer using GTK+ (transitional package) - Package to ease upgrading from older GQview packages to the new Geeqie - package. It provides compatibility script to launch Geeqie as GQview. - . - This package can be purged at anytime once the geeqie package has been - installed. - -Package: gqview-dbg -Priority: extra -Section: oldlibs -Architecture: all -Depends: geeqie-dbg, ${misc:Depends} -Description: image viewer using GTK+ (debug) (transitional package) - Package to ease upgrading from older GQview packages to the new Geeqie - package. - . - This package can be purged at anytime once the geeqie-dbg package has been - installed. diff -Nru geeqie-1.0/debian/copyright geeqie-1.1/debian/copyright --- geeqie-1.0/debian/copyright 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/copyright 2012-08-23 08:18:35.000000000 +0000 @@ -13,7 +13,7 @@ Copyright: Copyright © 2004-2006 John Ellis - Copyright © 2008-2009 The Geeqie Team + Copyright © 2008-2012 The Geeqie Team License: diff -Nru geeqie-1.0/debian/geeqie-gps.install geeqie-1.1/debian/geeqie-gps.install --- geeqie-1.0/debian/geeqie-gps.install 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/geeqie-gps.install 1970-01-01 00:00:00.000000000 +0000 @@ -1,2 +0,0 @@ -usr/bin/geeqie-gps -usr/share/applications/geeqie-gps* diff -Nru geeqie-1.0/debian/geeqie-gps.links geeqie-1.1/debian/geeqie-gps.links --- geeqie-1.0/debian/geeqie-gps.links 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/geeqie-gps.links 1970-01-01 00:00:00.000000000 +0000 @@ -1,2 +0,0 @@ -/usr/share/man/man1/geeqie.1.gz usr/share/man/man1/geeqie-gps.1.gz - diff -Nru geeqie-1.0/debian/geeqie-gps.lintian-overrides geeqie-1.1/debian/geeqie-gps.lintian-overrides --- geeqie-1.0/debian/geeqie-gps.lintian-overrides 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/geeqie-gps.lintian-overrides 1970-01-01 00:00:00.000000000 +0000 @@ -1,2 +0,0 @@ -# icon is in -common package -menu-icon-missing usr/share/pixmaps/geeqie.xpm diff -Nru geeqie-1.0/debian/geeqie-gps.menu geeqie-1.1/debian/geeqie-gps.menu --- geeqie-1.0/debian/geeqie-gps.menu 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/geeqie-gps.menu 1970-01-01 00:00:00.000000000 +0000 @@ -1,8 +0,0 @@ -?package(geeqie-gps): \ - needs="X11" \ - section="Applications/Graphics" \ - title="Geeqie (GPS support)" \ - command="/usr/bin/geeqie-gps" \ - icon="/usr/share/pixmaps/geeqie.xpm" \ - longtitle="Geeqie Image Viewer" - diff -Nru geeqie-1.0/debian/geeqie-gps.mime geeqie-1.1/debian/geeqie-gps.mime --- geeqie-1.0/debian/geeqie-gps.mime 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/geeqie-gps.mime 1970-01-01 00:00:00.000000000 +0000 @@ -1,19 +0,0 @@ -image/jpeg; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/pjpeg; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/png; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/gif; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/tiff; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/x-portable-bitmap; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/x-portable-graymap; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/x-portable-anymap; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/x-portable-pixmap; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/x-xbitmap; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/x-xpixmap; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/x-ms-bmp; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/x-icon; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/x-cmu-raster; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/svg+xml; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/vnd.wap.wbmp; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/targa; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 -image/tga; geeqie-gps '%s'; test=test -n "$DISPLAY" ; priority=5 - diff -Nru geeqie-1.0/debian/geeqie-gps.postinst geeqie-1.1/debian/geeqie-gps.postinst --- geeqie-1.0/debian/geeqie-gps.postinst 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/geeqie-gps.postinst 1970-01-01 00:00:00.000000000 +0000 @@ -1,8 +0,0 @@ -#!/bin/sh - -set -e - -update-alternatives --install /usr/bin/geeqie geeqie /usr/bin/geeqie-gps 60 - -#DEBHELPER# - diff -Nru geeqie-1.0/debian/geeqie-gps.prerm geeqie-1.1/debian/geeqie-gps.prerm --- geeqie-1.0/debian/geeqie-gps.prerm 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/geeqie-gps.prerm 1970-01-01 00:00:00.000000000 +0000 @@ -1,8 +0,0 @@ -#!/bin/sh - -set -e - -update-alternatives --remove geeqie /usr/bin/geeqie-gps - -#DEBHELPER# - diff -Nru geeqie-1.0/debian/geeqie.install geeqie-1.1/debian/geeqie.install --- geeqie-1.0/debian/geeqie.install 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/geeqie.install 2012-08-23 08:18:35.000000000 +0000 @@ -1,2 +1,2 @@ -usr/bin/geeqie-standard -usr/share/applications/geeqie-standard* +usr/bin/geeqie +usr/share/applications/geeqie* diff -Nru geeqie-1.0/debian/geeqie.links geeqie-1.1/debian/geeqie.links --- geeqie-1.0/debian/geeqie.links 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/geeqie.links 1970-01-01 00:00:00.000000000 +0000 @@ -1,2 +0,0 @@ -/usr/share/man/man1/geeqie.1.gz usr/share/man/man1/geeqie-standard.1.gz - diff -Nru geeqie-1.0/debian/geeqie.lintian-overrides geeqie-1.1/debian/geeqie.lintian-overrides --- geeqie-1.0/debian/geeqie.lintian-overrides 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/geeqie.lintian-overrides 1970-01-01 00:00:00.000000000 +0000 @@ -1,2 +0,0 @@ -# icon is in -common package -menu-icon-missing usr/share/pixmaps/geeqie.xpm diff -Nru geeqie-1.0/debian/geeqie.menu geeqie-1.1/debian/geeqie.menu --- geeqie-1.0/debian/geeqie.menu 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/geeqie.menu 2012-08-23 08:18:35.000000000 +0000 @@ -2,6 +2,6 @@ needs="X11" \ section="Applications/Graphics" \ title="Geeqie" \ - command="/usr/bin/geeqie-standard" \ + command="/usr/bin/geeqie" \ icon="/usr/share/pixmaps/geeqie.xpm" \ longtitle="Geeqie Image Viewer" diff -Nru geeqie-1.0/debian/geeqie.mime geeqie-1.1/debian/geeqie.mime --- geeqie-1.0/debian/geeqie.mime 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/geeqie.mime 2012-08-23 08:18:35.000000000 +0000 @@ -1,18 +1,18 @@ -image/jpeg; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/pjpeg; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/png; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/gif; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/tiff; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/x-portable-bitmap; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/x-portable-graymap; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/x-portable-anymap; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/x-portable-pixmap; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/x-xbitmap; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/x-xpixmap; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/x-ms-bmp; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/x-icon; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/x-cmu-raster; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/svg+xml; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/vnd.wap.wbmp; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/targa; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 -image/tga; geeqie-standard '%s'; test=test -n "$DISPLAY" ; priority=4 +image/jpeg; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/pjpeg; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/png; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/gif; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/tiff; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/x-portable-bitmap; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/x-portable-graymap; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/x-portable-anymap; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/x-portable-pixmap; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/x-xbitmap; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/x-xpixmap; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/x-ms-bmp; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/x-icon; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/x-cmu-raster; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/svg+xml; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/vnd.wap.wbmp; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/targa; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 +image/tga; geeqie '%s'; test=test -n "$DISPLAY" ; priority=4 diff -Nru geeqie-1.0/debian/geeqie.postinst geeqie-1.1/debian/geeqie.postinst --- geeqie-1.0/debian/geeqie.postinst 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/geeqie.postinst 1970-01-01 00:00:00.000000000 +0000 @@ -1,7 +0,0 @@ -#!/bin/sh - -set -e - -update-alternatives --install /usr/bin/geeqie geeqie /usr/bin/geeqie-standard 40 - -#DEBHELPER# diff -Nru geeqie-1.0/debian/geeqie.preinst geeqie-1.1/debian/geeqie.preinst --- geeqie-1.0/debian/geeqie.preinst 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/debian/geeqie.preinst 2012-08-23 08:18:35.000000000 +0000 @@ -0,0 +1,10 @@ +#!/bin/sh + +set -e + +# Remove once used alternatives +if update-alternatives --query geeqie > /dev/null 2>&1 ; then + update-alternatives --remove-all geeqie +fi + +#DEBHELPER# diff -Nru geeqie-1.0/debian/geeqie.prerm geeqie-1.1/debian/geeqie.prerm --- geeqie-1.0/debian/geeqie.prerm 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/geeqie.prerm 1970-01-01 00:00:00.000000000 +0000 @@ -1,7 +0,0 @@ -#!/bin/sh - -set -e - -update-alternatives --remove geeqie /usr/bin/geeqie-standard - -#DEBHELPER# diff -Nru geeqie-1.0/debian/gqview.install geeqie-1.1/debian/gqview.install --- geeqie-1.0/debian/gqview.install 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/gqview.install 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -debian/tools/gqview usr/bin diff -Nru geeqie-1.0/debian/gqview.links geeqie-1.1/debian/gqview.links --- geeqie-1.0/debian/gqview.links 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/gqview.links 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -/usr/share/man/man1/geeqie.1.gz usr/share/man/man1/gqview.1.gz diff -Nru geeqie-1.0/debian/patches/Do-not-access-private-GdkPixbuf-data.patch geeqie-1.1/debian/patches/Do-not-access-private-GdkPixbuf-data.patch --- geeqie-1.0/debian/patches/Do-not-access-private-GdkPixbuf-data.patch 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/debian/patches/Do-not-access-private-GdkPixbuf-data.patch 2012-08-23 08:18:35.000000000 +0000 @@ -0,0 +1,52 @@ +From 28bcc9fb92b214dd0b21b96e79952b15f3efa520 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Michal=20=C4=8Ciha=C5=99?= +Date: Wed, 22 Aug 2012 14:20:31 +0200 +Subject: [PATCH] Do not access private GdkPixbuf data + +The GdkPixbuf is private to Gdk, so we can not access it, rather use +numbers and data we anyway have. +--- + src/image_load_tiff.c | 15 +++++++++------ + 1 file changed, 9 insertions(+), 6 deletions(-) + +diff --git a/src/image_load_tiff.c b/src/image_load_tiff.c +index 71a33b8..305de18 100644 +--- a/src/image_load_tiff.c ++++ b/src/image_load_tiff.c +@@ -148,6 +148,9 @@ tiff_load_unmap_file (thandle_t handle, tdata_t data, toff_t offset) + static gboolean image_loader_tiff_load (gpointer loader, const guchar *buf, gsize count, GError **error) + { + ImageLoaderTiff *lt = (ImageLoaderTiff *) loader; ++#if G_BYTE_ORDER == G_BIG_ENDIAN ++ int i; ++#endif + + TIFF *tiff; + guchar *pixels = NULL; +@@ -326,17 +329,17 @@ static gboolean image_loader_tiff_load (gpointer loader, const guchar *buf, gsiz + /* Turns out that the packing used by TIFFRGBAImage depends on + * the host byte order... + */ +- while (pixels < lt->pixbuf->pixels + bytes) ++ for (i = 0; i < bytes;) + { +- uint32 pixel = *(uint32 *)pixels; ++ uint32 pixel = *(uint32 *)(pixels + i); + int r = TIFFGetR(pixel); + int g = TIFFGetG(pixel); + int b = TIFFGetB(pixel); + int a = TIFFGetA(pixel); +- *pixels++ = r; +- *pixels++ = g; +- *pixels++ = b; +- *pixels++ = a; ++ pixels[i++] = r; ++ pixels[i++] = g; ++ pixels[i++] = b; ++ pixels[i++] = a; + } + #endif + +-- +1.7.10.4 + diff -Nru geeqie-1.0/debian/patches/Fix-big-endian-support-in-tiff-loader.patch geeqie-1.1/debian/patches/Fix-big-endian-support-in-tiff-loader.patch --- geeqie-1.0/debian/patches/Fix-big-endian-support-in-tiff-loader.patch 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/debian/patches/Fix-big-endian-support-in-tiff-loader.patch 2012-08-23 08:18:35.000000000 +0000 @@ -0,0 +1,32 @@ +From 902157eeea55c4fe7e626977f8d2b161352b63dc Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Michal=20=C4=8Ciha=C5=99?= +Date: Tue, 21 Aug 2012 14:53:05 +0200 +Subject: [PATCH] Fix big endian support in tiff loader + +--- + src/image_load_tiff.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/image_load_tiff.c b/src/image_load_tiff.c +index d32899c..71a33b8 100644 +--- a/src/image_load_tiff.c ++++ b/src/image_load_tiff.c +@@ -326,7 +326,7 @@ static gboolean image_loader_tiff_load (gpointer loader, const guchar *buf, gsiz + /* Turns out that the packing used by TIFFRGBAImage depends on + * the host byte order... + */ +- while (pixels < pixbuf->pixels + bytes) ++ while (pixels < lt->pixbuf->pixels + bytes) + { + uint32 pixel = *(uint32 *)pixels; + int r = TIFFGetR(pixel); +@@ -419,4 +419,4 @@ void image_loader_backend_set_tiff(ImageLoaderBackend *funcs) + + + +-#endif +\ No newline at end of file ++#endif +-- +1.7.10.4 + diff -Nru geeqie-1.0/debian/patches/More-use-of-const-fix-up-a-warning.patch geeqie-1.1/debian/patches/More-use-of-const-fix-up-a-warning.patch --- geeqie-1.0/debian/patches/More-use-of-const-fix-up-a-warning.patch 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/debian/patches/More-use-of-const-fix-up-a-warning.patch 2012-08-23 08:18:35.000000000 +0000 @@ -0,0 +1,126 @@ +From 20544048d99f4074e1aec280101b973bb2003cee Mon Sep 17 00:00:00 2001 +From: Laurent Monin +Date: Mon, 14 May 2012 23:01:01 +0200 +Subject: [PATCH 1/1] More use of const, fix up a warning. + +--- + src/jpeg_parser.c | 20 ++++++++++---------- + src/jpeg_parser.h | 6 +++--- + 2 files changed, 13 insertions(+), 13 deletions(-) + +diff --git a/src/jpeg_parser.c b/src/jpeg_parser.c +index 990ec4b..4fc8332 100644 +--- a/src/jpeg_parser.c ++++ b/src/jpeg_parser.c +@@ -13,7 +13,7 @@ + #include "main.h" + #include "jpeg_parser.h" + +-gboolean jpeg_segment_find(guchar *data, guint size, ++gboolean jpeg_segment_find(const guchar *data, guint size, + guchar app_marker, const gchar *magic, guint magic_len, + guint *seg_offset, guint *seg_length) + { +@@ -64,7 +64,7 @@ typedef enum { + + + +-guint16 tiff_byte_get_int16(guchar *f, TiffByteOrder bo) ++guint16 tiff_byte_get_int16(const guchar *f, TiffByteOrder bo) + { + guint16 align_buf; + +@@ -76,7 +76,7 @@ guint16 tiff_byte_get_int16(guchar *f, TiffByteOrder bo) + return GUINT16_FROM_BE(align_buf); + } + +-guint32 tiff_byte_get_int32(guchar *f, TiffByteOrder bo) ++guint32 tiff_byte_get_int32(const guchar *f, TiffByteOrder bo) + { + guint32 align_buf; + +@@ -120,7 +120,7 @@ void tiff_byte_put_int32(guchar *f, guint32 n, TiffByteOrder bo) + memcpy(f, &align_buf, sizeof(guint32)); + } + +-gint tiff_directory_offset(guchar *data, const guint len, ++gint tiff_directory_offset(const guchar *data, const guint len, + guint *offset, TiffByteOrder *bo) + { + if (len < 8) return FALSE; +@@ -148,12 +148,12 @@ gint tiff_directory_offset(guchar *data, const guint len, + return (*offset < len); + } + +-typedef gint (* FuncParseIFDEntry)(guchar *tiff, guint offset, ++typedef gint (* FuncParseIFDEntry)(const guchar *tiff, guint offset, + guint size, TiffByteOrder bo, + gpointer data); + + +-gint tiff_parse_IFD_table(guchar *tiff, guint offset, ++gint tiff_parse_IFD_table(const guchar *tiff, guint offset, + guint size, TiffByteOrder bo, + guint *next_offset, + FuncParseIFDEntry parse_entry, gpointer data) +@@ -182,7 +182,7 @@ gint tiff_parse_IFD_table(guchar *tiff, guint offset, + return 0; + } + +-static gint mpo_parse_Index_IFD_entry(guchar *tiff, guint offset, ++static gint mpo_parse_Index_IFD_entry(const guchar *tiff, guint offset, + guint size, TiffByteOrder bo, + gpointer data) + { +@@ -254,7 +254,7 @@ static gint mpo_parse_Index_IFD_entry(guchar *tiff, guint offset, + return 0; + } + +-static gint mpo_parse_Attributes_IFD_entry(guchar *tiff, guint offset, ++static gint mpo_parse_Attributes_IFD_entry(const guchar *tiff, guint offset, + guint size, TiffByteOrder bo, + gpointer data) + { +@@ -310,7 +310,7 @@ Roll Angle RollAngle 45581 B20D + return 0; + } + +-MPOData *jpeg_get_mpo_data(guchar *data, guint size) ++MPOData *jpeg_get_mpo_data(const guchar *data, guint size) + { + guint seg_offset; + guint seg_size; +@@ -383,4 +383,4 @@ void jpeg_mpo_data_free(MPOData *mpo) + if (mpo->images) g_free(mpo->images); + g_free(mpo); + } +-} +\ No newline at end of file ++} +diff --git a/src/jpeg_parser.h b/src/jpeg_parser.h +index d3f4b1a..0d65343 100644 +--- a/src/jpeg_parser.h ++++ b/src/jpeg_parser.h +@@ -31,7 +31,7 @@ + NNN.: the data in this segment + */ + +-gboolean jpeg_segment_find(guchar *data, guint size, ++gboolean jpeg_segment_find(const guchar *data, guint size, + guchar app_marker, const gchar *magic, guint magic_len, + guint *seg_offset, guint *seg_length); + +@@ -76,7 +76,7 @@ struct _MPOData { + MPOEntry *images; + }; + +-MPOData* jpeg_get_mpo_data(guchar *data, guint size); ++MPOData* jpeg_get_mpo_data(const guchar *data, guint size); + void jpeg_mpo_data_free(MPOData *mpo); + +-#endif +\ No newline at end of file ++#endif +-- +1.7.10.4 + diff -Nru geeqie-1.0/debian/patches/bug-529531.patch geeqie-1.1/debian/patches/bug-529531.patch --- geeqie-1.0/debian/patches/bug-529531.patch 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/patches/bug-529531.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,39 +0,0 @@ -commit 6fcdda3222c7093492c5568969ced1f63d825064 -Author: Klaus Ethgen -Date: Sat Apr 9 19:47:30 2011 +0100 - - Do not delete path settings when adding new directory - - This patch will change the way, geeqie is mangling the path name in the - rename (copy) dialog when creating new directory. Will fix the bugs - Debian:529531 and SF:2795791. - -diff --git a/src/ui_pathsel.c b/src/ui_pathsel.c -index 6b69c05..d58c5ac 100644 ---- a/src/ui_pathsel.c -+++ b/src/ui_pathsel.c -@@ -740,7 +740,10 @@ static void dest_new_dir_cb(GtkWidget *widget, gpointer data) - tmp = gtk_entry_get_text(GTK_ENTRY(dd->entry)); - if (!isname(tmp)) - { -- path = g_strdup(tmp); -+ buf = remove_trailing_slash(tmp); -+ path = g_strdup(buf); -+ g_free(buf); -+ buf = remove_level_from_path(path); - from_text = TRUE; - } - else -@@ -765,7 +768,11 @@ static void dest_new_dir_cb(GtkWidget *widget, gpointer data) - GtkListStore *store; - const gchar *text; - -- if (from_text) gtk_entry_set_text(GTK_ENTRY(dd->entry), dd->path); -+ if (from_text) -+ { -+ dest_populate(dd, buf); -+ g_free(buf); -+ } - - store = GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(dd->d_view))); - diff -Nru geeqie-1.0/debian/patches/bug-562488.patch geeqie-1.1/debian/patches/bug-562488.patch --- geeqie-1.0/debian/patches/bug-562488.patch 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/patches/bug-562488.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,41 +0,0 @@ -commit 8f9ba4127954be5e04ac4c8b1822399a435af1ed -Author: Klaus Ethgen -Date: Sun May 15 19:44:04 2011 +0100 - - Fix a remote command bug - -diff --git a/src/remote.c b/src/remote.c -index f2f07dc..c94803b 100644 ---- a/src/remote.c -+++ b/src/remote.c -@@ -736,6 +736,7 @@ void remote_help(void) - } - i++; - } -+ printf_term(N_("\n All other command line parameters are used as plain files if they exists.\n")); - } - - GList *remote_build_list(GList *list, gint argc, gchar *argv[], GList **errors) -@@ -752,7 +753,7 @@ GList *remote_build_list(GList *list, gint argc, gchar *argv[], GList **errors) - { - list = g_list_append(list, argv[i]); - } -- else if (errors) -+ else if (errors && !isfile(argv[i])) - { - *errors = g_list_append(*errors, argv[i]); - } -@@ -762,6 +763,13 @@ GList *remote_build_list(GList *list, gint argc, gchar *argv[], GList **errors) - return list; - } - -+/** -+ * \param arg_exec Binary (argv0) -+ * \param remote_list Evaluated and recognized remote commands -+ * \param path The current path -+ * \param cmd_list List of all non collections in Path -+ * \param collection_list List of all collections in argv -+ */ - void remote_control(const gchar *arg_exec, GList *remote_list, const gchar *path, - GList *cmd_list, GList *collection_list) - { diff -Nru geeqie-1.0/debian/patches/bug-574853.patch geeqie-1.1/debian/patches/bug-574853.patch --- geeqie-1.0/debian/patches/bug-574853.patch 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/patches/bug-574853.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,44 +0,0 @@ -commit dc8933e3c0ae3e0021d13beb666d6729267c7624 -Author: Vladislav Naumov -Date: Thu Dec 16 21:55:03 2010 +0100 - - Fix bug 2999830: do not report failed chown() on copy. - - Debian bug 574853 reported by Ian Zimmerman - - I was trying to copy images from my camera which is mounted as a USB - mass storage device. The files on the mount are owned by root, and - geeqie tries to chown (and chgrp) the copy, fails, and displays an - error message. This is only mildly annoying when copying a single - file, but when I want to copy multiple files the failure stops the - operation after the first file. - - Patch by Vladislav Naumov - - This patch ignores chown errors, while still doing chown - (so root still can copy files preserving ownership). - - http://sourceforge.net/tracker/?func=detail&aid=2999830&group_id=222125&atid=1054680 - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=574853 (original report) - -diff --git a/src/ui_fileops.c b/src/ui_fileops.c -index aa3cc8d..33c6560 100644 ---- a/src/ui_fileops.c -+++ b/src/ui_fileops.c -@@ -490,8 +490,14 @@ gboolean copy_file_attributes(const gchar *s, const gchar *t, gint perms, gint m - - /* set the dest file attributes to that of source (ignoring errors) */ - -- if (perms && chown(tl, st.st_uid, st.st_gid) < 0) ret = FALSE; -- if (perms && chmod(tl, st.st_mode) < 0) ret = FALSE; -+ if (perms) -+ { -+ ret = chown(tl, st.st_uid, st.st_gid); -+ /* Ignores chown errors, while still doing chown -+ (so root still can copy files preserving ownership) */ -+ ret = TRUE; -+ if (chmod(tl, st.st_mode) < 0) ret = FALSE; -+ } - - tb.actime = st.st_atime; - tb.modtime = st.st_mtime; diff -Nru geeqie-1.0/debian/patches/bug-620895.patch geeqie-1.1/debian/patches/bug-620895.patch --- geeqie-1.0/debian/patches/bug-620895.patch 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/patches/bug-620895.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,982 +0,0 @@ -commit b0ba920d04c76aa6a719f88517b7c67af4bed228 -Author: Vincent Blut -Date: Sat Dec 3 15:46:20 2011 +0100 - - Various errors in the translation (typo, etc.) - - Patch submitted by Vincent Blut that fix some typo in French locales. - Closes Debian bug #620895. - -diff --git a/po/fr.po b/po/fr.po -index 6c790f8..21725d8 100644 ---- a/po/fr.po -+++ b/po/fr.po -@@ -178,11 +178,11 @@ msgstr "Ajouter l'entrée" - - #: ../src/bar_exif.c:554 - msgid "Key:" --msgstr "Clé:" -+msgstr "Clé :" - - #: ../src/bar_exif.c:563 - msgid "Title:" --msgstr "Titre:" -+msgstr "Titre :" - - #: ../src/bar_exif.c:572 - msgid "Show only if set" -@@ -304,11 +304,11 @@ msgstr "Ajouter un mot-clé" - - #: ../src/bar_keywords.c:893 - msgid "Keyword:" --msgstr "Mot-clé:" -+msgstr "Mot-clé :" - - #: ../src/bar_keywords.c:902 - msgid "Keyword type:" --msgstr "Type de mot-clé:" -+msgstr "Type de mot-clé :" - - #: ../src/bar_keywords.c:904 - msgid "Active keyword" -@@ -443,7 +443,7 @@ msgid "" - "error: %s\n" - msgstr "" - "erreur à la sauvegarde du fichier de cache des similarités : %s\n" --"erreur: %s\n" -+"erreur : %s\n" - - #: ../src/cache_maint.c:129 ../src/cache_maint.c:722 ../src/cache_maint.c:938 - #: ../src/editors.c:1133 -@@ -452,15 +452,15 @@ msgstr "terminé" - - #: ../src/cache_maint.c:307 - msgid "Removing old metadata..." --msgstr "Suppression des anciennes méta-données ..." -+msgstr "Suppression des anciennes méta-données..." - - #: ../src/cache_maint.c:311 - msgid "Clearing cached thumbnails..." --msgstr "Purge des vignettes en cache ..." -+msgstr "Purge des vignettes en cache..." - - #: ../src/cache_maint.c:315 ../src/cache_maint.c:1096 - msgid "Removing old thumbnails..." --msgstr "Suppression des anciennes vignettes ..." -+msgstr "Suppression des anciennes vignettes..." - - #: ../src/cache_maint.c:318 ../src/cache_maint.c:1099 - msgid "Maintenance" -@@ -504,11 +504,11 @@ msgstr "cliquer sur Début pour démarrer" - - #: ../src/cache_maint.c:1042 ../src/editors.c:1059 - msgid "running..." --msgstr "en cours ..." -+msgstr "en cours..." - - #: ../src/cache_maint.c:1091 - msgid "Clearing thumbnails..." --msgstr "Suppression des vignettes ..." -+msgstr "Suppression des vignettes..." - - #: ../src/cache_maint.c:1157 ../src/cache_maint.c:1160 - #: ../src/cache_maint.c:1253 ../src/cache_maint.c:1270 -@@ -526,7 +526,7 @@ msgstr "" - #: ../src/cache_maint.c:1203 - #, c-format - msgid "Location: %s" --msgstr "Emplacement: %s" -+msgstr "Emplacement : %s" - - #: ../src/cache_maint.c:1228 - msgid "Cache Maintenance" -@@ -551,7 +551,7 @@ msgstr "Éliminer les vignettes orphelines ou plus à jour." - - #: ../src/cache_maint.c:1256 ../src/cache_maint.c:1273 - msgid "Delete all cached thumbnails." --msgstr "Éffacer toutes les vignettes en cache." -+msgstr "Effacer toutes les vignettes en cache." - - #: ../src/cache_maint.c:1259 - msgid "Shared thumbnail cache" -@@ -631,21 +631,21 @@ msgstr "_Écraser" - #: ../src/collect-dlg.c:127 - #, c-format - msgid "No such file '%s'." --msgstr "Aucun fichier nommé '%s'" -+msgstr "Aucun fichier nommé « %s »." - - #: ../src/collect-dlg.c:132 - #, c-format - msgid "'%s' is a directory, not a collection file." --msgstr "'%s' est un répertoire, pas une collection." -+msgstr "« %s » est un répertoire, pas une collection." - - #: ../src/collect-dlg.c:137 - #, c-format - msgid "You do not have read permissions on the file '%s'." --msgstr "Vous n'avez pas la permission de lire le fichier '%s'." -+msgstr "Vous n'avez pas la permission de lire le fichier « %s »." - - #: ../src/collect-dlg.c:143 - msgid "Can not open collection file" --msgstr "impossible d'ouvrir la collection" -+msgstr "Impossible d'ouvrir la collection" - - #: ../src/collect-dlg.c:195 - msgid "Save collection" -@@ -686,8 +686,8 @@ msgid "" - "error saving collection file: %s\n" - "error: %s\n" - msgstr "" --"erreur lors de la sauvegarde de la collection: %s\n" --"erreur: %s\n" -+"erreur lors de la sauvegarde de la collection : %s\n" -+"erreur : %s\n" - - #: ../src/collect-table.c:211 - #, c-format -@@ -707,7 +707,7 @@ msgstr "Vide" - #: ../src/collect-table.c:237 ../src/dupe.c:1319 ../src/search.c:320 - #: ../src/view_file.c:822 ../src/view_file.c:925 - msgid "Loading thumbs..." --msgstr "Chargement des vignettes ..." -+msgstr "Chargement des vignettes..." - - #: ../src/collect-table.c:866 ../src/dupe.c:2242 ../src/dupe.c:2555 - #: ../src/layout_util.c:1237 ../src/search.c:996 -@@ -731,7 +731,7 @@ msgstr "Ajouter à partir de la liste des fichiers" - - #: ../src/collect-table.c:876 - msgid "Append from collection..." --msgstr "Ajouter à partir de la collection ..." -+msgstr "Ajouter à partir de la collection..." - - #: ../src/collect-table.c:880 - msgid "_Selection" -@@ -755,26 +755,26 @@ msgstr "Inverser la sélection" - #: ../src/layout_image.c:506 ../src/layout_util.c:1266 ../src/pan-view.c:2829 - #: ../src/search.c:1017 ../src/view_file.c:579 - msgid "_Copy..." --msgstr "_Copier ..." -+msgstr "_Copier..." - - #: ../src/collect-table.c:900 ../src/dupe.c:2269 ../src/img-view.c:1286 - #: ../src/layout_image.c:508 ../src/layout_util.c:1267 ../src/pan-view.c:2831 - #: ../src/search.c:1019 ../src/view_file.c:581 - msgid "_Move..." --msgstr "_Déplacer ..." -+msgstr "_Déplacer..." - - #: ../src/collect-table.c:902 ../src/dupe.c:2271 ../src/img-view.c:1287 - #: ../src/layout_image.c:510 ../src/layout_util.c:1268 ../src/pan-view.c:2833 - #: ../src/search.c:1021 ../src/view_dir.c:665 ../src/view_file.c:583 - msgid "_Rename..." --msgstr "_Renommer ..." -+msgstr "_Renommer..." - - #: ../src/collect-table.c:904 ../src/dupe.c:2273 ../src/img-view.c:1288 - #: ../src/layout_image.c:512 ../src/layout_util.c:1269 - #: ../src/layout_util.c:1270 ../src/layout_util.c:1271 ../src/pan-view.c:2835 - #: ../src/search.c:1023 ../src/view_dir.c:667 ../src/view_file.c:585 - msgid "_Delete..." --msgstr "_Supprimer ..." -+msgstr "_Supprimer..." - - #: ../src/collect-table.c:906 ../src/dupe.c:2275 ../src/img-view.c:1289 - #: ../src/layout_image.c:515 ../src/pan-view.c:2837 ../src/search.c:1025 -@@ -800,16 +800,16 @@ msgstr "_Enregistrer collection" - - #: ../src/collect-table.c:922 - msgid "Save collection _as..." --msgstr "Enregistrer collection _sous ..." -+msgstr "Enregistrer collection _sous..." - - #: ../src/collect-table.c:925 ../src/layout_util.c:1262 - msgid "_Find duplicates..." --msgstr "Rechercher les _doublons ..." -+msgstr "Rechercher les _doublons..." - - #: ../src/collect-table.c:927 ../src/dupe.c:2264 ../src/layout_util.c:1264 - #: ../src/search.c:1014 - msgid "Print..." --msgstr "Imprimer ..." -+msgstr "Imprimer..." - - #: ../src/collect-table.c:2081 ../src/dupe.c:3351 ../src/img-view.c:1443 - msgid "Dropped list includes folders." -@@ -926,23 +926,23 @@ msgstr "[groupe 1]" - - #: ../src/dupe.c:1445 - msgid "Reading checksums..." --msgstr "Lecture des sommes de contrôle ..." -+msgstr "Lecture des sommes de contrôle..." - - #: ../src/dupe.c:1478 - msgid "Reading dimensions..." --msgstr "Lecture des dimensions ..." -+msgstr "Lecture des dimensions..." - - #: ../src/dupe.c:1512 - msgid "Reading similarity data..." --msgstr "Lecture des données de similarité ..." -+msgstr "Lecture des données de similarité..." - - #: ../src/dupe.c:1548 ../src/dupe.c:1579 - msgid "Comparing..." --msgstr "Comparaison ..." -+msgstr "Comparaison..." - - #: ../src/dupe.c:1559 ../src/pan-view.c:1094 - msgid "Sorting..." --msgstr "Tri ..." -+msgstr "Tri..." - - #: ../src/dupe.c:2251 - msgid "Select group _1 duplicates" -@@ -1033,12 +1033,12 @@ msgstr "Comparer deux jeux de fichiers" - #, c-format - msgid "Desktop file '%s' should not include extension in Icon key: '%s'\n" - msgstr "" --"Le fichier .desktop '%s' ne devrait pas inclure l'extension dans la clé " --"Icon: '%s'\n" -+"Le fichier .desktop « %s » ne devrait pas inclure l'extension dans la clé " -+"Icon : « %s »\n" - - #: ../src/editors.c:486 - msgid "stopping..." --msgstr "arrêt ..." -+msgstr "arrêt..." - - #: ../src/editors.c:507 - msgid "Edit command results" -@@ -1089,7 +1089,7 @@ msgstr "Le gabarit d'éditeur utilise des macros incompatibles." - - #: ../src/editors.c:1310 - msgid "Can't find matching file type." --msgstr "Ne peut trouver de type de fichier correspondant." -+msgstr "Ne peut trouver le type de fichier correspondant." - - #: ../src/editors.c:1311 - msgid "Can't execute external editor." -@@ -1469,7 +1469,7 @@ msgstr "Point blanc" - - #: ../src/exif.c:343 - msgid "Primary chromaticities" --msgstr "Chromaticitées Primaires" -+msgstr "Chromaticités Primaires" - - #: ../src/exif.c:344 - msgid "YCbCy coefficients" -@@ -1758,11 +1758,11 @@ msgstr "embarqué" - - #: ../src/exif-common.c:505 - msgid "Above Sea Level" --msgstr "Au dessus du niveau de la mer" -+msgstr "Au-dessus du niveau de la mer" - - #: ../src/exif-common.c:505 - msgid "Below Sea Level" --msgstr "En dessous du niveau de la mer" -+msgstr "En-dessous du niveau de la mer" - - #: ../src/exif-common.c:513 - msgid "Camera" -@@ -1835,7 +1835,7 @@ msgstr "la destination ne peut être écrasée" - - #: ../src/filedata.c:2109 - msgid "destination directory is not writable" --msgstr "impossible d'écrire dans le dossier destination" -+msgstr "impossible d'écrire dans le dossier de destination" - - #: ../src/filedata.c:2115 - msgid "destination directory does not exist" -@@ -1888,7 +1888,7 @@ msgstr "Écran" - - #: ../src/fullscreen.c:638 - msgid "Stay above other windows" --msgstr "Rester au dessus des autres fenêtres" -+msgstr "Rester au-dessus des autres fenêtres" - - #: ../src/fullscreen.c:645 - msgid "Determined by Window Manager" -@@ -2083,7 +2083,7 @@ msgstr "Quitter le programme quand cette fenêtre est fermée" - - #: ../src/layout.c:1931 - msgid "Start-up directory:" --msgstr "Dossier de démarrage:" -+msgstr "Dossier de démarrage :" - - #: ../src/layout.c:1933 - msgid "No change" -@@ -2260,11 +2260,11 @@ msgstr "Nouvelle collection" - - #: ../src/layout_util.c:1259 - msgid "_Open collection..." --msgstr "_Ouvrir collection ..." -+msgstr "_Ouvrir collection..." - - #: ../src/layout_util.c:1259 - msgid "Open collection..." --msgstr "Ouvrir collection ..." -+msgstr "Ouvrir collection..." - - #: ../src/layout_util.c:1260 - msgid "Open recen_t" -@@ -2276,15 +2276,15 @@ msgstr "Ouverts récemment" - - #: ../src/layout_util.c:1261 - msgid "_Search..." --msgstr "_Recherche ..." -+msgstr "_Recherche..." - - #: ../src/layout_util.c:1261 - msgid "Search..." --msgstr "Recherche ..." -+msgstr "Recherche..." - - #: ../src/layout_util.c:1262 - msgid "Find duplicates..." --msgstr "Rechercher les doublons ..." -+msgstr "Rechercher les doublons..." - - #: ../src/layout_util.c:1263 - msgid "Pa_n view" -@@ -2296,32 +2296,32 @@ msgstr "Affichage panoramique" - - #: ../src/layout_util.c:1264 - msgid "_Print..." --msgstr "_Imprimer ..." -+msgstr "_Imprimer..." - - #: ../src/layout_util.c:1265 - msgid "N_ew folder..." --msgstr "Nouv_eau dossier ..." -+msgstr "Nouv_eau dossier..." - - #: ../src/layout_util.c:1265 - msgid "New folder..." --msgstr "Nouveau dossier ..." -+msgstr "Nouveau dossier..." - - #: ../src/layout_util.c:1266 - msgid "Copy..." --msgstr "Copier ..." -+msgstr "Copier..." - - #: ../src/layout_util.c:1267 - msgid "Move..." --msgstr "Déplacer ..." -+msgstr "Déplacer..." - - #: ../src/layout_util.c:1268 - msgid "Rename..." --msgstr "Renommer ..." -+msgstr "Renommer..." - - #: ../src/layout_util.c:1269 ../src/layout_util.c:1270 - #: ../src/layout_util.c:1271 - msgid "Delete..." --msgstr "Supprimer ..." -+msgstr "Supprimer..." - - #: ../src/layout_util.c:1272 ../src/view_file.c:590 - msgid "Enable file _grouping" -@@ -2401,11 +2401,11 @@ msgstr "Retournement vertical" - - #: ../src/layout_util.c:1282 ../src/menu.c:233 - msgid "_Original state" --msgstr "Etat _original" -+msgstr "État _original" - - #: ../src/layout_util.c:1282 - msgid "Original state" --msgstr "Etat original" -+msgstr "État original" - - #: ../src/layout_util.c:1283 - msgid "Select _all" -@@ -2425,35 +2425,35 @@ msgstr "Inverser la sélection" - - #: ../src/layout_util.c:1286 - msgid "P_references..." --msgstr "P_références ..." -+msgstr "P_références..." - - #: ../src/layout_util.c:1286 - msgid "Preferences..." --msgstr "Préférences ..." -+msgstr "Préférences..." - - #: ../src/layout_util.c:1287 - msgid "Configure _Editors..." --msgstr "Configur_er les éditeurs" -+msgstr "Configur_er les éditeurs..." - - #: ../src/layout_util.c:1287 - msgid "Configure Editors..." --msgstr "Configurer les éditeurs" -+msgstr "Configurer les éditeurs..." - - #: ../src/layout_util.c:1288 - msgid "_Configure this window..." --msgstr "_Configurer cette fenêtre" -+msgstr "_Configurer cette fenêtre..." - - #: ../src/layout_util.c:1288 - msgid "Configure this window..." --msgstr "Configurer cette fenêtre" -+msgstr "Configurer cette fenêtre..." - - #: ../src/layout_util.c:1289 - msgid "_Thumbnail maintenance..." --msgstr "Maintenance des _vignettes ..." -+msgstr "Maintenance des _vignettes..." - - #: ../src/layout_util.c:1289 - msgid "Thumbnail maintenance..." --msgstr "Maintenance des vignettes ..." -+msgstr "Maintenance des vignettes..." - - #: ../src/layout_util.c:1290 - msgid "Set as wallpaper" -@@ -2590,7 +2590,7 @@ msgstr "Zoom lié 1:4" - - #: ../src/layout_util.c:1324 - msgid "_View in new window" --msgstr "_Voir dans une _nouvelle fenêtre" -+msgstr "_Voir dans une nouvelle fenêtre" - - #: ../src/layout_util.c:1324 - msgid "View in new window" -@@ -2611,31 +2611,31 @@ msgstr "Quitter le mode plein écran" - - #: ../src/layout_util.c:1330 - msgid "_Cycle through overlay modes" --msgstr "Bou_cler à travers les modes de surimpression" -+msgstr "_Passer en revue les modes de surimpression" - - #: ../src/layout_util.c:1330 - msgid "Cycle through Overlay modes" --msgstr "Boucler à travers les modes de surimpression" -+msgstr "Passer en revue les modes de surimpression" - - #: ../src/layout_util.c:1331 - msgid "Cycle through histogram ch_annels" --msgstr "Boucler sur les c_anaux d'histogramme" -+msgstr "Passer en revue les c_anaux d'histogramme" - - #: ../src/layout_util.c:1331 - msgid "Cycle through histogram channels" --msgstr "Boucler sur les canaux d'histogramme" -+msgstr "Passer en revue les canaux d'histogramme" - - #: ../src/layout_util.c:1332 - msgid "Cycle through histogram mo_des" --msgstr "Boucler sur les modes d'histogramme" -+msgstr "Passer en revue les mo_des d'histogramme" - - #: ../src/layout_util.c:1332 - msgid "Cycle through histogram modes" --msgstr "Boucler à travers les modes d'histogramme" -+msgstr "Passer en revue les modes d'histogramme" - - #: ../src/layout_util.c:1333 - msgid "_Hide file list" --msgstr "Masquer la _liste des fichiers" -+msgstr "_Masquer la liste des fichiers" - - #: ../src/layout_util.c:1333 - msgid "Hide file list" -@@ -2675,7 +2675,7 @@ msgstr "Raccourcis clavier" - - #: ../src/layout_util.c:1338 - msgid "_Release notes" --msgstr "_Notes pour cette version" -+msgstr "_Notes de version" - - #: ../src/layout_util.c:1338 - msgid "Release notes" -@@ -2871,19 +2871,19 @@ msgstr "Unique" - - #: ../src/layout_util.c:1379 - msgid "Input _0: sRGB" --msgstr "Entrée _0: sRGB" -+msgstr "Entrée _0 : sRGB" - - #: ../src/layout_util.c:1379 - msgid "Input 0: sRGB" --msgstr "Entrée 0: sRGB" -+msgstr "Entrée 0 : sRGB" - - #: ../src/layout_util.c:1380 - msgid "Input _1: AdobeRGB compatible" --msgstr "Entrée _1: compatible AdobeRGB" -+msgstr "Entrée _1 : compatible AdobeRGB" - - #: ../src/layout_util.c:1380 - msgid "Input 1: AdobeRGB compatible" --msgstr "Entrée 1: compatible AdobeRGB" -+msgstr "Entrée 1 : compatible AdobeRGB" - - #: ../src/layout_util.c:1381 - msgid "Input _2" -@@ -3042,7 +3042,7 @@ msgstr "Filtrer la marque %d" - #: ../src/layout_util.c:2109 - #, c-format - msgid "Number of files with unsaved metadata: %d" --msgstr "Nombre de fichiers avec des méta-données à sauver: %d" -+msgstr "Nombre de fichiers avec des méta-données à sauver : %d" - - #: ../src/layout_util.c:2115 - msgid "No unsaved metadata" -@@ -3068,7 +3068,7 @@ msgstr "Profils colorimétriques non supportés" - #: ../src/layout_util.c:2197 - #, c-format - msgid "Input _%d: %s" --msgstr "Entrée _%d: %s" -+msgstr "Entrée _%d : %s" - - #. something went badly wrong - #: ../src/lirc.c:193 -@@ -3102,7 +3102,7 @@ msgid "" - "Usage: %s [options] [path]\n" - "\n" - msgstr "" --"Utilisation: %s [options] [chemin]\n" -+"Utilisation : %s [options] [chemin]\n" - "\n" - - #: ../src/main.c:314 -@@ -3134,12 +3134,12 @@ msgstr "" - #: ../src/main.c:320 - msgid " --geometry=GEOMETRY set main window location\n" - msgstr "" --" --geometry=GEOMETRIE détermine la position de la fenêtre principale\n" -+" --geometry=GEOMÉTRIE détermine la position de la fenêtre principale\n" - - #: ../src/main.c:321 - msgid " -r, --remote send following commands to open window\n" - msgstr "" --" -r, --remote lance la commande suivante pour ouvrir un " -+" -r, --remote lance la commande suivante pour ouvrir une " - "fenêtre\n" - "de commande\n" - -@@ -3150,7 +3150,7 @@ msgstr "" - - #: ../src/main.c:324 - msgid " --debug[=level] turn on debug output\n" --msgstr " --debug[=niveau] active les sorties de déboguage\n" -+msgstr " --debug[=niveau] active les sorties de débogage\n" - - #: ../src/main.c:326 - msgid " -v, --version print version info\n" -@@ -3171,11 +3171,11 @@ msgid "" - "Use --help for options\n" - msgstr "" - "invalide ou ignoré : %s\n" --"Utiliser --help pour connaître les options\n" -+"Utilisez --help pour connaître les options\n" - - #: ../src/main.c:368 - msgid "Invalid or ignored remote options: " --msgstr "Options de commande à distance invalides ou ignorées:" -+msgstr "Options de commande à distance invalides ou ignorées :" - - #: ../src/main.c:377 - msgid "" -@@ -3208,7 +3208,7 @@ msgid "" - "error: %s\n" - msgstr "" - "erreur lors de la sauvegarde du fichier : %s\n" --"erreur: %s\n" -+"erreur : %s\n" - - #: ../src/main.c:659 - msgid "exit" -@@ -3513,11 +3513,11 @@ msgstr "Dossier non supporté" - - #: ../src/pan-view.c:1084 ../src/pan-view.c:1100 - msgid "Reading image data..." --msgstr "Lecture des données de l'image ..." -+msgstr "Lecture des données de l'image..." - - #: ../src/pan-view.c:1159 - msgid "Sorting images..." --msgstr "Tri des images ..." -+msgstr "Tri des images..." - - #: ../src/pan-view.c:1546 ../src/print.c:2650 - msgid "Filename:" -@@ -3647,7 +3647,7 @@ msgid "" - "performance." - msgstr "" - "Pour améliorer la vitesse de génération des vignettes dans la vue " --"panoramique les options suivantes peuvent être utilisées. Notez que les deux " -+"panoramique, les options suivantes peuvent être utilisées. Notez que les deux " - "options doivent être validées pour apprécier un changement dans les " - "performances." - -@@ -3741,7 +3741,7 @@ msgstr "Vider la corbeille" - - #: ../src/preferences.c:792 - msgid "This will remove the trash contents." --msgstr "Ceci va supprimer le contenu de la corbeille" -+msgstr "Ceci va supprimer le contenu de la corbeille." - - #: ../src/preferences.c:836 ../src/preferences.c:839 - msgid "Reset image overlay template string" -@@ -3847,7 +3847,7 @@ msgstr "Permettre d'agrandir les images pour que le zoom convienne" - - #: ../src/preferences.c:1257 - msgid "Limit image size when autofitting (%):" --msgstr "Limiter la taille de l'image lors de l'auto-dimensionnement (%):" -+msgstr "Limiter la taille de l'image lors de l'auto-dimensionnement (%) :" - - #: ../src/preferences.c:1265 - msgid "Zoom increment:" -@@ -3859,7 +3859,7 @@ msgstr "Sélection d'une nouvelle image :" - - #: ../src/preferences.c:1274 - msgid "Zoom to original size" --msgstr "Zoom à sa taille d'origine" -+msgstr "Zoom à la taille d'origine" - - #: ../src/preferences.c:1277 - msgid "Fit image to window" -@@ -3969,7 +3969,7 @@ msgid "" - "disappear when no data is available.\n" - msgstr "" - "%name% correspond au nom de l'image.\n" --"Aussi disponibles: %collection%, %number%, %total%, %" -+"Aussi disponibles : %collection%, %number%, %total%, %" - "date%,\n" - "%size% (taille du fichier), %width% (largeur), %height% " - "(hauteur), %res% (résolution)\n" -@@ -3979,7 +3979,7 @@ msgstr "" - "La notation %formatted.Camera:20 permet de tronquer l'affichage de " - "cette donnée à 20 caractères, 3 points seront ajoutés à la fin pour " - "l'indiquer.\n" --"Si deux variables ou plus sont séparés par le caractère |, les variables " -+"Si deux variables ou plus sont séparées par le caractère |, les variables " - "disponibles seront affichées avec un séparateur.\n" - "%formatted.ShutterSpeed%|%formatted.ISOSpeedRating%|%" - "formatted.FocalLength% montrera \"1/20s - 400 - 80 mm\" ou \"1/200 - 80 " -@@ -4011,7 +4011,7 @@ msgstr "Désactiver les filtres de fichiers" - - #: ../src/preferences.c:1463 - msgid "Grouping sidecar extensions" --msgstr "Groupage des extensions de fichiers sidecar" -+msgstr "Groupage des extensions de fichiers sidecars" - - #: ../src/preferences.c:1470 - msgid "File types" -@@ -4040,7 +4040,7 @@ msgstr "Processus d'écriture des méta-données" - #: ../src/preferences.c:1600 - msgid "Warning: Geeqie is built without Exiv2. Some options are disabled." - msgstr "" --"Attention: Geeqie a été compilé sans Exiv2, quelques options sont donc " -+"Attention : Geeqie a été compilé sans Exiv2, quelques options sont donc " - "inaccessibles." - - #: ../src/preferences.c:1602 -@@ -4056,7 +4056,7 @@ msgid "" - "1) Save metadata in image files, resp. sidecar files, according to the XMP " - "standard" - msgstr "" --"1) Sauver les méta-données dans les fichiers images, les fichiers sidecar, " -+"1) Sauver les méta-données dans les fichiers images, les fichiers sidecars, " - "en accord avec le standard XMP" - - #: ../src/preferences.c:1611 -@@ -4069,7 +4069,7 @@ msgstr "" - #: ../src/preferences.c:1614 - #, c-format - msgid "3) Save metadata in Geeqie private directory '%s'" --msgstr "3) Sauver les méta-données dans le répertoire privé de Geeqie '%s'" -+msgstr "3) Sauver les méta-données dans le répertoire privé de Geeqie « %s »" - - #: ../src/preferences.c:1619 - msgid "Step 1: Write to image files" -@@ -4085,7 +4085,7 @@ msgstr "" - - #: ../src/preferences.c:1630 - msgid "Warn if the image files are unwritable" --msgstr "Prévenir si les images sont protégés en écriture" -+msgstr "Prévenir si les images sont protégées en écriture" - - #: ../src/preferences.c:1633 - msgid "Ask before writing to image files" -@@ -4093,7 +4093,7 @@ msgstr "Demander avant l'écriture dans les images" - - #: ../src/preferences.c:1636 - msgid "Step 2 and 3: write to Geeqie private files" --msgstr "Étapes 2 et 3: écriture dans les fichiers privés de Geeqie" -+msgstr "Étapes 2 et 3 : écriture dans les fichiers privés de Geeqie" - - #: ../src/preferences.c:1641 - msgid "" -@@ -4133,7 +4133,7 @@ msgstr "Écrire les méta-données après un délai" - - #: ../src/preferences.c:1666 - msgid "Timeout (seconds):" --msgstr "Délai (secondes):" -+msgstr "Délai (secondes) :" - - #: ../src/preferences.c:1669 - msgid "Write metadata on image change" -@@ -4166,7 +4166,7 @@ msgstr "Fichier" - #: ../src/preferences.c:1710 - #, c-format - msgid "Input %d:" --msgstr "Entrée %d:" -+msgstr "Entrée %d :" - - #: ../src/preferences.c:1727 ../src/preferences.c:1747 - msgid "Select color profile" -@@ -4182,7 +4182,7 @@ msgstr "Utiliser le profil d'écran du système si disponible" - - #: ../src/preferences.c:1744 - msgid "Screen:" --msgstr "Écran:" -+msgstr "Écran :" - - #: ../src/preferences.c:1766 ../src/preferences.c:1809 - msgid "Behavior" -@@ -4254,15 +4254,15 @@ msgstr "Navigation dans l'image avec la molette de la souris" - - #: ../src/preferences.c:1835 - msgid "Custom similarity threshold:" --msgstr "Seuil de similarité personalisé :" -+msgstr "Seuil de similarité personnalisé :" - - #: ../src/preferences.c:1840 - msgid "Debugging" --msgstr "Déboguage" -+msgstr "Débogage" - - #: ../src/preferences.c:1842 - msgid "Debug level:" --msgstr "Niveau de déboguage:" -+msgstr "Niveau de débogage :" - - #: ../src/preferences.c:1861 - msgid "Keyboard" -@@ -4282,7 +4282,7 @@ msgstr "Touche" - - #: ../src/preferences.c:1915 - msgid "Tooltip" --msgstr "Titre" -+msgstr "Infobulle" - - #: ../src/preferences.c:1953 - msgid "Reset selected" -@@ -4327,7 +4327,7 @@ msgstr "" - - #: ../src/preferences.c:2144 - msgid "Credits..." --msgstr "Crédits ..." -+msgstr "Crédits..." - - #: ../src/print.c:124 - msgid "Selection" -@@ -4400,12 +4400,12 @@ msgstr "Lettre" - #. in 8.5 x 11 - #: ../src/print.c:382 - msgid "Legal" --msgstr "Legal" -+msgstr "Légal" - - #. in 8.5 x 14 - #: ../src/print.c:383 - msgid "Executive" --msgstr "Executive" -+msgstr "Exécutive" - - #. in 7.25x 10.5 - #. mm 841 x 1189 -@@ -4494,7 +4494,7 @@ msgstr "Échec à l'écriture dans le fichier %s" - #: ../src/print.c:1144 ../src/print.c:1181 ../src/print.c:1217 - #: ../src/print.c:1334 ../src/print.c:1425 ../src/print.c:1456 - msgid "SIGPIPE error writing to printer." --msgstr "Erreur SIGPIPE à l'écriture vers l'imprimante" -+msgstr "Erreur SIGPIPE à l'écriture vers l'imprimante." - - #: ../src/print.c:1991 - #, c-format -@@ -4652,7 +4652,7 @@ msgstr "dernière image" - - #: ../src/remote.c:643 - msgid "toggle full screen" --msgstr "bascule le mode plein écran" -+msgstr "bascule en mode plein écran" - - #: ../src/remote.c:644 - msgid "start full screen" -@@ -4664,7 +4664,7 @@ msgstr "arrête le mode plein écran" - - #: ../src/remote.c:646 - msgid "toggle slide show" --msgstr "bascule le mode diaporama" -+msgstr "bascule en mode diaporama" - - #: ../src/remote.c:647 - msgid "start slide show" -@@ -4721,7 +4721,7 @@ msgstr "Liste des commandes à distance :\n" - #: ../src/remote.c:781 - #, c-format - msgid "Remote %s not running, starting..." --msgstr "Pas de %s distant, lancement ..." -+msgstr "Pas de %s distant, lancement..." - - #: ../src/remote.c:917 - msgid "Remote not available\n" -@@ -4799,7 +4799,7 @@ msgstr "%s, %d fichiers" - - #: ../src/search.c:318 - msgid "Searching..." --msgstr "Recherche ..." -+msgstr "Recherche..." - - #: ../src/search.c:2166 - msgid "File not found" -@@ -4900,7 +4900,7 @@ msgstr "Erreur de sauvegarde fiable du fichier" - - #: ../src/thumb.c:396 - msgid "Thumbnail image in cache failed to load, trying to recreate.\n" --msgstr "Impossible de charger la vignette depuis le cache, regénération.\n" -+msgstr "Impossible de charger la vignette depuis le cache, régénération.\n" - - #: ../src/trash.c:80 ../src/utilops.c:2428 ../src/utilops.c:2439 - #: ../src/utilops.c:2496 -@@ -4947,8 +4947,8 @@ msgid "" - "Safe delete: %s%s\n" - "Trash: %s" - msgstr "" --"Suppression récupérable: %s%s\n" --"Poubelle: %s" -+"Suppression récupérable : %s%s\n" -+"Poubelle : %s" - - #: ../src/trash.c:210 - #, c-format -@@ -4977,11 +4977,11 @@ msgstr "Sélectionner icône" - - #: ../src/ui_bookmark.c:403 - msgid "_Properties..." --msgstr "_Propriétés ..." -+msgstr "_Propriétés..." - - #: ../src/ui_bookmark.c:409 - msgid "_Remove" --msgstr "Éfface_r" -+msgstr "Efface_r" - - #: ../src/ui_fileops.c:94 - msgid "" -@@ -5030,7 +5030,7 @@ msgid "" - "Preferred encoding appears to be UTF-8, however the file:\n" - msgstr "" - "\n" --"L'encodage préféré semble être UTF-8, mais le fichier:\n" -+"L'encodage préféré semble être UTF-8, mais le fichier :\n" - - #: ../src/ui_fileops.c:109 ../src/ui_fileops.c:112 ../src/ui_fileops.c:114 - msgid "[name not displayable]" -@@ -5096,7 +5096,7 @@ msgstr "" - - #: ../src/ui_pathsel.c:759 - msgid "Error creating folder" --msgstr "Erreur pendant le création du dossier" -+msgstr "Erreur pendant la création du dossier" - - #: ../src/ui_pathsel.c:980 - msgid "All Files" -@@ -5137,7 +5137,7 @@ msgid "" - "\n" - "%s" - msgstr "" --"La suppression du contenu du dossier a échouée lors de ce fichier:\n" -+"La suppression du contenu du dossier a échoué lors de ce fichier :\n" - "\n" - "%s" - -@@ -5161,7 +5161,7 @@ msgstr "Vraiment continuer ?" - - #: ../src/utilops.c:988 - msgid "This operation can't continue:" --msgstr "Cette opération ne peut continuer:" -+msgstr "Cette opération ne peut continuer :" - - #: ../src/utilops.c:1351 ../src/utilops.c:1464 ../src/utilops.c:1848 - msgid "Discard changes" -@@ -5235,11 +5235,11 @@ msgstr "Autre opération en cours\n" - #: ../src/utilops.c:1757 - #, c-format - msgid "File: '%s'\n" --msgstr "Fichier: « %s »\n" -+msgstr "Fichier : « %s »\n" - - #: ../src/utilops.c:1762 - msgid "with sidecar files:\n" --msgstr "avec les fichiers sidecars:\n" -+msgstr "avec les fichiers sidecars :\n" - - #: ../src/utilops.c:1768 - #, c-format -@@ -5252,7 +5252,7 @@ msgid "" - "Status: " - msgstr "" - "\n" --"Etat:" -+"État :" - - #: ../src/utilops.c:1784 - msgid "no problem detected" -@@ -5407,7 +5407,7 @@ msgid "" - "\n" - "This folder contains subfolders which must be moved before it can be deleted." - msgstr "" --"Impossible de supprimer le dossier:\n" -+"Impossible de supprimer le dossier :\n" - "\n" - "%s\n" - "\n" -@@ -5416,7 +5416,7 @@ msgstr "" - - #: ../src/utilops.c:2464 - msgid "Subfolders:" --msgstr "Sous-dossiers:" -+msgstr "Sous-dossiers :" - - #: ../src/utilops.c:2485 - msgid "Delete folder?" -@@ -5424,7 +5424,7 @@ msgstr "Supprimer le dossier ?" - - #: ../src/utilops.c:2486 - msgid "The folder contains these files:" --msgstr "Ce dossier contient ces fichiers:" -+msgstr "Ce dossier contient ces fichiers :" - - #: ../src/utilops.c:2487 - msgid "" -@@ -5476,15 +5476,15 @@ msgstr "Diaporama récursif" - - #: ../src/view_dir.c:655 - msgid "Find _duplicates..." --msgstr "Rechercher les _doublons ..." -+msgstr "Rechercher les _doublons..." - - #: ../src/view_dir.c:657 - msgid "Find duplicates recursive..." --msgstr "Rechercher récursivement les doublons ..." -+msgstr "Rechercher récursivement les doublons..." - - #: ../src/view_dir.c:662 - msgid "_New folder..." --msgstr "_Nouveau dossier ..." -+msgstr "_Nouveau dossier..." - - #: ../src/view_dir.c:676 ../src/view_file.c:606 - msgid "View as _List" diff -Nru geeqie-1.0/debian/patches/champlain-0.8.patch geeqie-1.1/debian/patches/champlain-0.8.patch --- geeqie-1.0/debian/patches/champlain-0.8.patch 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/patches/champlain-0.8.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,22 +0,0 @@ -Subject: Build agains champlain 0.8 -From: Michal Čihař ---- a/configure.in -+++ b/configure.in -@@ -346,7 +346,7 @@ - [libgps=$enableval], [libgps=auto]) - - if test "x${libgps}" = "xyes"; then -- PKG_CHECK_MODULES(LIBCHAMPLAIN, [champlain-0.4 >= 0.4], -+ PKG_CHECK_MODULES(LIBCHAMPLAIN, [champlain-0.8 >= 0.8], - [ - HAVE_LIBCHAMPLAIN=yes - AC_DEFINE(HAVE_LIBCHAMPLAIN, 1, [define to enable use of GPS maps]) -@@ -360,7 +360,7 @@ - fi - - if test "x${libgps}" = "xyes"; then -- PKG_CHECK_MODULES(LIBCHAMPLAIN_GTK, [champlain-gtk-0.4 >= 0.4], -+ PKG_CHECK_MODULES(LIBCHAMPLAIN_GTK, [champlain-gtk-0.8 >= 0.8], - [ - HAVE_LIBCHAMPLAIN_GTK=yes - AC_DEFINE(HAVE_LIBCHAMPLAIN_GTK, 1, [define to enable use of GPS maps]) diff -Nru geeqie-1.0/debian/patches/lfs-suport.patch geeqie-1.1/debian/patches/lfs-suport.patch --- geeqie-1.0/debian/patches/lfs-suport.patch 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/patches/lfs-suport.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,13 +0,0 @@ -Subject: Build with large file support -From: Michal Čihař -Forwarded: https://sourceforge.net/tracker/?func=detail&aid=3026317&group_id=222125&atid=1054682 ---- a/configure.in -+++ b/configure.in -@@ -128,6 +128,7 @@ - AC_PROG_CXX - AC_STDC_HEADERS - AC_ARG_PROGRAM -+AC_SYS_LARGEFILE - IT_PROG_INTLTOOL([0.35.0]) - - diff -Nru geeqie-1.0/debian/patches/series geeqie-1.1/debian/patches/series --- geeqie-1.0/debian/patches/series 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/patches/series 2012-08-23 08:18:35.000000000 +0000 @@ -1,8 +1,5 @@ -lfs-suport.patch +Fix-big-endian-support-in-tiff-loader.patch +More-use-of-const-fix-up-a-warning.patch +Do-not-access-private-GdkPixbuf-data.patch fix-bashishm.patch -champlain-0.8.patch -bug-529531.patch -bug-562488.patch -bug-574853.patch fix-fullscreen.patch -bug-620895.patch diff -Nru geeqie-1.0/debian/plugins/rotate-270.desktop geeqie-1.1/debian/plugins/rotate-270.desktop --- geeqie-1.0/debian/plugins/rotate-270.desktop 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/plugins/rotate-270.desktop 2012-08-23 08:18:35.000000000 +0000 @@ -5,7 +5,7 @@ # call the helper script TryExec=exiftran -Exec=exiftran -p -2 -i -g %f +Exec=exiftran -2 -i -g %f # Desktop files that are usable only in Geeqie should be marked like this: Categories=X-Geeqie; diff -Nru geeqie-1.0/debian/plugins/rotate-90.desktop geeqie-1.1/debian/plugins/rotate-90.desktop --- geeqie-1.0/debian/plugins/rotate-90.desktop 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/plugins/rotate-90.desktop 2012-08-23 08:18:35.000000000 +0000 @@ -5,7 +5,7 @@ # call the helper script TryExec=exiftran -Exec=exiftran -p -9 -i -g %f +Exec=exiftran -9 -i -g %f # Desktop files that are usable only in Geeqie should be marked like this: Categories=X-Geeqie; diff -Nru geeqie-1.0/debian/rules geeqie-1.1/debian/rules --- geeqie-1.0/debian/rules 2012-05-07 19:57:52.000000000 +0000 +++ geeqie-1.1/debian/rules 2012-08-23 08:18:35.000000000 +0000 @@ -1,34 +1,27 @@ #!/usr/bin/make -f +DPKG_EXPORT_BUILDFLAGS = 1 +include /usr/share/dpkg/buildflags.mk + %: dh $@ -simple_configure_options = \ - --with-htmldir=/usr/share/doc/geeqie/html \ - --with-readmedir=/usr/share/doc/geeqie/ \ - --enable-lirc \ - # build simple version first # override_dh_auto_configure: autoreconf -f -i - dh_auto_configure --builddirectory build-standard -- \ + dh_auto_configure -- \ LDFLAGS="-Wl,--as-needed" \ - $(simple_configure_options) + --with-htmldir=/usr/share/doc/geeqie/html \ + --with-readmedir=/usr/share/doc/geeqie/ \ + --enable-lirc override_dh_auto_build: - dh_auto_build --builddirectory build-standard + dh_auto_build convert geeqie.png -scale 32x32 geeqie.xpm override_dh_auto_install: mkdir -p $(CURDIR)/debian/tmp/usr/share/doc/geeqie/html - dh_auto_install --builddirectory build-standard - mv debian/tmp/usr/bin/geeqie debian/tmp/usr/bin/geeqie-standard - sed 's/Exec=geeqie/Exec=geeqie-standard/' \ - < debian/tmp/usr/share/applications/geeqie.desktop \ - > debian/tmp/usr/share/applications/geeqie-standard.desktop - -override_dh_auto_clean: - dh_auto_clean --builddirectory build-standard + dh_auto_install override_dh_compress: # Readme is shown from program, do not compress it diff -Nru geeqie-1.0/debian/source.lintian-overrides geeqie-1.1/debian/source.lintian-overrides --- geeqie-1.0/debian/source.lintian-overrides 2012-01-04 11:55:01.000000000 +0000 +++ geeqie-1.1/debian/source.lintian-overrides 1970-01-01 00:00:00.000000000 +0000 @@ -1,2 +0,0 @@ -# This is a transitional package... -dbg-package-missing-depends gqview-dbg diff -Nru geeqie-1.0/doc/Makefile.in geeqie-1.1/doc/Makefile.in --- geeqie-1.0/doc/Makefile.in 2010-02-17 21:21:45.000000000 +0000 +++ geeqie-1.1/doc/Makefile.in 2012-08-12 20:14:06.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -16,8 +17,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c @@ -40,6 +42,7 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/auxdir/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -47,9 +50,23 @@ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; -am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__installdirs = "$(DESTDIR)$(helpdir)" -helpDATA_INSTALL = $(INSTALL_DATA) DATA = $(help_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ @@ -132,6 +149,8 @@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ +JPEG_CFLAGS = @JPEG_CFLAGS@ +JPEG_LIBS = @JPEG_LIBS@ LCMS_CFLAGS = @LCMS_CFLAGS@ LCMS_LIBS = @LCMS_LIBS@ LDFLAGS = @LDFLAGS@ @@ -145,6 +164,7 @@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ +MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ @@ -154,10 +174,13 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATHSEP = @PATHSEP@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ @@ -165,6 +188,8 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ +TIFF_CFLAGS = @TIFF_CFLAGS@ +TIFF_LIBS = @TIFF_LIBS@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WINDRES = @WINDRES@ @@ -228,14 +253,14 @@ @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( 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 doc/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu doc/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu doc/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -253,23 +278,27 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): install-helpDATA: $(help_DATA) @$(NORMAL_INSTALL) test -z "$(helpdir)" || $(MKDIR_P) "$(DESTDIR)$(helpdir)" - @list='$(help_DATA)'; for p in $$list; do \ + @list='$(help_DATA)'; test -n "$(helpdir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f=$(am__strip_dir) \ - echo " $(helpDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(helpdir)/$$f'"; \ - $(helpDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(helpdir)/$$f"; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(helpdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(helpdir)" || exit $$?; \ done uninstall-helpDATA: @$(NORMAL_UNINSTALL) - @list='$(help_DATA)'; for p in $$list; do \ - f=$(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(helpdir)/$$f'"; \ - rm -f "$(DESTDIR)$(helpdir)/$$f"; \ - done + @list='$(help_DATA)'; test -n "$(helpdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '$(DESTDIR)$(helpdir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(helpdir)" && rm -f $$files tags: TAGS TAGS: @@ -293,13 +322,17 @@ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @@ -330,6 +363,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -346,6 +380,8 @@ dvi-am: +html-am: + info: info-am info-am: @@ -353,21 +389,30 @@ install-data-am: install-helpDATA @$(NORMAL_INSTALL) $(MAKE) $(AM_MAKEFLAGS) install-data-hook - install-dvi: install-dvi-am +install-dvi-am: + install-exec-am: install-html: install-html-am +install-html-am: + install-info: install-info-am +install-info-am: + install-man: install-pdf: install-pdf-am +install-pdf-am: + install-ps: install-ps-am +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-am @@ -389,7 +434,6 @@ uninstall-am: uninstall-helpDATA @$(NORMAL_INSTALL) $(MAKE) $(AM_MAKEFLAGS) uninstall-hook - .MAKE: install-am install-data-am install-strip uninstall-am .PHONY: all all-am check check-am clean clean-generic clean-local \ @@ -426,6 +470,7 @@ clean-local: rm -rf html + # 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: diff -Nru geeqie-1.0/doc/docbook/.svn/all-wcprops geeqie-1.1/doc/docbook/.svn/all-wcprops --- geeqie-1.0/doc/docbook/.svn/all-wcprops 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/all-wcprops 1970-01-01 00:00:00.000000000 +0000 @@ -1,311 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 57 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook -END -GuideImageManagementDelete.xml -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideImageManagementDelete.xml -END -GuideIndex.xml -K 25 -svn:wc:ra_dav:version-url -V 72 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideIndex.xml -END -GuideImageSearch.xml -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideImageSearch.xml -END -GuideOtherWindowsExif.xml -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOtherWindowsExif.xml -END -GuideOptionsBehavior.xml -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOptionsBehavior.xml -END -GuideOptionsKeyboard.xml -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOptionsKeyboard.xml -END -GuideOtherWindowsImageProperties.xml -K 25 -svn:wc:ra_dav:version-url -V 94 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOtherWindowsImageProperties.xml -END -GuideCollections.xml -K 25 -svn:wc:ra_dav:version-url -V 78 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideCollections.xml -END -GuideMainWindowMenus.xml -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideMainWindowMenus.xml -END -GuideReferenceConfig.xml -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideReferenceConfig.xml -END -GuideReferenceThumbnails.xml -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideReferenceThumbnails.xml -END -GuideImageManagementExternalEditing.xml -K 25 -svn:wc:ra_dav:version-url -V 97 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideImageManagementExternalEditing.xml -END -GuideOtherWindowsPanView.xml -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOtherWindowsPanView.xml -END -GuideOptionsGeneral.xml -K 25 -svn:wc:ra_dav:version-url -V 81 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOptionsGeneral.xml -END -GuidePrinting.xml -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuidePrinting.xml -END -GuideReferenceManagement.xml -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideReferenceManagement.xml -END -GuideOptionsImage.xml -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOptionsImage.xml -END -GuideImageManagementCopyMove.xml -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideImageManagementCopyMove.xml -END -GuideMainWindowStatusBar.xml -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideMainWindowStatusBar.xml -END -GuideReferenceCommandLine.xml -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideReferenceCommandLine.xml -END -GuideOptionsHidden.xml -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOptionsHidden.xml -END -GuideFaq.xml -K 25 -svn:wc:ra_dav:version-url -V 70 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideFaq.xml -END -GuideImageManagementRename.xml -K 25 -svn:wc:ra_dav:version-url -V 88 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideImageManagementRename.xml -END -GuideSidebarsInfo.xml -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideSidebarsInfo.xml -END -GuideMainWindowLayout.xml -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideMainWindowLayout.xml -END -GuideMainWindowFolderPane.xml -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideMainWindowFolderPane.xml -END -GuideMainWindow.xml -K 25 -svn:wc:ra_dav:version-url -V 77 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideMainWindow.xml -END -GuideImagePresentation.xml -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideImagePresentation.xml -END -GuideGnuFdl.xml -K 25 -svn:wc:ra_dav:version-url -V 73 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideGnuFdl.xml -END -GuideImageManagement.xml -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideImageManagement.xml -END -GuideMainWindowFilePane.xml -K 25 -svn:wc:ra_dav:version-url -V 85 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideMainWindowFilePane.xml -END -GuideIntroduction.xml -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideIntroduction.xml -END -GuideMainWindowImagePane.xml -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideMainWindowImagePane.xml -END -GuideOptionsWindow.xml -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOptionsWindow.xml -END -GuideImageSearchFindingDuplicates.xml -K 25 -svn:wc:ra_dav:version-url -V 95 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideImageSearchFindingDuplicates.xml -END -GuideOtherWindowsImageWindow.xml -K 25 -svn:wc:ra_dav:version-url -V 90 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOtherWindowsImageWindow.xml -END -GuideOptionsLayout.xml -K 25 -svn:wc:ra_dav:version-url -V 80 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOptionsLayout.xml -END -GuideOptionsColor.xml -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOptionsColor.xml -END -GuideOptions.xml -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOptions.xml -END -GuideMainWindowNavigation.xml -K 25 -svn:wc:ra_dav:version-url -V 87 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideMainWindowNavigation.xml -END -GuideOptionsMetadata.xml -K 25 -svn:wc:ra_dav:version-url -V 82 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOptionsMetadata.xml -END -GuideOtherWindows.xml -K 25 -svn:wc:ra_dav:version-url -V 79 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOtherWindows.xml -END -GuideSidebars.xml -K 25 -svn:wc:ra_dav:version-url -V 75 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideSidebars.xml -END -GuideCredits.xml -K 25 -svn:wc:ra_dav:version-url -V 74 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideCredits.xml -END -GuideImageSearchSearch.xml -K 25 -svn:wc:ra_dav:version-url -V 84 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideImageSearchSearch.xml -END -GuideReference.xml -K 25 -svn:wc:ra_dav:version-url -V 76 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideReference.xml -END -GuideReferenceKeyboardShortcuts.xml -K 25 -svn:wc:ra_dav:version-url -V 93 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideReferenceKeyboardShortcuts.xml -END -GuideOptionsFiltering.xml -K 25 -svn:wc:ra_dav:version-url -V 83 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideOptionsFiltering.xml -END -GuideSidebarsSortManager.xml -K 25 -svn:wc:ra_dav:version-url -V 86 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideSidebarsSortManager.xml -END -GuideImagePresentationSlideshow.xml -K 25 -svn:wc:ra_dav:version-url -V 93 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideImagePresentationSlideshow.xml -END -GuideImagePresentationFullscreen.xml -K 25 -svn:wc:ra_dav:version-url -V 94 -/svnroot/geeqie/!svn/ver/1909/tags/GEEQIE_1_0/doc/docbook/GuideImagePresentationFullscreen.xml -END diff -Nru geeqie-1.0/doc/docbook/.svn/entries geeqie-1.1/doc/docbook/.svn/entries --- geeqie-1.0/doc/docbook/.svn/entries 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/entries 1970-01-01 00:00:00.000000000 +0000 @@ -1,1762 +0,0 @@ -9 - -dir -1909 -https://geeqie.svn.sourceforge.net/svnroot/geeqie/tags/GEEQIE_1_0/doc/docbook -https://geeqie.svn.sourceforge.net/svnroot/geeqie - - - -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - -svn:special svn:externals svn:needs-lock - - - - - - - - - - - -f5ce08f7-4949-0410-ae0d-c4bcb8ef1020 - -GuideImageManagementDelete.xml -file - - - - -2010-02-17T21:21:20.000000Z -b31b2e769da2f461f3b52a56ad9dca24 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -3783 - -GuideIndex.xml -file - - - - -2010-02-17T21:21:20.000000Z -51c73233f2f29837403e2b1eb833fc4e -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -1646 - -GuideImageSearch.xml -file - - - - -2010-02-17T21:21:20.000000Z -782b5fc624618fbff949b1c2469b5e82 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -446 - -GuideOtherWindowsExif.xml -file - - - - -2010-02-17T21:21:20.000000Z -77363ac8a0f2ad9c72ac7efad033a20f -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -808 - -GuideOptionsBehavior.xml -file - - - - -2010-02-17T21:21:20.000000Z -e1622efa04d0813eb549f3ed1c93ecbc -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -7222 - -GuideOptionsKeyboard.xml -file - - - - -2010-02-17T21:21:20.000000Z -efc7e93e686827e7ba96c163ff16ca49 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -228 - -GuideOtherWindowsImageProperties.xml -file - - - - -2010-02-17T21:21:20.000000Z -0f81ae1a7b08f727242a720e64c9bd02 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -2737 - -GuideCollections.xml -file - - - - -2010-02-17T21:21:20.000000Z -c4480e685dd9bc6be5da4499218340c7 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -8194 - -GuideMainWindowMenus.xml -file - - - - -2010-02-17T21:21:20.000000Z -c78f995be57fbf1575f2461a706d57c0 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -21391 - -GuideReferenceConfig.xml -file - - - - -2010-02-17T21:21:20.000000Z -5cc8d92c9ca35d040eca3913b826094f -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -298 - -GuideReferenceThumbnails.xml -file - - - - -2010-02-17T21:21:20.000000Z -fbea77472a81e041481cb9ca40b3aed4 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -2577 - -GuideImageManagementExternalEditing.xml -file - - - - -2010-02-17T21:21:20.000000Z -76dff7bf54a4d51f9f07a50c8383d5d6 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -2060 - -GuideOtherWindowsPanView.xml -file - - - - -2010-02-17T21:21:20.000000Z -1f60f9946515e48072db34d76d8636ec -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -4904 - -GuideOptionsGeneral.xml -file - - - - -2010-02-17T21:21:20.000000Z -c2a2886babc98138cd334eec9dbfc2bb -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -5996 - -GuidePrinting.xml -file - - - - -2010-02-17T21:21:20.000000Z -49df8cce506487ddfafc368b3540da65 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -9950 - -GuideReferenceManagement.xml -file - - - - -2010-02-17T21:21:20.000000Z -51fb5402c5a3436eaaf8b58188b5a991 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -6731 - -GuideOptionsImage.xml -file - - - - -2010-02-17T21:21:20.000000Z -9c559a9d370b50f67b9e0f62d1aaeb42 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -6899 - -GuideImageManagementCopyMove.xml -file - - - - -2010-02-17T21:21:20.000000Z -f108d09ece01359a2f177483934e35c9 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -6859 - -GuideMainWindowStatusBar.xml -file - - - - -2010-02-17T21:21:20.000000Z -6b43210db2c9228df70c8f6c6da7ffc6 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -4887 - -GuideReferenceCommandLine.xml -file - - - - -2010-02-17T21:21:20.000000Z -72b92d4097b5b2fc69aed814c0426364 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -5716 - -GuideOptionsHidden.xml -file - - - - -2010-02-17T21:21:20.000000Z -710cb4a9a60461d245df4914b168bd7f -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -2102 - -GuideFaq.xml -file - - - - -2010-02-17T21:21:20.000000Z -c9186fbb23259f16e5031a2cc7ace47c -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -2370 - -GuideImageManagementRename.xml -file - - - - -2010-02-17T21:21:20.000000Z -6c4c74ed3c82eba4502942d3da3cbef6 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -5030 - -GuideSidebarsInfo.xml -file - - - - -2010-02-17T21:21:20.000000Z -6845509b628dea18ac4c42ead45f886c -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -3254 - -GuideMainWindowLayout.xml -file - - - - -2010-02-17T21:21:20.000000Z -47f80ac3d877088005206fa743b2d415 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -2927 - -GuideMainWindowFolderPane.xml -file - - - - -2010-02-17T21:21:20.000000Z -8e839120d2bbdaa4d01c3ac77f4da979 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -8927 - -GuideMainWindow.xml -file - - - - -2010-02-17T21:21:20.000000Z -7a176e3109e84a5359671fcf7c305a05 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -978 - -GuideImagePresentation.xml -file - - - - -2010-02-17T21:21:20.000000Z -84d907681f40ef1caab9794a92baeff8 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -554 - -GuideGnuFdl.xml -file - - - - -2010-02-17T21:21:20.000000Z -3f12441a94ee5fd9d0015caaf1f7f265 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -20615 - -GuideImageManagement.xml -file - - - - -2010-02-17T21:21:20.000000Z -bbae863556349e2d1bef19eff8ec6bec -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -645 - -GuideMainWindowFilePane.xml -file - - - - -2010-02-17T21:21:20.000000Z -45747fd6fbb3109b00fac891ae17ecf7 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -6611 - -GuideIntroduction.xml -file - - - - -2010-02-17T21:21:20.000000Z -c459287844317e03be58586d757e51df -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -2797 - -GuideMainWindowImagePane.xml -file - - - - -2010-02-17T21:21:20.000000Z -7b556ee791e7faa3555be8f556f67b22 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -8968 - -GuideOptionsWindow.xml -file - - - - -2010-02-17T21:21:20.000000Z -f09abbefa4a6a524acca1ced58623ad0 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -10004 - -GuideImageSearchFindingDuplicates.xml -file - - - - -2010-02-17T21:21:20.000000Z -e097252c9db6173917670cb250f0dff3 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -11394 - -GuideOtherWindowsImageWindow.xml -file - - - - -2010-02-17T21:21:20.000000Z -64355feb8055f63b526899f0afbe34f2 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -4095 - -GuideOptionsLayout.xml -file - - - - -2010-02-17T21:21:20.000000Z -46a878b1c15dab7614a24e9deac6841c -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -586 - -GuideOptionsColor.xml -file - - - - -2010-02-17T21:21:20.000000Z -1c147f618e0cd5b6590207b665cd987e -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -900 - -GuideOptions.xml -file - - - - -2010-02-17T21:21:20.000000Z -60ca68f4bb83e79312138a764d1e242e -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -1236 - -GuideMainWindowNavigation.xml -file - - - - -2010-02-17T21:21:20.000000Z -5bfac32727d0314409a4c563e473bef7 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -2982 - -GuideOptionsMetadata.xml -file - - - - -2010-02-17T21:21:20.000000Z -b3fb2af4f0dbeb63846caac6f7eaf73d -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -3541 - -GuideOtherWindows.xml -file - - - - -2010-02-17T21:21:20.000000Z -57d255a18e2aba15056a4ad0a7382ced -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -606 - -GuideSidebars.xml -file - - - - -2010-02-17T21:21:20.000000Z -30636d6f51966b10b006e28096b608a1 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -698 - -GuideCredits.xml -file - - - - -2010-02-17T21:21:20.000000Z -ccb552cc1bdab8c4c733bf677e8a8594 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -2051 - -GuideImageSearchSearch.xml -file - - - - -2010-02-17T21:21:20.000000Z -6fa41b6f3868f070a214ffe63886c2d5 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -11227 - -GuideReference.xml -file - - - - -2010-02-17T21:21:20.000000Z -2030438bce8668be9690eebcef985ee3 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -515 - -GuideReferenceKeyboardShortcuts.xml -file - - - - -2010-02-17T21:21:20.000000Z -a147fd9b50ca95f64cee467ac775f224 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -13824 - -GuideOptionsFiltering.xml -file - - - - -2010-02-17T21:21:20.000000Z -31e9f7a6ebe0f23563c36356d178485f -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -3802 - -GuideSidebarsSortManager.xml -file - - - - -2010-02-17T21:21:20.000000Z -2d15f380c2c7b62ae2d758783097e570 -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -5112 - -GuideImagePresentationSlideshow.xml -file - - - - -2010-02-17T21:21:20.000000Z -a0dd701e887e39777f100df4c7736bae -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -6974 - -GuideImagePresentationFullscreen.xml -file - - - - -2010-02-17T21:21:20.000000Z -5f1b996ba7e7750685abab458e9a2c3f -2009-11-22T09:12:22.759871Z -1873 -nadvornik - - - - - - - - - - - - - - - - - - - - - -7401 - diff -Nru geeqie-1.0/doc/docbook/.svn/format geeqie-1.1/doc/docbook/.svn/format --- geeqie-1.0/doc/docbook/.svn/format 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/format 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -9 diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideCollections.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideCollections.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideCollections.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideCollections.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,234 +0,0 @@ - - - - Collections - - - Geeqie provides the ability to build lists of images, regardless of the location of the files on disk. - -
- The collection window - - - A collection window displays the contents of a collection. It allows the collection to be modified and access to the images contained in the collection. - - - To open a new empty collection window press C or select New collection from the file menu. - - - To open an existing collection, press O or select Open collection from the file menu. A dialog will appear requesting the location of the collection file. A window will the open containing the selected collection. Recently opened or saved collections can also be opened by selecting the collection's file name from the Open recent sub menu of the file menu. - - - The collection window consists of a pane to display the contents of the collection, and a status bar along the bottom of the window. - -
- Icon pane - - - The icon pane displays images contained in the collection as thumbnails in a grid, by default the file names also appear below each thumbnail. - - - The Icon pane works exactly like the Icon view mode of the file pane in a main window. But with the addition that the contents of the collection can be organized with drag and drop. - - - A context menu is available for the icon pane by right clicking the mouse or pressing the Menu key. - - - Keyboard shortcuts available in the collection window: - - - Shortcut - - Context menu name - - Description - - - Enter - - View - - Opens selected image in main window. - - - V - - View in new window - - Opens selected image in a new window. - - - Ctrl + A - - Select all - - Selects all images. - - - Ctrl + Shift + A - - Select none - - Clear the image selection. - - - Ctrl + 1 through - Ctrl + 0 - - Edit sub menu - - Executes the respective editor command. - - - Ctrl + P - - Properties - - Opens a properties window for selected images. - - - Ctrl + C - - Copy - - Copy selected images. - - - Ctrl + M - - Move - - Move selected images. - - - Ctrl + R - - Rename - - Rename selected images. - - - Ctrl + D - - Delete - - Delete selected images. - - - Delete - - Remove - - Remove selected images from result list. - - - Ctrl + L - - Append from file list - - Add contents of main window to collection. - - - A - - Append from collection - - Append contents of another collection from a file. - - - S - - Save collection - - Save collection to disk, if the collection is new a dialog will appear to select the file name and location. - - - Ctrl + S - - Save collection as - - Opens a dialog to select a new file name to use for the collection. - - - Ctrl + T - - Show filename text - - Toggle display of text below icons. When set, icon's tooltip will show the full path to the file. - - - Menu - - Displays the context menu. - - - N - - Sort by name - - Sort collection by file name. - - - I - - Sort by number - - Sort collection by file name, using natural numerical order - - - D - - Sort by date - - Sort collection by file date. - - - B - - Sort by size - - Sort collection by file size. - - - P - - Sort by path - - Sort collection by file location (path to file). - - - Print - - Opens a print dialog for selected images. - - - Ctrl + W - - Close window. - - - - The selection can be changed using the keyboard and mouse the same as in a file pane of the main window. - -
- Status bar - - - The status bar displays the total number of images in the collection, and the number of selected images in parenthesis. A progress bar also displays whenever thumbnails are loading from disk. - -
- Drag and Drop - - - Drag and drop can be initialized with the primary or middle mouse buttons. Dragging an image that is selected will include all selected images in the drag. Dragging an image that is not selected will drag only that image. - - - Dropping files and folders onto the collection window will add them to the collection, they will be inserted at the location of the drop. A red arrow will indicate the location of the drop as files are dragged over the collection window. When one or more folders are included in the drop list, a menu will appear to select how to handle the contents of the folders. - - - To move images within the collection to change their order, initiate a drag for the selected image(s) and then move the mouse to the desired location within the window. A red arrow will appear to assist in determining the destination of the dragged images. Release the drag to move the images to the new location in the list. - - - Note: When renaming or moving files within Geeqie, the contents of collections located in the folder ($HOME)/.geeqie/collections will automatically update to the new name or location. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideCredits.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideCredits.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideCredits.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideCredits.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,44 +0,0 @@ - - - - Credits - -
- Authors - - - Geeqie is maintained by The Geeqie Team (Vladimir Nadvornik, Petr Ostadal, Laurent Monin). - - - This software is a fork of GQview project by John Ellis. - - - The ever growing list of contributors and language translators can be found in the README file included with the latest release of the program. - The Credits can also be viewed by selecting the Credits button located in the About dialog (open Help Menu, select About, click Credits... button). - -
- License - - - The Geeqie program is released under the “GNU General Public License”, the complete GNU GPL text can be found in the COPYING file included with each Geeqie release. - - - This Geeqie documentation is released under the "[[gnu_fdl.txt GNU Free Documentation License]]". - -
- Legal Notice - - - Copyright (c) 2008 - 2009 The Geeqie Team. - Copyright (c) 2006 John Ellis. - - - Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "[[gnu_fdl.txt GNU Free Documentation License]]". - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideFaq.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideFaq.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideFaq.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideFaq.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,51 +0,0 @@ - - - - Frequently Asked Questions - -
- Image viewing - -
- How do I keep images smaller than the visible area from enlarging when the zoom is set to “fit to window” ? - - - In the preferences dialog, under the “Image” tab, disable “Allow enlargement of image for zoom to fit”. - -
- Command line - -
- How do I open an image in an existing Geeqie application ? - - - Use the “-r” command line option to send commands to an existing Geeqie, for a list of commands supported by the remote switch run: - - -`geeqie --remote-help` - -
- How do I set the slide show delay when starting Geeqie in slide show from the command line ? - - - The delay can not be set when used with the standard -s command line switch, as -s uses the delay stored in the configuration file. For this use the remote command -ss to start the slide show after setting the delay with -d, the order of the command line is important, for example a 12 second slide show delay: - - -`geeqie -r -d12 -ss` - - - Note that if geeqie is running prior to this command, the slide show should also be stopped prior to changing the delay: - - -`geeqie -r -sS -d12 -ss` - -
- Miscellaneous - -
- I want to be able to edit images with Geeqie - - - Geeqie is an image viewer. There is, and never will be, a plan to add editing features. I recommend gimp for image editing. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideGnuFdl.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideGnuFdl.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideGnuFdl.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideGnuFdl.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,405 +0,0 @@ - - - - GNU Free Documentation License - - - GNU Free Documentation License - Version 1.2, November 2002 - - - Copyright (C) 2000,2001,2002 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. - - -0. PREAMBLE - -The purpose of this License is to make a manual, textbook, or other -functional and useful document "free" in the sense of freedom: to -assure everyone the effective freedom to copy and redistribute it, -with or without modifying it, either commercially or noncommercially. -Secondarily, this License preserves for the author and publisher a way -to get credit for their work, while not being considered responsible -for modifications made by others. - -This License is a kind of "copyleft", which means that derivative -works of the document must themselves be free in the same sense. It -complements the GNU General Public License, which is a copyleft -license designed for free software. - -We have designed this License in order to use it for manuals for free -software, because free software needs free documentation: a free -program should come with manuals providing the same freedoms that the -software does. But this License is not limited to software manuals; -it can be used for any textual work, regardless of subject matter or -whether it is published as a printed book. We recommend this License -principally for works whose purpose is instruction or reference. - - -1. APPLICABILITY AND DEFINITIONS - -This License applies to any manual or other work, in any medium, that -contains a notice placed by the copyright holder saying it can be -distributed under the terms of this License. Such a notice grants a -world-wide, royalty-free license, unlimited in duration, to use that -work under the conditions stated herein. The "Document", below, -refers to any such manual or work. Any member of the public is a -licensee, and is addressed as "you". You accept the license if you -copy, modify or distribute the work in a way requiring permission -under copyright law. - -A "Modified Version" of the Document means any work containing the -Document or a portion of it, either copied verbatim, or with -modifications and/or translated into another language. - -A "Secondary Section" is a named appendix or a front-matter section of -the Document that deals exclusively with the relationship of the -publishers or authors of the Document to the Document's overall subject -(or to related matters) and contains nothing that could fall directly -within that overall subject. (Thus, if the Document is in part a -textbook of mathematics, a Secondary Section may not explain any -mathematics.) The relationship could be a matter of historical -connection with the subject or with related matters, or of legal, -commercial, philosophical, ethical or political position regarding -them. - -The "Invariant Sections" are certain Secondary Sections whose titles -are designated, as being those of Invariant Sections, in the notice -that says that the Document is released under this License. If a -section does not fit the above definition of Secondary then it is not -allowed to be designated as Invariant. The Document may contain zero -Invariant Sections. If the Document does not identify any Invariant -Sections then there are none. - -The "Cover Texts" are certain short passages of text that are listed, -as Front-Cover Texts or Back-Cover Texts, in the notice that says that -the Document is released under this License. A Front-Cover Text may -be at most 5 words, and a Back-Cover Text may be at most 25 words. - -A "Transparent" copy of the Document means a machine-readable copy, -represented in a format whose specification is available to the -general public, that is suitable for revising the document -straightforwardly with generic text editors or (for images composed of -pixels) generic paint programs or (for drawings) some widely available -drawing editor, and that is suitable for input to text formatters or -for automatic translation to a variety of formats suitable for input -to text formatters. A copy made in an otherwise Transparent file -format whose markup, or absence of markup, has been arranged to thwart -or discourage subsequent modification by readers is not Transparent. -An image format is not Transparent if used for any substantial amount -of text. A copy that is not "Transparent" is called "Opaque". - -Examples of suitable formats for Transparent copies include plain -ASCII without markup, Texinfo input format, LaTeX input format, SGML -or XML using a publicly available DTD, and standard-conforming simple -HTML, PostScript or PDF designed for human modification. Examples of -transparent image formats include PNG, XCF and JPG. Opaque formats -include proprietary formats that can be read and edited only by -proprietary word processors, SGML or XML for which the DTD and/or -processing tools are not generally available, and the -machine-generated HTML, PostScript or PDF produced by some word -processors for output purposes only. - -The "Title Page" means, for a printed book, the title page itself, -plus such following pages as are needed to hold, legibly, the material -this License requires to appear in the title page. For works in -formats which do not have any title page as such, "Title Page" means -the text near the most prominent appearance of the work's title, -preceding the beginning of the body of the text. - -A section "Entitled XYZ" means a named subunit of the Document whose -title either is precisely XYZ or contains XYZ in parentheses following -text that translates XYZ in another language. (Here XYZ stands for a -specific section name mentioned below, such as "Acknowledgements", -"Dedications", "Endorsements", or "History".) To "Preserve the Title" -of such a section when you modify the Document means that it remains a -section "Entitled XYZ" according to this definition. - -The Document may include Warranty Disclaimers next to the notice which -states that this License applies to the Document. These Warranty -Disclaimers are considered to be included by reference in this -License, but only as regards disclaiming warranties: any other -implication that these Warranty Disclaimers may have is void and has -no effect on the meaning of this License. - - -2. VERBATIM COPYING - -You may copy and distribute the Document in any medium, either -commercially or noncommercially, provided that this License, the -copyright notices, and the license notice saying this License applies -to the Document are reproduced in all copies, and that you add no other -conditions whatsoever to those of this License. You may not use -technical measures to obstruct or control the reading or further -copying of the copies you make or distribute. However, you may accept -compensation in exchange for copies. If you distribute a large enough -number of copies you must also follow the conditions in section 3. - -You may also lend copies, under the same conditions stated above, and -you may publicly display copies. - - -3. COPYING IN QUANTITY - -If you publish printed copies (or copies in media that commonly have -printed covers) of the Document, numbering more than 100, and the -Document's license notice requires Cover Texts, you must enclose the -copies in covers that carry, clearly and legibly, all these Cover -Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on -the back cover. Both covers must also clearly and legibly identify -you as the publisher of these copies. The front cover must present -the full title with all words of the title equally prominent and -visible. You may add other material on the covers in addition. -Copying with changes limited to the covers, as long as they preserve -the title of the Document and satisfy these conditions, can be treated -as verbatim copying in other respects. - -If the required texts for either cover are too voluminous to fit -legibly, you should put the first ones listed (as many as fit -reasonably) on the actual cover, and continue the rest onto adjacent -pages. - -If you publish or distribute Opaque copies of the Document numbering -more than 100, you must either include a machine-readable Transparent -copy along with each Opaque copy, or state in or with each Opaque copy -a computer-network location from which the general network-using -public has access to download using public-standard network protocols -a complete Transparent copy of the Document, free of added material. -If you use the latter option, you must take reasonably prudent steps, -when you begin distribution of Opaque copies in quantity, to ensure -that this Transparent copy will remain thus accessible at the stated -location until at least one year after the last time you distribute an -Opaque copy (directly or through your agents or retailers) of that -edition to the public. - -It is requested, but not required, that you contact the authors of the -Document well before redistributing any large number of copies, to give -them a chance to provide you with an updated version of the Document. - - -4. MODIFICATIONS - -You may copy and distribute a Modified Version of the Document under -the conditions of sections 2 and 3 above, provided that you release -the Modified Version under precisely this License, with the Modified -Version filling the role of the Document, thus licensing distribution -and modification of the Modified Version to whoever possesses a copy -of it. In addition, you must do these things in the Modified Version: - -A. Use in the Title Page (and on the covers, if any) a title distinct - from that of the Document, and from those of previous versions - (which should, if there were any, be listed in the History section - of the Document). You may use the same title as a previous version - if the original publisher of that version gives permission. -B. List on the Title Page, as authors, one or more persons or entities - responsible for authorship of the modifications in the Modified - Version, together with at least five of the principal authors of the - Document (all of its principal authors, if it has fewer than five), - unless they release you from this requirement. -C. State on the Title page the name of the publisher of the - Modified Version, as the publisher. -D. Preserve all the copyright notices of the Document. -E. Add an appropriate copyright notice for your modifications - adjacent to the other copyright notices. -F. Include, immediately after the copyright notices, a license notice - giving the public permission to use the Modified Version under the - terms of this License, in the form shown in the Addendum below. -G. Preserve in that license notice the full lists of Invariant Sections - and required Cover Texts given in the Document's license notice. -H. Include an unaltered copy of this License. -I. Preserve the section Entitled "History", Preserve its Title, and add - to it an item stating at least the title, year, new authors, and - publisher of the Modified Version as given on the Title Page. If - there is no section Entitled "History" in the Document, create one - stating the title, year, authors, and publisher of the Document as - given on its Title Page, then add an item describing the Modified - Version as stated in the previous sentence. -J. Preserve the network location, if any, given in the Document for - public access to a Transparent copy of the Document, and likewise - the network locations given in the Document for previous versions - it was based on. These may be placed in the "History" section. - You may omit a network location for a work that was published at - least four years before the Document itself, or if the original - publisher of the version it refers to gives permission. -K. For any section Entitled "Acknowledgements" or "Dedications", - Preserve the Title of the section, and preserve in the section all - the substance and tone of each of the contributor acknowledgements - and/or dedications given therein. -L. Preserve all the Invariant Sections of the Document, - unaltered in their text and in their titles. Section numbers - or the equivalent are not considered part of the section titles. -M. Delete any section Entitled "Endorsements". Such a section - may not be included in the Modified Version. -N. Do not retitle any existing section to be Entitled "Endorsements" - or to conflict in title with any Invariant Section. -O. Preserve any Warranty Disclaimers. - -If the Modified Version includes new front-matter sections or -appendices that qualify as Secondary Sections and contain no material -copied from the Document, you may at your option designate some or all -of these sections as invariant. To do this, add their titles to the -list of Invariant Sections in the Modified Version's license notice. -These titles must be distinct from any other section titles. - -You may add a section Entitled "Endorsements", provided it contains -nothing but endorsements of your Modified Version by various -parties--for example, statements of peer review or that the text has -been approved by an organization as the authoritative definition of a -standard. - -You may add a passage of up to five words as a Front-Cover Text, and a -passage of up to 25 words as a Back-Cover Text, to the end of the list -of Cover Texts in the Modified Version. Only one passage of -Front-Cover Text and one of Back-Cover Text may be added by (or -through arrangements made by) any one entity. If the Document already -includes a cover text for the same cover, previously added by you or -by arrangement made by the same entity you are acting on behalf of, -you may not add another; but you may replace the old one, on explicit -permission from the previous publisher that added the old one. - -The author(s) and publisher(s) of the Document do not by this License -give permission to use their names for publicity for or to assert or -imply endorsement of any Modified Version. - - -5. COMBINING DOCUMENTS - -You may combine the Document with other documents released under this -License, under the terms defined in section 4 above for modified -versions, provided that you include in the combination all of the -Invariant Sections of all of the original documents, unmodified, and -list them all as Invariant Sections of your combined work in its -license notice, and that you preserve all their Warranty Disclaimers. - -The combined work need only contain one copy of this License, and -multiple identical Invariant Sections may be replaced with a single -copy. If there are multiple Invariant Sections with the same name but -different contents, make the title of each such section unique by -adding at the end of it, in parentheses, the name of the original -author or publisher of that section if known, or else a unique number. -Make the same adjustment to the section titles in the list of -Invariant Sections in the license notice of the combined work. - -In the combination, you must combine any sections Entitled "History" -in the various original documents, forming one section Entitled -"History"; likewise combine any sections Entitled "Acknowledgements", -and any sections Entitled "Dedications". You must delete all sections -Entitled "Endorsements". - - -6. COLLECTIONS OF DOCUMENTS - -You may make a collection consisting of the Document and other documents -released under this License, and replace the individual copies of this -License in the various documents with a single copy that is included in -the collection, provided that you follow the rules of this License for -verbatim copying of each of the documents in all other respects. - -You may extract a single document from such a collection, and distribute -it individually under this License, provided you insert a copy of this -License into the extracted document, and follow this License in all -other respects regarding verbatim copying of that document. - - -7. AGGREGATION WITH INDEPENDENT WORKS - -A compilation of the Document or its derivatives with other separate -and independent documents or works, in or on a volume of a storage or -distribution medium, is called an "aggregate" if the copyright -resulting from the compilation is not used to limit the legal rights -of the compilation's users beyond what the individual works permit. -When the Document is included in an aggregate, this License does not -apply to the other works in the aggregate which are not themselves -derivative works of the Document. - -If the Cover Text requirement of section 3 is applicable to these -copies of the Document, then if the Document is less than one half of -the entire aggregate, the Document's Cover Texts may be placed on -covers that bracket the Document within the aggregate, or the -electronic equivalent of covers if the Document is in electronic form. -Otherwise they must appear on printed covers that bracket the whole -aggregate. - - -8. TRANSLATION - -Translation is considered a kind of modification, so you may -distribute translations of the Document under the terms of section 4. -Replacing Invariant Sections with translations requires special -permission from their copyright holders, but you may include -translations of some or all Invariant Sections in addition to the -original versions of these Invariant Sections. You may include a -translation of this License, and all the license notices in the -Document, and any Warranty Disclaimers, provided that you also include -the original English version of this License and the original versions -of those notices and disclaimers. In case of a disagreement between -the translation and the original version of this License or a notice -or disclaimer, the original version will prevail. - -If a section in the Document is Entitled "Acknowledgements", -"Dedications", or "History", the requirement (section 4) to Preserve -its Title (section 1) will typically require changing the actual -title. - - -9. TERMINATION - -You may not copy, modify, sublicense, or distribute the Document except -as expressly provided for under this License. Any other attempt to -copy, modify, sublicense or distribute the Document 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. - - -10. FUTURE REVISIONS OF THIS LICENSE - -The Free Software Foundation may publish new, revised versions -of the GNU Free Documentation 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. See -http://www.gnu.org/copyleft/. - -Each version of the License is given a distinguishing version number. -If the Document specifies that a particular numbered version of this -License "or any later version" applies to it, you have the option of -following the terms and conditions either of that specified version or -of any later version that has been published (not as a draft) by the -Free Software Foundation. If the Document does not specify a version -number of this License, you may choose any version ever published (not -as a draft) by the Free Software Foundation. - - -ADDENDUM: How to use this License for your documents - -To use this License in a document you have written, include a copy of -the License in the document and put the following copyright and -license notices just after the title page: - - Copyright (c) YEAR YOUR NAME. - Permission is granted to copy, distribute and/or modify this document - under the terms of the GNU Free Documentation License, Version 1.2 - or any later version published by the Free Software Foundation; - with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. - A copy of the license is included in the section entitled "GNU - Free Documentation License". - -If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, -replace the "with...Texts." line with this: - - with the Invariant Sections being LIST THEIR TITLES, with the - Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. - -If you have Invariant Sections without Cover Texts, or some other -combination of the three, merge those two alternatives to suit the -situation. - -If your document contains nontrivial examples of program code, we -recommend releasing these examples in parallel under your choice of -free software license, such as the GNU General Public License, -to permit their use in free software. - - diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideImageManagement.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideImageManagement.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideImageManagement.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideImageManagement.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,14 +0,0 @@ - - - - Image Management - - - Geeqie includes a set of utilities to copy, move, rename, and delete images. - - - - - - - diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideImageManagementCopyMove.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideImageManagementCopyMove.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideImageManagementCopyMove.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideImageManagementCopyMove.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,96 +0,0 @@ - -
- - Copy and Move - - - To copy an file in Geeqie press Ctrl + C, to move an file press Ctrl + M. These operations also appear under File in the main menu, and in the context menu of all images and files. - - - The Copy and Move operations and dialogs behave the same in Geeqie, with the only difference being the final result. The remaining text of this page applies equally to the Copy and Move operations, for the remainder of this page these will be referred to as a Copy/Move operation. - - - Initiating a Copy/Move operation will display a dialog to select the destination folder to Copy/Move the selected file, after the destination folder is selected Geeqie will proceed to Copy/Move the images to the destination. If an error occurs or a file exists with the same name as one of the files being Copy/Moved, a dialog will appear prompting how to handle the situation. - -
- The Copy/Move dialog - - - This is the dialog that is displayed when initiating a Copy/Move operation. The dialog contains a row of buttons near the top, vertical list of bookmarks along the left side, a vertical list of folders in the current path, a text entry field, and a row of buttons along the bottom. - - - Home button - - Activate this button to change the active path to your home folder. - - New Folder button - - Activate this to create a new empty folder as a sub folder of the active path. The new folder will appear in the folder list ready for you to type in the desired name. - - Show Hidden check box - - Enabling this check box will cause hidden folders to appear in the folder list. - - Bookmark list - - This list on the left side of the window allows you to save links to folders that are frequently used. Activating a bookmark will change the active path to that pointed to by the link. To add items to the bookmark list highlight a folder and press Ctrl + B, select “Add bookmark” from the folder's context menu, or drag a folder onto the bookmark list. - The bookmark has a context menu that can be displayed by clicking the right mouse button, or pressing the Menu key when a bookmark has the focus. From the context menu you can edit a bookmark, move it up or down in the list, or remove the bookmark from the list. A bookmark can also be moved by pressing Shift + Up or Shift + Down while it has the focus. - - Folder list - - This is the list that displays the folders contained in the active path. To change the active path to a folder displayed in this list double click the primary mouse button or highlight the folder with the keyboard and press Enter or Spacebar. This list has a context menu that allows renaming or bookmarking the selected folder. A folder can also be dragged onto the bookmark list to add a bookmark. - - Path entry - - This text entry displays the active path of the dialog. The path can be directly edited using this entry. Tab completion is supported, and the drop down arrow will display a list of recently selected folders. - - Copy/Move button - - The name of this button will differ depending on the selected operation, activating it will start the operation with the folder displayed in the path entry as the destination. - - Cancel button - - Activate this button to close the dialog, the operation will be aborted. - -
- The error dialog - - - If a problem occurs because Geeqie is unable to Copy or Move a selected file a dialog will appear to notify the user. The dialog will also ask if the operation should continue if one or more files remain to be Copied or Moved. - -
- The overwrite dialog - - - If a file with the same name exists in the selected destination a dialog will appear to notify the user and ask how to resolve the conflict. The dialog will also display the source and destination images. The following possible solutions will be offered: - - - Auto rename - - Enabling this check box to have Geeqie select a unique name for the destination file, the proposed new name will appear in the rename entry field. - - Rename - - Enable this check box to manually enter a new name for the file. - - Overwrite - - Activate this will overwrite the existing file, or rename it if one of the rename check boxes are enabled. - - Overwrite all - - Activating this will perform the same operation as the Yes button, however any further file name conflicts will be handled quietly in the same method as is selected for the current file. - - Skip - - This button will skip doing anything to the file in question, and resume the operation with the next file. The source file will remain untouched. - - Skip All - - This will perform the same as the Skip button, however any further file name conflicts will be quietly ignored for all remaining files. - - Cancel - - This will close the dialog and stop the operation, all remaining files will be ignored. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideImageManagementDelete.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideImageManagementDelete.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideImageManagementDelete.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideImageManagementDelete.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,60 +0,0 @@ - -
- - Delete - - - To delete a file in Geeqie press Ctrl + D, or select Delete from the file menu. Delete is also available in the context menu of all images and files. If Enable delete key? is enabled in Options, pressing the Delete key can also be used to delete files. - - - The behavior when starting a delete operation depends on the Confirm file delete? option in Options. If the option is enabled a dialog will appear to confirm the operation, if it is not enabled the files will be deleted without further interaction. In all cases if the file is unable to be deleted you will be notified by a dialog. - -
- Confirm delete dialog - - - The dialog that appears when delete confirmation is enabled will show the file or files to be deleted. To delete the file press Enter or activate the Delete button. Pressing Escape or activating the Cancel button will close the dialog and abort the operation. - - - When deleting multiple files, the dialog will include two arrow buttons to step the image preview through the list of files to be deleted. Initially the preview will be blank, activate the right arrow to display the first file. - - - The dialog will also display the status of the Safe Delete? feature. Use this to determine if a file to be deleted will be immediately lost, or if the file can possibly be recovered from the Safe Delete folder. - - - If a file is unable to be deleted, a dialog will appear to notify you. If multiple files were selected and any remain, the dialog will include a Continue button, activating this button or pressing Enter will delete the remaining files. Pressing Escape or activating the Cancel button will close the dialog and the remaining files will not be deleted. - -
- Safe Delete - - - Geeqie includes a feature to temporarily store deleted files in a selected folder, to use this feature enable Safe Delete? on the advanced tab of the preferences dialog. - - - Safe Delete includes these options: - - - Folder - - - The folder to use for temporarily retaining deleted files. - - - Maximum size - - - The maximum amount of disk space to use when storing deleted files, in megabytes. - - - When the total size of the deleted files stored in the Safe Delete folder exceeds the Maximum size, the oldest files are removed from the folder to make space for the new deleted files. - - - Files moved to the Safe Delete folder are prefixed with a six digit number in the format: nnnnnn_FILENAME - - - This is used to distinguish which files to remove first when clearing space for new files. The digit counter increments with each deleted file. - - - To clear the contents of the Safe Delete folder, activate the Clear button provided for this purpose on the Advanced tab? in Options. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideImageManagementExternalEditing.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideImageManagementExternalEditing.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideImageManagementExternalEditing.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideImageManagementExternalEditing.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,42 +0,0 @@ - -
- <para/><section id="ExternalEditing"><title> - External Editing - - - Geeqie provides the ability to execute commands, such as running an image editor on a selected image. In Geeqie these are called the external editing commands. - -
- External Editors - - - External editors can do anything from running simple operations like symlink to fully featured programs like gimp. - - - Geeqie looks for standard desktop files. - - - http://standards.freedesktop.org/desktop-entry-spec/ - - - http://standards.freedesktop.org/menu-spec/ - - - It is also possible to add Geeqie-specific editors with the Editor configuration dialog? - - - Editors appear in menu Edit / External Editors, unless specified otherwise in the desktop file. - -
- Result dialog - - - Commands that are set to display their output in a window will show a dialog when the command is executed. - - - The Result dialog will display the command's text output. If the editor command will result in multiple runs of the same command for each file, you can use the Stop button to stop Geeqie from executing the command for remaining files. - - - Once all commands have completed, or if the Stop button was pressed and the pending command has completed, you can use the Close button, or press Escape, to close the Result dialog. The Result dialog can not be closed while a command is still running. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideImageManagementRename.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideImageManagementRename.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideImageManagementRename.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideImageManagementRename.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,60 +0,0 @@ - -
- - Rename - - - To rename a file in Geeqie press Ctrl + R, or select Rename from the File menu. Rename is also available in the context menu of all images and files. - - - When renaming a file, a dialog will display allowing entry of the new name for the file. The dialog will be different depending on the number of files selected to be renamed. A simple dialog will appear when renaming a single file, however when renaming multiple files the dialog will include a list of the file to be renamed and additional options. - -
- Rename single file dialog - - - The dialog that appears when renaming a single file includes an image of the file, an entry to type the new name of the file, a Rename button, and a Cancel button. Type the new name into the text entry and press Enter or activate the Rename button to rename the file. Press Escape or activate the Cancel button to close the dialog and abort renaming the file. - - - When renaming a file and the new name already exists on the file system a dialog will appear showing the renamed and existing files. To overwrite the existing file press Enter or activate the Overwrite button. Press Escape or activate the Cancel button to close the dialog abort renaming the file. - -
- Rename multiple files dialog - - - The dialog that appears when renaming multiple files includes the list of files to be renamed, a preview image of the active file, an entry to enter the new file name, an auto rename check box, a Rename button, and a Cancel button. - - - Manually enter new file names - - - To manually enter the new name of each file, the active file will be displayed in the image preview and it's original name will be displayed above the text entry. To rename the file type the new name and press Enter or activate the Rename button. When a file is successfully renamed it will be removed from the list and the next one will become the active file. After all files have been renamed, the dialog will close. - - - Files do not have to be renamed in the order that they appear in the list, highlighting a name in the list will make it become the active file. - - - When renaming a file and the new name already exists on the file system a dialog will appear showing the renamed and existing files. To overwrite the existing file press Enter or activate the Overwrite button. Press Escape or activate the Cancel button to return to the original rename dialog, the file that prompted the overwrite dialog will remain active. - - - Automatic renaming of multiple files - - - To automatically rename the files in the list, enable the Auto rename check box. The dialog will change to batch mode for numerical naming of files. - - - The file name list will change to include a preview column that will show the resulting name of each file. The text entry will change to three entries; the first represents the text that appears in the new names before the number, the second will be the start number to use when incrementing the file number, and the third represents the text to append to the name after the number. The end text should include the file name extension, therefore batch renaming multiple types of files (those with different extensions) all at once is not recommended. - - - The padding number can be used to change the minimum length of characters to use for the number portion of the new name. When the file number results in fewer characters than the padding size, the result will be padded with leading zeros to fill the remaining space. For example if padding size is 3, a file with the number 24 will appear in the file name as “024”. - - - The order of the file list can be changed by dragging a name to the desired location within the list. The preview column will update to reflect the new order. - - - When the preview of new names is satisfactory, press Enter or activate the Rename button to rename the files to match the name in the preview column. Press Escape or activate the Cancel button to close the dialog and abort the rename operation. - - - If the resulting new names match any existing files, a warning dialog will notify you. The rename dialog will remain so that you can select a different set of names. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideImagePresentation.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideImagePresentation.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideImagePresentation.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideImagePresentation.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,12 +0,0 @@ - - - - Image Presentation - - - Geeqie can be used to display a set of images, showing each image for a period of time before changing to the next image. Images can also be set to fill the entire screen. - - - - - diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideImagePresentationFullscreen.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideImagePresentationFullscreen.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideImagePresentationFullscreen.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideImagePresentationFullscreen.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,204 +0,0 @@ - -
- - Full Screen - - - Geeqie allows for the image pane to be expanded to fill the entire screen, this is referred to as full screen. - -
- Turning on full screen - - - Full screen can be activated in a number of ways: - - From the menu bar - open the View menu and select Full screen. - From the keyboard - press the F key to toggle full screen. - From a context menu - right click an image pane, and select Full screen. - -
- Turning off full screen - - - To return to the normal view: - - From the keyboard - press the F or Esc key to stop full screen. - From a context menu - right click the image pane, and select Exit full screen. - From the menu bar - the menu bar may be visible when using multiple monitors, open the View menu and select Full screen. - -
- Configuring full screen - - - Full screen behavior and location can be adjusted on the Advanced tab? of the preferences dialog. - - - Size and location - - - This can be changed using Full screen size option, this can be used to select the monitor to use in a multiple monitor configuration. - - - Smooth image flip in full screen - - - This option delays the image change until the next image is entirely decoded into memory, the result is a smoother transition between images. - - - Disable screen saver in full screen - - - This option will execute xscreensaver-command --deactivate once per minute to avoid the screen saver from activating. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideImagePresentationSlideshow.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideImagePresentationSlideshow.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideImagePresentationSlideshow.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideImagePresentationSlideshow.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,100 +0,0 @@ - -
- - Slide Show - - - The image pane can be set to automatically change the displayed image after a period of time, in Geeqie this is referred to as a slide show. - -
- Starting a slide show - - - A slide show can be started in a number of ways: - - From the menu bar - open the View menu and select Toggle slide show to toggle the slide show on or off . - From the keyboard - press the S key to toggle the slide show on or off. - From a context menu - right click an image pane, and select Start slide show, or Stop slide show; the text will change depending on the state of the current slide show. - -
- Stopping a slide show - - - An active slide show can be stopped by using the same functions available to start one, as they work like a toggle switch. If slide show repeat is not enabled in the options dialog, the slide show will stop when the last image in the sequence is displayed. - - - Any action that changes the image pane to a new image will stop the active slide show, with the exception of the methods discussed in [Slide show sequence navigation]. - -
- Slide show status - - - The main window status bar can be used to determine when a slide show is active, Slide show will be displayed next to the file count field. An individual Image Window can also display a slide show, however the status will not be immediately visible. To determine the slide show status in an image window, open a context menu by right clicking or using the menu key, the slide show menu item will reflect the slide show status; if Start slide show is displayed, no slide show is active, conversely if Stop slide show is displayed a slide show is active. - - - When a Slide show is paused, the main window status bar will display Paused instead of Slide show. Likewise, the image context menu will display Pause slide show or Continue slide show, depending on the current state. - -
- Pausing a slide show - - - An active slide show can be paused in two ways: - - From the keyboard - press the P key while a slide show is active. - From a context menu - right click the image pane displaying the slide show, and select Pause slide show, or Continue slide show depending on the current slide show state. - -
- Selecting the images to include in a slide show - - - When a single image is selected, all images in the current folder are included in the slide show. The sequence will begin with the current image; however if random slide shows are enabled, the sequence will begin with a random image from the list. - - - To only include some images in a slide show, use multiple selection to select the images to include before starting the slide show. - - - An image collection can be used as the list of images, to do this drag an image from a collection window onto the image pane. Starting a slide show will then include the images from that collection. - - - So far, the methods described are for slide shows in a main window, in an Image Window, the slide show will use all images referenced by that window. - -
- Recursive slide show - - - In the main window, a recursive slide show can be started from a folder's context menu; the folder's right click menu will include two slide show options: - - Slide show: This will start a slide show that includes all images in the selected folder. - Slide show recursive: The slide show will include all images in the selected folder, and all images in the folders that are contained within the selected folder. - -
- Slide show sequence navigation - - - When a slide show is active, functions that normally change the image forward and backward can be used to step through those contained in the slide show. - -
- Configuring a slide show - - - The options that control the behavior of slide shows are located on the General tab of the options dialog. - - - Display time - - - The delay between each image in the slide show can be adjusted with the Delay before image change option. - - - Repeat - - - This will cause the slide show to loop indefinitely, it will continue with the first image after displaying the last image in the slide show list. - - - Random - - - This will display images randomly selected from the slide show list. Each image from the slide show list will be displayed once. When Repeat is also enabled, the random sequence is changed after each complete cycle of the images. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideImageSearch.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideImageSearch.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideImageSearch.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideImageSearch.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,12 +0,0 @@ - - - - Image Search - - - Geeqie provides methods to find an image, and the ability to find duplicate images. - - - - - diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideImageSearchFindingDuplicates.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideImageSearchFindingDuplicates.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideImageSearchFindingDuplicates.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideImageSearchFindingDuplicates.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,307 +0,0 @@ - -
- - Finding Duplicates - - - Geeqie provides a utility to find images that have similar attributes or content. - - - To display a new Find Duplicates Window press D or select Find duplicates from the File menu. - -
- Adding files to be compared - - - Add files to be compared using drag and drop. Drop files or folders onto the Find Duplicates window to add them to the list of files to compare. When one or more folders are dropped onto the window a menu will appear allowing you to choose the desired action: - - - Add contents - - - The contents of dropped folders will added to the window. - - - Add contents recursive - - - The contents of dropped folders and all sub folders will be added to the window. - - - Skip folders - - - Ignore folders contained in the drop list. - - - When files are added to the window, the comparison is restarted to include the new files. - -
- Comparison methods - - - The attribute to use for two images to match can be selected with the “Compare by:” drop down menu. Each method is explained below: - - - Name - - - The file name. - - - Name case-insensitive - - - The file name but ignoring case. - - - Size - - - The file size. - - - Date - - - The file date. - - - Dimensions - - - The image dimensions. - - - Checksum - - - The MD5 file checksum. - - - Path - - - The complete path to file. - - - Similarity (high) - - - Very similar image content. - - - Similarity - - - Similar image content. - - - Similarity (low) - - - Slightly similar image content. - - - Similarity (custom) - - - Similar image content, the value to use to consider two images a match is configured in the Advanced tab? of the preferences dialog by setting the “Custom similarity threshold”. - -
- Results list - - - Files that match with the selected comparison method will appear in the list. Matching files are grouped in alternating color. - - - The order of the result list can not be changed, files will appear in the order of the search. When comparing by image content similarity, the matching groups will be sorted by order of rank starting with the files that are most similar. - - - A context menu is available for the result list by right clicking the mouse or pressing the Menu key when a row has the focus. - - - Keyboard shortcuts available in the results list: - - - Shortcut - - Context menu name - - Description - - - Enter - - View - - Opens selected image in main window. - - - V - - View in new window - - Opens selected image in a new window. - - - Ctrl + A - - Select all - - Selects all images. - - - Ctrl + Shift + A - - Select none - - Clear the image selection. - - - 1 - - Select group 1 duplicates - - Selects the first image from each match group. - - - 2 - - Select group 2 duplicates - - Selects all but the first image from each match group. - - - Ctrl + 1 through - Ctrl + 0 - - Edit sub menu - - Executes the respective editor command. - - - Ctrl + P - - Properties - - Opens a properties window for selected images. - - - C - - Add to new collection - - Creates a new collection containing the selected images. - - - Print - - Opens a print dialog for selected images. - - - Ctrl + C - - Copy - - Copy selected images. - - - Ctrl + M - - Move - - Move selected images. - - - Ctrl + R - - Rename - - Rename selected images. - - - Ctrl + D - - Delete - - Delete selected images. - - - Delete - - Remove - - Remove selected images from result list. - - - Ctrl + Delete - - Clear - - Cleared the result list. - - - Menu - - Displays the context menu. - - - Ctrl + T - - Toggle display of thumbnails. - - - Ctrl + W - - Close window. - - - - The selection can be changed using the keyboard and mouse the same as in a file pane of the main window. - - - The image Dimensions column of the result list will only contain dimension information when comparing by dimensions, or when the data is easily available from memory or has been read from the cache. - -
- Status bar - - - Along the bottom of the Find Duplicates window is an area that displays the count of files contained in the window, and the number of files in the result list. - - - The status bar will also display the status of an active compare operation using the progress bar. A compare operation involves 2 or 3 stages, depending on the type of comparison. These are the stages in order: - - - 1) If necessary, extra data is read into memory for the comparison stage, the progress bar will indicate this stage with text that resembles “reading dimensions...”, “reading checksums...”, or “reading similarity data...”. - 2) The images are compared using the selected method, the progress bar will indicate this stage with the text “comparing...”. - 3) The results are sorted for display, the progress bar will indicate this stage with the text “sorting...”. - - - Stage 1 is only used for the Dimensions, Checksum, and Similarity compare methods. - - - If the time to complete a stage will be significant, an estimated time to completion will also be displayed in the progress bar. The estimated time only refers to the current stage, other stages are not included in the estimate. The time estimate is displayed using the format MINUTES:SECONDS. - -
- Thumbnails - - - Thumbnails can be displayed beside each image in the result list by enabling the Thumbnails check box. - -
- Compare two file sets - - - Sometimes it is useful to compare one group of files to another, different group of files. Enable this check box to compare two groups of files. When enabled a second list will appear, files can be added to this list using the same methods for the main list. - - - When comparing two file sets the results list will display matches between the two lists. For each match group, the first file is always from the main group, and the remaining files are always from the second group. - -
- Drag and Drop - - - Drag and drop can be initiated with the primary or middle mouse buttons. Dragging a file that is selected will include all selected files in the drag. Dragging a file that is not selected will first change the selection to the dragged file, and clear the previous selection. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideImageSearchSearch.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideImageSearchSearch.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideImageSearchSearch.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideImageSearchSearch.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,276 +0,0 @@ - -
- - Search Window - - - Geeqie provides a utility to find one or more images based on various parameters. - - - To display a new Search Window press F3 or select Search from the File menu. - - - To start a search activate the Find button. A search in progress can be stopped by activating the Stop button. - - - The progress of an active search is displayed as a progress bar at the bottom of the window. The progress bar will also display the total files that match the search parameters, and the total number of files searched. - - - When a search is completed, the total number of files found and their total size will be displayed in the status bar. - -
- Search location - - - One of several locations can be chosen as the source to use in the search. - - - Path - - - The search will include files located in the selected folder, enable the Recurse check box to include the contents of all sub folders. - - - Comments - - - The search will include all files that have a keyword or comment associated to it. - - - Note: Only keyword and comment associations stored in the user's home folder are included in this search type. - - - Results - - - The search will include all files currently listed in the results list, use this to refine a previous search. - -
- Search parameters - - - Each search parameter can be enabled or disabled with the check box to it's left. For a file to be a match, all enabled parameters must be true. - - - File name - - - The search will match if the entered text appears within the file name, or if the text exactly matches the file name, depending on the method selected from the drop down menu. The text comparison can be made to be case sensitive by enabling the Match case checkbox. - - - File size - - - The search will match if the file size on disk is equal to, less than, greater than, or between the entered value, depending on the method selected from the drop down menu. The between test is inclusive, for example a file of size 10 will match if the size parameters are between 10 and 15. - - - File date - - - The search will match if the file modification time on disk is equal to, before, after, or between the entered date, depending on the method selected from the drop down menu. The between test is inclusive, for example a file with date of 10/04/2003 will match if the date parameters are between 10/04/2003 and 12/31/2003. - - - For convenience, the button with the down arrow displays a pop up calendar to enter the date. - - - Image dimensions - - - The search will match if the image dimensions are equal to, less than, greater than, or between the entered values, depending on the method selected from the drop down menu. The between test is inclusive. - - - The image dimensions test is simple, both width and height must be within the allowed values for a match. - - - Image content - - - The search will match if the image contents are similar within the percentage value, inclusive. This uses the same test and data that is used to determine image similarity when Finding Duplicates. The entry is for entering the path for the image to use in this test. - - - Keywords - - - The search will match if the file's associated keywords match all, match any, or exclude the entered keywords, depending on the method selected from the drop down menu. Keywords can be separated with a space, comma, or tab character. - -
- Results list - - - Files that match the parameters of the search are shown in the list. By default they are displayed in the order that they are found, to sort the results list by a column activate or click the column title. Activating a column that is already used to sort the list will toggle between increasing and decreasing sort order. - - - A context menu is available for the result list by right clicking the mouse or pressing the Menu key when a row has the focus. - - - Keyboard shortcuts available in the results list: - - - Shortcut - - Context menu name - - Description - - - Enter - - View - - Opens selected image in main window. - - - V - - View in new window - - Opens selected image in a new window. - - - Ctrl + A - - Select all - - Selects all images. - - - Ctrl + Shift + A - - Select none - - Clear the image selection. - - - Ctrl + 1 through - Ctrl + 0 - - Edit sub menu - - Executes the respective editor command. - - - Ctrl + P - - Properties - - Opens a properties window for selected images. - - - C - - Add to new collection - - Creates a new collection containing the selected images. - - - Print - - Opens a print dialog for selected images. - - - Ctrl + C - - Copy - - Copy selected images. - - - Ctrl + M - - Move - - Move selected images. - - - Ctrl + R - - Rename - - Rename selected images. - - - Ctrl + D - - Delete - - Delete selected images. - - - Delete - - Remove - - Remove selected images from result list. - - - Ctrl + Delete - - Clear - - Cleared the result list. - - - Menu - - Displays the context menu. - - - Ctrl + T - - Toggle display of thumbnails. - - - Ctrl + W - - Close window. - - - - The selection can be changed using the keyboard and mouse the same as in a file pane of the main window. - - - The image Dimensions column of the result list will only contain dimension information when dimensions are included in the search parameters. - -
- Status bar - - - At the bottom of the search window is an area that includes the following items from left to right: - - - Thumbnails - - - Enable this check box to display a thumbnail next to each image in the results list. - - - File count display - - - Displays the total count of files in the results list, and their size on disk. The count of selected files will appear in parenthesis. - - - Search progress - - - When a search is active, the text “Searching...” will appear here. Two numbers in parenthesis will also be displayed, the first number is the number of files that match the search parameters and the second number is the total number of files that were searched. - - - Find - - - Activate the find button to start a search with the selected parameters. - - - Stop - - - Activate the stop button to end a search that is in progress. - -
- Drag and Drop - - - Drag and drop can be initiated with the primary or middle mouse buttons. Dragging a file that is selected will include all selected files in the drag. Dragging a file that is not selected will first change the selection to the dragged file, and clear the previous selection. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideIndex.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideIndex.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideIndex.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideIndex.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,27 +0,0 @@ - - - - The Geeqie User Manual - - - This document is a work in progress. If you find any problems or omissions, feel free to fix it directly or report it on geeqie-devel [AT] lists.sourceforge.net. - - - If you are having trouble finding a solution in the manual, try looking in the FAQ. - - - - - - - - - - - - - - - - - diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideIntroduction.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideIntroduction.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideIntroduction.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideIntroduction.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,48 +0,0 @@ - - - - Legal Notice - - - Copyright (c) 2008 - 2009 The Geeqie Team. - Copyright (c) 2004 John Ellis. - - - Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License?". - - - Introduction - - - Geeqie is an image viewer that makes navigation of images easy. Images can be viewed full screen, and a slide show function allows automatic changing of the displayed image. - - - Geeqie is an image manager, with complete copy, move, rename, and delete functions available at the press of a button. Find the right image with the search feature. Image collectors can free up space with a function that finds duplicate images. - - - The one thing Geeqie is not, and never will be, is an image editor. However, Geeqie paired with an image editor, such as the Gimp, can be a very powerful combination. - -
- Basic Features - - Thumbnail preview - Full screen - Slide show - Image Management - Image Collections - -
- Advanced Features - - Image Search - Find image duplicates based on image content - View and edit EXIF, IPTC and XMP data stored in images - Simple Sort Manager to quickly sort a folder of images into other folders - Rename images in bulk - Add XMP keywords to images, and recall those images with the search function - Very Configurable - - - “An application that displays images.” - This was, and still is, the primary goal of Geeqie. Over time image management features have been added, but the core purpose of Geeqie remains the same. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindow.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindow.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindow.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindow.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,17 +0,0 @@ - - - - Main Window - - - The Geeqie main window is designed for quick and easy navigation of images. The window consists of three regions: the file pane, the folder pane, and the image pane. - - - - - - - - - - diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindowFilePane.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindowFilePane.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindowFilePane.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindowFilePane.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,112 +0,0 @@ - -
- - File Pane - - - The file pane displays the images contained in the active folder. It has two modes of display, allows multiple selection, and can initiate drag and drop operations. - - - A context menu can be displayed by clicking the right mouse button on the file pane or pressing the menu key while the file pane has the focus. - -
- List view - - - This mode can be enabled by selecting “List” from the View menu, pressing Ctrl + L on the keyboard, or unselecting “View as icons” from the context menu. - - - The list view mode displays images in a standard vertical list. Three columns provide the file name, size in bytes, and the time the contents were last modified. - - - Thumbnails can be displayed next to each file in the list, to toggle thumbnails on or off by selecting “Thumbnails” from the View menu, pressing the T key, clicking the thumbnail button on the tool bar, or selecting “Show thumbnails” from the context menu. - - - Grouped sidecar files are represented by the main file with an expander. Clicking on the expander shows sidecar files. - -
- Icon view - - - This mode can be enabled by selecting “Icons” from the View menu, pressing Ctrl + I on the keyboard, or selecting “View as icons” from the context menu. - - - The icon view mode displays images as thumbnails in a grid, and by default a file name below each thumbnail. - - - The file name displayed below each thumbnail can be turned on or off by selecting “Show filename text” from the context menu. - - - Grouped sidecar files are represented by the main file. For accessing sidecars switch to List mode. - -
- Multiple selection - - - It is possible to select more than one image from the file pane. Multiple files can be selected with several methods: - -
- Mouse - - Ctrl + Primary mouse button will add or remove the file from the selection. - Middle mouse button will toggle selection of the file. - Shift + Primary mouse button will select all images between the clicked and focused image, or it will unselect all those images if the clicked image is already selected. - Shift + Ctrl + Primary mouse button works as Shift + Primary mouse button, but will not change the selection of files outside the region between the focus and clicked image. - -
- Keyboard - - Ctrl + Arrows will move the focus without changing the selection. - Ctrl + Space will toggle selection of the focused image. - Shift + Arrows will select a region of images. - Shift + Ctrl + Arrows works as Shift + Arrows, but will not change the selection of files outside the current focus region. - - - To select all files press Ctrl + A, or to unselect all image press Ctrl + Shift + A. These operations are also available from the Edit menu as “Select all” and “Select none”. - - - The current number of selected images and their total size will be indicated in the File list section of the status bar. - -
- Sorting - - - The order of the images can be changed by clicking the sort area of the status bar or from the context menu. The sort methods are by file name, number, file date, or file size. The number method will sort file names by their natural order, for example files with names of file_10, file_12, and file_9 will appear in order file_9, file_10, and file_12. - - - Selecting the ascending menu item will toggle between increasing and decreasing sort order. - -
- Context menu - - - Right clicking the mouse or pressing the menu key while the file pane has focus will display a menu. The menu functions will perform the same as those that match the window's menu bar, however a few functions are unique to the context menu: - - - View in new window - - Opens a new window containing a list of the currently selected images. - - Sort - - Changes the sort order of file pane. - - View as icons - - Toggles between the list and icon view modes. - - Show thumbnails - - Toggles display of thumbnails in the list view display mode. - - Show filename text - - Toggles display of file names in the icon view display mode. - -
- Drag and Drop - - - Drag and drop can be initialized with the primary or middle mouse buttons in the file pane. Dragging a file that is selected will include all selected files in the drag. Dragging a file that is not selected will first change the selection to the dragged file, and clear the previous selection. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindowFolderPane.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindowFolderPane.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindowFolderPane.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindowFolderPane.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,170 +0,0 @@ - -
- - Folder pane - - - The folder pane contains the menu bar, tool bar, path entry, and folder list. - -
- Tool bar - - - The tool bar includes buttons for often used operations. The tool bar can be hidden or shown by selecting “Hide toolbar” from the view menu. - - - Note: These buttons are only displayed as an icon, the text below refers to the tool tip that appears by hovering the mouse over each button. - - - Show thumbnails - - This button is active when the file list is in list view mode, and activating it will toggle the display of thumbnails. - - Change to home folder - - Change the main window to display the contents of the user's home folder. - - Refresh file list - - This will check for changes to the active folder and update the window. - - Zoom in - - Increase the image display size. - - Zoom out - - Decrease the image display size. - - Fit image to window - - This will size the image to fit within the image view. - - Set zoom 1:1 - - Restore zoom to the image's original size. - - Configure options - - Displays the Options window. - - Float controls - - Toggle the folder pane, file pane, and status bar between the main window and a secondary window. - - - The buttons corresponds to selected menu action. It is possible to add other actions by editing the Configuration file - -
- Path entry - - - This displays the active folder of the window and allows typing a location. - - - A folder or file can be typed into the entry to quickly change to a desired location or image, the main window will update after pressing the Enter key. Tab completion is also available in the path entry. - - - Note: Tab completion uses the Tab key, press the Down key to move the focus from the entry. - - - Next to the path entry is a button with a down arrow, clicking this will display a drop down list containing the most recent locations viewed. The list is ordered such that the most recent location is at the top. Selecting a location from the drop down list will change the window to display the location. - -
- Folder list - - - This displays a list of sub folders contained in the active folder, or a tree that includes all folders in the file system. - - - A context menu can be displayed by clicking the right mouse button on the folder pane or pressing the menu key while the folder pane has the focus - -
- List view - - - This mode can be enabled by from the View menu, from the context menu, or pressing Ctrl + T. - - - The list view mode displays sub folders contained in the active folder in a standard vertical list. The parent folder can be selected with the folder named “..”. - -
- Tree view - - - This mode can be enabled by selecting “Tree” from the View menu, pressing Ctrl + T, or selecting “View as tree” from the context menu. - - - The tree view mode displays all folders in the file system, starting with the root folder and branching out to include sub folders. A folder branch can be expanded or collapsed by clicking the expander next to each folder icon, or by pressing the respective + or - keys when the folder branch has the focus. - -
- Sorting - - - The order of the folder names will match the order selected for the file pane. Sort order can be changed by clicking the sort area of the status bar or from the context menu of the file pane. - -
- Context menu - - - Right clicking the mouse or pressing the menu key while the folder pane has focus will display a menu. The menu functions will perform the same as those that match the window's menu bar, however a few functions are unique to the context menu: - - - Up to parent - - This will change the window to display the contents of the parent folder. - - Slide show - - Start a slide show that contains all images in the selected folder. - - Slide show recursive - - Start a slide show that contains all images in the selected folder, and all images in the sub folders of that folder. - - Find duplicates - - This will open a new find duplicates window containing all images in the selected folder. - - Find duplicates recursive - - This will open a new find duplicates window containing all image in the selected folder, and all images in the sub folders of that folder. - - New folder - - Creates a new folder that is a sub folder of the selected folder. - - Rename - - Renames the selected folder. - - - Note: Renaming a folder will not update metadata, such as keywords, or cached thumbnails for images contained in that folder, the data will be lost. - - - View as tree - - Toggles between the list and tree modes of the folder pane. - -
- Drag and drop - - - Image files can be dropped onto folders displayed in the folder pane. A menu will appear allowing you to select to move or copy the dropped images into the target folder. The list will automatically scroll up or down when the drag pointer is near the respective top or bottom of the list. When in tree mode, hovering over a folder for a brief period of time will expand that folder. - - - The folders can used as a drag source for drag and drop, for example to add images in a folder to a collection window. However drag and drop can not be used to move or copy folders in Geeqie. - - - Using Shift key while dragging is a shortcut to move action. Menu will not appear but move will occur. - - - Using Ctrl key while dragging is a shortcut to copy action. Menu will not appear but copy will occur. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindowImagePane.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindowImagePane.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindowImagePane.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindowImagePane.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,183 +0,0 @@ - -
- - Image Pane - - - The image pane is the region of the main window that displays the selected image. The image pane allows adjustment of display size and orientation; it also provides several methods to manipulate the image with the mouse and keyboard. - -
- Image display - - - The image is drawn to the screen as it is decoded from disk. The image can be panned and zoomed while it is still loading. Image adjustment operations for rotation, mirror, and flip will delay until the image is completed. The adjustment queue will remember one operation and will retain the most recently requested function, which will be performed once the image has finished loading. - - - The quality of the image, especially when using the zoom feature, is dependent on the settings that are available on the Image tab of the preferences dialog. - - - To increase the speed of loading the next image when navigating the image list in sequence, enable the Preload next image option. - -
- Image panning and manipulation - - - When the image size is larger than the image pane, the visible region can be changed with the keyboard or mouse. The keyboard can also be used to adjust the orientation of the image. - -
- Keyboard - - - Use the Arrows to pan the image in the desired direction, to increase the panning speed hold down the Shift + Arrows. - Press Ctrl + Arrows to move to the respective edge of the image. The image can only be panned with the keyboard when the image has the focus, indicated by a dotted line surrounding the image pane. - - - Shortcut - - Context menu name - - Description - - - + = - - Zoom in - - Zoom in. - - - - - - Zoom out - - Zoom out. - - - X [Keypad]* - - Fit image to window - - Scale the image to fit the available display area. - - - Z [Keypad]/ - - Zoom 1:1 - - Reset the zoom to original image size. - - - ] - - Rotate clockwise - - Rotate the image clockwise 90 degrees. - - - [ - - Rotate counterclockwise - - Rotate the image counterclockwise 90 degrees. - - - Shift + R - - Rotate 180 - - Rotate the image 180 degrees. - - - Shift + M - - Mirror - - Flip the image horizontally. - - - Shift + F - - Flip - - Flip the image vertically. - - - - Note: The rotation, mirror, and flip functions will not change the image data directly. Depending on the Metadata Options, they just alter the Orientation property in memory, in private metadata file or in the image. The image can be rotated according to the saved metadata with "Apply the orientation to image content" command. - -
- Mouse - - - Press the primary mouse button on the image and hold it, then move the mouse to pan the image in the desired direction. Releasing the mouse button will stop the panning operation. The mouse wheel can also be used to scroll the image when holding down the Shift key [(*)]. - - - To scale the image size hold down the Ctrl key and scroll the mouse wheel up to zoom in, or down to zoom out. - -
- Smooth Scroll - - - To start the smooth scroll function hold down the Shift key and click the primary mouse button. An icon will appear at the location of the mouse pointer, the mouse can then be positioned to pan the image. The image will pan in the direction of the mouse pointer relative to the icon. The pan speed will increase in proportion to the distance that the pointer is from the center of the icon. To end the smooth scroll function click the primary mouse button within the image pane. - -
- Context menu - - - Right clicking the mouse or pressing the menu key while the image has the focus will display a menu. The menu functions will perform the same as those that match the window's menu bar, however a few functions are unique to the context menu: - - - View in new window - - Opens a new window containing a second copy of the current image. - - Pause slide show, Continue slide show - - Controls the pause state of an active slide show, the text of the menu will change to reflect the action that will be performed. - -
- Drag and Drop - - - Files and folders can be dropped onto the image pane, dropping a file will display the file and dropping a folder will change the main window to display the contents of the folder. When dropping multiple items on the image pane, only the first item in the list will be used, all additional items will be ignored. - - - A drag and drop operation can be initiated from the image pane with the middle mouse button, the dragged item will contain the file path of the displayed image. - -
- Displaying images side by side - - - Using View > Split item from the main menu, image pane can be splitted in up to four panes, this allows to display images side by side. You may use drag'n drop to change images in each pane. - - - Connected zoom is possible through the View > Connected zoom menu. Zoom is then applied to all displayed images. - - - Connected scrolling is also possible using Shift and primary mouse button. - - - As a general rule, hotkeys and mouse without shift affects just one image and with shift all images. - - - (*) Note: The mouse wheel behavior for scrolling and image step can be swapped with the Mouse wheel scrolls image option located on the Advanced tab? of the preferences dialog. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindowLayout.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindowLayout.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindowLayout.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindowLayout.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,45 +0,0 @@ - -
- - Layout - - - The main window consists of four areas, the folder pane, file pane, image pane, and the status bar. The status bar is always at the bottom of the window. The three remaining areas, or panes, can be arranged and sized by the user. - -
- Selecting the location of each pane - - - The arrangement of the folder, file, and image pane is selected on the Windows tab of the Options window. There are four choices for the layout, the difference is that each has the larger pane in a different location: right, bottom, left, and top. - - - The order in which the panes are filled is determined by the three row list located below the layout selection. The three numbered rows correspond to the three numbered regions of the selected layout, to change the order of the list drag a row to the desired location within the list. To drag a row move the mouse over the selected row, press and hold the primary mouse button, then drag the row to the desired location and release the button. - - - Note: In the options window the file and image panes are labeled similarly, however the folder pane is labeled as tools. - -
- Changing the size of a pane - - - Between the panes of the main window are two dividers that can be moved with the mouse to adjust the size of each pane. Press and hold the primary button, then move the divider to the desired location and release the button. - -
- Folder pane - - - The folder pane contains the menu bar, tool bar, path entry, and folder list. The list can be set to display the sub folders of the active folder or a tree that starts with the root folder and contains all folders in the file system. - -
- File pane - - - The file pane lists the images contained in the active folder. The file pane can be set to display as a vertical list or an icon view. - -
- Image pane - - - The image pane is where the active image is displayed. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindowMenus.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindowMenus.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindowMenus.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindowMenus.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,442 +0,0 @@ - -
- - Menus - - - This section describes the functions of each item on the menu bar in the Geeqie main window. - -
- File Menu - - - New window - - Opens a new main window, with the initial path set to the current folder. - - New collection - - Opens a new collection window, the new collection will be empty. - - Open collection - - Displays a dialog to open a collection stored on disk, the selected collection will then appear in a new window. - - Open recent - - This menu item lists the recently active collections, selecting an item from the list will open that collection in a new window. The most recent item will appear at the top of the list. Maximum number of entries can be modified through Open recent list maximum size? option. - - Search… - - Opens a new Search window. - - Find duplicates… - - Opens a new Find Duplicates window. - - Print.. - - Opens a print dialog. - - New folder… - - Creates a new folder in the current path. - - Copy… - - Opens a dialog to select a destination to copy the currently selected files. - - Move… - - Opens a dialog to select a destination to move currently selected files. - - Rename… - - Renames the current file selection. - - Delete… - - Deletes the current file selection. - - Symlink - - Creates a symbolic link. This is implemented via external editor?. - - Close window - - Closes the window containing the menu, if the window is the last main window Geeqie will quit. - - Quit - - Quits the Geeqie application, if collections or image metadata have been changed but not saved, the user will be prompted for confirmation. - -
- Go menu - - - First Image - - Goes tothe first image. - - Previous Image - - Goes to the previous image. - - Next Image - - Goes to the next image. - - Last Image - - Goes to the last image. Back Goes to the previous folder. Home Goes to home folder. - -
- Select menu - - - Select all - - Selects all files in the current list - - Select none - - Deselects all files - - Invert Selection - - Inverts current selection - - Copy path - - Copy selected item path to clipboard. - - Show marks - - Displays marks in the file list - - Mark n - - Opens submenu for manipulating mark n - - Mark n / Toggle mark n - - Set or unset mark n on selected files - - Mark n / Set mark n - - Set mark n on selected files - - Mark n / Reset mark n - - Unset mark n on selected files - - Mark n / Select mark n - - Selects all files having mark n set - - Mark n / Add mark n - - Adds files having mark n set to selection - - Mark n / Intersection with mark n - - Intersects current selection and mark n - - Mark n / Unselect mark n - - Removes files having mark n set from current selection - - Mark n / Filter mark n - - Shows only the images that have mark n set. - -
- Edit menu - - - External Editors - - This submenu contains external editors that were found on the system. See Editors section? for details. - - Orientation - - Adjust image orientation - - Orientation / Rotate clockwise - - Rotates the current image clockwise 90 degrees, does not modify the file on disk. - - Orientation / Rotate counterclockwise - - Rotates the current image counterclockwise 90 degrees, does not modify the file on disk. - - Orientation / Rotate 180 - - Rotates the current image 180 degrees, does not modify the file on disk. - - Orientation / Mirror - - Swaps the left and right sides of the image so that the result is similar to that of looking at the image in a mirror, does not modify the file on disk. - - Orientation / Flip - - Swaps the top and bottom sides of the image, does not modify the file on disk. - - Orientation / Original state - - Removes all effects applied through the Adjust menu, reverting image to its original state. Orientation / Apply the orientation to image content The commands above modifies image metadata only. This commands actually transforms image pixels. See Editors section? for details. - - Save metadata - - Saves queued metadata changes. Autosave can be configured too. - - - Preferences - - This submenu contains configuration and maintenance commands - - Preferences / Preferences… - - Opens the Preferences Dialog for changing of global preferences. - - Preferences / Configure Editors… - - Opens the Editors Dialog? for changing of global preferences. - - Preferences / Configure This window… - - Opens the Window Preferences Dialog? for changing of options that can differ for each window. - - Preferences / Thumbnail maintenance - - Opens a dialog with utilities to manage cached thumbnails and keywords data. - - Set as wallpaper - - Renders the current image to the root window (desktop). The resulting image will be tiled to fit the root window if zoom is not set to fit to window; when zoom is set to fit to window, the image will be scaled to fill the root window. - -
- View menu - - - View in new window - - Opens selected image in its own window - - Pan view - - Opens current folder in Pan view window - - Files and Folders - - - Zoom - - Zoom in - - Increases the zoom by one increment, resulting in a larger image. - - Zoom out - - Decreases the zoom by one increment, resulting in a smaller image. - - Zoom to fit - - Automatically adjusts the zoom so that the image will fit within the display pane. The effect on images with an original size smaller than the display pane can be changed with the Allow enlargement of image for zoom to fit option located on the Image tab of the preferences dialog. - - Fit Horizontally - - Adjusts the zoom so image height fit within the display pane. - - Fit Vertically - - Adjusts the zoom so image width fit within the display pane. - - Zoom n:m - - Set zoom to the n:m value. 1:1 is the original size of the image. When n is greater than m, zoom in occurs else zoom out occurs. - - - Connected zoom - - Actions in this menu are identical to those in Zoom menu, but apply to all images displayed in splitted view. - - Split - - Horizontal - - Splits main image view in two horizontal panes. - - Vertical - - Splits main image view in two vertical panes. - - Quad - - Splits main image view in four panes. - - Single - - Reverts to normal view mode (one image). - - - Thumbnails - - Toggles the display of image thumbnails in the file list, this item is not available when the file list is in icon view mode. A check appears next to this item when thumbnails are enabled. - - List - - Changes the file list to display files in list format. - - Icons - - Changes the file list to display files as icons. - - View Directory as - - List - - Set the folder view mode to list. - - Tree - - Set the folder view mode to tree. - - - Image Overlay - - Displays Image Overlay information box (OSD), use twice to add histogram to it. - - Histogram channels - - Switches channels displayed in the histogram (red, green, blue, RGB, value, maximum value). - - Histogram log mode - - Toggles between linear and logarithmical histogram. - - Full screen - - Toggles the full screen window display. - - Float file list - - Toggles the location of the menu bar, tool bar, status bar, and file lists between the main window and a second window. A check appears next to this item when the location is the second window. - - Hide file list - - Toggles visibility of the menu bar, tool bar, status bar, and file lists. - - Hide toolbar - - Toggles visibility of the tool bar. A check appears next to this item when the tool bar is not visible. - - Keywords - - Toggles display of the Keywords sidebar. - - Exif data - - Toggles display of the EXIF sidebar. - - Sort manager - - Toggles display of the Sort Manager sidebar. - - Toggle slideshow - - Begins or ends a slide show, the slide show status is displayed in the status bar. - - Pause slideshow - - Pauses a slide show, the slide show status is displayed in the status bar. - - Refresh - - Updates the contents of the folder and file lists to match what is currently on disk, the current image will also be reread from disk. - -
- Help menu - - - Contents - - Opens the Geeqie user manual in a new browser window. - - Keyboard shortcuts - - Displays a window listing the default keyboard shortcuts. - - Release notes - - Displays a window containing the release notes for the version of Geeqie in use. - - About - - Opens a window containing the Geeqie version, credits, website, and email contact information. - - Log window - - Opens the log window, mostly used for debugging purposes. - -
- Tear off menus - - - Menus can be permanently displayed by selecting the dotted line item at the top of each menu category. A tear off menu will behave the same as an ordinary window. To close a tear off menu, select the dotted line item at the top of the menu. - -
- Keyboard shortcuts - - - The keyboard sequence associated to each menu entry is listed within the main window menu bar. For reference, the complete list of default keyboard shortcuts can be found in section Keyboard Shortcuts. - -
- Changing the main window menu bar keyboard shortcuts - - - The keyboard shortcuts associated with the menu bar items can be changed by editing the accels file located in the Geeqie configuration folder while the Geeqie application is not running: - - - ($HOME)/.geeqie/accels - - - To change a menu item, first find the line corresponding to the menu item to change. For example the File menu Quit line originally looks like this: - - - ; (gtk_accel_path "&lt;main&gt;/File/Quit" "&lt;Control&gt;q") - - - To change this menu's keyboard shortcut, first remove the leading semicolon (;), removing the semicolon will tell Geeqie that this menu item has been customized. Then change the keyboard shortcut defined by the text in quotes at the end of the line, be sure to only change the text within the quotes; in this case the text “&lt;control&gt;q”. For example changing the shortcut associated with Quit to the Q key will result in this line: - - - (gtk_accel_path "&lt;main&gt;/File/Quit" "q") - - - Please note the removed semicolon and the change of “&lt;control&gt;q” to “q”, be careful not to change any of the other text on the line or Geeqie may ignore the customization. The keyboard modifiers and their respective text are listed below: - - - <tablestyle="width:60%"> Key - - Text to use in accels file - - - <tablestyle="width:60%"> Shift - - &lt;shift&gt; - - - Ctrl - - &lt;control&gt; - - - Alt - - &lt;alt&gt; - - - - Modifiers can be combined, for example in the exit line above, the text would be “&lt;control&gt;&lt;shift&gt;q” to set the exit shortcut to Ctrl + Shift + Q. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindowNavigation.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindowNavigation.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindowNavigation.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindowNavigation.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,48 +0,0 @@ - -
- - Navigation - -
- Moving around in the file system - - - To select the folder containing the desired images for display, change to the image's folder using the folder view. Single clicking a folder with the primary mouse button will change the main window to display that folder's contents. When the folder view is displayed as a list, use the folder named “..” to change to the parent folder (the parent folder is the folder that contains the current folder). - - - To select a folder with the keyboard, move the focus to the desired folder and press the SpaceBar? or Enter key. - -
- Moving around within a folder - - - After selecting the desired folder as above, the desired image can be viewed by selecting it from the file list. To select a file for display single click it with the primary mouse button. - - - To select a file with the keyboard, move the focus to the desired file. As you move the focus within the file list the image display will update to match the highlighted file. - -
- Going home - - - To change to your home folder, click the Home button in the tool bar. Home folder can be set in window preferences. - -
- Direct path entry - - - The current path is displayed in an entry field above the folder list. A folder or file can be typed into the entry to quickly change to a desired location or image, the main window will update after pressing the Enter key. Tab completion is also available in the path entry. - - - Next to the path entry is a button with a down arrow, clicking this will display a drop down list containing the most recent locations viewed. The list is ordered such that the most recent location is at the top. Selecting a location from the drop down list will change the window to display the location. - -
- Stepping through images sequentially - - - To change the displayed image to next or previous one within the same folder, use the respective PageDown? and PageUp? keys. The mouse can also be used to change the image by clicking the image display with the respective primary and middle buttons. - - - To change to beginning or end of the image list, use the respective Home or End keys. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindowStatusBar.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindowStatusBar.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideMainWindowStatusBar.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideMainWindowStatusBar.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,90 +0,0 @@ - -
- - Status Bar - - - The status bar contains information and details about the contents of the main window. Information displayed includes the progress of generating thumbnails, the number of files in the file list with byte size, the current file selection count including byte size, details about the currently displayed image, and the zoom setting. The current sort preference is also displayed, and can be adjusted from the status bar. - - - The status bar is comprised of five sections, from left to right these are a progress bar, sort method, file list counts, image details, and zoom setting. Each section is described below. - -
- Progress Bar - - - The Progress bar updates to display the current state of thumbnail generation. When this section contains no text, thumbnail generation is idle. When “Loading thumbs...” is displayed, thumbnails are currently being generated when Geeqie is idle; the progress bar will update to display the percentage of thumbnails that are completed. - -
- Sort method - - - This is the method used to sort image names in the file list. Clicking or activating this field will display a menu to allow selection of the sort method. - - - Name - - Images are sorted by file name. - - Number - - Images are sorted by natural numerical order, such that, for example, 9_name.jpg will be listed before 10_name.jpg. - - Date - - Images are sorted by file date on disk. - - Size - - Image are sorted by file size on disk. - - Ascending - - Toggles between increasing and decreasing sort order. A check will appear next to this entry to indicate ascending sort order. - -
- File list - - - This section displays the count of files that appear in the file list, including the total byte size. The number of files selected is displayed in parenthesis, including the total byte size of the selected files. The slide show status is also displayed here; when a slide show is running, “Slideshow” will appear, the text will change to “Paused” when a slide show is in the paused state. - -
- Image Details - - - This section displays the dimensions (width x height) and file byte size of the image that is active in the image pane. When the format of the file in the image pane can not be determined the dimensions will show as “(0 x 0)”, in addition “(no read permision)” may appear if the file permissions do not allow reading the contents of the file. - -
- Zoom - - - This section displays the current zoom ratio. A ratio of 1:1 is the image's original size. When the left number is larger the image is displayed larger than original size, when the right number is larger the image is displayed smaller. - - - A tilde (~) appears within the ratio display when the zoom is set to fit the image within the display area. In this zoom mode the ratio is automatically adjusted, and the displayed ratio may not be the actual ratio because the status bar display rounds the actual value to the nearest tenth (0.1). - -
- Buttons - - - Statusbar buttons corresponds to selected menu action. It is possible to add other actions by editing the Configuration file - -
- Show Pixel Info - - - Shows coordinates and RGB value under cursor. - -
- Enable Color Management - - - Enables color profiles. - -
- Save Metadata - - - Opens dialog for review of metadata changes. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOptions.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOptions.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOptions.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOptions.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,24 +0,0 @@ - - - - Options Explained - - - This chapter attempts to explain in detail the Geeqie preferences dialog. - - - - - - - - - - - - - There is another set of options, that can be set independently for each window: - - - - diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsBehavior.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsBehavior.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsBehavior.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsBehavior.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,155 +0,0 @@ - -
- - Advanced Behavior Options - - - This section describes the options presented under the Behavior Tab of the preferences dialog. - -
- Delete - - - Confirm file delete - - - Prompts for confirmation before deleting files. - - - Enable Delete key - - - Disable this to disassociate the delete file function from the Delete key. This option does not effect the Ctrl + D key sequence. May be useful in combination with “confirm file delete”, above, disabled so that accidentally hitting a single key will not result in deleted files. - - - Safe Delete - - - Moves deleted files to a temporary folder, for easy retrieval of deleted files. Files in the temporary folder are retained until the maximum size is reached, at which point deleting additional files will result in the removal of the oldest files to reclaim the space needed for the new files. - - - Note: Files moved to the Safe Delete folder are prefixed with a six digit number in the format: nnnnnn_FILENAME - This is used by the delete feature to distinguish which files to remove first when clearing space for new files. - The digit counter increments with each deleted file. - - - Folder - - - The location of the folder used by the Safe Delete feature. - - - Maximum size - - - The size to use for the Safe Delete folder, in megabytes. Note that setting this value to 0 (zero) will disable any limit. - - - Clear button - - - Removes all files contained in the Safe Delete folder. - - - View button - - - Changes the Geeqie main window to display the contents of the Safe Delete folder. - -
- Behavior - - - Rectangular selection in icon view - - - Enable this to change the selection method used when selecting multiple items in an icon view. - - - Descend folders in tree view - - - This will allow Geeqie to read sub folder content to determine if it should display expander indicators in the folder tree view. - - - Note: Disable this if Geeqie wakes up auto mounted network shares, or takes too long to initially display the folder view. - - - Show date in directories list view - - - Enable this to display directory modification date along its name in the list view - - - In place renaming - - - When renaming a single file, this will allow the rename entry to appear directly over the original filename. - - - Show "Copy path" menu item - - - Enable this option to show a "Copy path" menu item in applicable menus. - - - This allows to copy path to files or directories to the clipboard, names are enclosed with double quotes and separated by space. - - - Open recent list maximum size - - - This is the number of entries saved in the recent open file list. - - - Drag'n drop icon size - - - This is the width and height of the icon generated from image and displayed when doing drap'n drop actions. High resolution screens may require to increase this number. - -
- Miscellaneous - - - Custom similarity threshold - - - This setting is used by the compare method “similarity (custom)”, located in the Find Duplicates window. - -
- Debugging - - - Debug level - - - This defines the verbosity of debug info sent to console and log window (0 disables the debug output). - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsColor.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsColor.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsColor.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsColor.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,27 +0,0 @@ - -
- - Color management - - - Here one can defined color profiles to use. Color management can be enabled or disabled from menu: View / Color Management. - - - Type - - - Either input color profile or screen color profile. - - - Menu name - - - Name of the menu entry corresponding to the color profile. - - - File - - - Path to the color profile file. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsFiltering.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsFiltering.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsFiltering.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsFiltering.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,76 +0,0 @@ - -
- - Filtering Options - - - This section describes the options presented under the Filtering Tab of the preferences dialog. - -
- Filters - - - Show hidden files or folders - - - Enables the display of hidden files and folders, also known as dot files. - - - Show dot directory - - - Enables the display of the current directory as a dot in the directories views. It may be useful for some drag'n'drop operations. - - - Case sensitive sort - - - Files and folders are sorted such that upper case letters occur before lower case letters. - - - Enabled result: A, B, C, a, b, c - Disabled result: A, a, B, b, C, c - - - Disable file filtering - - - Enable this to allow Geeqie to list all files, even those that do not contain images. - -
- Grouping sidecar extensions - - - This field defines which extensions will lead to file grouping. Each extension should be separated by a semi-colon and should include the starting dot. It is possible to use wildcards: %image expands to list of all files in class image, %raw expands to raw files and %meta expands to metadata files (see the file class below). - - - Grouped files will appear as one in file views. The group is represented by the first existing extension from the list. For example, it is useful when browsing directories containing two files for the same image (as raw+jpeg files generated by some cameras). - -
- File types - - - This list contains the image formats that are understood by Geeqie. To disable a specific file type from being displayed, uncheck it's corresponding checkbox. Filters can be edited by first selecting the line containing the item to be changed, then clicking the filter or description field, making any changes, then pressing Enter; press Escape to cancel an active edit. The format for the filter field is a semicolon (;) seperated list of extensions, extensions must include the period (.). - - - Note: Unlike all other options in the dialog, filter list changes are applied immediately. - - - Add button - - - Adds a new blank line to the filter list, change the parameters to match the desired file type. - - - Remove button - - - Removes the selected line from the filter list. - - - Defaults button - - - Resets the filter list to the default values, discarding any customizations made by the user. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsGeneral.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsGeneral.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsGeneral.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsGeneral.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,125 +0,0 @@ - -
- - General Options - - - This section describes the options presented under the General Tab of the preferences dialog. - -
- Startup - - - Restore folder on startup - - - Enabling this will cause Geeqie to initially open to the specified folder. - - - Use Current - - - Activate this button to change the setting to the current folder. - - - Use last path - - - When checked, Geeqie will recall the last path used on startup. - -
- Thumbnails - - - Size - - - Selects the size of the thumbnails displayed throughout Geeqie, dimensions are width by height in pixels. - - - Quality - - - Selects the method to use when scaling an image down for thumbnails. - - - Nearest - - Fastest scaler, but results in poor thumbnail quality. - - Tiles - - Thumbnail results are very close to bilinear, with better speed. - - Bilinear - - High quality results, moderately fast. - - Hyper - - Slowest scaler, sometimes gives better results than bilinear. - - - Cache thumbnails - - - Enable this to save thumbnails to disk, subsequent requests for a thumbnail will be faster. Thumbnails are cached into ($HOME)/.geeqie/thumbnails. Refer to Thumbnails Reference for details. - - - Use shared thumbnail cache - - - This will use a thumbnail caching method that is compatible with applications that use the standard thumbnail specification. When this option is enabled thumbnails will be stored in ($HOME)/.thumbnails - - - Cache thumbnails into .thumbnails - - - When enabled, Geeqie attempts to store cached thumbnails closer to the source image. This way multiple users can benefit from a single cache, thereby reducing wasted disk space. The resulting location is the source image's folder, in a sub folder with the name .thumbnails. When the image source folder cannot be written, Geeqie falls back to saving the thumbnail in the user's home folder. - - - Faster jpeg thumbnailing - - - This will speed up thumbnails generation in some cases, but may reduce the quality - - - Use EXIF thumbnails when available - - - Geeqie will extract thumbnail from EXIF data if available instead of generating one. This will speed up thumbnails generation but EXIF thumbnail may be not in sync with the image if it was modified by a tool which didn't take care of the thumbnail data. - - - Use xvpics thumbnails when found - - - xvpics is a common thumbnail caching format used by several applications. Thumbnails are stored locally to the source image in a sub folder with the name .xvpics. Enabling this option will allow Geeqie to read thumbnails saved in the xvpics format. - - - Note: Support for xvpics is read only, Geeqie can not generate thumbnails in this format. - -
- Slide show - - - Delay between image change - - - Specifies the delay between images for slide shows, in seconds. - - - Random - - - When enabled, slide show images will appear in random order. - - - Note: Random images are displayed such that each image appears once per cycle of all images. When the slide show repeat option is enabled, the image order is randomized after completing each cycle. - - - Repeat - - - When enabled, slide shows will continue at the beginning after the last image is displayed. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsHidden.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsHidden.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsHidden.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsHidden.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,43 +0,0 @@ - -
- - Hidden Options - -
- geeqierc - - - This section describes the options not accessible by the graphical interface, these options exist to maintain behavior of older releases of Geeqie. To change these settings, edit the Geeqie configuration file: - - - ($HOME)/.geeqie/geeqierc - - - lazy_image_sync: [true false]: This will suppress the image view from changing when selecting a new folder; the current image will remain displayed until the user manually selects another image. - - - display_dialogs_under_mouse: [true false]: Enabling this will cause new dialogs to initially position themselves such that they are under the current mouse position. - - - scroll_reset_method: value: This will set the method used to set the scroll position, or visible region of a new image, value can be: - - - 0: Move to upper left corner. - 1: Center image. - 2: Maintain same visible region as previous image, if possible. - - - dither_quality: Set the quality when dithering images on displays with a limited color pallet: - - - 0: No dithering - 1: Normal - 2: Best - -
- Find Duplicates window - - - Ctrl + Shift + [Right Mouse click]: Use this to display a dialog containing the data stored for the clicked image file. This is usually only useful for debugging purposes. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsImage.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsImage.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsImage.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsImage.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,148 +0,0 @@ - -
- - Image Options - - - This section describes the options presented under the Image Tab of the preferences dialog. - -
- Zoom - - - Quality - - - Selects the method used to scale the size of an image. - - - Nearest - - Fastest scaler, but results in poor image quality. - - Tiles - - Results are somewhat close to bilinear, with better speed. - - Bilinear - - High quality results, moderately fast. - - Hyper - - Slowest scaler, sometimes gives better results than bilinear. - - - Two pass zooming - - - Enables Geeqie to first display a scaled image using the nearest zoom quality. After image decoding is complete, the image is scaled again using the selected “Zoom (scaling)” method. This allows faster display of an image as it is decoded from the source file. - - - Allow enlargement of image for zoom to fit - - - Enable this to allow Geeqie to increase the image size for images that are smaller than the current view area when the zoom is set to “Fit to Window”. - - - Limit image size when autofitting - - - This percentage will affect the size of the image when Fit image to window is set, instead of using 100% of the window, it will use the specified percentage. It allows to keep a border around the image (values lower than 100%) or to auto zoom the image (values greater than 100%). It affects fullscreen mode too. - - - Zoom increment - - - Adjusts the step size when zooming in or out on an image. This value corresponds to the percentage of the original image. - -
- Zoom control - - - When new image is selected - - - This controls the behavior of the zoom setting when changing the displayed image. - - - Zoom to original size - - The new image is set to it's original size. - - Fit image to window - - The new image's zoom is changed so that the image will fit within the current view area. - - Leave zoom at previous setting - - The zoom setting is unchanged, the new image will be scaled the same as the previous image. - -
- Scroll control - - - Scroll reset method - - - This controls the scroll initial position when changing the displayed image. - - - Top left - - The new image is displayed from top left corner. - - Center - - The new image is centered - - No change - - The new image is positionned as the previous one, whenever possible. - -
- Appearance - - - Custom border color - - - Enable this to draw the image background (the area around the image) in the specified color. - - - Border color - - - Use this color chooser to define the color to use as image background. - - - Note: You may use Limit image size when autofitting option to keep a border around the image in fullscreen mode. - -
- Convenience - - - Refresh on file change - - - Geeqie will monitor currently active images and folders for changes in their modification time, and update the display if it changes. - - - Note: Disable this if the system will not go into sleep mode due to occasional disk activity from the time check, or if Geeqie updates too often for folders with continuously changing content. - - - Preload next image - - - Enabling this option will cause Geeqie to read the next logical image from disk when idle, it will also retain the previously viewed image in memory. By reading the nearest images into memory, time to display the next image is reduced. - - - Note: This option will increase Geeqie memory requirements, and may cause performance issues with very large images. If the use of Geeqie results in the system noticeably swapping memory to disk, try disabling this feature. - - - Auto rotate image using EXIF information - - - Auto rotates images based on data stored in images that include EXIF data. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsKeyboard.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsKeyboard.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsKeyboard.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsKeyboard.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,9 +0,0 @@ - -
- - Keyboard Options - - - This section describes the hotkey configuration dialog. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsLayout.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsLayout.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsLayout.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsLayout.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,12 +0,0 @@ - -
- <title> - Window Layout - - - The Geeqie main window consists of three main panes, their position and order can be changed here. The first four selections represent the basic layout of the main window. The numbers within each selection represent the order of the pane content. - - - The order of the content can be changed by dragging the Tools, Files, or Image with the mouse to the desired location within the list. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsMetadata.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsMetadata.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsMetadata.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsMetadata.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,47 +0,0 @@ - -
- - Metadata Options - - - This section describes the metadata writing process and options that influences it. - -
- Metadata handling - -
- Read algorithm - - Read exif, iptc and XMP from the file. - Now we have "raw" data -> show them in Exif Window. - Read XMP sidecar or Geeqie private metadata file, which overrides the XMP read from the file. - Sync XMP with exif and Iptc, this corresponds to the "reconciliation" as described in [XMP Specification] - detect which of Exif and Xmp.exif is newer and copy the data in appropriate direction - detect which of Iptc and Xmp is newer and copy the data in appropriate direction - - Now we have "processed" data - use them for Info Sidebar (title, keywords, ...), Orientation, Color management, etc. - -
- Metadata modification - - Grouped files handling (raw + jpeg): description tags (keywords, comments) are written to all image files in the group (a group contains the same image in various formats, descriptions should be the same), technical tags (exif) are handled separately for each file. - Modifying the keywords, comment, orientation, etc. does not ask for confirmation, but immediately modifies the metadata in memory and adds the file to "write queue" - Writing of the queued changes is triggered from the menu or via auto-save. It is possible to review the changes and exclude selected files. - -
- Write algorithm - - Exif and IPTC is updated from XMP (for example Exif.Image.Orientation is updated from Xmp.exif.orientation). See XMP and IPTC4XMP specs for the list of corresponding tags. - Try to write exif, iptc and XMP to the image file - Try to write XMP sidecar for raw file if previous step was not possible. - If previous steps were not possible, write XMP metadata to .metadata. - If previous steps were not possible, write XMP metadata to geeqie private directory. - After the first successful write attempt delete old metadata files in all possible locations. - -
- Options that influences the process - - - File types with allowed sidecars are listed in the Files tab. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsWindow.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsWindow.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOptionsWindow.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOptionsWindow.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,266 +0,0 @@ - -
- - Window Options - - - This section describes the options presented under the Windows Tab of the preferences dialog. - -
- State - - - Remember window positions - - - This will maintain windows size and position between Geeqie sessions. - - - Remember tool state - - - This will maintain the tool window state between Geeqie sessions. - -
- Size - - - Fit window to image when tools are hidden/floating - - - The main window will be resized to accommodate each image's size and proportions when the image pane is the only one visible within the window. - - - Limit size when auto-sizing window - - - This will restrict the maximum size a window can grow to automatically fit an image. The value represents the percentage of the desktop size in width and height. - -
- Full Screen - - - Location - - - Selects the location and position of the full screen window. 'Determined by window manager' will leave the window placement up to the window manager. 'Active screen' places the window on the same screen as the Geeqie main window. 'Active monitor' does the same, but limits the full screen window size to the monitor containing the main window. The remaining choices are dependent on the multiple monitor configuration. - - - Stay above other windows - - - Enable this to have Geeqie ask the window manager to keep the full screen window above other windows. Note that the window manager may ignore the request. This option is not relevant when the full screen location is determined by the window manager. - - - Smooth image flip - - - This option delays the image change in full screen until the next image is entirely decoded into memory, the result is a smoother transition between images. - - - Disable screen saver - - - This option will execute xscreensaver-command --deactivate once per minute to avoid the screen saver from activating when Geeqie is displayed full screen. - -
- Overlay Screen Display - - - Always show image overlay at startup - - - Enable this to have the image overlay info displayed by default - - - Image overlay template - - - Overlay info is customizable through this template - - - Overlay info format string syntax is: %tag[:max_length][:extra]% - - - Tag - - Replaced by - - - name - - Filename of the picture - - - collection - - Name of the collection - - - number - - Current number of image in the list - - - total - - Total number of images - - - date - - File date - - - size - - File size - - - width - - Image width - - - height - - Image height - - - res - - Image resolution - - - keywords - - Image keywords from metadata - - - comment - - Image comment from metadata - - - - To access exif data use the exif name, for example: %Exif.Photo.DateTimeOriginal% to get the date of the original shot - - - Pre-formatted exif data is also available: - - - Tag - - Replaced by exif data - - - formatted.Camera - - Camera and sofware name - - - formatted.DateTime? - - Image Date - - - formatted.ShutterSpeed? - - Shutter speed in seconds (ie. 1/60s) - - - formatted.Aperture - - Aperture (ie. f5.6) - - - formatted.ExposureBias? - - Exposure bias (ie. +0.3) - - - formatted.ISOSpeedRating - - ISO sensitivity (ie. 100) - - - formatted.FocalLength? - - Focal length - - - formatted.FocalLength?35mmFilm - - Focal length 35mm - - - formatted.SubjectDistance? - - Subject distance - - - formatted.Flash - - Flash - - - formatted.Resolution - - Resolution - - - formatted.ColorProfile? - - Color profile - - - - You can limit the length of displayed data using :number notation: %formatted.Camera:20% will truncate the displayed data to 20 characters and will add 3 dots at the end to denote the truncation. - - - If two or more variables are connected with the -sign, it prints available variables with a separator: - %formatted.ShutterSpeed% %formatted.ISOSpeedRating% %formatted.FocalLength% - could show: - "1/20s - 400 - 80 mm" - or - "1/200 - 80 mm" if there's no ISO information in the Exif data. - - - If a line is empty, it is removed. This allows to add lines that totally disappear when no data is available. - - - Extra string uses special character '*' to mark the position of the data. If no '*' is present, then extra string is just appended to data. Any "\n" is replaced by a newline on display. Pango mark up is accepted in left and right parts. If data is empty, nothing will be displayed. - - - Examples: - - - %name:&lt;i&gt;*&lt;/i&gt;\n% - - name is displayed in italics ended with a newline - - %size:\n% - - size is displayed with a newline at end - - %formatted.ISOSpeedRating:ISO *% - - ie. "ISO 100" - - Collection &lt;b&gt;*&lt;/b&gt;\n - - display collection name in bold prefixed by "Collection " and a newline is appended - - - Help button - - - Show syntax help - - - Defaults button - - - Restore default image overlay template - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOtherWindows.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOtherWindows.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOtherWindows.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOtherWindows.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,13 +0,0 @@ - - - - Other Windows - - - This section describes the windows available in Geeqie that can be thought of as general purpose, they are not designed for a specific purpose. - - - - - - diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOtherWindowsExif.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOtherWindowsExif.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOtherWindowsExif.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOtherWindowsExif.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,12 +0,0 @@ - -
- - Exif Window - - - The Exif window shows Exif, IPTC and XMP metadata that are present in the file. Unlike the other parts of the program, this window shows the "raw" metadata read from the file, without any postprocessing. Other parts of the program combines metadata from various formats and also merges in the sidecars and private metadata files. Thus, this window is ideal for metadata debugging. For normal use look at the Exif panes in the Info Sidebar. - - - It is possible to drag items from the Exif window to the Exif panes in the Info Sidebar. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOtherWindowsImageProperties.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOtherWindowsImageProperties.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOtherWindowsImageProperties.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOtherWindowsImageProperties.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,57 +0,0 @@ - -
- - Image Properties Window - - - The image properties window is a dialog that displays various information about a file. - - - To display a properties window for a an image select Properties from it's context menu, in most windows pressing Ctrl + P will display the properties of the selected images or files. - - - The properties window contains a scaled down image of the file and information about the file under several tabs. If the window contains more than one file, they can be navigated by activating the left and right arrow buttons, or by clicking the primary and middle mouse buttons on the image preview. - -
- Image preview - - - This displays the contents of the active file. When the window contains more than one file, they can be navigated with the primary and middle mouse buttons. The image display is also a drag source for drag and drop, start the drag operation by pressing the middle mouse button and dragging the file to the desired target. - -
- General tab - - - This displays information about the active file. It includes: - - - File attributes - - - Modification date and time, size, owner, group, and permissions. - - - Image attributes - - - Dimensions, uncompressed size, file or mime type, and existence of an alpha channel. - - - Compress ratio - - - The percentage of file size compared to the size of the image when decoded into memory. - -
- Keywords tab - - - The keywords tab contains the same information that is in the Keywords sidebar, please refer to the Keywords Sidebar? page for details. - -
- EXIF tab - - - The EXIF tab contains the same information that is in the EXIF sidebar, please refer to the EXIF Sidebar? page for details. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOtherWindowsImageWindow.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOtherWindowsImageWindow.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOtherWindowsImageWindow.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOtherWindowsImageWindow.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,58 +0,0 @@ - -
- - Image Window - - - An image window is a window that displays only the image. - - - An image window can always be opened from the context menu of all images and files. Keyboard shortcuts exist for most windows that display images or files, however the shortcut can vary dependent on the type of window containing them. - - - The image pane contained in an image window behaves and operates similar to the image pane of a Main Window. The keyboard shortcuts are the same, and the context menu is the same except “Hide file list” is replaced by “Close window”. The slide show and full screen functions are also available. - -
- Changing the image - - - To change the contents of an image window, drop the items onto the window with drag and drop. The dropped item can be one or more files, folders, or an image from a collection window: - - - One or more files - - The image window will display the first image; the list of dropped images can be navigated similar to a main window's image pane. - - One or more folders - - When the dropped list of items includes a folder, a menu will appear allowing to skip the folders, add their contents, or add their contents recursively. After choosing from the menu the requested files will be added to the image window. - - Image from a collection - - The image window will change to display the image and become linked to the collection containing the image. Images in the collection can then be navigated and viewed from the image window. - - - Changing the image window by dropping a new item onto it will cause the previous list of images or linked collection to be discarded. - - - To update the image display in the event that the source file has changed, press the R key. - -
- Information and histogram Overlay - - - A small overlay can be turned on and off by pressing the I key. This overlay displays the image file name, dimensions, file date, and file size. The count of the current image and of all images contained by the window are also displayed in parenthesis. When the window is linked to a collection, the collection title will also appear in the overlay in italics above the file name. - - - An histogram is displayed if I key is pressed twice, K key will modify the data displayed, and J key will toggle linear or logarithmic histogram. - - - Overlay info is customizable through Image Overlay Template? option in Advanced tab in Preferences dialog. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideOtherWindowsPanView.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideOtherWindowsPanView.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideOtherWindowsPanView.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideOtherWindowsPanView.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,109 +0,0 @@ - -
- - Pan View Window - - - This window proposes alternative views of the current directory and its children. - You can pan the view as you pan an image in normal view mode, using left mouse button and drag. - - - A primary mouse button click on any image will display informations about the image. Secondary mouse button will show a context menu. - - - Note: The pan view recursively visits each folder under the specified folder, so be careful it can eat a lot of ressources. - -
- Select a folder - - - Location - - Set the top folder. - -
- Choose a view mode - - - A select box let you choose among different view modes: - - - Timeline - - Shows images grouped by date. - - Calendar - - Shows a calendar with the number of images indicated for each day (as dots and number). Left mouse button click will show images in a popup. - - Folders - - Show images grouped by folder. Each box represents a folder. Parent and children folders are shown as boxes enclosing other boxes. - - Folders (flower) - - Show images grouped by folder. Each box represents a folder. Parent folders are linked to children by a line. The top folder is the center of the flower. - - Grid - - All images are shown on a grid. - -
- How each image should be represented - - - Another select box let you choose the representation of each image: - - - Dots - - Each image is represented by a dot. - - No images - - Each image is represented by a square box. - - Small thumbnails - - Each image is represented by a small thumbnail. - - Normal thumbnails - - Each image is represented by a normal thumbnail. - - Large thumbnails - - Each image is represented by a large thumbnail. - - 1:10 (10%) - - Each image is represented by reduced image (1/10 of the original's dimensions). - - 1:4 (25%) - - Each image is represented by reduced image (1/4 of the original's dimensions). - - 1:3 (33%) - - Each image is represented by reduced image (1/3 of the original's dimensions). - - 1:2 (50%) - - Each image is represented by reduced image (1/2 of the original's dimensions). - - 1:1 (100%) - - The original image is shown at its normal dimensions. - -
- Find - - - At the bottom of the window: - - - Find button - - Shows a text field for image search. One can enter a filename or a part of it or a date (yyyy or yyyy-mm or yyyy-mm-dd format, separator can be '/','-',' ','.',','). Pressing Enter key will start the search, pressing it again will move to the next match. Matched file is made visible and details are shown for it. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuidePrinting.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuidePrinting.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuidePrinting.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuidePrinting.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,235 +0,0 @@ - - - - Printing - - - To print an image press Shift + P or select Print from the File menu. - - - The print dialog includes tabs that group related printing options, a preview pane, and a Print and Cancel button. - -
- Layout tab - - - Source - - - This selects the group of images to use for print output. - - - Image - - The file with the focus. - - Selection - - The files selected in the main window. - - All - - All files listed in the main window. - - - Layout - - - Select one image per page, or a Proof sheet that will print multiple images per page. - - - Image size - - When print one image per page, the size of the image in relation to the available print area. - - Proof size - - When printing a Proof sheet, the size of each image in Units (see Paper tab). - -
- Text tab - - - Name - - - Include the file name below each image. - - - Path - - - Include the full path of the file below each image. - - - Date - - - Include the file date below each image. - - - Size - - - Include the file size below each image. - - - Dimensions - - - Include the source image's pixel width and height below each image. - - - Font size - - - The font size to use for the text description of each image, in points. - -
- Paper tab - - - Format - - - The size of the paper in the printer's paper tray. Many common sizes are provided, however if the paper size is not listed selected the Custom format and enter the paper size in Size below. - - - Size - - - The size of the selected paper format, in Units (below). These numbers can be changed when the paper Format is Custom. - - - Units - - - Select the units for Geeqie to use when conveying measurements of length for paper size, margins, and images sizes to the user. - - - Orientation - - - Select portrait or landscape print output. - - - Margins - - - These values specify the size of the paper edges not to be included in the print region, in Units (above). - -
- Printer tab - - - Destination - - - Use this to select the destination of the print output. - - - Default printer - - Prints to the system default printer. - - Custom printer - - Prints to the printer using the command defined in Custom printer (below). - - Postscript file - - Writes using the postscript format to named File (below). - - Image file - - Writes using the selected File format (below) to named File (below). - - - Custom printer - - - The command to use when Destination is selected as Custom printer. For convenience, the drop down list includes printers available for use by the printing subsystem. - - - File - - - The file to use for output when Destination is Postscript file or Image file. - - - File format - - - The image format to use when Destination is Image file. - - - DPI - - - Abbreviation for Dots Per Inch. When the Destination is a printer or postscript file, this defines the maximum DPI to use when outputting image data. For example if the Destination printer is only capable of 600 DPI, but the resulting image to print is 1200 DPI, Geeqie will scale the image down to 600 DPI before sending it to the printer. This can greatly reduce the size of a print job when printing Proof Sheets or very large images. - -
- Preview - - - The preview displays a small version of the output that will result with the current settings. The preview will update whenever a setting is changed that will effect the print output. - - - The preview will indicate the number of pages that will be printed, to see a preview of a specific page change to that page by activating the left or right arrow buttons located below the preview. - - - The size of the preview can be changed using the three zoom buttons located below the preview. - - - The preview includes several reference lines that are not included in the final print: - - - Reference grid - - - Light gray lines that form a grid over the entire page, the spacing between these lines is dependent on the current measurement unit: - - - Inch - - 1 inch. - - Points - - 72 points. - - Centimeters or Millimeters - - 1 centimeter. - - - Margins - - - Blue lines along each edge of the page represent the location of the print margins, the non-printable area of the page is also gray. - - - Proof sheet grid - - - When the layout is set to Proof sheet, each proof location is indicated with a red rectangle. - -
- Remember print settings - - - Enable this check box to retain the current settings as the default for the print dialog. This option only retains the settings when a print operation is started by activating the print button. In addition, only the settings relevant to the current print operation will be retained. - -
- Print button - - - Activate the print button to start the print job, the dialog will change to display the progress as images are sent to the selected print destination. - -
- Cancel button - - - Activate this button to close the print dialog, no printing will be performed. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideReference.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideReference.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideReference.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideReference.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,11 +0,0 @@ - - - - Reference - - - - - - - diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideReferenceCommandLine.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideReferenceCommandLine.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideReferenceCommandLine.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideReferenceCommandLine.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,210 +0,0 @@ - -
- - Command Line Options - - - These are the command line options available to Geeqie: - - - Short Option - - Long Option - - Description - - - +t - - --with-tools - - Show file list, menu, and statusbar. - - - -t - - --without-tools - - Hide file list, menu, and statusbar. Window contains image only. - - - -f - - --fullscreen - - Start up in fullscreen. - - - -s - - --slideshow - - Start up in slideshow mode. - - - -l - - --list - - Open collection window containing images specified on the command line. Any collections on the command line will also be appended to this collection. - - - -r - - --remote - - Send command line options to existing Geeqie process. - - - -rh - - --remote-help - - List command line options available to --remote. - - - -h - - --help - - Display brief command line option list. - - - -v - - --version - - Display version of Geeqie. - - - --debug - - Enable Debug output to console. - - -
- Remote commands - - - The --remote command line option will send all entered commands to an existing Geeqie process, a new process will be started if one does not exist. These are the additional commands that can be used with the remote command: - - - Short Option - - Long Option - - Description - - - -n - - --next - - Change main window to display next image. - - - -b - - --back - - Change main window to display previous image. - - - --first - - Change main window to display first image. - - - --last - - Change main window to display last image. - - - -f - - --fullscreen - - Toggle full screen mode of the main window. - - - -fs - - --fullscreen-start - - Start full screen mode for main window. - - - -fS - - --fullscreen-stop - - Stop full screen mode for main window. - - - -s - - --slideshow - - Toggle slide show for main window. - - - -ss - - --slideshow-start - - Start slide show for main window. - - - -sS - - --slideshow-stop - - Stop slide show for main window. - - - -sr&lt;folder&gt; - - --slideshow-recurse&lt;folder&gt; - - Start recursive slide show for &lt;folder&gt; in main window. - - - -d&lt;n&gt; - - --delay=&lt;n&gt; - - Set slide show delay to &lt;n&gt; seconds, range is 0.1 to 3600 - - - +t - - --tools-show - - Show tools for main window. - - - -t - - --tools-hide - - Hide tools for main window. - - - -q - - --quit - - Quit Geeqie. - - - file:&lt;filename&gt; - - Change main window to display &lt;filename&gt; - - - view:&lt;filename&gt; - - Open new window containing &lt;filename&gt; - - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideReferenceConfig.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideReferenceConfig.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideReferenceConfig.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideReferenceConfig.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,12 +0,0 @@ - -
- <para> - ($HOME)/.config/geeqie/geeqierc.xml - </para> - <para> - FIXME: Exiv2 keys, toolbar, statusbar, sidebar - </para> - <para> - geeqie -r --config-load: - </para> - <para/></section> diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideReferenceKeyboardShortcuts.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideReferenceKeyboardShortcuts.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideReferenceKeyboardShortcuts.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideReferenceKeyboardShortcuts.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,517 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<section id="GuideReferenceKeyboardShortcuts"> - <para> - FIXME: do we need this? The list of hotkeys is available in the preferences dialog. - </para> - <title> - Keyboard Shortcuts - - - Shortcut - - Mouse - - Action - - - Image Navigation - - - PageDown? - - Left Click on image view - Mouse Wheel down [(*)] - - Change to next image. - - - PageUp? - - Middle Click on image view - Mouse Wheel up [(*)] - - Change to previous image. - - - Home - - Change to first image. - - - End - - Change to last image. - - - Image panning (image has keyboard focus) - - - Arrows - - Left Drag on image view - Shift + Mouse Wheel [(*)] - - Pan image. - - - Shift + Arrows - - Pan Image faster. - - - Ctrl + Arrows - - Pan to respective edge of image. - - - Space - - Change to next image. - - - Backspace - - Change to previous image. - - - File Menu - - - Ctrl + N - - New Window - - - C - - Open a new empty collection window. - - - O - - Display open collection dialog. - - - F3 - - Open new search window. - - - D - - Open new Find Duplicates window. - - - Shift + P - - Open print dialog. - - - Ctrl + F - - Create new folder in current path. - - - Ctrl + C - - Copy selected images, opens destination selection dialog. - - - Ctrl + M - - Move selected images, opens destination selection dialog. - - - Ctrl + R - - Rename selected images, opens rename dialog. - - - Ctrl + DDelete - - Delete selected images. - - - Ctrl + W - - Close window, Geeqie exits when last window is closed. - - - Ctrl + Q - - Quit Geeqie. - - - Edit Menu - - - Ctrl + 1 ... 0 - - Run external edit command on selected images. - - - Ctrl + A - - Select all images. - - - Ctrl + Shift + A - - Unselect all images. - - - Ctrl + P - - Open image properties window. - - - Ctrl + O - - Open Geeqie preferences window. - - - ] - - Rotate image clockwise 90 degrees. - - - [ - - Rotate image counterclockwise 90 degree. - - - Shift + R - - Rotate image 180 degrees. - - - Shift + M - - Flip image horizontally (mirror). - - - Shift + F - - Flip image vertically. - - - View Menu - - - +, = - - Ctrl + Mouse Wheel up - - Zoom image in. - - - - - - Ctrl + Mouse Wheel down - - Zoom image out. - - - Z - - Reset zoom to original size (1:1). - - - X - - Fit image to window size. - - - W - - Zoom image to fit window width. - - - H - - Zoom image to fit window height. - - - 1 - - Set zoom to 1:1 - - - 2 - - Set zoom to 2:1 - - - 3 - - Set zoom to 3:1 - - - 4 - - Set zoom to 4:1 - - - 7 - - Set zoom to 1:4 - - - 8 - - Set zoom to 1:3 - - - 9 - - Set zoom to 1:2 - - - T - - Toggle display of thumbnails when in list view. - - - Ctrl + L - - Display file list as detailed list view. - - - Ctrl + I - - Display file list as icon view. - - - Ctrl + T - - Toggle folder display between list and tree views. - - - R - - Refresh file list. - - - L - - Toggle floating of file display. - - - Ctrl + H - - Toggle hiding of file display. - - - Ctrl + E - - Toggle EXIF sidebar. - - - Ctrl + S - - Toggle Sort Manager sidebar. - - - Ctrl + K - - Toggle Keywords sidebar. - - - FV - - Toggle full screen. - - - I - - Toggle information overlay in full screen. - - - S - - Toggle slideshow. - - - P - - Toggle pause of slideshow. - - - <-3 class="shortcuts-separator"> Help Menu - - - F1 - - Open User Manual in browser. - - - <-3 class="shortcuts-separator"> Collection Window - - - Arrows - - Move selection. - - - Shift + Arrows - - Select multiple images. - - - Ctrl + Arrows - - Move focus without changing selection. - - - SpaceBar? - - Select only image with focus. - - - Ctrl + SpaceBar? - - Toggle selection of image with focus. - - - Home - - Move focus to first image. - - - End - - Move focus to last image. - - - Ctrl + A - - Select all images. - - - Ctrl + Shift + A - - Unselect all images. - - - Delete - - Remove selected image from collection, does not delete image from disk. - - - Ctrl + L - - Add images from main window's file list. - - - Ctrl + T - - Toggle display of icon filenames. - - - N - - Sort collection by name. - - - D - - Sort collection by file date. - - - B - - Sort collection by file size. - - - P - - Sort collection by file path. - - - I - - Sort collection by natural numerical order. - - - Enter - - View image with focus in main window. - - - V - - View image with focus in new window. - - - Ctrl + 1 ... 0 - - Run external edit command on selected images. - - - S - - Save collection. - - - Ctrl + S - - Save collection as, opens destination dialog. - - - A - - Append to collection, opens append dialog. - - - Ctrl + C - - Copy selected images, opens destination selection dialog. - - - Ctrl + M - - Move selected images, opens destination selection dialog. - - - Ctrl + R - - Rename selected images, opens rename dialog. - - - Ctrl + D - - Delete selected images. - - - Ctrl + P - - Open image properties window. - - - Ctrl + W - - Close collection window. - - - <-3 class="shortcuts-separator"> Find Duplicates Window (same as Collection Window above, with the following additions) - - - 1 - - Select group 1 duplicates. - - - 2 - - Select group 2 duplicates. - - - C - - Open new collection window and add selected images. - - - - (*) Note: Default Mouse wheel functions can be altered by changing the Mouse wheel scrolls image? option. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideReferenceManagement.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideReferenceManagement.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideReferenceManagement.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideReferenceManagement.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,163 +0,0 @@ - -
- - Cache and Data Maintenance - - - Thumbnails and other cached data can be maintained from the dialog accessible by selecting Thumbnail maintenance from the Edit menu of the main window. - -
- Geeqie thumbnail cache - - - The utilities listed here operate on the Geeqie caching mechanism. This also includes the data cached for the search and find duplicates utilities. - - - Clean up - - - Removes thumbnails and data for which the source image is no longer present, or has been modified since the thumbnail was generated. - - - Clear cache - - - Removes all thumbnails and data stored in the user's home folder: $HOME/.geeqie/thumbnails. - -
- Shared thumbnail cache - - - The utilities listed here operate on the shared thumbnail mechanism. - - - Clean up - - - Removes thumbnails for which the source image is no longer present, or has been modified since the thumbnail was generated. - - - Clear cache - - - Removes all thumbnails stored in the user's home folder: $HOME/.thumbnails. - -
- Create thumbnails - - - This utility will render thumbnails using the current thumbnail caching mechanism, as determined in preferences. - - - Render - - - Pre-render thumbnails for a specific folder, the utility has the following options: - - - Include subfolders - - - Enable to include all images contained in the subfolders of folder. - - - Store thumbnails local to source images - - - The generated thumbnails will be stored local to the source images, if you have the permissions to write to the folder containing the images. - -
- Metadata - - - This utility operates on the data store for keywords and comments? located in the user's home folder: $HOME/.geeqie/metadata. - - - Clean up - - - Removes keywords and comments for which the source image is no longer present. - -
- File locations - - - The various file locations and their use are listed below. &lt;HOME&gt; refers to your home folder and &lt;SOURCE&gt; refers to the folder containing the image. - - - Folder or File name - - Description - - - Thumbnails - - - <HOME>/.thumbnails - - Shared thumbnail cache folder. - - - <HOME>/.geeqie/thumbnails - - Classic Geeqie thumbnail cache folder. Also used to cache data used for the search and find duplicates utilities to increase the speed for subsequent searches. - - - <SOURCE>/.thumbnails - - Local thumbnail cache folder. - - - Metadata (keywords and comments) - - - <HOME>/.geeqie/metadata - - Metadata stored in user's home folder. - - - <SOURCE>/.metadata - - Metadata stored local to source image. Requires option to be enabled in advanced preferences. - - - Collections - - - <HOME>/.geeqie/collections - - Default location for Geeqie collections, collections in this folder will appear in the sort manager sidebar. - - - Preferences - - - <HOME>/.geeqie - - Geeqie preferences folder. - - - <HOME>/.geeqie/geeqierc - - Geeqie preferences rc file. - - - <HOME>/.geeqie/history - - Historic data such as last several folders visited, bookmarks, and recently used collections. Also contains default print settings. - - - <HOME>/.geeqie/accels - - Keyboard shortcut mapping. - - - Safe Delete - - - <HOME>/.geeqie/trash - - Default location of the safe delete folder. - - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideReferenceThumbnails.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideReferenceThumbnails.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideReferenceThumbnails.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideReferenceThumbnails.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,63 +0,0 @@ - -
- - Thumbnails - - - Note: This page only refers the Geeqie thumbnail caching mechanism, the shared thumbnail cache mechanism is not explained here. - -
- Format - - - Thumbnails are stored in PNG image format. The thumbnail name is the name of the source image with “.png” appended. - - - The modification time (mtime) of the thumbnail is set to match the source file. Thumbnails are regenerated when the timestamps of the thumbnail and source file do not match. - -
- Location - - - Thumbnails are stored in: - - - ($HOME)/.geeqie/thumbnails - - - The directory structure of the thumbnail cache duplicates the location of the source files, for example a source file with the name: - - - /path/to/image.jpg - - - will store the thumbnail in: - - - ($HOME)/.geeqie/thumbnails/path/to/image.jpg.png - - - When thumbnails are to be stored local to the source file, the thumbnail will be placed in: - - - /path/to/.thumbnails/image.jpg.png - - - Local thumbnail caching is enabled with the option “Cache thumbnails into .thumbnails” on the General tab of the options dialog. If it is not possible to store the thumbnail local to the source file (usually due to no write permissions), Geeqie will fall back to saving the thumbnail in the user's ($HOME)/.geeqie/thumbnails folder. - -
- Size - - - Geeqie allows the following sizes for thumbnails: - - - 24x24, 32x32, 48x48, 64x64, 96x72, 96x96, 129x96, 128x128, 160x120, 160x160, 192x144, 192x192, 256x192, 256x256 - - - The thumbnail is scaled to fit within the preferred size maintaining the aspect ratio. Thumbnails are not cached for images that are equal to or smaller than the preferred thumbnail size. - - - When a cached thumbnail's width and height do not match the preferred size, the thumbnail is regenerated. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideSidebars.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideSidebars.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideSidebars.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideSidebars.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,16 +0,0 @@ - - - - Sidebars - - - A sidebar is a panel that appears next to an image, and displays additional information about the image. - - - - EXIF sidebar? - FIXME: obsolete - - - Keywords sidebar? - FIXME: obsolete - - diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideSidebarsInfo.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideSidebarsInfo.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideSidebarsInfo.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideSidebarsInfo.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,76 +0,0 @@ - -
- - Info Sidebar - - - The Info Sidebar shows various information about the image and can also be used for metadata editing. It consists of panes. Left-clicking on the pane title expands or collapses the pane. Right-clicking on the pane title or on empty space opens a context menu allowing you to add and remove panes, or move them up and down. - -
- Panes - -
- Histogram - - - Right-click to configure - -
- Text panes - Title, Comment - - - The text is written to Xmp.dc.title and Xmp.dc.description. It can be changed in the configuration file. - -
- Keywords - - - FIXME: put keywords? here The text is written to Xmp.dc.subject. It can be changed in the configuration file. - -
- List panes - Exif, File info, Copyright, Location and GPS - - - The metadata tags are sorted into these main groups - Exif, File info, Copyright, Location and GPS, but it is just a matter of configuration. The item titles support drag and drop and can be dragged freely among these panes, it is also possible to drag new items from Advanced Exif window Right-clicking on an item opens the context menu - - - Add entry - - - Key - - Exiv2 or Geeqie (formatted...) key FIXME: list of formatted... tags. - - - Title - - Title that is shown. - - - Show only if set - - Show only if the tag exists in the file. - - - Editable - - Displays the value as editable. - - - Note: Geeqie internally converts Exif and IPTC metadata to XMP on read and back on write, thus any changes made to Exif and IPTC here will be lost on write. Edit the corresponding XMP instead. An exception are Makernote tags which don't have an equivalent in XMP, but there is another limitation in that Makernote can't be written to an external file (sidecar or Geeqie private file). - - - Show hidden - -
- - Shows all entries regardless of "Show only if set". - -
-
- GPS Map - - - Geeqie must be built with libchamplain. - -
diff -Nru geeqie-1.0/doc/docbook/.svn/text-base/GuideSidebarsSortManager.xml.svn-base geeqie-1.1/doc/docbook/.svn/text-base/GuideSidebarsSortManager.xml.svn-base --- geeqie-1.0/doc/docbook/.svn/text-base/GuideSidebarsSortManager.xml.svn-base 2010-02-17 21:21:20.000000000 +0000 +++ geeqie-1.1/doc/docbook/.svn/text-base/GuideSidebarsSortManager.xml.svn-base 1970-01-01 00:00:00.000000000 +0000 @@ -1,108 +0,0 @@ - -
- - Sort Manager Sidebar - - - The Sort Manager sidebar provides a convenient method to quickly sort many files into a set of folders or collections. - - - To toggle display of the Sort Manager press Ctrl + S or select “Sort manager” from the View menu. - - - The mode of the Sort Manager is selected by the drop down list under the sidebar title. The Folder mode allows moving or copying the visible image to a folder, and the Collection mode allows adding the visible image or file selection to a collection. - -
- Folder view - - - The Sort Manager folder view consists of a vertical list for bookmarking folders, a section to select the operation to perform, and a set of buttons along the bottom. - - - Clicking or activating an item in the list will copy, move, or link the active image's file to that location. The active image will then change to the next image. - -
- Bookmark list - - - This is a list of possible folders to use as a destination for the selected operation. A context menu will appear by right clicking on an item, or pressing the menu key when the item has the focus. - - - Folders can be added to the list by activating the Add button at the bottom of the sidebar, or dragging a folder onto the list. - - - To edit an item select “Properties” from it's context menu. A dialog will appear allowing the Name, Path, and Icon for the item to be changed. Select OK to close the dialog and apply the changes, or Cancel to close the dialog and discard the changes. - - - To change the order of the list, select “Move up” or “Move down” from the item's context menu. To move an item with the keyboard move the focus to that item, then press Shift + Up or Shift + Down to move the item. - - - To remove an item from the list select “Remove” from it's context menu. - -
- Add button - - - Activate this button to add a folder to the bookmark list. A dialog will appear to allow selection of the folder to use for the new item. - -
- Undo button - - - Activate this button to undo the last copy, move, or link operation. The undo function can only reverse the most recent operation. - -
- Collection view - - - The Sort Manager collection view consists of a vertical list of collection, a section to determine the current selection, and a set of buttons along the bottom. - - - Clicking or activating an item in the list will add the selected image to that collection. - -
- Collection list - - - This is the list of collections located in the folder $HOME/.geeqie/collections. Activating a member of this list will result in the current image selection to be added to the collection. If the image already exists within the collection, it will not be added a second time. - - - A new empty collection can be added to the list by activating the Add button at the bottom of the sidebar. - -
- Choosing the selection style - - - The images to add when activating a collection is determined by the selection style: - - - Add image - - - The visible image is added to the collection. - - - Add selection - - - All images selected in the file list will be added to the collection. - -
- Add button - - - Activate this button to add a new empty collection to the visible list. A dialog will appear to allow entry of the name to use for the new collection. - -
- Undo button - - - Activate this button to undo the last add operation. The undo function can only reverse the most recent operation. - -
diff -Nru geeqie-1.0/geeqie.desktop geeqie-1.1/geeqie.desktop --- geeqie-1.0/geeqie.desktop 2010-02-17 21:21:56.000000000 +0000 +++ geeqie-1.1/geeqie.desktop 2012-08-12 20:14:24.000000000 +0000 @@ -11,6 +11,7 @@ Name[ru]=Geeqie Name[sr]=Чудак Name[sr@latin]=Čudak +Name[sv]=Geeqie GenericName=Image Viewer GenericName[ca]=Visor d'imatges GenericName[cs]=Prohlížeč obrázků @@ -23,6 +24,7 @@ GenericName[ru]=Программа просмотра изображений GenericName[sr]=Разгледач слика GenericName[sr@latin]=Razgledač slika +GenericName[sv]=Bildvisare Comment=View and manage images Comment[ca]=Visualitza i gestiona imatges Comment[cs]=Prohlížet and spravovat obrázky @@ -35,6 +37,7 @@ Comment[ru]=Просмотр и управление изображениями Comment[sr]=Прегледајте и уредите ваше слике Comment[sr@latin]=Pregledajte i uredite vaše slike +Comment[sv]=Visa och hantera bilder Exec=geeqie -r %F Icon=geeqie Type=Application diff -Nru geeqie-1.0/geeqie.spec geeqie-1.1/geeqie.spec --- geeqie-1.0/geeqie.spec 2010-02-17 21:21:57.000000000 +0000 +++ geeqie-1.1/geeqie.spec 2012-08-12 20:14:26.000000000 +0000 @@ -1,15 +1,9 @@ # norootforbuild -BuildRequires: gtk2-devel gcc-c++ intltool +BuildRequires: gtk2-devel gcc-c++ intltool gnome-doc-utils libjpeg-devel libtiff-devel %if 0%{?suse_version} BuildRequires: liblcms-devel update-desktop-files %define docname %{name} -%if %suse_version < 1030 -%define _prefix /opt/gnome -%define _sysconfdir /etc%{prefix} -# workaround for gtk2 include conflicts on older SUSE versions: -%define _includedir %{_usr} -%endif %else BuildRequires: lcms-devel %define docname %{name}-%{version} @@ -29,17 +23,18 @@ %endif -Summary: Graphics file browser utility. +Summary: Graphics file browser utility Summary(fr): Explorateur de fichiers graphiques Summary(es): Navegador de archivos gráficos Summary(it): Visualizzatore di archivi grafici Name: geeqie -Version: 1.0 +Version: 1.1 Release: 0 License: GNU General Public License version 2 or later (GPL v2 or later) Group: Productivity/Graphics/Viewers Source: geeqie-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-build +URL: http://geeqie.sourceforge.net/ # # these are requirements of the plugins Requires: exiv2 exiftran ImageMagick ufraw diff -Nru geeqie-1.0/geeqie.spec.in geeqie-1.1/geeqie.spec.in --- geeqie-1.0/geeqie.spec.in 2010-02-17 21:21:23.000000000 +0000 +++ geeqie-1.1/geeqie.spec.in 2012-08-12 20:13:40.000000000 +0000 @@ -1,15 +1,9 @@ # norootforbuild -BuildRequires: gtk2-devel gcc-c++ intltool +BuildRequires: gtk2-devel gcc-c++ intltool gnome-doc-utils libjpeg-devel libtiff-devel %if 0%{?suse_version} BuildRequires: liblcms-devel update-desktop-files %define docname %{name} -%if %suse_version < 1030 -%define _prefix /opt/gnome -%define _sysconfdir /etc%{prefix} -# workaround for gtk2 include conflicts on older SUSE versions: -%define _includedir %{_usr} -%endif %else BuildRequires: lcms-devel %define docname %{name}-%{version} @@ -29,7 +23,7 @@ %endif -Summary: Graphics file browser utility. +Summary: Graphics file browser utility Summary(fr): Explorateur de fichiers graphiques Summary(es): Navegador de archivos gráficos Summary(it): Visualizzatore di archivi grafici @@ -40,6 +34,7 @@ Group: Productivity/Graphics/Viewers Source: geeqie-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-build +URL: http://geeqie.sourceforge.net/ # # these are requirements of the plugins Requires: exiv2 exiftran ImageMagick ufraw diff -Nru geeqie-1.0/plugins/Makefile.in geeqie-1.1/plugins/Makefile.in --- geeqie-1.0/plugins/Makefile.in 2010-02-17 21:21:45.000000000 +0000 +++ geeqie-1.1/plugins/Makefile.in 2012-08-12 20:14:07.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -18,8 +19,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c @@ -42,6 +44,7 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/auxdir/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ @@ -56,16 +59,58 @@ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; -am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__installdirs = "$(DESTDIR)$(qq_desktoptemplatedir)" -qq_desktoptemplateDATA_INSTALL = $(INSTALL_DATA) DATA = $(qq_desktoptemplate_DATA) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive +AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ + $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ + distdir ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ @@ -146,6 +191,8 @@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ +JPEG_CFLAGS = @JPEG_CFLAGS@ +JPEG_LIBS = @JPEG_LIBS@ LCMS_CFLAGS = @LCMS_CFLAGS@ LCMS_LIBS = @LCMS_LIBS@ LDFLAGS = @LDFLAGS@ @@ -159,6 +206,7 @@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ +MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ @@ -168,10 +216,13 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATHSEP = @PATHSEP@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ @@ -179,6 +230,8 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ +TIFF_CFLAGS = @TIFF_CFLAGS@ +TIFF_LIBS = @TIFF_LIBS@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WINDRES = @WINDRES@ @@ -241,14 +294,14 @@ @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( 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 plugins/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu plugins/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu plugins/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu plugins/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -266,23 +319,27 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): install-qq_desktoptemplateDATA: $(qq_desktoptemplate_DATA) @$(NORMAL_INSTALL) test -z "$(qq_desktoptemplatedir)" || $(MKDIR_P) "$(DESTDIR)$(qq_desktoptemplatedir)" - @list='$(qq_desktoptemplate_DATA)'; for p in $$list; do \ + @list='$(qq_desktoptemplate_DATA)'; test -n "$(qq_desktoptemplatedir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f=$(am__strip_dir) \ - echo " $(qq_desktoptemplateDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(qq_desktoptemplatedir)/$$f'"; \ - $(qq_desktoptemplateDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(qq_desktoptemplatedir)/$$f"; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(qq_desktoptemplatedir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(qq_desktoptemplatedir)" || exit $$?; \ done uninstall-qq_desktoptemplateDATA: @$(NORMAL_UNINSTALL) - @list='$(qq_desktoptemplate_DATA)'; for p in $$list; do \ - f=$(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(qq_desktoptemplatedir)/$$f'"; \ - rm -f "$(DESTDIR)$(qq_desktoptemplatedir)/$$f"; \ - done + @list='$(qq_desktoptemplate_DATA)'; test -n "$(qq_desktoptemplatedir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '$(DESTDIR)$(qq_desktoptemplatedir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(qq_desktoptemplatedir)" && rm -f $$files # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. @@ -291,7 +348,7 @@ # (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'; \ + @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ @@ -308,7 +365,7 @@ else \ local_target="$$target"; \ fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ @@ -316,7 +373,7 @@ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): - @failcom='exit 1'; \ + @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ @@ -342,16 +399,16 @@ else \ local_target="$$target"; \ fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) @@ -359,14 +416,14 @@ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + $(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=; \ + set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ @@ -378,7 +435,7 @@ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ - tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ @@ -387,29 +444,34 @@ 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 \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - 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" \ + test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique + $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags @@ -430,29 +492,44 @@ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done - list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + @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 && \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$top_distdir" \ - distdir="$$distdir/$$subdir" \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ + am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ @@ -485,6 +562,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -503,6 +581,8 @@ html: html-recursive +html-am: + info: info-recursive info-am: @@ -511,18 +591,28 @@ install-dvi: install-dvi-recursive +install-dvi-am: + install-exec-am: install-html: install-html-recursive +install-html-am: + install-info: install-info-recursive +install-info-am: + install-man: install-pdf: install-pdf-recursive +install-pdf-am: + install-ps: install-ps-recursive +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-recursive @@ -543,8 +633,8 @@ uninstall-am: uninstall-qq_desktoptemplateDATA -.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ - install-strip +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ + install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-generic ctags \ @@ -560,6 +650,7 @@ pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \ uninstall-qq_desktoptemplateDATA + # 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: diff -Nru geeqie-1.0/plugins/import/Makefile.in geeqie-1.1/plugins/import/Makefile.in --- geeqie-1.0/plugins/import/Makefile.in 2010-02-17 21:21:45.000000000 +0000 +++ geeqie-1.1/plugins/import/Makefile.in 2012-08-12 20:14:07.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -17,8 +18,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c @@ -42,19 +44,33 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/auxdir/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = -am__installdirs = "$(DESTDIR)$(gq_bindir)" \ - "$(DESTDIR)$(gq_desktopdir)" -dist_gq_binSCRIPT_INSTALL = $(INSTALL_SCRIPT) -SCRIPTS = $(dist_gq_bin_SCRIPTS) -SOURCES = -DIST_SOURCES = +CONFIG_CLEAN_VPATH_FILES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; -am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; -gq_desktopDATA_INSTALL = $(INSTALL_DATA) +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(gq_bindir)" \ + "$(DESTDIR)$(gq_desktopdir)" +SCRIPTS = $(dist_gq_bin_SCRIPTS) +SOURCES = +DIST_SOURCES = DATA = $(gq_desktop_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ @@ -137,6 +153,8 @@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ +JPEG_CFLAGS = @JPEG_CFLAGS@ +JPEG_LIBS = @JPEG_LIBS@ LCMS_CFLAGS = @LCMS_CFLAGS@ LCMS_LIBS = @LCMS_LIBS@ LDFLAGS = @LDFLAGS@ @@ -150,6 +168,7 @@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ +MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ @@ -159,10 +178,13 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATHSEP = @PATHSEP@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ @@ -170,6 +192,8 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ +TIFF_CFLAGS = @TIFF_CFLAGS@ +TIFF_LIBS = @TIFF_LIBS@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WINDRES = @WINDRES@ @@ -233,14 +257,14 @@ @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( 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 plugins/import/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu plugins/import/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu plugins/import/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu plugins/import/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -258,42 +282,61 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): install-dist_gq_binSCRIPTS: $(dist_gq_bin_SCRIPTS) @$(NORMAL_INSTALL) test -z "$(gq_bindir)" || $(MKDIR_P) "$(DESTDIR)$(gq_bindir)" - @list='$(dist_gq_bin_SCRIPTS)'; for p in $$list; do \ + @list='$(dist_gq_bin_SCRIPTS)'; test -n "$(gq_bindir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f $$d$$p; then \ - f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ - echo " $(dist_gq_binSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(gq_bindir)/$$f'"; \ - $(dist_gq_binSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(gq_bindir)/$$f"; \ - else :; fi; \ - done + if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n' \ + -e 'h;s|.*|.|' \ + -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) { files[d] = files[d] " " $$1; \ + if (++n[d] == $(am__install_max)) { \ + print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ + else { print "f", d "/" $$4, $$1 } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(gq_bindir)$$dir'"; \ + $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(gq_bindir)$$dir" || exit $$?; \ + } \ + ; done uninstall-dist_gq_binSCRIPTS: @$(NORMAL_UNINSTALL) - @list='$(dist_gq_bin_SCRIPTS)'; for p in $$list; do \ - f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ - echo " rm -f '$(DESTDIR)$(gq_bindir)/$$f'"; \ - rm -f "$(DESTDIR)$(gq_bindir)/$$f"; \ - done + @list='$(dist_gq_bin_SCRIPTS)'; test -n "$(gq_bindir)" || exit 0; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 's,.*/,,;$(transform)'`; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(gq_bindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(gq_bindir)" && rm -f $$files install-gq_desktopDATA: $(gq_desktop_DATA) @$(NORMAL_INSTALL) test -z "$(gq_desktopdir)" || $(MKDIR_P) "$(DESTDIR)$(gq_desktopdir)" - @list='$(gq_desktop_DATA)'; for p in $$list; do \ + @list='$(gq_desktop_DATA)'; test -n "$(gq_desktopdir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f=$(am__strip_dir) \ - echo " $(gq_desktopDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(gq_desktopdir)/$$f'"; \ - $(gq_desktopDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(gq_desktopdir)/$$f"; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(gq_desktopdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(gq_desktopdir)" || exit $$?; \ done uninstall-gq_desktopDATA: @$(NORMAL_UNINSTALL) - @list='$(gq_desktop_DATA)'; for p in $$list; do \ - f=$(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(gq_desktopdir)/$$f'"; \ - rm -f "$(DESTDIR)$(gq_desktopdir)/$$f"; \ - done + @list='$(gq_desktop_DATA)'; test -n "$(gq_desktopdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '$(DESTDIR)$(gq_desktopdir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(gq_desktopdir)" && rm -f $$files tags: TAGS TAGS: @@ -317,13 +360,17 @@ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @@ -354,6 +401,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -372,6 +420,8 @@ html: html-am +html-am: + info: info-am info-am: @@ -380,18 +430,28 @@ install-dvi: install-dvi-am +install-dvi-am: + install-exec-am: install-html: install-html-am +install-html-am: + install-info: install-info-am +install-info-am: + install-man: install-pdf: install-pdf-am +install-pdf-am: + install-ps: install-ps-am +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-am @@ -428,6 +488,7 @@ uninstall-gq_desktopDATA @INTLTOOL_DESKTOP_RULE@ + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff -Nru geeqie-1.0/plugins/import/geeqie-import-geeqie.desktop geeqie-1.1/plugins/import/geeqie-import-geeqie.desktop --- geeqie-1.0/plugins/import/geeqie-import-geeqie.desktop 2010-02-17 21:21:57.000000000 +0000 +++ geeqie-1.1/plugins/import/geeqie-import-geeqie.desktop 2012-08-12 20:14:26.000000000 +0000 @@ -13,6 +13,7 @@ Name[ru]=Импорт метаданных Geeqie 1.0alphaX Name[sr]=Увези метаподатке из Чудака 1.0alphaX Name[sr@latin]=Uvezi metapodatke iz Čudaka 1.0alphaX +Name[sv]=Importera metadata från Geeqie 1.0alphaX # call the helper script Exec=geeqie-import geeqie-1-alpha diff -Nru geeqie-1.0/plugins/import/geeqie-import-gqview.desktop geeqie-1.1/plugins/import/geeqie-import-gqview.desktop --- geeqie-1.0/plugins/import/geeqie-import-gqview.desktop 2010-02-17 21:21:57.000000000 +0000 +++ geeqie-1.1/plugins/import/geeqie-import-gqview.desktop 2012-08-12 20:14:26.000000000 +0000 @@ -13,6 +13,7 @@ Name[ru]=Импорт метаданных GQView Name[sr]=Увези метаподатке из GQView-а Name[sr@latin]=Uvezi metapodatke iz GQView-a +Name[sv]=Importera metadata från Gqview # call the helper script Exec=geeqie-import gqview diff -Nru geeqie-1.0/plugins/rotate/Makefile.in geeqie-1.1/plugins/rotate/Makefile.in --- geeqie-1.0/plugins/rotate/Makefile.in 2010-02-17 21:21:45.000000000 +0000 +++ geeqie-1.1/plugins/rotate/Makefile.in 2012-08-12 20:14:07.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -17,8 +18,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c @@ -42,19 +44,33 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/auxdir/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = -am__installdirs = "$(DESTDIR)$(gq_bindir)" \ - "$(DESTDIR)$(gq_desktopdir)" -dist_gq_binSCRIPT_INSTALL = $(INSTALL_SCRIPT) -SCRIPTS = $(dist_gq_bin_SCRIPTS) -SOURCES = -DIST_SOURCES = +CONFIG_CLEAN_VPATH_FILES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; -am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; -gq_desktopDATA_INSTALL = $(INSTALL_DATA) +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(gq_bindir)" \ + "$(DESTDIR)$(gq_desktopdir)" +SCRIPTS = $(dist_gq_bin_SCRIPTS) +SOURCES = +DIST_SOURCES = DATA = $(gq_desktop_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ @@ -137,6 +153,8 @@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ +JPEG_CFLAGS = @JPEG_CFLAGS@ +JPEG_LIBS = @JPEG_LIBS@ LCMS_CFLAGS = @LCMS_CFLAGS@ LCMS_LIBS = @LCMS_LIBS@ LDFLAGS = @LDFLAGS@ @@ -150,6 +168,7 @@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ +MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ @@ -159,10 +178,13 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATHSEP = @PATHSEP@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ @@ -170,6 +192,8 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ +TIFF_CFLAGS = @TIFF_CFLAGS@ +TIFF_LIBS = @TIFF_LIBS@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WINDRES = @WINDRES@ @@ -233,14 +257,14 @@ @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( 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 plugins/rotate/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu plugins/rotate/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu plugins/rotate/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu plugins/rotate/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -258,42 +282,61 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): install-dist_gq_binSCRIPTS: $(dist_gq_bin_SCRIPTS) @$(NORMAL_INSTALL) test -z "$(gq_bindir)" || $(MKDIR_P) "$(DESTDIR)$(gq_bindir)" - @list='$(dist_gq_bin_SCRIPTS)'; for p in $$list; do \ + @list='$(dist_gq_bin_SCRIPTS)'; test -n "$(gq_bindir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f $$d$$p; then \ - f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ - echo " $(dist_gq_binSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(gq_bindir)/$$f'"; \ - $(dist_gq_binSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(gq_bindir)/$$f"; \ - else :; fi; \ - done + if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n' \ + -e 'h;s|.*|.|' \ + -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) { files[d] = files[d] " " $$1; \ + if (++n[d] == $(am__install_max)) { \ + print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ + else { print "f", d "/" $$4, $$1 } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(gq_bindir)$$dir'"; \ + $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(gq_bindir)$$dir" || exit $$?; \ + } \ + ; done uninstall-dist_gq_binSCRIPTS: @$(NORMAL_UNINSTALL) - @list='$(dist_gq_bin_SCRIPTS)'; for p in $$list; do \ - f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ - echo " rm -f '$(DESTDIR)$(gq_bindir)/$$f'"; \ - rm -f "$(DESTDIR)$(gq_bindir)/$$f"; \ - done + @list='$(dist_gq_bin_SCRIPTS)'; test -n "$(gq_bindir)" || exit 0; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 's,.*/,,;$(transform)'`; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(gq_bindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(gq_bindir)" && rm -f $$files install-gq_desktopDATA: $(gq_desktop_DATA) @$(NORMAL_INSTALL) test -z "$(gq_desktopdir)" || $(MKDIR_P) "$(DESTDIR)$(gq_desktopdir)" - @list='$(gq_desktop_DATA)'; for p in $$list; do \ + @list='$(gq_desktop_DATA)'; test -n "$(gq_desktopdir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f=$(am__strip_dir) \ - echo " $(gq_desktopDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(gq_desktopdir)/$$f'"; \ - $(gq_desktopDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(gq_desktopdir)/$$f"; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(gq_desktopdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(gq_desktopdir)" || exit $$?; \ done uninstall-gq_desktopDATA: @$(NORMAL_UNINSTALL) - @list='$(gq_desktop_DATA)'; for p in $$list; do \ - f=$(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(gq_desktopdir)/$$f'"; \ - rm -f "$(DESTDIR)$(gq_desktopdir)/$$f"; \ - done + @list='$(gq_desktop_DATA)'; test -n "$(gq_desktopdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '$(DESTDIR)$(gq_desktopdir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(gq_desktopdir)" && rm -f $$files tags: TAGS TAGS: @@ -317,13 +360,17 @@ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @@ -354,6 +401,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -372,6 +420,8 @@ html: html-am +html-am: + info: info-am info-am: @@ -380,18 +430,28 @@ install-dvi: install-dvi-am +install-dvi-am: + install-exec-am: install-html: install-html-am +install-html-am: + install-info: install-info-am +install-info-am: + install-man: install-pdf: install-pdf-am +install-pdf-am: + install-ps: install-ps-am +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-am @@ -428,6 +488,7 @@ uninstall-gq_desktopDATA @INTLTOOL_DESKTOP_RULE@ + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff -Nru geeqie-1.0/plugins/rotate/rotate.desktop geeqie-1.1/plugins/rotate/rotate.desktop --- geeqie-1.0/plugins/rotate/rotate.desktop 2010-02-17 21:21:57.000000000 +0000 +++ geeqie-1.1/plugins/rotate/rotate.desktop 2012-08-12 20:14:25.000000000 +0000 @@ -13,6 +13,7 @@ Name[ru]=Применить изменение ориентации непосредственно к изображению. Name[sr]=Примени орјентацију на садржај слике Name[sr@latin]=Primeni orjentaciju na sadržaj slike +Name[sv]=Välj _denna som bildens orientering # call the helper script Exec=geeqie-rotate -g %f diff -Nru geeqie-1.0/plugins/symlink/Makefile.in geeqie-1.1/plugins/symlink/Makefile.in --- geeqie-1.0/plugins/symlink/Makefile.in 2010-02-17 21:21:45.000000000 +0000 +++ geeqie-1.1/plugins/symlink/Makefile.in 2012-08-12 20:14:07.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -17,8 +18,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c @@ -42,19 +44,33 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/auxdir/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = -am__installdirs = "$(DESTDIR)$(gq_bindir)" \ - "$(DESTDIR)$(gq_desktopdir)" -dist_gq_binSCRIPT_INSTALL = $(INSTALL_SCRIPT) -SCRIPTS = $(dist_gq_bin_SCRIPTS) -SOURCES = -DIST_SOURCES = +CONFIG_CLEAN_VPATH_FILES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; -am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; -gq_desktopDATA_INSTALL = $(INSTALL_DATA) +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(gq_bindir)" \ + "$(DESTDIR)$(gq_desktopdir)" +SCRIPTS = $(dist_gq_bin_SCRIPTS) +SOURCES = +DIST_SOURCES = DATA = $(gq_desktop_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ @@ -137,6 +153,8 @@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ +JPEG_CFLAGS = @JPEG_CFLAGS@ +JPEG_LIBS = @JPEG_LIBS@ LCMS_CFLAGS = @LCMS_CFLAGS@ LCMS_LIBS = @LCMS_LIBS@ LDFLAGS = @LDFLAGS@ @@ -150,6 +168,7 @@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ +MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ @@ -159,10 +178,13 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATHSEP = @PATHSEP@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ @@ -170,6 +192,8 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ +TIFF_CFLAGS = @TIFF_CFLAGS@ +TIFF_LIBS = @TIFF_LIBS@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WINDRES = @WINDRES@ @@ -233,14 +257,14 @@ @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( 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 plugins/symlink/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu plugins/symlink/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu plugins/symlink/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu plugins/symlink/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -258,42 +282,61 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): install-dist_gq_binSCRIPTS: $(dist_gq_bin_SCRIPTS) @$(NORMAL_INSTALL) test -z "$(gq_bindir)" || $(MKDIR_P) "$(DESTDIR)$(gq_bindir)" - @list='$(dist_gq_bin_SCRIPTS)'; for p in $$list; do \ + @list='$(dist_gq_bin_SCRIPTS)'; test -n "$(gq_bindir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f $$d$$p; then \ - f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ - echo " $(dist_gq_binSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(gq_bindir)/$$f'"; \ - $(dist_gq_binSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(gq_bindir)/$$f"; \ - else :; fi; \ - done + if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n' \ + -e 'h;s|.*|.|' \ + -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) { files[d] = files[d] " " $$1; \ + if (++n[d] == $(am__install_max)) { \ + print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ + else { print "f", d "/" $$4, $$1 } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(gq_bindir)$$dir'"; \ + $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(gq_bindir)$$dir" || exit $$?; \ + } \ + ; done uninstall-dist_gq_binSCRIPTS: @$(NORMAL_UNINSTALL) - @list='$(dist_gq_bin_SCRIPTS)'; for p in $$list; do \ - f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ - echo " rm -f '$(DESTDIR)$(gq_bindir)/$$f'"; \ - rm -f "$(DESTDIR)$(gq_bindir)/$$f"; \ - done + @list='$(dist_gq_bin_SCRIPTS)'; test -n "$(gq_bindir)" || exit 0; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 's,.*/,,;$(transform)'`; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(gq_bindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(gq_bindir)" && rm -f $$files install-gq_desktopDATA: $(gq_desktop_DATA) @$(NORMAL_INSTALL) test -z "$(gq_desktopdir)" || $(MKDIR_P) "$(DESTDIR)$(gq_desktopdir)" - @list='$(gq_desktop_DATA)'; for p in $$list; do \ + @list='$(gq_desktop_DATA)'; test -n "$(gq_desktopdir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f=$(am__strip_dir) \ - echo " $(gq_desktopDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(gq_desktopdir)/$$f'"; \ - $(gq_desktopDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(gq_desktopdir)/$$f"; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(gq_desktopdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(gq_desktopdir)" || exit $$?; \ done uninstall-gq_desktopDATA: @$(NORMAL_UNINSTALL) - @list='$(gq_desktop_DATA)'; for p in $$list; do \ - f=$(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(gq_desktopdir)/$$f'"; \ - rm -f "$(DESTDIR)$(gq_desktopdir)/$$f"; \ - done + @list='$(gq_desktop_DATA)'; test -n "$(gq_desktopdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '$(DESTDIR)$(gq_desktopdir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(gq_desktopdir)" && rm -f $$files tags: TAGS TAGS: @@ -317,13 +360,17 @@ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @@ -354,6 +401,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -372,6 +420,8 @@ html: html-am +html-am: + info: info-am info-am: @@ -380,18 +430,28 @@ install-dvi: install-dvi-am +install-dvi-am: + install-exec-am: install-html: install-html-am +install-html-am: + install-info: install-info-am +install-info-am: + install-man: install-pdf: install-pdf-am +install-pdf-am: + install-ps: install-ps-am +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-am @@ -428,6 +488,7 @@ uninstall-gq_desktopDATA @INTLTOOL_DESKTOP_RULE@ + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff -Nru geeqie-1.0/plugins/symlink/symlink.desktop geeqie-1.1/plugins/symlink/symlink.desktop --- geeqie-1.0/plugins/symlink/symlink.desktop 2010-02-17 21:21:57.000000000 +0000 +++ geeqie-1.1/plugins/symlink/symlink.desktop 2012-08-12 20:14:25.000000000 +0000 @@ -13,6 +13,7 @@ Name[ru]=Символьная ссылка Name[sr]=Симболичка веза Name[sr@latin]=Simbolička veza +Name[sv]=_Länka till... # call the helper script Exec=geeqie-symlink %f diff -Nru geeqie-1.0/plugins/ufraw/Makefile.in geeqie-1.1/plugins/ufraw/Makefile.in --- geeqie-1.0/plugins/ufraw/Makefile.in 2010-02-17 21:21:45.000000000 +0000 +++ geeqie-1.1/plugins/ufraw/Makefile.in 2012-08-12 20:14:07.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -17,8 +18,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c @@ -42,19 +44,33 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/auxdir/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = -am__installdirs = "$(DESTDIR)$(gq_bindir)" \ - "$(DESTDIR)$(gq_desktopdir)" -dist_gq_binSCRIPT_INSTALL = $(INSTALL_SCRIPT) -SCRIPTS = $(dist_gq_bin_SCRIPTS) -SOURCES = -DIST_SOURCES = +CONFIG_CLEAN_VPATH_FILES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; -am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; -gq_desktopDATA_INSTALL = $(INSTALL_DATA) +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(gq_bindir)" \ + "$(DESTDIR)$(gq_desktopdir)" +SCRIPTS = $(dist_gq_bin_SCRIPTS) +SOURCES = +DIST_SOURCES = DATA = $(gq_desktop_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ @@ -137,6 +153,8 @@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ +JPEG_CFLAGS = @JPEG_CFLAGS@ +JPEG_LIBS = @JPEG_LIBS@ LCMS_CFLAGS = @LCMS_CFLAGS@ LCMS_LIBS = @LCMS_LIBS@ LDFLAGS = @LDFLAGS@ @@ -150,6 +168,7 @@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ +MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ @@ -159,10 +178,13 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATHSEP = @PATHSEP@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ @@ -170,6 +192,8 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ +TIFF_CFLAGS = @TIFF_CFLAGS@ +TIFF_LIBS = @TIFF_LIBS@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WINDRES = @WINDRES@ @@ -236,14 +260,14 @@ @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( 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 plugins/ufraw/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu plugins/ufraw/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu plugins/ufraw/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu plugins/ufraw/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -261,42 +285,61 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): install-dist_gq_binSCRIPTS: $(dist_gq_bin_SCRIPTS) @$(NORMAL_INSTALL) test -z "$(gq_bindir)" || $(MKDIR_P) "$(DESTDIR)$(gq_bindir)" - @list='$(dist_gq_bin_SCRIPTS)'; for p in $$list; do \ + @list='$(dist_gq_bin_SCRIPTS)'; test -n "$(gq_bindir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f $$d$$p; then \ - f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ - echo " $(dist_gq_binSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(gq_bindir)/$$f'"; \ - $(dist_gq_binSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(gq_bindir)/$$f"; \ - else :; fi; \ - done + if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n' \ + -e 'h;s|.*|.|' \ + -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) { files[d] = files[d] " " $$1; \ + if (++n[d] == $(am__install_max)) { \ + print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ + else { print "f", d "/" $$4, $$1 } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(gq_bindir)$$dir'"; \ + $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(gq_bindir)$$dir" || exit $$?; \ + } \ + ; done uninstall-dist_gq_binSCRIPTS: @$(NORMAL_UNINSTALL) - @list='$(dist_gq_bin_SCRIPTS)'; for p in $$list; do \ - f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ - echo " rm -f '$(DESTDIR)$(gq_bindir)/$$f'"; \ - rm -f "$(DESTDIR)$(gq_bindir)/$$f"; \ - done + @list='$(dist_gq_bin_SCRIPTS)'; test -n "$(gq_bindir)" || exit 0; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 's,.*/,,;$(transform)'`; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(gq_bindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(gq_bindir)" && rm -f $$files install-gq_desktopDATA: $(gq_desktop_DATA) @$(NORMAL_INSTALL) test -z "$(gq_desktopdir)" || $(MKDIR_P) "$(DESTDIR)$(gq_desktopdir)" - @list='$(gq_desktop_DATA)'; for p in $$list; do \ + @list='$(gq_desktop_DATA)'; test -n "$(gq_desktopdir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f=$(am__strip_dir) \ - echo " $(gq_desktopDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(gq_desktopdir)/$$f'"; \ - $(gq_desktopDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(gq_desktopdir)/$$f"; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(gq_desktopdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(gq_desktopdir)" || exit $$?; \ done uninstall-gq_desktopDATA: @$(NORMAL_UNINSTALL) - @list='$(gq_desktop_DATA)'; for p in $$list; do \ - f=$(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(gq_desktopdir)/$$f'"; \ - rm -f "$(DESTDIR)$(gq_desktopdir)/$$f"; \ - done + @list='$(gq_desktop_DATA)'; test -n "$(gq_desktopdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '$(DESTDIR)$(gq_desktopdir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(gq_desktopdir)" && rm -f $$files tags: TAGS TAGS: @@ -320,13 +363,17 @@ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @@ -357,6 +404,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -375,6 +423,8 @@ html: html-am +html-am: + info: info-am info-am: @@ -383,18 +433,28 @@ install-dvi: install-dvi-am +install-dvi-am: + install-exec-am: install-html: install-html-am +install-html-am: + install-info: install-info-am +install-info-am: + install-man: install-pdf: install-pdf-am +install-pdf-am: + install-ps: install-ps-am +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-am @@ -431,6 +491,7 @@ uninstall-gq_desktopDATA @INTLTOOL_DESKTOP_RULE@ + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff -Nru geeqie-1.0/plugins/ufraw/geeqie-ufraw-id.desktop geeqie-1.1/plugins/ufraw/geeqie-ufraw-id.desktop --- geeqie-1.0/plugins/ufraw/geeqie-ufraw-id.desktop 2010-02-17 21:21:57.000000000 +0000 +++ geeqie-1.1/plugins/ufraw/geeqie-ufraw-id.desktop 2012-08-12 20:14:26.000000000 +0000 @@ -13,6 +13,7 @@ Name[ru]=Редактировать ID-файл UFRaw Name[sr]=Измени НЛRaw ИБ датотеку Name[sr@latin]=Izmeni NLRaw IB datoteku +Name[sv]=Redigera ID-filen till UFRaw Exec=ufraw --create-id=only %U diff -Nru geeqie-1.0/plugins/ufraw/geeqie-ufraw-recursive.desktop geeqie-1.1/plugins/ufraw/geeqie-ufraw-recursive.desktop --- geeqie-1.0/plugins/ufraw/geeqie-ufraw-recursive.desktop 2010-02-17 21:21:57.000000000 +0000 +++ geeqie-1.1/plugins/ufraw/geeqie-ufraw-recursive.desktop 2012-08-12 20:14:26.000000000 +0000 @@ -13,6 +13,7 @@ Name[ru]=Рекурсивная пакетная обработка UFRaw Name[sr]=Пакетно развиј све садржано Name[sr@latin]=Paketno razvij sve sadržano +Name[sv]=UFRaw batch, rekursivt # call the helper script with current directory as an argument Exec=geeqie-ufraw --recursive . diff -Nru geeqie-1.0/plugins/ufraw/geeqie-ufraw.desktop geeqie-1.1/plugins/ufraw/geeqie-ufraw.desktop --- geeqie-1.0/plugins/ufraw/geeqie-ufraw.desktop 2010-02-17 21:21:57.000000000 +0000 +++ geeqie-1.1/plugins/ufraw/geeqie-ufraw.desktop 2012-08-12 20:14:26.000000000 +0000 @@ -13,6 +13,7 @@ Name[ru]=Пакетная обработка UFRaw Name[sr]=Пакетно развиј у НЛRaw-у Name[sr@latin]=Paketno razvij u NLRaw-u +Name[sv]=UFRaw batch # call the helper script on each file individually # - this allows a better controll over processing diff -Nru geeqie-1.0/po/LINGUAS geeqie-1.1/po/LINGUAS --- geeqie-1.0/po/LINGUAS 2010-02-17 21:21:23.000000000 +0000 +++ geeqie-1.1/po/LINGUAS 2012-08-12 20:13:40.000000000 +0000 @@ -31,5 +31,5 @@ tr uk vi -zh_CN.GB2312 +zh_CN zh_TW diff -Nru geeqie-1.0/po/Makefile.in.in geeqie-1.1/po/Makefile.in.in --- geeqie-1.0/po/Makefile.in.in 2010-02-17 21:21:42.000000000 +0000 +++ geeqie-1.1/po/Makefile.in.in 2012-08-12 20:14:04.000000000 +0000 @@ -56,7 +56,7 @@ 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) +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) @@ -129,7 +129,7 @@ done # Empty stubs to satisfy archaic automake needs -dvi info tags TAGS ID: +dvi info ctags tags CTAGS TAGS ID: # Define this as empty until I found a useful application. install-exec installcheck: diff -Nru geeqie-1.0/po/POTFILES.in geeqie-1.1/po/POTFILES.in --- geeqie-1.0/po/POTFILES.in 2010-02-17 21:21:23.000000000 +0000 +++ geeqie-1.1/po/POTFILES.in 2012-08-12 20:13:40.000000000 +0000 @@ -46,6 +46,7 @@ src/image.c src/image-load.c src/image-overlay.c +src/image_load_jpeg.c src/img-view.c src/layout.c src/layout_config.c diff -Nru geeqie-1.0/po/fr.po geeqie-1.1/po/fr.po --- geeqie-1.0/po/fr.po 2010-02-17 21:21:23.000000000 +0000 +++ geeqie-1.1/po/fr.po 2012-08-12 20:13:40.000000000 +0000 @@ -178,11 +178,11 @@ #: ../src/bar_exif.c:554 msgid "Key:" -msgstr "Clé:" +msgstr "Clé :" #: ../src/bar_exif.c:563 msgid "Title:" -msgstr "Titre:" +msgstr "Titre :" #: ../src/bar_exif.c:572 msgid "Show only if set" @@ -304,11 +304,11 @@ #: ../src/bar_keywords.c:893 msgid "Keyword:" -msgstr "Mot-clé:" +msgstr "Mot-clé :" #: ../src/bar_keywords.c:902 msgid "Keyword type:" -msgstr "Type de mot-clé:" +msgstr "Type de mot-clé :" #: ../src/bar_keywords.c:904 msgid "Active keyword" @@ -443,7 +443,7 @@ "error: %s\n" msgstr "" "erreur à la sauvegarde du fichier de cache des similarités : %s\n" -"erreur: %s\n" +"erreur : %s\n" #: ../src/cache_maint.c:129 ../src/cache_maint.c:722 ../src/cache_maint.c:938 #: ../src/editors.c:1133 @@ -452,15 +452,15 @@ #: ../src/cache_maint.c:307 msgid "Removing old metadata..." -msgstr "Suppression des anciennes méta-données ..." +msgstr "Suppression des anciennes méta-données..." #: ../src/cache_maint.c:311 msgid "Clearing cached thumbnails..." -msgstr "Purge des vignettes en cache ..." +msgstr "Purge des vignettes en cache..." #: ../src/cache_maint.c:315 ../src/cache_maint.c:1096 msgid "Removing old thumbnails..." -msgstr "Suppression des anciennes vignettes ..." +msgstr "Suppression des anciennes vignettes..." #: ../src/cache_maint.c:318 ../src/cache_maint.c:1099 msgid "Maintenance" @@ -504,11 +504,11 @@ #: ../src/cache_maint.c:1042 ../src/editors.c:1059 msgid "running..." -msgstr "en cours ..." +msgstr "en cours..." #: ../src/cache_maint.c:1091 msgid "Clearing thumbnails..." -msgstr "Suppression des vignettes ..." +msgstr "Suppression des vignettes..." #: ../src/cache_maint.c:1157 ../src/cache_maint.c:1160 #: ../src/cache_maint.c:1253 ../src/cache_maint.c:1270 @@ -526,7 +526,7 @@ #: ../src/cache_maint.c:1203 #, c-format msgid "Location: %s" -msgstr "Emplacement: %s" +msgstr "Emplacement : %s" #: ../src/cache_maint.c:1228 msgid "Cache Maintenance" @@ -551,7 +551,7 @@ #: ../src/cache_maint.c:1256 ../src/cache_maint.c:1273 msgid "Delete all cached thumbnails." -msgstr "Éffacer toutes les vignettes en cache." +msgstr "Effacer toutes les vignettes en cache." #: ../src/cache_maint.c:1259 msgid "Shared thumbnail cache" @@ -631,21 +631,21 @@ #: ../src/collect-dlg.c:127 #, c-format msgid "No such file '%s'." -msgstr "Aucun fichier nommé '%s'" +msgstr "Aucun fichier nommé « %s »." #: ../src/collect-dlg.c:132 #, c-format msgid "'%s' is a directory, not a collection file." -msgstr "'%s' est un répertoire, pas une collection." +msgstr "« %s » est un répertoire, pas une collection." #: ../src/collect-dlg.c:137 #, c-format msgid "You do not have read permissions on the file '%s'." -msgstr "Vous n'avez pas la permission de lire le fichier '%s'." +msgstr "Vous n'avez pas la permission de lire le fichier « %s »." #: ../src/collect-dlg.c:143 msgid "Can not open collection file" -msgstr "impossible d'ouvrir la collection" +msgstr "Impossible d'ouvrir la collection" #: ../src/collect-dlg.c:195 msgid "Save collection" @@ -686,8 +686,8 @@ "error saving collection file: %s\n" "error: %s\n" msgstr "" -"erreur lors de la sauvegarde de la collection: %s\n" -"erreur: %s\n" +"erreur lors de la sauvegarde de la collection : %s\n" +"erreur : %s\n" #: ../src/collect-table.c:211 #, c-format @@ -707,7 +707,7 @@ #: ../src/collect-table.c:237 ../src/dupe.c:1319 ../src/search.c:320 #: ../src/view_file.c:822 ../src/view_file.c:925 msgid "Loading thumbs..." -msgstr "Chargement des vignettes ..." +msgstr "Chargement des vignettes..." #: ../src/collect-table.c:866 ../src/dupe.c:2242 ../src/dupe.c:2555 #: ../src/layout_util.c:1237 ../src/search.c:996 @@ -731,7 +731,7 @@ #: ../src/collect-table.c:876 msgid "Append from collection..." -msgstr "Ajouter à partir de la collection ..." +msgstr "Ajouter à partir de la collection..." #: ../src/collect-table.c:880 msgid "_Selection" @@ -755,26 +755,26 @@ #: ../src/layout_image.c:506 ../src/layout_util.c:1266 ../src/pan-view.c:2829 #: ../src/search.c:1017 ../src/view_file.c:579 msgid "_Copy..." -msgstr "_Copier ..." +msgstr "_Copier..." #: ../src/collect-table.c:900 ../src/dupe.c:2269 ../src/img-view.c:1286 #: ../src/layout_image.c:508 ../src/layout_util.c:1267 ../src/pan-view.c:2831 #: ../src/search.c:1019 ../src/view_file.c:581 msgid "_Move..." -msgstr "_Déplacer ..." +msgstr "_Déplacer..." #: ../src/collect-table.c:902 ../src/dupe.c:2271 ../src/img-view.c:1287 #: ../src/layout_image.c:510 ../src/layout_util.c:1268 ../src/pan-view.c:2833 #: ../src/search.c:1021 ../src/view_dir.c:665 ../src/view_file.c:583 msgid "_Rename..." -msgstr "_Renommer ..." +msgstr "_Renommer..." #: ../src/collect-table.c:904 ../src/dupe.c:2273 ../src/img-view.c:1288 #: ../src/layout_image.c:512 ../src/layout_util.c:1269 #: ../src/layout_util.c:1270 ../src/layout_util.c:1271 ../src/pan-view.c:2835 #: ../src/search.c:1023 ../src/view_dir.c:667 ../src/view_file.c:585 msgid "_Delete..." -msgstr "_Supprimer ..." +msgstr "_Supprimer..." #: ../src/collect-table.c:906 ../src/dupe.c:2275 ../src/img-view.c:1289 #: ../src/layout_image.c:515 ../src/pan-view.c:2837 ../src/search.c:1025 @@ -800,16 +800,16 @@ #: ../src/collect-table.c:922 msgid "Save collection _as..." -msgstr "Enregistrer collection _sous ..." +msgstr "Enregistrer collection _sous..." #: ../src/collect-table.c:925 ../src/layout_util.c:1262 msgid "_Find duplicates..." -msgstr "Rechercher les _doublons ..." +msgstr "Rechercher les _doublons..." #: ../src/collect-table.c:927 ../src/dupe.c:2264 ../src/layout_util.c:1264 #: ../src/search.c:1014 msgid "Print..." -msgstr "Imprimer ..." +msgstr "Imprimer..." #: ../src/collect-table.c:2081 ../src/dupe.c:3351 ../src/img-view.c:1443 msgid "Dropped list includes folders." @@ -926,23 +926,23 @@ #: ../src/dupe.c:1445 msgid "Reading checksums..." -msgstr "Lecture des sommes de contrôle ..." +msgstr "Lecture des sommes de contrôle..." #: ../src/dupe.c:1478 msgid "Reading dimensions..." -msgstr "Lecture des dimensions ..." +msgstr "Lecture des dimensions..." #: ../src/dupe.c:1512 msgid "Reading similarity data..." -msgstr "Lecture des données de similarité ..." +msgstr "Lecture des données de similarité..." #: ../src/dupe.c:1548 ../src/dupe.c:1579 msgid "Comparing..." -msgstr "Comparaison ..." +msgstr "Comparaison..." #: ../src/dupe.c:1559 ../src/pan-view.c:1094 msgid "Sorting..." -msgstr "Tri ..." +msgstr "Tri..." #: ../src/dupe.c:2251 msgid "Select group _1 duplicates" @@ -1033,12 +1033,12 @@ #, c-format msgid "Desktop file '%s' should not include extension in Icon key: '%s'\n" msgstr "" -"Le fichier .desktop '%s' ne devrait pas inclure l'extension dans la clé " -"Icon: '%s'\n" +"Le fichier .desktop « %s » ne devrait pas inclure l'extension dans la clé " +"Icon : « %s »\n" #: ../src/editors.c:486 msgid "stopping..." -msgstr "arrêt ..." +msgstr "arrêt..." #: ../src/editors.c:507 msgid "Edit command results" @@ -1089,7 +1089,7 @@ #: ../src/editors.c:1310 msgid "Can't find matching file type." -msgstr "Ne peut trouver de type de fichier correspondant." +msgstr "Ne peut trouver le type de fichier correspondant." #: ../src/editors.c:1311 msgid "Can't execute external editor." @@ -1469,7 +1469,7 @@ #: ../src/exif.c:343 msgid "Primary chromaticities" -msgstr "Chromaticitées Primaires" +msgstr "Chromaticités Primaires" #: ../src/exif.c:344 msgid "YCbCy coefficients" @@ -1758,11 +1758,11 @@ #: ../src/exif-common.c:505 msgid "Above Sea Level" -msgstr "Au dessus du niveau de la mer" +msgstr "Au-dessus du niveau de la mer" #: ../src/exif-common.c:505 msgid "Below Sea Level" -msgstr "En dessous du niveau de la mer" +msgstr "En-dessous du niveau de la mer" #: ../src/exif-common.c:513 msgid "Camera" @@ -1835,7 +1835,7 @@ #: ../src/filedata.c:2109 msgid "destination directory is not writable" -msgstr "impossible d'écrire dans le dossier destination" +msgstr "impossible d'écrire dans le dossier de destination" #: ../src/filedata.c:2115 msgid "destination directory does not exist" @@ -1888,7 +1888,7 @@ #: ../src/fullscreen.c:638 msgid "Stay above other windows" -msgstr "Rester au dessus des autres fenêtres" +msgstr "Rester au-dessus des autres fenêtres" #: ../src/fullscreen.c:645 msgid "Determined by Window Manager" @@ -2083,7 +2083,7 @@ #: ../src/layout.c:1931 msgid "Start-up directory:" -msgstr "Dossier de démarrage:" +msgstr "Dossier de démarrage :" #: ../src/layout.c:1933 msgid "No change" @@ -2260,11 +2260,11 @@ #: ../src/layout_util.c:1259 msgid "_Open collection..." -msgstr "_Ouvrir collection ..." +msgstr "_Ouvrir collection..." #: ../src/layout_util.c:1259 msgid "Open collection..." -msgstr "Ouvrir collection ..." +msgstr "Ouvrir collection..." #: ../src/layout_util.c:1260 msgid "Open recen_t" @@ -2276,15 +2276,15 @@ #: ../src/layout_util.c:1261 msgid "_Search..." -msgstr "_Recherche ..." +msgstr "_Recherche..." #: ../src/layout_util.c:1261 msgid "Search..." -msgstr "Recherche ..." +msgstr "Recherche..." #: ../src/layout_util.c:1262 msgid "Find duplicates..." -msgstr "Rechercher les doublons ..." +msgstr "Rechercher les doublons..." #: ../src/layout_util.c:1263 msgid "Pa_n view" @@ -2296,32 +2296,32 @@ #: ../src/layout_util.c:1264 msgid "_Print..." -msgstr "_Imprimer ..." +msgstr "_Imprimer..." #: ../src/layout_util.c:1265 msgid "N_ew folder..." -msgstr "Nouv_eau dossier ..." +msgstr "Nouv_eau dossier..." #: ../src/layout_util.c:1265 msgid "New folder..." -msgstr "Nouveau dossier ..." +msgstr "Nouveau dossier..." #: ../src/layout_util.c:1266 msgid "Copy..." -msgstr "Copier ..." +msgstr "Copier..." #: ../src/layout_util.c:1267 msgid "Move..." -msgstr "Déplacer ..." +msgstr "Déplacer..." #: ../src/layout_util.c:1268 msgid "Rename..." -msgstr "Renommer ..." +msgstr "Renommer..." #: ../src/layout_util.c:1269 ../src/layout_util.c:1270 #: ../src/layout_util.c:1271 msgid "Delete..." -msgstr "Supprimer ..." +msgstr "Supprimer..." #: ../src/layout_util.c:1272 ../src/view_file.c:590 msgid "Enable file _grouping" @@ -2401,11 +2401,11 @@ #: ../src/layout_util.c:1282 ../src/menu.c:233 msgid "_Original state" -msgstr "Etat _original" +msgstr "État _original" #: ../src/layout_util.c:1282 msgid "Original state" -msgstr "Etat original" +msgstr "État original" #: ../src/layout_util.c:1283 msgid "Select _all" @@ -2425,35 +2425,35 @@ #: ../src/layout_util.c:1286 msgid "P_references..." -msgstr "P_références ..." +msgstr "P_références..." #: ../src/layout_util.c:1286 msgid "Preferences..." -msgstr "Préférences ..." +msgstr "Préférences..." #: ../src/layout_util.c:1287 msgid "Configure _Editors..." -msgstr "Configur_er les éditeurs" +msgstr "Configur_er les éditeurs..." #: ../src/layout_util.c:1287 msgid "Configure Editors..." -msgstr "Configurer les éditeurs" +msgstr "Configurer les éditeurs..." #: ../src/layout_util.c:1288 msgid "_Configure this window..." -msgstr "_Configurer cette fenêtre" +msgstr "_Configurer cette fenêtre..." #: ../src/layout_util.c:1288 msgid "Configure this window..." -msgstr "Configurer cette fenêtre" +msgstr "Configurer cette fenêtre..." #: ../src/layout_util.c:1289 msgid "_Thumbnail maintenance..." -msgstr "Maintenance des _vignettes ..." +msgstr "Maintenance des _vignettes..." #: ../src/layout_util.c:1289 msgid "Thumbnail maintenance..." -msgstr "Maintenance des vignettes ..." +msgstr "Maintenance des vignettes..." #: ../src/layout_util.c:1290 msgid "Set as wallpaper" @@ -2590,7 +2590,7 @@ #: ../src/layout_util.c:1324 msgid "_View in new window" -msgstr "_Voir dans une _nouvelle fenêtre" +msgstr "_Voir dans une nouvelle fenêtre" #: ../src/layout_util.c:1324 msgid "View in new window" @@ -2611,31 +2611,31 @@ #: ../src/layout_util.c:1330 msgid "_Cycle through overlay modes" -msgstr "Bou_cler à travers les modes de surimpression" +msgstr "_Passer en revue les modes de surimpression" #: ../src/layout_util.c:1330 msgid "Cycle through Overlay modes" -msgstr "Boucler à travers les modes de surimpression" +msgstr "Passer en revue les modes de surimpression" #: ../src/layout_util.c:1331 msgid "Cycle through histogram ch_annels" -msgstr "Boucler sur les c_anaux d'histogramme" +msgstr "Passer en revue les c_anaux d'histogramme" #: ../src/layout_util.c:1331 msgid "Cycle through histogram channels" -msgstr "Boucler sur les canaux d'histogramme" +msgstr "Passer en revue les canaux d'histogramme" #: ../src/layout_util.c:1332 msgid "Cycle through histogram mo_des" -msgstr "Boucler sur les modes d'histogramme" +msgstr "Passer en revue les mo_des d'histogramme" #: ../src/layout_util.c:1332 msgid "Cycle through histogram modes" -msgstr "Boucler à travers les modes d'histogramme" +msgstr "Passer en revue les modes d'histogramme" #: ../src/layout_util.c:1333 msgid "_Hide file list" -msgstr "Masquer la _liste des fichiers" +msgstr "_Masquer la liste des fichiers" #: ../src/layout_util.c:1333 msgid "Hide file list" @@ -2675,7 +2675,7 @@ #: ../src/layout_util.c:1338 msgid "_Release notes" -msgstr "_Notes pour cette version" +msgstr "_Notes de version" #: ../src/layout_util.c:1338 msgid "Release notes" @@ -2871,19 +2871,19 @@ #: ../src/layout_util.c:1379 msgid "Input _0: sRGB" -msgstr "Entrée _0: sRGB" +msgstr "Entrée _0 : sRGB" #: ../src/layout_util.c:1379 msgid "Input 0: sRGB" -msgstr "Entrée 0: sRGB" +msgstr "Entrée 0 : sRGB" #: ../src/layout_util.c:1380 msgid "Input _1: AdobeRGB compatible" -msgstr "Entrée _1: compatible AdobeRGB" +msgstr "Entrée _1 : compatible AdobeRGB" #: ../src/layout_util.c:1380 msgid "Input 1: AdobeRGB compatible" -msgstr "Entrée 1: compatible AdobeRGB" +msgstr "Entrée 1 : compatible AdobeRGB" #: ../src/layout_util.c:1381 msgid "Input _2" @@ -3042,7 +3042,7 @@ #: ../src/layout_util.c:2109 #, c-format msgid "Number of files with unsaved metadata: %d" -msgstr "Nombre de fichiers avec des méta-données à sauver: %d" +msgstr "Nombre de fichiers avec des méta-données à sauver : %d" #: ../src/layout_util.c:2115 msgid "No unsaved metadata" @@ -3068,7 +3068,7 @@ #: ../src/layout_util.c:2197 #, c-format msgid "Input _%d: %s" -msgstr "Entrée _%d: %s" +msgstr "Entrée _%d : %s" #. something went badly wrong #: ../src/lirc.c:193 @@ -3102,7 +3102,7 @@ "Usage: %s [options] [path]\n" "\n" msgstr "" -"Utilisation: %s [options] [chemin]\n" +"Utilisation : %s [options] [chemin]\n" "\n" #: ../src/main.c:314 @@ -3134,12 +3134,12 @@ #: ../src/main.c:320 msgid " --geometry=GEOMETRY set main window location\n" msgstr "" -" --geometry=GEOMETRIE détermine la position de la fenêtre principale\n" +" --geometry=GEOMÉTRIE détermine la position de la fenêtre principale\n" #: ../src/main.c:321 msgid " -r, --remote send following commands to open window\n" msgstr "" -" -r, --remote lance la commande suivante pour ouvrir un " +" -r, --remote lance la commande suivante pour ouvrir une " "fenêtre\n" "de commande\n" @@ -3150,7 +3150,7 @@ #: ../src/main.c:324 msgid " --debug[=level] turn on debug output\n" -msgstr " --debug[=niveau] active les sorties de déboguage\n" +msgstr " --debug[=niveau] active les sorties de débogage\n" #: ../src/main.c:326 msgid " -v, --version print version info\n" @@ -3171,11 +3171,11 @@ "Use --help for options\n" msgstr "" "invalide ou ignoré : %s\n" -"Utiliser --help pour connaître les options\n" +"Utilisez --help pour connaître les options\n" #: ../src/main.c:368 msgid "Invalid or ignored remote options: " -msgstr "Options de commande à distance invalides ou ignorées:" +msgstr "Options de commande à distance invalides ou ignorées :" #: ../src/main.c:377 msgid "" @@ -3208,7 +3208,7 @@ "error: %s\n" msgstr "" "erreur lors de la sauvegarde du fichier : %s\n" -"erreur: %s\n" +"erreur : %s\n" #: ../src/main.c:659 msgid "exit" @@ -3513,11 +3513,11 @@ #: ../src/pan-view.c:1084 ../src/pan-view.c:1100 msgid "Reading image data..." -msgstr "Lecture des données de l'image ..." +msgstr "Lecture des données de l'image..." #: ../src/pan-view.c:1159 msgid "Sorting images..." -msgstr "Tri des images ..." +msgstr "Tri des images..." #: ../src/pan-view.c:1546 ../src/print.c:2650 msgid "Filename:" @@ -3647,7 +3647,7 @@ "performance." msgstr "" "Pour améliorer la vitesse de génération des vignettes dans la vue " -"panoramique les options suivantes peuvent être utilisées. Notez que les deux " +"panoramique, les options suivantes peuvent être utilisées. Notez que les deux " "options doivent être validées pour apprécier un changement dans les " "performances." @@ -3741,7 +3741,7 @@ #: ../src/preferences.c:792 msgid "This will remove the trash contents." -msgstr "Ceci va supprimer le contenu de la corbeille" +msgstr "Ceci va supprimer le contenu de la corbeille." #: ../src/preferences.c:836 ../src/preferences.c:839 msgid "Reset image overlay template string" @@ -3847,7 +3847,7 @@ #: ../src/preferences.c:1257 msgid "Limit image size when autofitting (%):" -msgstr "Limiter la taille de l'image lors de l'auto-dimensionnement (%):" +msgstr "Limiter la taille de l'image lors de l'auto-dimensionnement (%) :" #: ../src/preferences.c:1265 msgid "Zoom increment:" @@ -3859,7 +3859,7 @@ #: ../src/preferences.c:1274 msgid "Zoom to original size" -msgstr "Zoom à sa taille d'origine" +msgstr "Zoom à la taille d'origine" #: ../src/preferences.c:1277 msgid "Fit image to window" @@ -3969,7 +3969,7 @@ "disappear when no data is available.\n" msgstr "" "%name% correspond au nom de l'image.\n" -"Aussi disponibles: %collection%, %number%, %total%, %" +"Aussi disponibles : %collection%, %number%, %total%, %" "date%,\n" "%size% (taille du fichier), %width% (largeur), %height% " "(hauteur), %res% (résolution)\n" @@ -3979,7 +3979,7 @@ "La notation %formatted.Camera:20 permet de tronquer l'affichage de " "cette donnée à 20 caractères, 3 points seront ajoutés à la fin pour " "l'indiquer.\n" -"Si deux variables ou plus sont séparés par le caractère |, les variables " +"Si deux variables ou plus sont séparées par le caractère |, les variables " "disponibles seront affichées avec un séparateur.\n" "%formatted.ShutterSpeed%|%formatted.ISOSpeedRating%|%" "formatted.FocalLength% montrera \"1/20s - 400 - 80 mm\" ou \"1/200 - 80 " @@ -4011,7 +4011,7 @@ #: ../src/preferences.c:1463 msgid "Grouping sidecar extensions" -msgstr "Groupage des extensions de fichiers sidecar" +msgstr "Groupage des extensions de fichiers sidecars" #: ../src/preferences.c:1470 msgid "File types" @@ -4040,7 +4040,7 @@ #: ../src/preferences.c:1600 msgid "Warning: Geeqie is built without Exiv2. Some options are disabled." msgstr "" -"Attention: Geeqie a été compilé sans Exiv2, quelques options sont donc " +"Attention : Geeqie a été compilé sans Exiv2, quelques options sont donc " "inaccessibles." #: ../src/preferences.c:1602 @@ -4056,7 +4056,7 @@ "1) Save metadata in image files, resp. sidecar files, according to the XMP " "standard" msgstr "" -"1) Sauver les méta-données dans les fichiers images, les fichiers sidecar, " +"1) Sauver les méta-données dans les fichiers images, les fichiers sidecars, " "en accord avec le standard XMP" #: ../src/preferences.c:1611 @@ -4069,7 +4069,7 @@ #: ../src/preferences.c:1614 #, c-format msgid "3) Save metadata in Geeqie private directory '%s'" -msgstr "3) Sauver les méta-données dans le répertoire privé de Geeqie '%s'" +msgstr "3) Sauver les méta-données dans le répertoire privé de Geeqie « %s »" #: ../src/preferences.c:1619 msgid "Step 1: Write to image files" @@ -4085,7 +4085,7 @@ #: ../src/preferences.c:1630 msgid "Warn if the image files are unwritable" -msgstr "Prévenir si les images sont protégés en écriture" +msgstr "Prévenir si les images sont protégées en écriture" #: ../src/preferences.c:1633 msgid "Ask before writing to image files" @@ -4093,7 +4093,7 @@ #: ../src/preferences.c:1636 msgid "Step 2 and 3: write to Geeqie private files" -msgstr "Étapes 2 et 3: écriture dans les fichiers privés de Geeqie" +msgstr "Étapes 2 et 3 : écriture dans les fichiers privés de Geeqie" #: ../src/preferences.c:1641 msgid "" @@ -4133,7 +4133,7 @@ #: ../src/preferences.c:1666 msgid "Timeout (seconds):" -msgstr "Délai (secondes):" +msgstr "Délai (secondes) :" #: ../src/preferences.c:1669 msgid "Write metadata on image change" @@ -4166,7 +4166,7 @@ #: ../src/preferences.c:1710 #, c-format msgid "Input %d:" -msgstr "Entrée %d:" +msgstr "Entrée %d :" #: ../src/preferences.c:1727 ../src/preferences.c:1747 msgid "Select color profile" @@ -4182,7 +4182,7 @@ #: ../src/preferences.c:1744 msgid "Screen:" -msgstr "Écran:" +msgstr "Écran :" #: ../src/preferences.c:1766 ../src/preferences.c:1809 msgid "Behavior" @@ -4254,15 +4254,15 @@ #: ../src/preferences.c:1835 msgid "Custom similarity threshold:" -msgstr "Seuil de similarité personalisé :" +msgstr "Seuil de similarité personnalisé :" #: ../src/preferences.c:1840 msgid "Debugging" -msgstr "Déboguage" +msgstr "Débogage" #: ../src/preferences.c:1842 msgid "Debug level:" -msgstr "Niveau de déboguage:" +msgstr "Niveau de débogage :" #: ../src/preferences.c:1861 msgid "Keyboard" @@ -4282,7 +4282,7 @@ #: ../src/preferences.c:1915 msgid "Tooltip" -msgstr "Titre" +msgstr "Infobulle" #: ../src/preferences.c:1953 msgid "Reset selected" @@ -4327,7 +4327,7 @@ #: ../src/preferences.c:2144 msgid "Credits..." -msgstr "Crédits ..." +msgstr "Crédits..." #: ../src/print.c:124 msgid "Selection" @@ -4400,12 +4400,12 @@ #. in 8.5 x 11 #: ../src/print.c:382 msgid "Legal" -msgstr "Legal" +msgstr "Légal" #. in 8.5 x 14 #: ../src/print.c:383 msgid "Executive" -msgstr "Executive" +msgstr "Exécutive" #. in 7.25x 10.5 #. mm 841 x 1189 @@ -4494,7 +4494,7 @@ #: ../src/print.c:1144 ../src/print.c:1181 ../src/print.c:1217 #: ../src/print.c:1334 ../src/print.c:1425 ../src/print.c:1456 msgid "SIGPIPE error writing to printer." -msgstr "Erreur SIGPIPE à l'écriture vers l'imprimante" +msgstr "Erreur SIGPIPE à l'écriture vers l'imprimante." #: ../src/print.c:1991 #, c-format @@ -4652,7 +4652,7 @@ #: ../src/remote.c:643 msgid "toggle full screen" -msgstr "bascule le mode plein écran" +msgstr "bascule en mode plein écran" #: ../src/remote.c:644 msgid "start full screen" @@ -4664,7 +4664,7 @@ #: ../src/remote.c:646 msgid "toggle slide show" -msgstr "bascule le mode diaporama" +msgstr "bascule en mode diaporama" #: ../src/remote.c:647 msgid "start slide show" @@ -4721,7 +4721,7 @@ #: ../src/remote.c:781 #, c-format msgid "Remote %s not running, starting..." -msgstr "Pas de %s distant, lancement ..." +msgstr "Pas de %s distant, lancement..." #: ../src/remote.c:917 msgid "Remote not available\n" @@ -4799,7 +4799,7 @@ #: ../src/search.c:318 msgid "Searching..." -msgstr "Recherche ..." +msgstr "Recherche..." #: ../src/search.c:2166 msgid "File not found" @@ -4900,7 +4900,7 @@ #: ../src/thumb.c:396 msgid "Thumbnail image in cache failed to load, trying to recreate.\n" -msgstr "Impossible de charger la vignette depuis le cache, regénération.\n" +msgstr "Impossible de charger la vignette depuis le cache, régénération.\n" #: ../src/trash.c:80 ../src/utilops.c:2428 ../src/utilops.c:2439 #: ../src/utilops.c:2496 @@ -4947,8 +4947,8 @@ "Safe delete: %s%s\n" "Trash: %s" msgstr "" -"Suppression récupérable: %s%s\n" -"Poubelle: %s" +"Suppression récupérable : %s%s\n" +"Poubelle : %s" #: ../src/trash.c:210 #, c-format @@ -4977,11 +4977,11 @@ #: ../src/ui_bookmark.c:403 msgid "_Properties..." -msgstr "_Propriétés ..." +msgstr "_Propriétés..." #: ../src/ui_bookmark.c:409 msgid "_Remove" -msgstr "Éfface_r" +msgstr "Efface_r" #: ../src/ui_fileops.c:94 msgid "" @@ -5030,7 +5030,7 @@ "Preferred encoding appears to be UTF-8, however the file:\n" msgstr "" "\n" -"L'encodage préféré semble être UTF-8, mais le fichier:\n" +"L'encodage préféré semble être UTF-8, mais le fichier :\n" #: ../src/ui_fileops.c:109 ../src/ui_fileops.c:112 ../src/ui_fileops.c:114 msgid "[name not displayable]" @@ -5096,7 +5096,7 @@ #: ../src/ui_pathsel.c:759 msgid "Error creating folder" -msgstr "Erreur pendant le création du dossier" +msgstr "Erreur pendant la création du dossier" #: ../src/ui_pathsel.c:980 msgid "All Files" @@ -5137,7 +5137,7 @@ "\n" "%s" msgstr "" -"La suppression du contenu du dossier a échouée lors de ce fichier:\n" +"La suppression du contenu du dossier a échoué lors de ce fichier :\n" "\n" "%s" @@ -5161,7 +5161,7 @@ #: ../src/utilops.c:988 msgid "This operation can't continue:" -msgstr "Cette opération ne peut continuer:" +msgstr "Cette opération ne peut continuer :" #: ../src/utilops.c:1351 ../src/utilops.c:1464 ../src/utilops.c:1848 msgid "Discard changes" @@ -5235,11 +5235,11 @@ #: ../src/utilops.c:1757 #, c-format msgid "File: '%s'\n" -msgstr "Fichier: « %s »\n" +msgstr "Fichier : « %s »\n" #: ../src/utilops.c:1762 msgid "with sidecar files:\n" -msgstr "avec les fichiers sidecars:\n" +msgstr "avec les fichiers sidecars :\n" #: ../src/utilops.c:1768 #, c-format @@ -5252,7 +5252,7 @@ "Status: " msgstr "" "\n" -"Etat:" +"État :" #: ../src/utilops.c:1784 msgid "no problem detected" @@ -5407,7 +5407,7 @@ "\n" "This folder contains subfolders which must be moved before it can be deleted." msgstr "" -"Impossible de supprimer le dossier:\n" +"Impossible de supprimer le dossier :\n" "\n" "%s\n" "\n" @@ -5416,7 +5416,7 @@ #: ../src/utilops.c:2464 msgid "Subfolders:" -msgstr "Sous-dossiers:" +msgstr "Sous-dossiers :" #: ../src/utilops.c:2485 msgid "Delete folder?" @@ -5424,7 +5424,7 @@ #: ../src/utilops.c:2486 msgid "The folder contains these files:" -msgstr "Ce dossier contient ces fichiers:" +msgstr "Ce dossier contient ces fichiers :" #: ../src/utilops.c:2487 msgid "" @@ -5476,15 +5476,15 @@ #: ../src/view_dir.c:655 msgid "Find _duplicates..." -msgstr "Rechercher les _doublons ..." +msgstr "Rechercher les _doublons..." #: ../src/view_dir.c:657 msgid "Find duplicates recursive..." -msgstr "Rechercher récursivement les doublons ..." +msgstr "Rechercher récursivement les doublons..." #: ../src/view_dir.c:662 msgid "_New folder..." -msgstr "_Nouveau dossier ..." +msgstr "_Nouveau dossier..." #: ../src/view_dir.c:676 ../src/view_file.c:606 msgid "View as _List" diff -Nru geeqie-1.0/po/ru.po geeqie-1.1/po/ru.po --- geeqie-1.0/po/ru.po 2010-02-17 21:21:23.000000000 +0000 +++ geeqie-1.1/po/ru.po 2012-08-12 20:13:40.000000000 +0000 @@ -9,7 +9,7 @@ # Edited by Alexandre Prokoudine , 2008. # Edited by Denis Silakov , 2010. # -# $Id: ru.po 1904 2010-02-16 19:55:35Z zas_ $ +# $Id$ # msgid "" msgstr "" diff -Nru geeqie-1.0/po/sv.po geeqie-1.1/po/sv.po --- geeqie-1.0/po/sv.po 2010-02-17 21:21:23.000000000 +0000 +++ geeqie-1.1/po/sv.po 2012-08-12 20:13:40.000000000 +0000 @@ -1,3226 +1,4529 @@ # Swedish translations for gqview package -# Svenska versttningar fr paketet gqview. +# Svenska översättningar för paketet gqview. # Copyright (C) 2003 John Ellis # This file is distributed under the same license as the gqview package. -# Hans fverbeck , 2003-2005. -# +# Hans Öfverbeck , 2003-2005. +# Tore Ericsson , 2011. msgid "" msgstr "" -"Project-Id-Version: gqview 1.5.7\n" +"Project-Id-Version: geeqie 1.x\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-05-13 22:14+0200\n" -"PO-Revision-Date: 2005-02-01 23:26+0100\n" -"Last-Translator: Hans Ofverbeck \n" -"Language-Team: Swedish \n" +"POT-Creation-Date: 2011-01-14 16:16+0100\n" +"PO-Revision-Date: 2011-02-14 16:11+0100\n" +"Last-Translator: Tore Ericsson \n" +"Language-Team: Swedish\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ISO-8859-1\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: Swedish\n" +"X-Poedit-Country: SWEDEN\n" -#: src/bar_exif.c:444 -msgid "Tag" -msgstr "Tagg" +#: ../geeqie.desktop.in.h:1 +msgid "Geeqie" +msgstr "Geeqie" + +#: ../geeqie.desktop.in.h:2 +msgid "Image Viewer" +msgstr "Bildvisare" + +#: ../geeqie.desktop.in.h:3 +msgid "View and manage images" +msgstr "Visa och hantera bilder" + +#: ../plugins/import/geeqie-import-geeqie.desktop.in.h:1 +msgid "Import Geeqie 1.0alphaX metadata" +msgstr "Importera metadata från Geeqie 1.0alphaX" + +#: ../plugins/import/geeqie-import-gqview.desktop.in.h:1 +msgid "Import GQView metadata" +msgstr "Importera metadata från Gqview" + +#: ../plugins/rotate/rotate.desktop.in.h:1 +msgid "Apply the orientation to image content" +msgstr "Välj _denna som bildens orientering" + +#: ../plugins/symlink/symlink.desktop.in.h:1 +msgid "Symlink" +msgstr "_Länka till..." + +#: ../plugins/ufraw/geeqie-ufraw.desktop.in.h:1 +msgid "UFRaw Batch" +msgstr "UFRaw batch" + +#: ../plugins/ufraw/geeqie-ufraw-id.desktop.in.h:1 +msgid "Edit UFRaw ID file" +msgstr "Redigera ID-filen till UFRaw" + +#: ../plugins/ufraw/geeqie-ufraw-recursive.desktop.in.h:1 +msgid "UFRaw Batch recursive" +msgstr "UFRaw batch, rekursivt" + +#: ../src/advanced_exif.c:328 +#: ../src/cache_maint.c:1304 +#: ../src/preferences.c:93 +#: ../src/preferences.c:1595 +msgid "Metadata" +msgstr "Metadata" + +#: ../src/advanced_exif.c:376 +#: ../src/preferences.c:1512 +msgid "Description" +msgstr "Beskrivning" + +#: ../src/advanced_exif.c:377 +msgid "Value" +msgstr "Värde" -#: src/bar_exif.c:445 src/dupe.c:2646 src/dupe.c:3167 src/print.c:3232 -#: src/search.c:2760 src/utilops.c:2971 src/view_file_list.c:1820 +#: ../src/advanced_exif.c:378 +#: ../src/desktop_file.c:515 +#: ../src/dupe.c:2651 +#: ../src/dupe.c:3173 +#: ../src/print.c:3209 +#: ../src/search.c:2852 +#: ../src/utilops.c:462 +#: ../src/view_file_list.c:2046 msgid "Name" msgstr "Namn" -#: src/bar_exif.c:446 -msgid "Value" -msgstr "Vrde" +#: ../src/advanced_exif.c:379 +msgid "Tag" +msgstr "Tagg" -#: src/bar_exif.c:447 +#: ../src/advanced_exif.c:380 msgid "Format" msgstr "Format" -#: src/bar_exif.c:448 +#: ../src/advanced_exif.c:381 msgid "Elements" msgstr "Element" -#: src/bar_exif.c:449 src/preferences.c:1131 -msgid "Description" -msgstr "Beskrivning" +#. default sidebar +#: ../src/bar.c:167 +msgid "Histogram" +msgstr "Histogram" + +#: ../src/bar.c:168 +msgid "Title" +msgstr "Rubrik" + +#: ../src/bar.c:169 +#: ../src/search.c:2775 +msgid "Keywords" +msgstr "Nyckelord" + +#: ../src/bar.c:170 +#: ../src/search.c:2787 +msgid "Comment" +msgstr "Kommentar" -#: src/bar_exif.c:576 src/info.c:125 src/preferences.c:1274 +#: ../src/bar.c:171 msgid "Exif" msgstr "Exif" -#: src/bar_exif.c:650 -msgid "Advanced view" -msgstr "Avancerad vy" - -#: src/bar_info.c:35 -msgid "Favorite" -msgstr "Favorit" - -#: src/bar_info.c:36 -msgid "Todo" -msgstr "Att gra" +#. other pre-configured panes +#: ../src/bar.c:173 +msgid "File info" +msgstr "Filinformation" + +#: ../src/bar.c:174 +msgid "Location and GPS" +msgstr "Lokalisering och GPS" -#: src/bar_info.c:37 -msgid "People" -msgstr "Folk" +#: ../src/bar.c:175 +#: ../src/exif.c:347 +msgid "Copyright" +msgstr "Copyright" -#: src/bar_info.c:38 -msgid "Places" -msgstr "Platser" +#: ../src/bar.c:178 +#: ../src/bar_gps.c:768 +msgid "GPS Map" +msgstr "GPS-karta" + +#: ../src/bar.c:297 +msgid "Move to _top" +msgstr "Flytta _överst" -#: src/bar_info.c:39 -msgid "Art" -msgstr "Konst" +#: ../src/bar.c:298 +#: ../src/ui_bookmark.c:405 +msgid "Move _up" +msgstr "Flytta _upp" -#: src/bar_info.c:40 -msgid "Nature" -msgstr "Natur" +#: ../src/bar.c:299 +#: ../src/ui_bookmark.c:407 +msgid "Move _down" +msgstr "Flytta _ned" -#: src/bar_info.c:41 -msgid "Possessions" -msgstr "godelar" - -#: src/bar_info.c:801 -msgid "Keyword Presets" -msgstr "Frinstllda nyckelord" - -#: src/bar_info.c:804 -msgid "Favorite keywords list" -msgstr "Lista ver favoritnyckelord." +#: ../src/bar.c:300 +msgid "Move to _bottom" +msgstr "Flytta n_ederst" -#: src/bar_info.c:1301 src/info.c:189 src/search.c:2699 -msgid "Keywords" -msgstr "Nyckelord" +#: ../src/bar.c:302 +msgid "Remove" +msgstr "Ta bort" -#: src/bar_info.c:1315 src/info.c:825 src/pan-view.c:1542 src/print.c:2632 -msgid "Filename:" -msgstr "Filnamn:" +#: ../src/bar_comment.c:195 +msgid "Add text to selected files" +msgstr "Lägg text till de valda filerna" + +#: ../src/bar_comment.c:196 +msgid "Replace existing text in selected files" +msgstr "Ersätt befintlig text i de valda filerna" + +#: ../src/bar_exif.c:213 +msgid "" +msgstr "" + +#: ../src/bar_exif.c:546 +#: ../src/bar_exif.c:556 +msgid "Configure entry" +msgstr "Konfigurera alternativ" -#: src/bar_info.c:1316 src/info.c:391 -msgid "File date:" -msgstr "Fildatum:" +#. for the pane +#: ../src/bar_exif.c:546 +#: ../src/bar_exif.c:556 +#: ../src/bar_exif.c:629 +msgid "Add entry" +msgstr "Lägg till" -#: src/bar_info.c:1336 -msgid "Keywords:" +#: ../src/bar_exif.c:562 +msgid "Key:" msgstr "Nyckelord:" -#: src/bar_info.c:1404 -msgid "Comment:" -msgstr "Kommentar:" - -#: src/bar_info.c:1428 -msgid "Edit favorite keywords list." -msgstr "Redigera listan ver favoritnyckelord." +#: ../src/bar_exif.c:571 +msgid "Title:" +msgstr "Rubrik:" -#: src/bar_info.c:1432 -msgid "Add keywords to selected files" -msgstr "Lgg till nyckelord till de valda filerna" +#: ../src/bar_exif.c:580 +msgid "Show only if set" +msgstr "Visa endast om till" -#: src/bar_info.c:1435 -#, fuzzy -msgid "Add keywords to selected files, replacing existing ones" -msgstr "Lgg till nyckelord till de valda filerna, skriv ver befintliga." +#: ../src/bar_exif.c:581 +msgid "Editable (supported only for XMP)" +msgstr "Redigerbar (endast XMP)" -#: src/bar_info.c:1438 -#, fuzzy -msgid "Add comment to selected files" -msgstr "Lgg till nyckelord till de valda filerna" +#. for the entry +#: ../src/bar_exif.c:617 +#, c-format +msgid "Configure \"%s\"" +msgstr "Konfigurera \"%s\"" -#: src/bar_info.c:1441 -#, fuzzy -msgid "Add comment to selected files, replacing existing one" -msgstr "Lgg till nyckelord till de valda filerna, skriv ver befintliga." +#: ../src/bar_exif.c:618 +#: ../src/bar_keywords.c:1207 +#, c-format +msgid "Remove \"%s\"" +msgstr "Ta bort \"%s\"" + +#: ../src/bar_exif.c:630 +msgid "Show hidden entries" +msgstr "Visa dolda" + +#: ../src/bar_gps.c:499 +#, c-format +msgid "Zoom %i" +msgstr "Zooma %i" + +#: ../src/bar_gps.c:517 +#, c-format +msgid "Zoom level %i" +msgstr "Zoom-nivå %i" + +#: ../src/bar_gps.c:522 +msgid "Loading map" +msgstr "Laddar karta" -#: src/bar_info.c:1446 -msgid "Save comment now" -msgstr "Spara kommentar nu" +#: ../src/bar_gps.c:584 +msgid "Enable markers" +msgstr "Aktivera markörer" -#: src/bar_sort.c:218 -#, fuzzy, c-format +#: ../src/bar_gps.c:586 +msgid "Centre map on marker" +msgstr "Centrera kartan vid markören" + +#: ../src/bar_gps.c:609 msgid "" -"Unable to remove symbolic link:\n" -"%s" +"Move map centre to marker\n" +" is disabled" msgstr "" -"Kan inte flytta filen:\n" -"%s\n" -"till:\n" -"%s" +"Centrera kartan vid markören\n" +" -funtionen avstängd" -#: src/bar_sort.c:219 -msgid "Unlink failed" -msgstr "Borttagning av lnk misslyckades" - -#: src/bar_sort.c:300 -#, fuzzy, c-format +#: ../src/bar_gps.c:614 msgid "" -"Unable to create symbolic link:\n" -"%s" +"Move map centre to marker\n" +" is enabled" msgstr "" -"Kan inte skapa mappen:\n" -"%s" +"Centrera kartan vid markören\n" +" -funtionen påslagen" + +# Shouldn't it be "Map centering"? +#: ../src/bar_gps.c:623 +msgid "Map Centreing" +msgstr "Kartcentrering" + +#. use the same strings as in layout_util.c +#: ../src/bar_histogram.c:250 +#: ../src/layout_util.c:1404 +msgid "Histogram on _Red" +msgstr "Histogram, _rött" + +#: ../src/bar_histogram.c:251 +#: ../src/layout_util.c:1405 +msgid "Histogram on _Green" +msgstr "Histogram, _grönt" + +#: ../src/bar_histogram.c:252 +#: ../src/layout_util.c:1406 +msgid "Histogram on _Blue" +msgstr "Histogram, _blått" + +#: ../src/bar_histogram.c:253 +#: ../src/layout_util.c:1407 +msgid "_Histogram on RGB" +msgstr "_Histogram, RGB" + +#: ../src/bar_histogram.c:254 +#: ../src/layout_util.c:1408 +msgid "Histogram on _Value" +msgstr "Histogram, v_ärden" -#: src/bar_sort.c:301 -msgid "Link failed" -msgstr "Lnkning misslyckades" +#: ../src/bar_histogram.c:258 +#: ../src/layout_util.c:1412 +msgid "Li_near Histogram" +msgstr "L_injärt histogram" -#: src/bar_sort.c:452 +#: ../src/bar_histogram.c:259 +msgid "L_og Histogram" +msgstr "_Logaritmiskt histogram" + +#: ../src/bar_keywords.c:414 +msgid "Add keywords to selected files" +msgstr "Lägg till nyckelord till de valda filerna" + +#: ../src/bar_keywords.c:415 +msgid "Replace existing keywords in selected files" +msgstr "Byt ut befintliga nyckelord i de valda filerna" + +#: ../src/bar_keywords.c:888 +msgid "Edit keyword" +msgstr "Redigera nyckelord" + +#: ../src/bar_keywords.c:888 +msgid "Add keywords" +msgstr "Lägg till nyckelord" + +#: ../src/bar_keywords.c:895 +msgid "Configure keyword" +msgstr "Konfigurera nyckelord" + +#: ../src/bar_keywords.c:895 +#: ../src/bar_keywords.c:1161 +msgid "Add keyword" +msgstr "Lägg till nyckelord" + +#: ../src/bar_keywords.c:901 +msgid "Keyword:" +msgstr "Nyckelord:" + +#: ../src/bar_keywords.c:910 +msgid "Keyword type:" +msgstr "Nyckelordstyp:" + +#: ../src/bar_keywords.c:912 +msgid "Active keyword" +msgstr "Aktivt nyckelord" + +#: ../src/bar_keywords.c:915 +msgid "Helper" +msgstr "Hjälpfuntion" + +#: ../src/bar_keywords.c:1165 +msgid "Add keyword to all selected images" +msgstr "Lägg till nyckelord till alla valda bilder" + +#: ../src/bar_keywords.c:1185 +#, c-format +msgid "Hide \"%s\"" +msgstr "Göm \"%s\"" + +#: ../src/bar_keywords.c:1192 +#, c-format +msgid "Mark %d" +msgstr "Märke %d" + +#: ../src/bar_keywords.c:1197 +#, c-format +msgid "Connect \"%s\" to mark" +msgstr "Förbind \"%s\" med markören" + +#: ../src/bar_keywords.c:1204 +#, c-format +msgid "Edit \"%s\"" +msgstr "Redigera \"%s\"" + +#: ../src/bar_keywords.c:1214 +#, c-format +msgid "Disconnect \"%s\" from mark %s" +msgstr "Lösgör \"%s\" från markören %s" + +#. for the pane +#: ../src/bar_keywords.c:1226 +#: ../src/bar_keywords.c:1235 +msgid "Expand checked" +msgstr "Expandera förkryssade" + +#: ../src/bar_keywords.c:1227 +#: ../src/bar_keywords.c:1236 +msgid "Collapse unchecked" +msgstr "Vik ihop ej förkryssade" + +#: ../src/bar_keywords.c:1228 +#: ../src/bar_keywords.c:1237 +msgid "Hide unchecked" +msgstr "Göm ej förkryssade" + +#: ../src/bar_keywords.c:1229 +msgid "Show all" +msgstr "Visa alla" + +#: ../src/bar_keywords.c:1232 +msgid "On any change" +msgstr "Vid varje förändring" + +#: ../src/bar_sort.c:449 #, c-format msgid "" "The collection:\n" "%s\n" "already exists." msgstr "" -"Albumet:\n" +"Kollektionen:\n" "%s\n" "finns redan." -#: src/bar_sort.c:453 +#: ../src/bar_sort.c:450 msgid "Collection exists" -msgstr "Albumet finns" +msgstr "Kollektionen finns" -#: src/bar_sort.c:467 src/collect.c:1083 src/collect-dlg.c:85 +#: ../src/bar_sort.c:464 +#: ../src/collect.c:1098 +#: ../src/collect-dlg.c:85 #, c-format msgid "" "Failed to save the collection:\n" "%s" msgstr "" -"Kunde inte spara albumet:\n" +"Kunde inte spara kollektionen:\n" "%s" -#: src/bar_sort.c:468 src/collect.c:1084 src/collect-dlg.c:86 +#: ../src/bar_sort.c:465 +#: ../src/collect.c:1099 +#: ../src/collect-dlg.c:86 msgid "Save Failed" msgstr "Lyckades inte spara" -#: src/bar_sort.c:502 src/bar_sort.c:628 +#: ../src/bar_sort.c:500 +#: ../src/bar_sort.c:670 msgid "Add Bookmark" -msgstr "Lgg till bokmrke" +msgstr "Lägg till bokmärke" -#: src/bar_sort.c:506 +#: ../src/bar_sort.c:504 msgid "Add Collection" -msgstr "Lgg till album" +msgstr "Lägg till kollektion" -#: src/bar_sort.c:523 src/ui_bookmark.c:601 +#: ../src/bar_sort.c:521 +#: ../src/ui_bookmark.c:288 msgid "Name:" msgstr "Namn:" -#: src/bar_sort.c:585 +#: ../src/bar_sort.c:597 msgid "Sort Manager" msgstr "Sorteringshanterare" -#: src/bar_sort.c:594 src/pan-view.c:2395 src/ui_pathsel.c:1103 +#: ../src/bar_sort.c:606 +#: ../src/pan-view.c:2417 +#: ../src/ui_pathsel.c:1099 msgid "Folders" msgstr "Mappar" -#: src/bar_sort.c:595 src/main.c:567 +#: ../src/bar_sort.c:607 +#: ../src/options.c:140 msgid "Collections" -msgstr "Album" +msgstr "Kolllektioner" -#: src/bar_sort.c:603 src/utilops.c:1177 +#: ../src/bar_sort.c:615 +#: ../src/utilops.c:2124 msgid "Copy" msgstr "Kopiera" -#: src/bar_sort.c:606 src/utilops.c:1191 +#: ../src/bar_sort.c:618 +#: ../src/utilops.c:2075 msgid "Move" msgstr "Flytta" -#: src/bar_sort.c:609 -msgid "Link" -msgstr "Lnka" - -#: src/bar_sort.c:615 +#: ../src/bar_sort.c:657 msgid "Add image" -msgstr "Lgg till bild" +msgstr "Lägg till bild" -#: src/bar_sort.c:618 +#: ../src/bar_sort.c:660 msgid "Add selection" -msgstr "Lgg till markering" +msgstr "Lägg till markering" -#: src/bar_sort.c:631 +#: ../src/bar_sort.c:673 msgid "Undo last image" -msgstr "ngra senaste bild" +msgstr "Ångra senaste bild" -#: src/cache.c:175 -#, fuzzy, c-format +#: ../src/cache.c:174 +#, c-format msgid "" "error saving sim cache data: %s\n" "error: %s\n" -msgstr "fel vid sparande av konfigurationsfil: %s\n" +msgstr "" +"fel vid spara sim-cache-data: %s\n" +"fel: %s\n" -#: src/cache_maint.c:127 src/cache_maint.c:689 src/cache_maint.c:902 -#: src/editors.c:717 +#: ../src/cache_maint.c:129 +#: ../src/cache_maint.c:730 +#: ../src/cache_maint.c:954 +#: ../src/editors.c:1176 msgid "done" -msgstr "frdig" +msgstr "färdig" -#: src/cache_maint.c:306 +#: ../src/cache_maint.c:311 msgid "Removing old metadata..." msgstr "Tar bort gammal metadata..." -#: src/cache_maint.c:310 +#: ../src/cache_maint.c:315 msgid "Clearing cached thumbnails..." -msgstr "Tmmer cachade miniatyrbilder..." +msgstr "Tömmer cachade miniatyrbilder..." -#: src/cache_maint.c:314 src/cache_maint.c:1056 +#: ../src/cache_maint.c:319 +#: ../src/cache_maint.c:1116 msgid "Removing old thumbnails..." msgstr "Tar bort gamla miniatyrbilder..." -#: src/cache_maint.c:317 src/cache_maint.c:1059 +#: ../src/cache_maint.c:322 +#: ../src/cache_maint.c:1119 msgid "Maintenance" -msgstr "Underhll" +msgstr "Underhåll" -#: src/cache_maint.c:800 src/utilops.c:1107 +#: ../src/cache_maint.c:845 msgid "Invalid folder" msgstr "Ogiltig mapp" -#: src/cache_maint.c:801 +#: ../src/cache_maint.c:846 msgid "The specified folder can not be found." msgstr "Den angivna mappen kan inte hittas." -#: src/cache_maint.c:829 src/cache_maint.c:843 src/cache_maint.c:1227 +#: ../src/cache_maint.c:877 +#: ../src/cache_maint.c:891 +#: ../src/cache_maint.c:1295 msgid "Create thumbnails" msgstr "Skapa miniatyrbilder" -#: src/cache_maint.c:837 src/cache_maint.c:1066 +#: ../src/cache_maint.c:885 +#: ../src/cache_maint.c:1126 msgid "S_tart" msgstr "_Starta" -#: src/cache_maint.c:850 src/preferences.c:1407 +#: ../src/cache_maint.c:898 +#: ../src/preferences.c:1782 msgid "Folder:" msgstr "Mapp:" -#: src/cache_maint.c:853 +#: ../src/cache_maint.c:901 msgid "Select folder" msgstr "Markera mapp" -#: src/cache_maint.c:857 +#: ../src/cache_maint.c:905 msgid "Include subfolders" msgstr "Inkludera undermappar" -#: src/cache_maint.c:858 +#: ../src/cache_maint.c:906 msgid "Store thumbnails local to source images" -msgstr "Lagra miniatyrbilder i nrheten av originalbilder" +msgstr "Lagra miniatyrbilder i närheten av originalbilder" -#: src/cache_maint.c:867 src/cache_maint.c:1075 +#: ../src/cache_maint.c:915 +#: ../src/cache_maint.c:1135 msgid "click start to begin" -msgstr "tryck p starta fr att brja" +msgstr "tryck på starta för att börja" -#: src/cache_maint.c:1005 src/editors.c:647 +#: ../src/cache_maint.c:1062 +#: ../src/editors.c:1102 msgid "running..." -msgstr "kr..." +msgstr "kör..." -#: src/cache_maint.c:1051 +#: ../src/cache_maint.c:1111 msgid "Clearing thumbnails..." -msgstr "Tmmer miniatyrbilder..." +msgstr "Tömmer miniatyrbilder..." -#: src/cache_maint.c:1117 src/cache_maint.c:1120 src/cache_maint.c:1202 -#: src/cache_maint.c:1222 +#: ../src/cache_maint.c:1177 +#: ../src/cache_maint.c:1180 +#: ../src/cache_maint.c:1273 +#: ../src/cache_maint.c:1290 msgid "Clear cache" -msgstr "Tm cache" +msgstr "Töm cache" -#: src/cache_maint.c:1121 +#: ../src/cache_maint.c:1181 msgid "" "This will remove all thumbnails that have\n" "been saved to disk, continue?" msgstr "" "Detta kommer att ta bort alla miniatyrbilder\n" -"som sparats p hrddisken, fortstt?" +"som sparats på hårddisken, fortsätt?" -#: src/cache_maint.c:1172 -#, fuzzy +#: ../src/cache_maint.c:1223 +#, c-format +msgid "Location: %s" +msgstr "Plats: %s" + +#: ../src/cache_maint.c:1248 msgid "Cache Maintenance" -msgstr "Cache-hantering - Geeqie" +msgstr "Cachehantering" -#: src/cache_maint.c:1184 +#: ../src/cache_maint.c:1258 msgid "Cache and Data Maintenance" -msgstr "Cache- och Datahantering" +msgstr "Underhåll av cachedata" -#: src/cache_maint.c:1188 -#, fuzzy +#: ../src/cache_maint.c:1262 msgid "Thumbnail cache" -msgstr "Geeqie miniatyrbildscache" +msgstr "Miniatyrbildscache" -#: src/cache_maint.c:1190 src/cache_maint.c:1210 src/cache_maint.c:1238 -#: src/pan-view.c:1544 src/pan-view.c:2384 src/preferences.c:1333 -#: src/utilops.c:1747 -msgid "Location:" -msgstr "Plats:" - -#: src/cache_maint.c:1197 src/cache_maint.c:1217 src/cache_maint.c:1245 +#: ../src/cache_maint.c:1268 +#: ../src/cache_maint.c:1285 +#: ../src/cache_maint.c:1310 msgid "Clean up" -msgstr "Stda" +msgstr "Städa" -#: src/cache_maint.c:1200 src/cache_maint.c:1220 +#: ../src/cache_maint.c:1271 +#: ../src/cache_maint.c:1288 msgid "Remove orphaned or outdated thumbnails." -msgstr "Ta bort vergivna eller frldrade miniatyrbilder." +msgstr "Ta bort övergivna eller föråldrade miniatyrbilder" -#: src/cache_maint.c:1205 src/cache_maint.c:1225 +#: ../src/cache_maint.c:1276 +#: ../src/cache_maint.c:1293 msgid "Delete all cached thumbnails." -msgstr "Radera alla cachade miniatyrbilder." +msgstr "Radera alla cachade miniatyrbilder" -#: src/cache_maint.c:1208 +#: ../src/cache_maint.c:1279 msgid "Shared thumbnail cache" msgstr "Delad miniatyrbildscache" -#: src/cache_maint.c:1231 +#: ../src/cache_maint.c:1299 msgid "Render" msgstr "Skapa" -#: src/cache_maint.c:1234 +#: ../src/cache_maint.c:1302 msgid "Render thumbnails for a specific folder." -msgstr "Skapa miniatyrbilder fr en specifik mapp." - -#: src/cache_maint.c:1236 -msgid "Metadata" -msgstr "Metadata" +msgstr "Skapa miniatyrbilder för en specifik mapp" -#: src/cache_maint.c:1248 +#: ../src/cache_maint.c:1313 msgid "Remove orphaned keywords and comments." -msgstr "Ta bort vergivna nyckelord och kommentarer." - -#: src/cellrenderericon.c:127 -msgid "Pixbuf Object" -msgstr "" - -#: src/cellrenderericon.c:128 -msgid "The pixbuf to render" -msgstr "" - -#: src/cellrenderericon.c:135 src/print.c:3439 -msgid "Text" -msgstr "Text" - -#: src/cellrenderericon.c:136 -msgid "Text to render" -msgstr "" - -#: src/cellrenderericon.c:143 -#, fuzzy -msgid "Background color" -msgstr "Svart bakgrund" - -#: src/cellrenderericon.c:144 -#, fuzzy -msgid "Background color as a GdkColor" -msgstr "Svart bakgrund" - -#: src/cellrenderericon.c:151 -#, fuzzy -msgid "Foreground color" -msgstr "Svart bakgrund" - -#: src/cellrenderericon.c:152 -msgid "Foreground color as a GdkColor" -msgstr "" - -#: src/cellrenderericon.c:159 -msgid "Focus" -msgstr "" - -#: src/cellrenderericon.c:160 -msgid "Draw focus indicator" -msgstr "" - -#: src/cellrenderericon.c:167 -msgid "Fixed width" -msgstr "" - -#: src/cellrenderericon.c:168 -msgid "Width of cell" -msgstr "" - -#: src/cellrenderericon.c:176 -msgid "Fixed height" -msgstr "" - -#: src/cellrenderericon.c:177 -msgid "Height of icon excluding text" -msgstr "" - -#: src/cellrenderericon.c:185 -#, fuzzy -msgid "Background set" -msgstr "Svart bakgrund" - -#: src/cellrenderericon.c:186 -msgid "Whether this tag affects the background color" -msgstr "" - -#: src/cellrenderericon.c:193 -msgid "Foreground set" -msgstr "" - -#: src/cellrenderericon.c:194 -msgid "Whether this tag affects the foreground color" -msgstr "" - -#: src/cellrenderericon.c:201 -#, fuzzy -msgid "Show text" -msgstr "Visa _filnamnstext" - -#: src/cellrenderericon.c:202 -msgid "Whether the text is displayed" -msgstr "" +msgstr "Ta bort övergivna nyckelord och kommentarer" -#: src/collect.c:353 src/image.c:178 src/image-overlay.c:437 -#: src/image-overlay.c:512 -#, c-format +#. When does this occur ?? +#: ../src/collect.c:366 +#: ../src/image.c:160 +#: ../src/image-overlay.c:512 +#: ../src/image-overlay.c:591 msgid "Untitled" -msgstr "Namnls" +msgstr "Namnlös" -#: src/collect.c:357 +#: ../src/collect.c:370 #, c-format msgid "Untitled (%d)" -msgstr "Namnls (%d)" +msgstr "Namnlös (%d)" -#: src/collect.c:1002 -#, fuzzy, c-format +#: ../src/collect.c:1016 +#, c-format msgid "%s - Collection - %s" -msgstr "%s - Geeqie Album" +msgstr "%s - Kollektion - %s" -#: src/collect.c:1120 src/collect.c:1124 +#: ../src/collect.c:1135 +#: ../src/collect.c:1139 msgid "Close collection" -msgstr "Stng album" +msgstr "Stäng kollektionen" -#: src/collect.c:1125 +#: ../src/collect.c:1140 msgid "" "Collection has been modified.\n" "Save first?" msgstr "" -"Albumet har ndrats.\n" -"Spara frst?" +"Kollektionen är ändrad.\n" +"Spara ändringen?" -#: src/collect.c:1128 +#: ../src/collect.c:1143 msgid "_Discard" msgstr "_Kasta bort" -#: src/collect-dlg.c:59 +#: ../src/collect-dlg.c:59 #, c-format msgid "" "Specified path:\n" "%s\n" "is a folder, collections are files" msgstr "" -"Angiven skvg:\n" +"Angiven sökväg:\n" "%s\n" -"r en mapp, album r filer" +"är en mapp, kollektioner är filer" -#: src/collect-dlg.c:60 +#: ../src/collect-dlg.c:60 msgid "Invalid filename" msgstr "Ogiltigt filnamn" -#: src/collect-dlg.c:69 +#: ../src/collect-dlg.c:69 msgid "Overwrite File" -msgstr "Skriv ver fil" +msgstr "Skriv över fil" -#: src/collect-dlg.c:74 +#: ../src/collect-dlg.c:74 msgid "Overwrite existing file?" -msgstr "Skriv ver befintlig fil?" +msgstr "Skriv över befintlig fil?" -#: src/collect-dlg.c:76 src/utilops.c:660 src/utilops.c:990 src/utilops.c:1902 -#: src/utilops.c:2622 +#: ../src/collect-dlg.c:76 msgid "_Overwrite" -msgstr "Skriv _ver" +msgstr "Skriv _över" + +#: ../src/collect-dlg.c:127 +#, c-format +msgid "No such file '%s'." +msgstr "Filen saknas - '%s'." + +#: ../src/collect-dlg.c:132 +#, c-format +msgid "'%s' is a directory, not a collection file." +msgstr "'%s' är en mapp, ingen kollektionsfil." + +#: ../src/collect-dlg.c:137 +#, c-format +msgid "You do not have read permissions on the file '%s'." +msgstr "Du har inte rätt till läsning av filen '%s'." -#: src/collect-dlg.c:171 +#: ../src/collect-dlg.c:143 +msgid "Can not open collection file" +msgstr "Kan inte öppna kollektionsfilen" + +#: ../src/collect-dlg.c:195 msgid "Save collection" -msgstr "Spara album" +msgstr "Spara kollektionen" -#: src/collect-dlg.c:178 +#: ../src/collect-dlg.c:202 msgid "Open collection" -msgstr "ppna album" +msgstr "Öppna kollektion" -#: src/collect-dlg.c:186 +#: ../src/collect-dlg.c:210 msgid "Append collection" -msgstr "Komplettera album" +msgstr "Lägg till i kollektionen" -#: src/collect-dlg.c:187 +#: ../src/collect-dlg.c:211 msgid "_Append" msgstr "_Komplettera" -#: src/collect-dlg.c:205 +#: ../src/collect-dlg.c:228 msgid "Collection Files" -msgstr "Albumfiler" +msgstr "Kollektionsfiler" -#: src/collect-dlg.c:223 +#: ../src/collect-dlg.c:245 msgid "Collection empty" -msgstr "Tomt album" +msgstr "Tom kollektion" -#: src/collect-dlg.c:224 +#: ../src/collect-dlg.c:246 msgid "The current collection is empty, save aborted." -msgstr "Detta album r tomt, frsket att spara avbrts." +msgstr "Kollektionen är tom, kan inte sparas." -#: src/collect-io.c:343 -#, fuzzy, c-format +#: ../src/collect-io.c:346 +#, c-format msgid "failed to open collection (write) \"%s\"\n" -msgstr "" -"Kunde inte spara albumet:\n" -"%s" +msgstr "kunde inte öppna kollektion (för skrivning) \"%s\"\n" -#: src/collect-io.c:368 -#, fuzzy, c-format +#: ../src/collect-io.c:371 +#, c-format msgid "" "error saving collection file: %s\n" "error: %s\n" -msgstr "fel vid sparande av konfigurationsfil: %s\n" - -#: src/collect-table.c:167 src/layout.c:377 src/layout_util.c:965 -msgid "Empty" -msgstr "Tom" +msgstr "" +"kunde inte spara kollektionsfil: %s\n" +"fel: %s\n" -#: src/collect-table.c:171 +#: ../src/collect-table.c:211 #, c-format -msgid "%d images (%d)" -msgstr "%d bilder (%d)" +msgid "%s, %d images (%s, %d)" +msgstr "%s, %d bilder (%s, %d)" -#: src/collect-table.c:175 +#: ../src/collect-table.c:218 #, c-format -msgid "%d images" -msgstr "%d bilder" +msgid "%s, %d images" +msgstr "%s, %d bilder" + +#: ../src/collect-table.c:223 +#: ../src/layout_util.c:1206 +#: ../src/layout_util.c:2243 +msgid "Empty" +msgstr "Tom" -#: src/collect-table.c:189 src/dupe.c:1328 src/search.c:304 -#: src/view_file_icon.c:1779 src/view_file_icon.c:1895 -#: src/view_file_list.c:915 src/view_file_list.c:1031 +#: ../src/collect-table.c:237 +#: ../src/dupe.c:1319 +#: ../src/search.c:320 +#: ../src/view_file.c:835 +#: ../src/view_file.c:942 msgid "Loading thumbs..." -msgstr "Lser in miniatyrbilder..." +msgstr "Läser in miniatyrbilder..." -#: src/collect-table.c:776 src/dupe.c:2239 src/dupe.c:2554 -#: src/layout_util.c:1042 src/search.c:983 +#: ../src/collect-table.c:870 +#: ../src/dupe.c:2246 +#: ../src/dupe.c:2559 +#: ../src/layout_util.c:1253 +#: ../src/search.c:1000 msgid "_View" msgstr "_Visa" -#: src/collect-table.c:778 src/dupe.c:2241 src/dupe.c:2556 src/img-view.c:1282 -#: src/layout_image.c:759 src/pan-view.c:2814 src/search.c:985 -#: src/view_file.c:564 +#: ../src/collect-table.c:872 +#: ../src/dupe.c:2248 +#: ../src/dupe.c:2561 +#: ../src/img-view.c:1281 +#: ../src/layout_image.c:505 +#: ../src/pan-view.c:2845 +#: ../src/search.c:1002 +#: ../src/view_file.c:588 msgid "View in _new window" -msgstr "Visa i _nytt fnster" +msgstr "Visa i _nytt fönster" -#: src/collect-table.c:781 src/dupe.c:2274 src/dupe.c:2564 src/search.c:1014 +#: ../src/collect-table.c:875 +#: ../src/dupe.c:2282 +#: ../src/dupe.c:2569 +#: ../src/search.c:1032 msgid "Rem_ove" msgstr "_Ta bort" -#: src/collect-table.c:784 +#: ../src/collect-table.c:878 msgid "Append from file list" -msgstr "Lgg till frn fillista" +msgstr "Lägg till från fillista" -#: src/collect-table.c:786 +#: ../src/collect-table.c:880 msgid "Append from collection..." -msgstr "Lgg till frn album..." +msgstr "Lägg till från kollektion..." -#: src/collect-table.c:789 src/dupe.c:2244 src/dupe.c:2559 src/search.c:988 +#: ../src/collect-table.c:884 +msgid "_Selection" +msgstr "_Markering" + +#: ../src/collect-table.c:886 +#: ../src/dupe.c:2251 +#: ../src/dupe.c:2564 +#: ../src/layout_util.c:1299 +#: ../src/search.c:1005 msgid "Select all" msgstr "Markera alla" -#: src/collect-table.c:791 src/dupe.c:2246 src/dupe.c:2561 src/search.c:990 +#: ../src/collect-table.c:888 +#: ../src/dupe.c:2253 +#: ../src/dupe.c:2566 +#: ../src/layout_util.c:1300 +#: ../src/search.c:1007 msgid "Select none" msgstr "Markera ingen" -#: src/collect-table.c:799 src/dupe.c:2255 src/img-view.c:1280 -#: src/layout_image.c:756 src/layout_util.c:1096 src/pan-view.c:2811 -#: src/search.c:995 src/view_file.c:562 -msgid "_Properties" -msgstr "_Egenskaper" - -#: src/collect-table.c:802 src/dupe.c:2262 src/img-view.c:1286 -#: src/layout_image.c:767 src/layout_util.c:1067 src/pan-view.c:2818 -#: src/search.c:1002 src/view_file.c:568 +#: ../src/collect-table.c:890 +msgid "Invert selection" +msgstr "Invertera markering" + +#: ../src/collect-table.c:902 +#: ../src/dupe.c:2271 +#: ../src/img-view.c:1285 +#: ../src/layout_image.c:513 +#: ../src/layout_util.c:1282 +#: ../src/pan-view.c:2849 +#: ../src/search.c:1021 +#: ../src/view_file.c:592 msgid "_Copy..." msgstr "_Kopiera..." -#: src/collect-table.c:804 src/dupe.c:2264 src/img-view.c:1287 -#: src/layout_image.c:769 src/layout_util.c:1068 src/pan-view.c:2820 -#: src/search.c:1004 src/view_file.c:570 +#: ../src/collect-table.c:904 +#: ../src/dupe.c:2273 +#: ../src/img-view.c:1286 +#: ../src/layout_image.c:515 +#: ../src/layout_util.c:1283 +#: ../src/pan-view.c:2851 +#: ../src/search.c:1023 +#: ../src/view_file.c:594 msgid "_Move..." -msgstr "Fl_ytta..." +msgstr "_Flytta..." -#: src/collect-table.c:806 src/dupe.c:2266 src/img-view.c:1288 -#: src/layout_image.c:771 src/layout_util.c:1069 src/pan-view.c:2822 -#: src/search.c:1006 src/view_dir.c:608 src/view_file.c:572 +#: ../src/collect-table.c:906 +#: ../src/dupe.c:2275 +#: ../src/img-view.c:1287 +#: ../src/layout_image.c:517 +#: ../src/layout_util.c:1284 +#: ../src/pan-view.c:2853 +#: ../src/search.c:1025 +#: ../src/view_dir.c:666 +#: ../src/view_file.c:596 msgid "_Rename..." msgstr "_Byt namn..." -#: src/collect-table.c:808 src/dupe.c:2268 src/img-view.c:1289 -#: src/layout_image.c:773 src/layout_util.c:1070 src/layout_util.c:1071 -#: src/layout_util.c:1072 src/pan-view.c:2824 src/search.c:1008 -#: src/view_dir.c:610 src/view_file.c:574 +#: ../src/collect-table.c:908 +#: ../src/dupe.c:2277 +#: ../src/img-view.c:1288 +#: ../src/layout_image.c:519 +#: ../src/layout_util.c:1285 +#: ../src/layout_util.c:1286 +#: ../src/layout_util.c:1287 +#: ../src/pan-view.c:2855 +#: ../src/search.c:1027 +#: ../src/view_dir.c:668 +#: ../src/view_file.c:598 msgid "_Delete..." msgstr "_Ta bort..." -#: src/collect-table.c:811 src/dupe.c:2271 src/img-view.c:1291 -#: src/layout_image.c:778 src/layout_util.c:1073 src/pan-view.c:2827 -#: src/search.c:1011 src/view_dir.c:614 src/view_file.c:577 -#, fuzzy +#: ../src/collect-table.c:910 +#: ../src/dupe.c:2279 +#: ../src/img-view.c:1289 +#: ../src/layout_image.c:522 +#: ../src/pan-view.c:2857 +#: ../src/search.c:1029 +#: ../src/view_dir.c:671 +#: ../src/view_file.c:600 msgid "_Copy path" -msgstr "_Kopiera" +msgstr "_Kopiera filnamn" + +#: ../src/collect-table.c:916 +msgid "Randomize" +msgstr "Slumpa" + +#: ../src/collect-table.c:918 +#: ../src/view_file.c:616 +msgid "_Sort" +msgstr "_Sortera" -#: src/collect-table.c:816 src/view_file.c:601 +#: ../src/collect-table.c:921 +#: ../src/view_file.c:632 msgid "Show filename _text" msgstr "Visa _filnamnstext" -#: src/collect-table.c:819 +#: ../src/collect-table.c:924 msgid "_Save collection" -msgstr "_Spara album" +msgstr "_Spara kollektionen" -#: src/collect-table.c:821 +#: ../src/collect-table.c:926 msgid "Save collection _as..." -msgstr "Spara album s_om..." +msgstr "Spara kollektionen s_om..." -#: src/collect-table.c:824 src/layout_util.c:1063 +#: ../src/collect-table.c:929 +#: ../src/layout_util.c:1278 msgid "_Find duplicates..." -msgstr "_Hitta dubletter..." +msgstr "Hitta _dubletter..." -#: src/collect-table.c:826 src/dupe.c:2259 src/search.c:999 +#: ../src/collect-table.c:931 +#: ../src/dupe.c:2268 +#: ../src/layout_util.c:1280 +#: ../src/search.c:1018 msgid "Print..." msgstr "Skriv ut..." -#: src/collect-table.c:1978 src/dupe.c:3355 src/img-view.c:1445 +#: ../src/collect-table.c:2097 +#: ../src/dupe.c:3363 +#: ../src/img-view.c:1443 msgid "Dropped list includes folders." -msgstr "Slppt lista innehller mappar." +msgstr "Släppt lista innehåller mappar." -#: src/collect-table.c:1980 src/dupe.c:3357 src/img-view.c:1447 +#: ../src/collect-table.c:2099 +#: ../src/dupe.c:3365 +#: ../src/img-view.c:1445 msgid "_Add contents" -msgstr "_Lgg till innehll" +msgstr "_Lägg till innehåll" -#: src/collect-table.c:1982 src/dupe.c:3358 src/img-view.c:1448 +#: ../src/collect-table.c:2101 +#: ../src/dupe.c:3366 +#: ../src/img-view.c:1446 msgid "Add contents _recursive" -msgstr "Lgg till innehll _rekursivt" +msgstr "Lägg till innehåll _rekursivt" -#: src/collect-table.c:1984 src/dupe.c:3359 src/img-view.c:1449 +#: ../src/collect-table.c:2103 +#: ../src/dupe.c:3367 +#: ../src/img-view.c:1447 msgid "_Skip folders" -msgstr "Hoppa _ver mappar" +msgstr "Hoppa _över mappar" -#: src/collect-table.c:1987 src/dupe.c:3361 src/img-view.c:1451 -#: src/view_dir.c:343 +#: ../src/collect-table.c:2106 +#: ../src/dupe.c:3369 +#: ../src/img-view.c:1449 +#: ../src/view_dir.c:417 msgid "Cancel" msgstr "Avbryt" -#: src/dupe.c:99 +#: ../src/color-man.c:420 +#: ../src/exif.c:232 +#: ../src/exif-common.c:432 +msgid "sRGB" +msgstr "sRGB" + +#: ../src/color-man.c:422 +msgid "Adobe RGB compatible" +msgstr "AdobeRGB-kompatibel" + +#: ../src/color-man.c:430 +msgid "Custom profile" +msgstr "Egen profil" + +#: ../src/desktop_file.c:74 +#: ../src/desktop_file.c:86 +#: ../src/desktop_file.c:92 +msgid "Can't save" +msgstr "Går inte spara" + +#: ../src/desktop_file.c:74 +msgid "Please specify file name." +msgstr "Ange filnamnet" + +#: ../src/desktop_file.c:86 +msgid "Could not create directory" +msgstr "Kunde inte skapa mapp" + +#: ../src/desktop_file.c:182 +#: ../src/desktop_file.c:534 +msgid "Desktop file" +msgstr "Desktop-fil" + +#: ../src/desktop_file.c:291 +#: ../src/ui_pathsel.c:494 +#, c-format +msgid "" +"Unable to delete file:\n" +"%s" +msgstr "" +"Kan inte ta bort filen:\n" +"%s" + +#: ../src/desktop_file.c:292 +#: ../src/ui_pathsel.c:495 +#: ../src/utilops.c:1962 +#: ../src/utilops.c:1989 +#: ../src/utilops.c:2509 +msgid "File deletion failed" +msgstr "Borttagning av fil misslyckades" + +#: ../src/desktop_file.c:336 +#: ../src/desktop_file.c:344 +#: ../src/ui_pathsel.c:537 +#: ../src/ui_pathsel.c:545 +msgid "Delete file" +msgstr "Ta bort fil" + +#: ../src/desktop_file.c:342 +#: ../src/ui_pathsel.c:543 +#, c-format +msgid "" +"About to delete the file:\n" +" %s" +msgstr "" +"Kommer att ta bort filen:\n" +"%s" + +#: ../src/desktop_file.c:374 +msgid "new.desktop" +msgstr "new.desktop" + +#: ../src/desktop_file.c:453 +msgid "Editors" +msgstr "Textredigerare" + +#: ../src/desktop_file.c:524 +msgid "Hidden" +msgstr "Gömd" + +#: ../src/desktop_file.c:543 +#: ../src/dupe.c:2657 +#: ../src/dupe.c:3177 +#: ../src/print.c:3211 +#: ../src/search.c:2856 +#: ../src/ui_pathsel.c:1111 +#: ../src/utilops.c:458 +msgid "Path" +msgstr "Sökväg" + +#: ../src/dupe.c:100 msgid "Drop files to compare them." -msgstr "Slpp filer fr att jmfra." +msgstr "Släpp filer för att jämföra." -#: src/dupe.c:103 +#: ../src/dupe.c:104 #, c-format msgid "%d files" msgstr "%d filer" -#: src/dupe.c:107 +#: ../src/dupe.c:108 #, c-format msgid "%d matches found in %d files" msgstr "%d dubletter funna i %d filer" -#: src/dupe.c:112 +#: ../src/dupe.c:113 msgid "[set 1]" msgstr "[grupp 1]" -#: src/dupe.c:1454 +#: ../src/dupe.c:1445 msgid "Reading checksums..." -msgstr "Lser in kontrollsummor..." +msgstr "Läser in kontrollsummor..." -#: src/dupe.c:1487 +#: ../src/dupe.c:1478 msgid "Reading dimensions..." -msgstr "Lser in dimensioner..." +msgstr "Läser in dimensioner..." -#: src/dupe.c:1521 +#: ../src/dupe.c:1512 msgid "Reading similarity data..." -msgstr "Lser in likhetsdata..." +msgstr "Läser in likhetsdata..." -#: src/dupe.c:1556 src/dupe.c:1587 +#: ../src/dupe.c:1548 +#: ../src/dupe.c:1579 msgid "Comparing..." -msgstr "Jmfr..." +msgstr "Jämför..." -#: src/dupe.c:1567 src/pan-view.c:1093 +#: ../src/dupe.c:1559 +#: ../src/pan-view.c:1094 msgid "Sorting..." msgstr "Sorterar..." -#: src/dupe.c:2248 +#: ../src/dupe.c:2255 msgid "Select group _1 duplicates" msgstr "Markera dubletter i grupp _1" -#: src/dupe.c:2250 +#: ../src/dupe.c:2257 msgid "Select group _2 duplicates" msgstr "Markera dubletter i grupp _2" -#: src/dupe.c:2257 src/search.c:997 +#: ../src/dupe.c:2266 +#: ../src/search.c:1016 msgid "Add to new collection" -msgstr "Lgg till i nytt album" +msgstr "Lägg till i ny kollektion" -#: src/dupe.c:2276 src/dupe.c:2566 src/search.c:1016 +#: ../src/dupe.c:2284 +#: ../src/dupe.c:2571 +#: ../src/search.c:1034 msgid "C_lear" -msgstr "T_m" +msgstr "T_öm" -#: src/dupe.c:2279 src/dupe.c:2569 +#: ../src/dupe.c:2287 +#: ../src/dupe.c:2574 msgid "Close _window" -msgstr "Stng _fnster" +msgstr "Stäng _fönster" -#: src/dupe.c:2439 +#: ../src/dupe.c:2447 #, c-format msgid "%d files (set 2)" msgstr "%d filer (grupp 2)" -#: src/dupe.c:2647 -#, fuzzy +#: ../src/dupe.c:2652 msgid "Name case-insensitive" -msgstr "Skiftlgesknslig sortering" +msgstr "Namn skiftlägeskänsligt" -#: src/dupe.c:2648 src/dupe.c:3168 src/preferences.c:1026 src/print.c:3238 -#: src/search.c:2761 src/view_file_list.c:1823 +#: ../src/dupe.c:2653 +#: ../src/dupe.c:3174 +#: ../src/preferences.c:1336 +#: ../src/print.c:3215 +#: ../src/search.c:2853 +#: ../src/view_file_list.c:2050 msgid "Size" msgstr "Storlek" -#: src/dupe.c:2649 src/dupe.c:3169 src/exif.c:339 src/exif-common.c:442 -#: src/print.c:3236 src/search.c:2762 src/view_file_list.c:1824 +#: ../src/dupe.c:2654 +#: ../src/dupe.c:3175 +#: ../src/exif.c:341 +#: ../src/exif-common.c:543 +#: ../src/print.c:3213 +#: ../src/search.c:2854 +#: ../src/view_file_list.c:2054 msgid "Date" msgstr "Datum" -#: src/dupe.c:2650 src/dupe.c:3170 src/print.c:3240 src/search.c:2763 +#: ../src/dupe.c:2655 +#: ../src/dupe.c:3176 +#: ../src/print.c:3217 +#: ../src/search.c:2855 msgid "Dimensions" msgstr "Dimensioner" -#: src/dupe.c:2651 +#: ../src/dupe.c:2656 msgid "Checksum" msgstr "Kontrollsumma" -#: src/dupe.c:2652 src/dupe.c:3171 src/print.c:3234 src/search.c:2764 -#: src/ui_pathsel.c:1115 -msgid "Path" -msgstr "Skvg" - -#: src/dupe.c:2653 +#: ../src/dupe.c:2658 msgid "Similarity (high)" msgstr "Likhet (stor)" -#: src/dupe.c:2654 +#: ../src/dupe.c:2659 msgid "Similarity" msgstr "Likhet" -#: src/dupe.c:2655 +#: ../src/dupe.c:2660 msgid "Similarity (low)" msgstr "Likhet (liten)" -#: src/dupe.c:2656 +#: ../src/dupe.c:2661 msgid "Similarity (custom)" msgstr "Likhet (anpassad)" -#: src/dupe.c:3121 -#, fuzzy +#: ../src/dupe.c:3127 msgid "Find duplicates" -msgstr "_Hitta dubletter..." +msgstr "Hitta dubletter" -#: src/dupe.c:3203 +#: ../src/dupe.c:3209 msgid "Compare to:" -msgstr "Jmfr med:" +msgstr "Jämför med:" -#: src/dupe.c:3216 +#: ../src/dupe.c:3222 msgid "Compare by:" -msgstr "Jmfr med avseende p:" +msgstr "Jämför med avseende på:" -#: src/dupe.c:3224 src/preferences.c:884 src/search.c:2777 +#: ../src/dupe.c:3230 +#: ../src/preferences.c:1171 +#: ../src/search.c:2869 msgid "Thumbnails" msgstr "Miniatyrbilder" -#: src/dupe.c:3231 +#: ../src/dupe.c:3237 msgid "Compare two file sets" -msgstr "Jmfr tv filgrupper" +msgstr "Jämför två filgrupper" -#: src/editors.c:61 -msgid "The Gimp" -msgstr "Gimp" - -#: src/editors.c:62 -msgid "XV" -msgstr "XV" - -#: src/editors.c:63 -msgid "Xpaint" -msgstr "Xpaint" - -#: src/editors.c:64 -msgid "UFraw" -msgstr "" - -#: src/editors.c:65 -msgid "Add XMP sidecar" -msgstr "" - -#: src/editors.c:69 -msgid "Rotate jpeg clockwise" -msgstr "Rotera jpeg medurs" - -#: src/editors.c:70 -msgid "Rotate jpeg counterclockwise" -msgstr "Rotera jpeg moturs" - -#. for testing -#: src/editors.c:74 src/editors.c:80 -msgid "External Copy command" -msgstr "" - -#: src/editors.c:75 src/editors.c:81 -msgid "External Move command" -msgstr "" - -#: src/editors.c:76 src/editors.c:82 -msgid "External Rename command" -msgstr "" +#: ../src/editors.c:280 +#, c-format +msgid "Desktop file '%s' should not include extension in Icon key: '%s'\n" +msgstr "Desktop-filen '%s' ska inte ha namntillägg efter 'Icon=': '%s'\n" -#: src/editors.c:77 src/editors.c:83 -#, fuzzy -msgid "External Delete command" -msgstr "Aktivera Delete-knappen" +#. flash fired (bit 0) +#: ../src/editors.c:334 +#: ../src/exif.c:225 +#: ../src/exif-common.c:361 +msgid "yes" +msgstr "ja" -#: src/editors.c:78 src/editors.c:84 -msgid "External New Folder command" -msgstr "" +#: ../src/editors.c:334 +#: ../src/exif.c:224 +#: ../src/exif-common.c:361 +msgid "no" +msgstr "nej" -#: src/editors.c:140 +#: ../src/editors.c:506 msgid "stopping..." msgstr "stoppar..." -#: src/editors.c:161 +#: ../src/editors.c:527 msgid "Edit command results" -msgstr "Redigera resultaten frn kommandot" +msgstr "Redigera resultaten från kommandot" -#: src/editors.c:164 +#: ../src/editors.c:530 #, c-format msgid "Output of %s" -msgstr "Utdata frn %s" +msgstr "Utdata från %s" -#: src/editors.c:603 +#: ../src/editors.c:1053 #, c-format msgid "" "Failed to run command:\n" "%s\n" msgstr "" -"Misslyckades att kra kommandot:\n" +"Misslyckades att köra kommandot:\n" "%s\n" -#: src/editors.c:721 +#: ../src/editors.c:1180 msgid "stopped by user" -msgstr "stoppad av anvndaren" +msgstr "stoppad av användaren" -#: src/editors.c:836 -msgid "Editor template is empty." +#: ../src/editors.c:1265 +#, c-format +msgid "" +"%s\n" +"\"%s\"" msgstr "" +"%s\n" +"\"%s\"" + +#: ../src/editors.c:1267 +msgid "Invalid editor command" +msgstr "Ogiltigt redigeringskommando" + +#: ../src/editors.c:1354 +msgid "Editor template is empty." +msgstr "Redigeringsmallen är tom" -#: src/editors.c:837 +#: ../src/editors.c:1355 msgid "Editor template has incorrect syntax." -msgstr "" +msgstr "Redigeringsmallen är felaktig" -#: src/editors.c:838 +#: ../src/editors.c:1356 msgid "Editor template uses incompatible macros." -msgstr "" +msgstr "Redigeringsmallen använder inkompatibla makron" -#: src/editors.c:839 +#: ../src/editors.c:1357 msgid "Can't find matching file type." -msgstr "" +msgstr "Kan inte hitta denna filtyp" -#: src/editors.c:840 +#: ../src/editors.c:1358 msgid "Can't execute external editor." -msgstr "" +msgstr "Kan inte starta extern textredigerare" -#: src/editors.c:841 +#: ../src/editors.c:1359 msgid "External editor returned error status." -msgstr "" +msgstr "Extern textredigerare returnerar felstatus" -#: src/editors.c:842 +#: ../src/editors.c:1360 msgid "File was skipped." -msgstr "" +msgstr "Filen överhoppad." -#: src/editors.c:843 +#: ../src/editors.c:1361 msgid "Unknown error." -msgstr "" +msgstr "Okänt fel." -#: src/exif.c:145 src/exif.c:158 src/exif.c:172 src/exif.c:197 src/exif.c:314 -#: src/exif.c:625 src/exif-common.c:308 src/exif-common.c:311 -#: src/exif-common.c:378 +#: ../src/exif.c:147 +#: ../src/exif.c:160 +#: ../src/exif.c:174 +#: ../src/exif.c:199 +#: ../src/exif.c:316 +#: ../src/exif.c:663 +#: ../src/exif-common.c:337 +#: ../src/exif-common.c:340 +#: ../src/exif-common.c:407 msgid "unknown" -msgstr "oknd" +msgstr "okänd" -#: src/exif.c:146 +#: ../src/exif.c:148 msgid "top left" -msgstr "verst vnster" +msgstr "överst vänster" -#: src/exif.c:147 +#: ../src/exif.c:149 msgid "top right" -msgstr "verst hger" +msgstr "överst höger" -#: src/exif.c:148 +#: ../src/exif.c:150 msgid "bottom right" -msgstr "underst hger" +msgstr "underst höger" -#: src/exif.c:149 +#: ../src/exif.c:151 msgid "bottom left" -msgstr "underst vnster" +msgstr "underst vänster" -#: src/exif.c:150 +#: ../src/exif.c:152 msgid "left top" -msgstr "vnster verst" +msgstr "vänster överst" -#: src/exif.c:151 +#: ../src/exif.c:153 msgid "right top" -msgstr "hger verst" +msgstr "höger överst" -#: src/exif.c:152 +#: ../src/exif.c:154 msgid "right bottom" -msgstr "hger underst" +msgstr "höger underst" -#: src/exif.c:153 +#: ../src/exif.c:155 msgid "left bottom" -msgstr "vnster underst" +msgstr "vänster underst" -#: src/exif.c:160 +#: ../src/exif.c:162 msgid "inch" msgstr "tum" -#: src/exif.c:161 +#: ../src/exif.c:163 msgid "centimeter" msgstr "centimeter" -#: src/exif.c:173 +#: ../src/exif.c:175 msgid "average" -msgstr "medelvrde" +msgstr "medelvärde" -#: src/exif.c:174 +#: ../src/exif.c:176 msgid "center weighted" -msgstr "centrumvgt" +msgstr "centrumvägt" -#: src/exif.c:175 +#: ../src/exif.c:177 msgid "spot" msgstr "spot" -#: src/exif.c:176 +#: ../src/exif.c:178 msgid "multi-spot" msgstr "multi-spot" -#: src/exif.c:177 +#: ../src/exif.c:179 msgid "multi-segment" msgstr "flersegment" -#: src/exif.c:178 +#: ../src/exif.c:180 msgid "partial" msgstr "partiell" -#: src/exif.c:179 src/exif.c:217 +#: ../src/exif.c:181 +#: ../src/exif.c:219 msgid "other" msgstr "annan" -#: src/exif.c:184 src/exif.c:236 +#: ../src/exif.c:186 +#: ../src/exif.c:238 msgid "not defined" msgstr "ej definierad" -#: src/exif.c:185 src/exif.c:264 src/exif.c:271 +#: ../src/exif.c:187 +#: ../src/exif.c:266 +#: ../src/exif.c:273 msgid "manual" msgstr "manuell" -#: src/exif.c:186 src/exif.c:257 src/exif.c:293 src/exif.c:300 src/exif.c:307 +#: ../src/exif.c:188 +#: ../src/exif.c:259 +#: ../src/exif.c:295 +#: ../src/exif.c:302 +#: ../src/exif.c:309 msgid "normal" msgstr "normal" -#: src/exif.c:187 +#: ../src/exif.c:189 msgid "aperture" -msgstr "blndare" +msgstr "bländare" -#: src/exif.c:188 +#: ../src/exif.c:190 msgid "shutter" msgstr "slutare" -#: src/exif.c:189 +#: ../src/exif.c:191 msgid "creative" msgstr "kreativt" -#: src/exif.c:190 +#: ../src/exif.c:192 msgid "action" msgstr "aktivt" -#: src/exif.c:191 src/exif.c:278 +#: ../src/exif.c:193 +#: ../src/exif.c:280 msgid "portrait" -msgstr "stende" +msgstr "stående" -#: src/exif.c:192 src/exif.c:277 +#: ../src/exif.c:194 +#: ../src/exif.c:279 msgid "landscape" msgstr "liggande" -#: src/exif.c:198 +#: ../src/exif.c:200 msgid "daylight" msgstr "dagsljus" -#: src/exif.c:199 +#: ../src/exif.c:201 msgid "fluorescent" -msgstr "lysrr (fluorescerande)" +msgstr "lysrör (fluorescerande)" -#: src/exif.c:200 +#: ../src/exif.c:202 msgid "tungsten (incandescent)" -msgstr "volfram (gldande)" +msgstr "volfram (glödande)" -#: src/exif.c:201 +#: ../src/exif.c:203 msgid "flash" msgstr "blixt" -#: src/exif.c:202 +#: ../src/exif.c:204 msgid "fine weather" -msgstr "" +msgstr "vackert väder" -#: src/exif.c:203 +#: ../src/exif.c:205 msgid "cloudy weather" -msgstr "" +msgstr "molnigt väder" -#: src/exif.c:204 +#: ../src/exif.c:206 msgid "shade" -msgstr "" +msgstr "skugga" -#: src/exif.c:205 -#, fuzzy +#: ../src/exif.c:207 msgid "daylight fluorescent" -msgstr "lysrr (fluorescerande)" +msgstr "dagsljus-fluorescerande" -#: src/exif.c:206 -#, fuzzy +#: ../src/exif.c:208 msgid "day white fluorescent" -msgstr "lysrr (fluorescerande)" +msgstr "dagsvit-fluorescerande" -#: src/exif.c:207 -#, fuzzy +#: ../src/exif.c:209 msgid "cool white fluorescent" -msgstr "lysrr (fluorescerande)" +msgstr "kallvit-fluorescerande" -#: src/exif.c:208 -#, fuzzy +#: ../src/exif.c:210 msgid "white fluorescent" -msgstr "lysrr (fluorescerande)" +msgstr "vit-fluorescerande" -#: src/exif.c:209 +#: ../src/exif.c:211 msgid "standard light A" -msgstr "" +msgstr "standardljus A" -#: src/exif.c:210 +#: ../src/exif.c:212 msgid "standard light B" -msgstr "" +msgstr "standardljus B" -#: src/exif.c:211 +#: ../src/exif.c:213 msgid "standard light C" -msgstr "" +msgstr "standardljus C" -#: src/exif.c:212 +#: ../src/exif.c:214 msgid "D55" -msgstr "" +msgstr "D55" -#: src/exif.c:213 +#: ../src/exif.c:215 msgid "D65" -msgstr "" +msgstr "D65" -#: src/exif.c:214 +#: ../src/exif.c:216 msgid "D75" -msgstr "" +msgstr "D75" -#: src/exif.c:215 +#: ../src/exif.c:217 msgid "D50" -msgstr "" +msgstr "D50" -#: src/exif.c:216 +#: ../src/exif.c:218 msgid "ISO studio tungsten" -msgstr "" - -#: src/exif.c:222 src/exif-common.c:332 src/info.c:257 -msgid "no" -msgstr "nej" - -#. flash fired (bit 0) -#: src/exif.c:223 src/exif-common.c:332 src/info.c:257 -msgid "yes" -msgstr "ja" +msgstr "ISO studio-volfram" -#: src/exif.c:224 +#: ../src/exif.c:226 msgid "yes, not detected by strobe" -msgstr "ja, inte upptckt av sensor" +msgstr "ja, inte upptäckt av sensor" -#: src/exif.c:225 +#: ../src/exif.c:227 msgid "yes, detected by strobe" -msgstr "ja, upptckt av sensor" - -#: src/exif.c:230 src/exif-common.c:403 src/layout.c:422 -msgid "sRGB" -msgstr "" +msgstr "ja, upptäckt av sensor" -#: src/exif.c:231 +#: ../src/exif.c:233 msgid "uncalibrated" -msgstr "" +msgstr "okalibrerad" -#: src/exif.c:237 +#: ../src/exif.c:239 msgid "1 chip color area" -msgstr "" +msgstr "1 chip färgområde" -#: src/exif.c:238 +#: ../src/exif.c:240 msgid "2 chip color area" -msgstr "" +msgstr "2 chip färgområde" -#: src/exif.c:239 +#: ../src/exif.c:241 msgid "3 chip color area" -msgstr "" +msgstr "3 chip färgområde" -#: src/exif.c:240 +#: ../src/exif.c:242 msgid "color sequential area" -msgstr "" +msgstr "sekventiellt färgområde" -#: src/exif.c:241 -#, fuzzy +#: ../src/exif.c:243 msgid "trilinear" -msgstr "Bilinjr" +msgstr "trilinjär" -#: src/exif.c:242 +#: ../src/exif.c:244 msgid "color sequential linear" -msgstr "" +msgstr "sekventiellt linjär färg" -#: src/exif.c:247 +#: ../src/exif.c:249 msgid "digital still camera" -msgstr "" +msgstr "digital stillbildskamera" -#: src/exif.c:252 +#: ../src/exif.c:254 msgid "direct photo" -msgstr "" +msgstr "direkt fotografi" -#: src/exif.c:258 -#, fuzzy +#: ../src/exif.c:260 msgid "custom" -msgstr "Egendefinierat" +msgstr "egendefinierat" -#: src/exif.c:263 src/exif.c:270 src/exif-common.c:346 +#: ../src/exif.c:265 +#: ../src/exif.c:272 +#: ../src/exif-common.c:375 msgid "auto" -msgstr "auto" +msgstr "automatiskt" -#: src/exif.c:265 -#, fuzzy +#: ../src/exif.c:267 msgid "auto bracket" -msgstr "Automatiskt namnbyte" +msgstr "automatisk alternativexponering" -#: src/exif.c:276 -#, fuzzy +#: ../src/exif.c:278 msgid "standard" -msgstr "T_m" +msgstr "standard" -#: src/exif.c:279 -#, fuzzy +#: ../src/exif.c:281 msgid "night scene" -msgstr "Ljusklla" +msgstr "nattscen" -#: src/exif.c:284 -#, fuzzy +#: ../src/exif.c:286 msgid "none" -msgstr "frdig" +msgstr "ingen" -#: src/exif.c:285 -#, fuzzy +#: ../src/exif.c:287 msgid "low gain up" -msgstr "Stda" +msgstr "low gain up" -#: src/exif.c:286 +#: ../src/exif.c:288 msgid "high gain up" -msgstr "" +msgstr "high gain up" -#: src/exif.c:287 -#, fuzzy +#: ../src/exif.c:289 msgid "low gain down" -msgstr "Stng _fnster" +msgstr "low gain down" -#: src/exif.c:288 +#: ../src/exif.c:290 msgid "high gain down" -msgstr "" +msgstr "high gain down" -#: src/exif.c:294 src/exif.c:308 -#, fuzzy +#: ../src/exif.c:296 +#: ../src/exif.c:310 msgid "soft" -msgstr "spot" +msgstr "mjuk" -#: src/exif.c:295 src/exif.c:309 +#: ../src/exif.c:297 +#: ../src/exif.c:311 msgid "hard" -msgstr "" +msgstr "hård" -#: src/exif.c:301 +#: ../src/exif.c:303 msgid "low" -msgstr "" +msgstr "låg" -#: src/exif.c:302 -#, fuzzy +#: ../src/exif.c:304 msgid "high" -msgstr "Hjd" +msgstr "hög" -#: src/exif.c:315 +#: ../src/exif.c:317 msgid "macro" -msgstr "" +msgstr "makro" -#: src/exif.c:316 -#, fuzzy +#: ../src/exif.c:318 msgid "close" -msgstr "Stng" +msgstr "nära" -#: src/exif.c:317 +#: ../src/exif.c:319 msgid "distant" -msgstr "" +msgstr "avlägset" -#: src/exif.c:327 -#, fuzzy +#: ../src/exif.c:329 msgid "Image Width" -msgstr "Bildfil" +msgstr "Bildbredd" -#: src/exif.c:328 -#, fuzzy +#: ../src/exif.c:330 msgid "Image Height" -msgstr "Hjd" +msgstr "Bildhöjd" -#: src/exif.c:329 +#: ../src/exif.c:331 msgid "Bits per Sample/Pixel" -msgstr "" +msgstr "Bits per punkt/pixel" -#: src/exif.c:330 -#, fuzzy +#: ../src/exif.c:332 msgid "Compression" -msgstr "Kompression:" +msgstr "Komprimering" -#: src/exif.c:331 +#: ../src/exif.c:333 msgid "Image description" msgstr "Bildbeskrivning" -#: src/exif.c:332 -#, fuzzy +#: ../src/exif.c:334 msgid "Camera make" -msgstr "Kamera" +msgstr "Kamerafabrikat" -#: src/exif.c:333 -#, fuzzy +#: ../src/exif.c:335 msgid "Camera model" -msgstr "Kamera" +msgstr "Kameramodell" -#: src/exif.c:334 +#: ../src/exif.c:336 msgid "Orientation" msgstr "Orientering" -#: src/exif.c:335 -#, fuzzy +#: ../src/exif.c:337 msgid "X resolution" -msgstr "Upplsning" +msgstr "X-upplösning" -#: src/exif.c:336 -#, fuzzy +#: ../src/exif.c:338 msgid "Y Resolution" -msgstr "Upplsning" +msgstr "Y-upplösning" -#: src/exif.c:337 -#, fuzzy +#: ../src/exif.c:339 msgid "Resolution units" -msgstr "Upplsning" +msgstr "Upplösningsenheter" -#: src/exif.c:338 +#: ../src/exif.c:340 msgid "Firmware" -msgstr "" +msgstr "Firmware" -#: src/exif.c:340 +#: ../src/exif.c:342 msgid "White point" -msgstr "" +msgstr "Vitpunkt" -#: src/exif.c:341 +#: ../src/exif.c:343 msgid "Primary chromaticities" -msgstr "" +msgstr "Primära kromaticiteter" -#: src/exif.c:342 +#: ../src/exif.c:344 msgid "YCbCy coefficients" -msgstr "" +msgstr "YCbCy-koefficienter" -#: src/exif.c:343 +#: ../src/exif.c:345 msgid "YCbCr positioning" -msgstr "" +msgstr "YCbCr-positionering" -#: src/exif.c:344 -#, fuzzy +#: ../src/exif.c:346 msgid "Black white reference" -msgstr "Geeqie Instllningar" - -#: src/exif.c:345 -msgid "Copyright" -msgstr "Copyright" +msgstr "Svart-vit referens" -#: src/exif.c:346 +#: ../src/exif.c:348 msgid "SubIFD Exif offset" -msgstr "" +msgstr "SubIFD Exif-offset" #. subIFD follows -#: src/exif.c:348 -#, fuzzy +#: ../src/exif.c:350 msgid "Exposure time (seconds)" -msgstr "Exponeringskompensation" +msgstr "Exponeringstid (sekunder)" -#: src/exif.c:349 +#: ../src/exif.c:351 msgid "FNumber" -msgstr "" +msgstr "FNumber" -#: src/exif.c:350 +#: ../src/exif.c:352 msgid "Exposure program" msgstr "Exponeringsprogram" -#: src/exif.c:351 -#, fuzzy +#: ../src/exif.c:353 msgid "Spectral Sensitivity" -msgstr "ISO-knslighet" +msgstr "Spektral känslighet" -#: src/exif.c:352 src/exif.c:388 src/exif-common.c:446 +#: ../src/exif.c:354 +#: ../src/exif.c:390 +#: ../src/exif-common.c:547 msgid "ISO sensitivity" -msgstr "ISO-knslighet" +msgstr "ISO-känslighet" -#: src/exif.c:353 +#: ../src/exif.c:355 msgid "Optoelectric conversion factor" -msgstr "" +msgstr "Optoelektrisk konverteringsfaktor" -#: src/exif.c:354 +#: ../src/exif.c:356 msgid "Exif version" -msgstr "" +msgstr "Exif-version" -#: src/exif.c:355 +#: ../src/exif.c:357 msgid "Date original" msgstr "Ursprungsdatum" -#: src/exif.c:356 +#: ../src/exif.c:358 msgid "Date digitized" msgstr "Digitaliseringsdatum" -#: src/exif.c:357 -#, fuzzy +#: ../src/exif.c:359 msgid "Pixel format" -msgstr "Filformat:" +msgstr "Pixeluppbyggnad" -#: src/exif.c:358 -#, fuzzy +#: ../src/exif.c:360 msgid "Compression ratio" -msgstr "Kompression:" +msgstr "Komprimeringsgrad" -#: src/exif.c:359 src/exif-common.c:443 +#: ../src/exif.c:361 +#: ../src/exif-common.c:544 msgid "Shutter speed" msgstr "Slutarhastighet" -#: src/exif.c:360 src/exif-common.c:444 +#: ../src/exif.c:362 +#: ../src/exif-common.c:545 msgid "Aperture" -msgstr "Blndare" +msgstr "Bländare" -#: src/exif.c:361 +#: ../src/exif.c:363 msgid "Brightness" -msgstr "" +msgstr "Ljushet" -#: src/exif.c:362 src/exif-common.c:445 +#: ../src/exif.c:364 +#: ../src/exif-common.c:546 msgid "Exposure bias" msgstr "Exponeringskompensation" -#: src/exif.c:363 -#, fuzzy +#: ../src/exif.c:365 msgid "Maximum aperture" -msgstr "blndare" +msgstr "Maximal bländare" -#: src/exif.c:364 src/exif-common.c:449 +#: ../src/exif.c:366 +#: ../src/exif-common.c:550 msgid "Subject distance" -msgstr "Avstnd till motiv" +msgstr "Motivavstånd" -#: src/exif.c:365 +#: ../src/exif.c:367 msgid "Metering mode" -msgstr "Mtmetod" +msgstr "Mätmetod" -#: src/exif.c:366 +#: ../src/exif.c:368 msgid "Light source" -msgstr "Ljusklla" +msgstr "Ljuskälla" -#: src/exif.c:367 src/exif-common.c:450 +#: ../src/exif.c:369 +#: ../src/exif-common.c:551 msgid "Flash" msgstr "Blixt" -#: src/exif.c:368 src/exif-common.c:447 +#: ../src/exif.c:370 +#: ../src/exif-common.c:548 msgid "Focal length" -msgstr "Brnnvidd" +msgstr "Brännvidd" -#: src/exif.c:369 -#, fuzzy +#: ../src/exif.c:371 msgid "Subject area" -msgstr "Avstnd till motiv" +msgstr "Motivområde" -#: src/exif.c:370 +#: ../src/exif.c:372 msgid "MakerNote" -msgstr "" +msgstr "Tillverkarnotering" -#: src/exif.c:371 -#, fuzzy +#: ../src/exif.c:373 msgid "UserComment" -msgstr "Kommentar:" +msgstr "Användarkommentar" -#: src/exif.c:372 +#: ../src/exif.c:374 msgid "Subsecond time" -msgstr "" +msgstr "Tid, delar av sekunder" -#: src/exif.c:373 -#, fuzzy +#: ../src/exif.c:375 msgid "Subsecond time original" -msgstr "Ursprungsdatum" +msgstr "Originaltid, delar av sekunder" -#: src/exif.c:374 -#, fuzzy +#: ../src/exif.c:376 msgid "Subsecond time digitized" -msgstr "Digitaliseringsdatum" +msgstr "Digitaliseringstid, delar av sekunder" -#: src/exif.c:375 +#: ../src/exif.c:377 msgid "FlashPix version" -msgstr "" +msgstr "FlashPix-version" -#: src/exif.c:376 -#, fuzzy +#: ../src/exif.c:378 msgid "Colorspace" -msgstr "Stng" +msgstr "Färgrymd" #. ExifImageWidth, ExifImageHeight can also be unsigned short -#: src/exif.c:378 +#: ../src/exif.c:380 msgid "Width" msgstr "Bredd" -#: src/exif.c:379 +#: ../src/exif.c:381 msgid "Height" -msgstr "Hjd" +msgstr "Höjd" -#: src/exif.c:380 -#, fuzzy +#: ../src/exif.c:382 msgid "Audio data" -msgstr "_Exif-information" +msgstr "Ljuddata" -#: src/exif.c:381 +#: ../src/exif.c:383 msgid "ExifR98 extension" -msgstr "" +msgstr "ExifR98-tillägg" -#: src/exif.c:382 -#, fuzzy +#: ../src/exif.c:384 msgid "Flash strength" -msgstr "Brnnvidd" +msgstr "Blixtstyrka" -#: src/exif.c:383 +#: ../src/exif.c:385 msgid "Spatial frequency response" -msgstr "" +msgstr "Spatiell frekvensrespons" -#: src/exif.c:384 +#: ../src/exif.c:386 msgid "X Pixel density" -msgstr "" +msgstr "X-pixel-densitet" -#: src/exif.c:385 +#: ../src/exif.c:387 msgid "Y Pixel density" -msgstr "" +msgstr "Y-pixel-densitet" -#: src/exif.c:386 +#: ../src/exif.c:388 msgid "Pixel density units" -msgstr "" +msgstr "Pixel-densitetsenhet" -#: src/exif.c:387 -#, fuzzy +#: ../src/exif.c:389 msgid "Subject location" -msgstr "Markering" +msgstr "Motivplacering" -#: src/exif.c:389 -#, fuzzy +#: ../src/exif.c:391 msgid "Sensor type" -msgstr "Osorterade" +msgstr "Sensortyp" -#: src/exif.c:390 -#, fuzzy +#: ../src/exif.c:392 msgid "Source type" -msgstr "Klla" +msgstr "Källtyp" -#: src/exif.c:391 -#, fuzzy +#: ../src/exif.c:393 msgid "Scene type" -msgstr "centimeter" +msgstr "Scentyp" -#: src/exif.c:392 +#: ../src/exif.c:394 msgid "Color filter array pattern" -msgstr "" +msgstr "Färgfilter-vektormönster" #. tags a4xx were added for Exif 2.2 (not just these - some above, as well) -#: src/exif.c:394 -#, fuzzy +#: ../src/exif.c:396 msgid "Render process" -msgstr "Skapa" +msgstr "Renderingsprocess" -#: src/exif.c:395 -#, fuzzy +#: ../src/exif.c:397 msgid "Exposure mode" -msgstr "Exponeringskompensation" +msgstr "Exponeringssätt" -#: src/exif.c:396 +#: ../src/exif.c:398 msgid "White balance" -msgstr "" +msgstr "Vitbalans" -#: src/exif.c:397 +#: ../src/exif.c:399 msgid "Digital zoom ratio" -msgstr "" +msgstr "Digital zoomning" -#: src/exif.c:398 -#, fuzzy +#: ../src/exif.c:400 msgid "Focal length (35mm)" -msgstr "Brnnvidd" +msgstr "Brännvidd (35 mm)" -#: src/exif.c:399 +#: ../src/exif.c:401 msgid "Scene capture type" -msgstr "" +msgstr "Sceninnehållstyp" -#: src/exif.c:400 -#, fuzzy +#: ../src/exif.c:402 msgid "Gain control" -msgstr "Ta loss kontroller" +msgstr "Förstärkningsinställning" -#: src/exif.c:401 -#, fuzzy +#: ../src/exif.c:403 msgid "Contrast" -msgstr "stende" +msgstr "Kontrast" -#: src/exif.c:402 -#, fuzzy +#: ../src/exif.c:404 msgid "Saturation" -msgstr "aktivt" +msgstr "Mättnad" -#: src/exif.c:403 +#: ../src/exif.c:405 msgid "Sharpness" -msgstr "" +msgstr "Skärpa" -#: src/exif.c:404 +#: ../src/exif.c:406 msgid "Device setting" -msgstr "" +msgstr "Apparatinställning" -#: src/exif.c:405 -#, fuzzy +#: ../src/exif.c:407 msgid "Subject range" -msgstr "Avstnd till motiv" +msgstr "Motivavstånd" -#: src/exif.c:406 -#, fuzzy +#: ../src/exif.c:408 msgid "Image serial number" -msgstr "Bildfil" +msgstr "Bildserienummer" -#: src/exif-common.c:307 +#: ../src/exif-common.c:336 msgid "infinity" -msgstr "ondligt" +msgstr "oändligt" -#: src/exif-common.c:336 +#: ../src/exif-common.c:365 msgid "mode:" -msgstr "lge:" +msgstr "läge:" -#: src/exif-common.c:340 src/trash.c:193 +#: ../src/exif-common.c:369 +#: ../src/trash.c:205 msgid "on" -msgstr "p" +msgstr "på" -#: src/exif-common.c:343 src/trash.c:198 +#: ../src/exif-common.c:372 +#: ../src/trash.c:210 msgid "off" msgstr "av" -#: src/exif-common.c:352 +#: ../src/exif-common.c:381 msgid "not detected by strobe" -msgstr "inte upptckt av sensor" +msgstr "inte upptäckt av sensor" -#: src/exif-common.c:353 +#: ../src/exif-common.c:382 msgid "detected by strobe" -msgstr "upptckt av sensor" +msgstr "upptäckt av sensor" #. we ignore flash function (bit 5) #. red-eye (bit 6) -#: src/exif-common.c:358 +#: ../src/exif-common.c:387 msgid "red-eye reduction" -msgstr "reducering av rda gon" +msgstr "reducering av röda ögon" -#: src/exif-common.c:378 +#: ../src/exif-common.c:407 msgid "dot" msgstr "punkt" -#: src/exif-common.c:408 +#: ../src/exif-common.c:437 msgid "AdobeRGB" -msgstr "" +msgstr "AdobeRGB" -#: src/exif-common.c:416 +#: ../src/exif-common.c:445 msgid "embedded" -msgstr "" +msgstr "inbäddad" -#: src/exif-common.c:441 -#, fuzzy +#: ../src/exif-common.c:534 +msgid "Above Sea Level" +msgstr "över havsnivå" + +#: ../src/exif-common.c:534 +msgid "Below Sea Level" +msgstr "under havsnivå" + +#: ../src/exif-common.c:542 msgid "Camera" msgstr "Kamera" -#: src/exif-common.c:448 -#, fuzzy +#: ../src/exif-common.c:549 msgid "Focal length 35mm" -msgstr "Brnnvidd" +msgstr "Brännvidd 35 mm" -#: src/exif-common.c:451 -#, fuzzy +#: ../src/exif-common.c:552 msgid "Resolution" -msgstr "Upplsning" +msgstr "Upplösning" -#: src/exif-common.c:452 -#, fuzzy +#: ../src/exif-common.c:553 msgid "Color profile" -msgstr "Alla filer" +msgstr "Färgprofil" -#: src/filedata.c:86 +#: ../src/exif-common.c:554 +msgid "GPS position" +msgstr "GPS-position" + +#: ../src/exif-common.c:555 +msgid "GPS altitude" +msgstr "GPS-altitud" + +#: ../src/exif-common.c:556 +msgid "File size" +msgstr "Filstorlek" + +#: ../src/exif-common.c:557 +msgid "File date" +msgstr "Fildatum" + +#: ../src/exif-common.c:558 +msgid "File mode" +msgstr "Filtyp" + +#: ../src/filedata.c:91 #, c-format msgid "%d bytes" msgstr "%d byte" -#: src/filedata.c:90 +#: ../src/filedata.c:95 #, c-format msgid "%.1f K" msgstr "%.1f kilobyte" -#: src/filedata.c:94 +#: ../src/filedata.c:99 #, c-format msgid "%.1f MB" msgstr "%.1f megabyte" -#: src/filedata.c:99 +#: ../src/filedata.c:104 #, c-format msgid "%.1f GB" msgstr "%.1f gigabyte" -#: src/fullscreen.c:243 src/preferences.c:1329 +#: ../src/filedata.c:2185 +msgid "file or directory does not exist" +msgstr "filen eller mappen finns inte" + +#: ../src/filedata.c:2191 +msgid "destination already exists" +msgstr "filen finns redan" + +#: ../src/filedata.c:2197 +msgid "destination can't be overwritten" +msgstr "målfilen kan inte skrivas över" + +#: ../src/filedata.c:2203 +msgid "destination directory is not writable" +msgstr "målmappen är skrivskyddad" + +#: ../src/filedata.c:2209 +msgid "destination directory does not exist" +msgstr "målmappen finns inte" + +#: ../src/filedata.c:2215 +msgid "source directory is not writable" +msgstr "källmappen är skrivskyddad" + +#: ../src/filedata.c:2221 +msgid "no read permission" +msgstr "läsrättighet saknas" + +#: ../src/filedata.c:2227 +msgid "file is readonly" +msgstr "filen är skrivskyddad" + +#: ../src/filedata.c:2233 +msgid "destination already exists and will be overwritten" +msgstr "målfilen finns redan men kommer att skrivas över" + +#: ../src/filedata.c:2239 +msgid "source and destination are the same" +msgstr "källa och mål är desamma" + +#: ../src/filedata.c:2245 +msgid "source and destination have different extension" +msgstr "källa och mål har oliks filnamntillägg" + +#: ../src/filedata.c:2251 +msgid "there are unsaved metadata changes for the file" +msgstr "det finns osparade ändrade metadata för filen" + +#: ../src/fullscreen.c:243 +#: ../src/layout_util.c:1341 +#: ../src/layout_util.c:1342 +#: ../src/layout_util.c:1343 +#: ../src/preferences.c:1349 msgid "Full screen" -msgstr "Helskrm" +msgstr "Helskärm" -#: src/fullscreen.c:395 +#: ../src/fullscreen.c:391 msgid "Full size" msgstr "Full storlek" -#: src/fullscreen.c:400 +#: ../src/fullscreen.c:396 msgid "Monitor" -msgstr "Bildskrm" +msgstr "Bildskärm" -#: src/fullscreen.c:405 src/layout.c:455 +#: ../src/fullscreen.c:401 msgid "Screen" -msgstr "Skrm" +msgstr "Skärm" -#: src/fullscreen.c:642 +#: ../src/fullscreen.c:638 msgid "Stay above other windows" -msgstr "Stanna ovanfr andra fnster" +msgstr "Behåll fönstret överst" -#: src/fullscreen.c:649 +#: ../src/fullscreen.c:645 msgid "Determined by Window Manager" -msgstr "Hanteras av fnsterhanteraren" +msgstr "Hanteras av fönsterhanteraren" -#: src/fullscreen.c:650 +#: ../src/fullscreen.c:646 msgid "Active screen" -msgstr "Aktiv skrm" +msgstr "Aktiv skärm" -#: src/fullscreen.c:652 +#: ../src/fullscreen.c:648 msgid "Active monitor" -msgstr "Aktiv bildskrm" +msgstr "Aktiv bildskärm" -#: src/histogram.c:86 -msgid "logarithmical histogram on red" -msgstr "" +#: ../src/histogram.c:113 +msgid "Log Histogram on Red" +msgstr "Logaritmiskt histogram, rött" -#: src/histogram.c:87 -msgid "logarithmical histogram on green" -msgstr "" +#: ../src/histogram.c:114 +msgid "Log Histogram on Green" +msgstr "Logaritmiskt histogram, grönt" -#: src/histogram.c:88 -msgid "logarithmical histogram on blue" -msgstr "" +#: ../src/histogram.c:115 +msgid "Log Histogram on Blue" +msgstr "Logaritmiskt histogram, blått" -#: src/histogram.c:89 -msgid "logarithmical histogram on value" -msgstr "" +#: ../src/histogram.c:116 +msgid "Log Histogram on RGB" +msgstr "Logaritmiskt histogram, RGB" -#: src/histogram.c:90 -msgid "logarithmical histogram on RGB" -msgstr "" +#: ../src/histogram.c:117 +msgid "Log Histogram on value" +msgstr "Logaritmiskt histogram, värden" -#: src/histogram.c:91 -msgid "logarithmical histogram on max value" -msgstr "" +#: ../src/histogram.c:122 +msgid "Linear Histogram on Red" +msgstr "Linjärt histogram, rött" -#: src/histogram.c:96 -msgid "linear histogram on red" -msgstr "" +#: ../src/histogram.c:123 +msgid "Linear Histogram on Green" +msgstr "Linjärt histogram, grönt" -#: src/histogram.c:97 -msgid "linear histogram on green" -msgstr "" +#: ../src/histogram.c:124 +msgid "Linear Histogram on Blue" +msgstr "Linjärt histogram, blått" -#: src/histogram.c:98 -msgid "linear histogram on blue" -msgstr "" +#: ../src/histogram.c:125 +msgid "Linear Histogram on RGB" +msgstr "Linjärt histogram, RGB" -#: src/histogram.c:99 -msgid "linear histogram on value" -msgstr "" +#: ../src/histogram.c:126 +msgid "Linear Histogram on value" +msgstr "Linjärt histogram, värden" -#: src/histogram.c:100 -msgid "linear histogram on RGB" -msgstr "" +#: ../src/history_list.c:131 +#, c-format +msgid "Unable to write history lists to: %s\n" +msgstr "Kan inte skriva historiklistor till: %s\n" -#: src/histogram.c:101 -msgid "linear histogram on max value" -msgstr "" +#: ../src/image.c:161 +#, c-format +msgid " (Collection %s)" +msgstr " (Kollektion %s)" -#: src/img-view.c:1268 src/layout_image.c:743 src/layout_util.c:1105 -#: src/layout_util.c:1106 src/layout_util.c:1107 src/pan-view.c:2800 +#: ../src/img-view.c:1266 +#: ../src/layout_image.c:489 +#: ../src/layout_util.c:1308 +#: ../src/layout_util.c:1309 +#: ../src/layout_util.c:1324 +#: ../src/layout_util.c:1325 +#: ../src/pan-view.c:2830 msgid "Zoom _in" msgstr "Zooma _in" -#: src/img-view.c:1269 src/layout_image.c:744 src/layout_util.c:1108 -#: src/layout_util.c:1109 src/pan-view.c:2802 +#: ../src/img-view.c:1267 +#: ../src/layout_image.c:490 +#: ../src/layout_util.c:1310 +#: ../src/layout_util.c:1311 +#: ../src/layout_util.c:1326 +#: ../src/layout_util.c:1327 +#: ../src/pan-view.c:2832 msgid "Zoom _out" msgstr "Zooma _ut" -#: src/img-view.c:1270 src/layout_image.c:745 src/layout_util.c:1110 -#: src/layout_util.c:1111 src/pan-view.c:2804 +#: ../src/img-view.c:1268 +#: ../src/layout_image.c:491 +#: ../src/layout_util.c:1312 +#: ../src/layout_util.c:1313 +#: ../src/layout_util.c:1328 +#: ../src/layout_util.c:1329 +#: ../src/pan-view.c:2834 msgid "Zoom _1:1" msgstr "Zooma _1:1" -#: src/img-view.c:1271 src/layout_image.c:746 +#: ../src/img-view.c:1269 +#: ../src/layout_image.c:492 msgid "Fit image to _window" -msgstr "Anpassa bild till fnster_storlek" +msgstr "Anpassa bild till fönster_storlek" -#: src/img-view.c:1276 src/layout_image.c:752 src/layout_util.c:1103 +#: ../src/img-view.c:1277 +#: ../src/layout_image.c:501 +#: ../src/layout_util.c:1306 msgid "Set as _wallpaper" -msgstr "Stll in som skrivbords_underlag" +msgstr "Använd som skrivbords_underlag" -#: src/img-view.c:1283 src/layout_image.c:762 +#: ../src/img-view.c:1282 +#: ../src/layout_image.c:508 msgid "_Go to directory view" -msgstr "" +msgstr "_Gå till mappvy" -#: src/img-view.c:1297 src/layout_image.c:786 +#: ../src/img-view.c:1295 +#: ../src/layout_image.c:529 msgid "_Stop slideshow" msgstr "_Stoppa bildspel" -#: src/img-view.c:1300 src/layout_image.c:789 +#: ../src/img-view.c:1298 +#: ../src/layout_image.c:532 msgid "Continue slides_how" -msgstr "Forts_tt bildspel" +msgstr "Forts_ätt bildspel" -#: src/img-view.c:1305 src/img-view.c:1313 src/layout_image.c:794 -#: src/layout_image.c:801 +#: ../src/img-view.c:1303 +#: ../src/img-view.c:1311 +#: ../src/layout_image.c:537 +#: ../src/layout_image.c:544 msgid "Pause slides_how" msgstr "_Pausa bildspel" -#: src/img-view.c:1311 src/layout_image.c:800 +#: ../src/img-view.c:1309 +#: ../src/layout_image.c:543 msgid "_Start slideshow" msgstr "_Starta bildspel" -#: src/img-view.c:1319 src/layout_image.c:811 src/pan-view.c:2873 +#: ../src/img-view.c:1317 +#: ../src/layout_image.c:554 +#: ../src/pan-view.c:2903 msgid "Exit _full screen" -msgstr "Avsluta _helskrmslge" +msgstr "Avsluta _helskärmsläge" -#: src/img-view.c:1323 src/layout_image.c:807 src/pan-view.c:2877 +#: ../src/img-view.c:1321 +#: ../src/layout_image.c:550 +#: ../src/pan-view.c:2907 msgid "_Full screen" -msgstr "_Helskrmslge" +msgstr "_Helskärmsläge" -#: src/img-view.c:1327 src/layout_util.c:1074 src/pan-view.c:2881 +#: ../src/img-view.c:1325 +#: ../src/layout_util.c:1291 +#: ../src/pan-view.c:2911 msgid "C_lose window" -msgstr "_Stng fnster" - -#: src/info.c:392 -msgid "File size:" -msgstr "Filstorlek:" - -#: src/info.c:394 -msgid "Dimensions:" -msgstr "Dimensioner:" - -#: src/info.c:395 -msgid "Transparent:" -msgstr "Transparent:" - -#: src/info.c:396 src/print.c:3419 -msgid "Image size:" -msgstr "Bildstorlek:" - -#: src/info.c:398 -msgid "Compress ratio:" -msgstr "Kompression:" - -#: src/info.c:399 -msgid "File type:" -msgstr "Filtyp:" - -#: src/info.c:401 -msgid "Owner:" -msgstr "gare:" - -#: src/info.c:402 -msgid "Group:" -msgstr "Grupp:" - -#: src/info.c:405 src/preferences.c:858 -msgid "General" -msgstr "Allmnt" - -#: src/info.c:531 -#, c-format -msgid "Image %d of %d" -msgstr "Bild %d av %d" - -#: src/info.c:778 -#, fuzzy -msgid "Image properties" -msgstr "Bildegenskaper - Geeqie" +msgstr "_Stäng fönster" -#: src/layout.c:282 src/view_file.c:585 +#: ../src/layout.c:363 +#: ../src/view_file.c:613 msgid "Ascending" msgstr "Stigande" -#: src/layout.c:384 -#, c-format -msgid "This installation of %s was not built with support for color profiles." -msgstr "" - -#: src/layout.c:385 -#, fuzzy -msgid "Color profiles not supported" -msgstr "Mappen hittades inte" - -#: src/layout.c:410 -msgid "Use _color profiles" -msgstr "" - -#: src/layout.c:415 -msgid "Use profile from _image" -msgstr "" - -#: src/layout.c:421 src/layout.c:439 -#, c-format -msgid "Input _%d:" -msgstr "" - -#: src/layout.c:422 -msgid "AdobeRGB compatible" -msgstr "" - -#: src/layout.c:464 -msgid "_Screen profile" -msgstr "" - -#: src/layout.c:531 +#: ../src/layout.c:433 msgid " Slideshow" msgstr " Bildspel" -#: src/layout.c:535 +#: ../src/layout.c:437 msgid " Paused" msgstr " Pausat" -#: src/layout.c:552 +#: ../src/layout.c:453 #, c-format msgid "%s, %d files (%s, %d)%s" msgstr "%s, %d filer (%s, %d)%s" -#: src/layout.c:559 +#: ../src/layout.c:460 #, c-format msgid "%s, %d files%s" msgstr "%s, %d filer%s" -#: src/layout.c:564 +#: ../src/layout.c:465 #, c-format msgid "%d files%s" msgstr "%d filer%s" -#: src/layout.c:593 +#: ../src/layout.c:510 #, c-format msgid "(no read permission) %s bytes" -msgstr "(ingen lsrttighet) %s byte" +msgstr "(ingen läsrättighet) %s byte" -#: src/layout.c:597 +#: ../src/layout.c:514 #, c-format msgid "( ? x ? ) %s bytes" -msgstr "( ? ? ) %s byte" +msgstr "( ? × ? ) %s byte" -#: src/layout.c:605 +#: ../src/layout.c:522 #, c-format msgid "( %d x %d ) %s bytes" -msgstr "( %d %d ) %s byte" +msgstr "( %d × %d ) %s byte" -#: src/layout.c:1301 src/layout_config.c:58 +#: ../src/layout.c:1243 +#: ../src/layout_config.c:58 msgid "Tools" msgstr "Verktyg" -#: src/layout.c:1983 -#, fuzzy +#: ../src/layout.c:1873 +msgid "Window options and layout" +msgstr "Bildvisningsfönstret" + +#: ../src/layout.c:1932 +msgid "General options" +msgstr "Allmänt" + +#: ../src/layout.c:1934 +msgid "Home path (empty to use your home directory)" +msgstr "Startmapp (tomt = egen hemmamapp)" + +#: ../src/layout.c:1942 +msgid "Use current" +msgstr "Använd aktuell" + +#: ../src/layout.c:1945 +msgid "Show date in directories list view" +msgstr "Visa datum i mapplistvyn" + +#: ../src/layout.c:1948 +msgid "Exit program when this window is closed" +msgstr "Avsluta programmet när det här fönstret stängs" + +#: ../src/layout.c:1951 +msgid "Start-up directory:" +msgstr "Startmapp" + +#: ../src/layout.c:1953 +msgid "No change" +msgstr "Ingen ändring" + +#: ../src/layout.c:1956 +msgid "Restore last path" +msgstr "Återställ senaste sökväg" + +#: ../src/layout.c:1959 +msgid "Home path" +msgstr "Hemsökväg" + +#: ../src/layout.c:1963 +#: ../src/print.c:3381 +#: ../src/print.c:3388 +msgid "Layout" +msgstr "Layout" + +#: ../src/layout.c:2207 msgid "Invalid geometry\n" -msgstr "Ogiltig mapp" +msgstr "Ogiltig geometri\n" -#: src/layout_config.c:58 src/ui_pathsel.c:1183 +#: ../src/layout_config.c:58 +#: ../src/preferences.c:1446 +#: ../src/ui_pathsel.c:1179 msgid "Files" msgstr "Filer" -#: src/layout_config.c:58 src/preferences.c:941 src/print.c:116 +#: ../src/layout_config.c:58 +#: ../src/preferences.c:91 +#: ../src/preferences.c:1240 +#: ../src/print.c:123 msgid "Image" msgstr "Bild" -#: src/layout_config.c:364 +#: ../src/layout_config.c:364 msgid "(drag to change order)" -msgstr "(dra-och-slpp fr att byta ordning)" +msgstr "Dra-och-släpp för att byta ordning!" -#: src/layout_image.c:816 +#: ../src/layout_image.c:559 msgid "Hide file _list" -msgstr "Dlj fil_lista" +msgstr "Dölj fil_lista" + +#: ../src/layout_image.c:1559 +#, c-format +msgid "[%*d,%*d]: RGB(%3d,%3d,%3d)" +msgstr "[%*d,%*d]: RGB(%3d,%3d,%3d)" -#: src/layout_util.c:879 src/menu.c:76 -#, fuzzy, c-format -msgid "_%d %s..." -msgstr "i %s..." - -#: src/layout_util.c:883 src/menu.c:78 -#, fuzzy, c-format -msgid "_%d (unknown)..." -msgstr "i (oknd)..." - -#: src/layout_util.c:893 -#, fuzzy, c-format -msgid "_%d empty" -msgstr "tom" +#: ../src/layout_image.c:1567 +#, c-format +msgid "[%*s,%*s]: RGB(---,---,---)" +msgstr "[%*s,%*s]: RGB(---,---,---)" -#: src/layout_util.c:1037 +#: ../src/layout_util.c:1246 msgid "_File" msgstr "_Arkiv" -#: src/layout_util.c:1038 +#: ../src/layout_util.c:1247 msgid "_Go" -msgstr "" +msgstr "_Gå" -#: src/layout_util.c:1039 src/menu.c:93 +#: ../src/layout_util.c:1248 +#: ../src/menu.c:109 msgid "_Edit" msgstr "_Redigera" -#: src/layout_util.c:1040 -#, fuzzy +#: ../src/layout_util.c:1249 msgid "_Select" -msgstr "Markering" - -#: src/layout_util.c:1041 src/menu.c:265 -msgid "_Adjust" -msgstr "_Justera" +msgstr "_Markera" -#: src/layout_util.c:1043 -msgid "_View Directory as" -msgstr "" +#: ../src/layout_util.c:1250 +#: ../src/menu.c:276 +msgid "_Orientation" +msgstr "_Orientering" + +#: ../src/layout_util.c:1251 +msgid "E_xternal Editors" +msgstr "E_xterna redigerare" + +#: ../src/layout_util.c:1252 +msgid "P_references" +msgstr "_Inställningar" + +#: ../src/layout_util.c:1254 +msgid "_Files and Folders" +msgstr "_Filer och mappar" -#: src/layout_util.c:1044 -#, fuzzy +#: ../src/layout_util.c:1255 msgid "_Zoom" -msgstr "Zooma" +msgstr "_Zooma" -#: src/layout_util.c:1045 -msgid "_Split" -msgstr "" +#: ../src/layout_util.c:1256 +msgid "_Color Management" +msgstr "F_ärghantering" + +#: ../src/layout_util.c:1257 +msgid "_Connected Zoom" +msgstr "_Zooma" + +#: ../src/layout_util.c:1258 +msgid "Spli_t" +msgstr "Fönster_delning" + +#: ../src/layout_util.c:1259 +#: ../src/layout_util.c:1373 +msgid "Image _Overlay" +msgstr "Bild_overlay" -#: src/layout_util.c:1046 +#: ../src/layout_util.c:1260 msgid "_Help" -msgstr "_Hjlp" +msgstr "_Hjälp" -#: src/layout_util.c:1048 -#, fuzzy +#: ../src/layout_util.c:1262 msgid "_First Image" -msgstr "frsta bilden" +msgstr "till _första bilden" -#: src/layout_util.c:1049 src/layout_util.c:1050 src/layout_util.c:1051 -#, fuzzy +#: ../src/layout_util.c:1262 +msgid "First Image" +msgstr "Första bilden" + +#: ../src/layout_util.c:1263 +#: ../src/layout_util.c:1264 +#: ../src/layout_util.c:1265 msgid "_Previous Image" -msgstr "fregende bild" +msgstr "till före_gående bild" -#: src/layout_util.c:1052 src/layout_util.c:1053 src/layout_util.c:1054 -#, fuzzy +#: ../src/layout_util.c:1263 +#: ../src/layout_util.c:1264 +#: ../src/layout_util.c:1265 +msgid "Previous Image" +msgstr "Föregående bild" + +#: ../src/layout_util.c:1266 +#: ../src/layout_util.c:1267 +#: ../src/layout_util.c:1268 msgid "_Next Image" -msgstr "nsta bild" +msgstr "till _nästa bild" -#: src/layout_util.c:1055 -#, fuzzy +#: ../src/layout_util.c:1266 +#: ../src/layout_util.c:1267 +#: ../src/layout_util.c:1268 +msgid "Next Image" +msgstr "Nästa bild" + +#: ../src/layout_util.c:1269 msgid "_Last Image" -msgstr "sista bilden" +msgstr "till _sista bilden" -#: src/layout_util.c:1058 +#: ../src/layout_util.c:1269 +msgid "Last Image" +msgstr "Sista bilden" + +#: ../src/layout_util.c:1270 +msgid "_Back" +msgstr "_tillbaka" + +#: ../src/layout_util.c:1270 +msgid "Back" +msgstr "Tillbaka" + +#: ../src/layout_util.c:1271 +msgid "_Home" +msgstr "_hem" + +#: ../src/layout_util.c:1271 +#: ../src/options.c:136 +#: ../src/ui_bookmark.c:543 +#: ../src/ui_pathsel.c:1047 +msgid "Home" +msgstr "Hem" + +#: ../src/layout_util.c:1273 msgid "New _window" -msgstr "Nytt _fnster" +msgstr "_Nytt fönster" + +#: ../src/layout_util.c:1273 +msgid "New window" +msgstr "Nytt fönster" -#: src/layout_util.c:1059 +#: ../src/layout_util.c:1274 msgid "_New collection" -msgstr "_Nytt album" +msgstr "Ny k_ollektion" -#: src/layout_util.c:1060 +#: ../src/layout_util.c:1274 +msgid "New collection" +msgstr "Ny kollektion" + +#: ../src/layout_util.c:1275 msgid "_Open collection..." -msgstr "ppna _album..." +msgstr "_Öppna kollektion..." + +#: ../src/layout_util.c:1275 +msgid "Open collection..." +msgstr "Öppna kollektion..." -#: src/layout_util.c:1061 -msgid "Open _recent" -msgstr "_ppna senaste" +#: ../src/layout_util.c:1276 +msgid "Open recen_t" +msgstr "S_enaste kollektion" -#: src/layout_util.c:1062 +#: ../src/layout_util.c:1276 +msgid "Open recent" +msgstr "Öppna senaste kollektion" + +#: ../src/layout_util.c:1277 msgid "_Search..." -msgstr "_Sk..." +msgstr "_Hitta..." -#: src/layout_util.c:1064 -#, fuzzy -msgid "Pan _view" -msgstr "Avancerad vy" +#: ../src/layout_util.c:1277 +msgid "Search..." +msgstr "Hitta..." -#: src/layout_util.c:1065 +#: ../src/layout_util.c:1278 +msgid "Find duplicates..." +msgstr "Sök dubletter..." + +#: ../src/layout_util.c:1279 +msgid "Pa_n view" +msgstr "_Panelvy" + +#: ../src/layout_util.c:1279 +msgid "Pan view" +msgstr "Panelvy" + +#: ../src/layout_util.c:1280 msgid "_Print..." -msgstr "_Skriv ut..." +msgstr "Skriv _ut..." -#: src/layout_util.c:1066 +#: ../src/layout_util.c:1281 msgid "N_ew folder..." msgstr "Ny _mapp..." -#: src/layout_util.c:1075 +#: ../src/layout_util.c:1281 +msgid "New folder..." +msgstr "Ny mapp..." + +#: ../src/layout_util.c:1282 +msgid "Copy..." +msgstr "Kopiera..." + +#: ../src/layout_util.c:1283 +msgid "Move..." +msgstr "Flytta..." + +#: ../src/layout_util.c:1284 +msgid "Rename..." +msgstr "Byt namn..." + +#: ../src/layout_util.c:1285 +#: ../src/layout_util.c:1286 +#: ../src/layout_util.c:1287 +msgid "Delete..." +msgstr "Ta bort..." + +#: ../src/layout_util.c:1288 +#: ../src/view_file.c:603 +msgid "Enable file _grouping" +msgstr "Aktivera fil_gruppering" + +#: ../src/layout_util.c:1288 +msgid "Enable file grouping" +msgstr "Aktivera filgruppering" + +#: ../src/layout_util.c:1289 +#: ../src/view_file.c:605 +msgid "Disable file groupi_ng" +msgstr "Avaktivera filgrupperi_ng" + +#: ../src/layout_util.c:1289 +msgid "Disable file grouping" +msgstr "Avaktivera filgruppering" + +#: ../src/layout_util.c:1290 +msgid "_Copy path to clipboard" +msgstr "_Kopiera komplett filnamn till Urklipp" + +#: ../src/layout_util.c:1290 +msgid "Copy path to clipboard" +msgstr "Kopiera komplett filnamn till Urklipp" + +#: ../src/layout_util.c:1291 +msgid "Close window" +msgstr "Stäng _fönstret" + +#: ../src/layout_util.c:1292 msgid "_Quit" -msgstr "A_vsluta" +msgstr "_Avsluta" -#: src/layout_util.c:1088 src/menu.c:203 +#: ../src/layout_util.c:1292 +msgid "Quit" +msgstr "Avsluta" + +#: ../src/layout_util.c:1293 +#: ../src/menu.c:218 msgid "_Rotate clockwise" msgstr "_Rotera medurs" -#: src/layout_util.c:1089 src/menu.c:206 +#: ../src/layout_util.c:1293 +msgid "Rotate clockwise" +msgstr "Rotera medurs" + +#: ../src/layout_util.c:1294 +#: ../src/menu.c:221 msgid "Rotate _counterclockwise" -msgstr "Rotera mot_urs" +msgstr "R_otera moturs" -#: src/layout_util.c:1090 +#: ../src/layout_util.c:1294 +msgid "Rotate counterclockwise" +msgstr "Rotera moturs" + +#: ../src/layout_util.c:1295 msgid "Rotate 1_80" -msgstr "Rotera 1_80" +msgstr "Rotera 1_80°" + +#: ../src/layout_util.c:1295 +msgid "Rotate 180" +msgstr "Rotera 180°" -#: src/layout_util.c:1091 src/menu.c:212 +#: ../src/layout_util.c:1296 +#: ../src/menu.c:227 msgid "_Mirror" msgstr "Spegla _horisontellt" -#: src/layout_util.c:1092 src/menu.c:215 +#: ../src/layout_util.c:1296 +msgid "Mirror" +msgstr "Spegla horisontellt" + +#: ../src/layout_util.c:1297 +#: ../src/menu.c:230 msgid "_Flip" msgstr "Spegla _vertikalt" -#: src/layout_util.c:1093 src/menu.c:218 -#, fuzzy -msgid "Toggle _grayscale" -msgstr "Vxla _bildspel" +#: ../src/layout_util.c:1297 +msgid "Flip" +msgstr "Spegla vertikalt" -#: src/layout_util.c:1094 src/menu.c:221 -#, fuzzy +#: ../src/layout_util.c:1298 +#: ../src/menu.c:233 msgid "_Original state" -msgstr "Ursprungligt namn" +msgstr "_Ursprunglig orientering" -#: src/layout_util.c:1097 +#: ../src/layout_util.c:1298 +msgid "Original state" +msgstr "Ursprunglig orientering" + +#: ../src/layout_util.c:1299 msgid "Select _all" msgstr "Markera _alla" -#: src/layout_util.c:1098 +#: ../src/layout_util.c:1300 msgid "Select _none" msgstr "Markera _ingen" -#: src/layout_util.c:1099 -#, fuzzy +#: ../src/layout_util.c:1301 msgid "_Invert Selection" -msgstr "Markering" +msgstr "I_nvertera markeringar" + +#: ../src/layout_util.c:1301 +msgid "Invert Selection" +msgstr "Invertera markeringar" -#: src/layout_util.c:1101 +#: ../src/layout_util.c:1302 msgid "P_references..." -msgstr "In_stllningar..." +msgstr "_Ställ in..." -#: src/layout_util.c:1102 +#: ../src/layout_util.c:1302 +msgid "Preferences..." +msgstr "Ställ in..." + +#: ../src/layout_util.c:1303 +msgid "Configure _Editors..." +msgstr "_Konfigurera textredigerare..." + +#: ../src/layout_util.c:1303 +msgid "Configure Editors..." +msgstr "Konfigurera textredigerare..." + +#: ../src/layout_util.c:1304 +msgid "_Configure this window..." +msgstr "_Bildvisningsfönstret..." + +#: ../src/layout_util.c:1304 +msgid "Configure this window..." +msgstr "Bildvisningsfönstret..." + +#: ../src/layout_util.c:1305 msgid "_Thumbnail maintenance..." -msgstr "_Miniatyrbildsunderhll..." +msgstr "_Miniatyrbildsunderhåll..." + +#: ../src/layout_util.c:1305 +msgid "Thumbnail maintenance..." +msgstr "Miniatyrbildsunderhåll..." + +#: ../src/layout_util.c:1306 +msgid "Set as wallpaper" +msgstr "Använd som skrivbordsunderlag" + +#: ../src/layout_util.c:1307 +msgid "_Save metadata" +msgstr "_Spara metadata" + +#: ../src/layout_util.c:1307 +msgid "Save metadata" +msgstr "Spara metadata" + +#: ../src/layout_util.c:1308 +#: ../src/layout_util.c:1309 +msgid "Zoom in" +msgstr "Zooma in" + +#: ../src/layout_util.c:1310 +#: ../src/layout_util.c:1311 +msgid "Zoom out" +msgstr "Zooma ut" -#: src/layout_util.c:1112 src/layout_util.c:1113 +#: ../src/layout_util.c:1312 +#: ../src/layout_util.c:1313 +msgid "Zoom 1:1" +msgstr "Zooma 1:1" + +#: ../src/layout_util.c:1314 +#: ../src/layout_util.c:1315 +#: ../src/layout_util.c:1330 +#: ../src/layout_util.c:1331 msgid "_Zoom to fit" -msgstr "_Zooma s bilden passar" +msgstr "_Zooma så bilden passar" -#: src/layout_util.c:1114 +#: ../src/layout_util.c:1314 +#: ../src/layout_util.c:1315 +msgid "Zoom to fit" +msgstr "_Zooma till fönsterpassning" + +#: ../src/layout_util.c:1316 +#: ../src/layout_util.c:1332 msgid "Fit _Horizontally" -msgstr "" +msgstr "Anpassa _horisontellt" -#: src/layout_util.c:1115 -msgid "Fit _Vorizontally" -msgstr "" +#: ../src/layout_util.c:1316 +msgid "Fit Horizontally" +msgstr "Anpassa horisontellt" + +#: ../src/layout_util.c:1317 +#: ../src/layout_util.c:1333 +msgid "Fit _Vertically" +msgstr "_Vertikalanpassa" + +#: ../src/layout_util.c:1317 +msgid "Fit Vertically" +msgstr "Vertikalanpassa" -#: src/layout_util.c:1116 -#, fuzzy +#: ../src/layout_util.c:1318 +#: ../src/layout_util.c:1334 msgid "Zoom _2:1" -msgstr "Zooma _1:1" +msgstr "Zooma _2:1" -#: src/layout_util.c:1117 -#, fuzzy +#: ../src/layout_util.c:1318 +msgid "Zoom 2:1" +msgstr "Zooma 2:1" + +#: ../src/layout_util.c:1319 +#: ../src/layout_util.c:1335 msgid "Zoom _3:1" -msgstr "Zooma _1:1" +msgstr "Zooma _3:1" -#: src/layout_util.c:1118 -#, fuzzy +#: ../src/layout_util.c:1319 +msgid "Zoom 3:1" +msgstr "Zooma 3:1" + +#: ../src/layout_util.c:1320 +#: ../src/layout_util.c:1336 msgid "Zoom _4:1" -msgstr "Zooma _1:1" +msgstr "Zooma _4:1" -#: src/layout_util.c:1119 -#, fuzzy +#: ../src/layout_util.c:1320 +msgid "Zoom 4:1" +msgstr "Zooma 4:1" + +#: ../src/layout_util.c:1321 +#: ../src/layout_util.c:1337 msgid "Zoom 1:2" -msgstr "Zooma _1:1" +msgstr "Zooma 1:2" -#: src/layout_util.c:1120 -#, fuzzy +#: ../src/layout_util.c:1322 +#: ../src/layout_util.c:1338 msgid "Zoom 1:3" -msgstr "Zooma _1:1" +msgstr "Zooma 1:3" -#: src/layout_util.c:1121 -#, fuzzy +#: ../src/layout_util.c:1323 +#: ../src/layout_util.c:1339 msgid "Zoom 1:4" -msgstr "Zooma _1:1" - -#: src/layout_util.c:1124 -#, fuzzy -msgid "_View in new window" -msgstr "Visa i _nytt fnster" +msgstr "Zooma 1:4" -#: src/layout_util.c:1126 src/layout_util.c:1127 src/layout_util.c:1128 -msgid "F_ull screen" -msgstr "_Helskrm" +#: ../src/layout_util.c:1324 +#: ../src/layout_util.c:1325 +msgid "Connected Zoom in" +msgstr "Zooma in" -#: src/layout_util.c:1129 src/layout_util.c:1130 -#, fuzzy -msgid "Escape" -msgstr "liggande" +#: ../src/layout_util.c:1326 +#: ../src/layout_util.c:1327 +msgid "Connected Zoom out" +msgstr "Ställ in zoom ut" + +#: ../src/layout_util.c:1328 +#: ../src/layout_util.c:1329 +msgid "Connected Zoom 1:1" +msgstr "Ställ in zoom 1:1" + +#: ../src/layout_util.c:1330 +#: ../src/layout_util.c:1331 +msgid "Connected Zoom to fit" +msgstr "Ställ in fönsterpassning" + +#: ../src/layout_util.c:1332 +msgid "Connected Fit Horizontally" +msgstr "Horisontell fönsterpassning" + +#: ../src/layout_util.c:1333 +msgid "Connected Fit Vertically" +msgstr "Vertikal fönsterpassning" + +#: ../src/layout_util.c:1334 +msgid "Connected Zoom 2:1" +msgstr "Ställ in zoom 2:1" + +#: ../src/layout_util.c:1335 +msgid "Connected Zoom 3:1" +msgstr "Ställ in zoom 3:1" + +#: ../src/layout_util.c:1336 +msgid "Connected Zoom 4:1" +msgstr "Ställ in zoom 4:1" + +#: ../src/layout_util.c:1337 +msgid "Connected Zoom 1:2" +msgstr "Ställ in zoom 1:2" + +#: ../src/layout_util.c:1338 +msgid "Connected Zoom 1:3" +msgstr "Ställ in zoom 1:3" + +#: ../src/layout_util.c:1339 +msgid "Connected Zoom 1:4" +msgstr "Ställ in zooma 1:4" -#: src/layout_util.c:1131 -msgid "_Image Overlay" -msgstr "" +#: ../src/layout_util.c:1340 +msgid "_View in new window" +msgstr "_Visa i nytt fönster" -#: src/layout_util.c:1132 -msgid "Histogram _channels" -msgstr "" +#: ../src/layout_util.c:1340 +msgid "View in new window" +msgstr "Visa i nytt fönster" + +#: ../src/layout_util.c:1341 +#: ../src/layout_util.c:1342 +#: ../src/layout_util.c:1343 +msgid "F_ull screen" +msgstr "_Helskärm" -#: src/layout_util.c:1133 -msgid "Histogram _log mode" -msgstr "" +#: ../src/layout_util.c:1344 +#: ../src/layout_util.c:1345 +msgid "_Leave full screen" +msgstr "_Avsluta helskärmsläge" + +#: ../src/layout_util.c:1344 +#: ../src/layout_util.c:1345 +msgid "Leave full screen" +msgstr "Avsluta helskärmsläge" + +#: ../src/layout_util.c:1346 +msgid "_Cycle through overlay modes" +msgstr "Vä_xla mellan overlay-alternativ" + +#: ../src/layout_util.c:1346 +msgid "Cycle through Overlay modes" +msgstr "Växla mellan overlay-alternativ" + +#: ../src/layout_util.c:1347 +msgid "Cycle through histogram ch_annels" +msgstr "Växla mellan histogramkan_aler" + +#: ../src/layout_util.c:1347 +msgid "Cycle through histogram channels" +msgstr "Växla mellan histogramkanaler" + +#: ../src/layout_util.c:1348 +msgid "Cycle through histogram mo_des" +msgstr "Växla mellan histogramt_yper" + +#: ../src/layout_util.c:1348 +msgid "Cycle through histogram modes" +msgstr "Växla mellan histogramtyper" -#: src/layout_util.c:1134 +#: ../src/layout_util.c:1349 msgid "_Hide file list" -msgstr "_Dlj fillista" +msgstr "_Dölj fillista" -#: src/layout_util.c:1135 -#, fuzzy +#: ../src/layout_util.c:1349 +msgid "Hide file list" +msgstr "Göm fillistan" + +#: ../src/layout_util.c:1350 msgid "_Pause slideshow" -msgstr "_Pausa bildspel" +msgstr "_Stoppa bildspel" -#: src/layout_util.c:1136 +#: ../src/layout_util.c:1350 +msgid "Pause slideshow" +msgstr "Stoppa bildspel" + +#: ../src/layout_util.c:1351 msgid "_Refresh" msgstr "_Uppdatera" -#: src/layout_util.c:1138 +#: ../src/layout_util.c:1351 +msgid "Refresh" +msgstr "Uppdatera" + +#: ../src/layout_util.c:1352 msgid "_Contents" -msgstr "_Innehll" +msgstr "_Innehåll" -#: src/layout_util.c:1139 +#: ../src/layout_util.c:1352 +msgid "Contents" +msgstr "Innehåll" + +#: ../src/layout_util.c:1353 msgid "_Keyboard shortcuts" -msgstr "_Tangentbordsgenvgar" +msgstr "_Tangentbordsgenvägar" + +#: ../src/layout_util.c:1353 +msgid "Keyboard shortcuts" +msgstr "Tangentbordsgenvägar" -#: src/layout_util.c:1140 +#: ../src/layout_util.c:1354 msgid "_Release notes" -msgstr "_Utgvenoteringar" +msgstr "_Utgåvenoteringar" -#: src/layout_util.c:1141 +#: ../src/layout_util.c:1354 +msgid "Release notes" +msgstr "Utgåvenoteringar" + +#: ../src/layout_util.c:1355 msgid "_About" msgstr "_Om" -#: src/layout_util.c:1145 src/layout_util.c:1546 -msgid "_Thumbnails" -msgstr "_Miniatyrbilder" +#: ../src/layout_util.c:1355 +#: ../src/preferences.c:2108 +msgid "About" +msgstr "Om..." + +#: ../src/layout_util.c:1356 +msgid "_Log Window" +msgstr "_Loggfönster" + +#: ../src/layout_util.c:1356 +msgid "Log Window" +msgstr "Loggfönster" + +#: ../src/layout_util.c:1357 +msgid "_Exif window" +msgstr "_Exif-fönster" + +#: ../src/layout_util.c:1357 +msgid "Exif window" +msgstr "Exif-fönster" -#: src/layout_util.c:1146 -#, fuzzy +#: ../src/layout_util.c:1362 +msgid "Show _Thumbnails" +msgstr "Visa _miniatyrbilder" + +#: ../src/layout_util.c:1362 +msgid "Show Thumbnails" +msgstr "Visa miniatyrbilder" + +#: ../src/layout_util.c:1363 msgid "Show _Marks" -msgstr "Visa dolda" +msgstr "Visa _märken" + +#: ../src/layout_util.c:1363 +msgid "Show Marks" +msgstr "Visa märken" -#: src/layout_util.c:1147 +#: ../src/layout_util.c:1364 +msgid "Pi_xel Info" +msgstr "Pi_xelinformation" + +#: ../src/layout_util.c:1364 +msgid "Show Pixel Info" +msgstr "Visa pixelinformation" + +#: ../src/layout_util.c:1365 msgid "_Float file list" -msgstr "_Ta loss fillista" +msgstr "Ta loss _fillista" -#: src/layout_util.c:1148 +#: ../src/layout_util.c:1365 +msgid "Float file list" +msgstr "Lösgör fillistan" + +#: ../src/layout_util.c:1366 msgid "Hide tool_bar" -msgstr "Dlj _verktygsrad" +msgstr "Dölj _verktygsrad" + +#: ../src/layout_util.c:1366 +msgid "Hide toolbar" +msgstr "Dölj verktygsrad" -#: src/layout_util.c:1149 -msgid "_Keywords" -msgstr "_Nyckelord" +#: ../src/layout_util.c:1367 +msgid "_Info sidebar" +msgstr "_Informationskolumn" -#: src/layout_util.c:1150 -msgid "E_xif data" -msgstr "_Exif-information" +#: ../src/layout_util.c:1367 +msgid "Info sidebar" +msgstr "Informationskolumn" -#: src/layout_util.c:1151 +#: ../src/layout_util.c:1368 msgid "Sort _manager" msgstr "_Sorteringshanterare" -#: src/layout_util.c:1152 -msgid "Co_nnected scroll" -msgstr "" - -#: src/layout_util.c:1153 -msgid "C_onnected zoom" -msgstr "" +#: ../src/layout_util.c:1368 +msgid "Sort manager" +msgstr "Sorteringshanterare" -#: src/layout_util.c:1154 +#: ../src/layout_util.c:1369 msgid "Toggle _slideshow" -msgstr "Vxla _bildspel" +msgstr "Växla _bildspel" + +#: ../src/layout_util.c:1369 +msgid "Toggle slideshow" +msgstr "Växla bildspel" + +#: ../src/layout_util.c:1370 +msgid "Use _color profiles" +msgstr "Använd _färgprofiler" + +#: ../src/layout_util.c:1370 +msgid "Use color profiles" +msgstr "Använd färgprofiler" -#: src/layout_util.c:1158 src/view_dir.c:29 -msgid "_List" -msgstr "_Lista" +#: ../src/layout_util.c:1371 +msgid "Use profile from _image" +msgstr "Använd b_ildens profil" + +#: ../src/layout_util.c:1371 +msgid "Use profile from image" +msgstr "Använd bildens profil" + +#: ../src/layout_util.c:1372 +msgid "Toggle _grayscale" +msgstr "Växla _gråskala - färg" + +#: ../src/layout_util.c:1372 +msgid "Toggle grayscale" +msgstr "Växla gråskala - färg" + +#: ../src/layout_util.c:1373 +msgid "Image Overlay" +msgstr "Bildoverlay" + +#: ../src/layout_util.c:1374 +msgid "_Show Histogram" +msgstr "_Visa histogram" + +#: ../src/layout_util.c:1374 +msgid "Show Histogram" +msgstr "Visa histogram" -#: src/layout_util.c:1159 +#: ../src/layout_util.c:1378 +msgid "Image _List" +msgstr "Fil_namnlista" + +#: ../src/layout_util.c:1378 +msgid "View Images as List" +msgstr "Visa filnamnlista" + +#: ../src/layout_util.c:1379 msgid "I_cons" -msgstr "I_koner" +msgstr "_Ikoner" -#: src/layout_util.c:1163 -msgid "Horizontal" -msgstr "" +#: ../src/layout_util.c:1379 +msgid "View Images as Icons" +msgstr "Visa bildikoner" -#: src/layout_util.c:1164 -#, fuzzy -msgid "Vertical" -msgstr "partiell" +#: ../src/layout_util.c:1383 +msgid "Folder Li_st" +msgstr "Mapp_lista" -#: src/layout_util.c:1165 -msgid "Quad" -msgstr "" +#: ../src/layout_util.c:1383 +msgid "View Folders as List" +msgstr "Visa mapplista" -#: src/layout_util.c:1166 -#, fuzzy -msgid "Single" -msgstr "Storlek" +#: ../src/layout_util.c:1384 +msgid "Folder T_ree" +msgstr "Mapp_träd" -#: src/layout_util.c:1354 +#: ../src/layout_util.c:1384 +msgid "View Folders as Tree" +msgstr "Visa mappträd" + +#: ../src/layout_util.c:1388 +msgid "_Horizontal" +msgstr "_horisontellt" + +#: ../src/layout_util.c:1388 +msgid "Split Horizontal" +msgstr "Dela horisontellt" + +#: ../src/layout_util.c:1389 +msgid "_Vertical" +msgstr "_verikalt" + +#: ../src/layout_util.c:1389 +msgid "Split Vertical" +msgstr "Dela vertikalt" + +#: ../src/layout_util.c:1390 +msgid "_Quad" +msgstr "i _fyra bilder" + +#: ../src/layout_util.c:1390 +msgid "Split Quad" +msgstr "Dela i fyra" + +#: ../src/layout_util.c:1391 +msgid "_Single" +msgstr "_ingen (en bild)" + +#: ../src/layout_util.c:1391 +msgid "Split Single" +msgstr "Dela inte (en bild)" + +#: ../src/layout_util.c:1395 +msgid "Input _0: sRGB" +msgstr "Input _0: sRGB" + +#: ../src/layout_util.c:1395 +msgid "Input 0: sRGB" +msgstr "Input 0: sRGB" + +#: ../src/layout_util.c:1396 +msgid "Input _1: AdobeRGB compatible" +msgstr "Input _1: AdobeRGB-kompatibelt" + +#: ../src/layout_util.c:1396 +msgid "Input 1: AdobeRGB compatible" +msgstr "Input 1: AdobeRGB-kompatibelt" + +#: ../src/layout_util.c:1397 +msgid "Input _2" +msgstr "Input _2" + +#: ../src/layout_util.c:1397 +msgid "Input 2" +msgstr "Input 2" + +#: ../src/layout_util.c:1398 +msgid "Input _3" +msgstr "Input _3" + +#: ../src/layout_util.c:1398 +msgid "Input 3" +msgstr "Input 3" + +#: ../src/layout_util.c:1399 +msgid "Input _4" +msgstr "Input _4" + +#: ../src/layout_util.c:1399 +msgid "Input 4" +msgstr "Input 4" + +#: ../src/layout_util.c:1400 +msgid "Input _5" +msgstr "Input _5" + +#: ../src/layout_util.c:1400 +msgid "Input 5" +msgstr "Input 5" + +#: ../src/layout_util.c:1404 +msgid "Histogram on Red" +msgstr "Histogram, rött" + +#: ../src/layout_util.c:1405 +msgid "Histogram on Green" +msgstr "Histogram, grönt" + +#: ../src/layout_util.c:1406 +msgid "Histogram on Blue" +msgstr "Histogram, blått" + +#: ../src/layout_util.c:1407 +msgid "Histogram on RGB" +msgstr "Histogram, RGB" + +#: ../src/layout_util.c:1408 +msgid "Histogram on Value" +msgstr "Histogram, värden" + +#: ../src/layout_util.c:1412 +msgid "Linear Histogram" +msgstr "Linjärt histogram" + +#: ../src/layout_util.c:1413 +msgid "_Log Histogram" +msgstr "_Logaritmiskt histogram" + +#: ../src/layout_util.c:1413 +msgid "Log Histogram" +msgstr "Logaritmiskt histogram" + +#: ../src/layout_util.c:1679 #, c-format msgid "Mark _%d" -msgstr "" +msgstr "Märke _%d" -#: src/layout_util.c:1355 src/view_file.c:515 +#: ../src/layout_util.c:1680 +#: ../src/view_file.c:540 #, c-format msgid "_Set mark %d" -msgstr "" +msgstr "Märke %d _på" + +#: ../src/layout_util.c:1680 +#, c-format +msgid "Set mark %d" +msgstr "Märke %d på" -#: src/layout_util.c:1356 src/view_file.c:516 +#: ../src/layout_util.c:1681 +#: ../src/view_file.c:541 #, c-format msgid "_Reset mark %d" -msgstr "" +msgstr "Märke %d _av" + +#: ../src/layout_util.c:1681 +#, c-format +msgid "Reset mark %d" +msgstr "Märke %d av" -#: src/layout_util.c:1357 src/layout_util.c:1358 src/view_file.c:517 +#: ../src/layout_util.c:1682 +#: ../src/layout_util.c:1683 +#: ../src/view_file.c:542 #, c-format msgid "_Toggle mark %d" -msgstr "" +msgstr "_Växla märke %d" + +#: ../src/layout_util.c:1682 +#: ../src/layout_util.c:1683 +#, c-format +msgid "Toggle mark %d" +msgstr "Växla märke %d" + +#: ../src/layout_util.c:1684 +#, c-format +msgid "Se_lect mark %d" +msgstr "_Urval märke %d" + +#: ../src/layout_util.c:1684 +#: ../src/layout_util.c:1685 +#, c-format +msgid "Select mark %d" +msgstr "Urval märke %d" -#: src/layout_util.c:1359 src/layout_util.c:1360 src/view_file.c:518 -#, fuzzy, c-format +#: ../src/layout_util.c:1685 +#: ../src/view_file.c:543 +#, c-format msgid "_Select mark %d" -msgstr "Markera alla" +msgstr "_Urval märke %d" -#: src/layout_util.c:1361 src/view_file.c:519 -#, fuzzy, c-format +#: ../src/layout_util.c:1686 +#: ../src/view_file.c:544 +#, c-format msgid "_Add mark %d" -msgstr "Lgg till bokmrke" +msgstr "_Lägg till märke %d" + +#: ../src/layout_util.c:1686 +#, c-format +msgid "Add mark %d" +msgstr "Lägg till märke %d" -#: src/layout_util.c:1362 src/view_file.c:520 +#: ../src/layout_util.c:1687 +#: ../src/view_file.c:545 #, c-format msgid "_Intersection with mark %d" -msgstr "" +msgstr "_Skärning med märke %d" + +#: ../src/layout_util.c:1687 +#, c-format +msgid "Intersection with mark %d" +msgstr "Skärning med märke %d" -#: src/layout_util.c:1363 src/view_file.c:521 +#: ../src/layout_util.c:1688 +#: ../src/view_file.c:546 #, c-format msgid "_Unselect mark %d" -msgstr "" +msgstr "_Bortval märke %d" -#: src/layout_util.c:1547 -msgid "Show thumbnails" -msgstr "Visa miniatyrbilder" +#: ../src/layout_util.c:1688 +#, c-format +msgid "Unselect mark %d" +msgstr "Bortval märke %d" -#: src/layout_util.c:1552 -msgid "Change to home folder" -msgstr "Byt till hemmappen" - -#: src/layout_util.c:1554 -msgid "Refresh file list" -msgstr "Uppdatera fillista" +#: ../src/layout_util.c:1689 +#, c-format +msgid "_Filter mark %d" +msgstr "_Filtrera med märke %d" -#: src/layout_util.c:1556 -msgid "Zoom in" -msgstr "Zooma in" +#: ../src/layout_util.c:1689 +#, c-format +msgid "Filter mark %d" +msgstr "Filtrera med märke %d" -#: src/layout_util.c:1558 -msgid "Zoom out" -msgstr "Zooma ut" +#: ../src/layout_util.c:2217 +#, c-format +msgid "Number of files with unsaved metadata: %d" +msgstr "Antal filer med osparade metadata: %d" -#: src/layout_util.c:1560 src/preferences.c:978 -msgid "Fit image to window" -msgstr "Anpassa bild till fnsterstorlek" +#: ../src/layout_util.c:2223 +msgid "No unsaved metadata" +msgstr "Inga osparade metadata" -#: src/layout_util.c:1562 -msgid "Set zoom 1:1" -msgstr "Stll in zoom 1:1" +#: ../src/layout_util.c:2270 +#, c-format +msgid "" +"Image profile: %s\n" +"Screen profile: %s" +msgstr "" +"Bildprofil: %s\n" +"Skärmprofil: %s" -#: src/layout_util.c:1564 -msgid "Configure options" -msgstr "Konfigurera alternativ" +#: ../src/layout_util.c:2278 +msgid "Click to enable color management" +msgstr "Klicka för att läsa av färger" -#: src/layout_util.c:1565 -#, fuzzy -msgid "_Float" -msgstr "Format" +#: ../src/layout_util.c:2283 +msgid "Color profiles not supported" +msgstr "Färgprofilen kan ej användas" -#: src/layout_util.c:1566 -msgid "Float Controls" -msgstr "Ta loss kontroller" +#: ../src/layout_util.c:2305 +#, c-format +msgid "Input _%d: %s" +msgstr "Input _%d: %s" #. something went badly wrong -#: src/lirc.c:184 +#: ../src/lirc.c:197 #, c-format msgid "disconnected from LIRC\n" -msgstr "" +msgstr "bortkopplad från LIRC\n" -#: src/lirc.c:199 -#, fuzzy, c-format +#: ../src/lirc.c:212 +#, c-format msgid "Could not init LIRC support\n" -msgstr "Mappen hittades inte" +msgstr "Kan inte starta LIRC-användning\n" -#: src/lirc.c:206 +#: ../src/lirc.c:219 #, c-format msgid "" "could not read LIRC config file\n" "please read the documentation of LIRC to \n" "know how to create a proper config file\n" msgstr "" +"kan inte läsa LIRC-konfigureringsfilen;\n" +"vänligen läs LIRC-dokumentationen för beskrivning \n" +"av vad konfigureringsfiler ska innehålla\n" + +#: ../src/logwindow.c:76 +msgid "Log" +msgstr "Logg" -#: src/main.c:391 -#, fuzzy, c-format +#: ../src/main.c:321 +#, c-format msgid "" "Usage: %s [options] [path]\n" "\n" msgstr "" -"Anvndning: gqview [flaggor] [skvg]\n" +"Användning: %s [flaggor] [sökväg]\n" "\n" -#: src/main.c:392 +#: ../src/main.c:322 msgid "valid options are:\n" -msgstr "giltiga flaggor r:\n" +msgstr "giltiga flaggor är:\n" -#: src/main.c:393 +#: ../src/main.c:323 msgid " +t, --with-tools force show of tools\n" msgstr " +t, --with-tools tvingar verktygen att visas\n" -#: src/main.c:394 +#: ../src/main.c:324 msgid " -t, --without-tools force hide of tools\n" -msgstr " -t, --without-tools tvingar verktygen att dljas\n" +msgstr " -t, --without-tools tvingar verktygen att döljas\n" -#: src/main.c:395 +#: ../src/main.c:325 msgid " -f, --fullscreen start in full screen mode\n" -msgstr " -f, --fullscreen starta i helskrmslge\n" +msgstr " -f, --fullscreen starta i helskärmsläge\n" -#: src/main.c:396 +#: ../src/main.c:326 msgid " -s, --slideshow start in slideshow mode\n" -msgstr " -s, --slideshow starta i bildspelslge\n" +msgstr " -s, --slideshow starta i bildspelsläge\n" -#: src/main.c:397 +#: ../src/main.c:327 msgid " -l, --list open collection window for command line\n" -msgstr " -l, --list ppna albumfnster fr angivna filer\n" +msgstr " -l, --list öppna kollektionsfönster för kommandorad\n" -#: src/main.c:398 +#: ../src/main.c:328 msgid " --geometry=GEOMETRY set main window location\n" -msgstr "" +msgstr " --geometry=GEOMETRY välj huvudfönstrets placering\n" -#: src/main.c:399 +#: ../src/main.c:329 msgid " -r, --remote send following commands to open window\n" -msgstr "" -" -r, --remote skicka fljande kommandon till ett ppet " -"fnster\n" +msgstr " -r, --remote skicka följande kommandon till ett öppet fönster\n" -#: src/main.c:400 +#: ../src/main.c:330 msgid " -rh,--remote-help print remote command list\n" -msgstr " -rh,--remote-help visa lista ver fjrrkommandon\n" +msgstr " -rh,--remote-help visa lista över fjärrkommandon\n" -#: src/main.c:402 -#, fuzzy +#: ../src/main.c:332 msgid " --debug[=level] turn on debug output\n" -msgstr " --debug sl p felskningsmeddelanden\n" +msgstr " --debug[=level] begär felsökmeddelanden\n" -#: src/main.c:404 +#: ../src/main.c:334 msgid " -v, --version print version info\n" msgstr " -v, --version visa versionsinformation\n" -#: src/main.c:405 +#: ../src/main.c:335 msgid "" " -h, --help show this message\n" "\n" msgstr "" -" -h, --help visa denna hjlptext\n" +" -h, --help visa denna hjälptext\n" "\n" -#: src/main.c:417 +#: ../src/main.c:347 #, c-format msgid "" "invalid or ignored: %s\n" "Use --help for options\n" msgstr "" "ogiltig eller ignorerad: %s\n" -"Anvnd --help fr att visa parametrar\n" +"Använd --help för att visa parametrar\n" -#: src/main.c:445 -#, fuzzy +#: ../src/main.c:376 msgid "Invalid or ignored remote options: " -msgstr "" -"ogiltig eller ignorerad: %s\n" -"Anvnd --help fr att visa parametrar\n" +msgstr "Ogiltiga eller ignorerade fjärrinställningar:" -#: src/main.c:454 +#: ../src/main.c:385 msgid "" "\n" "Use --remote-help for valid remote options.\n" msgstr "" +"\n" +"Använd --remote-help för gällande fjärralternativ\n" -#: src/main.c:539 -#, fuzzy, c-format +#: ../src/main.c:487 +#, c-format msgid "Creating %s dir:%s\n" -msgstr "Skapar Geeqie-mapp:%s\n" +msgstr "Skapar %s-mapp:%s\n" -#: src/main.c:543 +#: ../src/main.c:491 #, c-format msgid "Could not create dir:%s\n" msgstr "Kunde inte skapa mapp:%s\n" -#: src/main.c:562 src/ui_bookmark.c:856 src/ui_pathsel.c:1051 -msgid "Home" -msgstr "Hem" +#: ../src/main.c:543 +#, c-format +msgid "error saving file: %s\n" +msgstr "fel vid spara fil: %s\n" -#: src/main.c:564 src/ui_bookmark.c:863 -msgid "Desktop" -msgstr "Skrivbord" +#: ../src/main.c:562 +#, c-format +msgid "" +"error saving file: %s\n" +"error: %s\n" +msgstr "" +"fel vid spara fil: %s\n" +"fel: %s\n" -#: src/main.c:680 +#: ../src/main.c:670 msgid "exit" msgstr "avsluta" -#: src/main.c:685 -#, fuzzy, c-format +#: ../src/main.c:675 +#, c-format msgid "Quit %s" -msgstr "A_vsluta" +msgstr "Avsluta %s" -#: src/main.c:687 +#: ../src/main.c:677 msgid "Collections have been modified. Quit anyway?" -msgstr "Album har ndrats. Avsluta nd?" +msgstr "Kollektionen är ändrad. Avsluta ändå?" -#: src/main.c:836 src/remote.c:536 +#: ../src/main.c:878 +#: ../src/remote.c:601 msgid "Command line" msgstr "Kommandorad" -#: src/menu.c:117 +#: ../src/menu.c:133 msgid "Sort by size" msgstr "Sortera efter storlek" -#: src/menu.c:120 +#: ../src/menu.c:136 msgid "Sort by date" msgstr "Sortera efter datum" -#: src/menu.c:123 +#: ../src/menu.c:139 msgid "Unsorted" msgstr "Osorterade" -#: src/menu.c:126 +#: ../src/menu.c:142 msgid "Sort by path" -msgstr "Sortera efter skvg" +msgstr "Sortera efter sökväg" -#: src/menu.c:129 +#: ../src/menu.c:145 msgid "Sort by number" msgstr "Sortera efter nummer" -#: src/menu.c:133 +#: ../src/menu.c:149 msgid "Sort by name" msgstr "Sortera efter namn" -#: src/menu.c:184 +#: ../src/menu.c:199 msgid "Sort" msgstr "Sortera" -#: src/menu.c:209 +#: ../src/menu.c:224 msgid "Rotate _180" -msgstr "Rotera 1_80" +msgstr "Rotera 1_80°" + +#: ../src/metadata.c:1463 +msgid "People" +msgstr "Folk" + +#: ../src/metadata.c:1464 +msgid "Family" +msgstr "Familj" + +#: ../src/metadata.c:1465 +msgid "Free time" +msgstr "Ledighet" + +#: ../src/metadata.c:1466 +msgid "Children" +msgstr "Barn" + +#: ../src/metadata.c:1467 +msgid "Sport" +msgstr "Sport" + +#: ../src/metadata.c:1468 +msgid "Culture" +msgstr "Kultur" + +#: ../src/metadata.c:1469 +msgid "Festival" +msgstr "Festival" -#: src/pan-view.c:470 -#, fuzzy, c-format +#: ../src/metadata.c:1470 +msgid "Nature" +msgstr "Natur" + +#: ../src/metadata.c:1471 +msgid "Animal" +msgstr "Djur" + +#: ../src/metadata.c:1472 +msgid "Bird" +msgstr "Fågel" + +#: ../src/metadata.c:1473 +msgid "Insect" +msgstr "Insekt" + +#: ../src/metadata.c:1474 +msgid "Pets" +msgstr "Sällskapsdjur" + +#: ../src/metadata.c:1475 +msgid "Wildlife" +msgstr "Vildmarksliv" + +#: ../src/metadata.c:1476 +msgid "Zoo" +msgstr "Zoo" + +#: ../src/metadata.c:1477 +msgid "Plant" +msgstr "Växt" + +#: ../src/metadata.c:1478 +msgid "Tree" +msgstr "Träd" + +#: ../src/metadata.c:1479 +msgid "Flower" +msgstr "Blomma" + +#: ../src/metadata.c:1480 +msgid "Water" +msgstr "Vatten" + +#: ../src/metadata.c:1481 +msgid "River" +msgstr "Älv" + +#: ../src/metadata.c:1482 +msgid "Lake" +msgstr "Sjö" + +#: ../src/metadata.c:1483 +msgid "Sea" +msgstr "Hav" + +#: ../src/metadata.c:1484 +#: ../src/print.c:375 +msgid "Landscape" +msgstr "Landskap" + +#: ../src/metadata.c:1485 +msgid "Art" +msgstr "Konst" + +#: ../src/metadata.c:1486 +msgid "Statue" +msgstr "Staty" + +#: ../src/metadata.c:1487 +msgid "Painting" +msgstr "Målning" + +#: ../src/metadata.c:1488 +#: ../src/metadata.c:1502 +msgid "Historic" +msgstr "Historia" + +#: ../src/metadata.c:1489 +#: ../src/metadata.c:1503 +msgid "Modern" +msgstr "Modern" + +#: ../src/metadata.c:1490 +msgid "City" +msgstr "Stad" + +#: ../src/metadata.c:1491 +msgid "Park" +msgstr "Park" + +#: ../src/metadata.c:1492 +msgid "Street" +msgstr "Gata" + +#: ../src/metadata.c:1493 +msgid "Square" +msgstr "Torg" + +#: ../src/metadata.c:1494 +msgid "Architecture" +msgstr "Arkitektur" + +#: ../src/metadata.c:1495 +msgid "Buildings" +msgstr "Byggnader" + +#: ../src/metadata.c:1496 +msgid "House" +msgstr "Hus" + +#: ../src/metadata.c:1497 +msgid "Cathedral" +msgstr "Katedral" + +#: ../src/metadata.c:1498 +msgid "Palace" +msgstr "Palats" + +#: ../src/metadata.c:1499 +msgid "Castle" +msgstr "Slott" + +#: ../src/metadata.c:1500 +msgid "Bridge" +msgstr "Bro" + +#: ../src/metadata.c:1501 +msgid "Interior" +msgstr "Interiör" + +#: ../src/metadata.c:1504 +msgid "Places" +msgstr "Platser" + +#: ../src/metadata.c:1505 +msgid "Conditions" +msgstr "Omständigheter" + +#: ../src/metadata.c:1506 +msgid "Night" +msgstr "Natt" + +#: ../src/metadata.c:1507 +msgid "Lights" +msgstr "Ljus" + +#: ../src/metadata.c:1508 +msgid "Reflections" +msgstr "Reflektioner" + +#: ../src/metadata.c:1509 +msgid "Sun" +msgstr "Sol" + +#: ../src/metadata.c:1510 +msgid "Weather" +msgstr "Väder" + +#: ../src/metadata.c:1511 +msgid "Fog" +msgstr "Dimma" + +#: ../src/metadata.c:1512 +msgid "Rain" +msgstr "Regn" + +#: ../src/metadata.c:1513 +msgid "Clouds" +msgstr "Moln" + +#: ../src/metadata.c:1514 +msgid "Snow" +msgstr "Snö" + +#: ../src/metadata.c:1515 +msgid "Sunny weather" +msgstr "Solsken" + +#: ../src/metadata.c:1516 +msgid "Photo" +msgstr "Foto" + +#: ../src/metadata.c:1517 +msgid "Edited" +msgstr "Redigerad" + +#: ../src/metadata.c:1518 +msgid "Detail" +msgstr "Detalj" + +#: ../src/metadata.c:1519 +msgid "Macro" +msgstr "Makro" + +#: ../src/metadata.c:1520 +#: ../src/print.c:374 +msgid "Portrait" +msgstr "Porträtt" + +#: ../src/metadata.c:1521 +msgid "Black and White" +msgstr "Svartvitt" + +#: ../src/metadata.c:1522 +msgid "Perspective" +msgstr "Perspektiv" + +#: ../src/options.c:138 +#: ../src/ui_bookmark.c:550 +msgid "Desktop" +msgstr "Skrivbord" + +#: ../src/pan-view.c:472 +#, c-format msgid "%d images, %s" -msgstr "%d bilder" +msgstr "%d bilder, %s" -#: src/pan-view.c:480 +#: ../src/pan-view.c:482 #, c-format msgid "The pan view does not support the folder \"%s\"." -msgstr "" +msgstr "Panelvyn kan inte visa mappen \"%s\"" -#: src/pan-view.c:481 -#, fuzzy +#: ../src/pan-view.c:483 msgid "Folder not supported" -msgstr "Mappen hittades inte" +msgstr "Mappen oanvändbar" -#: src/pan-view.c:1083 src/pan-view.c:1099 -#, fuzzy +#: ../src/pan-view.c:1084 +#: ../src/pan-view.c:1100 msgid "Reading image data..." -msgstr "Lser in likhetsdata..." +msgstr "Läser bilddata..." -#: src/pan-view.c:1158 -#, fuzzy +#: ../src/pan-view.c:1159 msgid "Sorting images..." -msgstr "Sorterar..." +msgstr "Sorterar bilder..." -#: src/pan-view.c:1546 src/pan-view.c:1912 -#, fuzzy +#: ../src/pan-view.c:1552 +#: ../src/print.c:2609 +msgid "Filename:" +msgstr "Filnamn:" + +#: ../src/pan-view.c:1554 +#: ../src/pan-view.c:2406 +#: ../src/preferences.c:1353 +msgid "Location:" +msgstr "Plats:" + +#: ../src/pan-view.c:1556 +#: ../src/pan-view.c:1922 msgid "Date:" -msgstr "Datum" +msgstr "Datum:" -#: src/pan-view.c:1548 src/preferences.c:887 src/print.c:3245 src/print.c:3456 +#: ../src/pan-view.c:1558 +#: ../src/preferences.c:1174 +#: ../src/print.c:3222 +#: ../src/print.c:3433 msgid "Size:" msgstr "Storlek:" -#: src/pan-view.c:1650 +#: ../src/pan-view.c:1660 msgid "path found" -msgstr "" +msgstr "sökvägen hittad" -#: src/pan-view.c:1650 -#, fuzzy +#: ../src/pan-view.c:1660 msgid "filename found" -msgstr "Filen hittades inte" +msgstr "filnamnet hittat" -#: src/pan-view.c:1698 -#, fuzzy +#: ../src/pan-view.c:1708 msgid "partial match" -msgstr "partiell" +msgstr "partiell överenstämmelse" -#: src/pan-view.c:1909 src/pan-view.c:1942 +#: ../src/pan-view.c:1919 +#: ../src/pan-view.c:1952 msgid "no match" -msgstr "" +msgstr "hittar ej" -#: src/pan-view.c:2268 src/search.c:2150 +#: ../src/pan-view.c:2294 +#: ../src/search.c:2219 msgid "Folder not found" msgstr "Mappen hittades inte" -#: src/pan-view.c:2269 +#: ../src/pan-view.c:2295 msgid "The entered path is not a folder" -msgstr "" +msgstr "Sökvägen är ingen mapp" -#: src/pan-view.c:2368 -#, fuzzy +#: ../src/pan-view.c:2390 msgid "Pan View" -msgstr "Avancerad vy" +msgstr "Panelvy" -#: src/pan-view.c:2393 -#, fuzzy +#: ../src/pan-view.c:2415 msgid "Timeline" -msgstr "Bilinjr" +msgstr "Tidindelning" -#: src/pan-view.c:2394 -#, fuzzy +#: ../src/pan-view.c:2416 msgid "Calendar" -msgstr "T_m" +msgstr "Kalender" -#: src/pan-view.c:2396 -#, fuzzy +#: ../src/pan-view.c:2418 msgid "Folders (flower)" -msgstr "Mappar" +msgstr "Mappar (stjärn-)" -#: src/pan-view.c:2397 +#: ../src/pan-view.c:2419 msgid "Grid" -msgstr "" +msgstr "Rutnät" -#: src/pan-view.c:2406 -#, fuzzy +#: ../src/pan-view.c:2428 msgid "Dots" -msgstr "punkter" +msgstr "Punkter" -#: src/pan-view.c:2407 -#, fuzzy +#: ../src/pan-view.c:2429 msgid "No Images" -msgstr "Bild" +msgstr "Inga bilder" -#: src/pan-view.c:2408 -#, fuzzy +#: ../src/pan-view.c:2430 msgid "Small Thumbnails" -msgstr "Miniatyrbilder" +msgstr "Små miniatyrbilder" -#: src/pan-view.c:2409 -#, fuzzy +#: ../src/pan-view.c:2431 msgid "Normal Thumbnails" -msgstr "Miniatyrbilder" +msgstr "Normala miniatyrbilder" -#: src/pan-view.c:2410 -#, fuzzy +#: ../src/pan-view.c:2432 msgid "Large Thumbnails" -msgstr "Kasta miniatyrbilder" +msgstr "Stora miniatyrbilder" -#: src/pan-view.c:2411 src/pan-view.c:2863 +#: ../src/pan-view.c:2433 +#: ../src/pan-view.c:2893 msgid "1:10 (10%)" -msgstr "" +msgstr "1:10 (10%)" -#: src/pan-view.c:2412 src/pan-view.c:2859 +#: ../src/pan-view.c:2434 +#: ../src/pan-view.c:2889 msgid "1:4 (25%)" -msgstr "" +msgstr "1:4 (25%)" -#: src/pan-view.c:2413 src/pan-view.c:2855 +#: ../src/pan-view.c:2435 +#: ../src/pan-view.c:2885 msgid "1:3 (33%)" -msgstr "" +msgstr "1:3 (33%)" -#: src/pan-view.c:2414 src/pan-view.c:2851 +#: ../src/pan-view.c:2436 +#: ../src/pan-view.c:2881 msgid "1:2 (50%)" -msgstr "" +msgstr "1:2 (50%)" -#: src/pan-view.c:2415 +#: ../src/pan-view.c:2437 msgid "1:1 (100%)" -msgstr "" +msgstr "1:1 (100%)" -#: src/pan-view.c:2463 -#, fuzzy +#: ../src/pan-view.c:2485 msgid "Find:" -msgstr "Fil:" +msgstr "Sök:" -#: src/pan-view.c:2506 -#, fuzzy +#: ../src/pan-view.c:2528 msgid "Use Exif date" -msgstr "_Exif-information" +msgstr "Använd Exif-datum" -#: src/pan-view.c:2519 +#: ../src/pan-view.c:2541 msgid "Find" -msgstr "" +msgstr "Sök" -#: src/pan-view.c:2586 +#: ../src/pan-view.c:2608 msgid "Pan View Performance" -msgstr "" +msgstr "Panelvyprestanda" -#: src/pan-view.c:2593 +#: ../src/pan-view.c:2615 msgid "Pan view performance may be poor." -msgstr "" +msgstr "Panelvyprestanda kan vara dåliga" -#: src/pan-view.c:2594 -msgid "" -"To improve performance of thumbnails in the pan view the following options " -"can be enabled. Note that both options must be enabled to notice a change in " -"performance." -msgstr "" +#: ../src/pan-view.c:2616 +msgid "To improve performance of thumbnails in the pan view the following options can be enabled. Note that both options must be enabled to notice a change in performance." +msgstr "För att snabba upp miniatyrbildvisningen i panelvyn kan följade göras, men märk att båda åtgärderna behövs för att någon förbättring ska märkas: " -#: src/pan-view.c:2602 src/preferences.c:890 +#: ../src/pan-view.c:2624 +#: ../src/preferences.c:1177 msgid "Cache thumbnails" msgstr "Cacha miniatyrbilder" -#: src/pan-view.c:2604 src/preferences.c:896 +#: ../src/pan-view.c:2626 msgid "Use shared thumbnail cache" -msgstr "Anvnd delad miniatyrbildscache" +msgstr "Använd delad miniatyrbildscache" -#: src/pan-view.c:2610 +#: ../src/pan-view.c:2632 msgid "Do not show this dialog again" -msgstr "" +msgstr "Visa inte det här fler gånger" -#: src/pan-view.c:2831 -#, fuzzy +#: ../src/pan-view.c:2861 msgid "Sort by E_xif date" -msgstr "Sortera efter datum" +msgstr "Sortera efter E_xif-datum" -#: src/pan-view.c:2837 +#: ../src/pan-view.c:2867 msgid "_Show Exif information" -msgstr "" +msgstr "_Visa Exif-information" -#: src/pan-view.c:2839 -#, fuzzy +#: ../src/pan-view.c:2869 msgid "Show im_age" -msgstr "Visa dolda" +msgstr "Visa _bilden" -#: src/pan-view.c:2843 -#, fuzzy +#: ../src/pan-view.c:2873 msgid "_None" -msgstr "Ingen" +msgstr "_Ingen" -#: src/pan-view.c:2847 -#, fuzzy +#: ../src/pan-view.c:2877 msgid "_Full size" -msgstr "Full storlek" +msgstr "_Full storlek" -#. note: the order is important, it must match the values of -#. * EXIF_UI_OFF, _IFSET, _ON -#: src/preferences.c:402 -msgid "Never" -msgstr "" - -#: src/preferences.c:403 -msgid "If set" -msgstr "" +#: ../src/preferences.c:90 +msgid "Unknown" +msgstr "Okänd" -#: src/preferences.c:404 -msgid "Always" -msgstr "" +#: ../src/preferences.c:92 +msgid "RAW Image" +msgstr "Raw-bild" -#: src/preferences.c:451 +#: ../src/preferences.c:417 msgid "Nearest (worst, but fastest)" -msgstr "Nrmast (smst, men snabbast)" +msgstr "Närmast (sämst, men snabbast)" -#: src/preferences.c:453 +#: ../src/preferences.c:419 msgid "Tiles" msgstr "Brickor" -#: src/preferences.c:455 +#: ../src/preferences.c:421 msgid "Bilinear" -msgstr "Bilinjr" +msgstr "Bilinjär" -#: src/preferences.c:457 +#: ../src/preferences.c:423 msgid "Hyper (best, but slowest)" -msgstr "Super (bst, men lngsammast)" +msgstr "Super (bäst, men långsammast)" -#: src/preferences.c:485 +#: ../src/preferences.c:451 msgid "None" msgstr "Ingen" -#: src/preferences.c:486 +#: ../src/preferences.c:452 msgid "Normal" msgstr "Normal" -#: src/preferences.c:487 +#: ../src/preferences.c:453 msgid "Best" -msgstr "Bst" +msgstr "Bäst" -#: src/preferences.c:548 src/print.c:372 +#: ../src/preferences.c:515 +#: ../src/print.c:380 msgid "Custom" msgstr "Egendefinierat" -#: src/preferences.c:712 src/preferences.c:715 +#: ../src/preferences.c:757 +#: ../src/preferences.c:760 msgid "Reset filters" -msgstr "terstll filfilter" +msgstr "Återställ filfilter" -#: src/preferences.c:716 +#: ../src/preferences.c:761 msgid "" "This will reset the file filters to the defaults.\n" "Continue?" msgstr "" -"Detta kommer att terstlla filfiltren till standardinstllningarna.\n" -"Fortstt?" - -#: src/preferences.c:750 src/preferences.c:753 -msgid "Reset editors" -msgstr "terstll redigeringsprogram" - -#: src/preferences.c:754 -msgid "" -"This will reset the edit commands to the defaults.\n" -"Continue?" -msgstr "" -"Detta kommer att terstlla redigeringskommandona\n" -"till standardinstllningarna.\n" -"Fortstt?" +"Detta kommer att återställa filfiltren till standardinställningarna.\n" +"Fortsätt?" -#: src/preferences.c:778 src/preferences.c:781 +#: ../src/preferences.c:788 +#: ../src/preferences.c:791 msgid "Clear trash" -msgstr "Tm papperskorgen" +msgstr "Töm papperskorgen" -#: src/preferences.c:782 +#: ../src/preferences.c:792 msgid "This will remove the trash contents." -msgstr "Detta kommer att ta bort papperskorgens innehll." +msgstr "Detta kommer att ta bort papperskorgens innehåll." -#: src/preferences.c:826 src/preferences.c:829 +#: ../src/preferences.c:836 +#: ../src/preferences.c:839 msgid "Reset image overlay template string" -msgstr "" +msgstr "Återställ bild-overlay-mall-strängen" -#: src/preferences.c:830 -#, fuzzy +#: ../src/preferences.c:840 msgid "" "This will reset the image overlay template string to the default.\n" "Continue?" msgstr "" -"Detta kommer att terstlla filfiltren till standardinstllningarna.\n" -"Fortstt?" +"Detta kommer att återställa bild-overlay-mallen till standard.\n" +"Fortsätt?" -#: src/preferences.c:861 -msgid "Startup" -msgstr "Uppstart" +#: ../src/preferences.c:1169 +msgid "General" +msgstr "Allmänt" -#: src/preferences.c:863 -msgid "Restore folder on startup" -msgstr "" +#: ../src/preferences.c:1175 +#: ../src/preferences.c:1248 +msgid "Quality:" +msgstr "Kvalitet:" -#: src/preferences.c:876 -msgid "Use current" -msgstr "Anvnd aktuell" +#: ../src/preferences.c:1183 +msgid "Use standard thumbnail cache, shared with other applications" +msgstr "Använd standard-miniatyr-cachen som delas med andra program" + +#: ../src/preferences.c:1189 +msgid "Store thumbnails in '.thumbnails' folder, local to image folder (non-standard)" +msgstr "Spara miniatyrer i en '.thumbnails'-folder lokalt i bildfoldern (ej standard)" -#: src/preferences.c:879 -#, fuzzy -msgid "Use last path" -msgstr "Markera skvg" - -#: src/preferences.c:888 src/preferences.c:950 -msgid "Quality:" -msgstr "Kvalitet:" - -#: src/preferences.c:902 -msgid "Cache thumbnails into .thumbnails" -msgstr "Cacha miniatyrbilder i .thumbnails" - -#: src/preferences.c:906 +#: ../src/preferences.c:1193 msgid "Use xvpics thumbnails when found (read only)" -msgstr "Anvnd xvpics-miniatyrbilder om sdana finns (endast lsning)" +msgstr "Använd xvpics-miniatyrbilder om sådana finns (endast läsning)" -#: src/preferences.c:910 -msgid "Faster jpeg thumbnailing (may reduce quality)" -msgstr "" +#: ../src/preferences.c:1197 +msgid "Use EXIF thumbnails when available (EXIF thumbnails may be outdated)" +msgstr "Använd Exif-miniatyrer om de finns (kan vara föråldrade)" -#: src/preferences.c:913 +#: ../src/preferences.c:1200 msgid "Slide show" msgstr "Bildspel" -#: src/preferences.c:916 +#: ../src/preferences.c:1203 msgid "Delay between image change:" -msgstr "Frdrjning mellan bildvxlingar:" +msgstr "Fördröjning mellan bildväxlingar:" -#: src/preferences.c:916 +#: ../src/preferences.c:1203 msgid "seconds" msgstr "sekunder" -#: src/preferences.c:922 +#: ../src/preferences.c:1209 msgid "Random" -msgstr "Slumpmssigt" +msgstr "Slumpmässigt" -#: src/preferences.c:923 +#: ../src/preferences.c:1210 msgid "Repeat" msgstr "Upprepa" -#: src/preferences.c:944 +#: ../src/preferences.c:1212 +msgid "Image loading and caching" +msgstr "Bildladdning och -cachning" + +#: ../src/preferences.c:1215 +msgid "Offscreen cache size (Mb per image):" +msgstr "Storlek på dold cache (megabyte per bild):" + +#: ../src/preferences.c:1219 +msgid "Decoded image cache size (Mb):" +msgstr "Storlek på * bild-cache (Mb):" + +#: ../src/preferences.c:1221 +msgid "Preload next image" +msgstr "Läs in nästa bild i förväg" + +#: ../src/preferences.c:1224 +msgid "Refresh on file change" +msgstr "Uppdatera vid filändring" + +#: ../src/preferences.c:1242 msgid "Zoom" msgstr "Zooma" -#: src/preferences.c:947 +#: ../src/preferences.c:1245 msgid "Dithering method:" msgstr "Ditheringmetod:" -#: src/preferences.c:952 -msgid "Two pass zooming" -msgstr "Tvstegszoomning" +#: ../src/preferences.c:1250 +msgid "Two pass rendering (apply HQ zoom and color correction in second pass)" +msgstr "Två-pass bildrendering (tillämpa HQ-zoom och färgkorrigering i pass 2)" -#: src/preferences.c:955 +#: ../src/preferences.c:1253 msgid "Allow enlargement of image for zoom to fit" -msgstr "Tillt frstoring av bilder fr att passa fnstret" +msgstr "Tillåt förstoring av bilder för att passa fönstret" -#: src/preferences.c:959 -#, fuzzy +#: ../src/preferences.c:1257 msgid "Limit image size when autofitting (%):" -msgstr "Begrnsa storlek vid automatisk storleksndring av fnster (%):" +msgstr "Begränsa bildstorleken vid automatanpassning (%):" -#: src/preferences.c:967 +#: ../src/preferences.c:1265 msgid "Zoom increment:" -msgstr "Zoomkning:" +msgstr "Zoomökning:" -#: src/preferences.c:972 +#: ../src/preferences.c:1270 msgid "When new image is selected:" -msgstr "Nr en ny bild vljs:" +msgstr "När en ny bild väljs:" -#: src/preferences.c:975 +#: ../src/preferences.c:1274 msgid "Zoom to original size" msgstr "Zooma till originalstorlek" -#: src/preferences.c:981 +#: ../src/preferences.c:1277 +msgid "Fit image to window" +msgstr "Anpassa bild till fönsterstorlek" + +#: ../src/preferences.c:1280 msgid "Leave Zoom at previous setting" -msgstr "Anvnd fregende zoominstllning" +msgstr "Använd föregående zoominställning" + +#: ../src/preferences.c:1286 +msgid "Scroll to top left corner" +msgstr "Skrolla till överst/vänster" -#: src/preferences.c:985 +#: ../src/preferences.c:1289 +msgid "Scroll to image center" +msgstr "Skrolla till bildens mittpunkt" + +#: ../src/preferences.c:1292 +msgid "Keep the region from previous image" +msgstr "Behåll bildvisningsområde från föregående" + +#: ../src/preferences.c:1297 msgid "Appearance" msgstr "Utseende" -#: src/preferences.c:987 -#, fuzzy -msgid "Custom border color" -msgstr "Annan skrivare" +#: ../src/preferences.c:1299 +msgid "Use custom border color in window mode" +msgstr "Välj egen kantfärg för fönsterläge" + +#: ../src/preferences.c:1302 +msgid "Use custom border color in fullscreen mode" +msgstr "Använd egen kantfärg för fullskärmsvisning" -#: src/preferences.c:990 -#, fuzzy +#: ../src/preferences.c:1305 msgid "Border color" -msgstr "Svart bakgrund" +msgstr "Kantfärg" -#: src/preferences.c:993 +#: ../src/preferences.c:1308 msgid "Convenience" -msgstr "Bekvmlighet" - -#: src/preferences.c:995 -msgid "Refresh on file change" -msgstr "Uppdatera vid filndring" - -#: src/preferences.c:997 -msgid "Preload next image" -msgstr "Ls in nsta bild i frvg" +msgstr "Automatisera" -#: src/preferences.c:999 +#: ../src/preferences.c:1310 msgid "Auto rotate image using Exif information" -msgstr "Rotera bild automatiskt baserat p Exif-informationen" +msgstr "Rotera bild automatiskt baserat på Exif-informationen" -#: src/preferences.c:1016 +#: ../src/preferences.c:1327 msgid "Windows" -msgstr "Fnster" +msgstr "Fönster" -#: src/preferences.c:1019 +#: ../src/preferences.c:1329 msgid "State" -msgstr "Tillstnd" +msgstr "Tillstånd" -#: src/preferences.c:1021 +#: ../src/preferences.c:1331 msgid "Remember window positions" -msgstr "Kom ihg fnsterpositioner" +msgstr "Kom ihåg fönsterpositioner" -#: src/preferences.c:1023 +#: ../src/preferences.c:1333 msgid "Remember tool state (float/hidden)" -msgstr "Kom ihg verktygstillstnd (flytande/dolt)" +msgstr "Kom ihåg verktygstillstånd (flytande/dolt)" -#: src/preferences.c:1028 +#: ../src/preferences.c:1338 msgid "Fit window to image when tools are hidden/floating" -msgstr "Anpassa fnstret till bilden nr verktygen r dolda/flytande" +msgstr "Anpassa fönstret till bilden när verktygen är dolda/flytande" -#: src/preferences.c:1032 +#: ../src/preferences.c:1342 msgid "Limit size when auto-sizing window (%):" -msgstr "Begrnsa storlek vid automatisk storleksndring av fnster (%):" +msgstr "Begränsa storlek vid automatisk storleksändring av fönster (%):" -#: src/preferences.c:1039 src/print.c:3404 src/print.c:3411 -msgid "Layout" -msgstr "Layout" +#: ../src/preferences.c:1357 +msgid "Smooth image flip" +msgstr "Mjuk bildväxling" -#: src/preferences.c:1066 -msgid "Filtering" -msgstr "Filtrering" +#: ../src/preferences.c:1359 +msgid "Disable screen saver" +msgstr "Avaktivera skärmsläckare" -#: src/preferences.c:1071 -msgid "Show hidden files or folders" +#: ../src/preferences.c:1363 +msgid "Overlay Screen Display" +msgstr "Overlay-skärmvisning" + +#: ../src/preferences.c:1365 +msgid "Image overlay template" +msgstr "Bild-overlay-mall" + +#: ../src/preferences.c:1379 +msgid "" +"%name% results in the filename of the picture.\n" +"Also available: %collection%, %number%, %total%, %date%,\n" +"%size% (filesize), %width%, %height%, %res% (resolution)\n" +"To access exif data use the exif name, e. g. %formatted.Camera% is the formatted camera name,\n" +"%Exif.Photo.DateTimeOriginal% the date of the original shot.\n" +"%formatted.Camera:20 notation will truncate the displayed data to 20 characters and will add 3 dots at the end to denote the truncation.\n" +"If two or more variables are connected with the |-sign, it prints available variables with a separator.\n" +"%formatted.ShutterSpeed%|%formatted.ISOSpeedRating%|%formatted.FocalLength% could show \"1/20s - 400 - 80 mm\" or \"1/200 - 80 mm\",\n" +"if there's no ISO information in the Exif data.\n" +"If a line is empty, it is removed. This allows to add lines that totally disappear when no data is available.\n" msgstr "" +"%name% visar bildens filnamn\n" +"Mera: %collection% kollektion, %number% nr, %total% antal, %date% datum,\n" +"%size% filstorlek, %width% bredd, %height% höjd, %res% upplösning\n" +"För exif-data använd exif-namnet, ex. %formatted.Camera% formaterat kameranamn,\n" +"%Exif.Photo.DateTimeOriginal% när originalbilden exponerades\n" +"Att skriva %formatted.Camera:20 betyder att texten begränsas till 20 tecken och 3 punkter markerar flera\n" +"Om två eller fler förbinds med |-tecken visas de tillgängliga med en separator:\n" +"%formatted.ShutterSpeed%|%formatted.ISOSpeedRating%|%formatted.FocalLength% blir t.ex. \"1/20s - 400 - 80 mm\" eller \"1/200 - 80 mm\" om ISO-information saknas\n" +"Tomma rader ignoreras, så att de helt försvinner då ingen information finns\n" + +#: ../src/preferences.c:1396 +#: ../src/preferences.c:1569 +#: ../src/preferences.c:1941 +msgid "Defaults" +msgstr "Standardinställningar" + +#: ../src/preferences.c:1450 +msgid "Show hidden files or folders" +msgstr "Visa gömda filer och mappar" -#: src/preferences.c:1073 +#: ../src/preferences.c:1453 msgid "Show dot directory" -msgstr "" +msgstr "Visa punkt-kataloger" -#: src/preferences.c:1075 +#: ../src/preferences.c:1456 msgid "Case sensitive sort" -msgstr "Skiftlgesknslig sortering" +msgstr "Skiftlägeskänslig sortering" -#: src/preferences.c:1078 +#: ../src/preferences.c:1459 msgid "Disable File Filtering" msgstr "Avaktivera filfiltrering" -#: src/preferences.c:1082 +#: ../src/preferences.c:1463 msgid "Grouping sidecar extensions" -msgstr "" +msgstr "Grupperar 'sidecar'-tilläggen" -#: src/preferences.c:1089 +#: ../src/preferences.c:1470 msgid "File types" msgstr "Filtyper" -#: src/preferences.c:1111 +#: ../src/preferences.c:1492 msgid "Filter" msgstr "Filter" -#: src/preferences.c:1148 src/preferences.c:1234 src/preferences.c:1378 -msgid "Defaults" -msgstr "Standardinstllningar" +#: ../src/preferences.c:1524 +msgid "Class" +msgstr "Klass" -#: src/preferences.c:1177 -msgid "Editors" -msgstr "Redigerare" +#: ../src/preferences.c:1541 +msgid "Writable" +msgstr "Skrivbar" -#: src/preferences.c:1183 -msgid "#" -msgstr "Nr." +#: ../src/preferences.c:1552 +msgid "Sidecar is allowed" +msgstr "'Sidecar'-filer tillåtna" -#: src/preferences.c:1186 src/preferences.c:1497 -msgid "Menu name" -msgstr "Menynamn" +#: ../src/preferences.c:1598 +msgid "Metadata writing process" +msgstr "Metadata-skrivprocess" -#: src/preferences.c:1189 -msgid "Command Line" -msgstr "Kommandorad" +#: ../src/preferences.c:1600 +msgid "Warning: Geeqie is built without Exiv2. Some options are disabled." +msgstr "Varning: Geeqie är byggt utan Exiv2. Vissa funktioner saknas." -#: src/preferences.c:1261 -#, fuzzy -msgid "Properties" -msgstr "_Egenskaper" +#: ../src/preferences.c:1602 +msgid "Metadata are written in the following order. The process ends after first success." +msgstr "Metadata skrivs i följande ordning. Processen avslutas så snart den lyckats:" -#: src/preferences.c:1279 -msgid "What to show in properties dialog:" -msgstr "" +#: ../src/preferences.c:1605 +msgid "1) Save metadata in image files, resp. sidecar files, according to the XMP standard" +msgstr "1) Spara metadata i bildfiler respektive 'sidecar'-filer enligt XMP-standard" -#: src/preferences.c:1316 -msgid "Advanced" -msgstr "Avancerat" +#: ../src/preferences.c:1611 +msgid "2) Save metadata in '.metadata' folder, local to image folder (non-standard)" +msgstr "2) Spara metadata i '.metadata'-mapp lokalt med bildmappen (icke-standard)" -#: src/preferences.c:1337 -msgid "Smooth image flip" -msgstr "Mjuk bildvxling" +#: ../src/preferences.c:1614 +#, c-format +msgid "3) Save metadata in Geeqie private directory '%s'" +msgstr "3) Spara metadata i den särskilda Geeqie-mappen '%s'" -#: src/preferences.c:1339 -msgid "Disable screen saver" -msgstr "Avaktivera skrmslckare" +#: ../src/preferences.c:1619 +msgid "Step 1: Write to image files" +msgstr "Steg 1: Skriv till bildfiler" -#: src/preferences.c:1343 -msgid "Overlay Screen Display" -msgstr "" +#: ../src/preferences.c:1627 +msgid "Store metadata also in legacy IPTC tags (converted according to IPTC4XMP standard)" +msgstr "Spara också metadata som traditionell IPTC (konverterat enligt IPCT4XMP-standard)" -#: src/preferences.c:1345 -msgid "Always show image overlay at startup" -msgstr "" +#: ../src/preferences.c:1630 +msgid "Warn if the image files are unwritable" +msgstr "Varna om bildfilerna är skrivskyddade" -#: src/preferences.c:1347 -msgid "Image overlay template" -msgstr "" +#: ../src/preferences.c:1633 +msgid "Ask before writing to image files" +msgstr "Bekräfta skrivning till bildfiler" -#: src/preferences.c:1361 -msgid "" -"%name% results in the filename of the picture.\n" -"Also available: %collection%, %number%, %total%, %" -"date%,\n" -"%size% (filesize), %width%, %height%, %res% " -"(resolution)\n" -"To access exif data use the exif name, e. g. %formatted.Camera% is " -"the formatted camera name,\n" -"%Exif.Photo.DateTimeOriginal% the date of the original shot.\n" -"%formatted.Camera:20 notation will truncate the displayed data to 20 " -"characters and will add 3 dots at the end to denote the truncation.\n" -"If two or more variables are connected with the |-sign, it prints available " -"variables with a separator.\n" -"%formatted.ShutterSpeed%|%formatted.ISOSpeedRating%|%" -"formatted.FocalLength% could show \"1/20s - 400 - 80 mm\" or \"1/200 - " -"80 mm\",\n" -"if there's no ISO information in the Exif data.\n" -"If a line is empty, it is removed. This allows to add lines that totally " -"disappear when no data is available.\n" -msgstr "" +#: ../src/preferences.c:1636 +msgid "Step 2 and 3: write to Geeqie private files" +msgstr "Steg 2 och 3: Skriv till särskilda Geeqie-filer" + +#: ../src/preferences.c:1641 +msgid "Use GQview legacy metadata format (supports only keywords and comments) instead of XMP" +msgstr "Använd gamla GQview-metadata-formatet (endast nyckelord och kommentarer) i stället för XMP" + +#: ../src/preferences.c:1645 +#: ../src/preferences.c:1833 +msgid "Miscellaneous" +msgstr "Diverse" + +#: ../src/preferences.c:1646 +msgid "Write the same description tags (keywords, comment, etc.) to all grouped sidecars" +msgstr "Skriv likadana beskrivningar (nyckelord, kommentarer, etc.) för alla 'sidecar'-grupper" + +#: ../src/preferences.c:1649 +msgid "Allow keywords to differ only in case" +msgstr "Tillåt nyckelord att avvika bara i stora/små bokstäver" + +#: ../src/preferences.c:1652 +msgid "Write altered image orientation to the metadata" +msgstr "Skriv ändrad bildorientering i metadata" + +#: ../src/preferences.c:1658 +msgid "Auto-save options" +msgstr "Automatspara inställningar" + +#: ../src/preferences.c:1660 +msgid "Write metadata after timeout" +msgstr "Skriv metadata efter timeout" + +#: ../src/preferences.c:1666 +msgid "Timeout (seconds):" +msgstr "Tidsfördröjning (sekunder):" + +#: ../src/preferences.c:1669 +msgid "Write metadata on image change" +msgstr "Skriver metadata vid bildbyte" + +#: ../src/preferences.c:1672 +msgid "Write metadata on directory change" +msgstr "Skriv metadata vid mappbyte" + +#: ../src/preferences.c:1686 +msgid "Color management" +msgstr "Färghantering" + +#: ../src/preferences.c:1688 +msgid "Input profiles" +msgstr "Input-profil" + +#: ../src/preferences.c:1696 +msgid "Type" +msgstr "Typ" + +#: ../src/preferences.c:1699 +msgid "Menu name" +msgstr "Menynamn" + +#: ../src/preferences.c:1702 +msgid "File" +msgstr "Fil" + +#: ../src/preferences.c:1710 +#, c-format +msgid "Input %d:" +msgstr "Input %d:" + +#: ../src/preferences.c:1727 +#: ../src/preferences.c:1747 +msgid "Select color profile" +msgstr "Välj färgprofil" + +#: ../src/preferences.c:1735 +msgid "Screen profile" +msgstr "Skärmprofil" + +#: ../src/preferences.c:1739 +msgid "Use system screen profile if available" +msgstr "Använd systemegen bildskärmprofil då sådan finns" + +#: ../src/preferences.c:1744 +msgid "Screen:" +msgstr "Skärm:" + +#: ../src/preferences.c:1766 +#: ../src/preferences.c:1809 +msgid "Behavior" +msgstr "Beteende" -#: src/preferences.c:1393 +#: ../src/preferences.c:1768 +#: ../src/utilops.c:1985 msgid "Delete" msgstr "Ta bort" -#: src/preferences.c:1395 +#: ../src/preferences.c:1770 msgid "Confirm file delete" -msgstr "Bekrfta filborttagning" +msgstr "Bekräfta filborttagning" -#: src/preferences.c:1397 +#: ../src/preferences.c:1772 msgid "Enable Delete key" msgstr "Aktivera Delete-knappen" -#: src/preferences.c:1400 +#: ../src/preferences.c:1775 msgid "Safe delete" -msgstr "Sker borttagning" +msgstr "Säker borttagning" -#: src/preferences.c:1418 +#: ../src/preferences.c:1793 msgid "Maximum size:" msgstr "Maximal storlek:" -#: src/preferences.c:1418 +#: ../src/preferences.c:1793 msgid "MB" msgstr "Mbyte" -#: src/preferences.c:1421 +#: ../src/preferences.c:1796 msgid "Set to 0 for unlimited size" -msgstr "" +msgstr "Använd 0 för obegränsad storlek" -#: src/preferences.c:1423 +#: ../src/preferences.c:1798 msgid "View" msgstr "Visa" -#: src/preferences.c:1434 -msgid "Behavior" -msgstr "Beteende" - -#: src/preferences.c:1436 +#: ../src/preferences.c:1811 msgid "Rectangular selection in icon view" -msgstr "Rektangulr markering i ikonvy" +msgstr "Rektangulär markering i ikonvy" -#: src/preferences.c:1439 +#: ../src/preferences.c:1814 msgid "Descend folders in tree view" -msgstr "G in i undermappar i trdvyn" +msgstr "Gå in i undermappar i trädvyn" -#: src/preferences.c:1442 +#: ../src/preferences.c:1817 msgid "In place renaming" -msgstr "Namnbyte p plats" - -#: src/preferences.c:1445 -msgid "" -"Show \"Copy path\" menu item which write the path of selected files to " -"clipboard" -msgstr "" +msgstr "Namnändring på plats" -#: src/preferences.c:1448 +#: ../src/preferences.c:1820 msgid "Open recent list maximum size" -msgstr "" +msgstr "Öppna senaste listans maximalstorlek" -#: src/preferences.c:1451 +#: ../src/preferences.c:1823 msgid "Drag'n drop icon size" -msgstr "" +msgstr "Drag-och-släpp ikonstorlek" -#: src/preferences.c:1454 +#: ../src/preferences.c:1826 msgid "Navigation" msgstr "Navigering" -#: src/preferences.c:1456 +#: ../src/preferences.c:1828 msgid "Progressive keyboard scrolling" msgstr "Progressiv tangentbordsrullning" -#: src/preferences.c:1458 +#: ../src/preferences.c:1830 msgid "Mouse wheel scrolls image" msgstr "Mushjulet rullar bilden" -#: src/preferences.c:1461 -msgid "Miscellaneous" -msgstr "Diverse" - -#: src/preferences.c:1463 -msgid "Store metadata and cache files in source image's directory" -msgstr "" - -#: src/preferences.c:1466 -#, fuzzy -msgid "Store keywords and comments as XMP tags in image files" -msgstr "Lagra miniatyrbilder i nrheten av originalbilder" - -#: src/preferences.c:1469 +#: ../src/preferences.c:1835 msgid "Custom similarity threshold:" -msgstr "Anpassad likhetstrskel:" - -#: src/preferences.c:1472 -msgid "Image loading and caching" -msgstr "" - -#: src/preferences.c:1474 -msgid "Offscreen cache size (Mb per image):" -msgstr "Storlek p dold cache (megabyte per bild):" +msgstr "Anpassad likhetströskel:" -#: src/preferences.c:1477 -msgid "Image read buffer size (bytes):" -msgstr "" +#: ../src/preferences.c:1840 +msgid "Debugging" +msgstr "Avlusning" -#: src/preferences.c:1481 -msgid "Image idle loop read count:" -msgstr "" +#: ../src/preferences.c:1842 +msgid "Debug level:" +msgstr "Avlusningsnivå:" -#: src/preferences.c:1486 -#, fuzzy -msgid "Color profiles" -msgstr "Alla filer" +#: ../src/preferences.c:1861 +msgid "Keyboard" +msgstr "Tangentbord" -#: src/preferences.c:1494 -msgid "Type" -msgstr "" +#: ../src/preferences.c:1863 +msgid "Accelerators" +msgstr "Snabbtangenter" -#: src/preferences.c:1500 -#, fuzzy -msgid "File" -msgstr "Fil:" +#: ../src/preferences.c:1882 +msgid "Action" +msgstr "Åtgärd" -#: src/preferences.c:1525 src/preferences.c:1536 -#, fuzzy -msgid "Select color profile" -msgstr "Markera mapp" +#: ../src/preferences.c:1904 +msgid "KEY" +msgstr "Tangent" -#: src/preferences.c:1533 -#, fuzzy -msgid "Screen:" -msgstr "Skrm" +#: ../src/preferences.c:1915 +msgid "Tooltip" +msgstr "Verktygstips" -#: src/preferences.c:1544 -msgid "Debugging" -msgstr "" +#: ../src/preferences.c:1953 +msgid "Reset selected" +msgstr "Återställ markerade" -#: src/preferences.c:1546 -msgid "Debug level:" -msgstr "" +#: ../src/preferences.c:1959 +msgid "Add Alt" +msgstr "Add Alt" -#: src/preferences.c:1562 -#, fuzzy +#: ../src/preferences.c:1978 msgid "Preferences" -msgstr "In_stllningar..." - -#: src/preferences.c:1685 -#, fuzzy -msgid "About" -msgstr "_Om" +msgstr "Inställningar" -#: src/preferences.c:1702 -#, fuzzy, c-format +#: ../src/preferences.c:2125 +#, c-format msgid "" "%s %s\n" "\n" @@ -3231,101 +4534,95 @@ "\n" "Released under the GNU General Public License" msgstr "" -"Geeqie %s\n" +"%s %s\n" "\n" -"Copyright %s John Ellis\n" +"Copyright (c) 2006 John Ellis\n" +"Copyright (c) %s The Geeqie Team\n" "webbplats: %s\n" "e-post: %s\n" "\n" -"Utgiven under GNU General Public License" +"Utgivet med 'GNU General Public License'" -#: src/preferences.c:1721 +#: ../src/preferences.c:2144 msgid "Credits..." msgstr "Tack..." -#: src/print.c:117 +#: ../src/print.c:124 msgid "Selection" msgstr "Markering" -#: src/print.c:118 +#: ../src/print.c:125 msgid "All" msgstr "Allt" -#: src/print.c:129 +#: ../src/print.c:136 msgid "One image per page" msgstr "En bild per sida" -#: src/print.c:130 +#: ../src/print.c:137 msgid "Proof sheet" msgstr "Provkarta" -#: src/print.c:143 +#: ../src/print.c:150 msgid "Default printer" msgstr "Standardskrivare" -#: src/print.c:144 +#: ../src/print.c:151 msgid "Custom printer" msgstr "Annan skrivare" -#: src/print.c:145 +#: ../src/print.c:152 msgid "PostScript file" msgstr "Postscript-fil" -#: src/print.c:146 +#: ../src/print.c:153 msgid "Image file" msgstr "Bildfil" -#: src/print.c:160 +#: ../src/print.c:167 msgid "jpeg, low quality" -msgstr "jpeg, lg kvalitet" +msgstr "jpeg, låg kvalitet" -#: src/print.c:161 +#: ../src/print.c:168 msgid "jpeg, normal quality" msgstr "jpeg, normal kvalitet" -#: src/print.c:162 +#: ../src/print.c:169 msgid "jpeg, high quality" -msgstr "jpeg, hg kvalitet" +msgstr "jpeg, hög kvalitet" -#: src/print.c:357 src/print.c:3245 +#: ../src/print.c:365 +#: ../src/print.c:3222 msgid "points" msgstr "punkter" -#: src/print.c:358 +#: ../src/print.c:366 msgid "millimeters" msgstr "millimeter" -#: src/print.c:359 +#: ../src/print.c:367 msgid "centimeters" msgstr "centimeter" -#: src/print.c:360 +#: ../src/print.c:368 msgid "inches" msgstr "tum" -#: src/print.c:361 +#: ../src/print.c:369 msgid "picas" -msgstr "" - -#: src/print.c:366 -msgid "Portrait" -msgstr "Stende" - -#: src/print.c:367 -msgid "Landscape" -msgstr "Liggande" +msgstr "pica" -#: src/print.c:373 +#: ../src/print.c:381 msgid "Letter" msgstr "\"Letter\"-format" #. in 8.5 x 11 -#: src/print.c:374 +#: ../src/print.c:382 msgid "Legal" msgstr "\"Legal\"-format" #. in 8.5 x 14 -#: src/print.c:375 +#: ../src/print.c:383 msgid "Executive" msgstr "\"Executive\"-format" @@ -3341,621 +4638,689 @@ #. mm 250 x 353 #. mm 176 x 250 #. mm 125 x 176 -#: src/print.c:387 +#: ../src/print.c:395 msgid "Envelope #10" msgstr "\"Envelope #10\"-format" #. in 4.125 x 9.5 -#: src/print.c:388 +#: ../src/print.c:396 msgid "Envelope #9" msgstr "\"Envelope #9\"-format" #. in 3.875 x 8.875 -#: src/print.c:389 +#: ../src/print.c:397 msgid "Envelope C4" msgstr "Kuvert C4" #. mm 229 x 324 -#: src/print.c:390 +#: ../src/print.c:398 msgid "Envelope C5" msgstr "Kuvert C5" #. mm 162 x 229 -#: src/print.c:391 +#: ../src/print.c:399 msgid "Envelope C6" msgstr "Kuvert C6" #. mm 114 x 162 -#: src/print.c:392 +#: ../src/print.c:400 msgid "Photo 6x4" -msgstr "Foto, 64 tum" +msgstr "Foto, 6×4 tum" #. in 6 x 4 -#: src/print.c:393 +#: ../src/print.c:401 msgid "Photo 8x10" -msgstr "Foto, 810 tum" +msgstr "Foto, 8×10 tum" #. in 8 x 10 -#: src/print.c:394 +#: ../src/print.c:402 msgid "Postcard" -msgstr "Vykortsformat, 1014,8 cm" +msgstr "Vykortsformat, 10×14,8 cm" #. mm 100 x 148 -#: src/print.c:395 +#: ../src/print.c:403 msgid "Tabloid" msgstr "\"Tabloid\"-format" -#: src/print.c:551 +#: ../src/print.c:559 #, c-format msgid "page %d of %d" msgstr "sida %d av %d" -#: src/print.c:743 src/utilops.c:2462 +#: ../src/print.c:751 msgid "Preview" -msgstr "Frhandsgranskning" +msgstr "Förhandsgranskning" -#: src/print.c:1051 +#: ../src/print.c:1059 #, c-format msgid "" "Unable to open pipe for writing.\n" "\"%s\"" msgstr "" -"Kan inte ppna rr fr skrivning.\n" +"Kan inte öppna rör för skrivning.\n" "\"%s\"" -#: src/print.c:1066 src/print.c:1506 src/ui_pathsel.c:432 -#: src/view_file_list.c:396 +#: ../src/print.c:1074 +#: ../src/print.c:1466 +#: ../src/ui_pathsel.c:432 #, c-format msgid "A file with name %s already exists." msgstr "En fil med namnet %s finns redan." -#: src/print.c:1081 src/print.c:1561 +#: ../src/print.c:1089 +#: ../src/print.c:1521 #, c-format msgid "Failure writing to file %s" msgstr "Misslyckades skriva till filen %s" -#: src/print.c:1135 src/print.c:1172 src/print.c:1208 src/print.c:1325 -#: src/print.c:1416 src/print.c:1447 +#: ../src/print.c:1144 +#: ../src/print.c:1181 +#: ../src/print.c:1217 +#: ../src/print.c:1334 +#: ../src/print.c:1407 msgid "SIGPIPE error writing to printer." -msgstr "Brutet rr-fel vid utskrift." +msgstr "SIGPIPE-fel vid utskrift" -#: src/print.c:1982 +#: ../src/print.c:1942 #, c-format msgid "Page %d" msgstr "Sida %d" -#: src/print.c:2004 src/print.c:2009 +#: ../src/print.c:1968 +#: ../src/print.c:1973 msgid "Printing error" msgstr "Utskriftsfel" -#: src/print.c:2008 +#: ../src/print.c:1972 #, c-format msgid "An error occured printing to %s." msgstr "Ett fel uppstod vid utskrift till %s." -#: src/print.c:2012 +#: ../src/print.c:1976 msgid "Details" msgstr "Detaljer" -#: src/print.c:2617 src/print.c:3377 -#, fuzzy +#: ../src/print.c:2597 +#: ../src/print.c:3357 msgid "Print" -msgstr "Skrivare" +msgstr "Skriv ut" -#: src/print.c:2624 +#: ../src/print.c:2601 #, c-format msgid "Printing %d pages to %s." msgstr "Skriver ut %d sidor till %s." -#: src/print.c:2724 +#: ../src/print.c:2701 msgid "Format:" msgstr "Format:" -#: src/print.c:2799 +#: ../src/print.c:2776 msgid "Units:" -msgstr "Mttenhet:" +msgstr "Måttenhet:" -#: src/print.c:2843 +#: ../src/print.c:2820 msgid "Orientation:" msgstr "Orientering:" -#: src/print.c:2975 +#: ../src/print.c:2952 msgid "Destination:" msgstr "Destination:" -#: src/print.c:3023 -#, fuzzy +#: ../src/print.c:3000 msgid "" -msgstr "Filnamn" +msgstr "" -#: src/print.c:3112 +#: ../src/print.c:3089 msgid "Unlimited" -msgstr "Obegrnsad" +msgstr "Obegränsad" -#: src/print.c:3230 +#: ../src/print.c:3207 msgid "Show" msgstr "Visa" -#: src/print.c:3243 +#: ../src/print.c:3220 msgid "Font" msgstr "Typsnitt" -#: src/print.c:3407 +#: ../src/print.c:3384 msgid "Source" -msgstr "Klla" +msgstr "Källa" + +#: ../src/print.c:3396 +msgid "Image size:" +msgstr "Bildstorlek:" -#: src/print.c:3423 +#: ../src/print.c:3400 msgid "Proof size:" msgstr "Utkaststorlek:" -#: src/print.c:3449 +#: ../src/print.c:3416 +msgid "Text" +msgstr "Text" + +#: ../src/print.c:3426 msgid "Paper" msgstr "Papper" -#: src/print.c:3472 +#: ../src/print.c:3449 msgid "Margins" msgstr "Marginaler" -#: src/print.c:3474 +#: ../src/print.c:3451 msgid "Left:" -msgstr "Vnster:" +msgstr "Vänster:" -#: src/print.c:3477 +#: ../src/print.c:3454 msgid "Right:" -msgstr "Hger:" +msgstr "Höger:" -#: src/print.c:3480 +#: ../src/print.c:3457 msgid "Top:" -msgstr "verkant:" +msgstr "Överkant:" -#: src/print.c:3483 +#: ../src/print.c:3460 msgid "Bottom:" msgstr "Underkant:" -#: src/print.c:3492 +#: ../src/print.c:3469 msgid "Printer" msgstr "Skrivare" -#: src/print.c:3498 +#: ../src/print.c:3475 msgid "Custom printer:" msgstr "Anpassad skrivare:" -#: src/print.c:3507 +#: ../src/print.c:3484 msgid "File:" msgstr "Fil:" -#: src/print.c:3516 +#: ../src/print.c:3493 msgid "File format:" msgstr "Filformat:" -#: src/print.c:3521 +#: ../src/print.c:3498 msgid "DPI:" msgstr "Punkter/tum:" -#: src/print.c:3529 +#: ../src/print.c:3506 msgid "Remember print settings" -msgstr "Kom ihg utskriftsinstllningar" +msgstr "Kom ihåg utskriftsinställningar" -#: src/rcfile.c:309 +#: ../src/rcfile.c:495 #, c-format msgid "error saving config file: %s\n" -msgstr "fel vid sparande av konfigurationsfil: %s\n" +msgstr "fel vid spara konfigurationsfil: %s\n" -#: src/rcfile.c:583 -#, fuzzy, c-format +#: ../src/rcfile.c:553 +#, c-format msgid "" "error saving config file: %s\n" "error: %s\n" -msgstr "fel vid sparande av konfigurationsfil: %s\n" +msgstr "" +"fel vid spara konfigurationsfil: %s\n" +"fel: %s\n" #. short, long callback, extra, prefer,description -#: src/remote.c:574 +#: ../src/remote.c:639 msgid "next image" -msgstr "nsta bild" +msgstr "nästa bild" -#: src/remote.c:575 +#: ../src/remote.c:640 msgid "previous image" -msgstr "fregende bild" +msgstr "föregående bild" -#: src/remote.c:576 +#: ../src/remote.c:641 msgid "first image" -msgstr "frsta bilden" +msgstr "första bilden" -#: src/remote.c:577 +#: ../src/remote.c:642 msgid "last image" msgstr "sista bilden" -#: src/remote.c:578 +#: ../src/remote.c:643 msgid "toggle full screen" -msgstr "vxla helskrmslge" +msgstr "växla helskärmsläge" -#: src/remote.c:579 +#: ../src/remote.c:644 msgid "start full screen" -msgstr "aktivera helskrmslge" +msgstr "aktivera helskärmsläge" -#: src/remote.c:580 +#: ../src/remote.c:645 msgid "stop full screen" -msgstr "avaktivera helskrmslge" +msgstr "avaktivera helskärmsläge" -#: src/remote.c:581 +#: ../src/remote.c:646 msgid "toggle slide show" -msgstr "vxla bildspel" +msgstr "växla bildspel" -#: src/remote.c:582 +#: ../src/remote.c:647 msgid "start slide show" msgstr "starta bildspel" -#: src/remote.c:583 +#: ../src/remote.c:648 msgid "stop slide show" msgstr "stoppa bildspel" -#: src/remote.c:584 +#: ../src/remote.c:649 msgid "start recursive slide show" msgstr "starta rekursivt bildspel" -#: src/remote.c:585 +#: ../src/remote.c:650 msgid "set slide show delay in seconds" -msgstr "stll in bildspelsfrdrjning i sekunder" +msgstr "ställ in bildspelsfördröjning i sekunder" -#: src/remote.c:586 +#: ../src/remote.c:651 msgid "show tools" msgstr "visa verktyg" -#: src/remote.c:587 +#: ../src/remote.c:652 msgid "hide tools" -msgstr "dlj verktyg" +msgstr "dölj verktyg" -#: src/remote.c:588 +#: ../src/remote.c:653 msgid "quit" msgstr "avsluta" -#: src/remote.c:589 +#: ../src/remote.c:654 +msgid "load config file" +msgstr "ladda konfigureringsfil" + +#: ../src/remote.c:655 +msgid "get list of sidecars of the given file" +msgstr "få lista med 'sidecar'-filer till denna fil" + +#: ../src/remote.c:656 +msgid "get destination path for the given file" +msgstr "få sökvägen till denna fil" + +#: ../src/remote.c:657 msgid "open file" -msgstr "ppna fil" +msgstr "öppna fil" -#: src/remote.c:590 +#: ../src/remote.c:658 msgid "open file in new window" -msgstr "ppna fil i ett nytt fnster" +msgstr "öppna fil i ett nytt fönster" -#: src/remote.c:656 +#: ../src/remote.c:724 msgid "Remote command list:\n" -msgstr "Lista ver fjrrkommandon:\n" +msgstr "Lista över fjärrkommandon:\n" -#: src/remote.c:713 -#, fuzzy, c-format +#: ../src/remote.c:781 +#, c-format msgid "Remote %s not running, starting..." -msgstr "Fjrr-Geeqie inte igng, startar..." +msgstr "Fjärr-%s går inte, startar..." -#: src/remote.c:849 +#: ../src/remote.c:917 msgid "Remote not available\n" -msgstr "Fjrr ej tillgnglig\n" +msgstr "Fjärr ej tillgänglig\n" -#: src/search.c:202 +#: ../src/search.c:212 msgid "folder" msgstr "mapp" -#: src/search.c:203 +#: ../src/search.c:213 msgid "comments" msgstr "kommentarer" -#: src/search.c:204 +#: ../src/search.c:214 msgid "results" msgstr "resultat" -#: src/search.c:208 +#: ../src/search.c:218 +#: ../src/search.c:243 msgid "contains" -msgstr "innehller" +msgstr "innehåller" -#: src/search.c:209 +#: ../src/search.c:219 msgid "is" -msgstr "r" +msgstr "är" -#: src/search.c:213 src/search.c:220 +#: ../src/search.c:223 +#: ../src/search.c:230 msgid "equal to" msgstr "lika med" -#: src/search.c:214 +#: ../src/search.c:224 msgid "less than" -msgstr "mindre n" +msgstr "mindre än" -#: src/search.c:215 +#: ../src/search.c:225 msgid "greater than" -msgstr "strre n" +msgstr "större än" -#: src/search.c:216 src/search.c:223 +#: ../src/search.c:226 +#: ../src/search.c:233 msgid "between" msgstr "mellan" -#: src/search.c:221 +#: ../src/search.c:231 msgid "before" -msgstr "fre" +msgstr "före" -#: src/search.c:222 +#: ../src/search.c:232 msgid "after" msgstr "efter" -#: src/search.c:227 +#: ../src/search.c:237 msgid "match all" msgstr "matcha alla" -#: src/search.c:228 +#: ../src/search.c:238 msgid "match any" msgstr "matcha godtycklig" -#: src/search.c:229 +#: ../src/search.c:239 msgid "exclude" msgstr "exkludera" -#: src/search.c:279 +#: ../src/search.c:244 +msgid "miss" +msgstr "miss" + +#: ../src/search.c:295 #, c-format msgid "%s, %d files (%s, %d)" msgstr "%s, %d filer (%s, %d)" -#: src/search.c:284 +#: ../src/search.c:300 #, c-format msgid "%s, %d files" msgstr "%s, %d filer" -#: src/search.c:302 +#: ../src/search.c:318 msgid "Searching..." -msgstr "Sker..." +msgstr "Söker..." -#: src/search.c:2100 +#: ../src/search.c:2170 msgid "File not found" msgstr "Filen hittades inte" -#: src/search.c:2101 +#: ../src/search.c:2171 msgid "Please enter an existing file for image content." -msgstr "Vlj en befintlig fil fr bildinnehll." +msgstr "Välj en befintlig fil för bildinnehåll." -#: src/search.c:2151 +#: ../src/search.c:2220 msgid "Please enter an existing folder to search." -msgstr "Vlj en befintlig mapp att genomska." +msgstr "Välj en befintlig mapp att genomsöka." -#: src/search.c:2576 -#, fuzzy +#: ../src/search.c:2646 msgid "Image search" -msgstr "Bildskning - Geeqie" +msgstr "Bildsökning" -#: src/search.c:2606 +#: ../src/search.c:2676 msgid "Search:" -msgstr "Sk:" +msgstr "Sök:" -#: src/search.c:2620 +#: ../src/search.c:2690 msgid "Recurse" -msgstr "Rekursera" +msgstr "Rekursivt" -#: src/search.c:2624 +#: ../src/search.c:2695 msgid "File name" msgstr "Filnamn" -#: src/search.c:2630 +#: ../src/search.c:2701 +#: ../src/search.c:2796 msgid "Match case" -msgstr "Matcha skiftlge" +msgstr "Matcha skiftläge" -#: src/search.c:2634 +#: ../src/search.c:2706 msgid "File size is" -msgstr "Filens storlek r" +msgstr "Filens storlek är" -#: src/search.c:2641 src/search.c:2656 src/search.c:2674 +#: ../src/search.c:2713 +#: ../src/search.c:2729 +#: ../src/search.c:2748 msgid "and" msgstr "och" -#: src/search.c:2646 +#: ../src/search.c:2719 msgid "File date is" -msgstr "Filens datum r" +msgstr "Filens datum är" -#: src/search.c:2663 +#: ../src/search.c:2737 msgid "Image dimensions are" -msgstr "Bildens dimensioner r" +msgstr "Bildens dimensioner är" -#: src/search.c:2683 +#: ../src/search.c:2758 msgid "Image content is" -msgstr "Bildens innehll r" +msgstr "Bildens innehåll är" -#: src/search.c:2689 +#: ../src/search.c:2764 #, no-c-format msgid "% similar to" msgstr "% likhet med" -#: src/search.c:2758 +#: ../src/search.c:2850 msgid "Rank" msgstr "Rang" -#: src/secure_save.c:398 -#, fuzzy +#: ../src/secure_save.c:397 msgid "Cannot read the file" -msgstr "Kunde inte skapa mapp" +msgstr "Kan inte läsa filen" -#: src/secure_save.c:400 -#, fuzzy +#: ../src/secure_save.c:399 msgid "Cannot get file status" -msgstr "Jmfr tv filgrupper" +msgstr "Kan inte avläsa filstatus" -#: src/secure_save.c:402 +#: ../src/secure_save.c:401 msgid "Cannot access the file" -msgstr "" +msgstr "Filen är oåtkomlig" -#: src/secure_save.c:404 -#, fuzzy +#: ../src/secure_save.c:403 msgid "Cannot create temp file" -msgstr "Kunde inte skapa mapp" +msgstr "Kan inte skapa temp-fil" -#: src/secure_save.c:406 -#, fuzzy +#: ../src/secure_save.c:405 msgid "Cannot rename the file" -msgstr "Kunde inte skapa mapp" +msgstr "Kan inte byta namn på filen" -#: src/secure_save.c:408 +#: ../src/secure_save.c:407 msgid "File saving disabled by option" -msgstr "" +msgstr "Filen kan inte sparas (bortvalt)" -#: src/secure_save.c:410 +#: ../src/secure_save.c:409 msgid "Out of memory" -msgstr "" +msgstr "Minnesbrist" -#: src/secure_save.c:412 +#: ../src/secure_save.c:411 msgid "Cannot write the file" -msgstr "" +msgstr "Filem går ej att skriva" -#: src/secure_save.c:416 +#: ../src/secure_save.c:415 msgid "Secure file saving error" -msgstr "" +msgstr "Fel vid försök till säker filskrivning" -#: src/thumb.c:382 +#: ../src/thumb.c:396 msgid "Thumbnail image in cache failed to load, trying to recreate.\n" -msgstr "Misslyckades lsa in miniatyrbild frn cache, frsker terskapa.\n" +msgstr "Misslyckades läsa in miniatyrbild från cache, försöker återskapa.\n" -#: src/trash.c:74 src/utilops.c:1402 src/utilops.c:1415 src/utilops.c:1494 -#: src/utilops.c:1511 src/utilops.c:3095 src/utilops.c:3146 src/utilops.c:3232 -#: src/utilops.c:3243 +#: ../src/trash.c:80 +#: ../src/utilops.c:2448 +#: ../src/utilops.c:2459 +#: ../src/utilops.c:2516 msgid "Delete failed" msgstr "Borttagning misslyckades" -#: src/trash.c:75 +#: ../src/trash.c:81 msgid "Unable to remove old file from trash folder" -msgstr "Kan inte ta bort en gammal fil frn papperskorgsmappen" +msgstr "Kan inte ta bort en gammal fil från papperskorgsmappen" -#: src/trash.c:126 src/utilops.c:2755 +#: ../src/trash.c:138 msgid "Could not create folder" msgstr "Kunde inte skapa mapp" -#: src/trash.c:148 +#: ../src/trash.c:160 msgid "Permission denied" -msgstr "tkomst nekas" +msgstr "Åtkomst nekas" -#: src/trash.c:158 +#: ../src/trash.c:170 #, c-format msgid "" "Unable to access or create the trash folder.\n" "\"%s\"" msgstr "" -"Kan inte komma t eller skapa papperskorgsmappen:\n" +"Kan inte komma åt eller skapa papperskorgsmappen:\n" "\"%s\"" -#: src/trash.c:162 +#: ../src/trash.c:174 msgid "Turn off safe delete" -msgstr "Stng av sker borttagning" +msgstr "Stäng av säker borttagning" -#: src/trash.c:181 +#: ../src/trash.c:193 msgid "Deletion by external command" -msgstr "" +msgstr "Borttagning med externkommando" -#: src/trash.c:189 +#: ../src/trash.c:201 #, c-format msgid " (max. %d MB)" -msgstr "" +msgstr " (max. %d MB)" -#: src/trash.c:193 -#, fuzzy, c-format +#: ../src/trash.c:205 +#, c-format msgid "" "Safe delete: %s%s\n" "Trash: %s" -msgstr "Sker borttagning: %s" +msgstr "" +"Säker borttagning: %s%s\n" +"Skräpkorg: %s" -#: src/trash.c:198 +#: ../src/trash.c:210 #, c-format msgid "Safe delete: %s" -msgstr "Sker borttagning: %s" - -#: src/ui_bookmark.c:151 -#, c-format -msgid "Unable to write history lists to: %s\n" -msgstr "Kan inte skriva historiklistor till: %s\n" +msgstr "Säker borttagning: %s" -#: src/ui_bookmark.c:443 src/ui_bookmark.c:506 +#: ../src/ui_bookmark.c:130 +#: ../src/ui_bookmark.c:193 msgid "New Bookmark" -msgstr "Nytt bokmrke" +msgstr "Nytt bokmärke" -#: src/ui_bookmark.c:589 src/ui_bookmark.c:595 +#: ../src/ui_bookmark.c:276 +#: ../src/ui_bookmark.c:282 msgid "Edit Bookmark" -msgstr "Redigera bokmrke" +msgstr "Redigera bokmärke" -#: src/ui_bookmark.c:610 +#: ../src/ui_bookmark.c:297 msgid "Path:" -msgstr "Skvg:" +msgstr "Sökväg:" -#: src/ui_bookmark.c:619 +#: ../src/ui_bookmark.c:306 msgid "Icon:" msgstr "Ikon:" -#: src/ui_bookmark.c:625 +#: ../src/ui_bookmark.c:312 msgid "Select icon" msgstr "Markera ikon" -#: src/ui_bookmark.c:716 +#: ../src/ui_bookmark.c:403 msgid "_Properties..." msgstr "_Egenskaper..." -#: src/ui_bookmark.c:718 -msgid "Move _up" -msgstr "Flytta _upp" - -#: src/ui_bookmark.c:720 -msgid "Move _down" -msgstr "Flytta _ner" - -#: src/ui_bookmark.c:722 +#: ../src/ui_bookmark.c:409 msgid "_Remove" msgstr "_Ta bort" -#: src/ui_help.c:114 +#: ../src/ui_fileops.c:94 +msgid "One or more filenames are not encoded with the preferred locale character set.\n" +msgstr "Ett eller fler filnamn har inte en gällande teckenkodning.\n" + +#: ../src/ui_fileops.c:95 #, c-format -msgid "" -"Unable to load:\n" -"%s" -msgstr "Kan inte lsa in:%s" +msgid "Operations on, and display of these files with %s may not succeed.\n" +msgstr "Risk för att filåtgärder inklusive visning av de här filerna inte fungerar med %s \n" -#: src/ui_pathsel.c:438 src/utilops.c:2859 +#: ../src/ui_fileops.c:97 +msgid "If your filenames are not encoded in utf-8, try setting the environment variable G_BROKEN_FILENAMES=1\n" +msgstr "Om filnamn inte är kodade i UTF-8: försök sätta miljövariabeln G_BROKEN_FILENAMES=1\n" + +#: ../src/ui_fileops.c:99 #, c-format -msgid "Failed to rename %s to %s." -msgstr "Misslyckades att byta namn frn %s till %s." +msgid "It appears G_BROKEN_FILENAMES is set to %s\n" +msgstr "Verkar som G_BROKEN_FILENAMES har värdet %s\n" -#: src/ui_pathsel.c:494 src/utilops.c:1510 src/utilops.c:1703 +#: ../src/ui_fileops.c:101 +msgid "It appears G_BROKEN_FILENAMES is not set\n" +msgstr "Verkar som G_BROKEN_FILENAMES ej har något värde\n" + +#: ../src/ui_fileops.c:103 #, c-format msgid "" -"Unable to delete file:\n" -"%s" +"The locale appears to be set to \"%s\"\n" +"(set by the LANG environment variable)\n" msgstr "" -"Kan inte ta bort filen:\n" -"%s" +"Teckenkodningen ser ut att vara \"%s\"\n" +"(inställd av LANG-miljövariabeln)\n" -#: src/ui_pathsel.c:495 src/utilops.c:1452 src/utilops.c:1472 -#: src/utilops.c:1684 src/utilops.c:1696 src/utilops.c:1704 -msgid "File deletion failed" -msgstr "Borttagning av fil misslyckades" +#: ../src/ui_fileops.c:108 +msgid "" +"\n" +"Preferred encoding appears to be UTF-8, however the file:\n" +msgstr "" +"\n" +"Gällande teckenkodning ser ut att vara UTF-8, men filen:\n" -#: src/ui_pathsel.c:537 src/ui_pathsel.c:545 src/utilops.c:1734 -msgid "Delete file" -msgstr "Ta bort fil" +#: ../src/ui_fileops.c:109 +#: ../src/ui_fileops.c:112 +#: ../src/ui_fileops.c:114 +msgid "[name not displayable]" +msgstr "[namnvisning omöjlig]" + +#: ../src/ui_fileops.c:112 +#, c-format +msgid "\"%s\" is encoded in valid UTF-8." +msgstr "\"%s\" har teckenkod UTF-8." + +#: ../src/ui_fileops.c:114 +#, c-format +msgid "\"%s\" is not encoded in valid UTF-8." +msgstr "\"%s\" har inte teckenkod UTF-8." + +#: ../src/ui_fileops.c:119 +#: ../src/ui_fileops.c:124 +msgid "Filename encoding locale mismatch" +msgstr "Filnamnets teckenkodning stämmer inte" -#: src/ui_pathsel.c:543 +#: ../src/ui_help.c:114 #, c-format msgid "" -"About to delete the file:\n" -" %s" -msgstr "" -"Kommer att ta bort filen:\n" +"Unable to load:\n" "%s" +msgstr "Kan inte läsa in:%s" + +#: ../src/ui_pathsel.c:433 +#: ../src/ui_pathsel.c:439 +#: ../src/utilops.c:2147 +#: ../src/utilops.c:2174 +#: ../src/utilops.c:2640 +msgid "Rename failed" +msgstr "Filnamnändringen misslyckades" + +#: ../src/ui_pathsel.c:438 +#, c-format +msgid "Failed to rename %s to %s." +msgstr "Misslyckades namnändra %s till %s." -#: src/ui_pathsel.c:634 src/ui_pathsel.c:642 src/utilops.c:2428 -#: src/utilops.c:2690 +#: ../src/ui_pathsel.c:634 +#: ../src/ui_pathsel.c:642 msgid "_Rename" msgstr "_Byt namn" -#: src/ui_pathsel.c:636 src/ui_pathsel.c:646 +#: ../src/ui_pathsel.c:636 +#: ../src/ui_pathsel.c:646 msgid "Add _Bookmark" -msgstr "_Lgg till bokmrke" +msgstr "_Lägg till bokmärke" -#: src/ui_pathsel.c:644 +#: ../src/ui_pathsel.c:644 msgid "_Delete" msgstr "_Ta bort" -#: src/ui_pathsel.c:748 src/ui_pathsel.c:1053 src/utilops.c:2807 +#: ../src/ui_pathsel.c:748 +#: ../src/ui_pathsel.c:1049 +#: ../src/utilops.c:2674 msgid "New folder" msgstr "Ny mapp" -#: src/ui_pathsel.c:758 src/utilops.c:2762 src/view_dir.c:511 +#: ../src/ui_pathsel.c:758 #, c-format msgid "" "Unable to create folder:\n" @@ -3964,556 +5329,329 @@ "Kan inte skapa mappen:\n" "%s" -#: src/ui_pathsel.c:759 src/utilops.c:2763 src/view_dir.c:512 +#: ../src/ui_pathsel.c:759 msgid "Error creating folder" msgstr "Fel vid skapande av mapp" -#: src/ui_pathsel.c:980 +#: ../src/ui_pathsel.c:980 msgid "All Files" msgstr "Alla filer" -#: src/ui_pathsel.c:1056 +#: ../src/ui_pathsel.c:1052 msgid "Show hidden" msgstr "Visa dolda" -#: src/ui_pathsel.c:1140 +#: ../src/ui_pathsel.c:1136 msgid "Filter:" msgstr "Filter:" -#: src/ui_tabcomp.c:858 +#: ../src/ui_tabcomp.c:933 msgid "Select path" -msgstr "Markera skvg" +msgstr "Markera sökväg" -#: src/ui_tabcomp.c:874 +#: ../src/ui_tabcomp.c:949 msgid "All files" msgstr "Alla filer" -#: src/utilops.c:346 src/utilops.c:811 src/utilops.c:1048 -msgid "Error copying file" -msgstr "Fel vid kopiering av fil" - -#: src/utilops.c:347 -#, fuzzy, c-format +#: ../src/utilops.c:547 msgid "" -"%s\n" -"Unable to copy file:\n" -"%s\n" -"to:\n" -"%s" +"\n" +" Continue multiple file operation?" msgstr "" -"Kan inte kopiera filen:\n" -"%s\n" -"till:\n" -"%s" +"\n" +" Fortsätta flerfil-åtgärder?" -#: src/utilops.c:390 src/utilops.c:816 src/utilops.c:1053 -msgid "Error moving file" -msgstr "Fel vid flytt av fil" +#: ../src/utilops.c:554 +#: ../src/utilops.c:989 +msgid "Co_ntinue" +msgstr "_Fortsätt" -#: src/utilops.c:391 -#, fuzzy, c-format +#: ../src/utilops.c:731 +#, c-format msgid "" -"%s\n" -"Unable to move file:\n" -"%s\n" -"to:\n" +"Removal of folder contents failed at this file:\n" +"\n" "%s" msgstr "" -"Kan inte flytta filen:\n" -"%s\n" -"till:\n" +"Borttagning av mappinnehållet stannade vid denna fil:\n" +"\n" "%s" -#: src/utilops.c:439 src/utilops.c:1920 src/utilops.c:2642 -#: src/view_file_list.c:391 src/view_file_list.c:397 src/view_file_list.c:411 -msgid "Error renaming file" -msgstr "Fel vid namnbyte av fil" - -#: src/utilops.c:440 -#, fuzzy, c-format +#: ../src/utilops.c:877 +#, c-format msgid "" "%s\n" -"Unable to rename file:\n" -"%s\n" -"to:\n" -"%s" +"Unable to start external command.\n" msgstr "" -"Kan inte byta namn p filen:\n" "%s\n" -"till:\n" -"%s" +"Kan inte starta externkommandot\n" -#: src/utilops.c:651 src/utilops.c:981 src/utilops.c:1893 src/utilops.c:2613 -msgid "Overwrite file" -msgstr "Skriv ver fil" - -#: src/utilops.c:656 src/utilops.c:986 src/utilops.c:1898 src/utilops.c:2618 -msgid "Overwrite file?" -msgstr "Skriv ver fil?" - -#: src/utilops.c:657 src/utilops.c:987 -msgid "Replace existing file with new file." -msgstr "Erstt befintlig fil med ny fil." - -#: src/utilops.c:661 -msgid "Overwrite _all" -msgstr "Skriv ver _alla" - -#: src/utilops.c:663 -msgid "S_kip all" -msgstr "H_oppa ver alla" - -#: src/utilops.c:664 -msgid "_Skip" -msgstr "_Hoppa ver" - -#: src/utilops.c:665 src/utilops.c:991 src/utilops.c:1904 src/utilops.c:2624 -msgid "Existing file" -msgstr "Befintlig fil" - -#: src/utilops.c:665 src/utilops.c:991 src/utilops.c:1905 src/utilops.c:2625 -msgid "New file" -msgstr "Ny fil" +#: ../src/utilops.c:957 +#, c-format +msgid "%s is not a directory" +msgstr "%s är ingen mapp" -#: src/utilops.c:675 src/utilops.c:1000 src/utilops.c:2038 src/utilops.c:2094 -#: src/utilops.c:2167 src/utilops.c:2501 -msgid "Auto rename" -msgstr "Automatiskt namnbyte" +#: ../src/utilops.c:987 +msgid "Really continue?" +msgstr "Vill du verkligen fortsätta?" -#: src/utilops.c:683 src/utilops.c:1008 src/utilops.c:2423 src/utilops.c:2682 -msgid "Rename" -msgstr "Byt namn" +#: ../src/utilops.c:1001 +msgid "This operation can't continue:" +msgstr "Den här åtgärden kan inte fullföljas:" -#: src/utilops.c:724 -msgid "Source to copy matches destination" -msgstr "Kllan att kopiera r samma som mlet" +#: ../src/utilops.c:1364 +#: ../src/utilops.c:1477 +#: ../src/utilops.c:1861 +msgid "Discard changes" +msgstr "Ångra ändringarna" -#: src/utilops.c:725 -#, c-format -msgid "" -"Unable to copy file:\n" -"%s\n" -"to itself." -msgstr "" -"Kan inte kopiera filen:\n" -"%s\n" -"till sig sjlv." +#: ../src/utilops.c:1365 +#: ../src/utilops.c:1478 +#: ../src/utilops.c:1811 +#: ../src/utilops.c:1827 +msgid "File details" +msgstr "Filinformation" -#: src/utilops.c:729 -msgid "Source to move matches destination" -msgstr "Kllan att flytta r samma som mlet" +#: ../src/utilops.c:1387 +#: ../src/utilops.c:1485 +msgid "Sidecars" +msgstr "'Sidecar'-filer" -#: src/utilops.c:730 -#, c-format -msgid "" -"Unable to move file:\n" -"%s\n" -"to itself." -msgstr "" -"Kan inte flytta filen:\n" -"%s\n" -"till sig sjlv." +#: ../src/utilops.c:1389 +msgid "Write to file" +msgstr "Skriv till fil" -#: src/utilops.c:738 src/utilops.c:825 src/utilops.c:1408 src/utilops.c:1502 -msgid "Co_ntinue" -msgstr "_Fortstt" - -#: src/utilops.c:812 -#, c-format -msgid "" -"Unable to copy file:\n" -"%s\n" -"to:\n" -"%s\n" -"during multiple file copy." -msgstr "" -"Kan inte kopiera filen:\n" -"%s\n" -"till:\n" -"%s\n" -"vid kopiering av flera filer." - -#: src/utilops.c:817 -#, c-format -msgid "" -"Unable to move file:\n" -"%s\n" -"to:\n" -"%s\n" -"during multiple file move." -msgstr "" -"Kan inte flytta filen:\n" -"%s\n" -"till:\n" -"%s\n" -"vid flytt av flera filer." - -#: src/utilops.c:972 -msgid "Source matches destination" -msgstr "Kllan r samma som mlet" - -#: src/utilops.c:973 -msgid "Source and destination are the same, operation cancelled." -msgstr "Klla och ml r samma, operationen avbrts." - -#: src/utilops.c:1049 -#, c-format -msgid "" -"Unable to copy file:\n" -"%s\n" -"to:\n" -"%s" -msgstr "" -"Kan inte kopiera filen:\n" -"%s\n" -"till:\n" -"%s" - -#: src/utilops.c:1054 -#, c-format -msgid "" -"Unable to move file:\n" -"%s\n" -"to:\n" -"%s" -msgstr "" -"Kan inte flytta filen:\n" -"%s\n" -"till:\n" -"%s" +#: ../src/utilops.c:1429 +msgid "Choose the destination folder." +msgstr "Välj målmapp" -#: src/utilops.c:1102 -msgid "Invalid destination" -msgstr "Ogiltigt ml" +#: ../src/utilops.c:1487 +msgid "New name" +msgstr "Nytt namn" -#: src/utilops.c:1103 -msgid "" -"When operating with multiple files, please select\n" -"a folder, not a file." -msgstr "" -"Vid operationer med flera filer p en gng, var god\n" -"vlj en mapp, inte en fil." +#: ../src/utilops.c:1517 +msgid "Manual rename" +msgstr "Manuell namnändring" -#: src/utilops.c:1108 -msgid "Please select an existing folder." -msgstr "Vlj en befintlig mapp" +#: ../src/utilops.c:1522 +msgid "Original name:" +msgstr "Ursprungligt namn:" -#: src/utilops.c:1178 src/view_dir.c:338 -msgid "_Copy" -msgstr "_Kopiera" +#: ../src/utilops.c:1525 +msgid "New name:" +msgstr "Nytt namn:" -#: src/utilops.c:1181 -msgid "Copy file" -msgstr "Kopiera fil" - -#: src/utilops.c:1185 -msgid "Copy multiple files" -msgstr "Kopiera flera filer" +#: ../src/utilops.c:1538 +msgid "Auto rename" +msgstr "Automatisk namnändring" -#: src/utilops.c:1192 src/view_dir.c:340 -msgid "_Move" -msgstr "Fl_ytta" +#: ../src/utilops.c:1544 +msgid "Begin text" +msgstr "Starttext" -#: src/utilops.c:1195 -msgid "Move file" -msgstr "Flytta fil" - -#: src/utilops.c:1199 -msgid "Move multiple files" -msgstr "Flytta flera filer" +#: ../src/utilops.c:1552 +#: ../src/utilops.c:1584 +msgid "Start #" +msgstr "Startnr." -#: src/utilops.c:1214 src/utilops.c:1744 -msgid "File name:" -msgstr "Filnamn:" +#: ../src/utilops.c:1558 +msgid "End text" +msgstr "Sluttext" -#: src/utilops.c:1218 -msgid "Choose the destination folder." -msgstr "Vlj mlmapp." +#: ../src/utilops.c:1566 +msgid "Padding:" +msgstr "Utfyllnad:" -#: src/utilops.c:1389 -#, fuzzy -msgid "" -"\n" -"Unable to delete file by external command:\n" -msgstr "" -"Kan inte ta bort filen:\n" -"%s" +#: ../src/utilops.c:1571 +msgid "Formatted rename" +msgstr "Formatterad namnändring" -#: src/utilops.c:1401 -#, fuzzy -msgid "" -"\n" -" Continue multiple delete operation?" -msgstr "" -"Kan inte ta bort filen:\n" -" %s\n" -" Fortstta ta bort flera filer?" +#: ../src/utilops.c:1576 +msgid "Format (* = original name, ## = numbers)" +msgstr "Format (* = originalnamn, ## = siffror)" -#: src/utilops.c:1452 src/utilops.c:1684 +#: ../src/utilops.c:1714 msgid "Another operation in progress.\n" -msgstr "" +msgstr "En annan aktivitet pågår.\n" -#: src/utilops.c:1471 -#, fuzzy, c-format -msgid "" -"%s\n" -"Unable to delete files by external command.\n" -msgstr "" -"Kan inte ta bort filen:\n" -"%s" - -#: src/utilops.c:1498 -#, c-format -msgid "" -"Unable to delete file:\n" -" %s\n" -" Continue multiple delete operation?" -msgstr "" -"Kan inte ta bort filen:\n" -" %s\n" -" Fortstta ta bort flera filer?" - -#: src/utilops.c:1569 +#: ../src/utilops.c:1770 #, c-format -msgid "File %d of %d" -msgstr "Fil %d av %d" - -#: src/utilops.c:1637 -#, fuzzy -msgid "Delete files" -msgstr "Ta bort fil" +msgid "File: '%s'\n" +msgstr "Fil: '%s'\n" -#: src/utilops.c:1643 -msgid "Delete multiple files" -msgstr "Ta bort flera filer" +#: ../src/utilops.c:1775 +msgid "with sidecar files:\n" +msgstr "med 'sidecar'-filer:\n" -#: src/utilops.c:1661 +#: ../src/utilops.c:1781 #, c-format -msgid "Review %d files" -msgstr "Granska %d filer" +msgid " '%s'\n" +msgstr " '%s'\n" -#: src/utilops.c:1695 -#, fuzzy, c-format +#: ../src/utilops.c:1785 msgid "" -"%s\n" -"Unable to delete file by external command:\n" -"%s" +"\n" +"Status: " msgstr "" -"Kan inte ta bort filen:\n" -"%s" - -#: src/utilops.c:1740 -msgid "Delete file?" -msgstr "Ta bort fil?" - -#: src/utilops.c:1899 src/utilops.c:2619 -msgid "Replace existing file by renaming new file." -msgstr "Erstt befintlig fil genom att byta namn p ny fil." +"\n" +"Status: " -#: src/utilops.c:1917 -#, c-format -msgid "" -"Unable to rename file:\n" -"%s\n" -" to:\n" -"%s" -msgstr "" -"Kan inte byta namn p filen:\n" -"%s\n" -" till:\n" -"%s" +#: ../src/utilops.c:1797 +msgid "no problem detected" +msgstr "inga problem upptäckta" -#: src/utilops.c:2039 -msgid "Format must include at least one of the symbol characters '*' or '#'.\n" -msgstr "" +#: ../src/utilops.c:1813 +#: ../src/utilops.c:1860 +msgid "Exclude file" +msgstr "Exkludera fil" -#: src/utilops.c:2095 -msgid "" -"Can not auto rename with the selected\n" -"number set, one or more files exist that\n" -"match the resulting name list.\n" -msgstr "" -"Kan inte byta namn automatiskt med den valda\n" -"nummermngden, en eller fler filer finns redan\n" -"vars namn finns i den resulterande namnlistan.\n" +#: ../src/utilops.c:1858 +#: ../src/utilops.c:1883 +msgid "Overview of changed metadata" +msgstr "Översikt av ändrade metadata" -#: src/utilops.c:2166 +#: ../src/utilops.c:1876 #, c-format msgid "" -"Failed to rename\n" -"%s\n" -"The number was %d." -msgstr "" -"Misslyckades med att byta namn p\n" -"%s\n" -"Numret var %d." - -#: src/utilops.c:2427 -msgid "Rename multiple files" -msgstr "Byt namn p flera filer" - -#: src/utilops.c:2461 -msgid "Original Name" -msgstr "Ursprungligt namn" - -#: src/utilops.c:2499 -#, fuzzy -msgid "Manual rename" -msgstr "Menynamn" - -#: src/utilops.c:2500 -msgid "Formatted rename" +"The following metadata tags will be written to\n" +"'%s'." msgstr "" +"Följande metadata kommer att skrivas till\n" +"'%s'" -#: src/utilops.c:2513 src/utilops.c:2697 -msgid "Original name:" -msgstr "Ursprungligt namn:" +#: ../src/utilops.c:1880 +#, c-format +msgid "The following metadata tags will be written to the image file itself." +msgstr "Följande metadata kommer att skrivas till själva bildfilen" -#: src/utilops.c:2516 src/utilops.c:2700 -msgid "New name:" -msgstr "Nytt namn:" +#: ../src/utilops.c:1986 +msgid "Delete files?" +msgstr "Ta bort filer?" -#: src/utilops.c:2534 -msgid "Begin text" -msgstr "Starttext" +#: ../src/utilops.c:1987 +msgid "This will delete the following files" +msgstr "Detta kommer att ta bort följande filer" -#: src/utilops.c:2542 src/utilops.c:2574 -msgid "Start #" -msgstr "Startnr." +#: ../src/utilops.c:2006 +msgid "Can't write metadata" +msgstr "Kan inte skriva metadata" -#: src/utilops.c:2548 -msgid "End text" -msgstr "Sluttext" +#: ../src/utilops.c:2029 +msgid "Write metadata" +msgstr "Skriva metadata" -#: src/utilops.c:2556 -msgid "Padding:" -msgstr "Utfyllnad:" +#: ../src/utilops.c:2030 +msgid "Write metadata?" +msgstr "Skriva metadata?" -#: src/utilops.c:2566 -msgid "Format (* = original name, ## = numbers)" -msgstr "" +#: ../src/utilops.c:2031 +msgid "This will write the changed metadata into the following files" +msgstr "Ändrade metadata kommer nu att skrivas in i följande filer" -#: src/utilops.c:2641 src/view_file_list.c:410 -#, c-format -msgid "" -"Unable to rename file:\n" -"%s\n" -"to:\n" -"%s" -msgstr "" -"Kan inte byta namn p filen:\n" -"%s\n" -"till:\n" -"%s" +#: ../src/utilops.c:2033 +msgid "Metadata writting failed" +msgstr "Metadata-skrivningen misslyckades" -#: src/utilops.c:2687 -msgid "Rename file" -msgstr "Byt namn p filen" +#: ../src/utilops.c:2052 +#: ../src/utilops.c:2079 +msgid "Move failed" +msgstr "Flyttningen misslyckades" -#: src/utilops.c:2748 src/utilops.c:2841 -#, c-format -msgid "" -"The folder:\n" -"%s\n" -"already exists." -msgstr "" -"Mappen:\n" -"%s\n" -"finns redan." - -#: src/utilops.c:2749 src/utilops.c:2842 -msgid "Folder exists" -msgstr "Mappen finns" +#: ../src/utilops.c:2076 +msgid "Move files?" +msgstr "Flytta filer?" -#: src/utilops.c:2754 src/utilops.c:2850 -#, c-format -msgid "" -"The path:\n" -"%s\n" -"already exists as a file." -msgstr "" -"Skvgen:\n" -"%s\n" -"finns redan som fil." +#: ../src/utilops.c:2077 +msgid "This will move the following files" +msgstr "Detta kommer att flytta följande filer" -#: src/utilops.c:2812 -#, c-format -msgid "" -"Create folder in:\n" -"%s\n" -"named:" -msgstr "" -"Skapa en mapp i:\n" -"%s\n" -"med namnet:" +#: ../src/utilops.c:2101 +#: ../src/utilops.c:2128 +msgid "Copy failed" +msgstr "Kopieringen misslyckades" -#: src/utilops.c:2851 src/utilops.c:2860 -#, fuzzy -msgid "Rename failed" -msgstr "Byt namn p filen" +#: ../src/utilops.c:2125 +msgid "Copy files?" +msgstr "Kopiera filer?" -#: src/utilops.c:2967 -#, fuzzy -msgid "Location" -msgstr "Plats:" +#: ../src/utilops.c:2126 +#: ../src/utilops.c:2260 +msgid "This will copy the following files" +msgstr "De här filerna kommer att kopieras" -#: src/utilops.c:3145 -#, fuzzy, c-format -msgid "" -"Unable to delete folder:\n" -"\n" -"%s" -msgstr "" -"Kan inte ta bort filen:\n" -"%s" +#: ../src/utilops.c:2170 +#: ../src/utilops.c:2636 +msgid "Rename" +msgstr "Byt namn" -#: src/utilops.c:3152 -#, c-format -msgid "" -"Removal of folder contents failed at this file:\n" -"\n" -"%s" -msgstr "" +#: ../src/utilops.c:2171 +msgid "Rename files?" +msgstr "Ändra filnamn?" + +#: ../src/utilops.c:2172 +msgid "This will rename the following files" +msgstr "Detta ändrar namnen på följande filer" + +#: ../src/utilops.c:2224 +msgid "Can't run external editor" +msgstr "Kan inte starta extern textredigerare" + +# Editor" must be wrong, better "Link" +#: ../src/utilops.c:2258 +msgid "Editor" +msgstr "Länka" + +# "Run editor?" must be wrong, better "Create symlink?" +#: ../src/utilops.c:2259 +msgid "Run editor?" +msgstr "Skapa länk (symlink)?" + +#: ../src/utilops.c:2262 +msgid "External command failed" +msgstr "Externkommandot misslyckades" -#: src/utilops.c:3207 src/utilops.c:3291 -#, fuzzy +#: ../src/utilops.c:2431 +#: ../src/utilops.c:2504 msgid "Delete folder" -msgstr "Markera mapp" +msgstr "Ta bort mappen" -#: src/utilops.c:3211 -#, c-format +#: ../src/utilops.c:2432 +msgid "Delete symbolic link?" +msgstr "Vill du ta bort länken?" + +#: ../src/utilops.c:2434 msgid "" -"This will delete the symbolic link:\n" -"\n" -"%s\n" -"\n" +"This will delete the symbolic link.\n" "The folder this link points to will not be deleted." msgstr "" +"Det här tar bort länken.\n" +"Mappen som den pekar på tas inte bort." -#: src/utilops.c:3215 -msgid "Delete symbolic link to folder?" -msgstr "" +#: ../src/utilops.c:2436 +msgid "Link deletion failed" +msgstr "Misslyckades ta bort länken" -#: src/utilops.c:3230 -#, fuzzy, c-format +#: ../src/utilops.c:2446 +#, c-format msgid "" "Unable to remove folder %s\n" "Permissions do not allow writing to the folder." -msgstr "Kan inte ta bort en gammal fil frn papperskorgsmappen" +msgstr "" +"Kan inte ta bort mappen %s\n" +"Den är skrivskyddad" -#: src/utilops.c:3242 -#, fuzzy, c-format +#: ../src/utilops.c:2458 +#: ../src/utilops.c:2515 +#, c-format msgid "Unable to list contents of folder %s" -msgstr "" -"Kan inte skapa mappen:\n" -"%s" +msgstr "Kan inte visa innehållet i mappen %s" -#: src/utilops.c:3256 src/utilops.c:3264 -#, fuzzy +#: ../src/utilops.c:2472 +#: ../src/utilops.c:2480 msgid "Folder contains subfolders" -msgstr "Inkludera undermappar" +msgstr "Mappen har undermappar" -#: src/utilops.c:3260 +#: ../src/utilops.c:2476 #, c-format msgid "" "Unable to delete the folder:\n" @@ -4522,92 +5660,116 @@ "\n" "This folder contains subfolders which must be moved before it can be deleted." msgstr "" +"Kan inte ta bort mappen:\n" +"\n" +"%s\n" +"\n" +"Mappen innehåller undermappar som först måste flyttas." -#: src/utilops.c:3268 -#, fuzzy +#: ../src/utilops.c:2484 msgid "Subfolders:" -msgstr "mapp" +msgstr "Undermappar:" -#: src/utilops.c:3295 -#, c-format +#: ../src/utilops.c:2505 +msgid "Delete folder?" +msgstr "Ta bort mappen?" + +#: ../src/utilops.c:2506 +msgid "The folder contains these files:" +msgstr "Mappen innehåller följande filer:" + +#: ../src/utilops.c:2507 msgid "" -"This will delete the folder:\n" -"\n" -"%s\n" -"\n" +"This will delete the folder.\n" "The contents of this folder will also be deleted." msgstr "" +"Det här tar bort mappen\n" +"Mappens innehåll kommer också att tas bort" -#: src/utilops.c:3299 -#, fuzzy -msgid "Delete folder?" -msgstr "Ta bort fil?" +#: ../src/utilops.c:2637 +msgid "Rename folder?" +msgstr "Ändra namn på mappen?" + +#: ../src/utilops.c:2638 +msgid "The folder contains the following files" +msgstr "Mappen innehåller följande filer" + +#: ../src/utilops.c:2684 +msgid "Create Folder" +msgstr "Skapa ny mapp" + +#: ../src/utilops.c:2685 +msgid "Create folder?" +msgstr "Skapa ny mapp?" + +#: ../src/utilops.c:2688 +msgid "Can't create folder" +msgstr "Kan inte skapa ny mapp" -#: src/utilops.c:3303 -#, fuzzy -msgid "Contents:" -msgstr "_Innehll" - -#: src/view_dir.c:30 -#, fuzzy -msgid "_Tree" -msgstr "T_rd" +#: ../src/view_dir.c:397 +msgid "_Copy" +msgstr "_Kopiera" -#: src/view_dir.c:502 -msgid "new_folder" -msgstr "ny_mapp" +#: ../src/view_dir.c:399 +msgid "_Move" +msgstr "_Flytta" -#: src/view_dir.c:587 +#: ../src/view_dir.c:645 msgid "_Up to parent" -msgstr "_Upp en niv" +msgstr "_Upp en nivå" -#: src/view_dir.c:592 +#: ../src/view_dir.c:650 msgid "_Slideshow" msgstr "_Bildspel" -#: src/view_dir.c:594 +#: ../src/view_dir.c:652 msgid "Slideshow recursive" msgstr "Rekursivt bildspel" -#: src/view_dir.c:598 +#: ../src/view_dir.c:656 msgid "Find _duplicates..." msgstr "Hitta _dubletter..." -#: src/view_dir.c:600 +#: ../src/view_dir.c:658 msgid "Find duplicates recursive..." -msgstr "Rekursiv skning efter dubletter..." +msgstr "Rekursiv sökning efter dubletter..." -#: src/view_dir.c:605 +#: ../src/view_dir.c:663 msgid "_New folder..." msgstr "Ny _mapp..." -#: src/view_dir.c:619 -#, fuzzy -msgid "_View as" -msgstr "_Visa" +#: ../src/view_dir.c:677 +#: ../src/view_file.c:619 +msgid "View as _List" +msgstr "Visa som _lista" + +#: ../src/view_dir.c:680 +msgid "View as _Tree" +msgstr "Visa som _träd" -#: src/view_dir.c:631 -#, fuzzy +#: ../src/view_dir.c:685 msgid "Show _hidden files" -msgstr "Visa dolda" +msgstr "Visa _dolda filer" -#: src/view_dir.c:634 src/view_file.c:606 +#: ../src/view_dir.c:688 +#: ../src/view_file.c:637 msgid "Re_fresh" msgstr "Upp_datera" -#: src/view_file.c:588 -msgid "_Sort" -msgstr "_Sortera" - -#: src/view_file.c:591 -msgid "View as _icons" +#: ../src/view_file.c:622 +msgid "View as _Icons" msgstr "Visa som _ikoner" -#: src/view_file.c:597 +#: ../src/view_file.c:628 msgid "Show _thumbnails" msgstr "Visa _miniatyrbilder" -#: src/view_file_list.c:390 +#: ../src/view_file_icon.c:2199 +#: ../src/view_file_list.c:899 +msgid " [NO GROUPING]" +msgstr " [INGEN GRUPPINDELNING]" + +#: ../src/view_file_list.c:512 #, c-format msgid "" "Invalid file name:\n" @@ -4616,383 +5778,661 @@ "Ogiltigt filnamn:\n" "%s" -#: src/view_file_list.c:1821 -msgid "SC" -msgstr "" +#: ../src/view_file_list.c:513 +msgid "Error renaming file" +msgstr "Fel vid filnamnändring" -#: src/window.c:226 +#: ../src/window.c:252 msgid "Help" -msgstr "Hjlp" +msgstr "Hjälp" + +#~ msgid "Advanced view" +#~ msgstr "Avancerad vy" +#~ msgid "Favorite" +#~ msgstr "Favorit" +#~ msgid "Todo" +#~ msgstr "Att göra" +#~ msgid "Possessions" +#~ msgstr "Ägodelar" +#~ msgid "Keyword Presets" +#~ msgstr "Förinställda nyckelord" +#~ msgid "Favorite keywords list" +#~ msgstr "Lista över favoritnyckelord." +#~ msgid "Edit favorite keywords list." +#~ msgstr "Redigera listan över favoritnyckelord." + +#, fuzzy +#~ msgid "Add keywords to selected files, replacing existing ones" +#~ msgstr "Lägg till nyckelord till de valda filerna, skriv över befintliga." + +#, fuzzy +#~ msgid "Add comment to selected files, replacing existing one" +#~ msgstr "Lägg till nyckelord till de valda filerna, skriv över befintliga." +#~ msgid "Save comment now" +#~ msgstr "Spara kommentar nu" +#~ msgid "Unlink failed" +#~ msgstr "Borttagning av länk misslyckades" + +#, fuzzy +#~ msgid "" +#~ "Unable to create symbolic link:\n" +#~ "%s" +#~ msgstr "" +#~ "Kan inte skapa mappen:\n" +#~ "%s" +#~ msgid "Link failed" +#~ msgstr "Länkning misslyckades" +#~ msgid "Link" +#~ msgstr "Länka" + +#, fuzzy +#~ msgid "Background color" +#~ msgstr "Svart bakgrund" + +#, fuzzy +#~ msgid "Background color as a GdkColor" +#~ msgstr "Svart bakgrund" + +#, fuzzy +#~ msgid "Foreground color" +#~ msgstr "Svart bakgrund" + +#, fuzzy +#~ msgid "Background set" +#~ msgstr "Svart bakgrund" + +#, fuzzy +#~ msgid "Show text" +#~ msgstr "Visa _filnamnstext" +#~ msgid "%d images (%d)" +#~ msgstr "%d bilder (%d)" +#~ msgid "_Properties" +#~ msgstr "_Egenskaper" +#~ msgid "The Gimp" +#~ msgstr "Gimp" +#~ msgid "XV" +#~ msgstr "XV" +#~ msgid "Xpaint" +#~ msgstr "Xpaint" +#~ msgid "Rotate jpeg clockwise" +#~ msgstr "Rotera jpeg medurs" +#~ msgid "Rotate jpeg counterclockwise" +#~ msgstr "Rotera jpeg moturs" +#~ msgid "Dimensions:" +#~ msgstr "Dimensioner:" +#~ msgid "Transparent:" +#~ msgstr "Transparent:" +#~ msgid "Compress ratio:" +#~ msgstr "Kompression:" +#~ msgid "File type:" +#~ msgstr "Filtyp:" +#~ msgid "Owner:" +#~ msgstr "Ägare:" +#~ msgid "Group:" +#~ msgstr "Grupp:" +#~ msgid "Image %d of %d" +#~ msgstr "Bild %d av %d" + +#, fuzzy +#~ msgid "Image properties" +#~ msgstr "Bildegenskaper - Geeqie" + +#, fuzzy +#~ msgid "_%d %s..." +#~ msgstr "i %s..." + +#, fuzzy +#~ msgid "_%d (unknown)..." +#~ msgstr "i (okänd)..." + +#, fuzzy +#~ msgid "_%d empty" +#~ msgstr "tom" +#~ msgid "_Adjust" +#~ msgstr "_Justera" + +#, fuzzy +#~ msgid "Escape" +#~ msgstr "liggande" +#~ msgid "_Thumbnails" +#~ msgstr "_Miniatyrbilder" +#~ msgid "_Keywords" +#~ msgstr "_Nyckelord" +#~ msgid "E_xif data" +#~ msgstr "_Exif-information" +#~ msgid "_List" +#~ msgstr "_Lista" +#~ msgid "Change to home folder" +#~ msgstr "Byt till hemmappen" +#~ msgid "Refresh file list" +#~ msgstr "Uppdatera fillista" + +#, fuzzy +#~ msgid "_Float" +#~ msgstr "Format" +#~ msgid "Float Controls" +#~ msgstr "Ta loss kontroller" +#~ msgid "Cache thumbnails into .thumbnails" +#~ msgstr "Cacha miniatyrbilder i .thumbnails" +#~ msgid "Two pass zooming" +#~ msgstr "Tvåstegszoomning" +#~ msgid "Filtering" +#~ msgstr "Filtrering" +#~ msgid "#" +#~ msgstr "Nr." +#~ msgid "Command Line" +#~ msgstr "Kommandorad" +#~ msgid "Advanced" +#~ msgstr "Avancerat" + +#, fuzzy +#~ msgid "Store keywords and comments as XMP tags in image files" +#~ msgstr "Lagra miniatyrbilder i närheten av originalbilder" + +#, fuzzy +#~ msgid "" +#~ "%s\n" +#~ "Unable to copy file:\n" +#~ "%s\n" +#~ "to:\n" +#~ "%s" +#~ msgstr "" +#~ "Kan inte kopiera filen:\n" +#~ "%s\n" +#~ "till:\n" +#~ "%s" +#~ msgid "Error moving file" +#~ msgstr "Fel vid flytt av fil" + +#, fuzzy +#~ msgid "" +#~ "%s\n" +#~ "Unable to move file:\n" +#~ "%s\n" +#~ "to:\n" +#~ "%s" +#~ msgstr "" +#~ "Kan inte flytta filen:\n" +#~ "%s\n" +#~ "till:\n" +#~ "%s" + +#, fuzzy +#~ msgid "" +#~ "%s\n" +#~ "Unable to rename file:\n" +#~ "%s\n" +#~ "to:\n" +#~ "%s" +#~ msgstr "" +#~ "Kan inte byta namn på filen:\n" +#~ "%s\n" +#~ "till:\n" +#~ "%s" +#~ msgid "Overwrite file?" +#~ msgstr "Skriv över fil?" +#~ msgid "Overwrite _all" +#~ msgstr "Skriv över _alla" +#~ msgid "S_kip all" +#~ msgstr "H_oppa över alla" +#~ msgid "_Skip" +#~ msgstr "_Hoppa över" +#~ msgid "Existing file" +#~ msgstr "Befintlig fil" +#~ msgid "New file" +#~ msgstr "Ny fil" +#~ msgid "Source to copy matches destination" +#~ msgstr "Källan att kopiera är samma som målet" +#~ msgid "" +#~ "Unable to copy file:\n" +#~ "%s\n" +#~ "to itself." +#~ msgstr "" +#~ "Kan inte kopiera filen:\n" +#~ "%s\n" +#~ "till sig själv." +#~ msgid "Source to move matches destination" +#~ msgstr "Källan att flytta är samma som målet" +#~ msgid "" +#~ "Unable to move file:\n" +#~ "%s\n" +#~ "to itself." +#~ msgstr "" +#~ "Kan inte flytta filen:\n" +#~ "%s\n" +#~ "till sig själv." +#~ msgid "" +#~ "Unable to copy file:\n" +#~ "%s\n" +#~ "to:\n" +#~ "%s\n" +#~ "during multiple file copy." +#~ msgstr "" +#~ "Kan inte kopiera filen:\n" +#~ "%s\n" +#~ "till:\n" +#~ "%s\n" +#~ "vid kopiering av flera filer." +#~ msgid "" +#~ "Unable to move file:\n" +#~ "%s\n" +#~ "to:\n" +#~ "%s\n" +#~ "during multiple file move." +#~ msgstr "" +#~ "Kan inte flytta filen:\n" +#~ "%s\n" +#~ "till:\n" +#~ "%s\n" +#~ "vid flytt av flera filer." +#~ msgid "Source matches destination" +#~ msgstr "Källan är samma som målet" +#~ msgid "" +#~ "Unable to copy file:\n" +#~ "%s\n" +#~ "to:\n" +#~ "%s" +#~ msgstr "" +#~ "Kan inte kopiera filen:\n" +#~ "%s\n" +#~ "till:\n" +#~ "%s" +#~ msgid "" +#~ "Unable to move file:\n" +#~ "%s\n" +#~ "to:\n" +#~ "%s" +#~ msgstr "" +#~ "Kan inte flytta filen:\n" +#~ "%s\n" +#~ "till:\n" +#~ "%s" +#~ msgid "" +#~ "When operating with multiple files, please select\n" +#~ "a folder, not a file." +#~ msgstr "" +#~ "Vid operationer med flera filer på en gång, var god\n" +#~ "välj en mapp, inte en fil." +#~ msgid "Please select an existing folder." +#~ msgstr "Välj en befintlig mapp" +#~ msgid "Copy multiple files" +#~ msgstr "Kopiera flera filer" +#~ msgid "Move multiple files" +#~ msgstr "Flytta flera filer" +#~ msgid "File name:" +#~ msgstr "Filnamn:" + +#, fuzzy +#~ msgid "" +#~ "\n" +#~ "Unable to delete file by external command:\n" +#~ msgstr "" +#~ "Kan inte ta bort filen:\n" +#~ "%s" +#~ msgid "" +#~ "Unable to delete file:\n" +#~ " %s\n" +#~ " Continue multiple delete operation?" +#~ msgstr "" +#~ "Kan inte ta bort filen:\n" +#~ " %s\n" +#~ " Fortsätta ta bort flera filer?" +#~ msgid "File %d of %d" +#~ msgstr "Fil %d av %d" +#~ msgid "Delete multiple files" +#~ msgstr "Ta bort flera filer" +#~ msgid "Review %d files" +#~ msgstr "Granska %d filer" + +#, fuzzy +#~ msgid "" +#~ "%s\n" +#~ "Unable to delete file by external command:\n" +#~ "%s" +#~ msgstr "" +#~ "Kan inte ta bort filen:\n" +#~ "%s" +#~ msgid "Delete file?" +#~ msgstr "Ta bort fil?" +#~ msgid "Replace existing file by renaming new file." +#~ msgstr "Ersätt befintlig fil genom att byta namn på ny fil." +#~ msgid "" +#~ "Unable to rename file:\n" +#~ "%s\n" +#~ " to:\n" +#~ "%s" +#~ msgstr "" +#~ "Kan inte byta namn på filen:\n" +#~ "%s\n" +#~ " till:\n" +#~ "%s" +#~ msgid "" +#~ "Can not auto rename with the selected\n" +#~ "number set, one or more files exist that\n" +#~ "match the resulting name list.\n" +#~ msgstr "" +#~ "Kan inte byta namn automatiskt med den valda\n" +#~ "nummermängden, en eller fler filer finns redan\n" +#~ "vars namn finns i den resulterande namnlistan.\n" +#~ msgid "" +#~ "Failed to rename\n" +#~ "%s\n" +#~ "The number was %d." +#~ msgstr "" +#~ "Misslyckades med att byta namn på\n" +#~ "%s\n" +#~ "Numret var %d." +#~ msgid "Rename multiple files" +#~ msgstr "Byt namn på flera filer" +#~ msgid "Original Name" +#~ msgstr "Ursprungligt namn" +#~ msgid "" +#~ "Unable to rename file:\n" +#~ "%s\n" +#~ "to:\n" +#~ "%s" +#~ msgstr "" +#~ "Kan inte byta namn på filen:\n" +#~ "%s\n" +#~ "till:\n" +#~ "%s" +#~ msgid "" +#~ "The folder:\n" +#~ "%s\n" +#~ "already exists." +#~ msgstr "" +#~ "Mappen:\n" +#~ "%s\n" +#~ "finns redan." +#~ msgid "" +#~ "The path:\n" +#~ "%s\n" +#~ "already exists as a file." +#~ msgstr "" +#~ "Sökvägen:\n" +#~ "%s\n" +#~ "finns redan som fil." +#~ msgid "" +#~ "Create folder in:\n" +#~ "%s\n" +#~ "named:" +#~ msgstr "" +#~ "Skapa en mapp i:\n" +#~ "%s\n" +#~ "med namnet:" + +#, fuzzy +#~ msgid "" +#~ "Unable to delete folder:\n" +#~ "\n" +#~ "%s" +#~ msgstr "" +#~ "Kan inte ta bort filen:\n" +#~ "%s" +#, fuzzy +#~ msgid "Contents:" +#~ msgstr "_Innehåll" +#~ msgid "new_folder" +#~ msgstr "ny_mapp" + +#, fuzzy +#~ msgid "_View as" +#~ msgstr "_Visa" #~ msgid "Change to folder:" #~ msgstr "Byt till mapp:" #, fuzzy #~ msgid "Reset fullscreen info string" -#~ msgstr "Storlek fr helskrmslge:" +#~ msgstr "Storlek för helskärmsläge:" #, fuzzy #~ msgid "" #~ "This will reset the fullscreen info string to the default.\n" #~ "Continue?" #~ msgstr "" -#~ "Detta kommer att terstlla filfiltren till standardinstllningarna.\n" -#~ "Fortstt?" +#~ "Detta kommer att återställa filfiltren till standardinställningarna.\n" +#~ "Fortsätt?" #, fuzzy #~ msgid "Always show fullscreen info" -#~ msgstr "avaktivera helskrmslge" +#~ msgstr "avaktivera helskärmsläge" #, fuzzy #~ msgid "Fullscreen info string" -#~ msgstr "Storlek fr helskrmslge:" +#~ msgstr "Storlek för helskärmsläge:" #, fuzzy #~ msgid "List" #~ msgstr "_Lista" - -#~ msgid "View as _tree" -#~ msgstr "Visa som t_rd" - #~ msgid "Show entries that begin with a dot" -#~ msgstr "Visa poster som brjar med en punkt" - +#~ msgstr "Visa poster som börjar med en punkt" #~ msgid "Find duplicates - Geeqie" #~ msgstr "Hitta dubletter - Geeqie" - -#~ msgid "Geeqie full screen" -#~ msgstr "Geeqie helskrmslge" - #~ msgid "Geeqie Tools" #~ msgstr "Geeqie Verktyg" - #~ msgid "Help - Geeqie" -#~ msgstr "Hjlp - Geeqie" - +#~ msgstr "Hjälp - Geeqie" #~ msgid "Geeqie - exit" #~ msgstr "Geeqie - avsluta" -#~ msgid "Quit Geeqie" -#~ msgstr "Avsluta Geeqie" - #, fuzzy #~ msgid "Pan View - Geeqie" #~ msgstr "Skriv ut - Geeqie" - #~ msgid "About - Geeqie" #~ msgstr "Om - Geeqie" - #~ msgid "Print - Geeqie" #~ msgstr "Skriv ut - Geeqie" - #~ msgid "Copy - Geeqie" #~ msgstr "Kopiera - Geeqie" - #~ msgid "Move - Geeqie" #~ msgstr "Flytta - Geeqie" - #~ msgid "Delete files - Geeqie" #~ msgstr "Ta bort filer - Geeqie" - #~ msgid "Delete file - Geeqie" #~ msgstr "Ta bort fil - Geeqie" - #~ msgid "Rename - Geeqie" #~ msgstr "Byt namn - Geeqie" - #~ msgid "New folder - Geeqie" #~ msgstr "Ny mapp - Geeqie" - #~ msgid "/File/tear1" #~ msgstr "/Arkiv/tear1" - #~ msgid "/File/_New collection" #~ msgstr "/Arkiv/_Nytt album" - #~ msgid "/File/_Open collection..." -#~ msgstr "/Arkiv/ppna a_lbum..." - +#~ msgstr "/Arkiv/Öppna a_lbum..." #~ msgid "/File/sep1" #~ msgstr "/Arkiv/sep1" - #~ msgid "/File/_Search..." -#~ msgstr "/Arkiv/_Sk..." - +#~ msgstr "/Arkiv/_Sök..." #~ msgid "/File/_Find duplicates..." #~ msgstr "Arkiv/Hitta _dubletter..." - #~ msgid "/File/sep2" #~ msgstr "/Arkiv/sep2" - #~ msgid "/File/_Print..." #~ msgstr "/Arkiv/Skriv _ut..." - #~ msgid "/File/N_ew folder..." #~ msgstr "/Arkiv/Ny _mapp..." - #~ msgid "/File/sep3" #~ msgstr "/Arkiv/sep3" - #~ msgid "/File/_Copy..." #~ msgstr "/Arkiv/_Kopiera..." - #~ msgid "/File/_Move..." #~ msgstr "/Arkiv/Fl_ytta..." - #~ msgid "/File/_Rename..." #~ msgstr "/Arkiv/_Byt namn..." - #~ msgid "/File/_Delete..." #~ msgstr "/Arkiv/_Ta bort..." - #~ msgid "/File/sep4" #~ msgstr "/Arkiv/sep4" - #~ msgid "/File/C_lose window" -#~ msgstr "/Arkiv/St_ng fnster" - +#~ msgstr "/Arkiv/St_äng fönster" #~ msgid "/File/_Quit" #~ msgstr "/Arkiv/_Avsluta" - #~ msgid "/_Edit" #~ msgstr "/_Redigera" - #~ msgid "/Edit/tear1" #~ msgstr "/Redigera/tear1" - #~ msgid "/Edit/editor1" #~ msgstr "/Redigera/redigeringsprogram1" - #~ msgid "/Edit/editor2" #~ msgstr "/Redigera/redigeringsprogram2" - #~ msgid "/Edit/editor3" #~ msgstr "/Redigera/redigeringsprogram3" - #~ msgid "/Edit/editor4" #~ msgstr "/Redigera/redigeringsprogram4" - #~ msgid "/Edit/editor5" #~ msgstr "/Redigera/redigeringsprogram5" - #~ msgid "/Edit/editor6" #~ msgstr "/Redigera/redigeringsprogram6" - #~ msgid "/Edit/editor7" #~ msgstr "/Redigera/redigeringsprogram7" - #~ msgid "/Edit/editor8" #~ msgstr "/Redigera/redigeringsprogram8" - #~ msgid "/Edit/editor9" #~ msgstr "/Redigera/redigeringsprogram9" - #~ msgid "/Edit/editor0" #~ msgstr "/Redigera/redigeringsprogram0" - #~ msgid "/Edit/sep1" #~ msgstr "/Redigera/sep1" - #~ msgid "/Edit/_Adjust" #~ msgstr "/Redigera/_Justera" - #~ msgid "/Edit/_Properties" #~ msgstr "/Redigera/_Egenskaper" - #~ msgid "/Edit/Adjust/tear1" #~ msgstr "/Redigera/Justera/tear1" - #~ msgid "/Edit/Adjust/_Rotate clockwise" #~ msgstr "/Redigera/Justera/_Rotera medurs" - #~ msgid "/Edit/Adjust/Rotate _counterclockwise" #~ msgstr "/Redigera/Justera/Rotera _moturs" - #~ msgid "/Edit/Adjust/Rotate 1_80" -#~ msgstr "/Redigera/Justera/Rotera 1_80" - +#~ msgstr "/Redigera/Justera/Rotera 1_80°" #~ msgid "/Edit/Adjust/_Mirror" #~ msgstr "/Redigera/Justera/Spegla _horisontellt" - #~ msgid "/Edit/Adjust/_Flip" #~ msgstr "/Redigera/Justera/Spegla _vertikalt" - #~ msgid "/Edit/sep2" #~ msgstr "/Redigera/sep2" - #~ msgid "/Edit/Select _all" #~ msgstr "/Redigera/Markera _alla" - #~ msgid "/Edit/Select _none" #~ msgstr "/Redigera/Markera i_ngen" - #~ msgid "/Edit/sep3" #~ msgstr "/Redigera/sep3" - #~ msgid "/Edit/_Options..." -#~ msgstr "/Redigera/_Instllningar..." - +#~ msgstr "/Redigera/_Inställningar..." #~ msgid "/Edit/sep4" #~ msgstr "/Redigera/sep4" - #~ msgid "/Edit/Set as _wallpaper" -#~ msgstr "/Redigera/Stll in som skrivbords_underlag" - +#~ msgstr "/Redigera/Ställ in som skrivbords_underlag" #~ msgid "/_View" #~ msgstr "/_Visa" - #~ msgid "/View/tear1" #~ msgstr "/Visa/tear1" - #~ msgid "/View/Zoom _in" #~ msgstr "/Visa/Zooma _in" - #~ msgid "/View/Zoom _out" #~ msgstr "/Visa/Zooma _ut" - #~ msgid "/View/Zoom _1:1" #~ msgstr "/Visa/Zooma _1:1" - #~ msgid "/View/sep1" #~ msgstr "/Visa/sep1" - #~ msgid "/View/_Thumbnails" #~ msgstr "/Visa/_Miniatyrbilder" - #~ msgid "/View/I_cons" #~ msgstr "/Visa/I_koner" - #~ msgid "/View/sep2" #~ msgstr "/Visa/sep2" - #~ msgid "/View/F_ull screen" -#~ msgstr "/Visa/_Helskrm" - +#~ msgstr "/Visa/_Helskärm" #~ msgid "/View/sep3" #~ msgstr "/Visa/sep3" - #~ msgid "/View/_Hide file list" -#~ msgstr "/Visa/Dlj _fillista" - +#~ msgstr "/Visa/Dölj _fillista" #~ msgid "/View/sep4" #~ msgstr "/Visa/sep4" - #~ msgid "/View/_Keywords" #~ msgstr "/Visa/_Nyckelord" - #~ msgid "/View/Sort _manager" #~ msgstr "/Visa/_Sorteringshanterare" - #~ msgid "/View/sep5" #~ msgstr "/Visa/sep5" - #~ msgid "/View/Toggle _slideshow" -#~ msgstr "/Visa/Vxla _bildspel" - +#~ msgstr "/Visa/Växla _bildspel" #~ msgid "/View/_Refresh Lists" #~ msgstr "/Visa/Upp_datera listor" - #~ msgid "/Help/tear1" -#~ msgstr "/Hjlp/tear1" - +#~ msgstr "/Hjälp/tear1" #~ msgid "/Help/sep1" -#~ msgstr "/Hjlp/sep1" - +#~ msgstr "/Hjälp/sep1" #~ msgid "Geeqie configuration" #~ msgstr "Geeqie konfiguration" - #~ msgid "/Edit/_Remove old thumbnails" #~ msgstr "/Redigera/Ra_dera gamla miniatyrbilder" - #~ msgid "path" -#~ msgstr "skvg" - +#~ msgstr "sökväg" #~ msgid "Save" #~ msgstr "Spara" - #~ msgid "" #~ "Overwrite collection file:\n" #~ "%s" #~ msgstr "" -#~ "Skriv ver albumfil:\n" +#~ "Skriv över albumfil:\n" #~ "%s" - #~ msgid "Save collection as:" #~ msgstr "Spara album som:" - #~ msgid "Open collection from:" -#~ msgstr "ppna album frn:" - +#~ msgstr "Öppna album från:" #~ msgid "Open" -#~ msgstr "ppna" - +#~ msgstr "Öppna" #~ msgid "Append collection from:" -#~ msgstr "Komplettera album med innehll frn:" - +#~ msgstr "Komplettera album med innehåll från:" #~ msgid "Exit" #~ msgstr "Avsluta" - #~ msgid "Ok" #~ msgstr "OK" - #~ msgid "Initial folder" #~ msgstr "Startmapp" - #~ msgid "On startup, change to this folder:" #~ msgstr "Vid start, byt till denna mapp:" - #~ msgid "Zoom (scaling):" #~ msgstr "Zoom (skalning):" - #~ msgid "Place dialogs under mouse" #~ msgstr "Placera dialogrutor under muspekaren" - #~ msgid "Include files of type:" #~ msgstr "Inkludera filer av typen:" - -#~ msgid "Remove" -#~ msgstr "Ta bort" - #~ msgid "Add" -#~ msgstr "Lgg till" - +#~ msgstr "Lägg till" #~ msgid "Point size:" #~ msgstr "Textstorlek (punkter):" - #~ msgid "Width:" #~ msgstr "Bredd:" - #~ msgid "Height:" -#~ msgstr "Hjd:" - +#~ msgstr "Höjd:" #~ msgid "" #~ "Overwrite file:\n" #~ " %s\n" #~ " with:\n" #~ " %s" #~ msgstr "" -#~ "Skriv ver filen:\n" +#~ "Skriv över filen:\n" #~ " %s\n" #~ " med:\n" #~ " %s" - #~ msgid "Yes" #~ msgstr "Ja" - #~ msgid "Yes to all" #~ msgstr "Ja till alla" - #~ msgid "" #~ "Overwrite file:\n" #~ "%s\n" #~ " with:\n" #~ "%s" #~ msgstr "" -#~ "Skriv ver filen:\n" +#~ "Skriv över filen:\n" #~ "%s\n" #~ " med:\n" #~ "%s" - #~ msgid "" #~ "Copy file:\n" #~ "%s\n" @@ -5001,7 +6441,6 @@ #~ "Kopiera filen:\n" #~ "%s\n" #~ "till:" - #~ msgid "" #~ "Move file:\n" #~ "%s\n" @@ -5010,23 +6449,18 @@ #~ "Flytta filen:\n" #~ "%s\n" #~ "till:" - #~ msgid "About to delete multiple files..." #~ msgstr "Kommer att ta bort flera filer..." - #~ msgid "" #~ "Overwrite file:\n" #~ "%s\n" #~ "by renaming:\n" #~ "%s" #~ msgstr "" -#~ "Skriver ver filen:\n" +#~ "Skriver över filen:\n" #~ "%s\n" #~ "genom att byta namn:\n" #~ "%s" - #~ msgid "to:" #~ msgstr "till:" -#~ msgid "Create" -#~ msgstr "Skapa" diff -Nru geeqie-1.0/po/zh_CN.GB2312.po geeqie-1.1/po/zh_CN.GB2312.po --- geeqie-1.0/po/zh_CN.GB2312.po 2010-02-17 21:21:23.000000000 +0000 +++ geeqie-1.1/po/zh_CN.GB2312.po 1970-01-01 00:00:00.000000000 +0000 @@ -1,5343 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: gqview 0.9.5\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-05-13 22:14+0200\n" -"PO-Revision-Date: 2001-02-21 17:46+0800\n" -"Last-Translator: Wu Yulun \n" -"Language-Team: Chinese \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=gb2312\n" -"Content-Transfer-Encoding: 8bit\n" - -#: src/bar_exif.c:444 -msgid "Tag" -msgstr "" - -#: src/bar_exif.c:445 src/dupe.c:2646 src/dupe.c:3167 src/print.c:3232 -#: src/search.c:2760 src/utilops.c:2971 src/view_file_list.c:1820 -msgid "Name" -msgstr "" - -#: src/bar_exif.c:446 -msgid "Value" -msgstr "" - -#: src/bar_exif.c:447 -#, fuzzy -msgid "Format" -msgstr "ͨ" - -#: src/bar_exif.c:448 -msgid "Elements" -msgstr "" - -#: src/bar_exif.c:449 src/preferences.c:1131 -msgid "Description" -msgstr "" - -#: src/bar_exif.c:576 src/info.c:125 src/preferences.c:1274 -#, fuzzy -msgid "Exif" -msgstr "˳" - -#: src/bar_exif.c:650 -msgid "Advanced view" -msgstr "" - -#: src/bar_info.c:35 -msgid "Favorite" -msgstr "" - -#: src/bar_info.c:36 -#, fuzzy -msgid "Todo" -msgstr "ƽ" - -#: src/bar_info.c:37 -msgid "People" -msgstr "" - -#: src/bar_info.c:38 -msgid "Places" -msgstr "" - -#: src/bar_info.c:39 -msgid "Art" -msgstr "" - -#: src/bar_info.c:40 -#, fuzzy -msgid "Nature" -msgstr "" - -#: src/bar_info.c:41 -msgid "Possessions" -msgstr "" - -#: src/bar_info.c:801 -msgid "Keyword Presets" -msgstr "" - -#: src/bar_info.c:804 -msgid "Favorite keywords list" -msgstr "" - -#: src/bar_info.c:1301 src/info.c:189 src/search.c:2699 -msgid "Keywords" -msgstr "" - -#: src/bar_info.c:1315 src/info.c:825 src/pan-view.c:1542 src/print.c:2632 -#, fuzzy -msgid "Filename:" -msgstr "" - -#: src/bar_info.c:1316 src/info.c:391 -#, fuzzy -msgid "File date:" -msgstr "" - -#: src/bar_info.c:1336 -msgid "Keywords:" -msgstr "" - -#: src/bar_info.c:1404 -#, fuzzy -msgid "Comment:" -msgstr "֮Ƚϣ" - -#: src/bar_info.c:1428 -msgid "Edit favorite keywords list." -msgstr "" - -#: src/bar_info.c:1432 -msgid "Add keywords to selected files" -msgstr "" - -#: src/bar_info.c:1435 -msgid "Add keywords to selected files, replacing existing ones" -msgstr "" - -#: src/bar_info.c:1438 -#, fuzzy -msgid "Add comment to selected files" -msgstr "" -"Ҫɾļ\n" -" %s" - -#: src/bar_info.c:1441 -msgid "Add comment to selected files, replacing existing one" -msgstr "" - -#: src/bar_info.c:1446 -#, fuzzy -msgid "Save comment now" -msgstr "ͼ" - -#: src/bar_sort.c:218 -#, fuzzy, c-format -msgid "" -"Unable to remove symbolic link:\n" -"%s" -msgstr "" -"޷ļ\n" -"%s\n" -"ƶ\n" -"%s" - -#: src/bar_sort.c:219 -#, fuzzy -msgid "Unlink failed" -msgstr "ɾʧ" - -#: src/bar_sort.c:300 -#, fuzzy, c-format -msgid "" -"Unable to create symbolic link:\n" -"%s" -msgstr "" -"޷Ŀ¼\n" -"%s" - -#: src/bar_sort.c:301 -msgid "Link failed" -msgstr "" - -#: src/bar_sort.c:452 -#, fuzzy, c-format -msgid "" -"The collection:\n" -"%s\n" -"already exists." -msgstr "" -"Ŀ¼\n" -"%s\n" -"Ѵڡ" - -#: src/bar_sort.c:453 -#, fuzzy -msgid "Collection exists" -msgstr "ͼΪ" - -#: src/bar_sort.c:467 src/collect.c:1083 src/collect-dlg.c:85 -#, c-format -msgid "" -"Failed to save the collection:\n" -"%s" -msgstr "" -"ͼʧܣ\n" -"%s" - -#: src/bar_sort.c:468 src/collect.c:1084 src/collect-dlg.c:86 -msgid "Save Failed" -msgstr "ʧ" - -#: src/bar_sort.c:502 src/bar_sort.c:628 -msgid "Add Bookmark" -msgstr "" - -#: src/bar_sort.c:506 -#, fuzzy -msgid "Add Collection" -msgstr "ͼ" - -#: src/bar_sort.c:523 src/ui_bookmark.c:601 -#, fuzzy -msgid "Name:" -msgstr "" - -#: src/bar_sort.c:585 -#, fuzzy -msgid "Sort Manager" -msgstr "" - -#: src/bar_sort.c:594 src/pan-view.c:2395 src/ui_pathsel.c:1103 -#, fuzzy -msgid "Folders" -msgstr "ƽ" - -#: src/bar_sort.c:595 src/main.c:567 -msgid "Collections" -msgstr "ͼ" - -#: src/bar_sort.c:603 src/utilops.c:1177 -msgid "Copy" -msgstr "" - -#: src/bar_sort.c:606 src/utilops.c:1191 -msgid "Move" -msgstr "ƶ" - -#: src/bar_sort.c:609 -msgid "Link" -msgstr "" - -#: src/bar_sort.c:615 -#, fuzzy -msgid "Add image" -msgstr "%d ͼ" - -#: src/bar_sort.c:618 -#, fuzzy -msgid "Add selection" -msgstr "ѡ" - -#: src/bar_sort.c:631 -msgid "Undo last image" -msgstr "" - -#: src/cache.c:175 -#, fuzzy, c-format -msgid "" -"error saving sim cache data: %s\n" -"error: %s\n" -msgstr "ļ%s\n" - -#: src/cache_maint.c:127 src/cache_maint.c:689 src/cache_maint.c:902 -#: src/editors.c:717 -#, fuzzy -msgid "done" -msgstr "" - -#: src/cache_maint.c:306 -#, fuzzy -msgid "Removing old metadata..." -msgstr "ڶȡ..." - -#: src/cache_maint.c:310 -#, fuzzy -msgid "Clearing cached thumbnails..." -msgstr "ͼ..." - -#: src/cache_maint.c:314 src/cache_maint.c:1056 -#, fuzzy -msgid "Removing old thumbnails..." -msgstr "ɵͼ..." - -#: src/cache_maint.c:317 src/cache_maint.c:1059 -msgid "Maintenance" -msgstr "" - -#: src/cache_maint.c:800 src/utilops.c:1107 -#, fuzzy -msgid "Invalid folder" -msgstr "Ƿļ" - -#: src/cache_maint.c:801 -msgid "The specified folder can not be found." -msgstr "" - -#: src/cache_maint.c:829 src/cache_maint.c:843 src/cache_maint.c:1227 -#, fuzzy -msgid "Create thumbnails" -msgstr "ͼ" - -#: src/cache_maint.c:837 src/cache_maint.c:1066 -#, fuzzy -msgid "S_tart" -msgstr "" - -#: src/cache_maint.c:850 src/preferences.c:1407 -#, fuzzy -msgid "Folder:" -msgstr "ƽ" - -#: src/cache_maint.c:853 -#, fuzzy -msgid "Select folder" -msgstr "ѡ" - -#: src/cache_maint.c:857 -#, fuzzy -msgid "Include subfolders" -msgstr "Ƿļ" - -#: src/cache_maint.c:858 -msgid "Store thumbnails local to source images" -msgstr "" - -#: src/cache_maint.c:867 src/cache_maint.c:1075 -msgid "click start to begin" -msgstr "" - -#: src/cache_maint.c:1005 src/editors.c:647 -#, fuzzy -msgid "running..." -msgstr "ڱȽ..." - -#: src/cache_maint.c:1051 -msgid "Clearing thumbnails..." -msgstr "ͼ..." - -#: src/cache_maint.c:1117 src/cache_maint.c:1120 src/cache_maint.c:1202 -#: src/cache_maint.c:1222 -msgid "Clear cache" -msgstr "" - -#: src/cache_maint.c:1121 -msgid "" -"This will remove all thumbnails that have\n" -"been saved to disk, continue?" -msgstr "" -"⽫ɾ浽ϵ\n" -"ͼ" - -#: src/cache_maint.c:1172 -#, fuzzy -msgid "Cache Maintenance" -msgstr " - Geeqie" - -#: src/cache_maint.c:1184 -msgid "Cache and Data Maintenance" -msgstr "" - -#: src/cache_maint.c:1188 -#, fuzzy -msgid "Thumbnail cache" -msgstr "Geeqie ȫ" - -#: src/cache_maint.c:1190 src/cache_maint.c:1210 src/cache_maint.c:1238 -#: src/pan-view.c:1544 src/pan-view.c:2384 src/preferences.c:1333 -#: src/utilops.c:1747 -#, fuzzy -msgid "Location:" -msgstr "ͼ" - -#: src/cache_maint.c:1197 src/cache_maint.c:1217 src/cache_maint.c:1245 -#, fuzzy -msgid "Clean up" -msgstr "" - -#: src/cache_maint.c:1200 src/cache_maint.c:1220 -msgid "Remove orphaned or outdated thumbnails." -msgstr "" - -#: src/cache_maint.c:1205 src/cache_maint.c:1225 -#, fuzzy -msgid "Delete all cached thumbnails." -msgstr "ͼ" - -#: src/cache_maint.c:1208 -#, fuzzy -msgid "Shared thumbnail cache" -msgstr "ͼ" - -#: src/cache_maint.c:1231 -#, fuzzy -msgid "Render" -msgstr "" - -#: src/cache_maint.c:1234 -msgid "Render thumbnails for a specific folder." -msgstr "" - -#: src/cache_maint.c:1236 -msgid "Metadata" -msgstr "" - -#: src/cache_maint.c:1248 -msgid "Remove orphaned keywords and comments." -msgstr "" - -#: src/cellrenderericon.c:127 -msgid "Pixbuf Object" -msgstr "" - -#: src/cellrenderericon.c:128 -msgid "The pixbuf to render" -msgstr "" - -#: src/cellrenderericon.c:135 src/print.c:3439 -msgid "Text" -msgstr "" - -#: src/cellrenderericon.c:136 -msgid "Text to render" -msgstr "" - -#: src/cellrenderericon.c:143 -msgid "Background color" -msgstr "" - -#: src/cellrenderericon.c:144 -msgid "Background color as a GdkColor" -msgstr "" - -#: src/cellrenderericon.c:151 -msgid "Foreground color" -msgstr "" - -#: src/cellrenderericon.c:152 -msgid "Foreground color as a GdkColor" -msgstr "" - -#: src/cellrenderericon.c:159 -msgid "Focus" -msgstr "" - -#: src/cellrenderericon.c:160 -msgid "Draw focus indicator" -msgstr "" - -#: src/cellrenderericon.c:167 -msgid "Fixed width" -msgstr "" - -#: src/cellrenderericon.c:168 -msgid "Width of cell" -msgstr "" - -#: src/cellrenderericon.c:176 -msgid "Fixed height" -msgstr "" - -#: src/cellrenderericon.c:177 -msgid "Height of icon excluding text" -msgstr "" - -#: src/cellrenderericon.c:185 -msgid "Background set" -msgstr "" - -#: src/cellrenderericon.c:186 -msgid "Whether this tag affects the background color" -msgstr "" - -#: src/cellrenderericon.c:193 -msgid "Foreground set" -msgstr "" - -#: src/cellrenderericon.c:194 -msgid "Whether this tag affects the foreground color" -msgstr "" - -#: src/cellrenderericon.c:201 -#, fuzzy -msgid "Show text" -msgstr "ʾļ" - -#: src/cellrenderericon.c:202 -msgid "Whether the text is displayed" -msgstr "" - -#: src/collect.c:353 src/image.c:178 src/image-overlay.c:437 -#: src/image-overlay.c:512 -#, c-format -msgid "Untitled" -msgstr "ޱ" - -#: src/collect.c:357 -#, c-format -msgid "Untitled (%d)" -msgstr "ޱ (%d)" - -#: src/collect.c:1002 -#, fuzzy, c-format -msgid "%s - Collection - %s" -msgstr "%s - Geeqie ͼ" - -#: src/collect.c:1120 src/collect.c:1124 -msgid "Close collection" -msgstr "رͼ" - -#: src/collect.c:1125 -msgid "" -"Collection has been modified.\n" -"Save first?" -msgstr "" -"ͼ޸ġ\n" -"ȱ" - -#: src/collect.c:1128 -msgid "_Discard" -msgstr "" - -#: src/collect-dlg.c:59 -#, fuzzy, c-format -msgid "" -"Specified path:\n" -"%s\n" -"is a folder, collections are files" -msgstr "" -"ָ·\n" -"%s\n" -"ǸĿ¼ͼļ" - -#: src/collect-dlg.c:60 -msgid "Invalid filename" -msgstr "Ƿļ" - -#: src/collect-dlg.c:69 -msgid "Overwrite File" -msgstr "ļ" - -#: src/collect-dlg.c:74 -#, fuzzy -msgid "Overwrite existing file?" -msgstr "ļ" - -#: src/collect-dlg.c:76 src/utilops.c:660 src/utilops.c:990 src/utilops.c:1902 -#: src/utilops.c:2622 -#, fuzzy -msgid "_Overwrite" -msgstr "" - -#: src/collect-dlg.c:171 -msgid "Save collection" -msgstr "ͼ" - -#: src/collect-dlg.c:178 -msgid "Open collection" -msgstr "ͼ" - -#: src/collect-dlg.c:186 -msgid "Append collection" -msgstr "׷ͼ" - -#: src/collect-dlg.c:187 -#, fuzzy -msgid "_Append" -msgstr "׷" - -#: src/collect-dlg.c:205 -msgid "Collection Files" -msgstr "ͼļ" - -#: src/collect-dlg.c:223 -msgid "Collection empty" -msgstr "ͼΪ" - -#: src/collect-dlg.c:224 -msgid "The current collection is empty, save aborted." -msgstr "ǰͼΪգ档" - -#: src/collect-io.c:343 -#, fuzzy, c-format -msgid "failed to open collection (write) \"%s\"\n" -msgstr "" -"ͼʧܣ\n" -"%s" - -#: src/collect-io.c:368 -#, fuzzy, c-format -msgid "" -"error saving collection file: %s\n" -"error: %s\n" -msgstr "ļ%s\n" - -#: src/collect-table.c:167 src/layout.c:377 src/layout_util.c:965 -msgid "Empty" -msgstr "" - -#: src/collect-table.c:171 -#, c-format -msgid "%d images (%d)" -msgstr "%d ͼ (%d)" - -#: src/collect-table.c:175 -#, c-format -msgid "%d images" -msgstr "%d ͼ" - -#: src/collect-table.c:189 src/dupe.c:1328 src/search.c:304 -#: src/view_file_icon.c:1779 src/view_file_icon.c:1895 -#: src/view_file_list.c:915 src/view_file_list.c:1031 -msgid "Loading thumbs..." -msgstr "װͼ..." - -#: src/collect-table.c:776 src/dupe.c:2239 src/dupe.c:2554 -#: src/layout_util.c:1042 src/search.c:983 -#, fuzzy -msgid "_View" -msgstr "/鿴(_V)" - -#: src/collect-table.c:778 src/dupe.c:2241 src/dupe.c:2556 src/img-view.c:1282 -#: src/layout_image.c:759 src/pan-view.c:2814 src/search.c:985 -#: src/view_file.c:564 -#, fuzzy -msgid "View in _new window" -msgstr "´в鿴" - -#: src/collect-table.c:781 src/dupe.c:2274 src/dupe.c:2564 src/search.c:1014 -#, fuzzy -msgid "Rem_ove" -msgstr "ɾ" - -#: src/collect-table.c:784 -msgid "Append from file list" -msgstr "ļб׷" - -#: src/collect-table.c:786 -msgid "Append from collection..." -msgstr "ͼ׷..." - -#: src/collect-table.c:789 src/dupe.c:2244 src/dupe.c:2559 src/search.c:988 -msgid "Select all" -msgstr "ȫѡ" - -#: src/collect-table.c:791 src/dupe.c:2246 src/dupe.c:2561 src/search.c:990 -msgid "Select none" -msgstr "ѡ" - -#: src/collect-table.c:799 src/dupe.c:2255 src/img-view.c:1280 -#: src/layout_image.c:756 src/layout_util.c:1096 src/pan-view.c:2811 -#: src/search.c:995 src/view_file.c:562 -#, fuzzy -msgid "_Properties" -msgstr "/༭/ѡ(_O)..." - -#: src/collect-table.c:802 src/dupe.c:2262 src/img-view.c:1286 -#: src/layout_image.c:767 src/layout_util.c:1067 src/pan-view.c:2818 -#: src/search.c:1002 src/view_file.c:568 -#, fuzzy -msgid "_Copy..." -msgstr "..." - -#: src/collect-table.c:804 src/dupe.c:2264 src/img-view.c:1287 -#: src/layout_image.c:769 src/layout_util.c:1068 src/pan-view.c:2820 -#: src/search.c:1004 src/view_file.c:570 -#, fuzzy -msgid "_Move..." -msgstr "ƶ..." - -#: src/collect-table.c:806 src/dupe.c:2266 src/img-view.c:1288 -#: src/layout_image.c:771 src/layout_util.c:1069 src/pan-view.c:2822 -#: src/search.c:1006 src/view_dir.c:608 src/view_file.c:572 -#, fuzzy -msgid "_Rename..." -msgstr "..." - -#: src/collect-table.c:808 src/dupe.c:2268 src/img-view.c:1289 -#: src/layout_image.c:773 src/layout_util.c:1070 src/layout_util.c:1071 -#: src/layout_util.c:1072 src/pan-view.c:2824 src/search.c:1008 -#: src/view_dir.c:610 src/view_file.c:574 -#, fuzzy -msgid "_Delete..." -msgstr "ɾ..." - -#: src/collect-table.c:811 src/dupe.c:2271 src/img-view.c:1291 -#: src/layout_image.c:778 src/layout_util.c:1073 src/pan-view.c:2827 -#: src/search.c:1011 src/view_dir.c:614 src/view_file.c:577 -#, fuzzy -msgid "_Copy path" -msgstr "" - -#: src/collect-table.c:816 src/view_file.c:601 -#, fuzzy -msgid "Show filename _text" -msgstr "ʾļ" - -#: src/collect-table.c:819 -#, fuzzy -msgid "_Save collection" -msgstr "ͼ" - -#: src/collect-table.c:821 -#, fuzzy -msgid "Save collection _as..." -msgstr "ͼΪ..." - -#: src/collect-table.c:824 src/layout_util.c:1063 -#, fuzzy -msgid "_Find duplicates..." -msgstr "ѰҸ..." - -#: src/collect-table.c:826 src/dupe.c:2259 src/search.c:999 -#, fuzzy -msgid "Print..." -msgstr "/ļ/(_R)..." - -#: src/collect-table.c:1978 src/dupe.c:3355 src/img-view.c:1445 -#, fuzzy -msgid "Dropped list includes folders." -msgstr "ϷбĿ¼" - -#: src/collect-table.c:1980 src/dupe.c:3357 src/img-view.c:1447 -#, fuzzy -msgid "_Add contents" -msgstr "" - -#: src/collect-table.c:1982 src/dupe.c:3358 src/img-view.c:1448 -#, fuzzy -msgid "Add contents _recursive" -msgstr "ݹ" - -#: src/collect-table.c:1984 src/dupe.c:3359 src/img-view.c:1449 -#, fuzzy -msgid "_Skip folders" -msgstr "Ŀ¼" - -#: src/collect-table.c:1987 src/dupe.c:3361 src/img-view.c:1451 -#: src/view_dir.c:343 -msgid "Cancel" -msgstr "ȡ" - -#: src/dupe.c:99 -msgid "Drop files to compare them." -msgstr "ϷļԱȽǡ" - -#: src/dupe.c:103 -#, c-format -msgid "%d files" -msgstr "%d ļ" - -#: src/dupe.c:107 -#, c-format -msgid "%d matches found in %d files" -msgstr " %2$d ļҵ %1$d ƥ" - -#: src/dupe.c:112 -msgid "[set 1]" -msgstr "" - -#: src/dupe.c:1454 -msgid "Reading checksums..." -msgstr "ڶȡУ..." - -#: src/dupe.c:1487 -msgid "Reading dimensions..." -msgstr "ڶȡߴ..." - -#: src/dupe.c:1521 -msgid "Reading similarity data..." -msgstr "ڶȡ..." - -#: src/dupe.c:1556 src/dupe.c:1587 -msgid "Comparing..." -msgstr "ڱȽ..." - -#: src/dupe.c:1567 src/pan-view.c:1093 -#, fuzzy -msgid "Sorting..." -msgstr "ڱȽ..." - -#: src/dupe.c:2248 -msgid "Select group _1 duplicates" -msgstr "" - -#: src/dupe.c:2250 -msgid "Select group _2 duplicates" -msgstr "" - -#: src/dupe.c:2257 src/search.c:997 -msgid "Add to new collection" -msgstr "ӵͼ" - -#: src/dupe.c:2276 src/dupe.c:2566 src/search.c:1016 -#, fuzzy -msgid "C_lear" -msgstr "" - -#: src/dupe.c:2279 src/dupe.c:2569 -#, fuzzy -msgid "Close _window" -msgstr "رմ" - -#: src/dupe.c:2439 -#, fuzzy, c-format -msgid "%d files (set 2)" -msgstr "%d ļ%s" - -#: src/dupe.c:2647 -msgid "Name case-insensitive" -msgstr "" - -#: src/dupe.c:2648 src/dupe.c:3168 src/preferences.c:1026 src/print.c:3238 -#: src/search.c:2761 src/view_file_list.c:1823 -msgid "Size" -msgstr "С" - -#: src/dupe.c:2649 src/dupe.c:3169 src/exif.c:339 src/exif-common.c:442 -#: src/print.c:3236 src/search.c:2762 src/view_file_list.c:1824 -msgid "Date" -msgstr "" - -#: src/dupe.c:2650 src/dupe.c:3170 src/print.c:3240 src/search.c:2763 -msgid "Dimensions" -msgstr "ߴ" - -#: src/dupe.c:2651 -msgid "Checksum" -msgstr "У" - -#: src/dupe.c:2652 src/dupe.c:3171 src/print.c:3234 src/search.c:2764 -#: src/ui_pathsel.c:1115 -msgid "Path" -msgstr "·" - -#: src/dupe.c:2653 -msgid "Similarity (high)" -msgstr " ()" - -#: src/dupe.c:2654 -msgid "Similarity" -msgstr "" - -#: src/dupe.c:2655 -msgid "Similarity (low)" -msgstr " ()" - -#: src/dupe.c:2656 -#, fuzzy -msgid "Similarity (custom)" -msgstr " ()" - -#: src/dupe.c:3121 -#, fuzzy -msgid "Find duplicates" -msgstr "ѰҸ..." - -#: src/dupe.c:3203 -msgid "Compare to:" -msgstr "֮Ƚϣ" - -#: src/dupe.c:3216 -msgid "Compare by:" -msgstr "˱Ƚϣ" - -#: src/dupe.c:3224 src/preferences.c:884 src/search.c:2777 -msgid "Thumbnails" -msgstr "ͼ" - -#: src/dupe.c:3231 -msgid "Compare two file sets" -msgstr "Ƚļ" - -#: src/editors.c:61 -msgid "The Gimp" -msgstr "Gimp" - -#: src/editors.c:62 -msgid "XV" -msgstr "XV" - -#: src/editors.c:63 -msgid "Xpaint" -msgstr "Xpaint" - -#: src/editors.c:64 -msgid "UFraw" -msgstr "" - -#: src/editors.c:65 -msgid "Add XMP sidecar" -msgstr "" - -#: src/editors.c:69 -#, fuzzy -msgid "Rotate jpeg clockwise" -msgstr "˳ʱת" - -#: src/editors.c:70 -#, fuzzy -msgid "Rotate jpeg counterclockwise" -msgstr "ʱת" - -#. for testing -#: src/editors.c:74 src/editors.c:80 -msgid "External Copy command" -msgstr "" - -#: src/editors.c:75 src/editors.c:81 -msgid "External Move command" -msgstr "" - -#: src/editors.c:76 src/editors.c:82 -msgid "External Rename command" -msgstr "" - -#: src/editors.c:77 src/editors.c:83 -#, fuzzy -msgid "External Delete command" -msgstr "ɾ" - -#: src/editors.c:78 src/editors.c:84 -msgid "External New Folder command" -msgstr "" - -#: src/editors.c:140 -#, fuzzy -msgid "stopping..." -msgstr "ڱȽ..." - -#: src/editors.c:161 -msgid "Edit command results" -msgstr "" - -#: src/editors.c:164 -#, c-format -msgid "Output of %s" -msgstr "" - -#: src/editors.c:603 -#, fuzzy, c-format -msgid "" -"Failed to run command:\n" -"%s\n" -msgstr "" -"޷װ룺\n" -"%s" - -#: src/editors.c:721 -#, fuzzy -msgid "stopped by user" -msgstr "" - -#: src/editors.c:836 -msgid "Editor template is empty." -msgstr "" - -#: src/editors.c:837 -msgid "Editor template has incorrect syntax." -msgstr "" - -#: src/editors.c:838 -msgid "Editor template uses incompatible macros." -msgstr "" - -#: src/editors.c:839 -msgid "Can't find matching file type." -msgstr "" - -#: src/editors.c:840 -msgid "Can't execute external editor." -msgstr "" - -#: src/editors.c:841 -msgid "External editor returned error status." -msgstr "" - -#: src/editors.c:842 -msgid "File was skipped." -msgstr "" - -#: src/editors.c:843 -msgid "Unknown error." -msgstr "" - -#: src/exif.c:145 src/exif.c:158 src/exif.c:172 src/exif.c:197 src/exif.c:314 -#: src/exif.c:625 src/exif-common.c:308 src/exif-common.c:311 -#: src/exif-common.c:378 -#, fuzzy -msgid "unknown" -msgstr " (δ֪)..." - -#: src/exif.c:146 -#, fuzzy -msgid "top left" -msgstr "ɾ" - -#: src/exif.c:147 -msgid "top right" -msgstr "" - -#: src/exif.c:148 -msgid "bottom right" -msgstr "" - -#: src/exif.c:149 -msgid "bottom left" -msgstr "" - -#: src/exif.c:150 -#, fuzzy -msgid "left top" -msgstr "ɾ" - -#: src/exif.c:151 -msgid "right top" -msgstr "" - -#: src/exif.c:152 -msgid "right bottom" -msgstr "" - -#: src/exif.c:153 -msgid "left bottom" -msgstr "" - -#: src/exif.c:160 -msgid "inch" -msgstr "" - -#: src/exif.c:161 -msgid "centimeter" -msgstr "" - -#: src/exif.c:173 -msgid "average" -msgstr "" - -#: src/exif.c:174 -msgid "center weighted" -msgstr "" - -#: src/exif.c:175 -msgid "spot" -msgstr "" - -#: src/exif.c:176 -msgid "multi-spot" -msgstr "" - -#: src/exif.c:177 -msgid "multi-segment" -msgstr "" - -#: src/exif.c:178 -msgid "partial" -msgstr "" - -#: src/exif.c:179 src/exif.c:217 -msgid "other" -msgstr "" - -#: src/exif.c:184 src/exif.c:236 -msgid "not defined" -msgstr "" - -#: src/exif.c:185 src/exif.c:264 src/exif.c:271 -msgid "manual" -msgstr "" - -#: src/exif.c:186 src/exif.c:257 src/exif.c:293 src/exif.c:300 src/exif.c:307 -#, fuzzy -msgid "normal" -msgstr "ͨ" - -#: src/exif.c:187 -msgid "aperture" -msgstr "" - -#: src/exif.c:188 -msgid "shutter" -msgstr "" - -#: src/exif.c:189 -#, fuzzy -msgid "creative" -msgstr "" - -#: src/exif.c:190 -msgid "action" -msgstr "" - -#: src/exif.c:191 src/exif.c:278 -msgid "portrait" -msgstr "" - -#: src/exif.c:192 src/exif.c:277 -msgid "landscape" -msgstr "" - -#: src/exif.c:198 -msgid "daylight" -msgstr "" - -#: src/exif.c:199 -msgid "fluorescent" -msgstr "" - -#: src/exif.c:200 -msgid "tungsten (incandescent)" -msgstr "" - -#: src/exif.c:201 -msgid "flash" -msgstr "" - -#: src/exif.c:202 -msgid "fine weather" -msgstr "" - -#: src/exif.c:203 -msgid "cloudy weather" -msgstr "" - -#: src/exif.c:204 -msgid "shade" -msgstr "" - -#: src/exif.c:205 -msgid "daylight fluorescent" -msgstr "" - -#: src/exif.c:206 -msgid "day white fluorescent" -msgstr "" - -#: src/exif.c:207 -msgid "cool white fluorescent" -msgstr "" - -#: src/exif.c:208 -msgid "white fluorescent" -msgstr "" - -#: src/exif.c:209 -msgid "standard light A" -msgstr "" - -#: src/exif.c:210 -msgid "standard light B" -msgstr "" - -#: src/exif.c:211 -msgid "standard light C" -msgstr "" - -#: src/exif.c:212 -msgid "D55" -msgstr "" - -#: src/exif.c:213 -msgid "D65" -msgstr "" - -#: src/exif.c:214 -msgid "D75" -msgstr "" - -#: src/exif.c:215 -msgid "D50" -msgstr "" - -#: src/exif.c:216 -msgid "ISO studio tungsten" -msgstr "" - -#: src/exif.c:222 src/exif-common.c:332 src/info.c:257 -msgid "no" -msgstr "" - -#. flash fired (bit 0) -#: src/exif.c:223 src/exif-common.c:332 src/info.c:257 -#, fuzzy -msgid "yes" -msgstr "" - -#: src/exif.c:224 -msgid "yes, not detected by strobe" -msgstr "" - -#: src/exif.c:225 -msgid "yes, detected by strobe" -msgstr "" - -#: src/exif.c:230 src/exif-common.c:403 src/layout.c:422 -msgid "sRGB" -msgstr "" - -#: src/exif.c:231 -msgid "uncalibrated" -msgstr "" - -#: src/exif.c:237 -msgid "1 chip color area" -msgstr "" - -#: src/exif.c:238 -msgid "2 chip color area" -msgstr "" - -#: src/exif.c:239 -msgid "3 chip color area" -msgstr "" - -#: src/exif.c:240 -msgid "color sequential area" -msgstr "" - -#: src/exif.c:241 -#, fuzzy -msgid "trilinear" -msgstr "˫" - -#: src/exif.c:242 -msgid "color sequential linear" -msgstr "" - -#: src/exif.c:247 -msgid "digital still camera" -msgstr "" - -#: src/exif.c:252 -msgid "direct photo" -msgstr "" - -#: src/exif.c:258 -msgid "custom" -msgstr "" - -#: src/exif.c:263 src/exif.c:270 src/exif-common.c:346 -msgid "auto" -msgstr "" - -#: src/exif.c:265 -#, fuzzy -msgid "auto bracket" -msgstr "˵" - -#: src/exif.c:276 -#, fuzzy -msgid "standard" -msgstr "" - -#: src/exif.c:279 -msgid "night scene" -msgstr "" - -#: src/exif.c:284 -#, fuzzy -msgid "none" -msgstr "" - -#: src/exif.c:285 -#, fuzzy -msgid "low gain up" -msgstr "" - -#: src/exif.c:286 -msgid "high gain up" -msgstr "" - -#: src/exif.c:287 -#, fuzzy -msgid "low gain down" -msgstr "رմ" - -#: src/exif.c:288 -msgid "high gain down" -msgstr "" - -#: src/exif.c:294 src/exif.c:308 -msgid "soft" -msgstr "" - -#: src/exif.c:295 src/exif.c:309 -msgid "hard" -msgstr "" - -#: src/exif.c:301 -msgid "low" -msgstr "" - -#: src/exif.c:302 -msgid "high" -msgstr "" - -#: src/exif.c:315 -msgid "macro" -msgstr "" - -#: src/exif.c:316 -#, fuzzy -msgid "close" -msgstr "ر" - -#: src/exif.c:317 -msgid "distant" -msgstr "" - -#: src/exif.c:327 -#, fuzzy -msgid "Image Width" -msgstr "ͼ" - -#: src/exif.c:328 -#, fuzzy -msgid "Image Height" -msgstr "ЧĿ" - -#: src/exif.c:329 -msgid "Bits per Sample/Pixel" -msgstr "" - -#: src/exif.c:330 -#, fuzzy -msgid "Compression" -msgstr "֮Ƚϣ" - -#: src/exif.c:331 -#, fuzzy -msgid "Image description" -msgstr "ЧĿ" - -#: src/exif.c:332 -msgid "Camera make" -msgstr "" - -#: src/exif.c:333 -msgid "Camera model" -msgstr "" - -#: src/exif.c:334 -#, fuzzy -msgid "Orientation" -msgstr "ߴ" - -#: src/exif.c:335 -msgid "X resolution" -msgstr "" - -#: src/exif.c:336 -msgid "Y Resolution" -msgstr "" - -#: src/exif.c:337 -#, fuzzy -msgid "Resolution units" -msgstr "ͼΪ" - -#: src/exif.c:338 -msgid "Firmware" -msgstr "" - -#: src/exif.c:340 -msgid "White point" -msgstr "" - -#: src/exif.c:341 -msgid "Primary chromaticities" -msgstr "" - -#: src/exif.c:342 -msgid "YCbCy coefficients" -msgstr "" - -#: src/exif.c:343 -msgid "YCbCr positioning" -msgstr "" - -#: src/exif.c:344 -#, fuzzy -msgid "Black white reference" -msgstr "Geeqie - " - -#: src/exif.c:345 -#, fuzzy -msgid "Copyright" -msgstr "" - -#: src/exif.c:346 -msgid "SubIFD Exif offset" -msgstr "" - -#. subIFD follows -#: src/exif.c:348 -msgid "Exposure time (seconds)" -msgstr "" - -#: src/exif.c:349 -msgid "FNumber" -msgstr "" - -#: src/exif.c:350 -msgid "Exposure program" -msgstr "" - -#: src/exif.c:351 -msgid "Spectral Sensitivity" -msgstr "" - -#: src/exif.c:352 src/exif.c:388 src/exif-common.c:446 -msgid "ISO sensitivity" -msgstr "" - -#: src/exif.c:353 -msgid "Optoelectric conversion factor" -msgstr "" - -#: src/exif.c:354 -msgid "Exif version" -msgstr "" - -#: src/exif.c:355 -msgid "Date original" -msgstr "" - -#: src/exif.c:356 -msgid "Date digitized" -msgstr "" - -#: src/exif.c:357 -#, fuzzy -msgid "Pixel format" -msgstr "" - -#: src/exif.c:358 -#, fuzzy -msgid "Compression ratio" -msgstr "֮Ƚϣ" - -#: src/exif.c:359 src/exif-common.c:443 -msgid "Shutter speed" -msgstr "" - -#: src/exif.c:360 src/exif-common.c:444 -msgid "Aperture" -msgstr "" - -#: src/exif.c:361 -msgid "Brightness" -msgstr "" - -#: src/exif.c:362 src/exif-common.c:445 -msgid "Exposure bias" -msgstr "" - -#: src/exif.c:363 -#, fuzzy -msgid "Maximum aperture" -msgstr "ƽ" - -#: src/exif.c:364 src/exif-common.c:449 -msgid "Subject distance" -msgstr "" - -#: src/exif.c:365 -#, fuzzy -msgid "Metering mode" -msgstr "" - -#: src/exif.c:366 -msgid "Light source" -msgstr "" - -#: src/exif.c:367 src/exif-common.c:450 -msgid "Flash" -msgstr "" - -#: src/exif.c:368 src/exif-common.c:447 -msgid "Focal length" -msgstr "" - -#: src/exif.c:369 -msgid "Subject area" -msgstr "" - -#: src/exif.c:370 -msgid "MakerNote" -msgstr "" - -#: src/exif.c:371 -#, fuzzy -msgid "UserComment" -msgstr "֮Ƚϣ" - -#: src/exif.c:372 -msgid "Subsecond time" -msgstr "" - -#: src/exif.c:373 -msgid "Subsecond time original" -msgstr "" - -#: src/exif.c:374 -msgid "Subsecond time digitized" -msgstr "" - -#: src/exif.c:375 -msgid "FlashPix version" -msgstr "" - -#: src/exif.c:376 -#, fuzzy -msgid "Colorspace" -msgstr "ر" - -#. ExifImageWidth, ExifImageHeight can also be unsigned short -#: src/exif.c:378 -msgid "Width" -msgstr "" - -#: src/exif.c:379 -msgid "Height" -msgstr "" - -#: src/exif.c:380 -#, fuzzy -msgid "Audio data" -msgstr "/鿴/б(_R)" - -#: src/exif.c:381 -msgid "ExifR98 extension" -msgstr "" - -#: src/exif.c:382 -msgid "Flash strength" -msgstr "" - -#: src/exif.c:383 -msgid "Spatial frequency response" -msgstr "" - -#: src/exif.c:384 -msgid "X Pixel density" -msgstr "" - -#: src/exif.c:385 -msgid "Y Pixel density" -msgstr "" - -#: src/exif.c:386 -msgid "Pixel density units" -msgstr "" - -#: src/exif.c:387 -#, fuzzy -msgid "Subject location" -msgstr "ѡ" - -#: src/exif.c:389 -#, fuzzy -msgid "Sensor type" -msgstr "δ" - -#: src/exif.c:390 -#, fuzzy -msgid "Source type" -msgstr "" - -#: src/exif.c:391 -#, fuzzy -msgid "Scene type" -msgstr "" - -#: src/exif.c:392 -msgid "Color filter array pattern" -msgstr "" - -#. tags a4xx were added for Exif 2.2 (not just these - some above, as well) -#: src/exif.c:394 -#, fuzzy -msgid "Render process" -msgstr "" - -#: src/exif.c:395 -msgid "Exposure mode" -msgstr "" - -#: src/exif.c:396 -msgid "White balance" -msgstr "" - -#: src/exif.c:397 -msgid "Digital zoom ratio" -msgstr "" - -#: src/exif.c:398 -msgid "Focal length (35mm)" -msgstr "" - -#: src/exif.c:399 -msgid "Scene capture type" -msgstr "" - -#: src/exif.c:400 -#, fuzzy -msgid "Gain control" -msgstr "" - -#: src/exif.c:401 -#, fuzzy -msgid "Contrast" -msgstr "" - -#: src/exif.c:402 -msgid "Saturation" -msgstr "" - -#: src/exif.c:403 -msgid "Sharpness" -msgstr "" - -#: src/exif.c:404 -msgid "Device setting" -msgstr "" - -#: src/exif.c:405 -msgid "Subject range" -msgstr "" - -#: src/exif.c:406 -#, fuzzy -msgid "Image serial number" -msgstr "ͼ" - -#: src/exif-common.c:307 -msgid "infinity" -msgstr "" - -#: src/exif-common.c:336 -#, fuzzy -msgid "mode:" -msgstr "ƽ" - -#: src/exif-common.c:340 src/trash.c:193 -#, fuzzy -msgid "on" -msgstr "" - -#: src/exif-common.c:343 src/trash.c:198 -msgid "off" -msgstr "" - -#: src/exif-common.c:352 -msgid "not detected by strobe" -msgstr "" - -#: src/exif-common.c:353 -msgid "detected by strobe" -msgstr "" - -#. we ignore flash function (bit 5) -#. red-eye (bit 6) -#: src/exif-common.c:358 -msgid "red-eye reduction" -msgstr "" - -#: src/exif-common.c:378 -msgid "dot" -msgstr "" - -#: src/exif-common.c:408 -msgid "AdobeRGB" -msgstr "" - -#: src/exif-common.c:416 -msgid "embedded" -msgstr "" - -#: src/exif-common.c:441 -#, fuzzy -msgid "Camera" -msgstr "" - -#: src/exif-common.c:448 -msgid "Focal length 35mm" -msgstr "" - -#: src/exif-common.c:451 -#, fuzzy -msgid "Resolution" -msgstr "ͼΪ" - -#: src/exif-common.c:452 -#, fuzzy -msgid "Color profile" -msgstr "ļ" - -#: src/filedata.c:86 -#, fuzzy, c-format -msgid "%d bytes" -msgstr "%d ļ" - -#: src/filedata.c:90 -#, c-format -msgid "%.1f K" -msgstr "" - -#: src/filedata.c:94 -#, c-format -msgid "%.1f MB" -msgstr "" - -#: src/filedata.c:99 -#, c-format -msgid "%.1f GB" -msgstr "" - -#: src/fullscreen.c:243 src/preferences.c:1329 -#, fuzzy -msgid "Full screen" -msgstr "ȫ" - -#: src/fullscreen.c:395 -#, fuzzy -msgid "Full size" -msgstr "ƽ" - -#: src/fullscreen.c:400 -msgid "Monitor" -msgstr "" - -#: src/fullscreen.c:405 src/layout.c:455 -msgid "Screen" -msgstr "" - -#: src/fullscreen.c:642 -#, fuzzy -msgid "Stay above other windows" -msgstr "ͼ" - -#: src/fullscreen.c:649 -msgid "Determined by Window Manager" -msgstr "" - -#: src/fullscreen.c:650 -msgid "Active screen" -msgstr "" - -#: src/fullscreen.c:652 -msgid "Active monitor" -msgstr "" - -#: src/histogram.c:86 -msgid "logarithmical histogram on red" -msgstr "" - -#: src/histogram.c:87 -msgid "logarithmical histogram on green" -msgstr "" - -#: src/histogram.c:88 -msgid "logarithmical histogram on blue" -msgstr "" - -#: src/histogram.c:89 -msgid "logarithmical histogram on value" -msgstr "" - -#: src/histogram.c:90 -msgid "logarithmical histogram on RGB" -msgstr "" - -#: src/histogram.c:91 -msgid "logarithmical histogram on max value" -msgstr "" - -#: src/histogram.c:96 -msgid "linear histogram on red" -msgstr "" - -#: src/histogram.c:97 -msgid "linear histogram on green" -msgstr "" - -#: src/histogram.c:98 -msgid "linear histogram on blue" -msgstr "" - -#: src/histogram.c:99 -msgid "linear histogram on value" -msgstr "" - -#: src/histogram.c:100 -msgid "linear histogram on RGB" -msgstr "" - -#: src/histogram.c:101 -msgid "linear histogram on max value" -msgstr "" - -#: src/img-view.c:1268 src/layout_image.c:743 src/layout_util.c:1105 -#: src/layout_util.c:1106 src/layout_util.c:1107 src/pan-view.c:2800 -#, fuzzy -msgid "Zoom _in" -msgstr "Ŵ" - -#: src/img-view.c:1269 src/layout_image.c:744 src/layout_util.c:1108 -#: src/layout_util.c:1109 src/pan-view.c:2802 -#, fuzzy -msgid "Zoom _out" -msgstr "С" - -#: src/img-view.c:1270 src/layout_image.c:745 src/layout_util.c:1110 -#: src/layout_util.c:1111 src/pan-view.c:2804 -#, fuzzy -msgid "Zoom _1:1" -msgstr "ŵ 1:1" - -#: src/img-view.c:1271 src/layout_image.c:746 -#, fuzzy -msgid "Fit image to _window" -msgstr "ͼ" - -#: src/img-view.c:1276 src/layout_image.c:752 src/layout_util.c:1103 -#, fuzzy -msgid "Set as _wallpaper" -msgstr "Ϊǽֽ" - -#: src/img-view.c:1283 src/layout_image.c:762 -msgid "_Go to directory view" -msgstr "" - -#: src/img-view.c:1297 src/layout_image.c:786 -#, fuzzy -msgid "_Stop slideshow" -msgstr "ֹͣŻõƬ" - -#: src/img-view.c:1300 src/layout_image.c:789 -#, fuzzy -msgid "Continue slides_how" -msgstr "ŻõƬ" - -#: src/img-view.c:1305 src/img-view.c:1313 src/layout_image.c:794 -#: src/layout_image.c:801 -#, fuzzy -msgid "Pause slides_how" -msgstr "ͣŻõƬ" - -#: src/img-view.c:1311 src/layout_image.c:800 -#, fuzzy -msgid "_Start slideshow" -msgstr "ʼŻõƬ" - -#: src/img-view.c:1319 src/layout_image.c:811 src/pan-view.c:2873 -#, fuzzy -msgid "Exit _full screen" -msgstr "˳ȫ" - -#: src/img-view.c:1323 src/layout_image.c:807 src/pan-view.c:2877 -#, fuzzy -msgid "_Full screen" -msgstr "ȫ" - -#: src/img-view.c:1327 src/layout_util.c:1074 src/pan-view.c:2881 -#, fuzzy -msgid "C_lose window" -msgstr "رմ" - -#: src/info.c:392 -#, fuzzy -msgid "File size:" -msgstr "ƽ" - -#: src/info.c:394 -#, fuzzy -msgid "Dimensions:" -msgstr "ߴ" - -#: src/info.c:395 -msgid "Transparent:" -msgstr "" - -#: src/info.c:396 src/print.c:3419 -#, fuzzy -msgid "Image size:" -msgstr "ͼ" - -#: src/info.c:398 -#, fuzzy -msgid "Compress ratio:" -msgstr "֮Ƚϣ" - -#: src/info.c:399 -#, fuzzy -msgid "File type:" -msgstr "" - -#: src/info.c:401 -msgid "Owner:" -msgstr "" - -#: src/info.c:402 -msgid "Group:" -msgstr "" - -#: src/info.c:405 src/preferences.c:858 -msgid "General" -msgstr "" - -#: src/info.c:531 -#, c-format -msgid "Image %d of %d" -msgstr "" - -#: src/info.c:778 -#, fuzzy -msgid "Image properties" -msgstr "ЧĿ" - -#: src/layout.c:282 src/view_file.c:585 -msgid "Ascending" -msgstr "" - -#: src/layout.c:384 -#, c-format -msgid "This installation of %s was not built with support for color profiles." -msgstr "" - -#: src/layout.c:385 -msgid "Color profiles not supported" -msgstr "" - -#: src/layout.c:410 -msgid "Use _color profiles" -msgstr "" - -#: src/layout.c:415 -msgid "Use profile from _image" -msgstr "" - -#: src/layout.c:421 src/layout.c:439 -#, c-format -msgid "Input _%d:" -msgstr "" - -#: src/layout.c:422 -msgid "AdobeRGB compatible" -msgstr "" - -#: src/layout.c:464 -msgid "_Screen profile" -msgstr "" - -#: src/layout.c:531 -msgid " Slideshow" -msgstr " õƬ" - -#: src/layout.c:535 -msgid " Paused" -msgstr " ͣ" - -#: src/layout.c:552 -#, fuzzy, c-format -msgid "%s, %d files (%s, %d)%s" -msgstr "%d ļ (%d)%s" - -#: src/layout.c:559 -#, fuzzy, c-format -msgid "%s, %d files%s" -msgstr "%d ļ%s" - -#: src/layout.c:564 -#, c-format -msgid "%d files%s" -msgstr "%d ļ%s" - -#: src/layout.c:593 -#, c-format -msgid "(no read permission) %s bytes" -msgstr "" - -#: src/layout.c:597 -#, c-format -msgid "( ? x ? ) %s bytes" -msgstr "( ? x ? ) %s ֽ" - -#: src/layout.c:605 -#, c-format -msgid "( %d x %d ) %s bytes" -msgstr "( %d x %d ) %s ֽ" - -#: src/layout.c:1301 src/layout_config.c:58 -#, fuzzy -msgid "Tools" -msgstr "ƽ" - -#: src/layout.c:1983 -#, fuzzy -msgid "Invalid geometry\n" -msgstr "Ƿļ" - -#: src/layout_config.c:58 src/ui_pathsel.c:1183 -#, fuzzy -msgid "Files" -msgstr "ƽ" - -#: src/layout_config.c:58 src/preferences.c:941 src/print.c:116 -msgid "Image" -msgstr "ͼ" - -#: src/layout_config.c:364 -msgid "(drag to change order)" -msgstr "" - -#: src/layout_image.c:816 -#, fuzzy -msgid "Hide file _list" -msgstr "()ļб" - -#: src/layout_util.c:879 src/menu.c:76 -#, fuzzy, c-format -msgid "_%d %s..." -msgstr " %s..." - -#: src/layout_util.c:883 src/menu.c:78 -#, fuzzy, c-format -msgid "_%d (unknown)..." -msgstr " (δ֪)..." - -#: src/layout_util.c:893 -#, fuzzy, c-format -msgid "_%d empty" -msgstr "" - -#: src/layout_util.c:1037 -#, fuzzy -msgid "_File" -msgstr "/ļ(_F)" - -#: src/layout_util.c:1038 -msgid "_Go" -msgstr "" - -#: src/layout_util.c:1039 src/menu.c:93 -#, fuzzy -msgid "_Edit" -msgstr "/༭(_E)" - -#: src/layout_util.c:1040 -#, fuzzy -msgid "_Select" -msgstr "ѡ" - -#: src/layout_util.c:1041 src/menu.c:265 -#, fuzzy -msgid "_Adjust" -msgstr "" - -#: src/layout_util.c:1043 -#, fuzzy -msgid "_View Directory as" -msgstr "½Ŀ¼" - -#: src/layout_util.c:1044 -#, fuzzy -msgid "_Zoom" -msgstr "Ŵ" - -#: src/layout_util.c:1045 -msgid "_Split" -msgstr "" - -#: src/layout_util.c:1046 -#, fuzzy -msgid "_Help" -msgstr "/(_H)" - -#: src/layout_util.c:1048 -#, fuzzy -msgid "_First Image" -msgstr "%d ͼ" - -#: src/layout_util.c:1049 src/layout_util.c:1050 src/layout_util.c:1051 -msgid "_Previous Image" -msgstr "" - -#: src/layout_util.c:1052 src/layout_util.c:1053 src/layout_util.c:1054 -#, fuzzy -msgid "_Next Image" -msgstr "Ԥװһͼ" - -#: src/layout_util.c:1055 -#, fuzzy -msgid "_Last Image" -msgstr "Ԥװһͼ" - -#: src/layout_util.c:1058 -#, fuzzy -msgid "New _window" -msgstr "/ļ/ͼ" - -#: src/layout_util.c:1059 -#, fuzzy -msgid "_New collection" -msgstr "ͼ" - -#: src/layout_util.c:1060 -#, fuzzy -msgid "_Open collection..." -msgstr "ͼ" - -#: src/layout_util.c:1061 -#, fuzzy -msgid "Open _recent" -msgstr "/ļ/򿪽ڷ(_R)" - -#: src/layout_util.c:1062 -#, fuzzy -msgid "_Search..." -msgstr "ڱȽ..." - -#: src/layout_util.c:1064 -#, fuzzy -msgid "Pan _view" -msgstr " - Geeqie" - -#: src/layout_util.c:1065 -#, fuzzy -msgid "_Print..." -msgstr "/ļ/(_R)..." - -#: src/layout_util.c:1066 -#, fuzzy -msgid "N_ew folder..." -msgstr " - Geeqie" - -#: src/layout_util.c:1075 -#, fuzzy -msgid "_Quit" -msgstr "Ʒ" - -#: src/layout_util.c:1088 src/menu.c:203 -#, fuzzy -msgid "_Rotate clockwise" -msgstr "˳ʱת" - -#: src/layout_util.c:1089 src/menu.c:206 -#, fuzzy -msgid "Rotate _counterclockwise" -msgstr "ʱת" - -#: src/layout_util.c:1090 -#, fuzzy -msgid "Rotate 1_80" -msgstr "ת 180 " - -#: src/layout_util.c:1091 src/menu.c:212 -#, fuzzy -msgid "_Mirror" -msgstr "" - -#: src/layout_util.c:1092 src/menu.c:215 -#, fuzzy -msgid "_Flip" -msgstr "ת" - -#: src/layout_util.c:1093 src/menu.c:218 -#, fuzzy -msgid "Toggle _grayscale" -msgstr "ֹͣŻõƬ" - -#: src/layout_util.c:1094 src/menu.c:221 -#, fuzzy -msgid "_Original state" -msgstr "" - -#: src/layout_util.c:1097 -#, fuzzy -msgid "Select _all" -msgstr "ȫѡ" - -#: src/layout_util.c:1098 -#, fuzzy -msgid "Select _none" -msgstr "ѡ" - -#: src/layout_util.c:1099 -#, fuzzy -msgid "_Invert Selection" -msgstr "ѡ" - -#: src/layout_util.c:1101 -#, fuzzy -msgid "P_references..." -msgstr "/༭/ѡ(_O)..." - -#: src/layout_util.c:1102 -msgid "_Thumbnail maintenance..." -msgstr "" - -#: src/layout_util.c:1112 src/layout_util.c:1113 -#, fuzzy -msgid "_Zoom to fit" -msgstr "/鿴/ŵʵС(_Z)" - -#: src/layout_util.c:1114 -msgid "Fit _Horizontally" -msgstr "" - -#: src/layout_util.c:1115 -msgid "Fit _Vorizontally" -msgstr "" - -#: src/layout_util.c:1116 -#, fuzzy -msgid "Zoom _2:1" -msgstr "ŵ 1:1" - -#: src/layout_util.c:1117 -#, fuzzy -msgid "Zoom _3:1" -msgstr "ŵ 1:1" - -#: src/layout_util.c:1118 -#, fuzzy -msgid "Zoom _4:1" -msgstr "ŵ 1:1" - -#: src/layout_util.c:1119 -#, fuzzy -msgid "Zoom 1:2" -msgstr "ŵ 1:1" - -#: src/layout_util.c:1120 -#, fuzzy -msgid "Zoom 1:3" -msgstr "ŵ 1:1" - -#: src/layout_util.c:1121 -#, fuzzy -msgid "Zoom 1:4" -msgstr "ŵ 1:1" - -#: src/layout_util.c:1124 -#, fuzzy -msgid "_View in new window" -msgstr "´в鿴" - -#: src/layout_util.c:1126 src/layout_util.c:1127 src/layout_util.c:1128 -#, fuzzy -msgid "F_ull screen" -msgstr "ȫ" - -#: src/layout_util.c:1129 src/layout_util.c:1130 -msgid "Escape" -msgstr "" - -#: src/layout_util.c:1131 -msgid "_Image Overlay" -msgstr "" - -#: src/layout_util.c:1132 -msgid "Histogram _channels" -msgstr "" - -#: src/layout_util.c:1133 -msgid "Histogram _log mode" -msgstr "" - -#: src/layout_util.c:1134 -#, fuzzy -msgid "_Hide file list" -msgstr "()ļб" - -#: src/layout_util.c:1135 -#, fuzzy -msgid "_Pause slideshow" -msgstr "ͣŻõƬ" - -#: src/layout_util.c:1136 -#, fuzzy -msgid "_Refresh" -msgstr "ˢ" - -#: src/layout_util.c:1138 -#, fuzzy -msgid "_Contents" -msgstr "//(_A)" - -#: src/layout_util.c:1139 -#, fuzzy -msgid "_Keyboard shortcuts" -msgstr "//̿ݼ(_K)" - -#: src/layout_util.c:1140 -#, fuzzy -msgid "_Release notes" -msgstr "//˵(_R)" - -#: src/layout_util.c:1141 -#, fuzzy -msgid "_About" -msgstr "" - -#: src/layout_util.c:1145 src/layout_util.c:1546 -#, fuzzy -msgid "_Thumbnails" -msgstr "ͼ" - -#: src/layout_util.c:1146 -#, fuzzy -msgid "Show _Marks" -msgstr "ʾļ" - -#: src/layout_util.c:1147 -#, fuzzy -msgid "_Float file list" -msgstr "/鿴/()ļб(_F)" - -#: src/layout_util.c:1148 -#, fuzzy -msgid "Hide tool_bar" -msgstr "/鿴/Ƭ1" - -#: src/layout_util.c:1149 -#, fuzzy -msgid "_Keywords" -msgstr "ߴ" - -#: src/layout_util.c:1150 -#, fuzzy -msgid "E_xif data" -msgstr "/鿴/б(_R)" - -#: src/layout_util.c:1151 -#, fuzzy -msgid "Sort _manager" -msgstr "" - -#: src/layout_util.c:1152 -msgid "Co_nnected scroll" -msgstr "" - -#: src/layout_util.c:1153 -msgid "C_onnected zoom" -msgstr "" - -#: src/layout_util.c:1154 -#, fuzzy -msgid "Toggle _slideshow" -msgstr "ֹͣŻõƬ" - -#: src/layout_util.c:1158 src/view_dir.c:29 -#, fuzzy -msgid "_List" -msgstr "/鿴/б(_R)" - -#: src/layout_util.c:1159 -#, fuzzy -msgid "I_cons" -msgstr "ߴ" - -#: src/layout_util.c:1163 -msgid "Horizontal" -msgstr "" - -#: src/layout_util.c:1164 -msgid "Vertical" -msgstr "" - -#: src/layout_util.c:1165 -msgid "Quad" -msgstr "" - -#: src/layout_util.c:1166 -#, fuzzy -msgid "Single" -msgstr "С" - -#: src/layout_util.c:1354 -#, c-format -msgid "Mark _%d" -msgstr "" - -#: src/layout_util.c:1355 src/view_file.c:515 -#, c-format -msgid "_Set mark %d" -msgstr "" - -#: src/layout_util.c:1356 src/view_file.c:516 -#, c-format -msgid "_Reset mark %d" -msgstr "" - -#: src/layout_util.c:1357 src/layout_util.c:1358 src/view_file.c:517 -#, c-format -msgid "_Toggle mark %d" -msgstr "" - -#: src/layout_util.c:1359 src/layout_util.c:1360 src/view_file.c:518 -#, fuzzy, c-format -msgid "_Select mark %d" -msgstr "ȫѡ" - -#: src/layout_util.c:1361 src/view_file.c:519 -#, fuzzy, c-format -msgid "_Add mark %d" -msgstr "༭" - -#: src/layout_util.c:1362 src/view_file.c:520 -#, c-format -msgid "_Intersection with mark %d" -msgstr "" - -#: src/layout_util.c:1363 src/view_file.c:521 -#, c-format -msgid "_Unselect mark %d" -msgstr "" - -#: src/layout_util.c:1547 -#, fuzzy -msgid "Show thumbnails" -msgstr "ͼ" - -#: src/layout_util.c:1552 -#, fuzzy -msgid "Change to home folder" -msgstr "صĿ¼" - -#: src/layout_util.c:1554 -msgid "Refresh file list" -msgstr "ˢļб" - -#: src/layout_util.c:1556 -msgid "Zoom in" -msgstr "Ŵ" - -#: src/layout_util.c:1558 -msgid "Zoom out" -msgstr "С" - -#: src/layout_util.c:1560 src/preferences.c:978 -msgid "Fit image to window" -msgstr "ͼ" - -#: src/layout_util.c:1562 -msgid "Set zoom 1:1" -msgstr "ñ 1:1" - -#: src/layout_util.c:1564 -msgid "Configure options" -msgstr "ѡ" - -#: src/layout_util.c:1565 -#, fuzzy -msgid "_Float" -msgstr "ͨ" - -#: src/layout_util.c:1566 -msgid "Float Controls" -msgstr "" - -#. something went badly wrong -#: src/lirc.c:184 -#, c-format -msgid "disconnected from LIRC\n" -msgstr "" - -#: src/lirc.c:199 -#, c-format -msgid "Could not init LIRC support\n" -msgstr "" - -#: src/lirc.c:206 -#, c-format -msgid "" -"could not read LIRC config file\n" -"please read the documentation of LIRC to \n" -"know how to create a proper config file\n" -msgstr "" - -#: src/main.c:391 -#, fuzzy, c-format -msgid "" -"Usage: %s [options] [path]\n" -"\n" -msgstr "" -"÷: gqview [ѡ] [·]\n" -"\n" - -#: src/main.c:392 -msgid "valid options are:\n" -msgstr "ЧѡΪ\n" - -#: src/main.c:393 -msgid " +t, --with-tools force show of tools\n" -msgstr " +t, --with-tools ǿʾ\n" - -#: src/main.c:394 -msgid " -t, --without-tools force hide of tools\n" -msgstr " -t, --without-tools ǿع\n" - -#: src/main.c:395 -msgid " -f, --fullscreen start in full screen mode\n" -msgstr " -f, --fullscreen ȫģʽ\n" - -#: src/main.c:396 -msgid " -s, --slideshow start in slideshow mode\n" -msgstr " -s, --slidehosw Իõģʽ\n" - -#: src/main.c:397 -msgid " -l, --list open collection window for command line\n" -msgstr " -l, --list Ϊпͼ񼯴\n" - -#: src/main.c:398 -msgid " --geometry=GEOMETRY set main window location\n" -msgstr "" - -#: src/main.c:399 -#, fuzzy -msgid " -r, --remote send following commands to open window\n" -msgstr " -l, --list Ϊпͼ񼯴\n" - -#: src/main.c:400 -msgid " -rh,--remote-help print remote command list\n" -msgstr "" - -#: src/main.c:402 -#, fuzzy -msgid " --debug[=level] turn on debug output\n" -msgstr " --debug 򿪵Ϣ\n" - -#: src/main.c:404 -msgid " -v, --version print version info\n" -msgstr " -v, --version ӡ汾Ϣ\n" - -#: src/main.c:405 -msgid "" -" -h, --help show this message\n" -"\n" -msgstr "" -" -h, --help ʾϢ\n" -"\n" - -#: src/main.c:417 -#, c-format -msgid "" -"invalid or ignored: %s\n" -"Use --help for options\n" -msgstr "" -"Чԣ%s\n" -"ʹ --help 鿴ѡ\n" - -#: src/main.c:445 -#, fuzzy -msgid "Invalid or ignored remote options: " -msgstr "" -"Чԣ%s\n" -"ʹ --help 鿴ѡ\n" - -#: src/main.c:454 -msgid "" -"\n" -"Use --remote-help for valid remote options.\n" -msgstr "" - -#: src/main.c:539 -#, fuzzy, c-format -msgid "Creating %s dir:%s\n" -msgstr "ڴ Geeqie Ŀ¼%s\n" - -#: src/main.c:543 -#, c-format -msgid "Could not create dir:%s\n" -msgstr "޷Ŀ¼%s\n" - -#: src/main.c:562 src/ui_bookmark.c:856 src/ui_pathsel.c:1051 -msgid "Home" -msgstr "" - -#: src/main.c:564 src/ui_bookmark.c:863 -#, fuzzy -msgid "Desktop" -msgstr "" - -#: src/main.c:680 -#, fuzzy -msgid "exit" -msgstr "˳" - -#: src/main.c:685 -#, fuzzy, c-format -msgid "Quit %s" -msgstr "Ʒ" - -#: src/main.c:687 -#, fuzzy -msgid "Collections have been modified. Quit anyway?" -msgstr "" -"ͼѾı䡣\n" -"ǿ˳" - -#: src/main.c:836 src/remote.c:536 -msgid "Command line" -msgstr "" - -#: src/menu.c:117 -#, fuzzy -msgid "Sort by size" -msgstr "С" - -#: src/menu.c:120 -#, fuzzy -msgid "Sort by date" -msgstr "" - -#: src/menu.c:123 -msgid "Unsorted" -msgstr "δ" - -#: src/menu.c:126 -#, fuzzy -msgid "Sort by path" -msgstr "·" - -#: src/menu.c:129 -#, fuzzy -msgid "Sort by number" -msgstr "" - -#: src/menu.c:133 -#, fuzzy -msgid "Sort by name" -msgstr "" - -#: src/menu.c:184 -msgid "Sort" -msgstr "" - -#: src/menu.c:209 -#, fuzzy -msgid "Rotate _180" -msgstr "ת 180 " - -#: src/pan-view.c:470 -#, fuzzy, c-format -msgid "%d images, %s" -msgstr "%d ͼ" - -#: src/pan-view.c:480 -#, c-format -msgid "The pan view does not support the folder \"%s\"." -msgstr "" - -#: src/pan-view.c:481 -msgid "Folder not supported" -msgstr "" - -#: src/pan-view.c:1083 src/pan-view.c:1099 -#, fuzzy -msgid "Reading image data..." -msgstr "ڶȡ..." - -#: src/pan-view.c:1158 -#, fuzzy -msgid "Sorting images..." -msgstr "ڱȽ..." - -#: src/pan-view.c:1546 src/pan-view.c:1912 -#, fuzzy -msgid "Date:" -msgstr "" - -#: src/pan-view.c:1548 src/preferences.c:887 src/print.c:3245 src/print.c:3456 -msgid "Size:" -msgstr "С" - -#: src/pan-view.c:1650 -msgid "path found" -msgstr "" - -#: src/pan-view.c:1650 -#, fuzzy -msgid "filename found" -msgstr "" - -#: src/pan-view.c:1698 -msgid "partial match" -msgstr "" - -#: src/pan-view.c:1909 src/pan-view.c:1942 -msgid "no match" -msgstr "" - -#: src/pan-view.c:2268 src/search.c:2150 -msgid "Folder not found" -msgstr "" - -#: src/pan-view.c:2269 -msgid "The entered path is not a folder" -msgstr "" - -#: src/pan-view.c:2368 -#, fuzzy -msgid "Pan View" -msgstr " - Geeqie" - -#: src/pan-view.c:2393 -#, fuzzy -msgid "Timeline" -msgstr "˫" - -#: src/pan-view.c:2394 -#, fuzzy -msgid "Calendar" -msgstr "" - -#: src/pan-view.c:2396 -#, fuzzy -msgid "Folders (flower)" -msgstr "ƽ" - -#: src/pan-view.c:2397 -msgid "Grid" -msgstr "" - -#: src/pan-view.c:2406 -#, fuzzy -msgid "Dots" -msgstr "Xpaint" - -#: src/pan-view.c:2407 -#, fuzzy -msgid "No Images" -msgstr "ͼ" - -#: src/pan-view.c:2408 -#, fuzzy -msgid "Small Thumbnails" -msgstr "ͼ" - -#: src/pan-view.c:2409 -#, fuzzy -msgid "Normal Thumbnails" -msgstr "ͼ" - -#: src/pan-view.c:2410 -#, fuzzy -msgid "Large Thumbnails" -msgstr "ͼ" - -#: src/pan-view.c:2411 src/pan-view.c:2863 -msgid "1:10 (10%)" -msgstr "" - -#: src/pan-view.c:2412 src/pan-view.c:2859 -msgid "1:4 (25%)" -msgstr "" - -#: src/pan-view.c:2413 src/pan-view.c:2855 -msgid "1:3 (33%)" -msgstr "" - -#: src/pan-view.c:2414 src/pan-view.c:2851 -msgid "1:2 (50%)" -msgstr "" - -#: src/pan-view.c:2415 -msgid "1:1 (100%)" -msgstr "" - -#: src/pan-view.c:2463 -#, fuzzy -msgid "Find:" -msgstr "" - -#: src/pan-view.c:2506 -#, fuzzy -msgid "Use Exif date" -msgstr "/鿴/б(_R)" - -#: src/pan-view.c:2519 -msgid "Find" -msgstr "" - -#: src/pan-view.c:2586 -msgid "Pan View Performance" -msgstr "" - -#: src/pan-view.c:2593 -msgid "Pan view performance may be poor." -msgstr "" - -#: src/pan-view.c:2594 -msgid "" -"To improve performance of thumbnails in the pan view the following options " -"can be enabled. Note that both options must be enabled to notice a change in " -"performance." -msgstr "" - -#: src/pan-view.c:2602 src/preferences.c:890 -msgid "Cache thumbnails" -msgstr "ͼ" - -#: src/pan-view.c:2604 src/preferences.c:896 -msgid "Use shared thumbnail cache" -msgstr "" - -#: src/pan-view.c:2610 -msgid "Do not show this dialog again" -msgstr "" - -#: src/pan-view.c:2831 -#, fuzzy -msgid "Sort by E_xif date" -msgstr "" - -#: src/pan-view.c:2837 -msgid "_Show Exif information" -msgstr "" - -#: src/pan-view.c:2839 -#, fuzzy -msgid "Show im_age" -msgstr "ʾļ" - -#: src/pan-view.c:2843 -#, fuzzy -msgid "_None" -msgstr "" - -#: src/pan-view.c:2847 -#, fuzzy -msgid "_Full size" -msgstr "ƽ" - -#. note: the order is important, it must match the values of -#. * EXIF_UI_OFF, _IFSET, _ON -#: src/preferences.c:402 -msgid "Never" -msgstr "" - -#: src/preferences.c:403 -msgid "If set" -msgstr "" - -#: src/preferences.c:404 -msgid "Always" -msgstr "" - -#: src/preferences.c:451 -msgid "Nearest (worst, but fastest)" -msgstr " (㣬)" - -#: src/preferences.c:453 -msgid "Tiles" -msgstr "ƽ" - -#: src/preferences.c:455 -msgid "Bilinear" -msgstr "˫" - -#: src/preferences.c:457 -msgid "Hyper (best, but slowest)" -msgstr " (ã)" - -#: src/preferences.c:485 -msgid "None" -msgstr "" - -#: src/preferences.c:486 -msgid "Normal" -msgstr "ͨ" - -#: src/preferences.c:487 -msgid "Best" -msgstr "" - -#: src/preferences.c:548 src/print.c:372 -msgid "Custom" -msgstr "" - -#: src/preferences.c:712 src/preferences.c:715 -#, fuzzy -msgid "Reset filters" -msgstr "ɾļ" - -#: src/preferences.c:716 -msgid "" -"This will reset the file filters to the defaults.\n" -"Continue?" -msgstr "" - -#: src/preferences.c:750 src/preferences.c:753 -#, fuzzy -msgid "Reset editors" -msgstr "ɾļ" - -#: src/preferences.c:754 -msgid "" -"This will reset the edit commands to the defaults.\n" -"Continue?" -msgstr "" - -#: src/preferences.c:778 src/preferences.c:781 -#, fuzzy -msgid "Clear trash" -msgstr "" - -#: src/preferences.c:782 -msgid "This will remove the trash contents." -msgstr "" - -#: src/preferences.c:826 src/preferences.c:829 -msgid "Reset image overlay template string" -msgstr "" - -#: src/preferences.c:830 -msgid "" -"This will reset the image overlay template string to the default.\n" -"Continue?" -msgstr "" - -#: src/preferences.c:861 -msgid "Startup" -msgstr "" - -#: src/preferences.c:863 -msgid "Restore folder on startup" -msgstr "" - -#: src/preferences.c:876 -msgid "Use current" -msgstr "ʹõǰĿ¼" - -#: src/preferences.c:879 -#, fuzzy -msgid "Use last path" -msgstr "ȫѡ" - -#: src/preferences.c:888 src/preferences.c:950 -msgid "Quality:" -msgstr "Ʒʣ" - -#: src/preferences.c:902 -msgid "Cache thumbnails into .thumbnails" -msgstr "ͼ浽 .thumbnails " - -#: src/preferences.c:906 -msgid "Use xvpics thumbnails when found (read only)" -msgstr "ҵxvpicsͼʹ(ֻ)" - -#: src/preferences.c:910 -msgid "Faster jpeg thumbnailing (may reduce quality)" -msgstr "" - -#: src/preferences.c:913 -msgid "Slide show" -msgstr "չʾõƬ" - -#: src/preferences.c:916 -#, fuzzy -msgid "Delay between image change:" -msgstr "ͼıʱ()" - -#: src/preferences.c:916 -msgid "seconds" -msgstr "" - -#: src/preferences.c:922 -msgid "Random" -msgstr "" - -#: src/preferences.c:923 -msgid "Repeat" -msgstr "ظ" - -#: src/preferences.c:944 -#, fuzzy -msgid "Zoom" -msgstr "Ŵ" - -#: src/preferences.c:947 -msgid "Dithering method:" -msgstr "" - -#: src/preferences.c:952 -msgid "Two pass zooming" -msgstr "" - -#: src/preferences.c:955 -#, fuzzy -msgid "Allow enlargement of image for zoom to fit" -msgstr "ΪչͼԱƥ䡣" - -#: src/preferences.c:959 -#, fuzzy -msgid "Limit image size when autofitting (%):" -msgstr "Զı䴰ڴСʱƳߴ (%)" - -#: src/preferences.c:967 -msgid "Zoom increment:" -msgstr "" - -#: src/preferences.c:972 -msgid "When new image is selected:" -msgstr "ѡͼʱ" - -#: src/preferences.c:975 -msgid "Zoom to original size" -msgstr "ŵԭߴ" - -#: src/preferences.c:981 -msgid "Leave Zoom at previous setting" -msgstr "һε" - -#: src/preferences.c:985 -#, fuzzy -msgid "Appearance" -msgstr "׷" - -#: src/preferences.c:987 -#, fuzzy -msgid "Custom border color" -msgstr "ļͣ" - -#: src/preferences.c:990 -msgid "Border color" -msgstr "" - -#: src/preferences.c:993 -#, fuzzy -msgid "Convenience" -msgstr "" - -#: src/preferences.c:995 -#, fuzzy -msgid "Refresh on file change" -msgstr "ˢļб" - -#: src/preferences.c:997 -msgid "Preload next image" -msgstr "Ԥװһͼ" - -#: src/preferences.c:999 -msgid "Auto rotate image using Exif information" -msgstr "" - -#: src/preferences.c:1016 -msgid "Windows" -msgstr "" - -#: src/preferences.c:1019 -#, fuzzy -msgid "State" -msgstr "" - -#: src/preferences.c:1021 -msgid "Remember window positions" -msgstr "סλ" - -#: src/preferences.c:1023 -msgid "Remember tool state (float/hidden)" -msgstr "ס״̬(/)" - -#: src/preferences.c:1028 -msgid "Fit window to image when tools are hidden/floating" -msgstr "ߵ/ʱ,ʹӦͼ" - -#: src/preferences.c:1032 -msgid "Limit size when auto-sizing window (%):" -msgstr "Զı䴰ڴСʱƳߴ (%)" - -#: src/preferences.c:1039 src/print.c:3404 src/print.c:3411 -msgid "Layout" -msgstr "" - -#: src/preferences.c:1066 -msgid "Filtering" -msgstr "" - -#: src/preferences.c:1071 -msgid "Show hidden files or folders" -msgstr "" - -#: src/preferences.c:1073 -#, fuzzy -msgid "Show dot directory" -msgstr "½Ŀ¼" - -#: src/preferences.c:1075 -msgid "Case sensitive sort" -msgstr "" - -#: src/preferences.c:1078 -msgid "Disable File Filtering" -msgstr "ֹļ" - -#: src/preferences.c:1082 -msgid "Grouping sidecar extensions" -msgstr "" - -#: src/preferences.c:1089 -#, fuzzy -msgid "File types" -msgstr "" - -#: src/preferences.c:1111 -#, fuzzy -msgid "Filter" -msgstr "" - -#: src/preferences.c:1148 src/preferences.c:1234 src/preferences.c:1378 -msgid "Defaults" -msgstr "" - -#: src/preferences.c:1177 -msgid "Editors" -msgstr "༭" - -#: src/preferences.c:1183 -msgid "#" -msgstr "#" - -#: src/preferences.c:1186 src/preferences.c:1497 -msgid "Menu name" -msgstr "˵" - -#: src/preferences.c:1189 -msgid "Command Line" -msgstr "" - -#: src/preferences.c:1261 -#, fuzzy -msgid "Properties" -msgstr "/༭/ѡ(_O)..." - -#: src/preferences.c:1279 -msgid "What to show in properties dialog:" -msgstr "" - -#: src/preferences.c:1316 -msgid "Advanced" -msgstr "" - -#: src/preferences.c:1337 -#, fuzzy -msgid "Smooth image flip" -msgstr "ͼ" - -#: src/preferences.c:1339 -msgid "Disable screen saver" -msgstr "" - -#: src/preferences.c:1343 -msgid "Overlay Screen Display" -msgstr "" - -#: src/preferences.c:1345 -msgid "Always show image overlay at startup" -msgstr "" - -#: src/preferences.c:1347 -msgid "Image overlay template" -msgstr "" - -#: src/preferences.c:1361 -msgid "" -"%name% results in the filename of the picture.\n" -"Also available: %collection%, %number%, %total%, %" -"date%,\n" -"%size% (filesize), %width%, %height%, %res% " -"(resolution)\n" -"To access exif data use the exif name, e. g. %formatted.Camera% is " -"the formatted camera name,\n" -"%Exif.Photo.DateTimeOriginal% the date of the original shot.\n" -"%formatted.Camera:20 notation will truncate the displayed data to 20 " -"characters and will add 3 dots at the end to denote the truncation.\n" -"If two or more variables are connected with the |-sign, it prints available " -"variables with a separator.\n" -"%formatted.ShutterSpeed%|%formatted.ISOSpeedRating%|%" -"formatted.FocalLength% could show \"1/20s - 400 - 80 mm\" or \"1/200 - " -"80 mm\",\n" -"if there's no ISO information in the Exif data.\n" -"If a line is empty, it is removed. This allows to add lines that totally " -"disappear when no data is available.\n" -msgstr "" - -#: src/preferences.c:1393 -msgid "Delete" -msgstr "ɾ" - -#: src/preferences.c:1395 -msgid "Confirm file delete" -msgstr "ȷɾļ" - -#: src/preferences.c:1397 -msgid "Enable Delete key" -msgstr "ɾ" - -#: src/preferences.c:1400 -#, fuzzy -msgid "Safe delete" -msgstr "ȷɾļ" - -#: src/preferences.c:1418 -#, fuzzy -msgid "Maximum size:" -msgstr "ƽ" - -#: src/preferences.c:1418 -msgid "MB" -msgstr "" - -#: src/preferences.c:1421 -msgid "Set to 0 for unlimited size" -msgstr "" - -#: src/preferences.c:1423 -msgid "View" -msgstr "鿴" - -#: src/preferences.c:1434 -msgid "Behavior" -msgstr "" - -#: src/preferences.c:1436 -#, fuzzy -msgid "Rectangular selection in icon view" -msgstr "ѡ" - -#: src/preferences.c:1439 -msgid "Descend folders in tree view" -msgstr "" - -#: src/preferences.c:1442 -msgid "In place renaming" -msgstr "ʱ" - -#: src/preferences.c:1445 -msgid "" -"Show \"Copy path\" menu item which write the path of selected files to " -"clipboard" -msgstr "" - -#: src/preferences.c:1448 -msgid "Open recent list maximum size" -msgstr "" - -#: src/preferences.c:1451 -msgid "Drag'n drop icon size" -msgstr "" - -#: src/preferences.c:1454 -msgid "Navigation" -msgstr "" - -#: src/preferences.c:1456 -msgid "Progressive keyboard scrolling" -msgstr "۽̹" - -#: src/preferences.c:1458 -msgid "Mouse wheel scrolls image" -msgstr "ֹͼ" - -#: src/preferences.c:1461 -msgid "Miscellaneous" -msgstr "" - -#: src/preferences.c:1463 -msgid "Store metadata and cache files in source image's directory" -msgstr "" - -#: src/preferences.c:1466 -msgid "Store keywords and comments as XMP tags in image files" -msgstr "" - -#: src/preferences.c:1469 -#, fuzzy -msgid "Custom similarity threshold:" -msgstr "ļͣ" - -#: src/preferences.c:1472 -msgid "Image loading and caching" -msgstr "" - -#: src/preferences.c:1474 -msgid "Offscreen cache size (Mb per image):" -msgstr "ĻС (ÿͼ Mb )" - -#: src/preferences.c:1477 -msgid "Image read buffer size (bytes):" -msgstr "" - -#: src/preferences.c:1481 -msgid "Image idle loop read count:" -msgstr "" - -#: src/preferences.c:1486 -#, fuzzy -msgid "Color profiles" -msgstr "ļ" - -#: src/preferences.c:1494 -msgid "Type" -msgstr "" - -#: src/preferences.c:1500 -#, fuzzy -msgid "File" -msgstr "" - -#: src/preferences.c:1525 src/preferences.c:1536 -#, fuzzy -msgid "Select color profile" -msgstr "ѡ" - -#: src/preferences.c:1533 -msgid "Screen:" -msgstr "" - -#: src/preferences.c:1544 -msgid "Debugging" -msgstr "" - -#: src/preferences.c:1546 -msgid "Debug level:" -msgstr "" - -#: src/preferences.c:1562 -#, fuzzy -msgid "Preferences" -msgstr "/༭/ѡ(_O)..." - -#: src/preferences.c:1685 -#, fuzzy -msgid "About" -msgstr "" - -#: src/preferences.c:1702 -#, fuzzy, c-format -msgid "" -"%s %s\n" -"\n" -"Copyright (c) 2006 John Ellis\n" -"Copyright (c) %s The Geeqie Team\n" -"website: %s\n" -"email: %s\n" -"\n" -"Released under the GNU General Public License" -msgstr "" -"Geeqie %s\n" -"\n" -"Ȩ (c) 2003 John Ellis\n" -"http://gqview.sourceforge.net\n" -"gqview@users.sourceforge.net\n" -"\n" -"ͨù֤" - -#: src/preferences.c:1721 -#, fuzzy -msgid "Credits..." -msgstr "/༭/ѡ(_O)..." - -#: src/print.c:117 -#, fuzzy -msgid "Selection" -msgstr "ѡ" - -#: src/print.c:118 -msgid "All" -msgstr "" - -#: src/print.c:129 -msgid "One image per page" -msgstr "" - -#: src/print.c:130 -msgid "Proof sheet" -msgstr "" - -#: src/print.c:143 -msgid "Default printer" -msgstr "" - -#: src/print.c:144 -#, fuzzy -msgid "Custom printer" -msgstr "ļͣ" - -#: src/print.c:145 -msgid "PostScript file" -msgstr "" - -#: src/print.c:146 -#, fuzzy -msgid "Image file" -msgstr "ͼ" - -#: src/print.c:160 -msgid "jpeg, low quality" -msgstr "" - -#: src/print.c:161 -msgid "jpeg, normal quality" -msgstr "" - -#: src/print.c:162 -msgid "jpeg, high quality" -msgstr "" - -#: src/print.c:357 src/print.c:3245 -#, fuzzy -msgid "points" -msgstr "Xpaint" - -#: src/print.c:358 -msgid "millimeters" -msgstr "" - -#: src/print.c:359 -msgid "centimeters" -msgstr "" - -#: src/print.c:360 -msgid "inches" -msgstr "" - -#: src/print.c:361 -msgid "picas" -msgstr "" - -#: src/print.c:366 -msgid "Portrait" -msgstr "" - -#: src/print.c:367 -msgid "Landscape" -msgstr "" - -#: src/print.c:373 -msgid "Letter" -msgstr "" - -#. in 8.5 x 11 -#: src/print.c:374 -msgid "Legal" -msgstr "" - -#. in 8.5 x 14 -#: src/print.c:375 -msgid "Executive" -msgstr "" - -#. in 7.25x 10.5 -#. mm 841 x 1189 -#. mm 594 x 841 -#. mm 420 x 594 -#. mm 297 x 420 -#. mm 210 x 297 -#. mm 148 x 210 -#. mm 105 x 148 -#. mm 353 x 500 -#. mm 250 x 353 -#. mm 176 x 250 -#. mm 125 x 176 -#: src/print.c:387 -msgid "Envelope #10" -msgstr "" - -#. in 4.125 x 9.5 -#: src/print.c:388 -msgid "Envelope #9" -msgstr "" - -#. in 3.875 x 8.875 -#: src/print.c:389 -msgid "Envelope C4" -msgstr "" - -#. mm 229 x 324 -#: src/print.c:390 -msgid "Envelope C5" -msgstr "" - -#. mm 162 x 229 -#: src/print.c:391 -msgid "Envelope C6" -msgstr "" - -#. mm 114 x 162 -#: src/print.c:392 -msgid "Photo 6x4" -msgstr "" - -#. in 6 x 4 -#: src/print.c:393 -msgid "Photo 8x10" -msgstr "" - -#. in 8 x 10 -#: src/print.c:394 -msgid "Postcard" -msgstr "" - -#. mm 100 x 148 -#: src/print.c:395 -msgid "Tabloid" -msgstr "" - -#: src/print.c:551 -#, c-format -msgid "page %d of %d" -msgstr "" - -#: src/print.c:743 src/utilops.c:2462 -msgid "Preview" -msgstr "" - -#: src/print.c:1051 -#, c-format -msgid "" -"Unable to open pipe for writing.\n" -"\"%s\"" -msgstr "" - -#: src/print.c:1066 src/print.c:1506 src/ui_pathsel.c:432 -#: src/view_file_list.c:396 -#, fuzzy, c-format -msgid "A file with name %s already exists." -msgstr "ļ %s Ѵڡ" - -#: src/print.c:1081 src/print.c:1561 -#, c-format -msgid "Failure writing to file %s" -msgstr "" - -#: src/print.c:1135 src/print.c:1172 src/print.c:1208 src/print.c:1325 -#: src/print.c:1416 src/print.c:1447 -msgid "SIGPIPE error writing to printer." -msgstr "" - -#: src/print.c:1982 -#, c-format -msgid "Page %d" -msgstr "" - -#: src/print.c:2004 src/print.c:2009 -#, fuzzy -msgid "Printing error" -msgstr "" - -#: src/print.c:2008 -#, c-format -msgid "An error occured printing to %s." -msgstr "" - -#: src/print.c:2012 -#, fuzzy -msgid "Details" -msgstr "ɾļ" - -#: src/print.c:2617 src/print.c:3377 -#, fuzzy -msgid "Print" -msgstr "" - -#: src/print.c:2624 -#, c-format -msgid "Printing %d pages to %s." -msgstr "" - -#: src/print.c:2724 -#, fuzzy -msgid "Format:" -msgstr "ͨ" - -#: src/print.c:2799 -msgid "Units:" -msgstr "" - -#: src/print.c:2843 -#, fuzzy -msgid "Orientation:" -msgstr "ߴ" - -#: src/print.c:2975 -#, fuzzy -msgid "Destination:" -msgstr "ЧĿ" - -#: src/print.c:3023 -#, fuzzy -msgid "" -msgstr "" - -#: src/print.c:3112 -#, fuzzy -msgid "Unlimited" -msgstr "ޱ" - -#: src/print.c:3230 -msgid "Show" -msgstr "" - -#: src/print.c:3243 -#, fuzzy -msgid "Font" -msgstr "" - -#: src/print.c:3407 -#, fuzzy -msgid "Source" -msgstr "" - -#: src/print.c:3423 -#, fuzzy -msgid "Proof size:" -msgstr "ͼ" - -#: src/print.c:3449 -#, fuzzy -msgid "Paper" -msgstr "" - -#: src/print.c:3472 -msgid "Margins" -msgstr "" - -#: src/print.c:3474 -msgid "Left:" -msgstr "" - -#: src/print.c:3477 -msgid "Right:" -msgstr "" - -#: src/print.c:3480 -msgid "Top:" -msgstr "" - -#: src/print.c:3483 -#, fuzzy -msgid "Bottom:" -msgstr "" - -#: src/print.c:3492 -#, fuzzy -msgid "Printer" -msgstr "" - -#: src/print.c:3498 -#, fuzzy -msgid "Custom printer:" -msgstr "ļͣ" - -#: src/print.c:3507 -#, fuzzy -msgid "File:" -msgstr "" - -#: src/print.c:3516 -#, fuzzy -msgid "File format:" -msgstr "" - -#: src/print.c:3521 -msgid "DPI:" -msgstr "" - -#: src/print.c:3529 -#, fuzzy -msgid "Remember print settings" -msgstr "סλ" - -#: src/rcfile.c:309 -#, c-format -msgid "error saving config file: %s\n" -msgstr "ļ%s\n" - -#: src/rcfile.c:583 -#, fuzzy, c-format -msgid "" -"error saving config file: %s\n" -"error: %s\n" -msgstr "ļ%s\n" - -#. short, long callback, extra, prefer,description -#: src/remote.c:574 -#, fuzzy -msgid "next image" -msgstr "Ԥװһͼ" - -#: src/remote.c:575 -msgid "previous image" -msgstr "" - -#: src/remote.c:576 -#, fuzzy -msgid "first image" -msgstr "%d ͼ" - -#: src/remote.c:577 -#, fuzzy -msgid "last image" -msgstr "Ԥװһͼ" - -#: src/remote.c:578 -#, fuzzy -msgid "toggle full screen" -msgstr "˳ȫ" - -#: src/remote.c:579 -#, fuzzy -msgid "start full screen" -msgstr "˳ȫ" - -#: src/remote.c:580 -#, fuzzy -msgid "stop full screen" -msgstr "˳ȫ" - -#: src/remote.c:581 -#, fuzzy -msgid "toggle slide show" -msgstr "ֹͣŻõƬ" - -#: src/remote.c:582 -#, fuzzy -msgid "start slide show" -msgstr "ʼŻõƬ" - -#: src/remote.c:583 -#, fuzzy -msgid "stop slide show" -msgstr "ֹͣŻõƬ" - -#: src/remote.c:584 -#, fuzzy -msgid "start recursive slide show" -msgstr "ʼŻõƬ" - -#: src/remote.c:585 -msgid "set slide show delay in seconds" -msgstr "" - -#: src/remote.c:586 -msgid "show tools" -msgstr "" - -#: src/remote.c:587 -#, fuzzy -msgid "hide tools" -msgstr "Geeqie " - -#: src/remote.c:588 -msgid "quit" -msgstr "" - -#: src/remote.c:589 -#, fuzzy -msgid "open file" -msgstr "" -"ļ\n" -"%s\n" -"Ϊ" - -#: src/remote.c:590 -#, fuzzy -msgid "open file in new window" -msgstr "´в鿴" - -#: src/remote.c:656 -msgid "Remote command list:\n" -msgstr "" - -#: src/remote.c:713 -#, c-format -msgid "Remote %s not running, starting..." -msgstr "" - -#: src/remote.c:849 -msgid "Remote not available\n" -msgstr "" - -#: src/search.c:202 -#, fuzzy -msgid "folder" -msgstr "ƽ" - -#: src/search.c:203 -#, fuzzy -msgid "comments" -msgstr "" - -#: src/search.c:204 -msgid "results" -msgstr "" - -#: src/search.c:208 -#, fuzzy -msgid "contains" -msgstr "" - -#: src/search.c:209 -msgid "is" -msgstr "" - -#: src/search.c:213 src/search.c:220 -msgid "equal to" -msgstr "" - -#: src/search.c:214 -msgid "less than" -msgstr "" - -#: src/search.c:215 -#, fuzzy -msgid "greater than" -msgstr "ͼ" - -#: src/search.c:216 src/search.c:223 -msgid "between" -msgstr "" - -#: src/search.c:221 -msgid "before" -msgstr "" - -#: src/search.c:222 -#, fuzzy -msgid "after" -msgstr "" - -#: src/search.c:227 -msgid "match all" -msgstr "" - -#: src/search.c:228 -msgid "match any" -msgstr "" - -#: src/search.c:229 -msgid "exclude" -msgstr "" - -#: src/search.c:279 -#, fuzzy, c-format -msgid "%s, %d files (%s, %d)" -msgstr "%d ļ (%d)%s" - -#: src/search.c:284 -#, fuzzy, c-format -msgid "%s, %d files" -msgstr "%d ļ%s" - -#: src/search.c:302 -#, fuzzy -msgid "Searching..." -msgstr "ڱȽ..." - -#: src/search.c:2100 -msgid "File not found" -msgstr "" - -#: src/search.c:2101 -#, fuzzy -msgid "Please enter an existing file for image content." -msgstr "ѡһѴڵĿ¼" - -#: src/search.c:2151 -#, fuzzy -msgid "Please enter an existing folder to search." -msgstr "ѡһѴڵĿ¼" - -#: src/search.c:2576 -#, fuzzy -msgid "Image search" -msgstr "ͼ" - -#: src/search.c:2606 -#, fuzzy -msgid "Search:" -msgstr "ڱȽ..." - -#: src/search.c:2620 -msgid "Recurse" -msgstr "" - -#: src/search.c:2624 -#, fuzzy -msgid "File name" -msgstr "" - -#: src/search.c:2630 -msgid "Match case" -msgstr "" - -#: src/search.c:2634 -#, fuzzy -msgid "File size is" -msgstr "ƽ" - -#: src/search.c:2641 src/search.c:2656 src/search.c:2674 -#, fuzzy -msgid "and" -msgstr "" - -#: src/search.c:2646 -#, fuzzy -msgid "File date is" -msgstr "" - -#: src/search.c:2663 -#, fuzzy -msgid "Image dimensions are" -msgstr "ЧĿ" - -#: src/search.c:2683 -#, fuzzy -msgid "Image content is" -msgstr "" - -#: src/search.c:2689 -#, fuzzy, no-c-format -msgid "% similar to" -msgstr "" - -#: src/search.c:2758 -#, fuzzy -msgid "Rank" -msgstr "" - -#: src/secure_save.c:398 -#, fuzzy -msgid "Cannot read the file" -msgstr "޷Ŀ¼" - -#: src/secure_save.c:400 -#, fuzzy -msgid "Cannot get file status" -msgstr "Ƚļ" - -#: src/secure_save.c:402 -msgid "Cannot access the file" -msgstr "" - -#: src/secure_save.c:404 -#, fuzzy -msgid "Cannot create temp file" -msgstr "޷Ŀ¼" - -#: src/secure_save.c:406 -#, fuzzy -msgid "Cannot rename the file" -msgstr "޷Ŀ¼" - -#: src/secure_save.c:408 -msgid "File saving disabled by option" -msgstr "" - -#: src/secure_save.c:410 -msgid "Out of memory" -msgstr "" - -#: src/secure_save.c:412 -msgid "Cannot write the file" -msgstr "" - -#: src/secure_save.c:416 -msgid "Secure file saving error" -msgstr "" - -#: src/thumb.c:382 -msgid "Thumbnail image in cache failed to load, trying to recreate.\n" -msgstr "װ뻺ͼʧܣͼؽ\n" - -#: src/trash.c:74 src/utilops.c:1402 src/utilops.c:1415 src/utilops.c:1494 -#: src/utilops.c:1511 src/utilops.c:3095 src/utilops.c:3146 src/utilops.c:3232 -#: src/utilops.c:3243 -msgid "Delete failed" -msgstr "ɾʧ" - -#: src/trash.c:75 -#, fuzzy -msgid "Unable to remove old file from trash folder" -msgstr "" -"޷ļ\n" -"%s\n" -"ƶ" - -#: src/trash.c:126 src/utilops.c:2755 -#, fuzzy -msgid "Could not create folder" -msgstr "޷Ŀ¼" - -#: src/trash.c:148 -msgid "Permission denied" -msgstr "" - -#: src/trash.c:158 -#, fuzzy, c-format -msgid "" -"Unable to access or create the trash folder.\n" -"\"%s\"" -msgstr "" -"޷Ŀ¼\n" -"%s" - -#: src/trash.c:162 -#, fuzzy -msgid "Turn off safe delete" -msgstr "ȷɾļ" - -#: src/trash.c:181 -msgid "Deletion by external command" -msgstr "" - -#: src/trash.c:189 -#, c-format -msgid " (max. %d MB)" -msgstr "" - -#: src/trash.c:193 -#, fuzzy, c-format -msgid "" -"Safe delete: %s%s\n" -"Trash: %s" -msgstr "ȷɾļ" - -#: src/trash.c:198 -#, fuzzy, c-format -msgid "Safe delete: %s" -msgstr "ȷɾļ" - -#: src/ui_bookmark.c:151 -#, c-format -msgid "Unable to write history lists to: %s\n" -msgstr "޷ʷбд룺%s\n" - -#: src/ui_bookmark.c:443 src/ui_bookmark.c:506 -msgid "New Bookmark" -msgstr "" - -#: src/ui_bookmark.c:589 src/ui_bookmark.c:595 -#, fuzzy -msgid "Edit Bookmark" -msgstr "༭" - -#: src/ui_bookmark.c:610 -#, fuzzy -msgid "Path:" -msgstr "·" - -#: src/ui_bookmark.c:619 -msgid "Icon:" -msgstr "" - -#: src/ui_bookmark.c:625 -#, fuzzy -msgid "Select icon" -msgstr "ѡ" - -#: src/ui_bookmark.c:716 -#, fuzzy -msgid "_Properties..." -msgstr "/༭/ѡ(_O)..." - -#: src/ui_bookmark.c:718 -#, fuzzy -msgid "Move _up" -msgstr "ƶ" - -#: src/ui_bookmark.c:720 -#, fuzzy -msgid "Move _down" -msgstr "ƶ" - -#: src/ui_bookmark.c:722 -#, fuzzy -msgid "_Remove" -msgstr "ɾ" - -#: src/ui_help.c:114 -#, c-format -msgid "" -"Unable to load:\n" -"%s" -msgstr "" -"޷װ룺\n" -"%s" - -#: src/ui_pathsel.c:438 src/utilops.c:2859 -#, c-format -msgid "Failed to rename %s to %s." -msgstr " %s Ϊ %s ʧܡ" - -#: src/ui_pathsel.c:494 src/utilops.c:1510 src/utilops.c:1703 -#, c-format -msgid "" -"Unable to delete file:\n" -"%s" -msgstr "" -"޷ɾļ\n" -"%s" - -#: src/ui_pathsel.c:495 src/utilops.c:1452 src/utilops.c:1472 -#: src/utilops.c:1684 src/utilops.c:1696 src/utilops.c:1704 -msgid "File deletion failed" -msgstr "ļɾʧ" - -#: src/ui_pathsel.c:537 src/ui_pathsel.c:545 src/utilops.c:1734 -msgid "Delete file" -msgstr "ɾļ" - -#: src/ui_pathsel.c:543 -#, c-format -msgid "" -"About to delete the file:\n" -" %s" -msgstr "" -"Ҫɾļ\n" -" %s" - -#: src/ui_pathsel.c:634 src/ui_pathsel.c:642 src/utilops.c:2428 -#: src/utilops.c:2690 -#, fuzzy -msgid "_Rename" -msgstr "" - -#: src/ui_pathsel.c:636 src/ui_pathsel.c:646 -#, fuzzy -msgid "Add _Bookmark" -msgstr "༭" - -#: src/ui_pathsel.c:644 -#, fuzzy -msgid "_Delete" -msgstr "ɾ" - -#: src/ui_pathsel.c:748 src/ui_pathsel.c:1053 src/utilops.c:2807 -#, fuzzy -msgid "New folder" -msgstr " - Geeqie" - -#: src/ui_pathsel.c:758 src/utilops.c:2762 src/view_dir.c:511 -#, fuzzy, c-format -msgid "" -"Unable to create folder:\n" -"%s" -msgstr "" -"޷Ŀ¼\n" -"%s" - -#: src/ui_pathsel.c:759 src/utilops.c:2763 src/view_dir.c:512 -#, fuzzy -msgid "Error creating folder" -msgstr "Ŀ¼" - -#: src/ui_pathsel.c:980 -msgid "All Files" -msgstr "ļ" - -#: src/ui_pathsel.c:1056 -msgid "Show hidden" -msgstr "ʾļ" - -#: src/ui_pathsel.c:1140 -msgid "Filter:" -msgstr "" - -#: src/ui_tabcomp.c:858 -#, fuzzy -msgid "Select path" -msgstr "ȫѡ" - -#: src/ui_tabcomp.c:874 -#, fuzzy -msgid "All files" -msgstr "ļ" - -#: src/utilops.c:346 src/utilops.c:811 src/utilops.c:1048 -msgid "Error copying file" -msgstr "ļ" - -#: src/utilops.c:347 -#, fuzzy, c-format -msgid "" -"%s\n" -"Unable to copy file:\n" -"%s\n" -"to:\n" -"%s" -msgstr "" -"޷ļ\n" -"%s\n" -"Ƶ\n" -"%s" - -#: src/utilops.c:390 src/utilops.c:816 src/utilops.c:1053 -msgid "Error moving file" -msgstr "ƶļ" - -#: src/utilops.c:391 -#, fuzzy, c-format -msgid "" -"%s\n" -"Unable to move file:\n" -"%s\n" -"to:\n" -"%s" -msgstr "" -"޷ļ\n" -"%s\n" -"ƶ\n" -"%s" - -#: src/utilops.c:439 src/utilops.c:1920 src/utilops.c:2642 -#: src/view_file_list.c:391 src/view_file_list.c:397 src/view_file_list.c:411 -msgid "Error renaming file" -msgstr "ļ" - -#: src/utilops.c:440 -#, fuzzy, c-format -msgid "" -"%s\n" -"Unable to rename file:\n" -"%s\n" -"to:\n" -"%s" -msgstr "" -"޷ļ\n" -"%s\n" -"Ϊ\n" -"%s" - -#: src/utilops.c:651 src/utilops.c:981 src/utilops.c:1893 src/utilops.c:2613 -msgid "Overwrite file" -msgstr "ļ" - -#: src/utilops.c:656 src/utilops.c:986 src/utilops.c:1898 src/utilops.c:2618 -#, fuzzy -msgid "Overwrite file?" -msgstr "ļ" - -#: src/utilops.c:657 src/utilops.c:987 -msgid "Replace existing file with new file." -msgstr "" - -#: src/utilops.c:661 -#, fuzzy -msgid "Overwrite _all" -msgstr "ļ" - -#: src/utilops.c:663 -#, fuzzy -msgid "S_kip all" -msgstr "" - -#: src/utilops.c:664 -#, fuzzy -msgid "_Skip" -msgstr "" - -#: src/utilops.c:665 src/utilops.c:991 src/utilops.c:1904 src/utilops.c:2624 -#, fuzzy -msgid "Existing file" -msgstr "ƶļ" - -#: src/utilops.c:665 src/utilops.c:991 src/utilops.c:1905 src/utilops.c:2625 -#, fuzzy -msgid "New file" -msgstr " - Geeqie" - -#: src/utilops.c:675 src/utilops.c:1000 src/utilops.c:2038 src/utilops.c:2094 -#: src/utilops.c:2167 src/utilops.c:2501 -#, fuzzy -msgid "Auto rename" -msgstr "˵" - -#: src/utilops.c:683 src/utilops.c:1008 src/utilops.c:2423 src/utilops.c:2682 -msgid "Rename" -msgstr "" - -#: src/utilops.c:724 -msgid "Source to copy matches destination" -msgstr "ƵԴĿͬ" - -#: src/utilops.c:725 -#, c-format -msgid "" -"Unable to copy file:\n" -"%s\n" -"to itself." -msgstr "" -"޷ļ\n" -"%s\n" -"Ƶ" - -#: src/utilops.c:729 -msgid "Source to move matches destination" -msgstr "ƶԴĿͬ" - -#: src/utilops.c:730 -#, c-format -msgid "" -"Unable to move file:\n" -"%s\n" -"to itself." -msgstr "" -"޷ļ\n" -"%s\n" -"ƶ" - -#: src/utilops.c:738 src/utilops.c:825 src/utilops.c:1408 src/utilops.c:1502 -#, fuzzy -msgid "Co_ntinue" -msgstr "" - -#: src/utilops.c:812 -#, fuzzy, c-format -msgid "" -"Unable to copy file:\n" -"%s\n" -"to:\n" -"%s\n" -"during multiple file copy." -msgstr "" -"ڶļʱ޷\n" -"%s Ƶ\n" -"%s\n" -"" - -#: src/utilops.c:817 -#, fuzzy, c-format -msgid "" -"Unable to move file:\n" -"%s\n" -"to:\n" -"%s\n" -"during multiple file move." -msgstr "" -"ڶļƶʱ޷\n" -"%s ƶ\n" -"%s\n" -"" - -#: src/utilops.c:972 -msgid "Source matches destination" -msgstr "ԴĿͬ" - -#: src/utilops.c:973 -msgid "Source and destination are the same, operation cancelled." -msgstr "ԴĿͬ" - -#: src/utilops.c:1049 -#, c-format -msgid "" -"Unable to copy file:\n" -"%s\n" -"to:\n" -"%s" -msgstr "" -"޷ļ\n" -"%s\n" -"Ƶ\n" -"%s" - -#: src/utilops.c:1054 -#, c-format -msgid "" -"Unable to move file:\n" -"%s\n" -"to:\n" -"%s" -msgstr "" -"޷ļ\n" -"%s\n" -"ƶ\n" -"%s" - -#: src/utilops.c:1102 -msgid "Invalid destination" -msgstr "ЧĿ" - -#: src/utilops.c:1103 -#, fuzzy -msgid "" -"When operating with multiple files, please select\n" -"a folder, not a file." -msgstr "" -"ڶļѡĿ¼\n" -"ļ" - -#: src/utilops.c:1108 -#, fuzzy -msgid "Please select an existing folder." -msgstr "ѡһѴڵĿ¼" - -#: src/utilops.c:1178 src/view_dir.c:338 -#, fuzzy -msgid "_Copy" -msgstr "" - -#: src/utilops.c:1181 -#, fuzzy -msgid "Copy file" -msgstr "" -"ļ\n" -"%s\n" -"Ϊ" - -#: src/utilops.c:1185 -#, fuzzy -msgid "Copy multiple files" -msgstr "ļƵ" - -#: src/utilops.c:1192 src/view_dir.c:340 -#, fuzzy -msgid "_Move" -msgstr "ƶ" - -#: src/utilops.c:1195 -#, fuzzy -msgid "Move file" -msgstr "" -"ļ\n" -"%s\n" -"Ϊ" - -#: src/utilops.c:1199 -#, fuzzy -msgid "Move multiple files" -msgstr "ļƶ" - -#: src/utilops.c:1214 src/utilops.c:1744 -#, fuzzy -msgid "File name:" -msgstr "" - -#: src/utilops.c:1218 -#, fuzzy -msgid "Choose the destination folder." -msgstr "ԴĿͬ" - -#: src/utilops.c:1389 -#, fuzzy -msgid "" -"\n" -"Unable to delete file by external command:\n" -msgstr "" -"޷ɾļ\n" -"%s" - -#: src/utilops.c:1401 -#, fuzzy -msgid "" -"\n" -" Continue multiple delete operation?" -msgstr "" -"޷ɾļ\n" -" %s\n" -" жļɾ" - -#: src/utilops.c:1452 src/utilops.c:1684 -msgid "Another operation in progress.\n" -msgstr "" - -#: src/utilops.c:1471 -#, fuzzy, c-format -msgid "" -"%s\n" -"Unable to delete files by external command.\n" -msgstr "" -"޷ɾļ\n" -"%s" - -#: src/utilops.c:1498 -#, c-format -msgid "" -"Unable to delete file:\n" -" %s\n" -" Continue multiple delete operation?" -msgstr "" -"޷ɾļ\n" -" %s\n" -" жļɾ" - -#: src/utilops.c:1569 -#, c-format -msgid "File %d of %d" -msgstr "" - -#: src/utilops.c:1637 -#, fuzzy -msgid "Delete files" -msgstr "ɾļ" - -#: src/utilops.c:1643 -#, fuzzy -msgid "Delete multiple files" -msgstr "ļ" - -#: src/utilops.c:1661 -#, fuzzy, c-format -msgid "Review %d files" -msgstr "%d ļ" - -#: src/utilops.c:1695 -#, fuzzy, c-format -msgid "" -"%s\n" -"Unable to delete file by external command:\n" -"%s" -msgstr "" -"޷ɾļ\n" -"%s" - -#: src/utilops.c:1740 -#, fuzzy -msgid "Delete file?" -msgstr "ɾļ" - -#: src/utilops.c:1899 src/utilops.c:2619 -msgid "Replace existing file by renaming new file." -msgstr "" - -#: src/utilops.c:1917 -#, c-format -msgid "" -"Unable to rename file:\n" -"%s\n" -" to:\n" -"%s" -msgstr "" -"޷ļ\n" -"%s\n" -" Ϊ\n" -"%s" - -#: src/utilops.c:2039 -msgid "Format must include at least one of the symbol characters '*' or '#'.\n" -msgstr "" - -#: src/utilops.c:2095 -msgid "" -"Can not auto rename with the selected\n" -"number set, one or more files exist that\n" -"match the resulting name list.\n" -msgstr "" - -#: src/utilops.c:2166 -#, fuzzy, c-format -msgid "" -"Failed to rename\n" -"%s\n" -"The number was %d." -msgstr " %s Ϊ %s ʧܡ" - -#: src/utilops.c:2427 -#, fuzzy -msgid "Rename multiple files" -msgstr "ļ" - -#: src/utilops.c:2461 -msgid "Original Name" -msgstr "" - -#: src/utilops.c:2499 -#, fuzzy -msgid "Manual rename" -msgstr "˵" - -#: src/utilops.c:2500 -msgid "Formatted rename" -msgstr "" - -#: src/utilops.c:2513 src/utilops.c:2697 -#, fuzzy -msgid "Original name:" -msgstr "" - -#: src/utilops.c:2516 src/utilops.c:2700 -#, fuzzy -msgid "New name:" -msgstr "" - -#: src/utilops.c:2534 -msgid "Begin text" -msgstr "" - -#: src/utilops.c:2542 src/utilops.c:2574 -msgid "Start #" -msgstr "" - -#: src/utilops.c:2548 -msgid "End text" -msgstr "" - -#: src/utilops.c:2556 -msgid "Padding:" -msgstr "" - -#: src/utilops.c:2566 -msgid "Format (* = original name, ## = numbers)" -msgstr "" - -#: src/utilops.c:2641 src/view_file_list.c:410 -#, c-format -msgid "" -"Unable to rename file:\n" -"%s\n" -"to:\n" -"%s" -msgstr "" -"޷ļ\n" -"%s\n" -"Ϊ\n" -"%s" - -#: src/utilops.c:2687 -#, fuzzy -msgid "Rename file" -msgstr "" -"ļ\n" -"%s\n" -"Ϊ" - -#: src/utilops.c:2748 src/utilops.c:2841 -#, fuzzy, c-format -msgid "" -"The folder:\n" -"%s\n" -"already exists." -msgstr "" -"Ŀ¼\n" -"%s\n" -"Ѵڡ" - -#: src/utilops.c:2749 src/utilops.c:2842 -#, fuzzy -msgid "Folder exists" -msgstr "ƽ" - -#: src/utilops.c:2754 src/utilops.c:2850 -#, c-format -msgid "" -"The path:\n" -"%s\n" -"already exists as a file." -msgstr "" -"·\n" -"%s\n" -"һѴڵļ" - -#: src/utilops.c:2812 -#, fuzzy, c-format -msgid "" -"Create folder in:\n" -"%s\n" -"named:" -msgstr "" -"\n" -"%s\n" -"Ŀ¼Ϊ" - -#: src/utilops.c:2851 src/utilops.c:2860 -#, fuzzy -msgid "Rename failed" -msgstr "" -"ļ\n" -"%s\n" -"Ϊ" - -#: src/utilops.c:2967 -#, fuzzy -msgid "Location" -msgstr "ͼ" - -#: src/utilops.c:3145 -#, fuzzy, c-format -msgid "" -"Unable to delete folder:\n" -"\n" -"%s" -msgstr "" -"޷ɾļ\n" -"%s" - -#: src/utilops.c:3152 -#, c-format -msgid "" -"Removal of folder contents failed at this file:\n" -"\n" -"%s" -msgstr "" - -#: src/utilops.c:3207 src/utilops.c:3291 -#, fuzzy -msgid "Delete folder" -msgstr "ѡ" - -#: src/utilops.c:3211 -#, c-format -msgid "" -"This will delete the symbolic link:\n" -"\n" -"%s\n" -"\n" -"The folder this link points to will not be deleted." -msgstr "" - -#: src/utilops.c:3215 -msgid "Delete symbolic link to folder?" -msgstr "" - -#: src/utilops.c:3230 -#, fuzzy, c-format -msgid "" -"Unable to remove folder %s\n" -"Permissions do not allow writing to the folder." -msgstr "" -"޷ļ\n" -"%s\n" -"ƶ" - -#: src/utilops.c:3242 -#, fuzzy, c-format -msgid "Unable to list contents of folder %s" -msgstr "" -"޷Ŀ¼\n" -"%s" - -#: src/utilops.c:3256 src/utilops.c:3264 -#, fuzzy -msgid "Folder contains subfolders" -msgstr "Ƿļ" - -#: src/utilops.c:3260 -#, c-format -msgid "" -"Unable to delete the folder:\n" -"\n" -"%s\n" -"\n" -"This folder contains subfolders which must be moved before it can be deleted." -msgstr "" - -#: src/utilops.c:3268 -#, fuzzy -msgid "Subfolders:" -msgstr "ƽ" - -#: src/utilops.c:3295 -#, c-format -msgid "" -"This will delete the folder:\n" -"\n" -"%s\n" -"\n" -"The contents of this folder will also be deleted." -msgstr "" - -#: src/utilops.c:3299 -#, fuzzy -msgid "Delete folder?" -msgstr "ɾļ" - -#: src/utilops.c:3303 -#, fuzzy -msgid "Contents:" -msgstr "//(_A)" - -#: src/view_dir.c:30 -#, fuzzy -msgid "_Tree" -msgstr "/鿴/" - -#: src/view_dir.c:502 -msgid "new_folder" -msgstr "" - -#: src/view_dir.c:587 -msgid "_Up to parent" -msgstr "" - -#: src/view_dir.c:592 -#, fuzzy -msgid "_Slideshow" -msgstr "õƬ" - -#: src/view_dir.c:594 -msgid "Slideshow recursive" -msgstr "ݹõƬ" - -#: src/view_dir.c:598 -#, fuzzy -msgid "Find _duplicates..." -msgstr "ѰҸ..." - -#: src/view_dir.c:600 -msgid "Find duplicates recursive..." -msgstr "ݹѰҸ..." - -#: src/view_dir.c:605 -msgid "_New folder..." -msgstr "" - -#: src/view_dir.c:619 -#, fuzzy -msgid "_View as" -msgstr "/鿴(_V)" - -#: src/view_dir.c:631 -#, fuzzy -msgid "Show _hidden files" -msgstr "ʾļ" - -#: src/view_dir.c:634 src/view_file.c:606 -#, fuzzy -msgid "Re_fresh" -msgstr "ˢ" - -#: src/view_file.c:588 -#, fuzzy -msgid "_Sort" -msgstr "" - -#: src/view_file.c:591 -#, fuzzy -msgid "View as _icons" -msgstr "ߴ" - -#: src/view_file.c:597 -#, fuzzy -msgid "Show _thumbnails" -msgstr "ͼ" - -#: src/view_file_list.c:390 -#, c-format -msgid "" -"Invalid file name:\n" -"%s" -msgstr "" -"Ƿļ\n" -"%s" - -#: src/view_file_list.c:1821 -msgid "SC" -msgstr "" - -#: src/window.c:226 -#, fuzzy -msgid "Help" -msgstr "/(_H)" - -#, fuzzy -#~ msgid "Change to folder:" -#~ msgstr "صĿ¼" - -#, fuzzy -#~ msgid "Reset fullscreen info string" -#~ msgstr "ȫ" - -#, fuzzy -#~ msgid "Always show fullscreen info" -#~ msgstr "˳ȫ" - -#, fuzzy -#~ msgid "Fullscreen info string" -#~ msgstr "ȫ" - -#, fuzzy -#~ msgid "List" -#~ msgstr "/鿴/б(_R)" - -#, fuzzy -#~ msgid "View as _tree" -#~ msgstr "/鿴/ȫ(_U)" - -#~ msgid "Show entries that begin with a dot" -#~ msgstr "ʾļ" - -#~ msgid "Find duplicates - Geeqie" -#~ msgstr "ļ - Geeqie" - -#~ msgid "Geeqie full screen" -#~ msgstr "Geeqie ȫ" - -#~ msgid "Geeqie Tools" -#~ msgstr "Geeqie " - -#~ msgid "Help - Geeqie" -#~ msgstr " - Geeqie" - -#~ msgid "Geeqie - exit" -#~ msgstr "Geeqie - ˳" - -#, fuzzy -#~ msgid "Quit Geeqie" -#~ msgstr " - Geeqie" - -#, fuzzy -#~ msgid "Pan View - Geeqie" -#~ msgstr " - Geeqie" - -#, fuzzy -#~ msgid "About - Geeqie" -#~ msgstr " - Geeqie" - -#, fuzzy -#~ msgid "Print - Geeqie" -#~ msgstr " - Geeqie" - -#, fuzzy -#~ msgid "Copy - Geeqie" -#~ msgstr " - Geeqie" - -#, fuzzy -#~ msgid "Move - Geeqie" -#~ msgstr " - Geeqie" - -#, fuzzy -#~ msgid "Delete files - Geeqie" -#~ msgstr "ɾļ" - -#, fuzzy -#~ msgid "Delete file - Geeqie" -#~ msgstr "ɾļ" - -#, fuzzy -#~ msgid "Rename - Geeqie" -#~ msgstr " - Geeqie" - -#, fuzzy -#~ msgid "New folder - Geeqie" -#~ msgstr " - Geeqie" - -#~ msgid "/File/tear1" -#~ msgstr "/ļ/Ƭ1" - -#~ msgid "/File/_New collection" -#~ msgstr "/ļ/ͼ" - -#~ msgid "/File/_Open collection..." -#~ msgstr "/ļ/ͼ(_O)..." - -#~ msgid "/File/sep1" -#~ msgstr "/ļ/һ" - -#, fuzzy -#~ msgid "/File/_Search..." -#~ msgstr "/ļ/(_R)..." - -#~ msgid "/File/_Find duplicates..." -#~ msgstr "/ļ/ѰҸ(_F)..." - -#~ msgid "/File/sep2" -#~ msgstr "/ļ/ڶ" - -#, fuzzy -#~ msgid "/File/_Print..." -#~ msgstr "/ļ/(_R)..." - -#, fuzzy -#~ msgid "/File/N_ew folder..." -#~ msgstr "/ļ/ɾ(_D)..." - -#~ msgid "/File/sep3" -#~ msgstr "/ļ/" - -#~ msgid "/File/_Copy..." -#~ msgstr "/ļ/(_C)..." - -#~ msgid "/File/_Move..." -#~ msgstr "/ļ/ƶ(_M)..." - -#~ msgid "/File/_Rename..." -#~ msgstr "/ļ/(_R)..." - -#~ msgid "/File/_Delete..." -#~ msgstr "/ļ/ɾ(_D)..." - -#~ msgid "/File/sep4" -#~ msgstr "/ļ/Ķ" - -#, fuzzy -#~ msgid "/File/C_lose window" -#~ msgstr "رմ" - -#, fuzzy -#~ msgid "/File/_Quit" -#~ msgstr "/ļ/˳(_X)" - -#~ msgid "/_Edit" -#~ msgstr "/༭(_E)" - -#~ msgid "/Edit/tear1" -#~ msgstr "/༭/Ƭ1" - -#~ msgid "/Edit/editor1" -#~ msgstr "/༭/༭1" - -#~ msgid "/Edit/editor2" -#~ msgstr "/༭/༭2" - -#~ msgid "/Edit/editor3" -#~ msgstr "/༭/༭3" - -#~ msgid "/Edit/editor4" -#~ msgstr "/༭/༭4" - -#~ msgid "/Edit/editor5" -#~ msgstr "/༭/༭5" - -#~ msgid "/Edit/editor6" -#~ msgstr "/༭/༭6" - -#~ msgid "/Edit/editor7" -#~ msgstr "/༭/༭7" - -#~ msgid "/Edit/editor8" -#~ msgstr "/༭/༭8" - -#, fuzzy -#~ msgid "/Edit/editor9" -#~ msgstr "/༭/༭1" - -#, fuzzy -#~ msgid "/Edit/editor0" -#~ msgstr "/༭/༭1" - -#~ msgid "/Edit/sep1" -#~ msgstr "/༭/һ" - -#~ msgid "/Edit/_Adjust" -#~ msgstr "/༭/(_A)" - -#, fuzzy -#~ msgid "/Edit/_Properties" -#~ msgstr "/༭/ѡ(_O)..." - -#~ msgid "/Edit/Adjust/tear1" -#~ msgstr "/༭//Ƭ1" - -#~ msgid "/Edit/Adjust/_Rotate clockwise" -#~ msgstr "/༭//˳ʱת(_R)" - -#~ msgid "/Edit/Adjust/Rotate _counterclockwise" -#~ msgstr "/༭//ʱת(_C)" - -#~ msgid "/Edit/Adjust/Rotate 1_80" -#~ msgstr "/༭//ת 180 " - -#~ msgid "/Edit/Adjust/_Mirror" -#~ msgstr "/༭//(_M)" - -#~ msgid "/Edit/Adjust/_Flip" -#~ msgstr "/༭//ת(_F)" - -#~ msgid "/Edit/sep2" -#~ msgstr "/༭/ڶ" - -#~ msgid "/Edit/Select _all" -#~ msgstr "/༭/ȫѡ(_A)" - -#~ msgid "/Edit/Select _none" -#~ msgstr "/༭/ѡ(_N)" - -#~ msgid "/Edit/sep3" -#~ msgstr "/༭/" - -#~ msgid "/Edit/_Options..." -#~ msgstr "/༭/ѡ(_O)..." - -#~ msgid "/Edit/sep4" -#~ msgstr "/༭/Ķ" - -#~ msgid "/Edit/Set as _wallpaper" -#~ msgstr "/༭/Ϊǽֽ(_W)" - -#~ msgid "/_View" -#~ msgstr "/鿴(_V)" - -#~ msgid "/View/tear1" -#~ msgstr "/鿴/Ƭ1" - -#~ msgid "/View/Zoom _in" -#~ msgstr "/鿴/Ŵ(_I)" - -#~ msgid "/View/Zoom _out" -#~ msgstr "/鿴/С(_O)" - -#~ msgid "/View/Zoom _1:1" -#~ msgstr "/鿴/ŵ 1:1(_1)" - -#~ msgid "/View/sep1" -#~ msgstr "/鿴/һ" - -#~ msgid "/View/_Thumbnails" -#~ msgstr "/鿴/ͼ(_T)" - -#~ msgid "/View/sep2" -#~ msgstr "/鿴/ڶ" - -#~ msgid "/View/F_ull screen" -#~ msgstr "/鿴/ȫ(_U)" - -#~ msgid "/View/sep3" -#~ msgstr "/鿴/" - -#, fuzzy -#~ msgid "/View/_Hide file list" -#~ msgstr "/鿴/()ļб(_H)" - -#, fuzzy -#~ msgid "/View/sep4" -#~ msgstr "/鿴/һ" - -#, fuzzy -#~ msgid "/View/Sort _manager" -#~ msgstr "/鿴/Ŵ(_I)" - -#, fuzzy -#~ msgid "/View/sep5" -#~ msgstr "/鿴/һ" - -#~ msgid "/View/Toggle _slideshow" -#~ msgstr "/鿴/лõʾ(_S)" - -#~ msgid "/View/_Refresh Lists" -#~ msgstr "/鿴/б(_R)" - -#~ msgid "/Help/tear1" -#~ msgstr "//Ƭ1" - -#~ msgid "/Help/sep1" -#~ msgstr "//һ" - -#~ msgid "/Help/_About" -#~ msgstr "//(_A)" - -#~ msgid "Geeqie configuration" -#~ msgstr "Geeqie " - -#~ msgid "/Edit/_Remove old thumbnails" -#~ msgstr "/༭/ɾԭͼ(_R)" - -#, fuzzy -#~ msgid "path" -#~ msgstr "·" - -#~ msgid "Save" -#~ msgstr "" - -#~ msgid "" -#~ "Overwrite collection file:\n" -#~ "%s" -#~ msgstr "" -#~ "ͼļ\n" -#~ "%s" - -#~ msgid "Save collection as:" -#~ msgstr "ͼΪ" - -#~ msgid "Open collection from:" -#~ msgstr "Ӵ˴ͼ񼯣" - -#~ msgid "Open" -#~ msgstr "" - -#~ msgid "Append collection from:" -#~ msgstr "Ӵ˴׷ͼ񼯣" - -#~ msgid "Exit" -#~ msgstr "˳" - -#~ msgid "Ok" -#~ msgstr "ȷ" - -#, fuzzy -#~ msgid "Initial folder" -#~ msgstr "Ƿļ" - -#, fuzzy -#~ msgid "On startup, change to this folder:" -#~ msgstr "ʱı䵽Ŀ¼" - -#~ msgid "Zoom (scaling):" -#~ msgstr "ţ" - -#~ msgid "Place dialogs under mouse" -#~ msgstr "Իλ" - -#~ msgid "Include files of type:" -#~ msgstr "ļͣ" - -#~ msgid "Remove" -#~ msgstr "ɾ" - -#, fuzzy -#~ msgid "Point size:" -#~ msgstr "ƽ" - -#~ msgid "" -#~ "Overwrite file:\n" -#~ " %s\n" -#~ " with:\n" -#~ " %s" -#~ msgstr "" -#~ "ļ\n" -#~ " %s\n" -#~ " ԣ\n" -#~ " %s" - -#~ msgid "Yes" -#~ msgstr "" - -#~ msgid "Yes to all" -#~ msgstr "ȫ" - -#~ msgid "" -#~ "Overwrite file:\n" -#~ "%s\n" -#~ " with:\n" -#~ "%s" -#~ msgstr "" -#~ "ļ\n" -#~ " %s\n" -#~ " ԣ\n" -#~ " %s" - -#~ msgid "" -#~ "Copy file:\n" -#~ "%s\n" -#~ "to:" -#~ msgstr "" -#~ "ļ\n" -#~ "%s\n" -#~ "" - -#~ msgid "" -#~ "Move file:\n" -#~ "%s\n" -#~ "to:" -#~ msgstr "" -#~ "ļ\n" -#~ "%s\n" -#~ "ƶ" - -#~ msgid "About to delete multiple files..." -#~ msgstr "Ҫɾļ..." - -#~ msgid "" -#~ "Overwrite file:\n" -#~ "%s\n" -#~ "by renaming:\n" -#~ "%s" -#~ msgstr "" -#~ "ļ\n" -#~ "%s\n" -#~ "Ϊ\n" -#~ "%s" - -#~ msgid "to:" -#~ msgstr "" - -#~ msgid "Create" -#~ msgstr "" - -#~ msgid "Initial directory" -#~ msgstr "ʼĿ¼" - -#~ msgid "" -#~ "Unable to create directory:\n" -#~ "%s" -#~ msgstr "" -#~ "޷Ŀ¼\n" -#~ "%s" - -#~ msgid "Error creating directory" -#~ msgstr "Ŀ¼" - -#, fuzzy -#~ msgid "/View/Image _details" -#~ msgstr "/鿴/лõʾ(_S)" - -#~ msgid "Add contents" -#~ msgstr "" - -#~ msgid "Add contents recursive" -#~ msgstr "ݹ" - -#~ msgid "Skip directories" -#~ msgstr "Ŀ¼" - -#~ msgid "Invalid directory" -#~ msgstr "ЧĿ¼" - -#~ msgid "Geeqie - copy" -#~ msgstr "Geeqie - " - -#~ msgid "Geeqie - move" -#~ msgstr "Geeqie - ƶ" - -#~ msgid "Directory exists" -#~ msgstr "Ŀ¼Ѵ" - -#~ msgid "Geeqie - new directory" -#~ msgstr "Geeqie - ½Ŀ¼" - -#~ msgid "/File/Create _Dir..." -#~ msgstr "/ļ/Ŀ¼(_D)..." - -#~ msgid "Edit" -#~ msgstr "༭" - -#~ msgid "Insert file drops at pointer location" -#~ msgstr "λòϷļ" - -#~ msgid "File named %s already exists." -#~ msgstr "Ϊ %s ļѴڡ" - -#, fuzzy -#~ msgid "top" -#~ msgstr "" - -#~ msgid "Geeqie running: %s\n" -#~ msgstr "Geeqie У%s\n" - -#~ msgid "Electric Eyes" -#~ msgstr "" - -#~ msgid "Apply" -#~ msgstr "Ӧ" - -#~ msgid "format: [.foo;.bar]" -#~ msgstr "ʽ[.foo;.bar]" - -#~ msgid "Unable to delete dir: %s\n" -#~ msgstr "޷ɾĿ¼: %s\n" - -#~ msgid "create dir failed: %s\n" -#~ msgstr "Ŀ¼ʧ: %s\n" - -#~ msgid " Ok " -#~ msgstr " ȷ " - -#~ msgid "External Editors" -#~ msgstr "ڲ༭" diff -Nru geeqie-1.0/po/zh_CN.po geeqie-1.1/po/zh_CN.po --- geeqie-1.0/po/zh_CN.po 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/po/zh_CN.po 2012-08-12 20:13:40.000000000 +0000 @@ -0,0 +1,5343 @@ +msgid "" +msgstr "" +"Project-Id-Version: gqview 0.9.5\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-05-13 22:14+0200\n" +"PO-Revision-Date: 2001-02-21 17:46+0800\n" +"Last-Translator: Wu Yulun \n" +"Language-Team: Chinese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=gb2312\n" +"Content-Transfer-Encoding: 8bit\n" + +#: src/bar_exif.c:444 +msgid "Tag" +msgstr "" + +#: src/bar_exif.c:445 src/dupe.c:2646 src/dupe.c:3167 src/print.c:3232 +#: src/search.c:2760 src/utilops.c:2971 src/view_file_list.c:1820 +msgid "Name" +msgstr "" + +#: src/bar_exif.c:446 +msgid "Value" +msgstr "" + +#: src/bar_exif.c:447 +#, fuzzy +msgid "Format" +msgstr "ͨ" + +#: src/bar_exif.c:448 +msgid "Elements" +msgstr "" + +#: src/bar_exif.c:449 src/preferences.c:1131 +msgid "Description" +msgstr "" + +#: src/bar_exif.c:576 src/info.c:125 src/preferences.c:1274 +#, fuzzy +msgid "Exif" +msgstr "˳" + +#: src/bar_exif.c:650 +msgid "Advanced view" +msgstr "" + +#: src/bar_info.c:35 +msgid "Favorite" +msgstr "" + +#: src/bar_info.c:36 +#, fuzzy +msgid "Todo" +msgstr "ƽ" + +#: src/bar_info.c:37 +msgid "People" +msgstr "" + +#: src/bar_info.c:38 +msgid "Places" +msgstr "" + +#: src/bar_info.c:39 +msgid "Art" +msgstr "" + +#: src/bar_info.c:40 +#, fuzzy +msgid "Nature" +msgstr "" + +#: src/bar_info.c:41 +msgid "Possessions" +msgstr "" + +#: src/bar_info.c:801 +msgid "Keyword Presets" +msgstr "" + +#: src/bar_info.c:804 +msgid "Favorite keywords list" +msgstr "" + +#: src/bar_info.c:1301 src/info.c:189 src/search.c:2699 +msgid "Keywords" +msgstr "" + +#: src/bar_info.c:1315 src/info.c:825 src/pan-view.c:1542 src/print.c:2632 +#, fuzzy +msgid "Filename:" +msgstr "" + +#: src/bar_info.c:1316 src/info.c:391 +#, fuzzy +msgid "File date:" +msgstr "" + +#: src/bar_info.c:1336 +msgid "Keywords:" +msgstr "" + +#: src/bar_info.c:1404 +#, fuzzy +msgid "Comment:" +msgstr "֮Ƚϣ" + +#: src/bar_info.c:1428 +msgid "Edit favorite keywords list." +msgstr "" + +#: src/bar_info.c:1432 +msgid "Add keywords to selected files" +msgstr "" + +#: src/bar_info.c:1435 +msgid "Add keywords to selected files, replacing existing ones" +msgstr "" + +#: src/bar_info.c:1438 +#, fuzzy +msgid "Add comment to selected files" +msgstr "" +"Ҫɾļ\n" +" %s" + +#: src/bar_info.c:1441 +msgid "Add comment to selected files, replacing existing one" +msgstr "" + +#: src/bar_info.c:1446 +#, fuzzy +msgid "Save comment now" +msgstr "ͼ" + +#: src/bar_sort.c:218 +#, fuzzy, c-format +msgid "" +"Unable to remove symbolic link:\n" +"%s" +msgstr "" +"޷ļ\n" +"%s\n" +"ƶ\n" +"%s" + +#: src/bar_sort.c:219 +#, fuzzy +msgid "Unlink failed" +msgstr "ɾʧ" + +#: src/bar_sort.c:300 +#, fuzzy, c-format +msgid "" +"Unable to create symbolic link:\n" +"%s" +msgstr "" +"޷Ŀ¼\n" +"%s" + +#: src/bar_sort.c:301 +msgid "Link failed" +msgstr "" + +#: src/bar_sort.c:452 +#, fuzzy, c-format +msgid "" +"The collection:\n" +"%s\n" +"already exists." +msgstr "" +"Ŀ¼\n" +"%s\n" +"Ѵڡ" + +#: src/bar_sort.c:453 +#, fuzzy +msgid "Collection exists" +msgstr "ͼΪ" + +#: src/bar_sort.c:467 src/collect.c:1083 src/collect-dlg.c:85 +#, c-format +msgid "" +"Failed to save the collection:\n" +"%s" +msgstr "" +"ͼʧܣ\n" +"%s" + +#: src/bar_sort.c:468 src/collect.c:1084 src/collect-dlg.c:86 +msgid "Save Failed" +msgstr "ʧ" + +#: src/bar_sort.c:502 src/bar_sort.c:628 +msgid "Add Bookmark" +msgstr "" + +#: src/bar_sort.c:506 +#, fuzzy +msgid "Add Collection" +msgstr "ͼ" + +#: src/bar_sort.c:523 src/ui_bookmark.c:601 +#, fuzzy +msgid "Name:" +msgstr "" + +#: src/bar_sort.c:585 +#, fuzzy +msgid "Sort Manager" +msgstr "" + +#: src/bar_sort.c:594 src/pan-view.c:2395 src/ui_pathsel.c:1103 +#, fuzzy +msgid "Folders" +msgstr "ƽ" + +#: src/bar_sort.c:595 src/main.c:567 +msgid "Collections" +msgstr "ͼ" + +#: src/bar_sort.c:603 src/utilops.c:1177 +msgid "Copy" +msgstr "" + +#: src/bar_sort.c:606 src/utilops.c:1191 +msgid "Move" +msgstr "ƶ" + +#: src/bar_sort.c:609 +msgid "Link" +msgstr "" + +#: src/bar_sort.c:615 +#, fuzzy +msgid "Add image" +msgstr "%d ͼ" + +#: src/bar_sort.c:618 +#, fuzzy +msgid "Add selection" +msgstr "ѡ" + +#: src/bar_sort.c:631 +msgid "Undo last image" +msgstr "" + +#: src/cache.c:175 +#, fuzzy, c-format +msgid "" +"error saving sim cache data: %s\n" +"error: %s\n" +msgstr "ļ%s\n" + +#: src/cache_maint.c:127 src/cache_maint.c:689 src/cache_maint.c:902 +#: src/editors.c:717 +#, fuzzy +msgid "done" +msgstr "" + +#: src/cache_maint.c:306 +#, fuzzy +msgid "Removing old metadata..." +msgstr "ڶȡ..." + +#: src/cache_maint.c:310 +#, fuzzy +msgid "Clearing cached thumbnails..." +msgstr "ͼ..." + +#: src/cache_maint.c:314 src/cache_maint.c:1056 +#, fuzzy +msgid "Removing old thumbnails..." +msgstr "ɵͼ..." + +#: src/cache_maint.c:317 src/cache_maint.c:1059 +msgid "Maintenance" +msgstr "" + +#: src/cache_maint.c:800 src/utilops.c:1107 +#, fuzzy +msgid "Invalid folder" +msgstr "Ƿļ" + +#: src/cache_maint.c:801 +msgid "The specified folder can not be found." +msgstr "" + +#: src/cache_maint.c:829 src/cache_maint.c:843 src/cache_maint.c:1227 +#, fuzzy +msgid "Create thumbnails" +msgstr "ͼ" + +#: src/cache_maint.c:837 src/cache_maint.c:1066 +#, fuzzy +msgid "S_tart" +msgstr "" + +#: src/cache_maint.c:850 src/preferences.c:1407 +#, fuzzy +msgid "Folder:" +msgstr "ƽ" + +#: src/cache_maint.c:853 +#, fuzzy +msgid "Select folder" +msgstr "ѡ" + +#: src/cache_maint.c:857 +#, fuzzy +msgid "Include subfolders" +msgstr "Ƿļ" + +#: src/cache_maint.c:858 +msgid "Store thumbnails local to source images" +msgstr "" + +#: src/cache_maint.c:867 src/cache_maint.c:1075 +msgid "click start to begin" +msgstr "" + +#: src/cache_maint.c:1005 src/editors.c:647 +#, fuzzy +msgid "running..." +msgstr "ڱȽ..." + +#: src/cache_maint.c:1051 +msgid "Clearing thumbnails..." +msgstr "ͼ..." + +#: src/cache_maint.c:1117 src/cache_maint.c:1120 src/cache_maint.c:1202 +#: src/cache_maint.c:1222 +msgid "Clear cache" +msgstr "" + +#: src/cache_maint.c:1121 +msgid "" +"This will remove all thumbnails that have\n" +"been saved to disk, continue?" +msgstr "" +"⽫ɾ浽ϵ\n" +"ͼ" + +#: src/cache_maint.c:1172 +#, fuzzy +msgid "Cache Maintenance" +msgstr " - Geeqie" + +#: src/cache_maint.c:1184 +msgid "Cache and Data Maintenance" +msgstr "" + +#: src/cache_maint.c:1188 +#, fuzzy +msgid "Thumbnail cache" +msgstr "Geeqie ȫ" + +#: src/cache_maint.c:1190 src/cache_maint.c:1210 src/cache_maint.c:1238 +#: src/pan-view.c:1544 src/pan-view.c:2384 src/preferences.c:1333 +#: src/utilops.c:1747 +#, fuzzy +msgid "Location:" +msgstr "ͼ" + +#: src/cache_maint.c:1197 src/cache_maint.c:1217 src/cache_maint.c:1245 +#, fuzzy +msgid "Clean up" +msgstr "" + +#: src/cache_maint.c:1200 src/cache_maint.c:1220 +msgid "Remove orphaned or outdated thumbnails." +msgstr "" + +#: src/cache_maint.c:1205 src/cache_maint.c:1225 +#, fuzzy +msgid "Delete all cached thumbnails." +msgstr "ͼ" + +#: src/cache_maint.c:1208 +#, fuzzy +msgid "Shared thumbnail cache" +msgstr "ͼ" + +#: src/cache_maint.c:1231 +#, fuzzy +msgid "Render" +msgstr "" + +#: src/cache_maint.c:1234 +msgid "Render thumbnails for a specific folder." +msgstr "" + +#: src/cache_maint.c:1236 +msgid "Metadata" +msgstr "" + +#: src/cache_maint.c:1248 +msgid "Remove orphaned keywords and comments." +msgstr "" + +#: src/cellrenderericon.c:127 +msgid "Pixbuf Object" +msgstr "" + +#: src/cellrenderericon.c:128 +msgid "The pixbuf to render" +msgstr "" + +#: src/cellrenderericon.c:135 src/print.c:3439 +msgid "Text" +msgstr "" + +#: src/cellrenderericon.c:136 +msgid "Text to render" +msgstr "" + +#: src/cellrenderericon.c:143 +msgid "Background color" +msgstr "" + +#: src/cellrenderericon.c:144 +msgid "Background color as a GdkColor" +msgstr "" + +#: src/cellrenderericon.c:151 +msgid "Foreground color" +msgstr "" + +#: src/cellrenderericon.c:152 +msgid "Foreground color as a GdkColor" +msgstr "" + +#: src/cellrenderericon.c:159 +msgid "Focus" +msgstr "" + +#: src/cellrenderericon.c:160 +msgid "Draw focus indicator" +msgstr "" + +#: src/cellrenderericon.c:167 +msgid "Fixed width" +msgstr "" + +#: src/cellrenderericon.c:168 +msgid "Width of cell" +msgstr "" + +#: src/cellrenderericon.c:176 +msgid "Fixed height" +msgstr "" + +#: src/cellrenderericon.c:177 +msgid "Height of icon excluding text" +msgstr "" + +#: src/cellrenderericon.c:185 +msgid "Background set" +msgstr "" + +#: src/cellrenderericon.c:186 +msgid "Whether this tag affects the background color" +msgstr "" + +#: src/cellrenderericon.c:193 +msgid "Foreground set" +msgstr "" + +#: src/cellrenderericon.c:194 +msgid "Whether this tag affects the foreground color" +msgstr "" + +#: src/cellrenderericon.c:201 +#, fuzzy +msgid "Show text" +msgstr "ʾļ" + +#: src/cellrenderericon.c:202 +msgid "Whether the text is displayed" +msgstr "" + +#: src/collect.c:353 src/image.c:178 src/image-overlay.c:437 +#: src/image-overlay.c:512 +#, c-format +msgid "Untitled" +msgstr "ޱ" + +#: src/collect.c:357 +#, c-format +msgid "Untitled (%d)" +msgstr "ޱ (%d)" + +#: src/collect.c:1002 +#, fuzzy, c-format +msgid "%s - Collection - %s" +msgstr "%s - Geeqie ͼ" + +#: src/collect.c:1120 src/collect.c:1124 +msgid "Close collection" +msgstr "رͼ" + +#: src/collect.c:1125 +msgid "" +"Collection has been modified.\n" +"Save first?" +msgstr "" +"ͼ޸ġ\n" +"ȱ" + +#: src/collect.c:1128 +msgid "_Discard" +msgstr "" + +#: src/collect-dlg.c:59 +#, fuzzy, c-format +msgid "" +"Specified path:\n" +"%s\n" +"is a folder, collections are files" +msgstr "" +"ָ·\n" +"%s\n" +"ǸĿ¼ͼļ" + +#: src/collect-dlg.c:60 +msgid "Invalid filename" +msgstr "Ƿļ" + +#: src/collect-dlg.c:69 +msgid "Overwrite File" +msgstr "ļ" + +#: src/collect-dlg.c:74 +#, fuzzy +msgid "Overwrite existing file?" +msgstr "ļ" + +#: src/collect-dlg.c:76 src/utilops.c:660 src/utilops.c:990 src/utilops.c:1902 +#: src/utilops.c:2622 +#, fuzzy +msgid "_Overwrite" +msgstr "" + +#: src/collect-dlg.c:171 +msgid "Save collection" +msgstr "ͼ" + +#: src/collect-dlg.c:178 +msgid "Open collection" +msgstr "ͼ" + +#: src/collect-dlg.c:186 +msgid "Append collection" +msgstr "׷ͼ" + +#: src/collect-dlg.c:187 +#, fuzzy +msgid "_Append" +msgstr "׷" + +#: src/collect-dlg.c:205 +msgid "Collection Files" +msgstr "ͼļ" + +#: src/collect-dlg.c:223 +msgid "Collection empty" +msgstr "ͼΪ" + +#: src/collect-dlg.c:224 +msgid "The current collection is empty, save aborted." +msgstr "ǰͼΪգ档" + +#: src/collect-io.c:343 +#, fuzzy, c-format +msgid "failed to open collection (write) \"%s\"\n" +msgstr "" +"ͼʧܣ\n" +"%s" + +#: src/collect-io.c:368 +#, fuzzy, c-format +msgid "" +"error saving collection file: %s\n" +"error: %s\n" +msgstr "ļ%s\n" + +#: src/collect-table.c:167 src/layout.c:377 src/layout_util.c:965 +msgid "Empty" +msgstr "" + +#: src/collect-table.c:171 +#, c-format +msgid "%d images (%d)" +msgstr "%d ͼ (%d)" + +#: src/collect-table.c:175 +#, c-format +msgid "%d images" +msgstr "%d ͼ" + +#: src/collect-table.c:189 src/dupe.c:1328 src/search.c:304 +#: src/view_file_icon.c:1779 src/view_file_icon.c:1895 +#: src/view_file_list.c:915 src/view_file_list.c:1031 +msgid "Loading thumbs..." +msgstr "װͼ..." + +#: src/collect-table.c:776 src/dupe.c:2239 src/dupe.c:2554 +#: src/layout_util.c:1042 src/search.c:983 +#, fuzzy +msgid "_View" +msgstr "/鿴(_V)" + +#: src/collect-table.c:778 src/dupe.c:2241 src/dupe.c:2556 src/img-view.c:1282 +#: src/layout_image.c:759 src/pan-view.c:2814 src/search.c:985 +#: src/view_file.c:564 +#, fuzzy +msgid "View in _new window" +msgstr "´в鿴" + +#: src/collect-table.c:781 src/dupe.c:2274 src/dupe.c:2564 src/search.c:1014 +#, fuzzy +msgid "Rem_ove" +msgstr "ɾ" + +#: src/collect-table.c:784 +msgid "Append from file list" +msgstr "ļб׷" + +#: src/collect-table.c:786 +msgid "Append from collection..." +msgstr "ͼ׷..." + +#: src/collect-table.c:789 src/dupe.c:2244 src/dupe.c:2559 src/search.c:988 +msgid "Select all" +msgstr "ȫѡ" + +#: src/collect-table.c:791 src/dupe.c:2246 src/dupe.c:2561 src/search.c:990 +msgid "Select none" +msgstr "ѡ" + +#: src/collect-table.c:799 src/dupe.c:2255 src/img-view.c:1280 +#: src/layout_image.c:756 src/layout_util.c:1096 src/pan-view.c:2811 +#: src/search.c:995 src/view_file.c:562 +#, fuzzy +msgid "_Properties" +msgstr "/༭/ѡ(_O)..." + +#: src/collect-table.c:802 src/dupe.c:2262 src/img-view.c:1286 +#: src/layout_image.c:767 src/layout_util.c:1067 src/pan-view.c:2818 +#: src/search.c:1002 src/view_file.c:568 +#, fuzzy +msgid "_Copy..." +msgstr "..." + +#: src/collect-table.c:804 src/dupe.c:2264 src/img-view.c:1287 +#: src/layout_image.c:769 src/layout_util.c:1068 src/pan-view.c:2820 +#: src/search.c:1004 src/view_file.c:570 +#, fuzzy +msgid "_Move..." +msgstr "ƶ..." + +#: src/collect-table.c:806 src/dupe.c:2266 src/img-view.c:1288 +#: src/layout_image.c:771 src/layout_util.c:1069 src/pan-view.c:2822 +#: src/search.c:1006 src/view_dir.c:608 src/view_file.c:572 +#, fuzzy +msgid "_Rename..." +msgstr "..." + +#: src/collect-table.c:808 src/dupe.c:2268 src/img-view.c:1289 +#: src/layout_image.c:773 src/layout_util.c:1070 src/layout_util.c:1071 +#: src/layout_util.c:1072 src/pan-view.c:2824 src/search.c:1008 +#: src/view_dir.c:610 src/view_file.c:574 +#, fuzzy +msgid "_Delete..." +msgstr "ɾ..." + +#: src/collect-table.c:811 src/dupe.c:2271 src/img-view.c:1291 +#: src/layout_image.c:778 src/layout_util.c:1073 src/pan-view.c:2827 +#: src/search.c:1011 src/view_dir.c:614 src/view_file.c:577 +#, fuzzy +msgid "_Copy path" +msgstr "" + +#: src/collect-table.c:816 src/view_file.c:601 +#, fuzzy +msgid "Show filename _text" +msgstr "ʾļ" + +#: src/collect-table.c:819 +#, fuzzy +msgid "_Save collection" +msgstr "ͼ" + +#: src/collect-table.c:821 +#, fuzzy +msgid "Save collection _as..." +msgstr "ͼΪ..." + +#: src/collect-table.c:824 src/layout_util.c:1063 +#, fuzzy +msgid "_Find duplicates..." +msgstr "ѰҸ..." + +#: src/collect-table.c:826 src/dupe.c:2259 src/search.c:999 +#, fuzzy +msgid "Print..." +msgstr "/ļ/(_R)..." + +#: src/collect-table.c:1978 src/dupe.c:3355 src/img-view.c:1445 +#, fuzzy +msgid "Dropped list includes folders." +msgstr "ϷбĿ¼" + +#: src/collect-table.c:1980 src/dupe.c:3357 src/img-view.c:1447 +#, fuzzy +msgid "_Add contents" +msgstr "" + +#: src/collect-table.c:1982 src/dupe.c:3358 src/img-view.c:1448 +#, fuzzy +msgid "Add contents _recursive" +msgstr "ݹ" + +#: src/collect-table.c:1984 src/dupe.c:3359 src/img-view.c:1449 +#, fuzzy +msgid "_Skip folders" +msgstr "Ŀ¼" + +#: src/collect-table.c:1987 src/dupe.c:3361 src/img-view.c:1451 +#: src/view_dir.c:343 +msgid "Cancel" +msgstr "ȡ" + +#: src/dupe.c:99 +msgid "Drop files to compare them." +msgstr "ϷļԱȽǡ" + +#: src/dupe.c:103 +#, c-format +msgid "%d files" +msgstr "%d ļ" + +#: src/dupe.c:107 +#, c-format +msgid "%d matches found in %d files" +msgstr " %2$d ļҵ %1$d ƥ" + +#: src/dupe.c:112 +msgid "[set 1]" +msgstr "" + +#: src/dupe.c:1454 +msgid "Reading checksums..." +msgstr "ڶȡУ..." + +#: src/dupe.c:1487 +msgid "Reading dimensions..." +msgstr "ڶȡߴ..." + +#: src/dupe.c:1521 +msgid "Reading similarity data..." +msgstr "ڶȡ..." + +#: src/dupe.c:1556 src/dupe.c:1587 +msgid "Comparing..." +msgstr "ڱȽ..." + +#: src/dupe.c:1567 src/pan-view.c:1093 +#, fuzzy +msgid "Sorting..." +msgstr "ڱȽ..." + +#: src/dupe.c:2248 +msgid "Select group _1 duplicates" +msgstr "" + +#: src/dupe.c:2250 +msgid "Select group _2 duplicates" +msgstr "" + +#: src/dupe.c:2257 src/search.c:997 +msgid "Add to new collection" +msgstr "ӵͼ" + +#: src/dupe.c:2276 src/dupe.c:2566 src/search.c:1016 +#, fuzzy +msgid "C_lear" +msgstr "" + +#: src/dupe.c:2279 src/dupe.c:2569 +#, fuzzy +msgid "Close _window" +msgstr "رմ" + +#: src/dupe.c:2439 +#, fuzzy, c-format +msgid "%d files (set 2)" +msgstr "%d ļ%s" + +#: src/dupe.c:2647 +msgid "Name case-insensitive" +msgstr "" + +#: src/dupe.c:2648 src/dupe.c:3168 src/preferences.c:1026 src/print.c:3238 +#: src/search.c:2761 src/view_file_list.c:1823 +msgid "Size" +msgstr "С" + +#: src/dupe.c:2649 src/dupe.c:3169 src/exif.c:339 src/exif-common.c:442 +#: src/print.c:3236 src/search.c:2762 src/view_file_list.c:1824 +msgid "Date" +msgstr "" + +#: src/dupe.c:2650 src/dupe.c:3170 src/print.c:3240 src/search.c:2763 +msgid "Dimensions" +msgstr "ߴ" + +#: src/dupe.c:2651 +msgid "Checksum" +msgstr "У" + +#: src/dupe.c:2652 src/dupe.c:3171 src/print.c:3234 src/search.c:2764 +#: src/ui_pathsel.c:1115 +msgid "Path" +msgstr "·" + +#: src/dupe.c:2653 +msgid "Similarity (high)" +msgstr " ()" + +#: src/dupe.c:2654 +msgid "Similarity" +msgstr "" + +#: src/dupe.c:2655 +msgid "Similarity (low)" +msgstr " ()" + +#: src/dupe.c:2656 +#, fuzzy +msgid "Similarity (custom)" +msgstr " ()" + +#: src/dupe.c:3121 +#, fuzzy +msgid "Find duplicates" +msgstr "ѰҸ..." + +#: src/dupe.c:3203 +msgid "Compare to:" +msgstr "֮Ƚϣ" + +#: src/dupe.c:3216 +msgid "Compare by:" +msgstr "˱Ƚϣ" + +#: src/dupe.c:3224 src/preferences.c:884 src/search.c:2777 +msgid "Thumbnails" +msgstr "ͼ" + +#: src/dupe.c:3231 +msgid "Compare two file sets" +msgstr "Ƚļ" + +#: src/editors.c:61 +msgid "The Gimp" +msgstr "Gimp" + +#: src/editors.c:62 +msgid "XV" +msgstr "XV" + +#: src/editors.c:63 +msgid "Xpaint" +msgstr "Xpaint" + +#: src/editors.c:64 +msgid "UFraw" +msgstr "" + +#: src/editors.c:65 +msgid "Add XMP sidecar" +msgstr "" + +#: src/editors.c:69 +#, fuzzy +msgid "Rotate jpeg clockwise" +msgstr "˳ʱת" + +#: src/editors.c:70 +#, fuzzy +msgid "Rotate jpeg counterclockwise" +msgstr "ʱת" + +#. for testing +#: src/editors.c:74 src/editors.c:80 +msgid "External Copy command" +msgstr "" + +#: src/editors.c:75 src/editors.c:81 +msgid "External Move command" +msgstr "" + +#: src/editors.c:76 src/editors.c:82 +msgid "External Rename command" +msgstr "" + +#: src/editors.c:77 src/editors.c:83 +#, fuzzy +msgid "External Delete command" +msgstr "ɾ" + +#: src/editors.c:78 src/editors.c:84 +msgid "External New Folder command" +msgstr "" + +#: src/editors.c:140 +#, fuzzy +msgid "stopping..." +msgstr "ڱȽ..." + +#: src/editors.c:161 +msgid "Edit command results" +msgstr "" + +#: src/editors.c:164 +#, c-format +msgid "Output of %s" +msgstr "" + +#: src/editors.c:603 +#, fuzzy, c-format +msgid "" +"Failed to run command:\n" +"%s\n" +msgstr "" +"޷װ룺\n" +"%s" + +#: src/editors.c:721 +#, fuzzy +msgid "stopped by user" +msgstr "" + +#: src/editors.c:836 +msgid "Editor template is empty." +msgstr "" + +#: src/editors.c:837 +msgid "Editor template has incorrect syntax." +msgstr "" + +#: src/editors.c:838 +msgid "Editor template uses incompatible macros." +msgstr "" + +#: src/editors.c:839 +msgid "Can't find matching file type." +msgstr "" + +#: src/editors.c:840 +msgid "Can't execute external editor." +msgstr "" + +#: src/editors.c:841 +msgid "External editor returned error status." +msgstr "" + +#: src/editors.c:842 +msgid "File was skipped." +msgstr "" + +#: src/editors.c:843 +msgid "Unknown error." +msgstr "" + +#: src/exif.c:145 src/exif.c:158 src/exif.c:172 src/exif.c:197 src/exif.c:314 +#: src/exif.c:625 src/exif-common.c:308 src/exif-common.c:311 +#: src/exif-common.c:378 +#, fuzzy +msgid "unknown" +msgstr " (δ֪)..." + +#: src/exif.c:146 +#, fuzzy +msgid "top left" +msgstr "ɾ" + +#: src/exif.c:147 +msgid "top right" +msgstr "" + +#: src/exif.c:148 +msgid "bottom right" +msgstr "" + +#: src/exif.c:149 +msgid "bottom left" +msgstr "" + +#: src/exif.c:150 +#, fuzzy +msgid "left top" +msgstr "ɾ" + +#: src/exif.c:151 +msgid "right top" +msgstr "" + +#: src/exif.c:152 +msgid "right bottom" +msgstr "" + +#: src/exif.c:153 +msgid "left bottom" +msgstr "" + +#: src/exif.c:160 +msgid "inch" +msgstr "" + +#: src/exif.c:161 +msgid "centimeter" +msgstr "" + +#: src/exif.c:173 +msgid "average" +msgstr "" + +#: src/exif.c:174 +msgid "center weighted" +msgstr "" + +#: src/exif.c:175 +msgid "spot" +msgstr "" + +#: src/exif.c:176 +msgid "multi-spot" +msgstr "" + +#: src/exif.c:177 +msgid "multi-segment" +msgstr "" + +#: src/exif.c:178 +msgid "partial" +msgstr "" + +#: src/exif.c:179 src/exif.c:217 +msgid "other" +msgstr "" + +#: src/exif.c:184 src/exif.c:236 +msgid "not defined" +msgstr "" + +#: src/exif.c:185 src/exif.c:264 src/exif.c:271 +msgid "manual" +msgstr "" + +#: src/exif.c:186 src/exif.c:257 src/exif.c:293 src/exif.c:300 src/exif.c:307 +#, fuzzy +msgid "normal" +msgstr "ͨ" + +#: src/exif.c:187 +msgid "aperture" +msgstr "" + +#: src/exif.c:188 +msgid "shutter" +msgstr "" + +#: src/exif.c:189 +#, fuzzy +msgid "creative" +msgstr "" + +#: src/exif.c:190 +msgid "action" +msgstr "" + +#: src/exif.c:191 src/exif.c:278 +msgid "portrait" +msgstr "" + +#: src/exif.c:192 src/exif.c:277 +msgid "landscape" +msgstr "" + +#: src/exif.c:198 +msgid "daylight" +msgstr "" + +#: src/exif.c:199 +msgid "fluorescent" +msgstr "" + +#: src/exif.c:200 +msgid "tungsten (incandescent)" +msgstr "" + +#: src/exif.c:201 +msgid "flash" +msgstr "" + +#: src/exif.c:202 +msgid "fine weather" +msgstr "" + +#: src/exif.c:203 +msgid "cloudy weather" +msgstr "" + +#: src/exif.c:204 +msgid "shade" +msgstr "" + +#: src/exif.c:205 +msgid "daylight fluorescent" +msgstr "" + +#: src/exif.c:206 +msgid "day white fluorescent" +msgstr "" + +#: src/exif.c:207 +msgid "cool white fluorescent" +msgstr "" + +#: src/exif.c:208 +msgid "white fluorescent" +msgstr "" + +#: src/exif.c:209 +msgid "standard light A" +msgstr "" + +#: src/exif.c:210 +msgid "standard light B" +msgstr "" + +#: src/exif.c:211 +msgid "standard light C" +msgstr "" + +#: src/exif.c:212 +msgid "D55" +msgstr "" + +#: src/exif.c:213 +msgid "D65" +msgstr "" + +#: src/exif.c:214 +msgid "D75" +msgstr "" + +#: src/exif.c:215 +msgid "D50" +msgstr "" + +#: src/exif.c:216 +msgid "ISO studio tungsten" +msgstr "" + +#: src/exif.c:222 src/exif-common.c:332 src/info.c:257 +msgid "no" +msgstr "" + +#. flash fired (bit 0) +#: src/exif.c:223 src/exif-common.c:332 src/info.c:257 +#, fuzzy +msgid "yes" +msgstr "" + +#: src/exif.c:224 +msgid "yes, not detected by strobe" +msgstr "" + +#: src/exif.c:225 +msgid "yes, detected by strobe" +msgstr "" + +#: src/exif.c:230 src/exif-common.c:403 src/layout.c:422 +msgid "sRGB" +msgstr "" + +#: src/exif.c:231 +msgid "uncalibrated" +msgstr "" + +#: src/exif.c:237 +msgid "1 chip color area" +msgstr "" + +#: src/exif.c:238 +msgid "2 chip color area" +msgstr "" + +#: src/exif.c:239 +msgid "3 chip color area" +msgstr "" + +#: src/exif.c:240 +msgid "color sequential area" +msgstr "" + +#: src/exif.c:241 +#, fuzzy +msgid "trilinear" +msgstr "˫" + +#: src/exif.c:242 +msgid "color sequential linear" +msgstr "" + +#: src/exif.c:247 +msgid "digital still camera" +msgstr "" + +#: src/exif.c:252 +msgid "direct photo" +msgstr "" + +#: src/exif.c:258 +msgid "custom" +msgstr "" + +#: src/exif.c:263 src/exif.c:270 src/exif-common.c:346 +msgid "auto" +msgstr "" + +#: src/exif.c:265 +#, fuzzy +msgid "auto bracket" +msgstr "˵" + +#: src/exif.c:276 +#, fuzzy +msgid "standard" +msgstr "" + +#: src/exif.c:279 +msgid "night scene" +msgstr "" + +#: src/exif.c:284 +#, fuzzy +msgid "none" +msgstr "" + +#: src/exif.c:285 +#, fuzzy +msgid "low gain up" +msgstr "" + +#: src/exif.c:286 +msgid "high gain up" +msgstr "" + +#: src/exif.c:287 +#, fuzzy +msgid "low gain down" +msgstr "رմ" + +#: src/exif.c:288 +msgid "high gain down" +msgstr "" + +#: src/exif.c:294 src/exif.c:308 +msgid "soft" +msgstr "" + +#: src/exif.c:295 src/exif.c:309 +msgid "hard" +msgstr "" + +#: src/exif.c:301 +msgid "low" +msgstr "" + +#: src/exif.c:302 +msgid "high" +msgstr "" + +#: src/exif.c:315 +msgid "macro" +msgstr "" + +#: src/exif.c:316 +#, fuzzy +msgid "close" +msgstr "ر" + +#: src/exif.c:317 +msgid "distant" +msgstr "" + +#: src/exif.c:327 +#, fuzzy +msgid "Image Width" +msgstr "ͼ" + +#: src/exif.c:328 +#, fuzzy +msgid "Image Height" +msgstr "ЧĿ" + +#: src/exif.c:329 +msgid "Bits per Sample/Pixel" +msgstr "" + +#: src/exif.c:330 +#, fuzzy +msgid "Compression" +msgstr "֮Ƚϣ" + +#: src/exif.c:331 +#, fuzzy +msgid "Image description" +msgstr "ЧĿ" + +#: src/exif.c:332 +msgid "Camera make" +msgstr "" + +#: src/exif.c:333 +msgid "Camera model" +msgstr "" + +#: src/exif.c:334 +#, fuzzy +msgid "Orientation" +msgstr "ߴ" + +#: src/exif.c:335 +msgid "X resolution" +msgstr "" + +#: src/exif.c:336 +msgid "Y Resolution" +msgstr "" + +#: src/exif.c:337 +#, fuzzy +msgid "Resolution units" +msgstr "ͼΪ" + +#: src/exif.c:338 +msgid "Firmware" +msgstr "" + +#: src/exif.c:340 +msgid "White point" +msgstr "" + +#: src/exif.c:341 +msgid "Primary chromaticities" +msgstr "" + +#: src/exif.c:342 +msgid "YCbCy coefficients" +msgstr "" + +#: src/exif.c:343 +msgid "YCbCr positioning" +msgstr "" + +#: src/exif.c:344 +#, fuzzy +msgid "Black white reference" +msgstr "Geeqie - " + +#: src/exif.c:345 +#, fuzzy +msgid "Copyright" +msgstr "" + +#: src/exif.c:346 +msgid "SubIFD Exif offset" +msgstr "" + +#. subIFD follows +#: src/exif.c:348 +msgid "Exposure time (seconds)" +msgstr "" + +#: src/exif.c:349 +msgid "FNumber" +msgstr "" + +#: src/exif.c:350 +msgid "Exposure program" +msgstr "" + +#: src/exif.c:351 +msgid "Spectral Sensitivity" +msgstr "" + +#: src/exif.c:352 src/exif.c:388 src/exif-common.c:446 +msgid "ISO sensitivity" +msgstr "" + +#: src/exif.c:353 +msgid "Optoelectric conversion factor" +msgstr "" + +#: src/exif.c:354 +msgid "Exif version" +msgstr "" + +#: src/exif.c:355 +msgid "Date original" +msgstr "" + +#: src/exif.c:356 +msgid "Date digitized" +msgstr "" + +#: src/exif.c:357 +#, fuzzy +msgid "Pixel format" +msgstr "" + +#: src/exif.c:358 +#, fuzzy +msgid "Compression ratio" +msgstr "֮Ƚϣ" + +#: src/exif.c:359 src/exif-common.c:443 +msgid "Shutter speed" +msgstr "" + +#: src/exif.c:360 src/exif-common.c:444 +msgid "Aperture" +msgstr "" + +#: src/exif.c:361 +msgid "Brightness" +msgstr "" + +#: src/exif.c:362 src/exif-common.c:445 +msgid "Exposure bias" +msgstr "" + +#: src/exif.c:363 +#, fuzzy +msgid "Maximum aperture" +msgstr "ƽ" + +#: src/exif.c:364 src/exif-common.c:449 +msgid "Subject distance" +msgstr "" + +#: src/exif.c:365 +#, fuzzy +msgid "Metering mode" +msgstr "" + +#: src/exif.c:366 +msgid "Light source" +msgstr "" + +#: src/exif.c:367 src/exif-common.c:450 +msgid "Flash" +msgstr "" + +#: src/exif.c:368 src/exif-common.c:447 +msgid "Focal length" +msgstr "" + +#: src/exif.c:369 +msgid "Subject area" +msgstr "" + +#: src/exif.c:370 +msgid "MakerNote" +msgstr "" + +#: src/exif.c:371 +#, fuzzy +msgid "UserComment" +msgstr "֮Ƚϣ" + +#: src/exif.c:372 +msgid "Subsecond time" +msgstr "" + +#: src/exif.c:373 +msgid "Subsecond time original" +msgstr "" + +#: src/exif.c:374 +msgid "Subsecond time digitized" +msgstr "" + +#: src/exif.c:375 +msgid "FlashPix version" +msgstr "" + +#: src/exif.c:376 +#, fuzzy +msgid "Colorspace" +msgstr "ر" + +#. ExifImageWidth, ExifImageHeight can also be unsigned short +#: src/exif.c:378 +msgid "Width" +msgstr "" + +#: src/exif.c:379 +msgid "Height" +msgstr "" + +#: src/exif.c:380 +#, fuzzy +msgid "Audio data" +msgstr "/鿴/б(_R)" + +#: src/exif.c:381 +msgid "ExifR98 extension" +msgstr "" + +#: src/exif.c:382 +msgid "Flash strength" +msgstr "" + +#: src/exif.c:383 +msgid "Spatial frequency response" +msgstr "" + +#: src/exif.c:384 +msgid "X Pixel density" +msgstr "" + +#: src/exif.c:385 +msgid "Y Pixel density" +msgstr "" + +#: src/exif.c:386 +msgid "Pixel density units" +msgstr "" + +#: src/exif.c:387 +#, fuzzy +msgid "Subject location" +msgstr "ѡ" + +#: src/exif.c:389 +#, fuzzy +msgid "Sensor type" +msgstr "δ" + +#: src/exif.c:390 +#, fuzzy +msgid "Source type" +msgstr "" + +#: src/exif.c:391 +#, fuzzy +msgid "Scene type" +msgstr "" + +#: src/exif.c:392 +msgid "Color filter array pattern" +msgstr "" + +#. tags a4xx were added for Exif 2.2 (not just these - some above, as well) +#: src/exif.c:394 +#, fuzzy +msgid "Render process" +msgstr "" + +#: src/exif.c:395 +msgid "Exposure mode" +msgstr "" + +#: src/exif.c:396 +msgid "White balance" +msgstr "" + +#: src/exif.c:397 +msgid "Digital zoom ratio" +msgstr "" + +#: src/exif.c:398 +msgid "Focal length (35mm)" +msgstr "" + +#: src/exif.c:399 +msgid "Scene capture type" +msgstr "" + +#: src/exif.c:400 +#, fuzzy +msgid "Gain control" +msgstr "" + +#: src/exif.c:401 +#, fuzzy +msgid "Contrast" +msgstr "" + +#: src/exif.c:402 +msgid "Saturation" +msgstr "" + +#: src/exif.c:403 +msgid "Sharpness" +msgstr "" + +#: src/exif.c:404 +msgid "Device setting" +msgstr "" + +#: src/exif.c:405 +msgid "Subject range" +msgstr "" + +#: src/exif.c:406 +#, fuzzy +msgid "Image serial number" +msgstr "ͼ" + +#: src/exif-common.c:307 +msgid "infinity" +msgstr "" + +#: src/exif-common.c:336 +#, fuzzy +msgid "mode:" +msgstr "ƽ" + +#: src/exif-common.c:340 src/trash.c:193 +#, fuzzy +msgid "on" +msgstr "" + +#: src/exif-common.c:343 src/trash.c:198 +msgid "off" +msgstr "" + +#: src/exif-common.c:352 +msgid "not detected by strobe" +msgstr "" + +#: src/exif-common.c:353 +msgid "detected by strobe" +msgstr "" + +#. we ignore flash function (bit 5) +#. red-eye (bit 6) +#: src/exif-common.c:358 +msgid "red-eye reduction" +msgstr "" + +#: src/exif-common.c:378 +msgid "dot" +msgstr "" + +#: src/exif-common.c:408 +msgid "AdobeRGB" +msgstr "" + +#: src/exif-common.c:416 +msgid "embedded" +msgstr "" + +#: src/exif-common.c:441 +#, fuzzy +msgid "Camera" +msgstr "" + +#: src/exif-common.c:448 +msgid "Focal length 35mm" +msgstr "" + +#: src/exif-common.c:451 +#, fuzzy +msgid "Resolution" +msgstr "ͼΪ" + +#: src/exif-common.c:452 +#, fuzzy +msgid "Color profile" +msgstr "ļ" + +#: src/filedata.c:86 +#, fuzzy, c-format +msgid "%d bytes" +msgstr "%d ļ" + +#: src/filedata.c:90 +#, c-format +msgid "%.1f K" +msgstr "" + +#: src/filedata.c:94 +#, c-format +msgid "%.1f MB" +msgstr "" + +#: src/filedata.c:99 +#, c-format +msgid "%.1f GB" +msgstr "" + +#: src/fullscreen.c:243 src/preferences.c:1329 +#, fuzzy +msgid "Full screen" +msgstr "ȫ" + +#: src/fullscreen.c:395 +#, fuzzy +msgid "Full size" +msgstr "ƽ" + +#: src/fullscreen.c:400 +msgid "Monitor" +msgstr "" + +#: src/fullscreen.c:405 src/layout.c:455 +msgid "Screen" +msgstr "" + +#: src/fullscreen.c:642 +#, fuzzy +msgid "Stay above other windows" +msgstr "ͼ" + +#: src/fullscreen.c:649 +msgid "Determined by Window Manager" +msgstr "" + +#: src/fullscreen.c:650 +msgid "Active screen" +msgstr "" + +#: src/fullscreen.c:652 +msgid "Active monitor" +msgstr "" + +#: src/histogram.c:86 +msgid "logarithmical histogram on red" +msgstr "" + +#: src/histogram.c:87 +msgid "logarithmical histogram on green" +msgstr "" + +#: src/histogram.c:88 +msgid "logarithmical histogram on blue" +msgstr "" + +#: src/histogram.c:89 +msgid "logarithmical histogram on value" +msgstr "" + +#: src/histogram.c:90 +msgid "logarithmical histogram on RGB" +msgstr "" + +#: src/histogram.c:91 +msgid "logarithmical histogram on max value" +msgstr "" + +#: src/histogram.c:96 +msgid "linear histogram on red" +msgstr "" + +#: src/histogram.c:97 +msgid "linear histogram on green" +msgstr "" + +#: src/histogram.c:98 +msgid "linear histogram on blue" +msgstr "" + +#: src/histogram.c:99 +msgid "linear histogram on value" +msgstr "" + +#: src/histogram.c:100 +msgid "linear histogram on RGB" +msgstr "" + +#: src/histogram.c:101 +msgid "linear histogram on max value" +msgstr "" + +#: src/img-view.c:1268 src/layout_image.c:743 src/layout_util.c:1105 +#: src/layout_util.c:1106 src/layout_util.c:1107 src/pan-view.c:2800 +#, fuzzy +msgid "Zoom _in" +msgstr "Ŵ" + +#: src/img-view.c:1269 src/layout_image.c:744 src/layout_util.c:1108 +#: src/layout_util.c:1109 src/pan-view.c:2802 +#, fuzzy +msgid "Zoom _out" +msgstr "С" + +#: src/img-view.c:1270 src/layout_image.c:745 src/layout_util.c:1110 +#: src/layout_util.c:1111 src/pan-view.c:2804 +#, fuzzy +msgid "Zoom _1:1" +msgstr "ŵ 1:1" + +#: src/img-view.c:1271 src/layout_image.c:746 +#, fuzzy +msgid "Fit image to _window" +msgstr "ͼ" + +#: src/img-view.c:1276 src/layout_image.c:752 src/layout_util.c:1103 +#, fuzzy +msgid "Set as _wallpaper" +msgstr "Ϊǽֽ" + +#: src/img-view.c:1283 src/layout_image.c:762 +msgid "_Go to directory view" +msgstr "" + +#: src/img-view.c:1297 src/layout_image.c:786 +#, fuzzy +msgid "_Stop slideshow" +msgstr "ֹͣŻõƬ" + +#: src/img-view.c:1300 src/layout_image.c:789 +#, fuzzy +msgid "Continue slides_how" +msgstr "ŻõƬ" + +#: src/img-view.c:1305 src/img-view.c:1313 src/layout_image.c:794 +#: src/layout_image.c:801 +#, fuzzy +msgid "Pause slides_how" +msgstr "ͣŻõƬ" + +#: src/img-view.c:1311 src/layout_image.c:800 +#, fuzzy +msgid "_Start slideshow" +msgstr "ʼŻõƬ" + +#: src/img-view.c:1319 src/layout_image.c:811 src/pan-view.c:2873 +#, fuzzy +msgid "Exit _full screen" +msgstr "˳ȫ" + +#: src/img-view.c:1323 src/layout_image.c:807 src/pan-view.c:2877 +#, fuzzy +msgid "_Full screen" +msgstr "ȫ" + +#: src/img-view.c:1327 src/layout_util.c:1074 src/pan-view.c:2881 +#, fuzzy +msgid "C_lose window" +msgstr "رմ" + +#: src/info.c:392 +#, fuzzy +msgid "File size:" +msgstr "ƽ" + +#: src/info.c:394 +#, fuzzy +msgid "Dimensions:" +msgstr "ߴ" + +#: src/info.c:395 +msgid "Transparent:" +msgstr "" + +#: src/info.c:396 src/print.c:3419 +#, fuzzy +msgid "Image size:" +msgstr "ͼ" + +#: src/info.c:398 +#, fuzzy +msgid "Compress ratio:" +msgstr "֮Ƚϣ" + +#: src/info.c:399 +#, fuzzy +msgid "File type:" +msgstr "" + +#: src/info.c:401 +msgid "Owner:" +msgstr "" + +#: src/info.c:402 +msgid "Group:" +msgstr "" + +#: src/info.c:405 src/preferences.c:858 +msgid "General" +msgstr "" + +#: src/info.c:531 +#, c-format +msgid "Image %d of %d" +msgstr "" + +#: src/info.c:778 +#, fuzzy +msgid "Image properties" +msgstr "ЧĿ" + +#: src/layout.c:282 src/view_file.c:585 +msgid "Ascending" +msgstr "" + +#: src/layout.c:384 +#, c-format +msgid "This installation of %s was not built with support for color profiles." +msgstr "" + +#: src/layout.c:385 +msgid "Color profiles not supported" +msgstr "" + +#: src/layout.c:410 +msgid "Use _color profiles" +msgstr "" + +#: src/layout.c:415 +msgid "Use profile from _image" +msgstr "" + +#: src/layout.c:421 src/layout.c:439 +#, c-format +msgid "Input _%d:" +msgstr "" + +#: src/layout.c:422 +msgid "AdobeRGB compatible" +msgstr "" + +#: src/layout.c:464 +msgid "_Screen profile" +msgstr "" + +#: src/layout.c:531 +msgid " Slideshow" +msgstr " õƬ" + +#: src/layout.c:535 +msgid " Paused" +msgstr " ͣ" + +#: src/layout.c:552 +#, fuzzy, c-format +msgid "%s, %d files (%s, %d)%s" +msgstr "%d ļ (%d)%s" + +#: src/layout.c:559 +#, fuzzy, c-format +msgid "%s, %d files%s" +msgstr "%d ļ%s" + +#: src/layout.c:564 +#, c-format +msgid "%d files%s" +msgstr "%d ļ%s" + +#: src/layout.c:593 +#, c-format +msgid "(no read permission) %s bytes" +msgstr "" + +#: src/layout.c:597 +#, c-format +msgid "( ? x ? ) %s bytes" +msgstr "( ? x ? ) %s ֽ" + +#: src/layout.c:605 +#, c-format +msgid "( %d x %d ) %s bytes" +msgstr "( %d x %d ) %s ֽ" + +#: src/layout.c:1301 src/layout_config.c:58 +#, fuzzy +msgid "Tools" +msgstr "ƽ" + +#: src/layout.c:1983 +#, fuzzy +msgid "Invalid geometry\n" +msgstr "Ƿļ" + +#: src/layout_config.c:58 src/ui_pathsel.c:1183 +#, fuzzy +msgid "Files" +msgstr "ƽ" + +#: src/layout_config.c:58 src/preferences.c:941 src/print.c:116 +msgid "Image" +msgstr "ͼ" + +#: src/layout_config.c:364 +msgid "(drag to change order)" +msgstr "" + +#: src/layout_image.c:816 +#, fuzzy +msgid "Hide file _list" +msgstr "()ļб" + +#: src/layout_util.c:879 src/menu.c:76 +#, fuzzy, c-format +msgid "_%d %s..." +msgstr " %s..." + +#: src/layout_util.c:883 src/menu.c:78 +#, fuzzy, c-format +msgid "_%d (unknown)..." +msgstr " (δ֪)..." + +#: src/layout_util.c:893 +#, fuzzy, c-format +msgid "_%d empty" +msgstr "" + +#: src/layout_util.c:1037 +#, fuzzy +msgid "_File" +msgstr "/ļ(_F)" + +#: src/layout_util.c:1038 +msgid "_Go" +msgstr "" + +#: src/layout_util.c:1039 src/menu.c:93 +#, fuzzy +msgid "_Edit" +msgstr "/༭(_E)" + +#: src/layout_util.c:1040 +#, fuzzy +msgid "_Select" +msgstr "ѡ" + +#: src/layout_util.c:1041 src/menu.c:265 +#, fuzzy +msgid "_Adjust" +msgstr "" + +#: src/layout_util.c:1043 +#, fuzzy +msgid "_View Directory as" +msgstr "½Ŀ¼" + +#: src/layout_util.c:1044 +#, fuzzy +msgid "_Zoom" +msgstr "Ŵ" + +#: src/layout_util.c:1045 +msgid "_Split" +msgstr "" + +#: src/layout_util.c:1046 +#, fuzzy +msgid "_Help" +msgstr "/(_H)" + +#: src/layout_util.c:1048 +#, fuzzy +msgid "_First Image" +msgstr "%d ͼ" + +#: src/layout_util.c:1049 src/layout_util.c:1050 src/layout_util.c:1051 +msgid "_Previous Image" +msgstr "" + +#: src/layout_util.c:1052 src/layout_util.c:1053 src/layout_util.c:1054 +#, fuzzy +msgid "_Next Image" +msgstr "Ԥװһͼ" + +#: src/layout_util.c:1055 +#, fuzzy +msgid "_Last Image" +msgstr "Ԥװһͼ" + +#: src/layout_util.c:1058 +#, fuzzy +msgid "New _window" +msgstr "/ļ/ͼ" + +#: src/layout_util.c:1059 +#, fuzzy +msgid "_New collection" +msgstr "ͼ" + +#: src/layout_util.c:1060 +#, fuzzy +msgid "_Open collection..." +msgstr "ͼ" + +#: src/layout_util.c:1061 +#, fuzzy +msgid "Open _recent" +msgstr "/ļ/򿪽ڷ(_R)" + +#: src/layout_util.c:1062 +#, fuzzy +msgid "_Search..." +msgstr "ڱȽ..." + +#: src/layout_util.c:1064 +#, fuzzy +msgid "Pan _view" +msgstr " - Geeqie" + +#: src/layout_util.c:1065 +#, fuzzy +msgid "_Print..." +msgstr "/ļ/(_R)..." + +#: src/layout_util.c:1066 +#, fuzzy +msgid "N_ew folder..." +msgstr " - Geeqie" + +#: src/layout_util.c:1075 +#, fuzzy +msgid "_Quit" +msgstr "Ʒ" + +#: src/layout_util.c:1088 src/menu.c:203 +#, fuzzy +msgid "_Rotate clockwise" +msgstr "˳ʱת" + +#: src/layout_util.c:1089 src/menu.c:206 +#, fuzzy +msgid "Rotate _counterclockwise" +msgstr "ʱת" + +#: src/layout_util.c:1090 +#, fuzzy +msgid "Rotate 1_80" +msgstr "ת 180 " + +#: src/layout_util.c:1091 src/menu.c:212 +#, fuzzy +msgid "_Mirror" +msgstr "" + +#: src/layout_util.c:1092 src/menu.c:215 +#, fuzzy +msgid "_Flip" +msgstr "ת" + +#: src/layout_util.c:1093 src/menu.c:218 +#, fuzzy +msgid "Toggle _grayscale" +msgstr "ֹͣŻõƬ" + +#: src/layout_util.c:1094 src/menu.c:221 +#, fuzzy +msgid "_Original state" +msgstr "" + +#: src/layout_util.c:1097 +#, fuzzy +msgid "Select _all" +msgstr "ȫѡ" + +#: src/layout_util.c:1098 +#, fuzzy +msgid "Select _none" +msgstr "ѡ" + +#: src/layout_util.c:1099 +#, fuzzy +msgid "_Invert Selection" +msgstr "ѡ" + +#: src/layout_util.c:1101 +#, fuzzy +msgid "P_references..." +msgstr "/༭/ѡ(_O)..." + +#: src/layout_util.c:1102 +msgid "_Thumbnail maintenance..." +msgstr "" + +#: src/layout_util.c:1112 src/layout_util.c:1113 +#, fuzzy +msgid "_Zoom to fit" +msgstr "/鿴/ŵʵС(_Z)" + +#: src/layout_util.c:1114 +msgid "Fit _Horizontally" +msgstr "" + +#: src/layout_util.c:1115 +msgid "Fit _Vorizontally" +msgstr "" + +#: src/layout_util.c:1116 +#, fuzzy +msgid "Zoom _2:1" +msgstr "ŵ 1:1" + +#: src/layout_util.c:1117 +#, fuzzy +msgid "Zoom _3:1" +msgstr "ŵ 1:1" + +#: src/layout_util.c:1118 +#, fuzzy +msgid "Zoom _4:1" +msgstr "ŵ 1:1" + +#: src/layout_util.c:1119 +#, fuzzy +msgid "Zoom 1:2" +msgstr "ŵ 1:1" + +#: src/layout_util.c:1120 +#, fuzzy +msgid "Zoom 1:3" +msgstr "ŵ 1:1" + +#: src/layout_util.c:1121 +#, fuzzy +msgid "Zoom 1:4" +msgstr "ŵ 1:1" + +#: src/layout_util.c:1124 +#, fuzzy +msgid "_View in new window" +msgstr "´в鿴" + +#: src/layout_util.c:1126 src/layout_util.c:1127 src/layout_util.c:1128 +#, fuzzy +msgid "F_ull screen" +msgstr "ȫ" + +#: src/layout_util.c:1129 src/layout_util.c:1130 +msgid "Escape" +msgstr "" + +#: src/layout_util.c:1131 +msgid "_Image Overlay" +msgstr "" + +#: src/layout_util.c:1132 +msgid "Histogram _channels" +msgstr "" + +#: src/layout_util.c:1133 +msgid "Histogram _log mode" +msgstr "" + +#: src/layout_util.c:1134 +#, fuzzy +msgid "_Hide file list" +msgstr "()ļб" + +#: src/layout_util.c:1135 +#, fuzzy +msgid "_Pause slideshow" +msgstr "ͣŻõƬ" + +#: src/layout_util.c:1136 +#, fuzzy +msgid "_Refresh" +msgstr "ˢ" + +#: src/layout_util.c:1138 +#, fuzzy +msgid "_Contents" +msgstr "//(_A)" + +#: src/layout_util.c:1139 +#, fuzzy +msgid "_Keyboard shortcuts" +msgstr "//̿ݼ(_K)" + +#: src/layout_util.c:1140 +#, fuzzy +msgid "_Release notes" +msgstr "//˵(_R)" + +#: src/layout_util.c:1141 +#, fuzzy +msgid "_About" +msgstr "" + +#: src/layout_util.c:1145 src/layout_util.c:1546 +#, fuzzy +msgid "_Thumbnails" +msgstr "ͼ" + +#: src/layout_util.c:1146 +#, fuzzy +msgid "Show _Marks" +msgstr "ʾļ" + +#: src/layout_util.c:1147 +#, fuzzy +msgid "_Float file list" +msgstr "/鿴/()ļб(_F)" + +#: src/layout_util.c:1148 +#, fuzzy +msgid "Hide tool_bar" +msgstr "/鿴/Ƭ1" + +#: src/layout_util.c:1149 +#, fuzzy +msgid "_Keywords" +msgstr "ߴ" + +#: src/layout_util.c:1150 +#, fuzzy +msgid "E_xif data" +msgstr "/鿴/б(_R)" + +#: src/layout_util.c:1151 +#, fuzzy +msgid "Sort _manager" +msgstr "" + +#: src/layout_util.c:1152 +msgid "Co_nnected scroll" +msgstr "" + +#: src/layout_util.c:1153 +msgid "C_onnected zoom" +msgstr "" + +#: src/layout_util.c:1154 +#, fuzzy +msgid "Toggle _slideshow" +msgstr "ֹͣŻõƬ" + +#: src/layout_util.c:1158 src/view_dir.c:29 +#, fuzzy +msgid "_List" +msgstr "/鿴/б(_R)" + +#: src/layout_util.c:1159 +#, fuzzy +msgid "I_cons" +msgstr "ߴ" + +#: src/layout_util.c:1163 +msgid "Horizontal" +msgstr "" + +#: src/layout_util.c:1164 +msgid "Vertical" +msgstr "" + +#: src/layout_util.c:1165 +msgid "Quad" +msgstr "" + +#: src/layout_util.c:1166 +#, fuzzy +msgid "Single" +msgstr "С" + +#: src/layout_util.c:1354 +#, c-format +msgid "Mark _%d" +msgstr "" + +#: src/layout_util.c:1355 src/view_file.c:515 +#, c-format +msgid "_Set mark %d" +msgstr "" + +#: src/layout_util.c:1356 src/view_file.c:516 +#, c-format +msgid "_Reset mark %d" +msgstr "" + +#: src/layout_util.c:1357 src/layout_util.c:1358 src/view_file.c:517 +#, c-format +msgid "_Toggle mark %d" +msgstr "" + +#: src/layout_util.c:1359 src/layout_util.c:1360 src/view_file.c:518 +#, fuzzy, c-format +msgid "_Select mark %d" +msgstr "ȫѡ" + +#: src/layout_util.c:1361 src/view_file.c:519 +#, fuzzy, c-format +msgid "_Add mark %d" +msgstr "༭" + +#: src/layout_util.c:1362 src/view_file.c:520 +#, c-format +msgid "_Intersection with mark %d" +msgstr "" + +#: src/layout_util.c:1363 src/view_file.c:521 +#, c-format +msgid "_Unselect mark %d" +msgstr "" + +#: src/layout_util.c:1547 +#, fuzzy +msgid "Show thumbnails" +msgstr "ͼ" + +#: src/layout_util.c:1552 +#, fuzzy +msgid "Change to home folder" +msgstr "صĿ¼" + +#: src/layout_util.c:1554 +msgid "Refresh file list" +msgstr "ˢļб" + +#: src/layout_util.c:1556 +msgid "Zoom in" +msgstr "Ŵ" + +#: src/layout_util.c:1558 +msgid "Zoom out" +msgstr "С" + +#: src/layout_util.c:1560 src/preferences.c:978 +msgid "Fit image to window" +msgstr "ͼ" + +#: src/layout_util.c:1562 +msgid "Set zoom 1:1" +msgstr "ñ 1:1" + +#: src/layout_util.c:1564 +msgid "Configure options" +msgstr "ѡ" + +#: src/layout_util.c:1565 +#, fuzzy +msgid "_Float" +msgstr "ͨ" + +#: src/layout_util.c:1566 +msgid "Float Controls" +msgstr "" + +#. something went badly wrong +#: src/lirc.c:184 +#, c-format +msgid "disconnected from LIRC\n" +msgstr "" + +#: src/lirc.c:199 +#, c-format +msgid "Could not init LIRC support\n" +msgstr "" + +#: src/lirc.c:206 +#, c-format +msgid "" +"could not read LIRC config file\n" +"please read the documentation of LIRC to \n" +"know how to create a proper config file\n" +msgstr "" + +#: src/main.c:391 +#, fuzzy, c-format +msgid "" +"Usage: %s [options] [path]\n" +"\n" +msgstr "" +"÷: gqview [ѡ] [·]\n" +"\n" + +#: src/main.c:392 +msgid "valid options are:\n" +msgstr "ЧѡΪ\n" + +#: src/main.c:393 +msgid " +t, --with-tools force show of tools\n" +msgstr " +t, --with-tools ǿʾ\n" + +#: src/main.c:394 +msgid " -t, --without-tools force hide of tools\n" +msgstr " -t, --without-tools ǿع\n" + +#: src/main.c:395 +msgid " -f, --fullscreen start in full screen mode\n" +msgstr " -f, --fullscreen ȫģʽ\n" + +#: src/main.c:396 +msgid " -s, --slideshow start in slideshow mode\n" +msgstr " -s, --slidehosw Իõģʽ\n" + +#: src/main.c:397 +msgid " -l, --list open collection window for command line\n" +msgstr " -l, --list Ϊпͼ񼯴\n" + +#: src/main.c:398 +msgid " --geometry=GEOMETRY set main window location\n" +msgstr "" + +#: src/main.c:399 +#, fuzzy +msgid " -r, --remote send following commands to open window\n" +msgstr " -l, --list Ϊпͼ񼯴\n" + +#: src/main.c:400 +msgid " -rh,--remote-help print remote command list\n" +msgstr "" + +#: src/main.c:402 +#, fuzzy +msgid " --debug[=level] turn on debug output\n" +msgstr " --debug 򿪵Ϣ\n" + +#: src/main.c:404 +msgid " -v, --version print version info\n" +msgstr " -v, --version ӡ汾Ϣ\n" + +#: src/main.c:405 +msgid "" +" -h, --help show this message\n" +"\n" +msgstr "" +" -h, --help ʾϢ\n" +"\n" + +#: src/main.c:417 +#, c-format +msgid "" +"invalid or ignored: %s\n" +"Use --help for options\n" +msgstr "" +"Чԣ%s\n" +"ʹ --help 鿴ѡ\n" + +#: src/main.c:445 +#, fuzzy +msgid "Invalid or ignored remote options: " +msgstr "" +"Чԣ%s\n" +"ʹ --help 鿴ѡ\n" + +#: src/main.c:454 +msgid "" +"\n" +"Use --remote-help for valid remote options.\n" +msgstr "" + +#: src/main.c:539 +#, fuzzy, c-format +msgid "Creating %s dir:%s\n" +msgstr "ڴ Geeqie Ŀ¼%s\n" + +#: src/main.c:543 +#, c-format +msgid "Could not create dir:%s\n" +msgstr "޷Ŀ¼%s\n" + +#: src/main.c:562 src/ui_bookmark.c:856 src/ui_pathsel.c:1051 +msgid "Home" +msgstr "" + +#: src/main.c:564 src/ui_bookmark.c:863 +#, fuzzy +msgid "Desktop" +msgstr "" + +#: src/main.c:680 +#, fuzzy +msgid "exit" +msgstr "˳" + +#: src/main.c:685 +#, fuzzy, c-format +msgid "Quit %s" +msgstr "Ʒ" + +#: src/main.c:687 +#, fuzzy +msgid "Collections have been modified. Quit anyway?" +msgstr "" +"ͼѾı䡣\n" +"ǿ˳" + +#: src/main.c:836 src/remote.c:536 +msgid "Command line" +msgstr "" + +#: src/menu.c:117 +#, fuzzy +msgid "Sort by size" +msgstr "С" + +#: src/menu.c:120 +#, fuzzy +msgid "Sort by date" +msgstr "" + +#: src/menu.c:123 +msgid "Unsorted" +msgstr "δ" + +#: src/menu.c:126 +#, fuzzy +msgid "Sort by path" +msgstr "·" + +#: src/menu.c:129 +#, fuzzy +msgid "Sort by number" +msgstr "" + +#: src/menu.c:133 +#, fuzzy +msgid "Sort by name" +msgstr "" + +#: src/menu.c:184 +msgid "Sort" +msgstr "" + +#: src/menu.c:209 +#, fuzzy +msgid "Rotate _180" +msgstr "ת 180 " + +#: src/pan-view.c:470 +#, fuzzy, c-format +msgid "%d images, %s" +msgstr "%d ͼ" + +#: src/pan-view.c:480 +#, c-format +msgid "The pan view does not support the folder \"%s\"." +msgstr "" + +#: src/pan-view.c:481 +msgid "Folder not supported" +msgstr "" + +#: src/pan-view.c:1083 src/pan-view.c:1099 +#, fuzzy +msgid "Reading image data..." +msgstr "ڶȡ..." + +#: src/pan-view.c:1158 +#, fuzzy +msgid "Sorting images..." +msgstr "ڱȽ..." + +#: src/pan-view.c:1546 src/pan-view.c:1912 +#, fuzzy +msgid "Date:" +msgstr "" + +#: src/pan-view.c:1548 src/preferences.c:887 src/print.c:3245 src/print.c:3456 +msgid "Size:" +msgstr "С" + +#: src/pan-view.c:1650 +msgid "path found" +msgstr "" + +#: src/pan-view.c:1650 +#, fuzzy +msgid "filename found" +msgstr "" + +#: src/pan-view.c:1698 +msgid "partial match" +msgstr "" + +#: src/pan-view.c:1909 src/pan-view.c:1942 +msgid "no match" +msgstr "" + +#: src/pan-view.c:2268 src/search.c:2150 +msgid "Folder not found" +msgstr "" + +#: src/pan-view.c:2269 +msgid "The entered path is not a folder" +msgstr "" + +#: src/pan-view.c:2368 +#, fuzzy +msgid "Pan View" +msgstr " - Geeqie" + +#: src/pan-view.c:2393 +#, fuzzy +msgid "Timeline" +msgstr "˫" + +#: src/pan-view.c:2394 +#, fuzzy +msgid "Calendar" +msgstr "" + +#: src/pan-view.c:2396 +#, fuzzy +msgid "Folders (flower)" +msgstr "ƽ" + +#: src/pan-view.c:2397 +msgid "Grid" +msgstr "" + +#: src/pan-view.c:2406 +#, fuzzy +msgid "Dots" +msgstr "Xpaint" + +#: src/pan-view.c:2407 +#, fuzzy +msgid "No Images" +msgstr "ͼ" + +#: src/pan-view.c:2408 +#, fuzzy +msgid "Small Thumbnails" +msgstr "ͼ" + +#: src/pan-view.c:2409 +#, fuzzy +msgid "Normal Thumbnails" +msgstr "ͼ" + +#: src/pan-view.c:2410 +#, fuzzy +msgid "Large Thumbnails" +msgstr "ͼ" + +#: src/pan-view.c:2411 src/pan-view.c:2863 +msgid "1:10 (10%)" +msgstr "" + +#: src/pan-view.c:2412 src/pan-view.c:2859 +msgid "1:4 (25%)" +msgstr "" + +#: src/pan-view.c:2413 src/pan-view.c:2855 +msgid "1:3 (33%)" +msgstr "" + +#: src/pan-view.c:2414 src/pan-view.c:2851 +msgid "1:2 (50%)" +msgstr "" + +#: src/pan-view.c:2415 +msgid "1:1 (100%)" +msgstr "" + +#: src/pan-view.c:2463 +#, fuzzy +msgid "Find:" +msgstr "" + +#: src/pan-view.c:2506 +#, fuzzy +msgid "Use Exif date" +msgstr "/鿴/б(_R)" + +#: src/pan-view.c:2519 +msgid "Find" +msgstr "" + +#: src/pan-view.c:2586 +msgid "Pan View Performance" +msgstr "" + +#: src/pan-view.c:2593 +msgid "Pan view performance may be poor." +msgstr "" + +#: src/pan-view.c:2594 +msgid "" +"To improve performance of thumbnails in the pan view the following options " +"can be enabled. Note that both options must be enabled to notice a change in " +"performance." +msgstr "" + +#: src/pan-view.c:2602 src/preferences.c:890 +msgid "Cache thumbnails" +msgstr "ͼ" + +#: src/pan-view.c:2604 src/preferences.c:896 +msgid "Use shared thumbnail cache" +msgstr "" + +#: src/pan-view.c:2610 +msgid "Do not show this dialog again" +msgstr "" + +#: src/pan-view.c:2831 +#, fuzzy +msgid "Sort by E_xif date" +msgstr "" + +#: src/pan-view.c:2837 +msgid "_Show Exif information" +msgstr "" + +#: src/pan-view.c:2839 +#, fuzzy +msgid "Show im_age" +msgstr "ʾļ" + +#: src/pan-view.c:2843 +#, fuzzy +msgid "_None" +msgstr "" + +#: src/pan-view.c:2847 +#, fuzzy +msgid "_Full size" +msgstr "ƽ" + +#. note: the order is important, it must match the values of +#. * EXIF_UI_OFF, _IFSET, _ON +#: src/preferences.c:402 +msgid "Never" +msgstr "" + +#: src/preferences.c:403 +msgid "If set" +msgstr "" + +#: src/preferences.c:404 +msgid "Always" +msgstr "" + +#: src/preferences.c:451 +msgid "Nearest (worst, but fastest)" +msgstr " (㣬)" + +#: src/preferences.c:453 +msgid "Tiles" +msgstr "ƽ" + +#: src/preferences.c:455 +msgid "Bilinear" +msgstr "˫" + +#: src/preferences.c:457 +msgid "Hyper (best, but slowest)" +msgstr " (ã)" + +#: src/preferences.c:485 +msgid "None" +msgstr "" + +#: src/preferences.c:486 +msgid "Normal" +msgstr "ͨ" + +#: src/preferences.c:487 +msgid "Best" +msgstr "" + +#: src/preferences.c:548 src/print.c:372 +msgid "Custom" +msgstr "" + +#: src/preferences.c:712 src/preferences.c:715 +#, fuzzy +msgid "Reset filters" +msgstr "ɾļ" + +#: src/preferences.c:716 +msgid "" +"This will reset the file filters to the defaults.\n" +"Continue?" +msgstr "" + +#: src/preferences.c:750 src/preferences.c:753 +#, fuzzy +msgid "Reset editors" +msgstr "ɾļ" + +#: src/preferences.c:754 +msgid "" +"This will reset the edit commands to the defaults.\n" +"Continue?" +msgstr "" + +#: src/preferences.c:778 src/preferences.c:781 +#, fuzzy +msgid "Clear trash" +msgstr "" + +#: src/preferences.c:782 +msgid "This will remove the trash contents." +msgstr "" + +#: src/preferences.c:826 src/preferences.c:829 +msgid "Reset image overlay template string" +msgstr "" + +#: src/preferences.c:830 +msgid "" +"This will reset the image overlay template string to the default.\n" +"Continue?" +msgstr "" + +#: src/preferences.c:861 +msgid "Startup" +msgstr "" + +#: src/preferences.c:863 +msgid "Restore folder on startup" +msgstr "" + +#: src/preferences.c:876 +msgid "Use current" +msgstr "ʹõǰĿ¼" + +#: src/preferences.c:879 +#, fuzzy +msgid "Use last path" +msgstr "ȫѡ" + +#: src/preferences.c:888 src/preferences.c:950 +msgid "Quality:" +msgstr "Ʒʣ" + +#: src/preferences.c:902 +msgid "Cache thumbnails into .thumbnails" +msgstr "ͼ浽 .thumbnails " + +#: src/preferences.c:906 +msgid "Use xvpics thumbnails when found (read only)" +msgstr "ҵxvpicsͼʹ(ֻ)" + +#: src/preferences.c:910 +msgid "Faster jpeg thumbnailing (may reduce quality)" +msgstr "" + +#: src/preferences.c:913 +msgid "Slide show" +msgstr "չʾõƬ" + +#: src/preferences.c:916 +#, fuzzy +msgid "Delay between image change:" +msgstr "ͼıʱ()" + +#: src/preferences.c:916 +msgid "seconds" +msgstr "" + +#: src/preferences.c:922 +msgid "Random" +msgstr "" + +#: src/preferences.c:923 +msgid "Repeat" +msgstr "ظ" + +#: src/preferences.c:944 +#, fuzzy +msgid "Zoom" +msgstr "Ŵ" + +#: src/preferences.c:947 +msgid "Dithering method:" +msgstr "" + +#: src/preferences.c:952 +msgid "Two pass zooming" +msgstr "" + +#: src/preferences.c:955 +#, fuzzy +msgid "Allow enlargement of image for zoom to fit" +msgstr "ΪչͼԱƥ䡣" + +#: src/preferences.c:959 +#, fuzzy +msgid "Limit image size when autofitting (%):" +msgstr "Զı䴰ڴСʱƳߴ (%)" + +#: src/preferences.c:967 +msgid "Zoom increment:" +msgstr "" + +#: src/preferences.c:972 +msgid "When new image is selected:" +msgstr "ѡͼʱ" + +#: src/preferences.c:975 +msgid "Zoom to original size" +msgstr "ŵԭߴ" + +#: src/preferences.c:981 +msgid "Leave Zoom at previous setting" +msgstr "һε" + +#: src/preferences.c:985 +#, fuzzy +msgid "Appearance" +msgstr "׷" + +#: src/preferences.c:987 +#, fuzzy +msgid "Custom border color" +msgstr "ļͣ" + +#: src/preferences.c:990 +msgid "Border color" +msgstr "" + +#: src/preferences.c:993 +#, fuzzy +msgid "Convenience" +msgstr "" + +#: src/preferences.c:995 +#, fuzzy +msgid "Refresh on file change" +msgstr "ˢļб" + +#: src/preferences.c:997 +msgid "Preload next image" +msgstr "Ԥװһͼ" + +#: src/preferences.c:999 +msgid "Auto rotate image using Exif information" +msgstr "" + +#: src/preferences.c:1016 +msgid "Windows" +msgstr "" + +#: src/preferences.c:1019 +#, fuzzy +msgid "State" +msgstr "" + +#: src/preferences.c:1021 +msgid "Remember window positions" +msgstr "סλ" + +#: src/preferences.c:1023 +msgid "Remember tool state (float/hidden)" +msgstr "ס״̬(/)" + +#: src/preferences.c:1028 +msgid "Fit window to image when tools are hidden/floating" +msgstr "ߵ/ʱ,ʹӦͼ" + +#: src/preferences.c:1032 +msgid "Limit size when auto-sizing window (%):" +msgstr "Զı䴰ڴСʱƳߴ (%)" + +#: src/preferences.c:1039 src/print.c:3404 src/print.c:3411 +msgid "Layout" +msgstr "" + +#: src/preferences.c:1066 +msgid "Filtering" +msgstr "" + +#: src/preferences.c:1071 +msgid "Show hidden files or folders" +msgstr "" + +#: src/preferences.c:1073 +#, fuzzy +msgid "Show dot directory" +msgstr "½Ŀ¼" + +#: src/preferences.c:1075 +msgid "Case sensitive sort" +msgstr "" + +#: src/preferences.c:1078 +msgid "Disable File Filtering" +msgstr "ֹļ" + +#: src/preferences.c:1082 +msgid "Grouping sidecar extensions" +msgstr "" + +#: src/preferences.c:1089 +#, fuzzy +msgid "File types" +msgstr "" + +#: src/preferences.c:1111 +#, fuzzy +msgid "Filter" +msgstr "" + +#: src/preferences.c:1148 src/preferences.c:1234 src/preferences.c:1378 +msgid "Defaults" +msgstr "" + +#: src/preferences.c:1177 +msgid "Editors" +msgstr "༭" + +#: src/preferences.c:1183 +msgid "#" +msgstr "#" + +#: src/preferences.c:1186 src/preferences.c:1497 +msgid "Menu name" +msgstr "˵" + +#: src/preferences.c:1189 +msgid "Command Line" +msgstr "" + +#: src/preferences.c:1261 +#, fuzzy +msgid "Properties" +msgstr "/༭/ѡ(_O)..." + +#: src/preferences.c:1279 +msgid "What to show in properties dialog:" +msgstr "" + +#: src/preferences.c:1316 +msgid "Advanced" +msgstr "" + +#: src/preferences.c:1337 +#, fuzzy +msgid "Smooth image flip" +msgstr "ͼ" + +#: src/preferences.c:1339 +msgid "Disable screen saver" +msgstr "" + +#: src/preferences.c:1343 +msgid "Overlay Screen Display" +msgstr "" + +#: src/preferences.c:1345 +msgid "Always show image overlay at startup" +msgstr "" + +#: src/preferences.c:1347 +msgid "Image overlay template" +msgstr "" + +#: src/preferences.c:1361 +msgid "" +"%name% results in the filename of the picture.\n" +"Also available: %collection%, %number%, %total%, %" +"date%,\n" +"%size% (filesize), %width%, %height%, %res% " +"(resolution)\n" +"To access exif data use the exif name, e. g. %formatted.Camera% is " +"the formatted camera name,\n" +"%Exif.Photo.DateTimeOriginal% the date of the original shot.\n" +"%formatted.Camera:20 notation will truncate the displayed data to 20 " +"characters and will add 3 dots at the end to denote the truncation.\n" +"If two or more variables are connected with the |-sign, it prints available " +"variables with a separator.\n" +"%formatted.ShutterSpeed%|%formatted.ISOSpeedRating%|%" +"formatted.FocalLength% could show \"1/20s - 400 - 80 mm\" or \"1/200 - " +"80 mm\",\n" +"if there's no ISO information in the Exif data.\n" +"If a line is empty, it is removed. This allows to add lines that totally " +"disappear when no data is available.\n" +msgstr "" + +#: src/preferences.c:1393 +msgid "Delete" +msgstr "ɾ" + +#: src/preferences.c:1395 +msgid "Confirm file delete" +msgstr "ȷɾļ" + +#: src/preferences.c:1397 +msgid "Enable Delete key" +msgstr "ɾ" + +#: src/preferences.c:1400 +#, fuzzy +msgid "Safe delete" +msgstr "ȷɾļ" + +#: src/preferences.c:1418 +#, fuzzy +msgid "Maximum size:" +msgstr "ƽ" + +#: src/preferences.c:1418 +msgid "MB" +msgstr "" + +#: src/preferences.c:1421 +msgid "Set to 0 for unlimited size" +msgstr "" + +#: src/preferences.c:1423 +msgid "View" +msgstr "鿴" + +#: src/preferences.c:1434 +msgid "Behavior" +msgstr "" + +#: src/preferences.c:1436 +#, fuzzy +msgid "Rectangular selection in icon view" +msgstr "ѡ" + +#: src/preferences.c:1439 +msgid "Descend folders in tree view" +msgstr "" + +#: src/preferences.c:1442 +msgid "In place renaming" +msgstr "ʱ" + +#: src/preferences.c:1445 +msgid "" +"Show \"Copy path\" menu item which write the path of selected files to " +"clipboard" +msgstr "" + +#: src/preferences.c:1448 +msgid "Open recent list maximum size" +msgstr "" + +#: src/preferences.c:1451 +msgid "Drag'n drop icon size" +msgstr "" + +#: src/preferences.c:1454 +msgid "Navigation" +msgstr "" + +#: src/preferences.c:1456 +msgid "Progressive keyboard scrolling" +msgstr "۽̹" + +#: src/preferences.c:1458 +msgid "Mouse wheel scrolls image" +msgstr "ֹͼ" + +#: src/preferences.c:1461 +msgid "Miscellaneous" +msgstr "" + +#: src/preferences.c:1463 +msgid "Store metadata and cache files in source image's directory" +msgstr "" + +#: src/preferences.c:1466 +msgid "Store keywords and comments as XMP tags in image files" +msgstr "" + +#: src/preferences.c:1469 +#, fuzzy +msgid "Custom similarity threshold:" +msgstr "ļͣ" + +#: src/preferences.c:1472 +msgid "Image loading and caching" +msgstr "" + +#: src/preferences.c:1474 +msgid "Offscreen cache size (Mb per image):" +msgstr "ĻС (ÿͼ Mb )" + +#: src/preferences.c:1477 +msgid "Image read buffer size (bytes):" +msgstr "" + +#: src/preferences.c:1481 +msgid "Image idle loop read count:" +msgstr "" + +#: src/preferences.c:1486 +#, fuzzy +msgid "Color profiles" +msgstr "ļ" + +#: src/preferences.c:1494 +msgid "Type" +msgstr "" + +#: src/preferences.c:1500 +#, fuzzy +msgid "File" +msgstr "" + +#: src/preferences.c:1525 src/preferences.c:1536 +#, fuzzy +msgid "Select color profile" +msgstr "ѡ" + +#: src/preferences.c:1533 +msgid "Screen:" +msgstr "" + +#: src/preferences.c:1544 +msgid "Debugging" +msgstr "" + +#: src/preferences.c:1546 +msgid "Debug level:" +msgstr "" + +#: src/preferences.c:1562 +#, fuzzy +msgid "Preferences" +msgstr "/༭/ѡ(_O)..." + +#: src/preferences.c:1685 +#, fuzzy +msgid "About" +msgstr "" + +#: src/preferences.c:1702 +#, fuzzy, c-format +msgid "" +"%s %s\n" +"\n" +"Copyright (c) 2006 John Ellis\n" +"Copyright (c) %s The Geeqie Team\n" +"website: %s\n" +"email: %s\n" +"\n" +"Released under the GNU General Public License" +msgstr "" +"Geeqie %s\n" +"\n" +"Ȩ (c) 2003 John Ellis\n" +"http://gqview.sourceforge.net\n" +"gqview@users.sourceforge.net\n" +"\n" +"ͨù֤" + +#: src/preferences.c:1721 +#, fuzzy +msgid "Credits..." +msgstr "/༭/ѡ(_O)..." + +#: src/print.c:117 +#, fuzzy +msgid "Selection" +msgstr "ѡ" + +#: src/print.c:118 +msgid "All" +msgstr "" + +#: src/print.c:129 +msgid "One image per page" +msgstr "" + +#: src/print.c:130 +msgid "Proof sheet" +msgstr "" + +#: src/print.c:143 +msgid "Default printer" +msgstr "" + +#: src/print.c:144 +#, fuzzy +msgid "Custom printer" +msgstr "ļͣ" + +#: src/print.c:145 +msgid "PostScript file" +msgstr "" + +#: src/print.c:146 +#, fuzzy +msgid "Image file" +msgstr "ͼ" + +#: src/print.c:160 +msgid "jpeg, low quality" +msgstr "" + +#: src/print.c:161 +msgid "jpeg, normal quality" +msgstr "" + +#: src/print.c:162 +msgid "jpeg, high quality" +msgstr "" + +#: src/print.c:357 src/print.c:3245 +#, fuzzy +msgid "points" +msgstr "Xpaint" + +#: src/print.c:358 +msgid "millimeters" +msgstr "" + +#: src/print.c:359 +msgid "centimeters" +msgstr "" + +#: src/print.c:360 +msgid "inches" +msgstr "" + +#: src/print.c:361 +msgid "picas" +msgstr "" + +#: src/print.c:366 +msgid "Portrait" +msgstr "" + +#: src/print.c:367 +msgid "Landscape" +msgstr "" + +#: src/print.c:373 +msgid "Letter" +msgstr "" + +#. in 8.5 x 11 +#: src/print.c:374 +msgid "Legal" +msgstr "" + +#. in 8.5 x 14 +#: src/print.c:375 +msgid "Executive" +msgstr "" + +#. in 7.25x 10.5 +#. mm 841 x 1189 +#. mm 594 x 841 +#. mm 420 x 594 +#. mm 297 x 420 +#. mm 210 x 297 +#. mm 148 x 210 +#. mm 105 x 148 +#. mm 353 x 500 +#. mm 250 x 353 +#. mm 176 x 250 +#. mm 125 x 176 +#: src/print.c:387 +msgid "Envelope #10" +msgstr "" + +#. in 4.125 x 9.5 +#: src/print.c:388 +msgid "Envelope #9" +msgstr "" + +#. in 3.875 x 8.875 +#: src/print.c:389 +msgid "Envelope C4" +msgstr "" + +#. mm 229 x 324 +#: src/print.c:390 +msgid "Envelope C5" +msgstr "" + +#. mm 162 x 229 +#: src/print.c:391 +msgid "Envelope C6" +msgstr "" + +#. mm 114 x 162 +#: src/print.c:392 +msgid "Photo 6x4" +msgstr "" + +#. in 6 x 4 +#: src/print.c:393 +msgid "Photo 8x10" +msgstr "" + +#. in 8 x 10 +#: src/print.c:394 +msgid "Postcard" +msgstr "" + +#. mm 100 x 148 +#: src/print.c:395 +msgid "Tabloid" +msgstr "" + +#: src/print.c:551 +#, c-format +msgid "page %d of %d" +msgstr "" + +#: src/print.c:743 src/utilops.c:2462 +msgid "Preview" +msgstr "" + +#: src/print.c:1051 +#, c-format +msgid "" +"Unable to open pipe for writing.\n" +"\"%s\"" +msgstr "" + +#: src/print.c:1066 src/print.c:1506 src/ui_pathsel.c:432 +#: src/view_file_list.c:396 +#, fuzzy, c-format +msgid "A file with name %s already exists." +msgstr "ļ %s Ѵڡ" + +#: src/print.c:1081 src/print.c:1561 +#, c-format +msgid "Failure writing to file %s" +msgstr "" + +#: src/print.c:1135 src/print.c:1172 src/print.c:1208 src/print.c:1325 +#: src/print.c:1416 src/print.c:1447 +msgid "SIGPIPE error writing to printer." +msgstr "" + +#: src/print.c:1982 +#, c-format +msgid "Page %d" +msgstr "" + +#: src/print.c:2004 src/print.c:2009 +#, fuzzy +msgid "Printing error" +msgstr "" + +#: src/print.c:2008 +#, c-format +msgid "An error occured printing to %s." +msgstr "" + +#: src/print.c:2012 +#, fuzzy +msgid "Details" +msgstr "ɾļ" + +#: src/print.c:2617 src/print.c:3377 +#, fuzzy +msgid "Print" +msgstr "" + +#: src/print.c:2624 +#, c-format +msgid "Printing %d pages to %s." +msgstr "" + +#: src/print.c:2724 +#, fuzzy +msgid "Format:" +msgstr "ͨ" + +#: src/print.c:2799 +msgid "Units:" +msgstr "" + +#: src/print.c:2843 +#, fuzzy +msgid "Orientation:" +msgstr "ߴ" + +#: src/print.c:2975 +#, fuzzy +msgid "Destination:" +msgstr "ЧĿ" + +#: src/print.c:3023 +#, fuzzy +msgid "" +msgstr "" + +#: src/print.c:3112 +#, fuzzy +msgid "Unlimited" +msgstr "ޱ" + +#: src/print.c:3230 +msgid "Show" +msgstr "" + +#: src/print.c:3243 +#, fuzzy +msgid "Font" +msgstr "" + +#: src/print.c:3407 +#, fuzzy +msgid "Source" +msgstr "" + +#: src/print.c:3423 +#, fuzzy +msgid "Proof size:" +msgstr "ͼ" + +#: src/print.c:3449 +#, fuzzy +msgid "Paper" +msgstr "" + +#: src/print.c:3472 +msgid "Margins" +msgstr "" + +#: src/print.c:3474 +msgid "Left:" +msgstr "" + +#: src/print.c:3477 +msgid "Right:" +msgstr "" + +#: src/print.c:3480 +msgid "Top:" +msgstr "" + +#: src/print.c:3483 +#, fuzzy +msgid "Bottom:" +msgstr "" + +#: src/print.c:3492 +#, fuzzy +msgid "Printer" +msgstr "" + +#: src/print.c:3498 +#, fuzzy +msgid "Custom printer:" +msgstr "ļͣ" + +#: src/print.c:3507 +#, fuzzy +msgid "File:" +msgstr "" + +#: src/print.c:3516 +#, fuzzy +msgid "File format:" +msgstr "" + +#: src/print.c:3521 +msgid "DPI:" +msgstr "" + +#: src/print.c:3529 +#, fuzzy +msgid "Remember print settings" +msgstr "סλ" + +#: src/rcfile.c:309 +#, c-format +msgid "error saving config file: %s\n" +msgstr "ļ%s\n" + +#: src/rcfile.c:583 +#, fuzzy, c-format +msgid "" +"error saving config file: %s\n" +"error: %s\n" +msgstr "ļ%s\n" + +#. short, long callback, extra, prefer,description +#: src/remote.c:574 +#, fuzzy +msgid "next image" +msgstr "Ԥװһͼ" + +#: src/remote.c:575 +msgid "previous image" +msgstr "" + +#: src/remote.c:576 +#, fuzzy +msgid "first image" +msgstr "%d ͼ" + +#: src/remote.c:577 +#, fuzzy +msgid "last image" +msgstr "Ԥװһͼ" + +#: src/remote.c:578 +#, fuzzy +msgid "toggle full screen" +msgstr "˳ȫ" + +#: src/remote.c:579 +#, fuzzy +msgid "start full screen" +msgstr "˳ȫ" + +#: src/remote.c:580 +#, fuzzy +msgid "stop full screen" +msgstr "˳ȫ" + +#: src/remote.c:581 +#, fuzzy +msgid "toggle slide show" +msgstr "ֹͣŻõƬ" + +#: src/remote.c:582 +#, fuzzy +msgid "start slide show" +msgstr "ʼŻõƬ" + +#: src/remote.c:583 +#, fuzzy +msgid "stop slide show" +msgstr "ֹͣŻõƬ" + +#: src/remote.c:584 +#, fuzzy +msgid "start recursive slide show" +msgstr "ʼŻõƬ" + +#: src/remote.c:585 +msgid "set slide show delay in seconds" +msgstr "" + +#: src/remote.c:586 +msgid "show tools" +msgstr "" + +#: src/remote.c:587 +#, fuzzy +msgid "hide tools" +msgstr "Geeqie " + +#: src/remote.c:588 +msgid "quit" +msgstr "" + +#: src/remote.c:589 +#, fuzzy +msgid "open file" +msgstr "" +"ļ\n" +"%s\n" +"Ϊ" + +#: src/remote.c:590 +#, fuzzy +msgid "open file in new window" +msgstr "´в鿴" + +#: src/remote.c:656 +msgid "Remote command list:\n" +msgstr "" + +#: src/remote.c:713 +#, c-format +msgid "Remote %s not running, starting..." +msgstr "" + +#: src/remote.c:849 +msgid "Remote not available\n" +msgstr "" + +#: src/search.c:202 +#, fuzzy +msgid "folder" +msgstr "ƽ" + +#: src/search.c:203 +#, fuzzy +msgid "comments" +msgstr "" + +#: src/search.c:204 +msgid "results" +msgstr "" + +#: src/search.c:208 +#, fuzzy +msgid "contains" +msgstr "" + +#: src/search.c:209 +msgid "is" +msgstr "" + +#: src/search.c:213 src/search.c:220 +msgid "equal to" +msgstr "" + +#: src/search.c:214 +msgid "less than" +msgstr "" + +#: src/search.c:215 +#, fuzzy +msgid "greater than" +msgstr "ͼ" + +#: src/search.c:216 src/search.c:223 +msgid "between" +msgstr "" + +#: src/search.c:221 +msgid "before" +msgstr "" + +#: src/search.c:222 +#, fuzzy +msgid "after" +msgstr "" + +#: src/search.c:227 +msgid "match all" +msgstr "" + +#: src/search.c:228 +msgid "match any" +msgstr "" + +#: src/search.c:229 +msgid "exclude" +msgstr "" + +#: src/search.c:279 +#, fuzzy, c-format +msgid "%s, %d files (%s, %d)" +msgstr "%d ļ (%d)%s" + +#: src/search.c:284 +#, fuzzy, c-format +msgid "%s, %d files" +msgstr "%d ļ%s" + +#: src/search.c:302 +#, fuzzy +msgid "Searching..." +msgstr "ڱȽ..." + +#: src/search.c:2100 +msgid "File not found" +msgstr "" + +#: src/search.c:2101 +#, fuzzy +msgid "Please enter an existing file for image content." +msgstr "ѡһѴڵĿ¼" + +#: src/search.c:2151 +#, fuzzy +msgid "Please enter an existing folder to search." +msgstr "ѡһѴڵĿ¼" + +#: src/search.c:2576 +#, fuzzy +msgid "Image search" +msgstr "ͼ" + +#: src/search.c:2606 +#, fuzzy +msgid "Search:" +msgstr "ڱȽ..." + +#: src/search.c:2620 +msgid "Recurse" +msgstr "" + +#: src/search.c:2624 +#, fuzzy +msgid "File name" +msgstr "" + +#: src/search.c:2630 +msgid "Match case" +msgstr "" + +#: src/search.c:2634 +#, fuzzy +msgid "File size is" +msgstr "ƽ" + +#: src/search.c:2641 src/search.c:2656 src/search.c:2674 +#, fuzzy +msgid "and" +msgstr "" + +#: src/search.c:2646 +#, fuzzy +msgid "File date is" +msgstr "" + +#: src/search.c:2663 +#, fuzzy +msgid "Image dimensions are" +msgstr "ЧĿ" + +#: src/search.c:2683 +#, fuzzy +msgid "Image content is" +msgstr "" + +#: src/search.c:2689 +#, fuzzy, no-c-format +msgid "% similar to" +msgstr "" + +#: src/search.c:2758 +#, fuzzy +msgid "Rank" +msgstr "" + +#: src/secure_save.c:398 +#, fuzzy +msgid "Cannot read the file" +msgstr "޷Ŀ¼" + +#: src/secure_save.c:400 +#, fuzzy +msgid "Cannot get file status" +msgstr "Ƚļ" + +#: src/secure_save.c:402 +msgid "Cannot access the file" +msgstr "" + +#: src/secure_save.c:404 +#, fuzzy +msgid "Cannot create temp file" +msgstr "޷Ŀ¼" + +#: src/secure_save.c:406 +#, fuzzy +msgid "Cannot rename the file" +msgstr "޷Ŀ¼" + +#: src/secure_save.c:408 +msgid "File saving disabled by option" +msgstr "" + +#: src/secure_save.c:410 +msgid "Out of memory" +msgstr "" + +#: src/secure_save.c:412 +msgid "Cannot write the file" +msgstr "" + +#: src/secure_save.c:416 +msgid "Secure file saving error" +msgstr "" + +#: src/thumb.c:382 +msgid "Thumbnail image in cache failed to load, trying to recreate.\n" +msgstr "װ뻺ͼʧܣͼؽ\n" + +#: src/trash.c:74 src/utilops.c:1402 src/utilops.c:1415 src/utilops.c:1494 +#: src/utilops.c:1511 src/utilops.c:3095 src/utilops.c:3146 src/utilops.c:3232 +#: src/utilops.c:3243 +msgid "Delete failed" +msgstr "ɾʧ" + +#: src/trash.c:75 +#, fuzzy +msgid "Unable to remove old file from trash folder" +msgstr "" +"޷ļ\n" +"%s\n" +"ƶ" + +#: src/trash.c:126 src/utilops.c:2755 +#, fuzzy +msgid "Could not create folder" +msgstr "޷Ŀ¼" + +#: src/trash.c:148 +msgid "Permission denied" +msgstr "" + +#: src/trash.c:158 +#, fuzzy, c-format +msgid "" +"Unable to access or create the trash folder.\n" +"\"%s\"" +msgstr "" +"޷Ŀ¼\n" +"%s" + +#: src/trash.c:162 +#, fuzzy +msgid "Turn off safe delete" +msgstr "ȷɾļ" + +#: src/trash.c:181 +msgid "Deletion by external command" +msgstr "" + +#: src/trash.c:189 +#, c-format +msgid " (max. %d MB)" +msgstr "" + +#: src/trash.c:193 +#, fuzzy, c-format +msgid "" +"Safe delete: %s%s\n" +"Trash: %s" +msgstr "ȷɾļ" + +#: src/trash.c:198 +#, fuzzy, c-format +msgid "Safe delete: %s" +msgstr "ȷɾļ" + +#: src/ui_bookmark.c:151 +#, c-format +msgid "Unable to write history lists to: %s\n" +msgstr "޷ʷбд룺%s\n" + +#: src/ui_bookmark.c:443 src/ui_bookmark.c:506 +msgid "New Bookmark" +msgstr "" + +#: src/ui_bookmark.c:589 src/ui_bookmark.c:595 +#, fuzzy +msgid "Edit Bookmark" +msgstr "༭" + +#: src/ui_bookmark.c:610 +#, fuzzy +msgid "Path:" +msgstr "·" + +#: src/ui_bookmark.c:619 +msgid "Icon:" +msgstr "" + +#: src/ui_bookmark.c:625 +#, fuzzy +msgid "Select icon" +msgstr "ѡ" + +#: src/ui_bookmark.c:716 +#, fuzzy +msgid "_Properties..." +msgstr "/༭/ѡ(_O)..." + +#: src/ui_bookmark.c:718 +#, fuzzy +msgid "Move _up" +msgstr "ƶ" + +#: src/ui_bookmark.c:720 +#, fuzzy +msgid "Move _down" +msgstr "ƶ" + +#: src/ui_bookmark.c:722 +#, fuzzy +msgid "_Remove" +msgstr "ɾ" + +#: src/ui_help.c:114 +#, c-format +msgid "" +"Unable to load:\n" +"%s" +msgstr "" +"޷װ룺\n" +"%s" + +#: src/ui_pathsel.c:438 src/utilops.c:2859 +#, c-format +msgid "Failed to rename %s to %s." +msgstr " %s Ϊ %s ʧܡ" + +#: src/ui_pathsel.c:494 src/utilops.c:1510 src/utilops.c:1703 +#, c-format +msgid "" +"Unable to delete file:\n" +"%s" +msgstr "" +"޷ɾļ\n" +"%s" + +#: src/ui_pathsel.c:495 src/utilops.c:1452 src/utilops.c:1472 +#: src/utilops.c:1684 src/utilops.c:1696 src/utilops.c:1704 +msgid "File deletion failed" +msgstr "ļɾʧ" + +#: src/ui_pathsel.c:537 src/ui_pathsel.c:545 src/utilops.c:1734 +msgid "Delete file" +msgstr "ɾļ" + +#: src/ui_pathsel.c:543 +#, c-format +msgid "" +"About to delete the file:\n" +" %s" +msgstr "" +"Ҫɾļ\n" +" %s" + +#: src/ui_pathsel.c:634 src/ui_pathsel.c:642 src/utilops.c:2428 +#: src/utilops.c:2690 +#, fuzzy +msgid "_Rename" +msgstr "" + +#: src/ui_pathsel.c:636 src/ui_pathsel.c:646 +#, fuzzy +msgid "Add _Bookmark" +msgstr "༭" + +#: src/ui_pathsel.c:644 +#, fuzzy +msgid "_Delete" +msgstr "ɾ" + +#: src/ui_pathsel.c:748 src/ui_pathsel.c:1053 src/utilops.c:2807 +#, fuzzy +msgid "New folder" +msgstr " - Geeqie" + +#: src/ui_pathsel.c:758 src/utilops.c:2762 src/view_dir.c:511 +#, fuzzy, c-format +msgid "" +"Unable to create folder:\n" +"%s" +msgstr "" +"޷Ŀ¼\n" +"%s" + +#: src/ui_pathsel.c:759 src/utilops.c:2763 src/view_dir.c:512 +#, fuzzy +msgid "Error creating folder" +msgstr "Ŀ¼" + +#: src/ui_pathsel.c:980 +msgid "All Files" +msgstr "ļ" + +#: src/ui_pathsel.c:1056 +msgid "Show hidden" +msgstr "ʾļ" + +#: src/ui_pathsel.c:1140 +msgid "Filter:" +msgstr "" + +#: src/ui_tabcomp.c:858 +#, fuzzy +msgid "Select path" +msgstr "ȫѡ" + +#: src/ui_tabcomp.c:874 +#, fuzzy +msgid "All files" +msgstr "ļ" + +#: src/utilops.c:346 src/utilops.c:811 src/utilops.c:1048 +msgid "Error copying file" +msgstr "ļ" + +#: src/utilops.c:347 +#, fuzzy, c-format +msgid "" +"%s\n" +"Unable to copy file:\n" +"%s\n" +"to:\n" +"%s" +msgstr "" +"޷ļ\n" +"%s\n" +"Ƶ\n" +"%s" + +#: src/utilops.c:390 src/utilops.c:816 src/utilops.c:1053 +msgid "Error moving file" +msgstr "ƶļ" + +#: src/utilops.c:391 +#, fuzzy, c-format +msgid "" +"%s\n" +"Unable to move file:\n" +"%s\n" +"to:\n" +"%s" +msgstr "" +"޷ļ\n" +"%s\n" +"ƶ\n" +"%s" + +#: src/utilops.c:439 src/utilops.c:1920 src/utilops.c:2642 +#: src/view_file_list.c:391 src/view_file_list.c:397 src/view_file_list.c:411 +msgid "Error renaming file" +msgstr "ļ" + +#: src/utilops.c:440 +#, fuzzy, c-format +msgid "" +"%s\n" +"Unable to rename file:\n" +"%s\n" +"to:\n" +"%s" +msgstr "" +"޷ļ\n" +"%s\n" +"Ϊ\n" +"%s" + +#: src/utilops.c:651 src/utilops.c:981 src/utilops.c:1893 src/utilops.c:2613 +msgid "Overwrite file" +msgstr "ļ" + +#: src/utilops.c:656 src/utilops.c:986 src/utilops.c:1898 src/utilops.c:2618 +#, fuzzy +msgid "Overwrite file?" +msgstr "ļ" + +#: src/utilops.c:657 src/utilops.c:987 +msgid "Replace existing file with new file." +msgstr "" + +#: src/utilops.c:661 +#, fuzzy +msgid "Overwrite _all" +msgstr "ļ" + +#: src/utilops.c:663 +#, fuzzy +msgid "S_kip all" +msgstr "" + +#: src/utilops.c:664 +#, fuzzy +msgid "_Skip" +msgstr "" + +#: src/utilops.c:665 src/utilops.c:991 src/utilops.c:1904 src/utilops.c:2624 +#, fuzzy +msgid "Existing file" +msgstr "ƶļ" + +#: src/utilops.c:665 src/utilops.c:991 src/utilops.c:1905 src/utilops.c:2625 +#, fuzzy +msgid "New file" +msgstr " - Geeqie" + +#: src/utilops.c:675 src/utilops.c:1000 src/utilops.c:2038 src/utilops.c:2094 +#: src/utilops.c:2167 src/utilops.c:2501 +#, fuzzy +msgid "Auto rename" +msgstr "˵" + +#: src/utilops.c:683 src/utilops.c:1008 src/utilops.c:2423 src/utilops.c:2682 +msgid "Rename" +msgstr "" + +#: src/utilops.c:724 +msgid "Source to copy matches destination" +msgstr "ƵԴĿͬ" + +#: src/utilops.c:725 +#, c-format +msgid "" +"Unable to copy file:\n" +"%s\n" +"to itself." +msgstr "" +"޷ļ\n" +"%s\n" +"Ƶ" + +#: src/utilops.c:729 +msgid "Source to move matches destination" +msgstr "ƶԴĿͬ" + +#: src/utilops.c:730 +#, c-format +msgid "" +"Unable to move file:\n" +"%s\n" +"to itself." +msgstr "" +"޷ļ\n" +"%s\n" +"ƶ" + +#: src/utilops.c:738 src/utilops.c:825 src/utilops.c:1408 src/utilops.c:1502 +#, fuzzy +msgid "Co_ntinue" +msgstr "" + +#: src/utilops.c:812 +#, fuzzy, c-format +msgid "" +"Unable to copy file:\n" +"%s\n" +"to:\n" +"%s\n" +"during multiple file copy." +msgstr "" +"ڶļʱ޷\n" +"%s Ƶ\n" +"%s\n" +"" + +#: src/utilops.c:817 +#, fuzzy, c-format +msgid "" +"Unable to move file:\n" +"%s\n" +"to:\n" +"%s\n" +"during multiple file move." +msgstr "" +"ڶļƶʱ޷\n" +"%s ƶ\n" +"%s\n" +"" + +#: src/utilops.c:972 +msgid "Source matches destination" +msgstr "ԴĿͬ" + +#: src/utilops.c:973 +msgid "Source and destination are the same, operation cancelled." +msgstr "ԴĿͬ" + +#: src/utilops.c:1049 +#, c-format +msgid "" +"Unable to copy file:\n" +"%s\n" +"to:\n" +"%s" +msgstr "" +"޷ļ\n" +"%s\n" +"Ƶ\n" +"%s" + +#: src/utilops.c:1054 +#, c-format +msgid "" +"Unable to move file:\n" +"%s\n" +"to:\n" +"%s" +msgstr "" +"޷ļ\n" +"%s\n" +"ƶ\n" +"%s" + +#: src/utilops.c:1102 +msgid "Invalid destination" +msgstr "ЧĿ" + +#: src/utilops.c:1103 +#, fuzzy +msgid "" +"When operating with multiple files, please select\n" +"a folder, not a file." +msgstr "" +"ڶļѡĿ¼\n" +"ļ" + +#: src/utilops.c:1108 +#, fuzzy +msgid "Please select an existing folder." +msgstr "ѡһѴڵĿ¼" + +#: src/utilops.c:1178 src/view_dir.c:338 +#, fuzzy +msgid "_Copy" +msgstr "" + +#: src/utilops.c:1181 +#, fuzzy +msgid "Copy file" +msgstr "" +"ļ\n" +"%s\n" +"Ϊ" + +#: src/utilops.c:1185 +#, fuzzy +msgid "Copy multiple files" +msgstr "ļƵ" + +#: src/utilops.c:1192 src/view_dir.c:340 +#, fuzzy +msgid "_Move" +msgstr "ƶ" + +#: src/utilops.c:1195 +#, fuzzy +msgid "Move file" +msgstr "" +"ļ\n" +"%s\n" +"Ϊ" + +#: src/utilops.c:1199 +#, fuzzy +msgid "Move multiple files" +msgstr "ļƶ" + +#: src/utilops.c:1214 src/utilops.c:1744 +#, fuzzy +msgid "File name:" +msgstr "" + +#: src/utilops.c:1218 +#, fuzzy +msgid "Choose the destination folder." +msgstr "ԴĿͬ" + +#: src/utilops.c:1389 +#, fuzzy +msgid "" +"\n" +"Unable to delete file by external command:\n" +msgstr "" +"޷ɾļ\n" +"%s" + +#: src/utilops.c:1401 +#, fuzzy +msgid "" +"\n" +" Continue multiple delete operation?" +msgstr "" +"޷ɾļ\n" +" %s\n" +" жļɾ" + +#: src/utilops.c:1452 src/utilops.c:1684 +msgid "Another operation in progress.\n" +msgstr "" + +#: src/utilops.c:1471 +#, fuzzy, c-format +msgid "" +"%s\n" +"Unable to delete files by external command.\n" +msgstr "" +"޷ɾļ\n" +"%s" + +#: src/utilops.c:1498 +#, c-format +msgid "" +"Unable to delete file:\n" +" %s\n" +" Continue multiple delete operation?" +msgstr "" +"޷ɾļ\n" +" %s\n" +" жļɾ" + +#: src/utilops.c:1569 +#, c-format +msgid "File %d of %d" +msgstr "" + +#: src/utilops.c:1637 +#, fuzzy +msgid "Delete files" +msgstr "ɾļ" + +#: src/utilops.c:1643 +#, fuzzy +msgid "Delete multiple files" +msgstr "ļ" + +#: src/utilops.c:1661 +#, fuzzy, c-format +msgid "Review %d files" +msgstr "%d ļ" + +#: src/utilops.c:1695 +#, fuzzy, c-format +msgid "" +"%s\n" +"Unable to delete file by external command:\n" +"%s" +msgstr "" +"޷ɾļ\n" +"%s" + +#: src/utilops.c:1740 +#, fuzzy +msgid "Delete file?" +msgstr "ɾļ" + +#: src/utilops.c:1899 src/utilops.c:2619 +msgid "Replace existing file by renaming new file." +msgstr "" + +#: src/utilops.c:1917 +#, c-format +msgid "" +"Unable to rename file:\n" +"%s\n" +" to:\n" +"%s" +msgstr "" +"޷ļ\n" +"%s\n" +" Ϊ\n" +"%s" + +#: src/utilops.c:2039 +msgid "Format must include at least one of the symbol characters '*' or '#'.\n" +msgstr "" + +#: src/utilops.c:2095 +msgid "" +"Can not auto rename with the selected\n" +"number set, one or more files exist that\n" +"match the resulting name list.\n" +msgstr "" + +#: src/utilops.c:2166 +#, fuzzy, c-format +msgid "" +"Failed to rename\n" +"%s\n" +"The number was %d." +msgstr " %s Ϊ %s ʧܡ" + +#: src/utilops.c:2427 +#, fuzzy +msgid "Rename multiple files" +msgstr "ļ" + +#: src/utilops.c:2461 +msgid "Original Name" +msgstr "" + +#: src/utilops.c:2499 +#, fuzzy +msgid "Manual rename" +msgstr "˵" + +#: src/utilops.c:2500 +msgid "Formatted rename" +msgstr "" + +#: src/utilops.c:2513 src/utilops.c:2697 +#, fuzzy +msgid "Original name:" +msgstr "" + +#: src/utilops.c:2516 src/utilops.c:2700 +#, fuzzy +msgid "New name:" +msgstr "" + +#: src/utilops.c:2534 +msgid "Begin text" +msgstr "" + +#: src/utilops.c:2542 src/utilops.c:2574 +msgid "Start #" +msgstr "" + +#: src/utilops.c:2548 +msgid "End text" +msgstr "" + +#: src/utilops.c:2556 +msgid "Padding:" +msgstr "" + +#: src/utilops.c:2566 +msgid "Format (* = original name, ## = numbers)" +msgstr "" + +#: src/utilops.c:2641 src/view_file_list.c:410 +#, c-format +msgid "" +"Unable to rename file:\n" +"%s\n" +"to:\n" +"%s" +msgstr "" +"޷ļ\n" +"%s\n" +"Ϊ\n" +"%s" + +#: src/utilops.c:2687 +#, fuzzy +msgid "Rename file" +msgstr "" +"ļ\n" +"%s\n" +"Ϊ" + +#: src/utilops.c:2748 src/utilops.c:2841 +#, fuzzy, c-format +msgid "" +"The folder:\n" +"%s\n" +"already exists." +msgstr "" +"Ŀ¼\n" +"%s\n" +"Ѵڡ" + +#: src/utilops.c:2749 src/utilops.c:2842 +#, fuzzy +msgid "Folder exists" +msgstr "ƽ" + +#: src/utilops.c:2754 src/utilops.c:2850 +#, c-format +msgid "" +"The path:\n" +"%s\n" +"already exists as a file." +msgstr "" +"·\n" +"%s\n" +"һѴڵļ" + +#: src/utilops.c:2812 +#, fuzzy, c-format +msgid "" +"Create folder in:\n" +"%s\n" +"named:" +msgstr "" +"\n" +"%s\n" +"Ŀ¼Ϊ" + +#: src/utilops.c:2851 src/utilops.c:2860 +#, fuzzy +msgid "Rename failed" +msgstr "" +"ļ\n" +"%s\n" +"Ϊ" + +#: src/utilops.c:2967 +#, fuzzy +msgid "Location" +msgstr "ͼ" + +#: src/utilops.c:3145 +#, fuzzy, c-format +msgid "" +"Unable to delete folder:\n" +"\n" +"%s" +msgstr "" +"޷ɾļ\n" +"%s" + +#: src/utilops.c:3152 +#, c-format +msgid "" +"Removal of folder contents failed at this file:\n" +"\n" +"%s" +msgstr "" + +#: src/utilops.c:3207 src/utilops.c:3291 +#, fuzzy +msgid "Delete folder" +msgstr "ѡ" + +#: src/utilops.c:3211 +#, c-format +msgid "" +"This will delete the symbolic link:\n" +"\n" +"%s\n" +"\n" +"The folder this link points to will not be deleted." +msgstr "" + +#: src/utilops.c:3215 +msgid "Delete symbolic link to folder?" +msgstr "" + +#: src/utilops.c:3230 +#, fuzzy, c-format +msgid "" +"Unable to remove folder %s\n" +"Permissions do not allow writing to the folder." +msgstr "" +"޷ļ\n" +"%s\n" +"ƶ" + +#: src/utilops.c:3242 +#, fuzzy, c-format +msgid "Unable to list contents of folder %s" +msgstr "" +"޷Ŀ¼\n" +"%s" + +#: src/utilops.c:3256 src/utilops.c:3264 +#, fuzzy +msgid "Folder contains subfolders" +msgstr "Ƿļ" + +#: src/utilops.c:3260 +#, c-format +msgid "" +"Unable to delete the folder:\n" +"\n" +"%s\n" +"\n" +"This folder contains subfolders which must be moved before it can be deleted." +msgstr "" + +#: src/utilops.c:3268 +#, fuzzy +msgid "Subfolders:" +msgstr "ƽ" + +#: src/utilops.c:3295 +#, c-format +msgid "" +"This will delete the folder:\n" +"\n" +"%s\n" +"\n" +"The contents of this folder will also be deleted." +msgstr "" + +#: src/utilops.c:3299 +#, fuzzy +msgid "Delete folder?" +msgstr "ɾļ" + +#: src/utilops.c:3303 +#, fuzzy +msgid "Contents:" +msgstr "//(_A)" + +#: src/view_dir.c:30 +#, fuzzy +msgid "_Tree" +msgstr "/鿴/" + +#: src/view_dir.c:502 +msgid "new_folder" +msgstr "" + +#: src/view_dir.c:587 +msgid "_Up to parent" +msgstr "" + +#: src/view_dir.c:592 +#, fuzzy +msgid "_Slideshow" +msgstr "õƬ" + +#: src/view_dir.c:594 +msgid "Slideshow recursive" +msgstr "ݹõƬ" + +#: src/view_dir.c:598 +#, fuzzy +msgid "Find _duplicates..." +msgstr "ѰҸ..." + +#: src/view_dir.c:600 +msgid "Find duplicates recursive..." +msgstr "ݹѰҸ..." + +#: src/view_dir.c:605 +msgid "_New folder..." +msgstr "" + +#: src/view_dir.c:619 +#, fuzzy +msgid "_View as" +msgstr "/鿴(_V)" + +#: src/view_dir.c:631 +#, fuzzy +msgid "Show _hidden files" +msgstr "ʾļ" + +#: src/view_dir.c:634 src/view_file.c:606 +#, fuzzy +msgid "Re_fresh" +msgstr "ˢ" + +#: src/view_file.c:588 +#, fuzzy +msgid "_Sort" +msgstr "" + +#: src/view_file.c:591 +#, fuzzy +msgid "View as _icons" +msgstr "ߴ" + +#: src/view_file.c:597 +#, fuzzy +msgid "Show _thumbnails" +msgstr "ͼ" + +#: src/view_file_list.c:390 +#, c-format +msgid "" +"Invalid file name:\n" +"%s" +msgstr "" +"Ƿļ\n" +"%s" + +#: src/view_file_list.c:1821 +msgid "SC" +msgstr "" + +#: src/window.c:226 +#, fuzzy +msgid "Help" +msgstr "/(_H)" + +#, fuzzy +#~ msgid "Change to folder:" +#~ msgstr "صĿ¼" + +#, fuzzy +#~ msgid "Reset fullscreen info string" +#~ msgstr "ȫ" + +#, fuzzy +#~ msgid "Always show fullscreen info" +#~ msgstr "˳ȫ" + +#, fuzzy +#~ msgid "Fullscreen info string" +#~ msgstr "ȫ" + +#, fuzzy +#~ msgid "List" +#~ msgstr "/鿴/б(_R)" + +#, fuzzy +#~ msgid "View as _tree" +#~ msgstr "/鿴/ȫ(_U)" + +#~ msgid "Show entries that begin with a dot" +#~ msgstr "ʾļ" + +#~ msgid "Find duplicates - Geeqie" +#~ msgstr "ļ - Geeqie" + +#~ msgid "Geeqie full screen" +#~ msgstr "Geeqie ȫ" + +#~ msgid "Geeqie Tools" +#~ msgstr "Geeqie " + +#~ msgid "Help - Geeqie" +#~ msgstr " - Geeqie" + +#~ msgid "Geeqie - exit" +#~ msgstr "Geeqie - ˳" + +#, fuzzy +#~ msgid "Quit Geeqie" +#~ msgstr " - Geeqie" + +#, fuzzy +#~ msgid "Pan View - Geeqie" +#~ msgstr " - Geeqie" + +#, fuzzy +#~ msgid "About - Geeqie" +#~ msgstr " - Geeqie" + +#, fuzzy +#~ msgid "Print - Geeqie" +#~ msgstr " - Geeqie" + +#, fuzzy +#~ msgid "Copy - Geeqie" +#~ msgstr " - Geeqie" + +#, fuzzy +#~ msgid "Move - Geeqie" +#~ msgstr " - Geeqie" + +#, fuzzy +#~ msgid "Delete files - Geeqie" +#~ msgstr "ɾļ" + +#, fuzzy +#~ msgid "Delete file - Geeqie" +#~ msgstr "ɾļ" + +#, fuzzy +#~ msgid "Rename - Geeqie" +#~ msgstr " - Geeqie" + +#, fuzzy +#~ msgid "New folder - Geeqie" +#~ msgstr " - Geeqie" + +#~ msgid "/File/tear1" +#~ msgstr "/ļ/Ƭ1" + +#~ msgid "/File/_New collection" +#~ msgstr "/ļ/ͼ" + +#~ msgid "/File/_Open collection..." +#~ msgstr "/ļ/ͼ(_O)..." + +#~ msgid "/File/sep1" +#~ msgstr "/ļ/һ" + +#, fuzzy +#~ msgid "/File/_Search..." +#~ msgstr "/ļ/(_R)..." + +#~ msgid "/File/_Find duplicates..." +#~ msgstr "/ļ/ѰҸ(_F)..." + +#~ msgid "/File/sep2" +#~ msgstr "/ļ/ڶ" + +#, fuzzy +#~ msgid "/File/_Print..." +#~ msgstr "/ļ/(_R)..." + +#, fuzzy +#~ msgid "/File/N_ew folder..." +#~ msgstr "/ļ/ɾ(_D)..." + +#~ msgid "/File/sep3" +#~ msgstr "/ļ/" + +#~ msgid "/File/_Copy..." +#~ msgstr "/ļ/(_C)..." + +#~ msgid "/File/_Move..." +#~ msgstr "/ļ/ƶ(_M)..." + +#~ msgid "/File/_Rename..." +#~ msgstr "/ļ/(_R)..." + +#~ msgid "/File/_Delete..." +#~ msgstr "/ļ/ɾ(_D)..." + +#~ msgid "/File/sep4" +#~ msgstr "/ļ/Ķ" + +#, fuzzy +#~ msgid "/File/C_lose window" +#~ msgstr "رմ" + +#, fuzzy +#~ msgid "/File/_Quit" +#~ msgstr "/ļ/˳(_X)" + +#~ msgid "/_Edit" +#~ msgstr "/༭(_E)" + +#~ msgid "/Edit/tear1" +#~ msgstr "/༭/Ƭ1" + +#~ msgid "/Edit/editor1" +#~ msgstr "/༭/༭1" + +#~ msgid "/Edit/editor2" +#~ msgstr "/༭/༭2" + +#~ msgid "/Edit/editor3" +#~ msgstr "/༭/༭3" + +#~ msgid "/Edit/editor4" +#~ msgstr "/༭/༭4" + +#~ msgid "/Edit/editor5" +#~ msgstr "/༭/༭5" + +#~ msgid "/Edit/editor6" +#~ msgstr "/༭/༭6" + +#~ msgid "/Edit/editor7" +#~ msgstr "/༭/༭7" + +#~ msgid "/Edit/editor8" +#~ msgstr "/༭/༭8" + +#, fuzzy +#~ msgid "/Edit/editor9" +#~ msgstr "/༭/༭1" + +#, fuzzy +#~ msgid "/Edit/editor0" +#~ msgstr "/༭/༭1" + +#~ msgid "/Edit/sep1" +#~ msgstr "/༭/һ" + +#~ msgid "/Edit/_Adjust" +#~ msgstr "/༭/(_A)" + +#, fuzzy +#~ msgid "/Edit/_Properties" +#~ msgstr "/༭/ѡ(_O)..." + +#~ msgid "/Edit/Adjust/tear1" +#~ msgstr "/༭//Ƭ1" + +#~ msgid "/Edit/Adjust/_Rotate clockwise" +#~ msgstr "/༭//˳ʱת(_R)" + +#~ msgid "/Edit/Adjust/Rotate _counterclockwise" +#~ msgstr "/༭//ʱת(_C)" + +#~ msgid "/Edit/Adjust/Rotate 1_80" +#~ msgstr "/༭//ת 180 " + +#~ msgid "/Edit/Adjust/_Mirror" +#~ msgstr "/༭//(_M)" + +#~ msgid "/Edit/Adjust/_Flip" +#~ msgstr "/༭//ת(_F)" + +#~ msgid "/Edit/sep2" +#~ msgstr "/༭/ڶ" + +#~ msgid "/Edit/Select _all" +#~ msgstr "/༭/ȫѡ(_A)" + +#~ msgid "/Edit/Select _none" +#~ msgstr "/༭/ѡ(_N)" + +#~ msgid "/Edit/sep3" +#~ msgstr "/༭/" + +#~ msgid "/Edit/_Options..." +#~ msgstr "/༭/ѡ(_O)..." + +#~ msgid "/Edit/sep4" +#~ msgstr "/༭/Ķ" + +#~ msgid "/Edit/Set as _wallpaper" +#~ msgstr "/༭/Ϊǽֽ(_W)" + +#~ msgid "/_View" +#~ msgstr "/鿴(_V)" + +#~ msgid "/View/tear1" +#~ msgstr "/鿴/Ƭ1" + +#~ msgid "/View/Zoom _in" +#~ msgstr "/鿴/Ŵ(_I)" + +#~ msgid "/View/Zoom _out" +#~ msgstr "/鿴/С(_O)" + +#~ msgid "/View/Zoom _1:1" +#~ msgstr "/鿴/ŵ 1:1(_1)" + +#~ msgid "/View/sep1" +#~ msgstr "/鿴/һ" + +#~ msgid "/View/_Thumbnails" +#~ msgstr "/鿴/ͼ(_T)" + +#~ msgid "/View/sep2" +#~ msgstr "/鿴/ڶ" + +#~ msgid "/View/F_ull screen" +#~ msgstr "/鿴/ȫ(_U)" + +#~ msgid "/View/sep3" +#~ msgstr "/鿴/" + +#, fuzzy +#~ msgid "/View/_Hide file list" +#~ msgstr "/鿴/()ļб(_H)" + +#, fuzzy +#~ msgid "/View/sep4" +#~ msgstr "/鿴/һ" + +#, fuzzy +#~ msgid "/View/Sort _manager" +#~ msgstr "/鿴/Ŵ(_I)" + +#, fuzzy +#~ msgid "/View/sep5" +#~ msgstr "/鿴/һ" + +#~ msgid "/View/Toggle _slideshow" +#~ msgstr "/鿴/лõʾ(_S)" + +#~ msgid "/View/_Refresh Lists" +#~ msgstr "/鿴/б(_R)" + +#~ msgid "/Help/tear1" +#~ msgstr "//Ƭ1" + +#~ msgid "/Help/sep1" +#~ msgstr "//һ" + +#~ msgid "/Help/_About" +#~ msgstr "//(_A)" + +#~ msgid "Geeqie configuration" +#~ msgstr "Geeqie " + +#~ msgid "/Edit/_Remove old thumbnails" +#~ msgstr "/༭/ɾԭͼ(_R)" + +#, fuzzy +#~ msgid "path" +#~ msgstr "·" + +#~ msgid "Save" +#~ msgstr "" + +#~ msgid "" +#~ "Overwrite collection file:\n" +#~ "%s" +#~ msgstr "" +#~ "ͼļ\n" +#~ "%s" + +#~ msgid "Save collection as:" +#~ msgstr "ͼΪ" + +#~ msgid "Open collection from:" +#~ msgstr "Ӵ˴ͼ񼯣" + +#~ msgid "Open" +#~ msgstr "" + +#~ msgid "Append collection from:" +#~ msgstr "Ӵ˴׷ͼ񼯣" + +#~ msgid "Exit" +#~ msgstr "˳" + +#~ msgid "Ok" +#~ msgstr "ȷ" + +#, fuzzy +#~ msgid "Initial folder" +#~ msgstr "Ƿļ" + +#, fuzzy +#~ msgid "On startup, change to this folder:" +#~ msgstr "ʱı䵽Ŀ¼" + +#~ msgid "Zoom (scaling):" +#~ msgstr "ţ" + +#~ msgid "Place dialogs under mouse" +#~ msgstr "Իλ" + +#~ msgid "Include files of type:" +#~ msgstr "ļͣ" + +#~ msgid "Remove" +#~ msgstr "ɾ" + +#, fuzzy +#~ msgid "Point size:" +#~ msgstr "ƽ" + +#~ msgid "" +#~ "Overwrite file:\n" +#~ " %s\n" +#~ " with:\n" +#~ " %s" +#~ msgstr "" +#~ "ļ\n" +#~ " %s\n" +#~ " ԣ\n" +#~ " %s" + +#~ msgid "Yes" +#~ msgstr "" + +#~ msgid "Yes to all" +#~ msgstr "ȫ" + +#~ msgid "" +#~ "Overwrite file:\n" +#~ "%s\n" +#~ " with:\n" +#~ "%s" +#~ msgstr "" +#~ "ļ\n" +#~ " %s\n" +#~ " ԣ\n" +#~ " %s" + +#~ msgid "" +#~ "Copy file:\n" +#~ "%s\n" +#~ "to:" +#~ msgstr "" +#~ "ļ\n" +#~ "%s\n" +#~ "" + +#~ msgid "" +#~ "Move file:\n" +#~ "%s\n" +#~ "to:" +#~ msgstr "" +#~ "ļ\n" +#~ "%s\n" +#~ "ƶ" + +#~ msgid "About to delete multiple files..." +#~ msgstr "Ҫɾļ..." + +#~ msgid "" +#~ "Overwrite file:\n" +#~ "%s\n" +#~ "by renaming:\n" +#~ "%s" +#~ msgstr "" +#~ "ļ\n" +#~ "%s\n" +#~ "Ϊ\n" +#~ "%s" + +#~ msgid "to:" +#~ msgstr "" + +#~ msgid "Create" +#~ msgstr "" + +#~ msgid "Initial directory" +#~ msgstr "ʼĿ¼" + +#~ msgid "" +#~ "Unable to create directory:\n" +#~ "%s" +#~ msgstr "" +#~ "޷Ŀ¼\n" +#~ "%s" + +#~ msgid "Error creating directory" +#~ msgstr "Ŀ¼" + +#, fuzzy +#~ msgid "/View/Image _details" +#~ msgstr "/鿴/лõʾ(_S)" + +#~ msgid "Add contents" +#~ msgstr "" + +#~ msgid "Add contents recursive" +#~ msgstr "ݹ" + +#~ msgid "Skip directories" +#~ msgstr "Ŀ¼" + +#~ msgid "Invalid directory" +#~ msgstr "ЧĿ¼" + +#~ msgid "Geeqie - copy" +#~ msgstr "Geeqie - " + +#~ msgid "Geeqie - move" +#~ msgstr "Geeqie - ƶ" + +#~ msgid "Directory exists" +#~ msgstr "Ŀ¼Ѵ" + +#~ msgid "Geeqie - new directory" +#~ msgstr "Geeqie - ½Ŀ¼" + +#~ msgid "/File/Create _Dir..." +#~ msgstr "/ļ/Ŀ¼(_D)..." + +#~ msgid "Edit" +#~ msgstr "༭" + +#~ msgid "Insert file drops at pointer location" +#~ msgstr "λòϷļ" + +#~ msgid "File named %s already exists." +#~ msgstr "Ϊ %s ļѴڡ" + +#, fuzzy +#~ msgid "top" +#~ msgstr "" + +#~ msgid "Geeqie running: %s\n" +#~ msgstr "Geeqie У%s\n" + +#~ msgid "Electric Eyes" +#~ msgstr "" + +#~ msgid "Apply" +#~ msgstr "Ӧ" + +#~ msgid "format: [.foo;.bar]" +#~ msgstr "ʽ[.foo;.bar]" + +#~ msgid "Unable to delete dir: %s\n" +#~ msgstr "޷ɾĿ¼: %s\n" + +#~ msgid "create dir failed: %s\n" +#~ msgstr "Ŀ¼ʧ: %s\n" + +#~ msgid " Ok " +#~ msgstr " ȷ " + +#~ msgid "External Editors" +#~ msgstr "ڲ༭" diff -Nru geeqie-1.0/src/Makefile.am geeqie-1.1/src/Makefile.am --- geeqie-1.0/src/Makefile.am 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/Makefile.am 2012-08-12 20:13:40.000000000 +0000 @@ -160,10 +160,18 @@ image.h \ image-load.c \ image-load.h \ + image_load_gdk.c\ + image_load_gdk.h\ + image_load_jpeg.c\ + image_load_jpeg.h\ + image_load_tiff.c\ + image_load_tiff.h\ image-overlay.c \ image-overlay.h \ img-view.c \ img-view.h \ + jpeg_parser.c \ + jpeg_parser.h \ layout.c \ layout.h \ layout_config.c \ @@ -199,6 +207,8 @@ pan-view.h \ pixbuf-renderer.c \ pixbuf-renderer.h \ + renderer-tiles.c \ + renderer-tiles.h \ pixbuf_util.c \ pixbuf_util.h \ preferences.c \ @@ -243,7 +253,7 @@ window.c \ window.h -geeqie_LDADD = $(GTK_LIBS) $(GLIB_LIBS) $(INTLLIBS) $(LCMS_LIBS) $(EXIV2_LIBS) $(LIBCHAMPLAIN_LIBS) $(LIBCHAMPLAIN_GTK_LIBS) +geeqie_LDADD = $(GTK_LIBS) $(GLIB_LIBS) $(INTLLIBS) $(JPEG_LIBS) $(TIFF_LIBS) $(LCMS_LIBS) $(EXIV2_LIBS) $(LIBCHAMPLAIN_LIBS) $(LIBCHAMPLAIN_GTK_LIBS) EXTRA_DIST = \ $(extra_SLIK) diff -Nru geeqie-1.0/src/Makefile.in geeqie-1.1/src/Makefile.in --- geeqie-1.0/src/Makefile.in 2010-02-17 21:21:45.000000000 +0000 +++ geeqie-1.1/src/Makefile.in 2012-08-12 20:14:07.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -17,8 +18,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c @@ -42,8 +44,8 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/auxdir/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(bindir)" -binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) PROGRAMS = $(bin_PROGRAMS) am__objects_1 = ui_bookmark.$(OBJEXT) ui_fileops.$(OBJEXT) \ ui_help.$(OBJEXT) ui_menu.$(OBJEXT) ui_misc.$(OBJEXT) \ @@ -65,7 +67,9 @@ format_nikon.$(OBJEXT) format_olympus.$(OBJEXT) \ format_raw.$(OBJEXT) fullscreen.$(OBJEXT) histogram.$(OBJEXT) \ history_list.$(OBJEXT) image.$(OBJEXT) image-load.$(OBJEXT) \ - image-overlay.$(OBJEXT) img-view.$(OBJEXT) layout.$(OBJEXT) \ + image_load_gdk.$(OBJEXT) image_load_jpeg.$(OBJEXT) \ + image_load_tiff.$(OBJEXT) image-overlay.$(OBJEXT) \ + img-view.$(OBJEXT) jpeg_parser.$(OBJEXT) layout.$(OBJEXT) \ layout_config.$(OBJEXT) layout_image.$(OBJEXT) \ layout_util.$(OBJEXT) lirc.$(OBJEXT) logwindow.$(OBJEXT) \ main.$(OBJEXT) md5-util.$(OBJEXT) menu.$(OBJEXT) \ @@ -73,23 +77,26 @@ pan-calendar.$(OBJEXT) pan-folder.$(OBJEXT) pan-grid.$(OBJEXT) \ pan-item.$(OBJEXT) pan-timeline.$(OBJEXT) pan-util.$(OBJEXT) \ pan-view.$(OBJEXT) pixbuf-renderer.$(OBJEXT) \ - pixbuf_util.$(OBJEXT) preferences.$(OBJEXT) print.$(OBJEXT) \ - remote.$(OBJEXT) rcfile.$(OBJEXT) search.$(OBJEXT) \ - secure_save.$(OBJEXT) similar.$(OBJEXT) slideshow.$(OBJEXT) \ - thumb.$(OBJEXT) thumb_standard.$(OBJEXT) trash.$(OBJEXT) \ - uri_utils.$(OBJEXT) utilops.$(OBJEXT) view_dir.$(OBJEXT) \ - view_dir_list.$(OBJEXT) view_dir_tree.$(OBJEXT) \ - view_file.$(OBJEXT) view_file_list.$(OBJEXT) \ - view_file_icon.$(OBJEXT) window.$(OBJEXT) + renderer-tiles.$(OBJEXT) pixbuf_util.$(OBJEXT) \ + preferences.$(OBJEXT) print.$(OBJEXT) remote.$(OBJEXT) \ + rcfile.$(OBJEXT) search.$(OBJEXT) secure_save.$(OBJEXT) \ + similar.$(OBJEXT) slideshow.$(OBJEXT) thumb.$(OBJEXT) \ + thumb_standard.$(OBJEXT) trash.$(OBJEXT) uri_utils.$(OBJEXT) \ + utilops.$(OBJEXT) view_dir.$(OBJEXT) view_dir_list.$(OBJEXT) \ + view_dir_tree.$(OBJEXT) view_file.$(OBJEXT) \ + view_file_list.$(OBJEXT) view_file_icon.$(OBJEXT) \ + window.$(OBJEXT) geeqie_OBJECTS = $(am_geeqie_OBJECTS) am__DEPENDENCIES_1 = geeqie_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/auxdir/depcomp am__depfiles_maybe = depfiles +am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) @@ -111,9 +118,37 @@ DATA = $(noinst_DATA) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive +AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ + $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ + distdir ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ @@ -194,6 +229,8 @@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ +JPEG_CFLAGS = @JPEG_CFLAGS@ +JPEG_LIBS = @JPEG_LIBS@ LCMS_CFLAGS = @LCMS_CFLAGS@ LCMS_LIBS = @LCMS_LIBS@ LDFLAGS = @LDFLAGS@ @@ -207,6 +244,7 @@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ +MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ @@ -216,10 +254,13 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATHSEP = @PATHSEP@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ @@ -227,6 +268,8 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ +TIFF_CFLAGS = @TIFF_CFLAGS@ +TIFF_LIBS = @TIFF_LIBS@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WINDRES = @WINDRES@ @@ -418,10 +461,18 @@ image.h \ image-load.c \ image-load.h \ + image_load_gdk.c\ + image_load_gdk.h\ + image_load_jpeg.c\ + image_load_jpeg.h\ + image_load_tiff.c\ + image_load_tiff.h\ image-overlay.c \ image-overlay.h \ img-view.c \ img-view.h \ + jpeg_parser.c \ + jpeg_parser.h \ layout.c \ layout.h \ layout_config.c \ @@ -457,6 +508,8 @@ pan-view.h \ pixbuf-renderer.c \ pixbuf-renderer.h \ + renderer-tiles.c \ + renderer-tiles.h \ pixbuf_util.c \ pixbuf_util.h \ preferences.c \ @@ -501,7 +554,7 @@ window.c \ window.h -geeqie_LDADD = $(GTK_LIBS) $(GLIB_LIBS) $(INTLLIBS) $(LCMS_LIBS) $(EXIV2_LIBS) $(LIBCHAMPLAIN_LIBS) $(LIBCHAMPLAIN_GTK_LIBS) +geeqie_LDADD = $(GTK_LIBS) $(GLIB_LIBS) $(INTLLIBS) $(JPEG_LIBS) $(TIFF_LIBS) $(LCMS_LIBS) $(EXIV2_LIBS) $(LIBCHAMPLAIN_LIBS) $(LIBCHAMPLAIN_GTK_LIBS) EXTRA_DIST = \ $(extra_SLIK) @@ -513,14 +566,14 @@ @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( 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 + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu src/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -538,26 +591,41 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" - @list='$(bin_PROGRAMS)'; 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 + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p; \ + then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ + } \ + ; 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 + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(bindir)" && rm -f $$files clean-binPROGRAMS: -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) @@ -612,7 +680,11 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/image-load.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/image-overlay.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/image.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/image_load_gdk.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/image_load_jpeg.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/image_load_tiff.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/img-view.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jpeg_parser.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/layout.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/layout_config.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/layout_image.Po@am__quote@ @@ -638,6 +710,7 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/print.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rcfile.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/remote.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/renderer-tiles.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/search.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/secure_save.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/similar.Po@am__quote@ @@ -667,28 +740,28 @@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .cc.o: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCXX_TRUE@ $(am__mv) $(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 +@am__fastdepCXX_TRUE@ $(am__mv) $(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) '$<'` @@ -700,7 +773,7 @@ # (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'; \ + @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ @@ -717,7 +790,7 @@ else \ local_target="$$target"; \ fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ @@ -725,7 +798,7 @@ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): - @failcom='exit 1'; \ + @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ @@ -751,16 +824,16 @@ else \ local_target="$$target"; \ fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) @@ -768,14 +841,14 @@ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + $(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=; \ + set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ @@ -787,7 +860,7 @@ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ - tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ @@ -796,29 +869,34 @@ 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 \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - 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" \ + test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique + $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags @@ -839,29 +917,44 @@ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done - list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + @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 && \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$top_distdir" \ - distdir="$$distdir/$$subdir" \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ + am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ @@ -895,6 +988,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -915,6 +1009,8 @@ html: html-recursive +html-am: + info: info-recursive info-am: @@ -923,18 +1019,28 @@ install-dvi: install-dvi-recursive +install-dvi-am: + install-exec-am: install-binPROGRAMS install-html: install-html-recursive +install-html-am: + install-info: install-info-recursive +install-info-am: + install-man: install-pdf: install-pdf-recursive +install-pdf-am: + install-ps: install-ps-recursive +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-recursive @@ -956,8 +1062,8 @@ uninstall-am: uninstall-binPROGRAMS -.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ - install-strip +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ + install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-binPROGRAMS \ @@ -996,6 +1102,7 @@ gq-marshal.c: gq-marshal.list (echo "#include \"gq-marshal.h\"" ; $(GLIB_GENMARSHAL) --prefix=gq_marshal $(srcdir)/gq-marshal.list --body ) >$@ + # 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: diff -Nru geeqie-1.0/src/advanced_exif.c geeqie-1.1/src/advanced_exif.c --- geeqie-1.0/src/advanced_exif.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/advanced_exif.c 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/advanced_exif.h geeqie-1.1/src/advanced_exif.h --- geeqie-1.0/src/advanced_exif.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/advanced_exif.h 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/bar.c geeqie-1.1/src/bar.c --- geeqie-1.0/src/bar.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/bar.c 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * @@ -457,7 +457,11 @@ if (!bd) return; WRITE_NL(); WRITE_STRING("width); WRITE_STRING(">"); diff -Nru geeqie-1.0/src/bar.h geeqie-1.1/src/bar.h --- geeqie-1.0/src/bar.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/bar.h 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * diff -Nru geeqie-1.0/src/bar_comment.c geeqie-1.1/src/bar_comment.c --- geeqie-1.0/src/bar_comment.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/bar_comment.c 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -141,7 +141,11 @@ pcd = g_object_get_data(G_OBJECT(bar), "pane_data"); if (!pcd) return FALSE; +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_has_focus(pcd->comment_view)) return gtk_widget_event(pcd->comment_view, event); +#else if (GTK_WIDGET_HAS_FOCUS(pcd->comment_view)) return gtk_widget_event(pcd->comment_view, event); +#endif return FALSE; } diff -Nru geeqie-1.0/src/bar_comment.h geeqie-1.1/src/bar_comment.h --- geeqie-1.0/src/bar_comment.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/bar_comment.h 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * diff -Nru geeqie-1.0/src/bar_exif.c geeqie-1.1/src/bar_exif.c --- geeqie-1.0/src/bar_exif.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/bar_exif.c 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * @@ -301,7 +301,11 @@ ExifEntry *ee = g_object_get_data(G_OBJECT(entry), "entry_data"); work = work->next; +#if GTK_CHECK_VERSION(2,20,0) + if (ee->editable && gtk_widget_has_focus(ee->value_widget)) ret = gtk_widget_event(ee->value_widget, event); +#else if (ee->editable && GTK_WIDGET_HAS_FOCUS(ee->value_widget)) ret = gtk_widget_event(ee->value_widget, event); +#endif } g_list_free(list); return ret; @@ -396,7 +400,11 @@ if (entry == new_entry) continue; +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_is_drawable(entry) && +#else if (GTK_WIDGET_DRAWABLE(entry) && +#endif gtk_widget_translate_coordinates(pane, entry, x, y, &nx, &ny) && ny < entry->allocation.height / 2) break; pos++; diff -Nru geeqie-1.0/src/bar_exif.h geeqie-1.1/src/bar_exif.h --- geeqie-1.0/src/bar_exif.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/bar_exif.h 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/bar_gps.c geeqie-1.1/src/bar_gps.c --- geeqie-1.0/src/bar_gps.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/bar_gps.c 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Colin Clark * diff -Nru geeqie-1.0/src/bar_gps.h geeqie-1.1/src/bar_gps.h --- geeqie-1.0/src/bar_gps.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/bar_gps.h 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * diff -Nru geeqie-1.0/src/bar_histogram.c geeqie-1.1/src/bar_histogram.c --- geeqie-1.0/src/bar_histogram.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/bar_histogram.c 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * @@ -61,7 +61,11 @@ /* histmap_get is relatively expensive, run it only when we really need it and with lower priority than pixbuf_renderer FIXME: this does not work for fullscreen*/ +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_is_drawable(phd->drawing_area)) +#else if (GTK_WIDGET_DRAWABLE(phd->drawing_area)) +#endif { if (!phd->idle_id) { @@ -153,7 +157,11 @@ if (!phd->pixbuf) return TRUE; gdk_draw_pixbuf(widget->window, +#if GTK_CHECK_VERSION(2,20,0) + widget->style->fg_gc[gtk_widget_get_state(widget)], +#else widget->style->fg_gc[GTK_WIDGET_STATE (widget)], +#endif phd->pixbuf, 0, 0, 0, 0, diff -Nru geeqie-1.0/src/bar_histogram.h geeqie-1.1/src/bar_histogram.h --- geeqie-1.0/src/bar_histogram.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/bar_histogram.h 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * diff -Nru geeqie-1.0/src/bar_keywords.c geeqie-1.1/src/bar_keywords.c --- geeqie-1.0/src/bar_keywords.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/bar_keywords.c 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -264,7 +264,11 @@ pkd = g_object_get_data(G_OBJECT(bar), "pane_data"); if (!pkd) return FALSE; +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_has_focus(pkd->keyword_view)) return gtk_widget_event(pkd->keyword_view, event); +#else if (GTK_WIDGET_HAS_FOCUS(pkd->keyword_view)) return gtk_widget_event(pkd->keyword_view, event); +#endif return FALSE; } @@ -1085,6 +1089,62 @@ bar_keyword_tree_sync(pkd); } +/** + * \brief Callback for adding selected keyword to all selected images. + */ +static void bar_pane_keywords_add_to_selected_cb(GtkWidget *menu_widget, gpointer data) +{ + PaneKeywordsData *pkd = data; + GtkTreeIter iter; /* This is the iter which initial holds the current keyword */ + GtkTreeIter child_iter; + GtkTreeModel *model; + GtkTreeModel *keyword_tree; + GList *list, *work; + GList *keywords = NULL; + + GtkTextBuffer *keyword_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(pkd->keyword_view)); + + /* Aquire selected keyword */ + if (pkd->click_tpath) + { + gboolean is_keyword = TRUE; + + model = gtk_tree_view_get_model(GTK_TREE_VIEW(pkd->keyword_treeview)); + if (!gtk_tree_model_get_iter(model, &iter, pkd->click_tpath)) return; + gtk_tree_model_get(model, &iter, FILTER_KEYWORD_COLUMN_IS_KEYWORD, &is_keyword, -1); + if (!is_keyword) return; + } + else + return; + + keyword_tree = gtk_tree_model_filter_get_model(GTK_TREE_MODEL_FILTER(model)); + gtk_tree_model_filter_convert_iter_to_child_iter(GTK_TREE_MODEL_FILTER(model), &child_iter, &iter); + + list = keyword_list_pull(pkd->keyword_view); /* Get the left keyword view */ + + /* Now set the current image */ + keyword_tree_set(keyword_tree, &child_iter, &list); + + keyword_list_push(pkd->keyword_view, list); /* Set the left keyword view */ + string_list_free(list); + + bar_pane_keywords_changed(keyword_buffer, pkd); /* Get list of all keywords in the hierarchy */ + + gtk_tree_model_filter_convert_iter_to_child_iter(GTK_TREE_MODEL_FILTER(model), &child_iter, &iter); + keywords = keyword_tree_get(keyword_tree, &child_iter); + + list = layout_selection_list(pkd->pane.lw); + work = list; + while (work) + { + FileData *fd = work->data; + work = work->next; + metadata_append_list(fd, KEYWORD_KEY, keywords); + } + filelist_free(list); + string_list_free(keywords); +} + static void bar_pane_keywords_menu_popup(GtkWidget *widget, PaneKeywordsData *pkd, gint x, gint y) { GtkWidget *menu; @@ -1102,6 +1162,10 @@ menu_item_add_divider(menu); + menu_item_add(menu, _("Add keyword to all selected images"), G_CALLBACK(bar_pane_keywords_add_to_selected_cb), pkd); + + menu_item_add_divider(menu); + if (pkd->click_tpath) { /* for the entry */ diff -Nru geeqie-1.0/src/bar_keywords.h geeqie-1.1/src/bar_keywords.h --- geeqie-1.0/src/bar_keywords.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/bar_keywords.h 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * diff -Nru geeqie-1.0/src/bar_sort.c geeqie-1.1/src/bar_sort.c --- geeqie-1.0/src/bar_sort.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/bar_sort.c 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -99,7 +99,7 @@ history_list_free_key(SORT_KEY_COLLECTIONS); bookmark_list_set_key(bookmarks, SORT_KEY_COLLECTIONS); - dir_fd = file_data_new_simple(get_collections_dir()); + dir_fd = file_data_new_dir(get_collections_dir()); filelist_read(dir_fd, &list, NULL); file_data_unref(dir_fd); @@ -205,18 +205,18 @@ GList *list; gchar *src_dir; - list = g_list_append(NULL, file_data_new_simple(sd->undo_dest)); + list = g_list_append(NULL, file_data_new_group(sd->undo_dest)); src_dir = remove_level_from_path(sd->undo_src); file_util_move_simple(list, src_dir, sd->lw->window); g_free(src_dir); } break; case BAR_SORT_COPY: - file_util_delete(file_data_new_simple(sd->undo_dest), NULL, button); + file_util_delete(file_data_new_group(sd->undo_dest), NULL, button); break; default: /* undo external command */ - file_util_delete(file_data_new_simple(sd->undo_dest), NULL, button); + file_util_delete(file_data_new_group(sd->undo_dest), NULL, button); break; } @@ -224,7 +224,7 @@ if (isfile(sd->undo_src)) { - layout_image_set_fd(sd->lw, file_data_new_simple(sd->undo_src)); + layout_image_set_fd(sd->lw, file_data_new_group(sd->undo_src)); } bar_sort_undo_set(sd, NULL, NULL, NULL); @@ -241,7 +241,7 @@ source = work->data; work = work->next; - collect_manager_remove(file_data_new_simple(source), sd->undo_dest); + collect_manager_remove(file_data_new_group(source), sd->undo_dest); } bar_sort_undo_set(sd, NULL, NULL, NULL); @@ -724,7 +724,11 @@ if (!sd) return; WRITE_NL(); WRITE_STRING("button_close)) return; +#else if (!GTK_WIDGET_SENSITIVE(cm->button_close)) return; +#endif cache_maintain_home_close(cm); } @@ -287,7 +291,7 @@ cache_folder = get_thumbnails_cache_dir(); } - dir_fd = file_data_new_simple(cache_folder); + dir_fd = file_data_new_dir(cache_folder); if (!filelist_read(dir_fd, NULL, &dlist)) { file_data_unref(dir_fd); @@ -366,7 +370,7 @@ base_length = strlen(homedir()) + strlen("/") + strlen(GQ_CACHE_RC_THUMB); base = g_strconcat(homedir(), "/", GQ_CACHE_RC_THUMB, dir, NULL); - dir_fd = file_data_new_simple(base); + dir_fd = file_data_new_dir(base); g_free(base); if (filelist_read(dir_fd, &flist, &dlist)) @@ -438,7 +442,7 @@ GList *work; cachedir = g_build_filename(dir, GQ_CACHE_LOCAL_THUMB, NULL); - cachedir_fd = file_data_new_simple(cachedir); + cachedir_fd = file_data_new_dir(cachedir); g_free(cachedir); filelist_read(cachedir_fd, &list, NULL); @@ -708,7 +712,11 @@ { CleanData *cd = data; +#if GTK_CHECK_VERSION(2,20,0) + if (!gtk_widget_get_sensitive(cd->button_close)) return; +#else if (!GTK_WIDGET_SENSITIVE(cd->button_close)) return; +#endif cache_manager_render_reset(cd); generic_dialog_close(cd->gd); @@ -823,7 +831,11 @@ CleanData *cd = data; gchar *path; +#if GTK_CHECK_VERSION(2,20,0) + if (cd->list || !gtk_widget_get_sensitive(cd->button_start)) return; +#else if (cd->list || !GTK_WIDGET_SENSITIVE(cd->button_start)) return; +#endif path = remove_trailing_slash((gtk_entry_get_text(GTK_ENTRY(cd->entry)))); parse_out_relatives(path); @@ -844,7 +856,7 @@ spinner_set_interval(cd->spinner, SPINNER_SPEED); - dir_fd = file_data_new_simple(path); + dir_fd = file_data_new_dir(path); cache_manager_render_folder(cd, dir_fd); file_data_unref(dir_fd); while (cache_manager_render_file(cd)); @@ -920,7 +932,11 @@ { CleanData *cd = data; +#if GTK_CHECK_VERSION(2,20,0) + if (!gtk_widget_get_sensitive(cd->button_close)) return; +#else if (!GTK_WIDGET_SENSITIVE(cd->button_close)) return; +#endif generic_dialog_close(cd->gd); @@ -1033,7 +1049,11 @@ gchar *path; FileData *dir_fd; +#if GTK_CHECK_VERSION(2,20,0) + if (cd->list || !gtk_widget_get_sensitive(cd->button_start)) return; +#else if (cd->list || !GTK_WIDGET_SENSITIVE(cd->button_start)) return; +#endif gtk_widget_set_sensitive(cd->button_start, FALSE); gtk_widget_set_sensitive(cd->button_stop, TRUE); @@ -1042,21 +1062,21 @@ gtk_progress_bar_set_text(GTK_PROGRESS_BAR(cd->progress), _("running...")); path = g_build_filename(homedir(), THUMB_FOLDER_GLOBAL, THUMB_FOLDER_NORMAL, NULL); - dir_fd = file_data_new_simple(path); + dir_fd = file_data_new_dir(path); filelist_read(dir_fd, &list, NULL); cd->list = list; file_data_unref(dir_fd); g_free(path); path = g_build_filename(homedir(), THUMB_FOLDER_GLOBAL, THUMB_FOLDER_LARGE, NULL); - dir_fd = file_data_new_simple(path); + dir_fd = file_data_new_dir(path); filelist_read(dir_fd, &list, NULL); cd->list = g_list_concat(cd->list, list); file_data_unref(dir_fd); g_free(path); path = g_build_filename(homedir(), THUMB_FOLDER_GLOBAL, THUMB_FOLDER_FAIL, NULL); - dir_fd = file_data_new_simple(path); + dir_fd = file_data_new_dir(path); filelist_read(dir_fd, &list, NULL); cd->list = g_list_concat(cd->list, list); file_data_unref(dir_fd); diff -Nru geeqie-1.0/src/cache_maint.h geeqie-1.1/src/cache_maint.h --- geeqie-1.0/src/cache_maint.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/cache_maint.h 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/cellrenderericon.c geeqie-1.1/src/cellrenderericon.c --- geeqie-1.0/src/cellrenderericon.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/cellrenderericon.c 2012-08-12 20:13:40.000000000 +0000 @@ -20,6 +20,7 @@ */ #include +#include /* To define GTK_CHECK_VERSION */ #include "cellrenderericon.h" #include "intl.h" @@ -646,14 +647,22 @@ if ((flags & GTK_CELL_RENDERER_SELECTED) == GTK_CELL_RENDERER_SELECTED) { +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_has_focus(widget)) +#else if (GTK_WIDGET_HAS_FOCUS(widget)) +#endif state = GTK_STATE_SELECTED; else state = GTK_STATE_ACTIVE; } else { +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_state(widget) == GTK_STATE_INSENSITIVE) +#else if (GTK_WIDGET_STATE(widget) == GTK_STATE_INSENSITIVE) +#endif state = GTK_STATE_INSENSITIVE; else state = GTK_STATE_NORMAL; @@ -756,7 +765,11 @@ } } +#if GTK_CHECK_VERSION(2,20,0) + if (cellicon->focused && gtk_widget_has_focus(widget)) +#else if (cellicon->focused && GTK_WIDGET_HAS_FOCUS(widget)) +#endif { gtk_paint_focus(widget->style, window, state, diff -Nru geeqie-1.0/src/collect-dlg.c geeqie-1.1/src/collect-dlg.c --- geeqie-1.0/src/collect-dlg.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/collect-dlg.c 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/collect-dlg.h geeqie-1.1/src/collect-dlg.h --- geeqie-1.0/src/collect-dlg.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/collect-dlg.h 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/collect-io.c geeqie-1.1/src/collect-io.c --- geeqie-1.0/src/collect-io.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/collect-io.c 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -160,7 +160,7 @@ if (!flush) changed |= collect_manager_process_action(entry, &buf); - valid = (buf[0] == G_DIR_SEPARATOR && collection_add_check(cd, file_data_new_simple(buf), FALSE, TRUE)); + valid = (buf[0] == G_DIR_SEPARATOR && collection_add_check(cd, file_data_new_group(buf), FALSE, TRUE)); if (!valid) DEBUG_1("collection invalid file: %s", buf); total++; @@ -190,7 +190,7 @@ gchar *buf = NULL; while (collect_manager_process_action(entry, &buf)) { - collection_add_check(cd, file_data_new_simple(buf), FALSE, TRUE); + collection_add_check(cd, file_data_new_group(buf), FALSE, TRUE); changed = TRUE; g_free(buf); buf = NULL; @@ -673,7 +673,7 @@ GList *work; FileData *dir_fd; - dir_fd = file_data_new_simple(get_collections_dir()); + dir_fd = file_data_new_dir(get_collections_dir()); filelist_read(dir_fd, &list, NULL); file_data_unref(dir_fd); diff -Nru geeqie-1.0/src/collect-io.h geeqie-1.1/src/collect-io.h --- geeqie-1.0/src/collect-io.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/collect-io.h 2012-08-12 20:13:40.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/collect-table.c geeqie-1.1/src/collect-table.c --- geeqie-1.0/src/collect-table.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/collect-table.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -537,7 +537,11 @@ gdk_window_get_pointer(NULL, &x, &y, NULL); +#if GTK_CHECK_VERSION(2,20,0) + if (!gtk_widget_get_realized(ct->tip_window)) gtk_widget_realize(ct->tip_window); +#else if (!GTK_WIDGET_REALIZED(ct->tip_window)) gtk_widget_realize(ct->tip_window); +#endif gtk_window_move(GTK_WINDOW(ct->tip_window), x + 16, y + 16); gtk_widget_show(ct->tip_window); } @@ -1550,7 +1554,11 @@ layout_image_set_collection(NULL, ct->cd, info); } } +#if GTK_CHECK_VERSION(2,20,0) + else if (!gtk_widget_has_focus(ct->listview)) +#else else if (!GTK_WIDGET_HAS_FOCUS(ct->listview)) +#endif { gtk_widget_grab_focus(ct->listview); } @@ -1716,7 +1724,11 @@ "show_text", ct->show_text, NULL); } } +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_realized(ct->listview)) gtk_tree_view_columns_autosize(GTK_TREE_VIEW(ct->listview)); +#else if (GTK_WIDGET_REALIZED(ct->listview)) gtk_tree_view_columns_autosize(GTK_TREE_VIEW(ct->listview)); +#endif } row = -1; diff -Nru geeqie-1.0/src/collect-table.h geeqie-1.1/src/collect-table.h --- geeqie-1.0/src/collect-table.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/collect-table.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/collect.c geeqie-1.1/src/collect.c --- geeqie-1.0/src/collect.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/collect.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/collect.h geeqie-1.1/src/collect.h --- geeqie-1.0/src/collect.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/collect.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/color-man.c geeqie-1.1/src/color-man.c --- geeqie-1.0/src/color-man.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/color-man.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/color-man.h geeqie-1.1/src/color-man.h --- geeqie-1.0/src/color-man.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/color-man.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/compat.c geeqie-1.1/src/compat.c --- geeqie-1.0/src/compat.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/compat.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: Vladimir Nadvornik / Laurent Monin * diff -Nru geeqie-1.0/src/compat.h geeqie-1.1/src/compat.h --- geeqie-1.0/src/compat.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/compat.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: Vladimir Nadvornik / Laurent Monin * diff -Nru geeqie-1.0/src/debug.c geeqie-1.1/src/debug.c --- geeqie-1.0/src/debug.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/debug.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: Vladimir Nadvornik, Laurent Monin * @@ -17,31 +17,43 @@ #include - /* * Logging functions */ -gint log_domain_printf(const gchar *domain, const gchar *format, ...) +static gboolean log_msg_cb(gpointer data) +{ + gchar *buf = data; + log_window_append(buf, LOG_MSG); + g_free(buf); + return FALSE; +} + +static gboolean log_normal_cb(gpointer data) +{ + gchar *buf = data; + log_window_append(buf, LOG_NORMAL); + g_free(buf); + return FALSE; +} + +void log_domain_printf(const gchar *domain, const gchar *format, ...) { va_list ap; - gchar buf[4096]; - gint ret; + gchar *buf; va_start(ap, format); - ret = g_vsnprintf(buf, sizeof(buf), format, ap); + buf = g_strdup_vprintf(format, ap); va_end(ap); print_term(buf); if (strcmp(domain, DOMAIN_INFO) == 0) - log_window_append(buf, LOG_NORMAL); + g_idle_add(log_normal_cb, buf); else - log_window_append(buf, LOG_MSG); + g_idle_add(log_msg_cb, buf); - return ret; } - /* * Debugging only functions */ diff -Nru geeqie-1.0/src/debug.h geeqie-1.1/src/debug.h --- geeqie-1.0/src/debug.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/debug.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: Vladimir Nadvornik, Laurent Monin * @@ -17,7 +17,7 @@ #define DOMAIN_DEBUG "debug" #define DOMAIN_INFO "info" -gint log_domain_printf(const gchar *domain, const gchar *format, ...) G_GNUC_PRINTF(2, 3); +void log_domain_printf(const gchar *domain, const gchar *format, ...) G_GNUC_PRINTF(2, 3); #define log_printf(...) log_domain_printf(DOMAIN_INFO, __VA_ARGS__) #ifdef DEBUG diff -Nru geeqie-1.0/src/desktop_file.c geeqie-1.1/src/desktop_file.c --- geeqie-1.0/src/desktop_file.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/desktop_file.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * diff -Nru geeqie-1.0/src/desktop_file.h geeqie-1.1/src/desktop_file.h --- geeqie-1.0/src/desktop_file.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/desktop_file.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * diff -Nru geeqie-1.0/src/dnd.c geeqie-1.1/src/dnd.c --- geeqie-1.0/src/dnd.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/dnd.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/dnd.h geeqie-1.1/src/dnd.h --- geeqie-1.0/src/dnd.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/dnd.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/dupe.c geeqie-1.1/src/dupe.c --- geeqie-1.0/src/dupe.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/dupe.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2005 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -1116,7 +1116,7 @@ { *rank = 0.0; - if (a == b) return FALSE; + if (a->fd->path == b->fd->path) return FALSE; if (mask & DUPE_MATCH_PATH) { @@ -2216,7 +2216,11 @@ { GList *list; +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_has_focus(dw->second_listview)) +#else if (GTK_WIDGET_HAS_FOCUS(dw->second_listview)) +#endif { list = dupe_listview_get_selection(dw, dw->second_listview); } @@ -2860,7 +2864,11 @@ GList *slist; DupeItem *di = NULL; +#if GTK_CHECK_VERSION(2,20,0) + on_second = gtk_widget_has_focus(dw->second_listview); +#else on_second = GTK_WIDGET_HAS_FOCUS(dw->second_listview); +#endif if (on_second) { diff -Nru geeqie-1.0/src/dupe.h geeqie-1.1/src/dupe.h --- geeqie-1.0/src/dupe.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/dupe.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/editors.c geeqie-1.1/src/editors.c --- geeqie-1.0/src/editors.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/editors.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -135,6 +135,7 @@ {"image/x-xcf", ".xcf"}, {"image/x-xpixmap", ".xpm"}, {"image/x-x3f", ".x3f"}, + {"application/x-ptoptimizer-script", ".pto"}, {NULL, NULL}}; gint i, j; diff -Nru geeqie-1.0/src/editors.h geeqie-1.1/src/editors.h --- geeqie-1.0/src/editors.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/editors.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/exif-common.c geeqie-1.1/src/exif-common.c --- geeqie-1.0/src/exif-common.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/exif-common.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * */ @@ -9,6 +9,8 @@ # include "config.h" #endif +#define _XOPEN_SOURCE + #include #include #include @@ -41,6 +43,7 @@ #include "format_raw.h" #include "ui_fileops.h" #include "cache.h" +#include "jpeg_parser.h" static gdouble exif_rational_to_double(ExifRational *r, gint sign) @@ -188,6 +191,11 @@ { gchar *text = exif_get_data_as_text(exif, "Exif.Photo.DateTimeOriginal"); gchar *subsec = NULL; + gchar buf[128]; + gchar *tmp; + gint buflen; + struct tm tm; + GError *error = NULL; if (text) { @@ -198,9 +206,31 @@ text = exif_get_data_as_text(exif, "Exif.Image.DateTime"); if (text) subsec = exif_get_data_as_text(exif, "Exif.Photo.SubSecTime"); } + + /* Convert the stuff into a tm struct */ + memset(&tm, 0, sizeof(tm)); /* Uh, strptime could let garbage in tm! */ + if (text && strptime(text, "%Y:%m:%d %H:%M:%S", &tm)) + { + buflen = strftime(buf, sizeof(buf), "%x %X", &tm); + if (buflen > 0) + { + tmp = g_locale_to_utf8(buf, buflen, NULL, NULL, &error); + if (error) + { + log_printf("Error converting locale strftime to UTF-8: %s\n", error->message); + g_error_free(error); + } + else + { + g_free(text); + text = g_strdup(tmp); + } + } + } + if (subsec) { - gchar *tmp = text; + tmp = text; text = g_strconcat(tmp, ".", subsec, NULL); g_free(tmp); g_free(subsec); @@ -607,15 +637,22 @@ fd->exif = NULL; } +void exif_init_cache(void) +{ + g_assert(!exif_cache); + exif_cache = file_cache_new(exif_release_cb, 4); +} + ExifData *exif_read_fd(FileData *fd) { gchar *sidecar_path; - - if (!fd || !is_readable_file(fd->path)) return NULL; - if (!exif_cache) exif_cache = file_cache_new(exif_release_cb, 4); + if (!exif_cache) exif_init_cache(); + + if (!fd) return NULL; if (file_cache_get(exif_cache, fd)) return fd->exif; + g_assert(fd->exif == NULL); /* CACHE_TYPE_XMP_METADATA file should exist only if the metadata are * not writable directly, thus it should contain the most up-to-date version */ @@ -631,6 +668,7 @@ fd->exif = exif_read(fd->path, sidecar_path, fd->modified_xmp); g_free(sidecar_path); + file_cache_put(exif_cache, fd, 1); return fd->exif; } @@ -639,70 +677,10 @@ { if (!fd) return; g_assert(fd->exif == exif); - - file_cache_put(exif_cache, fd, 1); } /* embedded icc in jpeg */ - -#define JPEG_MARKER 0xFF -#define JPEG_MARKER_SOI 0xD8 -#define JPEG_MARKER_EOI 0xD9 -#define JPEG_MARKER_APP1 0xE1 -#define JPEG_MARKER_APP2 0xE2 - -/* jpeg container format: - all data markers start with 0XFF - 2 byte long file start and end markers: 0xFFD8(SOI) and 0XFFD9(EOI) - 4 byte long data segment markers in format: 0xFFTTSSSSNNN... - FF: 1 byte standard marker identifier - TT: 1 byte data type - SSSS: 2 bytes in Motorola byte alignment for length of the data. - This value includes these 2 bytes in the count, making actual - length of NN... == SSSS - 2. - NNN.: the data in this segment - */ - -gboolean exif_jpeg_segment_find(guchar *data, guint size, - guchar app_marker, const gchar *magic, guint magic_len, - guint *seg_offset, guint *seg_length) -{ - guchar marker = 0; - guint offset = 0; - guint length = 0; - - while (marker != app_marker && - marker != JPEG_MARKER_EOI) - { - offset += length; - length = 2; - - if (offset + 2 >= size || - data[offset] != JPEG_MARKER) return FALSE; - - marker = data[offset + 1]; - if (marker != JPEG_MARKER_SOI && - marker != JPEG_MARKER_EOI) - { - if (offset + 4 >= size) return FALSE; - length += ((guint)data[offset + 2] << 8) + data[offset + 3]; - } - } - - if (marker == app_marker && - offset + length < size && - length >= 4 + magic_len && - memcmp(data + offset + 4, magic, magic_len) == 0) - { - *seg_offset = offset + 4; - *seg_length = length - 4; - return TRUE; - } - - return FALSE; -} - gboolean exif_jpeg_parse_color(ExifData *exif, guchar *data, guint size) { guint seg_offset = 0; @@ -717,7 +695,7 @@ TT = total number of ICC segments (TT in each ICC segment should match) */ - while (exif_jpeg_segment_find(data + seg_offset + seg_length, + while (jpeg_segment_find(data + seg_offset + seg_length, size - seg_offset - seg_length, JPEG_MARKER_APP2, "ICC_PROFILE\x00", 12, diff -Nru geeqie-1.0/src/exif-int.h geeqie-1.1/src/exif-int.h --- geeqie-1.0/src/exif-int.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/exif-int.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: * Support for Exif file format, originally written by Eric Swalens. diff -Nru geeqie-1.0/src/exif.c geeqie-1.1/src/exif.c --- geeqie-1.0/src/exif.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/exif.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: * Support for Exif file format, originally written by Eric Swalens. @@ -73,6 +73,7 @@ #include "main.h" #include "exif-int.h" +#include "jpeg_parser.h" #include "format_raw.h" #include "ui_fileops.h" @@ -1086,7 +1087,7 @@ return -2; } - if (exif_jpeg_segment_find(data, size, JPEG_MARKER_APP1, + if (jpeg_segment_find(data, size, JPEG_MARKER_APP1, "Exif\x00\x00", 6, &seg_offset, &seg_length)) { diff -Nru geeqie-1.0/src/exif.h geeqie-1.1/src/exif.h --- geeqie-1.0/src/exif.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/exif.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: * Support for Exif file format, originally written by Eric Swalens. @@ -27,7 +27,7 @@ #ifndef __EXIF_H #define __EXIF_H -#define EXIF_FORMATTED(x) "formatted."x +#define EXIF_FORMATTED() "formatted." #define EXIF_FORMATTED_LEN (sizeof(EXIF_FORMATTED()) - 1) /* @@ -161,9 +161,6 @@ void exif_add_jpeg_color_profile(ExifData *exif, guchar *cp_data, guint cp_length); -gboolean exif_jpeg_segment_find(guchar *data, guint size, - guchar app_marker, const gchar *magic, guint magic_len, - guint *seg_offset, guint *seg_length); gboolean exif_jpeg_parse_color(ExifData *exif, guchar *data, guint size); /*raw support */ diff -Nru geeqie-1.0/src/exiv2.cc geeqie-1.1/src/exiv2.cc --- geeqie-1.0/src/exiv2.cc 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/exiv2.cc 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * diff -Nru geeqie-1.0/src/filecache.c geeqie-1.1/src/filecache.c --- geeqie-1.0/src/filecache.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/filecache.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * @@ -32,6 +32,7 @@ }; static void file_cache_notify_cb(FileData *fd, NotifyType type, gpointer data); +static void file_cache_remove_fd(FileCacheData *fc, FileData *fd); FileCacheData *file_cache_new(FileCacheReleaseFunc release, gulong max_size) { @@ -67,9 +68,11 @@ fc->list = g_list_remove_link(fc->list, work); fc->list = g_list_concat(work, fc->list); - if (file_data_check_changed_files(fd)) /* this will eventually remove changed files from cache via file_cache_notify_cb */ + if (file_data_check_changed_files(fd)) { + /* file has been changed, cance entry is no longer valid */ + file_cache_remove_fd(fc, fd); return FALSE; - + } if (debug_file_cache) file_cache_dump(fc); return TRUE; } diff -Nru geeqie-1.0/src/filecache.h geeqie-1.1/src/filecache.h --- geeqie-1.0/src/filecache.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/filecache.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * diff -Nru geeqie-1.0/src/filedata.c geeqie-1.1/src/filedata.c --- geeqie-1.0/src/filedata.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/filedata.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -27,8 +27,10 @@ static GHashTable *file_data_pool = NULL; static GHashTable *file_data_planned_change_hash = NULL; -static gint sidecar_file_priority(const gchar *path); -static FileData *file_data_new_local(const gchar *path, struct stat *st, gboolean check_sidecars, GHashTable *basename_hash); +static gint sidecar_file_priority(const gchar *extension); +static void file_data_check_sidecars(const GList *basename_list); +static void file_data_disconnect_sidecar_file(FileData *target, FileData *sfd); + /* @@ -116,7 +118,7 @@ btime = localtime(&t); /* the %x warning about 2 digit years is not an error */ - buflen = strftime(buf, sizeof(buf), "%x %H:%M", btime); + buflen = strftime(buf, sizeof(buf), "%x %X", btime); if (buflen < 1) return ""; g_free(ret); @@ -133,15 +135,10 @@ /* *----------------------------------------------------------------------------- - * file info struct + * changed files detection and notification *----------------------------------------------------------------------------- */ -FileData *file_data_merge_sidecar_files(FileData *target, FileData *source); -static void file_data_check_sidecars(FileData *fd, GHashTable *basename_hash); -FileData *file_data_disconnect_sidecar_file(FileData *target, FileData *sfd); - - void file_data_increment_version(FileData *fd) { fd->version++; @@ -153,91 +150,126 @@ } } -static gint file_data_sort_by_ext(gconstpointer a, gconstpointer b) -{ - const FileData *fda = a; - const FileData *fdb = b; - - return strcmp(fdb->extension, fda->extension); -} - -static GHashTable *file_data_basename_hash_new(void) +static gboolean file_data_check_changed_single_file(FileData *fd, struct stat *st) { - return g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL); + if (fd->size != st->st_size || + fd->date != st->st_mtime) + { + fd->size = st->st_size; + fd->date = st->st_mtime; + fd->mode = st->st_mode; + if (fd->thumb_pixbuf) g_object_unref(fd->thumb_pixbuf); + fd->thumb_pixbuf = NULL; + file_data_increment_version(fd); + file_data_send_notification(fd, NOTIFY_REREAD); + return TRUE; + } + return FALSE; } -static void file_data_basename_hash_insert(GHashTable *basename_hash, FileData *fd) +static gboolean file_data_check_changed_files_recursive(FileData *fd, struct stat *st) { - GList *list; - const gchar *ext = extension_from_path(fd->path); - gchar *basename = ext ? g_strndup(fd->path, ext - fd->path) : g_strdup(fd->path); - - list = g_hash_table_lookup(basename_hash, basename); + gboolean ret = FALSE; + GList *work; - if (!g_list_find(list, fd)) - { - list = g_list_insert_sorted(list, file_data_ref(fd), file_data_sort_by_ext); - g_hash_table_insert(basename_hash, basename, list); - } - else + ret = file_data_check_changed_single_file(fd, st); + + work = fd->sidecar_files; + while (work) { - g_free(basename); + FileData *sfd = work->data; + struct stat st; + work = work->next; + + if (!stat_utf8(sfd->path, &st)) + { + fd->size = 0; + fd->date = 0; + file_data_ref(sfd); + file_data_disconnect_sidecar_file(fd, sfd); + ret = TRUE; + file_data_increment_version(sfd); + file_data_send_notification(sfd, NOTIFY_REREAD); + file_data_unref(sfd); + continue; + } + + ret |= file_data_check_changed_files_recursive(sfd, &st); } + return ret; } -#if 0 -static void file_data_basename_hash_remove(GHashTable *basename_hash, FileData *fd) + +gboolean file_data_check_changed_files(FileData *fd) { - GList *list; - const gchar *ext = extension_from_path(fd->path); - gchar *basename = ext ? g_strndup(fd->path, ext - fd->path) : g_strdup(fd->path); - - list = g_hash_table_lookup(basename_hash, basename); - - if (!g_list_find(list, fd)) return; - - list = g_list_remove(list, fd); - file_data_unref(fd); + gboolean ret = FALSE; + struct stat st; - if (list) + if (fd->parent) fd = fd->parent; + + if (!stat_utf8(fd->path, &st)) { - g_hash_table_insert(basename_hash, basename, list); + GList *sidecars; + GList *work; + FileData *sfd = NULL; + + /* parent is missing, we have to rebuild whole group */ + ret = TRUE; + fd->size = 0; + fd->date = 0; + + /* file_data_disconnect_sidecar_file might delete the file, + we have to keep the reference to prevent this */ + sidecars = filelist_copy(fd->sidecar_files); + file_data_ref(fd); + work = sidecars; + while (work) + { + sfd = work->data; + work = work->next; + + file_data_disconnect_sidecar_file(fd, sfd); + } + file_data_check_sidecars(sidecars); /* this will group the sidecars back together */ + /* now we can release the sidecars */ + filelist_free(sidecars); + file_data_increment_version(fd); + file_data_send_notification(fd, NOTIFY_REREAD); + file_data_unref(fd); } - else + else { - g_hash_table_remove(basename_hash, basename); - g_free(basename); + ret |= file_data_check_changed_files_recursive(fd, &st); } -} -#endif -static void file_data_basename_hash_remove_list(gpointer key, gpointer value, gpointer data) -{ - filelist_free((GList *)value); + return ret; } -static void file_data_basename_hash_free(GHashTable *basename_hash) -{ - g_hash_table_foreach(basename_hash, file_data_basename_hash_remove_list, NULL); - g_hash_table_destroy(basename_hash); -} +/* + *----------------------------------------------------------------------------- + * file name, extension, sorting, ... + *----------------------------------------------------------------------------- + */ static void file_data_set_collate_keys(FileData *fd) { gchar *caseless_name; + gchar *valid_name; - caseless_name = g_utf8_casefold(fd->name, -1); + valid_name = g_filename_display_name(fd->name); + caseless_name = g_utf8_casefold(valid_name, -1); g_free(fd->collate_key_name); g_free(fd->collate_key_name_nocase); #if 0 && GLIB_CHECK_VERSION(2, 8, 0) - fd->collate_key_name = g_utf8_collate_key_for_filename(fd->name, -1); + fd->collate_key_name = g_utf8_collate_key_for_filename(valid_name, -1); fd->collate_key_name_nocase = g_utf8_collate_key_for_filename(caseless_name, -1); #else - fd->collate_key_name = g_utf8_collate_key(fd->name, -1); + fd->collate_key_name = g_utf8_collate_key(valid_name, -1); fd->collate_key_name_nocase = g_utf8_collate_key(caseless_name, -1); #endif + g_free(valid_name); g_free(caseless_name); } @@ -292,102 +324,29 @@ return; } - fd->extension = extension_from_path(fd->path); + fd->extension = registered_extension_from_path(fd->path); if (fd->extension == NULL) { fd->extension = fd->name + strlen(fd->name); } - + + fd->sidecar_priority = sidecar_file_priority(fd->extension); file_data_set_collate_keys(fd); } -static gboolean file_data_check_changed_files_recursive(FileData *fd, struct stat *st) -{ - gboolean ret = FALSE; - GList *work; - - if (fd->size != st->st_size || - fd->date != st->st_mtime) - { - fd->size = st->st_size; - fd->date = st->st_mtime; - fd->mode = st->st_mode; - if (fd->thumb_pixbuf) g_object_unref(fd->thumb_pixbuf); - fd->thumb_pixbuf = NULL; - file_data_increment_version(fd); - file_data_send_notification(fd, NOTIFY_REREAD); - ret = TRUE; - } - - work = fd->sidecar_files; - while (work) - { - FileData *sfd = work->data; - struct stat st; - work = work->next; - - if (!stat_utf8(sfd->path, &st)) - { - fd->size = 0; - fd->date = 0; - file_data_disconnect_sidecar_file(fd, sfd); - ret = TRUE; - continue; - } - - ret |= file_data_check_changed_files_recursive(sfd, &st); - } - return ret; -} - - -gboolean file_data_check_changed_files(FileData *fd) -{ - gboolean ret = FALSE; - struct stat st; - - if (fd->parent) fd = fd->parent; - - if (!stat_utf8(fd->path, &st)) - { - GList *sidecars; - GList *work; - FileData *sfd = NULL; - - /* parent is missing, we have to rebuild whole group */ - ret = TRUE; - fd->size = 0; - fd->date = 0; - - /* file_data_disconnect_sidecar_file might delete the file, - we have to keep the reference to prevent this */ - sidecars = filelist_copy(fd->sidecar_files); - work = sidecars; - while (work) - { - sfd = work->data; - work = work->next; - - file_data_disconnect_sidecar_file(fd, sfd); - } - if (sfd) file_data_check_sidecars(sfd, NULL); /* this will group the sidecars back together */ - /* now we can release the sidecars */ - filelist_free(sidecars); - file_data_send_notification(fd, NOTIFY_REREAD); - } - else - { - ret |= file_data_check_changed_files_recursive(fd, &st); - } - - return ret; -} +/* + *----------------------------------------------------------------------------- + * create or reuse Filedata + *----------------------------------------------------------------------------- + */ -static FileData *file_data_new(const gchar *path_utf8, struct stat *st, gboolean check_sidecars, GHashTable *basename_hash) +static FileData *file_data_new(const gchar *path_utf8, struct stat *st, gboolean disable_sidecars) { FileData *fd; - DEBUG_2("file_data_new: '%s' %d %d", path_utf8, check_sidecars, !!basename_hash); + DEBUG_2("file_data_new: '%s' %d", path_utf8, disable_sidecars); + + if (S_ISDIR(st->st_mode)) disable_sidecars = TRUE; if (!file_data_pool) file_data_pool = g_hash_table_new(g_str_hash, g_str_equal); @@ -412,19 +371,12 @@ if (fd) { gboolean changed; - if (basename_hash) - { - file_data_basename_hash_insert(basename_hash, fd); - if (check_sidecars) - file_data_check_sidecars(fd, basename_hash); - } - if (fd->parent) - changed = file_data_check_changed_files(fd); - else - changed = file_data_check_changed_files_recursive(fd, st); - if (changed && check_sidecars && sidecar_file_priority(fd->extension)) - file_data_check_sidecars(fd, basename_hash); + if (disable_sidecars) file_data_disable_grouping(fd, TRUE); + + + changed = file_data_check_changed_single_file(fd, st); + DEBUG_2("file_data_pool hit: '%s' %s", fd->path, changed ? "(changed)" : ""); return fd; @@ -437,162 +389,24 @@ fd->mode = st->st_mode; fd->ref = 1; fd->magick = 0x12345678; + + if (disable_sidecars) fd->disable_grouping = TRUE; file_data_set_path(fd, path_utf8); /* set path, name, collate_key_*, original_path */ - if (basename_hash) file_data_basename_hash_insert(basename_hash, fd); - - if (check_sidecars) - file_data_check_sidecars(fd, basename_hash); return fd; } -/* extension must contain only ASCII characters */ -static GList *check_case_insensitive_ext(gchar *path) -{ - gchar *sl; - gchar *extl; - gint ext_len; - GList *list = NULL; - - sl = path_from_utf8(path); - - extl = strrchr(sl, '.'); - if (extl) - { - gint i, j; - extl++; /* the first char after . */ - ext_len = strlen(extl); - - for (i = 0; i < (1 << ext_len); i++) - { - struct stat st; - gboolean skip = FALSE; - for (j = 0; j < ext_len; j++) - { - if (i & (1 << (ext_len - 1 - j))) - { - extl[j] = g_ascii_tolower(extl[j]); - /* make sure the result does not contain duplicates */ - if (extl[j] == g_ascii_toupper(extl[j])) - { - /* no change, probably a number, we have already tested this combination */ - skip = TRUE; - break; - } - } - else - extl[j] = g_ascii_toupper(extl[j]); - } - if (skip) continue; - - if (stat(sl, &st) == 0) - { - list = g_list_prepend(list, file_data_new_local(sl, &st, FALSE, FALSE)); - } - } - } - g_free(sl); - - return list; -} - -static void file_data_check_sidecars(FileData *fd, GHashTable *basename_hash) -{ - gint base_len; - GString *fname; - FileData *parent_fd = NULL; - GList *work; - const GList *basename_list = NULL; - GList *group_list = NULL; - if (fd->disable_grouping || !sidecar_file_priority(fd->extension)) - return; - - base_len = fd->extension - fd->path; - fname = g_string_new_len(fd->path, base_len); - - if (basename_hash) - { - basename_list = g_hash_table_lookup(basename_hash, fname->str); - } - - - /* check for possible sidecar files; - the sidecar files created here are referenced only via fd->sidecar_files or fd->parent, - they have fd->ref set to 0 and file_data unref must chack and free them all together - (using fd->ref would cause loops and leaks) - */ - - /* find all possible sidecar files and order them according to sidecar_ext_get_list, - for case-only differences put lowercase first, - put the result to group_list - */ - work = sidecar_ext_get_list(); - while (work) - { - gchar *ext = work->data; - work = work->next; - - if (!basename_hash) - { - GList *new_list; - g_string_truncate(fname, base_len); - g_string_append(fname, ext); - new_list = check_case_insensitive_ext(fname->str); - group_list = g_list_concat(group_list, new_list); - } - else - { - const GList *work2 = basename_list; - - while (work2) - { - FileData *sfd = work2->data; - - if (g_ascii_strcasecmp(ext, sfd->extension) == 0) - { - group_list = g_list_append(group_list, file_data_ref(sfd)); - } - work2 = work2->next; - } - } - } - g_string_free(fname, TRUE); - - /* process the group list - the first one is the parent file, others are sidecars */ - work = group_list; - while (work) - { - FileData *new_fd = work->data; - work = work->next; - - if (new_fd->disable_grouping) - { - file_data_unref(new_fd); - continue; - } - - new_fd->ref--; /* do not use ref here */ - - if (!parent_fd) - parent_fd = new_fd; /* parent is the one with the highest prio, found first */ - else - file_data_merge_sidecar_files(parent_fd, new_fd); - } - g_list_free(group_list); -} - - -static FileData *file_data_new_local(const gchar *path, struct stat *st, gboolean check_sidecars, GHashTable *basename_hash) +static FileData *file_data_new_local(const gchar *path, struct stat *st, gboolean disable_sidecars) { gchar *path_utf8 = path_to_utf8(path); - FileData *ret = file_data_new(path_utf8, st, check_sidecars, basename_hash); + FileData *ret = file_data_new(path_utf8, st, disable_sidecars); g_free(path_utf8); return ret; } -FileData *file_data_new_simple(const gchar *path_utf8) +FileData *file_data_new_no_grouping(const gchar *path_utf8) { struct stat st; @@ -602,41 +416,31 @@ st.st_mtime = 0; } - return file_data_new(path_utf8, &st, TRUE, NULL); + return file_data_new(path_utf8, &st, TRUE); } -FileData *file_data_add_sidecar_file(FileData *target, FileData *sfd) +FileData *file_data_new_dir(const gchar *path_utf8) { - sfd->parent = target; - if (!g_list_find(target->sidecar_files, sfd)) - target->sidecar_files = g_list_prepend(target->sidecar_files, sfd); - file_data_increment_version(sfd); /* increments both sfd and target */ - return target; -} - - -FileData *file_data_merge_sidecar_files(FileData *target, FileData *source) -{ - GList *work; - - file_data_add_sidecar_file(target, source); + struct stat st; - work = source->sidecar_files; - while (work) + if (!stat_utf8(path_utf8, &st)) { - FileData *sfd = work->data; - file_data_add_sidecar_file(target, sfd); - work = work->next; + st.st_size = 0; + st.st_mtime = 0; } - - g_list_free(source->sidecar_files); - source->sidecar_files = NULL; - - target->sidecar_files = filelist_sort(target->sidecar_files, SORT_NAME, TRUE); - - return target; + else + /* dir or non-existing yet */ + g_assert(S_ISDIR(st.st_mode)); + + return file_data_new(path_utf8, &st, TRUE); } +/* + *----------------------------------------------------------------------------- + * reference counting + *----------------------------------------------------------------------------- + */ + #ifdef DEBUG_FILEDATA FileData *file_data_ref_debug(const gchar *file, gint line, FileData *fd) #else @@ -664,6 +468,7 @@ g_assert(fd->magick == 0x12345678); g_assert(fd->ref == 0); + metadata_cache_free(fd); g_hash_table_remove(file_data_pool, fd->original_path); g_free(fd->path); @@ -732,182 +537,238 @@ } } -FileData *file_data_disconnect_sidecar_file(FileData *target, FileData *sfd) + + +/* + *----------------------------------------------------------------------------- + * sidecar file info struct + *----------------------------------------------------------------------------- + */ + +static gint file_data_sort_by_ext(gconstpointer a, gconstpointer b) { - sfd->parent = target; - g_assert(g_list_find(target->sidecar_files, sfd)); + const FileData *fda = a; + const FileData *fdb = b; - file_data_increment_version(sfd); /* increments both sfd and target */ + if (fda->sidecar_priority < fdb->sidecar_priority) return -1; + if (fda->sidecar_priority > fdb->sidecar_priority) return 1; + + return strcmp(fdb->extension, fda->extension); +} - target->sidecar_files = g_list_remove(target->sidecar_files, sfd); - sfd->parent = NULL; - if (sfd->ref == 0) - { - file_data_free(sfd); - return NULL; - } +static gint sidecar_file_priority(const gchar *extension) +{ + gint i = 1; + GList *work; + + if (extension == NULL) + return 0; - return sfd; + work = sidecar_ext_get_list(); + + while (work) { + gchar *ext = work->data; + + work = work->next; + if (g_ascii_strcasecmp(extension, ext) == 0) return i; + i++; + } + return 0; } -/* disables / enables grouping for particular file, sends UPDATE notification */ -void file_data_disable_grouping(FileData *fd, gboolean disable) +static void file_data_check_sidecars(const GList *basename_list) { - if (!fd->disable_grouping == !disable) return; - - fd->disable_grouping = !!disable; - - if (disable) + /* basename_list contains the new group - first is the parent, then sorted sidecars */ + /* all files in the list have ref count > 0 */ + + const GList *work; + GList *s_work, *new_sidecars; + FileData *parent_fd; + + if (!basename_list) return; + + + DEBUG_2("basename start"); + work = basename_list; + while (work) { - if (fd->parent) + FileData *fd = work->data; + work = work->next; + g_assert(fd->magick == 0x12345678); + DEBUG_2("basename: %p %s", fd, fd->name); + if (fd->parent) { - FileData *parent = file_data_ref(fd->parent); - file_data_disconnect_sidecar_file(parent, fd); - file_data_send_notification(parent, NOTIFY_GROUPING); - file_data_unref(parent); + g_assert(fd->parent->magick == 0x12345678); + DEBUG_2(" parent: %p", fd->parent); } - else if (fd->sidecar_files) + s_work = fd->sidecar_files; + while (s_work) { - GList *sidecar_files = filelist_copy(fd->sidecar_files); - GList *work = sidecar_files; - while (work) - { - FileData *sfd = work->data; - work = work->next; - file_data_disconnect_sidecar_file(fd, sfd); - file_data_send_notification(sfd, NOTIFY_GROUPING); - } - file_data_check_sidecars((FileData *)sidecar_files->data, FALSE); /* this will group the sidecars back together */ - filelist_free(sidecar_files); - } - else - { - file_data_increment_version(fd); /* the functions called in the cases above increments the version too */ + FileData *sfd = s_work->data; + s_work = s_work->next; + g_assert(sfd->magick == 0x12345678); + DEBUG_2(" sidecar: %p %s", sfd, sfd->name); } + + g_assert(fd->parent == NULL || fd->sidecar_files == NULL); } - else + + parent_fd = basename_list->data; + + /* check if the second and next entries of basename_list are already connected + as sidecars of the first entry (parent_fd) */ + work = basename_list->next; + s_work = parent_fd->sidecar_files; + + while (work && s_work) { - file_data_increment_version(fd); - file_data_check_sidecars(fd, FALSE); + if (work->data != s_work->data) break; + work = work->next; + s_work = s_work->next; + } + + if (!work && !s_work) + { + DEBUG_2("basename no change"); + return; /* no change in grouping */ } - file_data_send_notification(fd, NOTIFY_GROUPING); -} - -void file_data_disable_grouping_list(GList *fd_list, gboolean disable) -{ - GList *work; - work = fd_list; + /* we have to regroup it */ + + /* first, disconnect everything and send notification*/ + + work = basename_list; while (work) { FileData *fd = work->data; + work = work->next; + g_assert(fd->parent == NULL || fd->sidecar_files == NULL); - file_data_disable_grouping(fd, disable); + if (fd->parent) + { + FileData *old_parent = fd->parent; + g_assert(old_parent->parent == NULL || old_parent->sidecar_files == NULL); + file_data_ref(old_parent); + file_data_disconnect_sidecar_file(old_parent, fd); + file_data_send_notification(old_parent, NOTIFY_REREAD); + file_data_unref(old_parent); + } + + while (fd->sidecar_files) + { + FileData *sfd = fd->sidecar_files->data; + g_assert(sfd->parent == NULL || sfd->sidecar_files == NULL); + file_data_ref(sfd); + file_data_disconnect_sidecar_file(fd, sfd); + file_data_send_notification(sfd, NOTIFY_REREAD); + file_data_unref(sfd); + } + file_data_send_notification(fd, NOTIFY_GROUPING); + + g_assert(fd->parent == NULL && fd->sidecar_files == NULL); + } + + /* now we can form the new group */ + work = basename_list->next; + new_sidecars = NULL; + while (work) + { + FileData *sfd = work->data; + g_assert(sfd->magick == 0x12345678); + g_assert(sfd->parent == NULL && sfd->sidecar_files == NULL); + sfd->parent = parent_fd; + new_sidecars = g_list_prepend(new_sidecars, sfd); work = work->next; } + g_assert(parent_fd->sidecar_files == NULL); + parent_fd->sidecar_files = g_list_reverse(new_sidecars); + DEBUG_1("basename group changed for %s", parent_fd->path); } -/* compare name without extension */ -gint file_data_compare_name_without_ext(FileData *fd1, FileData *fd2) -{ - size_t len1 = fd1->extension - fd1->name; - size_t len2 = fd2->extension - fd2->name; - - if (len1 < len2) return -1; - if (len1 > len2) return 1; - - return strncmp(fd1->name, fd2->name, len1); /* FIXME: utf8 */ -} - -void file_data_change_info_free(FileDataChangeInfo *fdci, FileData *fd) +static void file_data_disconnect_sidecar_file(FileData *target, FileData *sfd) { - if (!fdci && fd) fdci = fd->change; - - if (!fdci) return; - - g_free(fdci->source); - g_free(fdci->dest); + g_assert(target->magick == 0x12345678); + g_assert(sfd->magick == 0x12345678); + g_assert(g_list_find(target->sidecar_files, sfd)); - g_free(fdci); + file_data_ref(target); + file_data_ref(sfd); - if (fd) fd->change = NULL; -} + g_assert(sfd->parent == target); + + file_data_increment_version(sfd); /* increments both sfd and target */ -static gboolean file_data_can_write_directly(FileData *fd) -{ - return filter_name_is_writable(fd->extension); -} + target->sidecar_files = g_list_remove(target->sidecar_files, sfd); + sfd->parent = NULL; -static gboolean file_data_can_write_sidecar(FileData *fd) -{ - return filter_name_allow_sidecar(fd->extension) && !filter_name_is_writable(fd->extension); + file_data_unref(target); + file_data_unref(sfd); } -gchar *file_data_get_sidecar_path(FileData *fd, gboolean existing_only) +/* disables / enables grouping for particular file, sends UPDATE notification */ +void file_data_disable_grouping(FileData *fd, gboolean disable) { - gchar *sidecar_path = NULL; - GList *work; + if (!fd->disable_grouping == !disable) return; - if (!file_data_can_write_sidecar(fd)) return NULL; + fd->disable_grouping = !!disable; - work = fd->parent ? fd->parent->sidecar_files : fd->sidecar_files; - while (work) + if (disable) { - FileData *sfd = work->data; - work = work->next; - if (g_ascii_strcasecmp(sfd->extension, ".xmp") == 0) + if (fd->parent) { - sidecar_path = g_strdup(sfd->path); - break; + FileData *parent = file_data_ref(fd->parent); + file_data_disconnect_sidecar_file(parent, fd); + file_data_send_notification(parent, NOTIFY_GROUPING); + file_data_unref(parent); + } + else if (fd->sidecar_files) + { + GList *sidecar_files = filelist_copy(fd->sidecar_files); + GList *work = sidecar_files; + while (work) + { + FileData *sfd = work->data; + work = work->next; + file_data_disconnect_sidecar_file(fd, sfd); + file_data_send_notification(sfd, NOTIFY_GROUPING); + } + file_data_check_sidecars(sidecar_files); /* this will group the sidecars back together */ + filelist_free(sidecar_files); + } + else + { + file_data_increment_version(fd); /* the functions called in the cases above increments the version too */ } } - - if (!existing_only && !sidecar_path) + else { - gchar *base = remove_extension_from_path(fd->path); - sidecar_path = g_strconcat(base, ".xmp", NULL); - g_free(base); + file_data_increment_version(fd); + /* file_data_check_sidecars call is not necessary - the file will be re-grouped on next dir read */ } - - return sidecar_path; + file_data_send_notification(fd, NOTIFY_GROUPING); } - -/* - *----------------------------------------------------------------------------- - * sidecar file info struct - *----------------------------------------------------------------------------- - */ - - - -static gint sidecar_file_priority(const gchar *path) +void file_data_disable_grouping_list(GList *fd_list, gboolean disable) { - const gchar *extension = extension_from_path(path); - gint i = 1; GList *work; - - if (extension == NULL) - return 0; - - work = sidecar_ext_get_list(); - - while (work) { - gchar *ext = work->data; + + work = fd_list; + while (work) + { + FileData *fd = work->data; + file_data_disable_grouping(fd, disable); work = work->next; - if (g_ascii_strcasecmp(extension, ext) == 0) return i; - i++; - } - return 0; + } } + /* *----------------------------------------------------------------------------- - * load file list + * filelist sorting *----------------------------------------------------------------------------- */ @@ -917,6 +778,7 @@ gint filelist_sort_compare_filedata(FileData *fa, FileData *fb) { + gint ret; if (!filelist_sort_ascend) { FileData *tmp = fa; @@ -940,7 +802,8 @@ break; #ifdef HAVE_STRVERSCMP case SORT_NUMBER: - return strverscmp(fa->name, fb->name); + ret = strverscmp(fa->name, fb->name); + if (ret != 0) return ret; break; #endif default: @@ -948,9 +811,16 @@ } if (options->file_sort.case_sensitive) - return strcmp(fa->collate_key_name, fb->collate_key_name); + ret = strcmp(fa->collate_key_name, fb->collate_key_name); else - return strcmp(fa->collate_key_name_nocase, fb->collate_key_name_nocase); + ret = strcmp(fa->collate_key_name_nocase, fb->collate_key_name_nocase); + + if (ret != 0) return ret; + + /* do not return 0 unless the files are really the same + file_data_pool ensures that original_path is unique + */ + return strcmp(fa->original_path, fb->original_path); } gint filelist_sort_compare_filedata_full(FileData *fa, FileData *fb, SortType method, gboolean ascend) @@ -989,6 +859,78 @@ return filelist_insert_sort_full(list, fd, method, ascend, (GCompareFunc) filelist_sort_file_cb); } +/* + *----------------------------------------------------------------------------- + * basename hash - grouping of sidecars in filelist + *----------------------------------------------------------------------------- + */ + + +static GHashTable *file_data_basename_hash_new(void) +{ + return g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL); +} + +static GList * file_data_basename_hash_insert(GHashTable *basename_hash, FileData *fd) +{ + GList *list; + gchar *basename = g_strndup(fd->path, fd->extension - fd->path); + + list = g_hash_table_lookup(basename_hash, basename); + + if (!g_list_find(list, fd)) + { + list = g_list_insert_sorted(list, file_data_ref(fd), file_data_sort_by_ext); + g_hash_table_insert(basename_hash, basename, list); + } + else + { + g_free(basename); + } + return list; +} + +#if 0 +static void file_data_basename_hash_remove(GHashTable *basename_hash, FileData *fd) +{ + GList *list; + gchar *basename = g_strndup(fd->path, fd->extension - fd->path); + + list = g_hash_table_lookup(basename_hash, basename); + + if (!g_list_find(list, fd)) return; + + list = g_list_remove(list, fd); + file_data_unref(fd); + + if (list) + { + g_hash_table_insert(basename_hash, basename, list); + } + else + { + g_hash_table_remove(basename_hash, basename); + g_free(basename); + } +} +#endif + +static void file_data_basename_hash_remove_list(gpointer key, gpointer value, gpointer data) +{ + filelist_free((GList *)value); +} + +static void file_data_basename_hash_free(GHashTable *basename_hash) +{ + g_hash_table_foreach(basename_hash, file_data_basename_hash_remove_list, NULL); + g_hash_table_destroy(basename_hash); +} + +/* + *----------------------------------------------------------------------------- + * handling sidecars in filelist + *----------------------------------------------------------------------------- + */ static GList *filelist_filter_out_sidecars(GList *flist) { @@ -1010,6 +952,13 @@ return flist_filtered; } +static void file_data_basename_hash_to_sidecars(gpointer key, gpointer value, gpointer data) +{ + GList *basename_list = (GList *)value; + file_data_check_sidecars(basename_list); +} + + static gboolean is_hidden_file(const gchar *name) { if (name[0] != '.') return FALSE; @@ -1017,7 +966,13 @@ return TRUE; } -static gboolean filelist_read_real(FileData *dir_fd, GList **files, GList **dirs, gboolean follow_symlinks) +/* + *----------------------------------------------------------------------------- + * the main filelist function + *----------------------------------------------------------------------------- + */ + +static gboolean filelist_read_real(const gchar *dir_path, GList **files, GList **dirs, gboolean follow_symlinks) { DIR *dp; struct dirent *dir; @@ -1032,7 +987,7 @@ if (files) *files = NULL; if (dirs) *dirs = NULL; - pathl = path_from_utf8(dir_fd->path); + pathl = path_from_utf8(dir_path); if (!pathl) return FALSE; dp = opendir(pathl); @@ -1070,14 +1025,19 @@ strcmp(name, GQ_CACHE_LOCAL_METADATA) != 0 && strcmp(name, THUMB_FOLDER_LOCAL) != 0) { - dlist = g_list_prepend(dlist, file_data_new_local(filepath, &ent_sbuf, FALSE, NULL)); + dlist = g_list_prepend(dlist, file_data_new_local(filepath, &ent_sbuf, TRUE)); } } else { if (files && filter_name_exists(name)) { - flist = g_list_prepend(flist, file_data_new_local(filepath, &ent_sbuf, TRUE, basename_hash)); + FileData *fd = file_data_new_local(filepath, &ent_sbuf, FALSE); + flist = g_list_prepend(flist, fd); + if (fd->sidecar_priority && !fd->disable_grouping) + { + file_data_basename_hash_insert(basename_hash, fd); + } } } } @@ -1094,24 +1054,59 @@ closedir(dp); g_free(pathl); - if (basename_hash) file_data_basename_hash_free(basename_hash); if (dirs) *dirs = dlist; - if (files) *files = filelist_filter_out_sidecars(flist); + if (files) + { + g_hash_table_foreach(basename_hash, file_data_basename_hash_to_sidecars, NULL); + + *files = filelist_filter_out_sidecars(flist); + } + if (basename_hash) file_data_basename_hash_free(basename_hash); return TRUE; } gboolean filelist_read(FileData *dir_fd, GList **files, GList **dirs) { - return filelist_read_real(dir_fd, files, dirs, TRUE); + return filelist_read_real(dir_fd->path, files, dirs, TRUE); } gboolean filelist_read_lstat(FileData *dir_fd, GList **files, GList **dirs) { - return filelist_read_real(dir_fd, files, dirs, FALSE); + return filelist_read_real(dir_fd->path, files, dirs, FALSE); +} + +FileData *file_data_new_group(const gchar *path_utf8) +{ + gchar *dir; + struct stat st; + FileData *fd; + GList *files; + + if (!stat_utf8(path_utf8, &st)) + { + st.st_size = 0; + st.st_mtime = 0; + } + + if (S_ISDIR(st.st_mode)) + return file_data_new(path_utf8, &st, TRUE); + + dir = remove_level_from_path(path_utf8); + + filelist_read_real(dir, &files, NULL, TRUE); + + fd = g_hash_table_lookup(file_data_pool, path_utf8); + g_assert(fd); + file_data_ref(fd); + + filelist_free(files); + g_free(dir); + return fd; } + void filelist_free(GList *list) { GList *work; @@ -1159,7 +1154,7 @@ path = work->data; work = work->next; - new_list = g_list_prepend(new_list, file_data_new_simple(path)); + new_list = g_list_prepend(new_list, file_data_new_group(path)); } return g_list_reverse(new_list); @@ -1274,6 +1269,65 @@ return list; } +/* + *----------------------------------------------------------------------------- + * file modification support + *----------------------------------------------------------------------------- + */ + + +void file_data_change_info_free(FileDataChangeInfo *fdci, FileData *fd) +{ + if (!fdci && fd) fdci = fd->change; + + if (!fdci) return; + + g_free(fdci->source); + g_free(fdci->dest); + + g_free(fdci); + + if (fd) fd->change = NULL; +} + +static gboolean file_data_can_write_directly(FileData *fd) +{ + return filter_name_is_writable(fd->extension); +} + +static gboolean file_data_can_write_sidecar(FileData *fd) +{ + return filter_name_allow_sidecar(fd->extension) && !filter_name_is_writable(fd->extension); +} + +gchar *file_data_get_sidecar_path(FileData *fd, gboolean existing_only) +{ + gchar *sidecar_path = NULL; + GList *work; + + if (!file_data_can_write_sidecar(fd)) return NULL; + + work = fd->parent ? fd->parent->sidecar_files : fd->sidecar_files; + while (work) + { + FileData *sfd = work->data; + work = work->next; + if (g_ascii_strcasecmp(sfd->extension, ".xmp") == 0) + { + sidecar_path = g_strdup(sfd->path); + break; + } + } + + if (!existing_only && !sidecar_path) + { + gchar *base = g_strndup(fd->path, fd->extension - fd->path); + sidecar_path = g_strconcat(base, ".xmp", NULL); + g_free(base); + } + + return sidecar_path; +} /* * marks and orientation @@ -2120,7 +2174,7 @@ } else if (!access_file(dest_dir, W_OK)) { - ret |= CHANGE_NO_WRITE_PERM_DEST_DIR; + ret |= CHANGE_WARN_NO_WRITE_PERM_DEST_DIR; DEBUG_1("Change checked: destination dir is readonly: %s -> %s", fd->path, fd->change->dest); } else if (!same) @@ -2197,7 +2251,7 @@ g_string_append(result, _("destination can't be overwritten")); } - if (error & CHANGE_NO_WRITE_PERM_DEST_DIR) + if (error & CHANGE_WARN_NO_WRITE_PERM_DEST_DIR) { if (result->len > 0) g_string_append(result, ", "); g_string_append(result, _("destination directory is not writable")); @@ -2555,6 +2609,12 @@ implementation in view_file_list.c */ +typedef struct _NotifyIdleData NotifyIdleData; + +struct _NotifyIdleData { + FileData *fd; + NotifyType type; +}; typedef struct _NotifyData NotifyData; @@ -2628,17 +2688,29 @@ } -void file_data_send_notification(FileData *fd, NotifyType type) +gboolean file_data_send_notification_idle_cb(gpointer data) { + NotifyIdleData *nid = (NotifyIdleData *)data; GList *work = notify_func_list; while (work) { NotifyData *nd = (NotifyData *)work->data; - nd->func(fd, type, nd->data); + nd->func(nid->fd, nid->type, nd->data); work = work->next; } + file_data_unref(nid->fd); + g_free(nid); + return FALSE; +} + +void file_data_send_notification(FileData *fd, NotifyType type) +{ + NotifyIdleData *nid = g_new0(NotifyIdleData, 1); + nid->fd = file_data_ref(fd); + nid->type = type; + g_idle_add_full(G_PRIORITY_HIGH, file_data_send_notification_idle_cb, nid, NULL); } static GHashTable *file_data_monitor_pool = NULL; diff -Nru geeqie-1.0/src/filedata.h geeqie-1.1/src/filedata.h --- geeqie-1.0/src/filedata.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/filedata.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -22,8 +22,14 @@ gchar *text_from_size_abrev(gint64 size); const gchar *text_from_time(time_t t); -/* this expects a utf-8 path */ -FileData *file_data_new_simple(const gchar *path_utf8); +/* scan for sidecar files - expensive */ +FileData *file_data_new_group(const gchar *path_utf8); + +/* should be used on helper files which can't have sidecars */ +FileData *file_data_new_no_grouping(const gchar *path_utf8); + +/* should be used on dirs */ +FileData *file_data_new_dir(const gchar *path_utf8); #ifdef DEBUG_FILEDATA FileData *file_data_ref_debug(const gchar *file, gint line, FileData *fd); diff -Nru geeqie-1.0/src/filefilter.c geeqie-1.1/src/filefilter.c --- geeqie-1.0/src/filefilter.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/filefilter.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -188,6 +188,14 @@ work = work->next; name = gdk_pixbuf_format_get_name(format); + + if (strcmp(name, "Digital camera RAW") == 0) + { + DEBUG_1("Skipped '%s' from loader", name); + g_free(name); + continue; + } + desc = gdk_pixbuf_format_get_description(format); extensions = gdk_pixbuf_format_get_extensions(format); @@ -230,11 +238,16 @@ filter_add_if_missing("ico", "Icon file", ".ico;.cur", FORMAT_CLASS_IMAGE, TRUE, FALSE, FALSE); filter_add_if_missing("ras", "Raster", ".ras", FORMAT_CLASS_IMAGE, TRUE, FALSE, FALSE); filter_add_if_missing("svg", "Scalable Vector Graphics", ".svg", FORMAT_CLASS_IMAGE, TRUE, FALSE, FALSE); - + + /* special formats for stereo */ + filter_add_if_missing("jps", "Stereo side-by-side jpeg", ".jps", FORMAT_CLASS_IMAGE, TRUE, FALSE, TRUE); + filter_add_if_missing("mpo", "Stereo multi-image jpeg", ".mpo", FORMAT_CLASS_IMAGE, FALSE, TRUE, TRUE); + /* non-image files that might be desirable to show */ filter_add_if_missing("xmp", "XMP sidecar", ".xmp", FORMAT_CLASS_META, TRUE, FALSE, TRUE); filter_add_if_missing("gqv", GQ_APPNAME " image collection", GQ_COLLECTION_EXT, FORMAT_CLASS_META, FALSE, FALSE, TRUE); filter_add_if_missing("ufraw", "UFRaw ID file", ".ufraw", FORMAT_CLASS_META, FALSE, FALSE, TRUE); + filter_add_if_missing("pto", "Panorama script file", ".pto", FORMAT_CLASS_META, FALSE, FALSE, TRUE); /* These are the raw camera formats with embedded jpeg/exif. * (see format_raw.c and/or exiv2.cc) @@ -283,6 +296,7 @@ if (g_ascii_strcasecmp(ext, "%image") == 0) file_class = FORMAT_CLASS_IMAGE; else if (g_ascii_strcasecmp(ext, "%raw") == 0) file_class = FORMAT_CLASS_RAWIMAGE; else if (g_ascii_strcasecmp(ext, "%meta") == 0) file_class = FORMAT_CLASS_META; + else if (g_ascii_strcasecmp(ext, "%unknown") == 0) file_class = FORMAT_CLASS_UNKNOWN; if (file_class == -1) { @@ -300,6 +314,20 @@ return list; } +static gint filter_sort_ext_len_cb(gconstpointer a, gconstpointer b) +{ + gchar *sa = (gchar *)a; + gchar *sb = (gchar *)b; + + gint len_a = strlen(sa); + gint len_b = strlen(sb); + + if (len_a > len_b) return -1; + if (len_a < len_b) return 1; + return 0; +} + + void filter_rebuild(void) { GList *work; @@ -360,10 +388,13 @@ } } + /* make sure registered_extension_from_path finds the longer match first */ + extension_list = g_list_sort(extension_list, filter_sort_ext_len_cb); sidecar_ext_parse(options->sidecar.ext); /* this must be updated after changed file extensions */ } -static gboolean filter_name_find(GList *filter, const gchar *name) +/* return the extension part of the name or NULL */ +static const gchar *filter_name_find(GList *filter, const gchar *name) { GList *work; guint ln; @@ -378,20 +409,23 @@ if (ln >= lf) { /* FIXME: utf8 */ - if (g_ascii_strncasecmp(name + ln - lf, filter, lf) == 0) return TRUE; + if (g_ascii_strncasecmp(name + ln - lf, filter, lf) == 0) return name + ln - lf; } work = work->next; } - return FALSE; + return NULL; +} +const gchar *registered_extension_from_path(const gchar *name) +{ + return filter_name_find(extension_list, name); } - gboolean filter_name_exists(const gchar *name) { if (!extension_list || options->file_filter.disable) return TRUE; - return filter_name_find(extension_list, name); + return !!filter_name_find(extension_list, name); } gboolean filter_file_class(const gchar *name, FileFormatClass file_class) @@ -402,17 +436,17 @@ return FALSE; } - return filter_name_find(file_class_extension_list[file_class], name); + return !!filter_name_find(file_class_extension_list[file_class], name); } gboolean filter_name_is_writable(const gchar *name) { - return filter_name_find(file_writable_list, name); + return !!filter_name_find(file_writable_list, name); } gboolean filter_name_allow_sidecar(const gchar *name) { - return filter_name_find(file_sidecar_list, name); + return !!filter_name_find(file_sidecar_list, name); } void filter_write_list(GString *outstr, gint indent) diff -Nru geeqie-1.0/src/filefilter.h geeqie-1.1/src/filefilter.h --- geeqie-1.0/src/filefilter.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/filefilter.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -37,6 +37,7 @@ void filter_rebuild(void); GList *filter_to_list(const gchar *extensions); +const gchar *registered_extension_from_path(const gchar *name); gboolean filter_name_exists(const gchar *name); gboolean filter_file_class(const gchar *name, FileFormatClass file_class); gboolean filter_name_is_writable(const gchar *name); diff -Nru geeqie-1.0/src/format_canon.c geeqie-1.1/src/format_canon.c --- geeqie-1.0/src/format_canon.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/format_canon.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2005 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * This software is released under the GNU General Public License (GNU GPL). * Please read the included file COPYING for more information. diff -Nru geeqie-1.0/src/format_canon.h geeqie-1.1/src/format_canon.h --- geeqie-1.0/src/format_canon.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/format_canon.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2005 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * This software is released under the GNU General Public License (GNU GPL). * Please read the included file COPYING for more information. diff -Nru geeqie-1.0/src/format_fuji.c geeqie-1.1/src/format_fuji.c --- geeqie-1.0/src/format_fuji.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/format_fuji.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2005 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: * Original version 2005 Lars Ellenberg, base on dcraw by David coffin. diff -Nru geeqie-1.0/src/format_fuji.h geeqie-1.1/src/format_fuji.h --- geeqie-1.0/src/format_fuji.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/format_fuji.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2005 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: * Original version 2005 Lars Ellenberg, base on dcraw by David coffin. diff -Nru geeqie-1.0/src/format_nikon.c geeqie-1.1/src/format_nikon.c --- geeqie-1.0/src/format_nikon.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/format_nikon.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2005 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: * Raw NEF jpeg extraction based on nefextract.c by Joseph Heled, diff -Nru geeqie-1.0/src/format_nikon.h geeqie-1.1/src/format_nikon.h --- geeqie-1.0/src/format_nikon.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/format_nikon.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2005 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * This software is released under the GNU General Public License (GNU GPL). * Please read the included file COPYING for more information. diff -Nru geeqie-1.0/src/format_olympus.c geeqie-1.1/src/format_olympus.c --- geeqie-1.0/src/format_olympus.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/format_olympus.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2005 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * This software is released under the GNU General Public License (GNU GPL). * Please read the included file COPYING for more information. diff -Nru geeqie-1.0/src/format_olympus.h geeqie-1.1/src/format_olympus.h --- geeqie-1.0/src/format_olympus.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/format_olympus.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2005 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * This software is released under the GNU General Public License (GNU GPL). * Please read the included file COPYING for more information. diff -Nru geeqie-1.0/src/format_raw.c geeqie-1.1/src/format_raw.c --- geeqie-1.0/src/format_raw.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/format_raw.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: * Original version 2005 Lars Ellenberg, base on dcraw by David coffin. diff -Nru geeqie-1.0/src/format_raw.h geeqie-1.1/src/format_raw.h --- geeqie-1.0/src/format_raw.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/format_raw.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2005 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: * Original version 2005 Lars Ellenberg, base on dcraw by David coffin. diff -Nru geeqie-1.0/src/fullscreen.c geeqie-1.1/src/fullscreen.c --- geeqie-1.0/src/fullscreen.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/fullscreen.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -294,7 +294,7 @@ image_background_set_color_from_options(fs->imd, TRUE); image_set_delay_flip(fs->imd, options->fullscreen.clean_flip); image_auto_refresh_enable(fs->imd, fs->normal_imd->auto_refresh); - + if (options->fullscreen.clean_flip) { image_set_update_func(fs->imd, fullscreen_image_update_cb, fs); @@ -305,6 +305,10 @@ image_change_from_image(fs->imd, fs->normal_imd); + if (options->stereo.enable_fsmode) { + image_stereo_set(fs->imd, options->stereo.fsmode); + } + gtk_widget_show(fs->window); /* for hiding the mouse */ @@ -337,6 +341,11 @@ gdk_keyboard_ungrab(GDK_CURRENT_TIME); image_change_from_image(fs->normal_imd, fs->imd); + + if (options->stereo.enable_fsmode) { + image_stereo_set(fs->normal_imd, options->stereo.mode); + } + #ifdef HIDE_WINDOW_IN_FULLSCREEN gtk_widget_show(fs->normal_window); #endif diff -Nru geeqie-1.0/src/fullscreen.h geeqie-1.1/src/fullscreen.h --- geeqie-1.0/src/fullscreen.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/fullscreen.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/gq-marshal.c geeqie-1.1/src/gq-marshal.c --- geeqie-1.0/src/gq-marshal.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/gq-marshal.c 2012-08-12 20:13:41.000000000 +0000 @@ -91,6 +91,41 @@ data2); } +void gq_marshal_VOID__INT_INT(GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__INT_INT) (gpointer data1, + gint arg_1, + gint arg_2, + gpointer data2); + register GMarshalFunc_VOID__INT_INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail(n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA(closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer(param_values + 0); + } + else + { + data1 = g_value_peek_pointer(param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__INT_INT) (marshal_data ? marshal_data : cc->callback); + + callback(data1, + g_marshal_value_peek_int(param_values + 1), + g_marshal_value_peek_int(param_values + 2), + data2); +} + /* VOID:DOUBLE (gq-marshal.list:3) */ /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */ diff -Nru geeqie-1.0/src/gq-marshal.h geeqie-1.1/src/gq-marshal.h --- geeqie-1.0/src/gq-marshal.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/gq-marshal.h 2012-08-12 20:13:41.000000000 +0000 @@ -17,6 +17,13 @@ gpointer invocation_hint, gpointer marshal_data); +extern void gq_marshal_VOID__INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + /* VOID:DOUBLE (gq-marshal.list:3) */ #define gq_marshal_VOID__DOUBLE g_cclosure_marshal_VOID__DOUBLE diff -Nru geeqie-1.0/src/histogram.c geeqie-1.1/src/histogram.c --- geeqie-1.0/src/histogram.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/histogram.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * based on a patch by Uwe Ohse diff -Nru geeqie-1.0/src/histogram.h geeqie-1.1/src/histogram.h --- geeqie-1.0/src/histogram.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/histogram.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik * based on a patch by Uwe Ohse diff -Nru geeqie-1.0/src/history_list.c geeqie-1.1/src/history_list.c --- geeqie-1.0/src/history_list.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/history_list.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: John Ellis, Vladimir Nadvornik, Laurent Monin * diff -Nru geeqie-1.0/src/history_list.h geeqie-1.1/src/history_list.h --- geeqie-1.0/src/history_list.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/history_list.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis, Vladimir Nadvornik, Laurent Monin * diff -Nru geeqie-1.0/src/icons/Makefile.in geeqie-1.1/src/icons/Makefile.in --- geeqie-1.0/src/icons/Makefile.in 2010-02-17 21:21:45.000000000 +0000 +++ geeqie-1.1/src/icons/Makefile.in 2012-08-12 20:14:07.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -16,8 +17,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c @@ -40,6 +42,7 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/auxdir/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ @@ -52,9 +55,37 @@ DATA = $(noinst_DATA) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive +AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ + $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ + distdir ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ @@ -135,6 +166,8 @@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ +JPEG_CFLAGS = @JPEG_CFLAGS@ +JPEG_LIBS = @JPEG_LIBS@ LCMS_CFLAGS = @LCMS_CFLAGS@ LCMS_LIBS = @LCMS_LIBS@ LDFLAGS = @LDFLAGS@ @@ -148,6 +181,7 @@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ +MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ @@ -157,10 +191,13 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATHSEP = @PATHSEP@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ @@ -168,6 +205,8 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ +TIFF_CFLAGS = @TIFF_CFLAGS@ +TIFF_LIBS = @TIFF_LIBS@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WINDRES = @WINDRES@ @@ -266,14 +305,14 @@ @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( 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/icons/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu src/icons/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/icons/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu src/icons/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -291,6 +330,7 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. @@ -299,7 +339,7 @@ # (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'; \ + @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ @@ -316,7 +356,7 @@ else \ local_target="$$target"; \ fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ @@ -324,7 +364,7 @@ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): - @failcom='exit 1'; \ + @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ @@ -350,16 +390,16 @@ else \ local_target="$$target"; \ fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) @@ -367,14 +407,14 @@ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + $(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=; \ + set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ @@ -386,7 +426,7 @@ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ - tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ @@ -395,29 +435,34 @@ 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 \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - 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" \ + test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique + $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags @@ -438,29 +483,44 @@ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done - list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + @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 && \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$top_distdir" \ - distdir="$$distdir/$$subdir" \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ + am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ @@ -491,6 +551,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -509,6 +570,8 @@ html: html-recursive +html-am: + info: info-recursive info-am: @@ -517,18 +580,28 @@ install-dvi: install-dvi-recursive +install-dvi-am: + install-exec-am: install-html: install-html-recursive +install-html-am: + install-info: install-info-recursive +install-info-am: + install-man: install-pdf: install-pdf-recursive +install-pdf-am: + install-ps: install-ps-recursive +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-recursive @@ -549,8 +622,8 @@ uninstall-am: -.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ - install-strip +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ + install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-generic ctags \ @@ -572,6 +645,7 @@ echo '#define ICONS_INLINE_H'; echo; \ $(GDK_PIXBUF_CSOURCE) --raw --extern --build-list $(ICONS_INLINE_PAIRS); \ echo '#endif /* ICONS_INLINE_H */') > $@ || echo "!!! Failed to generate $@ !!!" + # 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: diff -Nru geeqie-1.0/src/icons/svg/Makefile.in geeqie-1.1/src/icons/svg/Makefile.in --- geeqie-1.0/src/icons/svg/Makefile.in 2010-02-17 21:21:45.000000000 +0000 +++ geeqie-1.1/src/icons/svg/Makefile.in 2012-08-12 20:14:07.000000000 +0000 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -15,8 +16,9 @@ @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c @@ -39,6 +41,7 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/auxdir/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -122,6 +125,8 @@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ +JPEG_CFLAGS = @JPEG_CFLAGS@ +JPEG_LIBS = @JPEG_LIBS@ LCMS_CFLAGS = @LCMS_CFLAGS@ LCMS_LIBS = @LCMS_LIBS@ LDFLAGS = @LDFLAGS@ @@ -135,6 +140,7 @@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ +MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ @@ -144,10 +150,13 @@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATHSEP = @PATHSEP@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ @@ -155,6 +164,8 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ +TIFF_CFLAGS = @TIFF_CFLAGS@ +TIFF_LIBS = @TIFF_LIBS@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WINDRES = @WINDRES@ @@ -228,14 +239,14 @@ @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( 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/icons/svg/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu src/icons/svg/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/icons/svg/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu src/icons/svg/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -253,6 +264,7 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): tags: TAGS TAGS: @@ -276,13 +288,17 @@ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @@ -310,6 +326,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -328,6 +345,8 @@ html: html-am +html-am: + info: info-am info-am: @@ -336,18 +355,28 @@ install-dvi: install-dvi-am +install-dvi-am: + install-exec-am: install-html: install-html-am +install-html-am: + install-info: install-info-am +install-info-am: + install-man: install-pdf: install-pdf-am +install-pdf-am: + install-ps: install-ps-am +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-am @@ -380,6 +409,7 @@ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic pdf pdf-am ps ps-am 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: diff -Nru geeqie-1.0/src/image-load.c geeqie-1.1/src/image-load.c --- geeqie-1.0/src/image-load.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/image-load.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -13,6 +13,9 @@ #include "main.h" #include "image-load.h" +#include "image_load_gdk.h" +#include "image_load_jpeg.h" +#include "image_load_tiff.h" #include "exif.h" #include "filedata.h" @@ -35,6 +38,7 @@ SIGNAL_ERROR, SIGNAL_DONE, SIGNAL_PERCENT, + SIGNAL_SIZE, SIGNAL_COUNT }; @@ -88,6 +92,8 @@ il->requested_width = 0; il->requested_height = 0; + il->actual_width = 0; + il->actual_height = 0; il->shrunk = FALSE; il->can_destroy = TRUE; @@ -150,6 +156,17 @@ G_TYPE_NONE, 1, G_TYPE_DOUBLE); + signals[SIGNAL_SIZE] = + g_signal_new("size_prepared", + G_OBJECT_CLASS_TYPE(gobject_class), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET(ImageLoaderClass, area_ready), + NULL, NULL, + gq_marshal_VOID__INT_INT, + G_TYPE_NONE, 2, + G_TYPE_INT, + G_TYPE_INT); + } static void image_loader_finalize(GObject *object) @@ -265,6 +282,19 @@ return FALSE; } +static gboolean image_loader_emit_size_cb(gpointer data) +{ + gint width, height; + ImageLoader *il = data; + g_mutex_lock(il->data_mutex); + width = il->actual_width; + height = il->actual_height; + g_mutex_unlock(il->data_mutex); + g_signal_emit(il, signals[SIGNAL_SIZE], 0, width, height); + return FALSE; +} + + /* DONE and ERROR are emited only once, thus they can have normal priority PERCENT and AREA_READY should be processed ASAP */ @@ -284,6 +314,11 @@ g_idle_add_full(G_PRIORITY_HIGH, image_loader_emit_percent_cb, il, NULL); } +static void image_loader_emit_size(ImageLoader *il) +{ + g_idle_add_full(G_PRIORITY_HIGH, image_loader_emit_size_cb, il, NULL); +} + /* this function expects that il->data_mutex is locked by caller */ static void image_loader_emit_area_ready(ImageLoader *il, guint x, guint y, guint w, guint h) { @@ -303,7 +338,7 @@ /* the following functions may be executed in separate thread */ /* this function expects that il->data_mutex is locked by caller */ -static void image_loader_queue_delayed_erea_ready(ImageLoader *il, guint x, guint y, guint w, guint h) +static void image_loader_queue_delayed_area_ready(ImageLoader *il, guint x, guint y, guint w, guint h) { ImageLoaderAreaParam *par = g_new0(ImageLoaderAreaParam, 1); par->il = il; @@ -342,7 +377,7 @@ return; } - pb = gdk_pixbuf_loader_get_pixbuf(il->loader); + pb = il->backend.get_pixbuf(il->loader); if (pb == il->pixbuf) { @@ -350,6 +385,11 @@ return; } + if (g_ascii_strcasecmp(".jps", il->fd->extension) == 0) + { + g_object_set_data(G_OBJECT(pb), "stereo_data", GINT_TO_POINTER(STEREO_PIXBUF_CROSS)); + } + if (il->pixbuf) g_object_unref(il->pixbuf); il->pixbuf = pb; @@ -358,7 +398,7 @@ g_mutex_unlock(il->data_mutex); } -static void image_loader_area_updated_cb(GdkPixbufLoader *loader, +static void image_loader_area_updated_cb(gpointer loader, guint x, guint y, guint w, guint h, gpointer data) { @@ -375,14 +415,18 @@ g_mutex_lock(il->data_mutex); if (il->delay_area_ready) - image_loader_queue_delayed_erea_ready(il, x, y, w, h); + image_loader_queue_delayed_area_ready(il, x, y, w, h); else image_loader_emit_area_ready(il, x, y, w, h); + + if (il->stopping) il->backend.abort(il->loader); + g_mutex_unlock(il->data_mutex); } -static void image_loader_area_prepared_cb(GdkPixbufLoader *loader, gpointer data) +static void image_loader_area_prepared_cb(gpointer loader, gpointer data) { + ImageLoader *il = data; GdkPixbuf *pb; guchar *pix; size_t h, rs; @@ -391,7 +435,7 @@ http://bugzilla.gnome.org/show_bug.cgi?id=547669 http://bugzilla.gnome.org/show_bug.cgi?id=589334 */ - gchar *format = gdk_pixbuf_format_get_name(gdk_pixbuf_loader_get_format(loader)); + gchar *format = il->backend.get_format_name(loader); if (strcmp(format, "svg") == 0 || strcmp(format, "xpm") == 0) { @@ -401,7 +445,7 @@ g_free(format); - pb = gdk_pixbuf_loader_get_pixbuf(loader); + pb = il->backend.get_pixbuf(loader); h = gdk_pixbuf_get_height(pb); rs = gdk_pixbuf_get_rowstride(pb); @@ -411,27 +455,26 @@ } -static void image_loader_size_cb(GdkPixbufLoader *loader, +static void image_loader_size_cb(gpointer loader, gint width, gint height, gpointer data) { ImageLoader *il = data; - GdkPixbufFormat *format; gchar **mime_types; gboolean scale = FALSE; gint n; g_mutex_lock(il->data_mutex); + il->actual_width = width; + il->actual_height = height; if (il->requested_width < 1 || il->requested_height < 1) { g_mutex_unlock(il->data_mutex); + image_loader_emit_size(il); return; } g_mutex_unlock(il->data_mutex); - format = gdk_pixbuf_loader_get_format(loader); - if (!format) return; - - mime_types = gdk_pixbuf_format_get_mime_types(format); + mime_types = il->backend.get_format_mime_types(loader); n = 0; while (mime_types[n]) { @@ -440,13 +483,17 @@ } g_strfreev(mime_types); - if (!scale) return; + if (!scale) + { + image_loader_emit_size(il); + return; + } g_mutex_lock(il->data_mutex); + gint nw, nh; if (width > il->requested_width || height > il->requested_height) { - gint nw, nh; if (((gdouble)il->requested_width / width) < ((gdouble)il->requested_height / height)) { @@ -461,11 +508,14 @@ if (nw < 1) nw = 1; } - gdk_pixbuf_loader_set_size(loader, nw, nh); + il->actual_width = nw; + il->actual_height = nh; + il->backend.set_size(loader, nw, nh); il->shrunk = TRUE; } - g_mutex_unlock(il->data_mutex); + g_mutex_unlock(il->data_mutex); + image_loader_emit_size(il); } static void image_loader_stop_loader(ImageLoader *il) @@ -475,9 +525,9 @@ if (il->loader) { /* some loaders do not have a pixbuf till close, order is important here */ - gdk_pixbuf_loader_close(il->loader, il->error ? NULL : &il->error); /* we are interested in the first error only */ + il->backend.close(il->loader, il->error ? NULL : &il->error); /* we are interested in the first error only */ image_loader_sync_pixbuf(il); - g_object_unref(G_OBJECT(il->loader)); + il->backend.free(il->loader); il->loader = NULL; } g_mutex_lock(il->data_mutex); @@ -488,14 +538,27 @@ static void image_loader_setup_loader(ImageLoader *il) { g_mutex_lock(il->data_mutex); - il->loader = gdk_pixbuf_loader_new(); +#ifdef HAVE_JPEG + if (il->bytes_total >= 2 && il->mapped_file[0] == 0xff && il->mapped_file[1] == 0xd8) + { + DEBUG_1("Using custom jpeg loader"); + image_loader_backend_set_jpeg(&il->backend); + } + else +#endif +#ifdef HAVE_TIFF + if (il->bytes_total >= 10 && + (memcmp(il->mapped_file, "MM\0*", 4) == 0 || + memcmp(il->mapped_file, "II*\0", 4) == 0)) + { + DEBUG_1("Using custom tiff loader"); + image_loader_backend_set_tiff(&il->backend); + } + else +#endif + image_loader_backend_set_default(&il->backend); - g_signal_connect(G_OBJECT(il->loader), "area_updated", - G_CALLBACK(image_loader_area_updated_cb), il); - g_signal_connect(G_OBJECT(il->loader), "size_prepared", - G_CALLBACK(image_loader_size_cb), il); - g_signal_connect(G_OBJECT(il->loader), "area_prepared", - G_CALLBACK(image_loader_area_prepared_cb), il); + il->loader = il->backend.loader_new(image_loader_area_updated_cb, image_loader_size_cb, image_loader_area_prepared_cb, il); g_mutex_unlock(il->data_mutex); } @@ -534,7 +597,7 @@ return FALSE; } - if (b < 0 || (b > 0 && !gdk_pixbuf_loader_write(il->loader, il->mapped_file + il->bytes_read, b, &il->error))) + if (b < 0 || (b > 0 && !il->backend.write(il->loader, il->mapped_file + il->bytes_read, b, &il->error))) { image_loader_error(il); return FALSE; @@ -563,8 +626,17 @@ if (b < 1) return FALSE; image_loader_setup_loader(il); - - if (!gdk_pixbuf_loader_write(il->loader, il->mapped_file + il->bytes_read, b, &il->error)) + + g_assert(il->bytes_read == 0); + if (il->backend.load) { + b = il->bytes_total; + if (!il->backend.load(il->loader, il->mapped_file, b, &il->error)) + { + image_loader_stop_loader(il); + return FALSE; + } + } + else if (!il->backend.write(il->loader, il->mapped_file, b, &il->error)) { image_loader_stop_loader(il); return FALSE; @@ -573,10 +645,10 @@ il->bytes_read += b; /* read until size is known */ - while (il->loader && !gdk_pixbuf_loader_get_pixbuf(il->loader) && b > 0 && !image_loader_get_stopping(il)) + while (il->loader && !il->backend.get_pixbuf(il->loader) && b > 0 && !image_loader_get_stopping(il)) { b = MIN(il->read_buffer_size, il->bytes_total - il->bytes_read); - if (b < 0 || (b > 0 && !gdk_pixbuf_loader_write(il->loader, il->mapped_file + il->bytes_read, b, &il->error))) + if (b < 0 || (b > 0 && !il->backend.write(il->loader, il->mapped_file + il->bytes_read, b, &il->error))) { image_loader_stop_loader(il); return FALSE; @@ -934,16 +1006,12 @@ gchar *image_loader_get_format(ImageLoader *il) { - GdkPixbufFormat *format; gchar **mimev; gchar *mime; if (!il || !il->loader) return NULL; - format = gdk_pixbuf_loader_get_format(il->loader); - if (!format) return NULL; - - mimev = gdk_pixbuf_format_get_mime_types(format); + mimev = il->backend.get_format_mime_types(il->loader); if (!mimev) return NULL; /* return first member of mimev, as GdkPixbufLoader has no way to tell us which exact one ? */ diff -Nru geeqie-1.0/src/image-load.h geeqie-1.1/src/image-load.h --- geeqie-1.0/src/image-load.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/image-load.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -16,6 +16,37 @@ #define TYPE_IMAGE_LOADER (image_loader_get_type()) +typedef void (*ImageLoaderBackendCbAreaPrepared)(gpointer loader, gpointer data); +typedef void (*ImageLoaderBackendCbSize)(gpointer loader, gint width, gint height, gpointer data); +typedef void (*ImageLoaderBackendCbAreaUpdated)(gpointer loader, guint x, guint y, guint w, guint h, gpointer data); + +typedef gpointer (*ImageLoaderBackendFuncLoaderNew)(ImageLoaderBackendCbAreaUpdated, ImageLoaderBackendCbSize, ImageLoaderBackendCbAreaPrepared, gpointer data); +typedef void (*ImageLoaderBackendFuncSetSize)(gpointer loader, int width, int height); +typedef gboolean (*ImageLoaderBackendFuncLoad)(gpointer loader, const guchar *buf, gsize count, GError **error); /* optional, load whole image at once */ +typedef gboolean (*ImageLoaderBackendFuncWrite)(gpointer loader, const guchar *buf, gsize count, GError **error); +typedef GdkPixbuf* (*ImageLoaderBackendFuncGetPixbuf)(gpointer loader); +typedef gboolean (*ImageLoaderBackendFuncClose)(gpointer loader, GError **error); +typedef void (*ImageLoaderBackendFuncAbort)(gpointer loader); +typedef void (*ImageLoaderBackendFuncFree)(gpointer loader); +typedef gchar* (*ImageLoaderBackendFuncGetFormatName)(gpointer loader); +typedef gchar** (*ImageLoaderBackendFuncGetFormatMimeTypes)(gpointer loader); + +typedef struct _ImageLoaderBackend ImageLoaderBackend; +struct _ImageLoaderBackend +{ + ImageLoaderBackendFuncLoaderNew loader_new; + ImageLoaderBackendFuncSetSize set_size; + ImageLoaderBackendFuncLoad load; + ImageLoaderBackendFuncWrite write; + ImageLoaderBackendFuncGetPixbuf get_pixbuf; + ImageLoaderBackendFuncClose close; + ImageLoaderBackendFuncAbort abort; + ImageLoaderBackendFuncFree free; + ImageLoaderBackendFuncGetFormatName get_format_name; + ImageLoaderBackendFuncGetFormatMimeTypes get_format_mime_types; +}; + + //typedef struct _ImageLoader ImageLoader; typedef struct _ImageLoaderClass ImageLoaderClass; @@ -35,14 +66,19 @@ gint requested_width; gint requested_height; + + gint actual_width; + gint actual_height; + gboolean shrunk; gboolean done; guint idle_id; /* event source id */ gint idle_priority; - GdkPixbufLoader *loader; + gpointer *loader; GError *error; + ImageLoaderBackend backend; guint idle_done_id; /* event source id */ GList *area_param_list; diff -Nru geeqie-1.0/src/image-overlay.c geeqie-1.1/src/image-overlay.c --- geeqie-1.0/src/image-overlay.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/image-overlay.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/image-overlay.h geeqie-1.1/src/image-overlay.h --- geeqie-1.0/src/image-overlay.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/image-overlay.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/image.c geeqie-1.1/src/image.c --- geeqie-1.0/src/image.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/image.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -652,6 +652,14 @@ image_read_ahead_start(imd); } +static void image_load_size_cb(ImageLoader *il, guint width, guint height, gpointer data) +{ + ImageWindow *imd = data; + + DEBUG_1("image_load_size_cb: %dx%d", width, height); + pixbuf_renderer_set_size_early((PixbufRenderer *)imd->pr, width, height); +} + static void image_load_error_cb(ImageLoader *il, gpointer data) { DEBUG_1("%s image error", get_exec_time()); @@ -674,6 +682,7 @@ g_signal_connect(G_OBJECT(imd->il), "area_ready", (GCallback)image_load_area_cb, imd); g_signal_connect(G_OBJECT(imd->il), "error", (GCallback)image_load_error_cb, imd); g_signal_connect(G_OBJECT(imd->il), "done", (GCallback)image_load_done_cb, imd); + g_signal_connect(G_OBJECT(imd->il), "size_prepared", (GCallback)image_load_size_cb, imd); } /* this read ahead is located here merely for the callbacks, above */ @@ -905,7 +914,11 @@ { ImageWindow *imd = data; +#if GTK_CHECK_VERSION(2,20,0) + image_focus_paint(imd, gtk_widget_has_focus(widget), &event->area); +#else image_focus_paint(imd, GTK_WIDGET_HAS_FOCUS(widget), &event->area); +#endif return TRUE; } @@ -1092,7 +1105,7 @@ void image_change_pixbuf(ImageWindow *imd, GdkPixbuf *pixbuf, gdouble zoom, gboolean lazy) { - + StereoPixbufData stereo_data = STEREO_PIXBUF_DEFAULT; /* read_exif and similar functions can actually notice that the file has changed and trigger a notification that removes the pixbuf from cache and unrefs it. Therefore we must ref it here before it is taken over by the renderer. */ @@ -1111,6 +1124,15 @@ } } + if (pixbuf) + { + stereo_data = imd->user_stereo; + if (stereo_data == STEREO_PIXBUF_DEFAULT) + { + stereo_data = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(pixbuf), "stereo_data")); + } + } + pixbuf_renderer_set_post_process_func((PixbufRenderer *)imd->pr, NULL, NULL, FALSE); if (imd->cm) { @@ -1120,12 +1142,13 @@ if (lazy) { - pixbuf_renderer_set_pixbuf_lazy((PixbufRenderer *)imd->pr, pixbuf, zoom, imd->orientation); + pixbuf_renderer_set_pixbuf_lazy((PixbufRenderer *)imd->pr, pixbuf, zoom, imd->orientation, stereo_data); } else { pixbuf_renderer_set_pixbuf((PixbufRenderer *)imd->pr, pixbuf, zoom); pixbuf_renderer_set_orientation((PixbufRenderer *)imd->pr, imd->orientation); + pixbuf_renderer_set_stereo_data((PixbufRenderer *)imd->pr, stereo_data); } if (pixbuf) g_object_unref(pixbuf); @@ -1250,6 +1273,8 @@ imd->orientation = source->orientation; imd->desaturate = source->desaturate; + imd->user_stereo = source->user_stereo; + pixbuf_renderer_move(PIXBUF_RENDERER(imd->pr), PIXBUF_RENDERER(source->pr)); if (imd->cm || imd->desaturate) @@ -1327,11 +1352,11 @@ if (vertical) { - zoom = (gdouble)pr->window_height / height; + zoom = (gdouble)pr->viewport_height / height; } else { - zoom = (gdouble)pr->window_width / width; + zoom = (gdouble)pr->viewport_width / width; } if (zoom < 1.0) @@ -1411,6 +1436,36 @@ return zoom; } +/* stereo */ +gint image_stereo_get(ImageWindow *imd) +{ + return pixbuf_renderer_stereo_get((PixbufRenderer *)imd->pr); +} + +void image_stereo_set(ImageWindow *imd, gint stereo_mode) +{ + DEBUG_1("Setting stereo mode %04x for imd %p", stereo_mode, imd); + pixbuf_renderer_stereo_set((PixbufRenderer *)imd->pr, stereo_mode); +} + +void image_stereo_swap(ImageWindow *imd) +{ + gint stereo_mode = pixbuf_renderer_stereo_get((PixbufRenderer *)imd->pr); + stereo_mode ^= PR_STEREO_SWAP; + pixbuf_renderer_stereo_set((PixbufRenderer *)imd->pr, stereo_mode); +} + +StereoPixbufData image_stereo_pixbuf_get(ImageWindow *imd) +{ + return imd->user_stereo; +} + +void image_stereo_pixbuf_set(ImageWindow *imd, StereoPixbufData stereo_mode) +{ + imd->user_stereo = stereo_mode; + image_reload(imd); +} + /* read ahead */ void image_prebuffer_set(ImageWindow *imd, FileData *fd) @@ -1658,6 +1713,12 @@ NULL); pixbuf_renderer_set_parent((PixbufRenderer *)imd->pr, (GtkWindow *)imd->top_window); + + image_stereo_set(imd, options->stereo.mode); + pixbuf_renderer_stereo_fixed_set((PixbufRenderer *)imd->pr, + options->stereo.fixed_w, options->stereo.fixed_h, + options->stereo.fixed_x1, options->stereo.fixed_y1, + options->stereo.fixed_x2, options->stereo.fixed_y2); } void image_options_sync(void) diff -Nru geeqie-1.0/src/image.h geeqie-1.1/src/image.h --- geeqie-1.0/src/image.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/image.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -91,6 +91,14 @@ gchar *image_zoom_get_as_text(ImageWindow *imd); gdouble image_zoom_get_default(ImageWindow *imd); +/* stereo */ +gint image_stereo_get(ImageWindow *imd); +void image_stereo_set(ImageWindow *imd, gint stereo_mode); +void image_stereo_swap(ImageWindow *imd); + +StereoPixbufData image_stereo_pixbuf_get(ImageWindow *imd); +void image_stereo_pixbuf_set(ImageWindow *imd, StereoPixbufData stereo_mode); + /* read ahead, pass NULL to cancel */ void image_prebuffer_set(ImageWindow *imd, FileData *fd); diff -Nru geeqie-1.0/src/image_load_gdk.c geeqie-1.1/src/image_load_gdk.c --- geeqie-1.0/src/image_load_gdk.c 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/src/image_load_gdk.c 2012-08-12 20:13:41.000000000 +0000 @@ -0,0 +1,62 @@ +/* + * Geeqie + * (C) 2004 John Ellis + * Copyright (C) 2008 - 2011 The Geeqie Team + * + * Author: Vladimir Nadvornik + * + * This software is released under the GNU General Public License (GNU GPL). + * Please read the included file COPYING for more information. + * This software comes with no warranty of any kind, use at your own risk! + */ + +#include "main.h" +#include "image-load.h" +#include "image_load_gdk.h" + + +static gchar* image_loader_gdk_get_format_name(gpointer loader) +{ + return gdk_pixbuf_format_get_name(gdk_pixbuf_loader_get_format(GDK_PIXBUF_LOADER(loader))); +} +static gchar** image_loader_gdk_get_format_mime_types(gpointer loader) +{ + return gdk_pixbuf_format_get_mime_types(gdk_pixbuf_loader_get_format(GDK_PIXBUF_LOADER(loader))); +} + +static gpointer image_loader_gdk_new(ImageLoaderBackendCbAreaUpdated area_updated_cb, ImageLoaderBackendCbSize size_cb, ImageLoaderBackendCbAreaPrepared area_prepared_cb, gpointer data) +{ + GdkPixbufLoader *loader = gdk_pixbuf_loader_new(); + + g_signal_connect(G_OBJECT(loader), "area_updated", G_CALLBACK(area_updated_cb), data); + g_signal_connect(G_OBJECT(loader), "size_prepared", G_CALLBACK(size_cb), data); + g_signal_connect(G_OBJECT(loader), "area_prepared", G_CALLBACK(area_prepared_cb), data); + return (gpointer) loader; +} + +static void image_loader_gdk_abort(gpointer loader) +{ +} + +static void image_loader_gdk_free(gpointer loader) +{ + g_object_unref(G_OBJECT(loader)); +} + +void image_loader_backend_set_default(ImageLoaderBackend *funcs) +{ + funcs->loader_new = image_loader_gdk_new; + funcs->set_size = (ImageLoaderBackendFuncSetSize) gdk_pixbuf_loader_set_size; + funcs->load = NULL; + funcs->write = (ImageLoaderBackendFuncWrite) gdk_pixbuf_loader_write; + funcs->get_pixbuf = (ImageLoaderBackendFuncGetPixbuf) gdk_pixbuf_loader_get_pixbuf; + funcs->close = (ImageLoaderBackendFuncClose) gdk_pixbuf_loader_close; + funcs->abort = image_loader_gdk_abort; + funcs->free = image_loader_gdk_free; + + funcs->get_format_name = image_loader_gdk_get_format_name; + funcs->get_format_mime_types = image_loader_gdk_get_format_mime_types; +} + + + diff -Nru geeqie-1.0/src/image_load_gdk.h geeqie-1.1/src/image_load_gdk.h --- geeqie-1.0/src/image_load_gdk.h 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/src/image_load_gdk.h 2012-08-12 20:13:41.000000000 +0000 @@ -0,0 +1,19 @@ +/* + * Geeqie + * (C) 2004 John Ellis + * Copyright (C) 2008 - 2011 The Geeqie Team + * + * Author: Vladimir Nadvornik + * + * This software is released under the GNU General Public License (GNU GPL). + * Please read the included file COPYING for more information. + * This software comes with no warranty of any kind, use at your own risk! + */ + +#ifndef IMAGE_LOAD_GDK_H +#define IMAGE_LOAD_GDK_H + +void image_loader_backend_set_default(ImageLoaderBackend *funcs); + +#endif + diff -Nru geeqie-1.0/src/image_load_jpeg.c geeqie-1.1/src/image_load_jpeg.c --- geeqie-1.0/src/image_load_jpeg.c 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/src/image_load_jpeg.c 2012-08-12 20:13:41.000000000 +0000 @@ -0,0 +1,500 @@ +/* + * Geeqie + * (C) 2004 John Ellis + * Copyright (C) 2008 - 2011 The Geeqie Team + * + * Author: Vladimir Nadvornik + * + * This software is released under the GNU General Public License (GNU GPL). + * Please read the included file COPYING for more information. + * This software comes with no warranty of any kind, use at your own risk! + */ + +/* based on code from GdkPixbuf library - JPEG image loader + * + * Copyright (C) 1999 Michael Zucchi + * Copyright (C) 1999 The Free Software Foundation + * + * Progressive loading code Copyright (C) 1999 Red Hat, Inc. + * + * Authors: Michael Zucchi + * Federico Mena-Quintero + * Michael Fulbright + * + * 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 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + + +#include "main.h" + +#include "image-load.h" +#include "image_load_jpeg.h" +#include "jpeg_parser.h" + +#ifdef HAVE_JPEG + +#include +#include +#include + +typedef struct _ImageLoaderJpeg ImageLoaderJpeg; +struct _ImageLoaderJpeg { + ImageLoaderBackendCbAreaUpdated area_updated_cb; + ImageLoaderBackendCbSize size_cb; + ImageLoaderBackendCbAreaPrepared area_prepared_cb; + + gpointer data; + + GdkPixbuf *pixbuf; + guint requested_width; + guint requested_height; + + gboolean abort; + gboolean stereo; + +}; + +/* error handler data */ +struct error_handler_data { + struct jpeg_error_mgr pub; + sigjmp_buf setjmp_buffer; + GError **error; +}; + +/* explode gray image data from jpeg library into rgb components in pixbuf */ +static void +explode_gray_into_buf (struct jpeg_decompress_struct *cinfo, + guchar **lines) +{ + gint i, j; + guint w; + + g_return_if_fail (cinfo != NULL); + g_return_if_fail (cinfo->output_components == 1); + g_return_if_fail (cinfo->out_color_space == JCS_GRAYSCALE); + + /* Expand grey->colour. Expand from the end of the + * memory down, so we can use the same buffer. + */ + w = cinfo->output_width; + for (i = cinfo->rec_outbuf_height - 1; i >= 0; i--) { + guchar *from, *to; + + from = lines[i] + w - 1; + to = lines[i] + (w - 1) * 3; + for (j = w - 1; j >= 0; j--) { + to[0] = from[0]; + to[1] = from[0]; + to[2] = from[0]; + to -= 3; + from--; + } + } +} + + +static void +convert_cmyk_to_rgb (struct jpeg_decompress_struct *cinfo, + guchar **lines) +{ + gint i, j; + + g_return_if_fail (cinfo != NULL); + g_return_if_fail (cinfo->output_components == 4); + g_return_if_fail (cinfo->out_color_space == JCS_CMYK); + + for (i = cinfo->rec_outbuf_height - 1; i >= 0; i--) { + guchar *p; + + p = lines[i]; + for (j = 0; j < cinfo->output_width; j++) { + int c, m, y, k; + c = p[0]; + m = p[1]; + y = p[2]; + k = p[3]; + if (cinfo->saw_Adobe_marker) { + p[0] = k*c / 255; + p[1] = k*m / 255; + p[2] = k*y / 255; + } + else { + p[0] = (255 - k)*(255 - c) / 255; + p[1] = (255 - k)*(255 - m) / 255; + p[2] = (255 - k)*(255 - y) / 255; + } + p[3] = 255; + p += 4; + } + } +} + + +static gpointer image_loader_jpeg_new(ImageLoaderBackendCbAreaUpdated area_updated_cb, ImageLoaderBackendCbSize size_cb, ImageLoaderBackendCbAreaPrepared area_prepared_cb, gpointer data) +{ + ImageLoaderJpeg *loader = g_new0(ImageLoaderJpeg, 1); + + loader->area_updated_cb = area_updated_cb; + loader->size_cb = size_cb; + loader->area_prepared_cb = area_prepared_cb; + loader->data = data; + return (gpointer) loader; +} + +static void +fatal_error_handler (j_common_ptr cinfo) +{ + struct error_handler_data *errmgr; + char buffer[JMSG_LENGTH_MAX]; + + errmgr = (struct error_handler_data *) cinfo->err; + + /* Create the message */ + (* cinfo->err->format_message) (cinfo, buffer); + + /* broken check for *error == NULL for robustness against + * crappy JPEG library + */ + if (errmgr->error && *errmgr->error == NULL) { + g_set_error (errmgr->error, + GDK_PIXBUF_ERROR, + cinfo->err->msg_code == JERR_OUT_OF_MEMORY + ? GDK_PIXBUF_ERROR_INSUFFICIENT_MEMORY + : GDK_PIXBUF_ERROR_CORRUPT_IMAGE, + _("Error interpreting JPEG image file (%s)"), + buffer); + } + + siglongjmp (errmgr->setjmp_buffer, 1); + + g_assert_not_reached (); +} + +static void +output_message_handler (j_common_ptr cinfo) +{ + /* This method keeps libjpeg from dumping crap to stderr */ + + /* do nothing */ +} + + +void image_loader_jpeg_read_scanline(struct jpeg_decompress_struct *cinfo, guchar **dptr, guint rowstride) +{ + guchar *lines[4]; + guchar **lptr; + gint i; + + lptr = lines; + for (i = 0; i < cinfo->rec_outbuf_height; i++) + { + *lptr++ = *dptr; + *dptr += rowstride; + } + + jpeg_read_scanlines (cinfo, lines, cinfo->rec_outbuf_height); + + switch (cinfo->out_color_space) + { + case JCS_GRAYSCALE: + explode_gray_into_buf (cinfo, lines); + break; + case JCS_RGB: + /* do nothing */ + break; + case JCS_CMYK: + convert_cmyk_to_rgb (cinfo, lines); + break; + default: + break; + } +} + + +static void init_source (j_decompress_ptr cinfo) {} +static boolean fill_input_buffer (j_decompress_ptr cinfo) +{ + ERREXIT(cinfo, JERR_INPUT_EMPTY); + return TRUE; +} +static void skip_input_data (j_decompress_ptr cinfo, long num_bytes) +{ + struct jpeg_source_mgr* src = (struct jpeg_source_mgr*) cinfo->src; + + if (num_bytes > src->bytes_in_buffer) + { + ERREXIT(cinfo, JERR_INPUT_EOF); + } + else if (num_bytes > 0) + { + src->next_input_byte += (size_t) num_bytes; + src->bytes_in_buffer -= (size_t) num_bytes; + } +} +static void term_source (j_decompress_ptr cinfo) {} +static void set_mem_src (j_decompress_ptr cinfo, void* buffer, long nbytes) +{ + struct jpeg_source_mgr* src; + + if (cinfo->src == NULL) + { /* first time for this JPEG object? */ + cinfo->src = (struct jpeg_source_mgr *) (*cinfo->mem->alloc_small) ( + (j_common_ptr) cinfo, JPOOL_PERMANENT, + sizeof(struct jpeg_source_mgr)); + } + + src = (struct jpeg_source_mgr*) cinfo->src; + src->init_source = init_source; + src->fill_input_buffer = fill_input_buffer; + src->skip_input_data = skip_input_data; + src->resync_to_restart = jpeg_resync_to_restart; /* use default method */ + src->term_source = term_source; + src->bytes_in_buffer = nbytes; + src->next_input_byte = (JOCTET*)buffer; +} + + +static gboolean image_loader_jpeg_load (gpointer loader, const guchar *buf, gsize count, GError **error) +{ + ImageLoaderJpeg *lj = (ImageLoaderJpeg *) loader; + struct jpeg_decompress_struct cinfo; + struct jpeg_decompress_struct cinfo2; + guchar *dptr, *dptr2; + guint rowstride; + guchar *stereo_buf2 = NULL; + guint stereo_length = 0; + + struct error_handler_data jerr; + + lj->stereo = FALSE; + + MPOData *mpo = jpeg_get_mpo_data(buf, count); + if (mpo && mpo->num_images > 1) + { + guint i; + gint idx1 = -1, idx2 = -1; + guint num2 = 1; + + for (i = 0; i < mpo->num_images; i++) + { + if (mpo->images[i].type_code == 0x20002) + { + if (mpo->images[i].MPIndividualNum == 1) + { + idx1 = i; + } + else if (mpo->images[i].MPIndividualNum > num2) + { + idx2 = i; + num2 = mpo->images[i].MPIndividualNum; + } + } + } + + if (idx1 >= 0 && idx2 >= 0) + { + lj->stereo = TRUE; + stereo_buf2 = (unsigned char *)buf + mpo->images[idx2].offset; + stereo_length = mpo->images[idx2].length; + buf = (unsigned char *)buf + mpo->images[idx1].offset; + count = mpo->images[idx1].length; + } + } + jpeg_mpo_data_free(mpo); + + /* setup error handler */ + cinfo.err = jpeg_std_error (&jerr.pub); + if (lj->stereo) cinfo2.err = jpeg_std_error (&jerr.pub); + jerr.pub.error_exit = fatal_error_handler; + jerr.pub.output_message = output_message_handler; + + jerr.error = error; + + + if (setjmp(jerr.setjmp_buffer)) + { + /* If we get here, the JPEG code has signaled an error. + * We need to clean up the JPEG object, close the input file, and return. + */ + jpeg_destroy_decompress(&cinfo); + if (lj->stereo) jpeg_destroy_decompress(&cinfo2); + return FALSE; + } + + jpeg_create_decompress(&cinfo); + + set_mem_src(&cinfo, (unsigned char *)buf, count); + + + jpeg_read_header(&cinfo, TRUE); + + if (lj->stereo) + { + jpeg_create_decompress(&cinfo2); + set_mem_src(&cinfo2, stereo_buf2, stereo_length); + jpeg_read_header(&cinfo2, TRUE); + + if (cinfo.image_width != cinfo2.image_width || + cinfo.image_height != cinfo2.image_height) + { + DEBUG_1("stereo data with different size"); + jpeg_destroy_decompress(&cinfo2); + lj->stereo = FALSE; + } + } + + + + lj->requested_width = lj->stereo ? cinfo.image_width * 2: cinfo.image_width; + lj->requested_height = cinfo.image_height; + lj->size_cb(loader, lj->requested_width, lj->requested_height, lj->data); + + cinfo.scale_num = 1; + for (cinfo.scale_denom = 2; cinfo.scale_denom <= 8; cinfo.scale_denom *= 2) { + jpeg_calc_output_dimensions(&cinfo); + if (cinfo.output_width < (lj->stereo ? lj->requested_width / 2 : lj->requested_width) || cinfo.output_height < lj->requested_height) { + cinfo.scale_denom /= 2; + break; + } + } + jpeg_calc_output_dimensions(&cinfo); + if (lj->stereo) + { + cinfo2.scale_num = cinfo.scale_num; + cinfo2.scale_denom = cinfo.scale_denom; + jpeg_calc_output_dimensions(&cinfo2); + jpeg_start_decompress(&cinfo2); + } + + + jpeg_start_decompress(&cinfo); + + + if (lj->stereo) + { + if (cinfo.output_width != cinfo2.output_width || + cinfo.output_height != cinfo2.output_height || + cinfo.out_color_components != cinfo2.out_color_components) + { + DEBUG_1("stereo data with different output size"); + jpeg_destroy_decompress(&cinfo2); + lj->stereo = FALSE; + } + } + + + lj->pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, + cinfo.out_color_components == 4 ? TRUE : FALSE, + 8, lj->stereo ? cinfo.output_width * 2: cinfo.output_width, cinfo.output_height); + + if (!lj->pixbuf) + { + jpeg_destroy_decompress (&cinfo); + if (lj->stereo) jpeg_destroy_decompress (&cinfo2); + return 0; + } + if (lj->stereo) g_object_set_data(G_OBJECT(lj->pixbuf), "stereo_data", GINT_TO_POINTER(STEREO_PIXBUF_CROSS)); + lj->area_prepared_cb(loader, lj->data); + + rowstride = gdk_pixbuf_get_rowstride(lj->pixbuf); + dptr = gdk_pixbuf_get_pixels(lj->pixbuf); + dptr2 = gdk_pixbuf_get_pixels(lj->pixbuf) + ((cinfo.out_color_components == 4) ? 4 * cinfo.output_width : 3 * cinfo.output_width); + + + while (cinfo.output_scanline < cinfo.output_height && !lj->abort) + { + guint scanline = cinfo.output_scanline; + image_loader_jpeg_read_scanline(&cinfo, &dptr, rowstride); + lj->area_updated_cb(loader, 0, scanline, cinfo.output_width, cinfo.rec_outbuf_height, lj->data); + if (lj->stereo) + { + guint scanline = cinfo2.output_scanline; + image_loader_jpeg_read_scanline(&cinfo2, &dptr2, rowstride); + lj->area_updated_cb(loader, cinfo.output_width, scanline, cinfo2.output_width, cinfo2.rec_outbuf_height, lj->data); + } + } + + jpeg_finish_decompress(&cinfo); + jpeg_destroy_decompress(&cinfo); + if (lj->stereo) + { + jpeg_finish_decompress(&cinfo); + jpeg_destroy_decompress(&cinfo); + } + + return TRUE; +} + +static void image_loader_jpeg_set_size(gpointer loader, int width, int height) +{ + ImageLoaderJpeg *lj = (ImageLoaderJpeg *) loader; + lj->requested_width = width; + lj->requested_height = height; +} + +static GdkPixbuf* image_loader_jpeg_get_pixbuf(gpointer loader) +{ + ImageLoaderJpeg *lj = (ImageLoaderJpeg *) loader; + return lj->pixbuf; +} + +static gchar* image_loader_jpeg_get_format_name(gpointer loader) +{ + return g_strdup("jpeg"); +} +static gchar** image_loader_jpeg_get_format_mime_types(gpointer loader) +{ + static gchar *mime[] = {"image/jpeg", NULL}; + return g_strdupv(mime); +} + +static gboolean image_loader_jpeg_close(gpointer loader, GError **error) +{ + return TRUE; +} + +static void image_loader_jpeg_abort(gpointer loader) +{ + ImageLoaderJpeg *lj = (ImageLoaderJpeg *) loader; + lj->abort = TRUE; +} + +static void image_loader_jpeg_free(gpointer loader) +{ + ImageLoaderJpeg *lj = (ImageLoaderJpeg *) loader; + if (lj->pixbuf) g_object_unref(lj->pixbuf); + g_free(lj); +} + + +void image_loader_backend_set_jpeg(ImageLoaderBackend *funcs) +{ + funcs->loader_new = image_loader_jpeg_new; + funcs->set_size = image_loader_jpeg_set_size; + funcs->load = image_loader_jpeg_load; + funcs->write = NULL; + funcs->get_pixbuf = image_loader_jpeg_get_pixbuf; + funcs->close = image_loader_jpeg_close; + funcs->abort = image_loader_jpeg_abort; + funcs->free = image_loader_jpeg_free; + + funcs->get_format_name = image_loader_jpeg_get_format_name; + funcs->get_format_mime_types = image_loader_jpeg_get_format_mime_types; +} + + + +#endif \ No newline at end of file diff -Nru geeqie-1.0/src/image_load_jpeg.h geeqie-1.1/src/image_load_jpeg.h --- geeqie-1.0/src/image_load_jpeg.h 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/src/image_load_jpeg.h 2012-08-12 20:13:41.000000000 +0000 @@ -0,0 +1,21 @@ +/* + * Geeqie + * (C) 2004 John Ellis + * Copyright (C) 2008 - 2011 The Geeqie Team + * + * Author: Vladimir Nadvornik + * + * This software is released under the GNU General Public License (GNU GPL). + * Please read the included file COPYING for more information. + * This software comes with no warranty of any kind, use at your own risk! + */ + +#ifndef IMAGE_LOAD_JPEG_H +#define IMAGE_LOAD_JPEG_H + +#ifdef HAVE_JPEG +void image_loader_backend_set_jpeg(ImageLoaderBackend *funcs); +#endif + +#endif + diff -Nru geeqie-1.0/src/image_load_tiff.c geeqie-1.1/src/image_load_tiff.c --- geeqie-1.0/src/image_load_tiff.c 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/src/image_load_tiff.c 2012-08-12 20:13:41.000000000 +0000 @@ -0,0 +1,422 @@ +/* + * Geeqie + * (C) 2004 John Ellis + * Copyright (C) 2008 - 2011 The Geeqie Team + * + * Author: Vladimir Nadvornik + * + * This software is released under the GNU General Public License (GNU GPL). + * Please read the included file COPYING for more information. + * This software comes with no warranty of any kind, use at your own risk! + */ + +/* based on code from GdkPixbuf library - TIFF image loader + * + * Copyright (C) 1999 Mark Crichton + * Copyright (C) 1999 The Free Software Foundation + * + * Authors: Mark Crichton + * Federico Mena-Quintero + * Jonathan Blandford + * S�ren Sandmann + * + * 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 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include "main.h" + +#include "image-load.h" +#include "image_load_tiff.h" + +#ifdef HAVE_TIFF + +#include + +typedef struct _ImageLoaderTiff ImageLoaderTiff; +struct _ImageLoaderTiff { + ImageLoaderBackendCbAreaUpdated area_updated_cb; + ImageLoaderBackendCbSize size_cb; + ImageLoaderBackendCbAreaPrepared area_prepared_cb; + + gpointer data; + + GdkPixbuf *pixbuf; + guint requested_width; + guint requested_height; + + gboolean abort; + + const guchar *buffer; + toff_t used; + toff_t pos; +}; + +static void free_buffer (guchar *pixels, gpointer data) +{ + g_free (pixels); +} + +static tsize_t +tiff_load_read (thandle_t handle, tdata_t buf, tsize_t size) +{ + ImageLoaderTiff *context = (ImageLoaderTiff *)handle; + + if (context->pos + size > context->used) + return 0; + + memcpy (buf, context->buffer + context->pos, size); + context->pos += size; + return size; +} + +static tsize_t +tiff_load_write (thandle_t handle, tdata_t buf, tsize_t size) +{ + return -1; +} + +static toff_t +tiff_load_seek (thandle_t handle, toff_t offset, int whence) +{ + ImageLoaderTiff *context = (ImageLoaderTiff *)handle; + + switch (whence) { + case SEEK_SET: + if (offset > context->used) + return -1; + context->pos = offset; + break; + case SEEK_CUR: + if (offset + context->pos >= context->used) + return -1; + context->pos += offset; + break; + case SEEK_END: + if (offset + context->used > context->used) + return -1; + context->pos = context->used + offset; + break; + default: + return -1; + } + return context->pos; +} + +static int +tiff_load_close (thandle_t context) +{ + return 0; +} + +static toff_t +tiff_load_size (thandle_t handle) +{ + ImageLoaderTiff *context = (ImageLoaderTiff *)handle; + + return context->used; +} + +static int +tiff_load_map_file (thandle_t handle, tdata_t *buf, toff_t *size) +{ + ImageLoaderTiff *context = (ImageLoaderTiff *)handle; + + *buf = (tdata_t *) context->buffer; + *size = context->used; + + return 0; +} + +static void +tiff_load_unmap_file (thandle_t handle, tdata_t data, toff_t offset) +{ +} + +static gboolean image_loader_tiff_load (gpointer loader, const guchar *buf, gsize count, GError **error) +{ + ImageLoaderTiff *lt = (ImageLoaderTiff *) loader; + + TIFF *tiff; + guchar *pixels = NULL; + gint width, height, rowstride, bytes; + uint16 orientation = 0; + uint16 transform = 0; + uint32 rowsperstrip; + + lt->buffer = buf; + lt->used = count; + lt->pos = 0; + + TIFFSetWarningHandler(NULL); + + tiff = TIFFClientOpen ("libtiff-geeqie", "r", lt, + tiff_load_read, tiff_load_write, + tiff_load_seek, tiff_load_close, + tiff_load_size, + tiff_load_map_file, tiff_load_unmap_file); + if (!tiff) + { + DEBUG_1("Failed to open TIFF image"); + return FALSE; + } + + + + if (!TIFFGetField (tiff, TIFFTAG_IMAGEWIDTH, &width)) { + DEBUG_1("Could not get image width (bad TIFF file)"); + TIFFClose(tiff); + return FALSE; + } + + if (!TIFFGetField (tiff, TIFFTAG_IMAGELENGTH, &height)) { + DEBUG_1("Could not get image height (bad TIFF file)"); + TIFFClose(tiff); + return FALSE; + } + + if (width <= 0 || height <= 0) { + DEBUG_1("Width or height of TIFF image is zero"); + TIFFClose(tiff); + return FALSE; + } + + rowstride = width * 4; + if (rowstride / 4 != width) { /* overflow */ + DEBUG_1("Dimensions of TIFF image too large"); + TIFFClose(tiff); + return FALSE; + } + + bytes = height * rowstride; + if (bytes / rowstride != height) { /* overflow */ + DEBUG_1("Dimensions of TIFF image too large"); + TIFFClose(tiff); + return FALSE; + } + + lt->requested_width = width; + lt->requested_height = height; + lt->size_cb(loader, lt->requested_width, lt->requested_height, lt->data); + + pixels = g_try_malloc (bytes); + + if (!pixels) { + DEBUG_1("Insufficient memory to open TIFF file"); + TIFFClose(tiff); + return FALSE; + } + + lt->pixbuf = gdk_pixbuf_new_from_data (pixels, GDK_COLORSPACE_RGB, TRUE, 8, + width, height, rowstride, + free_buffer, NULL); + if (!lt->pixbuf) { + g_free (pixels); + DEBUG_1("Insufficient memory to open TIFF file"); + TIFFClose(tiff); + return FALSE; + } + + /* Set the "orientation" key associated with this image. libtiff + orientation handling is odd, so further processing is required + by higher-level functions based on this tag. If the embedded + orientation tag is 1-4, libtiff flips/mirrors the image as + required, and no client processing is required - so we report + no orientation. Orientations 5-8 require rotations which would + swap the width and height of the image. libtiff does not do this. + Instead it interprets orientations 5-8 the same as 1-4. + See http://bugzilla.remotesensing.org/show_bug.cgi?id=1548. + To correct for this, the client must apply the transform normally + used for orientation 5 to both orientations 5 and 7, and apply + the transform normally used for orientation 7 for both + orientations 6 and 8. Then everythings works out OK! */ + + TIFFGetField (tiff, TIFFTAG_ORIENTATION, &orientation); + + switch (orientation) { + case 5: + case 7: + transform = 5; + break; + case 6: + case 8: + transform = 7; + break; + default: + transform = 0; + break; + } + + + lt->area_prepared_cb(loader, lt->data); + + + + if( TIFFGetField(tiff, TIFFTAG_ROWSPERSTRIP, &rowsperstrip) ) + { + /* read by strip */ + int row; + guchar *wrk_line = (guchar *)g_malloc(width * sizeof (uint32)); + + + for( row = 0; row < height; row += rowsperstrip ) + { + int rows_to_write, i_row; + + if (lt->abort) { + break; + } + + /* Read the strip into an RGBA array */ + if (!TIFFReadRGBAStrip(tiff, row, (uint32 *)(pixels + row * rowstride))) { + break; + } + + /* + * Figure out the number of scanlines actually in this strip. + */ + if( row + (int)rowsperstrip > height ) + rows_to_write = height - row; + else + rows_to_write = rowsperstrip; + + + + /* + * For some reason the TIFFReadRGBAStrip() function chooses the + * lower left corner as the origin. Vertically mirror scanlines. + */ + for( i_row = 0; i_row < rows_to_write / 2; i_row++ ) + { + guchar *top_line, *bottom_line; + + top_line = pixels + (row + i_row) * rowstride; + bottom_line = pixels + (row + rows_to_write - i_row - 1) * rowstride; + + memcpy(wrk_line, top_line, 4*width); + memcpy(top_line, bottom_line, 4*width); + memcpy(bottom_line, wrk_line, 4*width); + } + lt->area_updated_cb(loader, 0, row, width, rows_to_write, lt->data); + } + g_free(wrk_line); + } + else + { + /* fallback, tiled tiff */ + if (!TIFFReadRGBAImageOriented (tiff, width, height, (uint32 *)pixels, ORIENTATION_TOPLEFT, 1)) + { + TIFFClose(tiff); + return FALSE; + } + +#if G_BYTE_ORDER == G_BIG_ENDIAN + /* Turns out that the packing used by TIFFRGBAImage depends on + * the host byte order... + */ + while (pixels < pixbuf->pixels + bytes) + { + uint32 pixel = *(uint32 *)pixels; + int r = TIFFGetR(pixel); + int g = TIFFGetG(pixel); + int b = TIFFGetB(pixel); + int a = TIFFGetA(pixel); + *pixels++ = r; + *pixels++ = g; + *pixels++ = b; + *pixels++ = a; + } +#endif + + lt->area_updated_cb(loader, 0, 0, width, height, lt->data); + } + TIFFClose(tiff); + + return TRUE; +} + + +static gpointer image_loader_tiff_new(ImageLoaderBackendCbAreaUpdated area_updated_cb, ImageLoaderBackendCbSize size_cb, ImageLoaderBackendCbAreaPrepared area_prepared_cb, gpointer data) +{ + ImageLoaderTiff *loader = g_new0(ImageLoaderTiff, 1); + + loader->area_updated_cb = area_updated_cb; + loader->size_cb = size_cb; + loader->area_prepared_cb = area_prepared_cb; + loader->data = data; + return (gpointer) loader; +} + + +static void image_loader_tiff_set_size(gpointer loader, int width, int height) +{ + ImageLoaderTiff *lt = (ImageLoaderTiff *) loader; + lt->requested_width = width; + lt->requested_height = height; +} + +static GdkPixbuf* image_loader_tiff_get_pixbuf(gpointer loader) +{ + ImageLoaderTiff *lt = (ImageLoaderTiff *) loader; + return lt->pixbuf; +} + +static gchar* image_loader_tiff_get_format_name(gpointer loader) +{ + return g_strdup("tiff"); +} +static gchar** image_loader_tiff_get_format_mime_types(gpointer loader) +{ + static gchar *mime[] = {"image/tiff", NULL}; + return g_strdupv(mime); +} + +static gboolean image_loader_tiff_close(gpointer loader, GError **error) +{ + return TRUE; +} + +static void image_loader_tiff_abort(gpointer loader) +{ + ImageLoaderTiff *lt = (ImageLoaderTiff *) loader; + lt->abort = TRUE; +} + +static void image_loader_tiff_free(gpointer loader) +{ + ImageLoaderTiff *lt = (ImageLoaderTiff *) loader; + if (lt->pixbuf) g_object_unref(lt->pixbuf); + g_free(lt); +} + + +void image_loader_backend_set_tiff(ImageLoaderBackend *funcs) +{ + funcs->loader_new = image_loader_tiff_new; + funcs->set_size = image_loader_tiff_set_size; + funcs->load = image_loader_tiff_load; + funcs->write = NULL; + funcs->get_pixbuf = image_loader_tiff_get_pixbuf; + funcs->close = image_loader_tiff_close; + funcs->abort = image_loader_tiff_abort; + funcs->free = image_loader_tiff_free; + + funcs->get_format_name = image_loader_tiff_get_format_name; + funcs->get_format_mime_types = image_loader_tiff_get_format_mime_types; +} + + + +#endif \ No newline at end of file diff -Nru geeqie-1.0/src/image_load_tiff.h geeqie-1.1/src/image_load_tiff.h --- geeqie-1.0/src/image_load_tiff.h 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/src/image_load_tiff.h 2012-08-12 20:13:41.000000000 +0000 @@ -0,0 +1,21 @@ +/* + * Geeqie + * (C) 2004 John Ellis + * Copyright (C) 2008 - 2011 The Geeqie Team + * + * Author: Vladimir Nadvornik + * + * This software is released under the GNU General Public License (GNU GPL). + * Please read the included file COPYING for more information. + * This software comes with no warranty of any kind, use at your own risk! + */ + +#ifndef IMAGE_LOAD_TIFF_H +#define IMAGE_LOAD_TIFF_H + +#ifdef HAVE_TIFF +void image_loader_backend_set_tiff(ImageLoaderBackend *funcs); +#endif + +#endif + diff -Nru geeqie-1.0/src/img-view.c geeqie-1.1/src/img-view.c --- geeqie-1.0/src/img-view.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/img-view.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -885,6 +885,14 @@ image_change_fd(vw->imd, fd, image_zoom_get_default(NULL)); } + /* Wait until image is loaded otherwise size is not defined */ + int count; + for (count = 10; count && !w && !h; count++) + { + image_get_image_size(vw->imd, &w, &h); + usleep(100000); + } + if (image_zoom_get(vw->imd) == 0.0) { image_get_image_size(vw->imd, &w, &h); diff -Nru geeqie-1.0/src/img-view.h geeqie-1.1/src/img-view.h --- geeqie-1.0/src/img-view.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/img-view.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/jpeg_parser.c geeqie-1.1/src/jpeg_parser.c --- geeqie-1.0/src/jpeg_parser.c 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/src/jpeg_parser.c 2012-08-12 20:13:41.000000000 +0000 @@ -0,0 +1,386 @@ +/* + * Geeqie + * (C) 2004 John Ellis + * Copyright (C) 2008 - 2011 The Geeqie Team + * + * Author: Vladimir Nadvornik + * + * This software is released under the GNU General Public License (GNU GPL). + * Please read the included file COPYING for more information. + * This software comes with no warranty of any kind, use at your own risk! + */ + +#include "main.h" +#include "jpeg_parser.h" + +gboolean jpeg_segment_find(guchar *data, guint size, + guchar app_marker, const gchar *magic, guint magic_len, + guint *seg_offset, guint *seg_length) +{ + guchar marker = 0; + guint offset = 0; + guint length = 0; + + while (marker != JPEG_MARKER_EOI) + { + offset += length; + length = 2; + + if (offset + 2 >= size || + data[offset] != JPEG_MARKER) return FALSE; + + marker = data[offset + 1]; + if (marker != JPEG_MARKER_SOI && + marker != JPEG_MARKER_EOI) + { + if (offset + 4 >= size) return FALSE; + length += ((guint)data[offset + 2] << 8) + data[offset + 3]; + + if (marker == app_marker && + offset + length < size && + length >= 4 + magic_len && + memcmp(data + offset + 4, magic, magic_len) == 0) + { + *seg_offset = offset + 4; + *seg_length = length - 4; + return TRUE; + } + } + } + return FALSE; +} + + +typedef enum { + TIFF_BYTE_ORDER_INTEL, + TIFF_BYTE_ORDER_MOTOROLA +} TiffByteOrder; + +#define TIFF_TIFD_OFFSET_TAG 0 +#define TIFF_TIFD_OFFSET_FORMAT 2 +#define TIFF_TIFD_OFFSET_COUNT 4 +#define TIFF_TIFD_OFFSET_DATA 8 +#define TIFF_TIFD_SIZE 12 + + + +guint16 tiff_byte_get_int16(guchar *f, TiffByteOrder bo) +{ + guint16 align_buf; + + memcpy(&align_buf, f, sizeof(guint16)); + + if (bo == TIFF_BYTE_ORDER_INTEL) + return GUINT16_FROM_LE(align_buf); + else + return GUINT16_FROM_BE(align_buf); +} + +guint32 tiff_byte_get_int32(guchar *f, TiffByteOrder bo) +{ + guint32 align_buf; + + memcpy(&align_buf, f, sizeof(guint32)); + + if (bo == TIFF_BYTE_ORDER_INTEL) + return GUINT32_FROM_LE(align_buf); + else + return GUINT32_FROM_BE(align_buf); +} + +void tiff_byte_put_int16(guchar *f, guint16 n, TiffByteOrder bo) +{ + guint16 align_buf; + + if (bo == TIFF_BYTE_ORDER_INTEL) + { + align_buf = GUINT16_TO_LE(n); + } + else + { + align_buf = GUINT16_TO_BE(n); + } + + memcpy(f, &align_buf, sizeof(guint16)); +} + +void tiff_byte_put_int32(guchar *f, guint32 n, TiffByteOrder bo) +{ + guint32 align_buf; + + if (bo == TIFF_BYTE_ORDER_INTEL) + { + align_buf = GUINT32_TO_LE(n); + } + else + { + align_buf = GUINT32_TO_BE(n); + } + + memcpy(f, &align_buf, sizeof(guint32)); +} + +gint tiff_directory_offset(guchar *data, const guint len, + guint *offset, TiffByteOrder *bo) +{ + if (len < 8) return FALSE; + + if (memcmp(data, "II", 2) == 0) + { + *bo = TIFF_BYTE_ORDER_INTEL; + } + else if (memcmp(data, "MM", 2) == 0) + { + *bo = TIFF_BYTE_ORDER_MOTOROLA; + } + else + { + return FALSE; + } + + if (tiff_byte_get_int16(data + 2, *bo) != 0x002A) + { + return FALSE; + } + + *offset = tiff_byte_get_int32(data + 4, *bo); + + return (*offset < len); +} + +typedef gint (* FuncParseIFDEntry)(guchar *tiff, guint offset, + guint size, TiffByteOrder bo, + gpointer data); + + +gint tiff_parse_IFD_table(guchar *tiff, guint offset, + guint size, TiffByteOrder bo, + guint *next_offset, + FuncParseIFDEntry parse_entry, gpointer data) +{ + guint count; + guint i; + guint next; + + + /* We should be able to read number of entries in IFD0) */ + if (size < offset + 2) return -1; + + count = tiff_byte_get_int16(tiff + offset, bo); + offset += 2; + /* Entries and next IFD offset must be readable */ + if (size < offset + count * TIFF_TIFD_SIZE + 4) return -1; + + for (i = 0; i < count; i++) + { + parse_entry(tiff, offset + i * TIFF_TIFD_SIZE, size, bo, data); + } + + next = tiff_byte_get_int32(tiff + offset + count * TIFF_TIFD_SIZE, bo); + if (next_offset) *next_offset = next; + + return 0; +} + +static gint mpo_parse_Index_IFD_entry(guchar *tiff, guint offset, + guint size, TiffByteOrder bo, + gpointer data) +{ + guint tag; + guint format; + guint count; + guint data_val; + guint data_offset; + guint data_length; + + MPOData *mpo = data; + + tag = tiff_byte_get_int16(tiff + offset + TIFF_TIFD_OFFSET_TAG, bo); + format = tiff_byte_get_int16(tiff + offset + TIFF_TIFD_OFFSET_FORMAT, bo); + count = tiff_byte_get_int32(tiff + offset + TIFF_TIFD_OFFSET_COUNT, bo); + data_val = tiff_byte_get_int32(tiff + offset + TIFF_TIFD_OFFSET_DATA, bo); + DEBUG_1(" tag %x format %x count %x data_val %x", tag, format, count, data_val); + + if (tag == 0xb000) + { + mpo->version = data_val; + DEBUG_1(" mpo version %x", mpo->version); + } + else if (tag == 0xb001) + { + mpo->num_images = data_val; + DEBUG_1(" num images %x", mpo->num_images); + } + else if (tag == 0xb002) + { + guint i; + data_offset = data_val; + data_length = count; + if (size < data_offset || size < data_offset + data_length) + { + return -1; + } + if (count != mpo->num_images * 16) + { + return -1; + } + + mpo->images = g_new0(MPOEntry, mpo->num_images); + + for (i = 0; i < mpo->num_images; i++) { + guint image_attr = tiff_byte_get_int32(tiff + data_offset + i * 16, bo); + mpo->images[i].type_code = image_attr & 0xffffff; + mpo->images[i].representative = !!(image_attr & 0x20000000); + mpo->images[i].dependent_child = !!(image_attr & 0x40000000); + mpo->images[i].dependent_parent = !!(image_attr & 0x80000000); + mpo->images[i].length = tiff_byte_get_int32(tiff + data_offset + i * 16 + 4, bo); + mpo->images[i].offset = tiff_byte_get_int32(tiff + data_offset + i * 16 + 8, bo); + mpo->images[i].dep1 = tiff_byte_get_int16(tiff + data_offset + i * 16 + 12, bo); + mpo->images[i].dep2 = tiff_byte_get_int16(tiff + data_offset + i * 16 + 14, bo); + + if (i == 0) + { + mpo->images[i].offset = 0; + } + else + { + mpo->images[i].offset += mpo->mpo_offset; + } + + DEBUG_1(" image %x %x %x", image_attr, mpo->images[i].length, mpo->images[i].offset); + } + } + + return 0; +} + +static gint mpo_parse_Attributes_IFD_entry(guchar *tiff, guint offset, + guint size, TiffByteOrder bo, + gpointer data) +{ + guint tag; + guint format; + guint count; + guint data_val; + guint data_offset; + guint data_length; + + MPOEntry *mpe = data; + + tag = tiff_byte_get_int16(tiff + offset + TIFF_TIFD_OFFSET_TAG, bo); + format = tiff_byte_get_int16(tiff + offset + TIFF_TIFD_OFFSET_FORMAT, bo); + count = tiff_byte_get_int32(tiff + offset + TIFF_TIFD_OFFSET_COUNT, bo); + data_val = tiff_byte_get_int32(tiff + offset + TIFF_TIFD_OFFSET_DATA, bo); + DEBUG_1(" tag %x format %x count %x data_val %x", tag, format, count, data_val); + + switch (tag) + { + case 0xb000: + mpe->MPFVersion = data_val; + DEBUG_1(" mpo version %x", data_val); + break; + case 0xb101: + mpe->MPIndividualNum = data_val; + DEBUG_1(" Individual Image Number %x", mpe->MPIndividualNum); + break; + case 0xb201: + mpe->PanOrientation = data_val; + break; +/* + +FIXME: +Panorama Scanning Orientation PanOrientation 45569 B201 LONG 1 +Panorama Horizontal Overlap PanOverlap_H 45570 B202 RATIONAL 1 +Panorama Vertical Overlap PanOverlap_V 45571 B203 RATIONAL 1 +Base Viewpoint Number BaseViewpointNum 45572 B204 LONG 1 +Convergence Angle ConvergenceAngle 45573 B205 SRATIONAL 1 +Baseline Length BaselineLength 45574 B206 RATIONAL 1 +Divergence Angle VerticalDivergence 45575 B207 SRATIONAL 1 +Horizontal Axis Distance AxisDistance_X 45576 B208 SRATIONAL 1 +Vertical Axis Distance AxisDistance_Y 45577 B209 SRATIONAL 1 +Collimation Axis Distance AxisDistance_Z 45578 B20A SRATIONAL 1 +Yaw Angle YawAngle 45579 B20B SRATIONAL 1 +Pitch Angle PitchAngle 45580 B20C SRATIONAL 1 +Roll Angle RollAngle 45581 B20D + */ + default: + break; + } + + return 0; +} + +MPOData *jpeg_get_mpo_data(guchar *data, guint size) +{ + guint seg_offset; + guint seg_size; + if (jpeg_segment_find(data, size, JPEG_MARKER_APP2, "MPF\x00", 4, &seg_offset, &seg_size) && seg_size >16) + { + guint offset; + guint next_offset; + TiffByteOrder bo; + MPOData *mpo; + guint i; + + DEBUG_1("mpo signature found at %x", seg_offset); + seg_offset += 4; + seg_size -= 4; + + if (!tiff_directory_offset(data + seg_offset, seg_size, &offset, &bo)) return NULL; + + mpo = g_new0(MPOData, 1); + mpo->mpo_offset = seg_offset; + + tiff_parse_IFD_table(data + seg_offset, offset , seg_size, bo, &next_offset, mpo_parse_Index_IFD_entry, (gpointer)mpo); + if (!mpo->images) mpo->num_images = 0; + + + for (i = 0; i < mpo->num_images; i++) + { + if (mpo->images[i].offset + mpo->images[i].length > size) + { + mpo->num_images = i; + DEBUG_1("MPO file truncated to %d valid images, %d %d", i, mpo->images[i].offset + mpo->images[i].length, size); + break; + } + } + + for (i = 0; i < mpo->num_images; i++) + { + if (i == 0) + { + offset = next_offset; + } + else + { + if (!jpeg_segment_find(data + mpo->images[i].offset, mpo->images[i].length, JPEG_MARKER_APP2, "MPF\x00", 4, &seg_offset, &seg_size) || seg_size <=16) + { + DEBUG_1("MPO image %d: MPO signature not found", i); + continue; + } + + seg_offset += 4; + seg_size -= 4; + if (!tiff_directory_offset(data + mpo->images[i].offset + seg_offset, seg_size, &offset, &bo)) + { + DEBUG_1("MPO image %d: invalid directory offset", i); + continue; + } + + } + tiff_parse_IFD_table(data + mpo->images[i].offset + seg_offset, offset , seg_size, bo, NULL, mpo_parse_Attributes_IFD_entry, (gpointer)&mpo->images[i]); + } + + return mpo; + } + return NULL; +} + +void jpeg_mpo_data_free(MPOData *mpo) +{ + if (mpo) + { + if (mpo->images) g_free(mpo->images); + g_free(mpo); + } +} \ No newline at end of file diff -Nru geeqie-1.0/src/jpeg_parser.h geeqie-1.1/src/jpeg_parser.h --- geeqie-1.0/src/jpeg_parser.h 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/src/jpeg_parser.h 2012-08-12 20:13:41.000000000 +0000 @@ -0,0 +1,82 @@ +/* + * Geeqie + * (C) 2004 John Ellis + * Copyright (C) 2008 - 2012 The Geeqie Team + * + * Author: Vladimir Nadvornik + * + * This software is released under the GNU General Public License (GNU GPL). + * Please read the included file COPYING for more information. + * This software comes with no warranty of any kind, use at your own risk! + */ + +#ifndef JPEG_PARSER_H +#define JPEG_PARSER_H + +#define JPEG_MARKER 0xFF +#define JPEG_MARKER_SOI 0xD8 +#define JPEG_MARKER_EOI 0xD9 +#define JPEG_MARKER_APP1 0xE1 +#define JPEG_MARKER_APP2 0xE2 + +/* jpeg container format: + all data markers start with 0XFF + 2 byte long file start and end markers: 0xFFD8(SOI) and 0XFFD9(EOI) + 4 byte long data segment markers in format: 0xFFTTSSSSNNN... + FF: 1 byte standard marker identifier + TT: 1 byte data type + SSSS: 2 bytes in Motorola byte alignment for length of the data. + This value includes these 2 bytes in the count, making actual + length of NN... == SSSS - 2. + NNN.: the data in this segment + */ + +gboolean jpeg_segment_find(guchar *data, guint size, + guchar app_marker, const gchar *magic, guint magic_len, + guint *seg_offset, guint *seg_length); + + +typedef struct _MPOData MPOData; +typedef struct _MPOEntry MPOEntry; + +struct _MPOEntry { + guint type_code; + gboolean representative; + gboolean dependent_child; + gboolean dependent_parent; + guint offset; + guint length; + guint dep1; + guint dep2; + + guint MPFVersion; + guint MPIndividualNum; + guint PanOrientation; + double PanOverlap_H; + double PanOverlap_V; + guint BaseViewpointNum; + double ConvergenceAngle; + double BaselineLength; + double VerticalDivergence; + double AxisDistance_X; + double AxisDistance_Y; + double AxisDistance_Z; + double YawAngle; + double PitchAngle; + double RollAngle; + +}; + + +struct _MPOData { + guint mpo_offset; + + guint version; + guint num_images; + MPOEntry *images; +}; + +MPOData* jpeg_get_mpo_data(guchar *data, guint size); +void jpeg_mpo_data_free(MPOData *mpo); + +#endif \ No newline at end of file diff -Nru geeqie-1.0/src/layout.c geeqie-1.1/src/layout.c --- geeqie-1.0/src/layout.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/layout.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -484,6 +484,7 @@ guint64 n; if (!layout_valid(&lw) || !lw->image) return; + if (!lw->info_zoom || !lw->info_details) return; /*called from layout_style_set */ n = layout_list_count(lw, NULL); @@ -851,7 +852,7 @@ if (!path) return FALSE; - fd = file_data_new_simple(path); + fd = file_data_new_group(path); ret = layout_set_fd(lw, fd); file_data_unref(fd); return ret; @@ -898,7 +899,7 @@ file_data_unregister_real_time_monitor(lw->dir_fd); file_data_unref(lw->dir_fd); } - lw->dir_fd = file_data_new_simple(base); + lw->dir_fd = file_data_new_dir(base); file_data_register_real_time_monitor(lw->dir_fd); g_free(base); } @@ -1143,7 +1144,11 @@ { if (!layout_valid(&lw)) return FALSE; +#if GTK_CHECK_VERSION(2,20,0) + if (!lw->tools || !gtk_widget_get_visible(lw->tools)) +#else if (!lw->tools || !GTK_WIDGET_VISIBLE(lw->tools)) +#endif { /* use the stored values (sort of breaks success return value) */ @@ -1179,7 +1184,11 @@ if (hide) { +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_visible(lw->tools)) +#else if (GTK_WIDGET_VISIBLE(lw->tools)) +#endif { layout_tools_geometry_sync(lw); gtk_widget_hide(lw->tools); @@ -1187,7 +1196,11 @@ } else { +#if GTK_CHECK_VERSION(2,20,0) + if (!gtk_widget_get_visible(lw->tools)) +#else if (!GTK_WIDGET_VISIBLE(lw->tools)) +#endif { gtk_widget_show(lw->tools); if (lw->vf) vf_refresh(lw->vf); @@ -1713,11 +1726,19 @@ if (lw->options.toolbar_hidden) { +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_visible(lw->toolbar[TOOLBAR_MAIN])) gtk_widget_hide(lw->toolbar[TOOLBAR_MAIN]); +#else if (GTK_WIDGET_VISIBLE(lw->toolbar[TOOLBAR_MAIN])) gtk_widget_hide(lw->toolbar[TOOLBAR_MAIN]); +#endif } else { +#if GTK_CHECK_VERSION(2,20,0) + if (!gtk_widget_get_visible(lw->toolbar[TOOLBAR_MAIN])) gtk_widget_show(lw->toolbar[TOOLBAR_MAIN]); +#else if (!GTK_WIDGET_VISIBLE(lw->toolbar[TOOLBAR_MAIN])) gtk_widget_show(lw->toolbar[TOOLBAR_MAIN]); +#endif } } diff -Nru geeqie-1.0/src/layout.h geeqie-1.1/src/layout.h --- geeqie-1.0/src/layout.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/layout.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/layout_config.c geeqie-1.1/src/layout_config.c --- geeqie-1.0/src/layout_config.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/layout_config.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/layout_config.h geeqie-1.1/src/layout_config.h --- geeqie-1.0/src/layout_config.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/layout_config.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/layout_image.c geeqie-1.1/src/layout_image.c --- geeqie-1.0/src/layout_image.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/layout_image.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -634,7 +634,7 @@ FileData *dir_fd; base = remove_level_from_path(fd->path); - dir_fd = file_data_new_simple(base); + dir_fd = file_data_new_dir(base); if (dir_fd != lw->dir_fd) { layout_set_fd(lw, dir_fd); @@ -902,7 +902,42 @@ return image_get_desaturate(lw->image); } +/* stereo */ +/* +gint layout_image_stereo_get(LayoutWindow *lw) +{ + if (!layout_valid(&lw)) return 0; + + return image_stereo_get(lw->image); +} + +void layout_image_stereo_set(LayoutWindow *lw, gint stereo_mode) +{ + if (!layout_valid(&lw)) return; + image_stereo_set(lw->image, stereo_mode); +} +void layout_image_stereo_swap(LayoutWindow *lw) +{ + if (!layout_valid(&lw)) return; + + image_stereo_swap(lw->image); +} +*/ + +gint layout_image_stereo_pixbuf_get(LayoutWindow *lw) +{ + if (!layout_valid(&lw)) return 0; + + return image_stereo_pixbuf_get(lw->image); +} + +void layout_image_stereo_pixbuf_set(LayoutWindow *lw, gint stereo_mode) +{ + if (!layout_valid(&lw)) return; + + image_stereo_pixbuf_set(lw->image, stereo_mode); +} const gchar *layout_image_get_path(LayoutWindow *lw) { @@ -1674,6 +1709,7 @@ // layout_list_sync_path(lw, path); layout_set_fd(lw, fd); } + layout_status_update_image(lw); } diff -Nru geeqie-1.0/src/layout_image.h geeqie-1.1/src/layout_image.h --- geeqie-1.0/src/layout_image.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/layout_image.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -55,6 +55,15 @@ void layout_image_set_desaturate(LayoutWindow *lw, gboolean desaturate); gboolean layout_image_get_desaturate(LayoutWindow *lw); +/* +gint layout_image_stereo_get(LayoutWindow *lw); +void layout_image_stereo_set(LayoutWindow *lw, gint stereo_mode); +*/ +void layout_image_stereo_swap(LayoutWindow *lw); + +gint layout_image_stereo_pixbuf_get(LayoutWindow *lw); +void layout_image_stereo_pixbuf_set(LayoutWindow *lw, gint stereo_mode); + void layout_image_next(LayoutWindow *lw); void layout_image_prev(LayoutWindow *lw); void layout_image_first(LayoutWindow *lw); diff -Nru geeqie-1.0/src/layout_util.c geeqie-1.1/src/layout_util.c --- geeqie-1.0/src/layout_util.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/layout_util.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -89,7 +89,11 @@ gint x = 0; gint y = 0; +#if GTK_CHECK_VERSION(2,20,0) + if (lw->path_entry && gtk_widget_has_focus(lw->path_entry)) +#else if (lw->path_entry && GTK_WIDGET_HAS_FOCUS(lw->path_entry)) +#endif { if (event->keyval == GDK_Escape && lw->dir_fd) { @@ -104,7 +108,11 @@ return TRUE; } } +#if GTK_CHECK_VERSION(2,20,0) + if (lw->vd && lw->options.dir_view_type == DIRVIEW_TREE && gtk_widget_has_focus(lw->vd->view) && +#else if (lw->vd && lw->options.dir_view_type == DIRVIEW_TREE && GTK_WIDGET_HAS_FOCUS(lw->vd->view) && +#endif !layout_key_match(event->keyval) && gtk_widget_event(lw->vd->view, (GdkEvent *)event)) { @@ -123,7 +131,11 @@ */ if (lw->image && +#if GTK_CHECK_VERSION(2,20,0) + (gtk_widget_has_focus(lw->image->widget) || (lw->tools && widget == lw->window) || lw->full_screen) ) +#else (GTK_WIDGET_HAS_FOCUS(lw->image->widget) || (lw->tools && widget == lw->window) || lw->full_screen) ) +#endif { stop_signal = TRUE; switch (event->keyval) @@ -824,6 +836,32 @@ layout_image_slideshow_pause_toggle(lw); } + +static void layout_menu_stereo_mode_next_cb(GtkAction *action, gpointer data) +{ + LayoutWindow *lw = data; + gint mode = layout_image_stereo_pixbuf_get(lw); + + /* 0->1, 1->2, 2->3, 3->1 - disable auto, then cycle */ + mode = mode % 3 + 1; + + GtkAction *radio = gtk_action_group_get_action(lw->action_group, "StereoAuto"); + radio_action_set_current_value(GTK_RADIO_ACTION(radio), mode); + + /* + this is called via fallback in layout_menu_stereo_mode_cb + layout_image_stereo_pixbuf_set(lw, mode); + */ + +} + +static void layout_menu_stereo_mode_cb(GtkRadioAction *action, GtkRadioAction *current, gpointer data) +{ + LayoutWindow *lw = data; + gint mode = gtk_radio_action_get_current_value(action); + layout_image_stereo_pixbuf_set(lw, mode); +} + static void layout_menu_help_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; @@ -1026,7 +1064,7 @@ if (!path) return; /* Open previous path */ - dir_fd = file_data_new_simple(path); + dir_fd = file_data_new_dir(path); layout_set_fd(lw, dir_fd); file_data_unref(dir_fd); } @@ -1043,7 +1081,7 @@ if (path) { - FileData *dir_fd = file_data_new_simple(path); + FileData *dir_fd = file_data_new_dir(path); layout_set_fd(lw, dir_fd); file_data_unref(dir_fd); } @@ -1244,6 +1282,7 @@ { "ColorMenu", NULL, N_("_Color Management"), NULL, NULL, NULL }, { "ConnectZoomMenu", NULL, N_("_Connected Zoom"), NULL, NULL, NULL }, { "SplitMenu", NULL, N_("Spli_t"), NULL, NULL, NULL }, + { "StereoMenu", NULL, N_("Stere_o"), NULL, NULL, NULL }, { "OverlayMenu", NULL, N_("Image _Overlay"), NULL, NULL, NULL }, { "HelpMenu", NULL, N_("_Help"), NULL, NULL, NULL }, @@ -1343,6 +1382,7 @@ { "About", GTK_STOCK_ABOUT, N_("_About"), NULL, N_("About"), CB(layout_menu_about_cb) }, { "LogWindow", NULL, N_("_Log Window"), NULL, N_("Log Window"), CB(layout_menu_log_window_cb) }, { "ExifWin", NULL, N_("_Exif window"), "E", N_("Exif window"), CB(layout_menu_bar_exif_cb) }, + { "StereoCycle", NULL, N_("_Cycle through stereo modes"), NULL, N_("Cycle through stereo modes"), CB(layout_menu_stereo_mode_next_cb) }, }; @@ -1401,6 +1441,13 @@ { "HistogramModeLog", NULL, N_("_Log Histogram"), NULL, N_("Log Histogram"), 1 }, }; +static GtkRadioActionEntry menu_stereo_mode_entries[] = { + { "StereoAuto", NULL, N_("_Auto"), NULL, N_("Stereo Auto"), STEREO_PIXBUF_DEFAULT }, + { "StereoSBS", NULL, N_("_Side by Side"), NULL, N_("Stereo Side by Side"), STEREO_PIXBUF_SBS }, + { "StereoCross", NULL, N_("_Cross"), NULL, N_("Stereo Cross"), STEREO_PIXBUF_CROSS }, + { "StereoOff", NULL, N_("_Off"), NULL, N_("Stereo Off"), STEREO_PIXBUF_NONE } +}; + #undef CB @@ -1539,6 +1586,14 @@ " " " " " " +" " +" " +" " +" " +" " +" " +" " +" " " " " " " " @@ -1903,6 +1958,9 @@ gtk_action_group_add_radio_actions(lw->action_group, menu_histogram_mode, G_N_ELEMENTS(menu_histogram_mode), 0, G_CALLBACK(layout_menu_histogram_mode_cb), lw); + gtk_action_group_add_radio_actions(lw->action_group, + menu_stereo_mode_entries, G_N_ELEMENTS(menu_stereo_mode_entries), + 0, G_CALLBACK(layout_menu_stereo_mode_cb), lw); lw->ui_manager = gtk_ui_manager_new(); @@ -2362,6 +2420,9 @@ action = gtk_action_group_get_action(lw->action_group, "ConnectZoomMenu"); gtk_action_set_sensitive(action, lw->split_mode != SPLIT_NONE); + action = gtk_action_group_get_action(lw->action_group, "StereoAuto"); + radio_action_set_current_value(GTK_RADIO_ACTION(action), layout_image_stereo_pixbuf_get(lw)); + layout_util_sync_color(lw); } @@ -2393,7 +2454,11 @@ static gboolean layout_bar_enabled(LayoutWindow *lw) { +#if GTK_CHECK_VERSION(2,20,0) + return lw->bar && gtk_widget_get_visible(lw->bar); +#else return lw->bar && GTK_WIDGET_VISIBLE(lw->bar); +#endif } static void layout_bar_destroyed(GtkWidget *widget, gpointer data) @@ -2486,7 +2551,11 @@ static gboolean layout_bar_sort_enabled(LayoutWindow *lw) { +#if GTK_CHECK_VERSION(2,20,0) + return lw->bar_sort && gtk_widget_get_visible(lw->bar_sort); +#else return lw->bar_sort && GTK_WIDGET_VISIBLE(lw->bar_sort); +#endif } diff -Nru geeqie-1.0/src/layout_util.h geeqie-1.1/src/layout_util.h --- geeqie-1.0/src/layout_util.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/layout_util.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/lirc.c geeqie-1.1/src/lirc.c --- geeqie-1.0/src/lirc.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/lirc.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * */ diff -Nru geeqie-1.0/src/logwindow.c geeqie-1.1/src/logwindow.c --- geeqie-1.0/src/logwindow.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/logwindow.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik, Laurent Monin * based on logwindow.[ch] from Sylpheed 2.4.7 (C) Hiroyuki Yamamoto @@ -268,7 +268,11 @@ log_window_insert_text(buffer, &iter, str, logdefs[type].tag); +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_visible(text)) +#else if (GTK_WIDGET_VISIBLE(text)) +#endif { GtkTextMark *mark; diff -Nru geeqie-1.0/src/logwindow.h geeqie-1.1/src/logwindow.h --- geeqie-1.0/src/logwindow.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/logwindow.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Vladimir Nadvornik, Laurent Monin * based on logwindow.[ch] from Sylpheed 2.4.7 (C) Hiroyuki Yamamoto diff -Nru geeqie-1.0/src/main.c geeqie-1.1/src/main.c --- geeqie-1.0/src/main.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/main.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -125,7 +125,7 @@ { if (!*path) *path = remove_level_from_path(path_parsed); if (!*file) *file = g_strdup(path_parsed); - *list = g_list_prepend(*list, file_data_new_simple(path_parsed)); + *list = g_list_prepend(*list, file_data_new_group(path_parsed)); } } @@ -141,7 +141,7 @@ path_parsed = g_strdup(dir); parse_out_relatives(path_parsed); - dir_fd = file_data_new_simple(path_parsed); + dir_fd = file_data_new_dir(path_parsed); if (filelist_read(dir_fd, &files, NULL)) @@ -740,6 +740,7 @@ g_thread_init(NULL); gdk_threads_init(); gdk_threads_enter(); + #endif /* init execution time counter (debug only) */ @@ -800,6 +801,10 @@ DEBUG_1("%s main: pixbuf_inline_register_stock_icons", get_exec_time()); pixbuf_inline_register_stock_icons(); + DEBUG_1("%s main: setting default options before commandline handling", get_exec_time()); + options = init_options(NULL); + setup_default_options(options); + DEBUG_1("%s main: parse_command_line", get_exec_time()); parse_command_line(argc, argv); @@ -817,8 +822,6 @@ /* restore session from the config file */ - options = init_options(NULL); - setup_default_options(options); DEBUG_1("%s main: load_options", get_exec_time()); if (!load_options(options)) diff -Nru geeqie-1.0/src/main.h geeqie-1.1/src/main.h --- geeqie-1.0/src/main.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/main.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -97,7 +97,7 @@ #define DEFAULT_THUMB_WIDTH 96 #define DEFAULT_THUMB_HEIGHT 72 -#define DEFAULT_MINIMAL_WINDOW_SIZE 32 +#define DEFAULT_MINIMAL_WINDOW_SIZE 100 #define IMAGE_MIN_WIDTH 100 #define SIDEBAR_DEFAULT_WIDTH 250 diff -Nru geeqie-1.0/src/menu.c geeqie-1.1/src/menu.c --- geeqie-1.0/src/menu.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/menu.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/menu.h geeqie-1.1/src/menu.h --- geeqie-1.0/src/menu.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/menu.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/metadata.c geeqie-1.1/src/metadata.c --- geeqie-1.0/src/metadata.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/metadata.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis, Laurent Monin * @@ -62,6 +62,113 @@ static gboolean metadata_file_read(gchar *path, GList **keywords, gchar **comment); +/* + *------------------------------------------------------------------- + * long-term cache - keep keywords from whole dir in memory + *------------------------------------------------------------------- + */ + +/* fd->cached metadata list of lists + each particular list contains key as a first entry, then the values +*/ + +static void metadata_cache_update(FileData *fd, const gchar *key, const GList *values) +{ + GList *work; + + work = fd->cached_metadata; + while (work) + { + GList *entry = work->data; + gchar *entry_key = entry->data; + + if (strcmp(entry_key, key) == 0) + { + /* key found - just replace values */ + GList *old_values = entry->next; + entry->next = NULL; + old_values->prev = NULL; + string_list_free(old_values); + work->data = g_list_append(entry, string_list_copy(values)); + DEBUG_1("updated %s %s\n", key, fd->path); + return; + } + work = work->next; + } + + /* key not found - prepend new entry */ + fd->cached_metadata = g_list_prepend(fd->cached_metadata, + g_list_prepend(string_list_copy(values), g_strdup(key))); + DEBUG_1("added %s %s\n", key, fd->path); + +} + +static const GList *metadata_cache_get(FileData *fd, const gchar *key) +{ + GList *work; + + work = fd->cached_metadata; + while (work) + { + GList *entry = work->data; + gchar *entry_key = entry->data; + + if (strcmp(entry_key, key) == 0) + { + /* key found */ + DEBUG_1("found %s %s\n", key, fd->path); + return entry; + } + work = work->next; + } + return NULL; + DEBUG_1("not found %s %s\n", key, fd->path); +} + +static void metadata_cache_remove(FileData *fd, const gchar *key) +{ + GList *work; + + work = fd->cached_metadata; + while (work) + { + GList *entry = work->data; + gchar *entry_key = entry->data; + + if (strcmp(entry_key, key) == 0) + { + /* key found */ + string_list_free(entry); + fd->cached_metadata = g_list_delete_link(fd->cached_metadata, work); + DEBUG_1("removed %s %s\n", key, fd->path); + return; + } + work = work->next; + } + DEBUG_1("not removed %s %s\n", key, fd->path); +} + +void metadata_cache_free(FileData *fd) +{ + GList *work; + if (fd->cached_metadata) DEBUG_1("freed %s\n", fd->path); + + work = fd->cached_metadata; + while (work) + { + GList *entry = work->data; + string_list_free(entry); + + work = work->next; + } + g_list_free(fd->cached_metadata); + fd->cached_metadata = NULL; +} + + + + + /* *------------------------------------------------------------------- @@ -128,13 +235,18 @@ void metadata_notify_cb(FileData *fd, NotifyType type, gpointer data) { - if ((type & (NOTIFY_REREAD | NOTIFY_CHANGE)) && g_list_find(metadata_write_queue, fd)) + if (type & (NOTIFY_REREAD | NOTIFY_CHANGE)) { - DEBUG_1("Notify metadata: %s %04x", fd->path, type); - if (!isname(fd->path)) + metadata_cache_free(fd); + + if (g_list_find(metadata_write_queue, fd)) { - /* ignore deleted files */ - metadata_write_queue_remove(fd); + DEBUG_1("Notify metadata: %s %04x", fd->path, type); + if (!isname(fd->path)) + { + /* ignore deleted files */ + metadata_write_queue_remove(fd); + } } } } @@ -206,7 +318,7 @@ store the metadata in the cache) FIXME: this does not catch new sidecars created by independent external programs */ - file_data_unref(file_data_new_simple(fd->change->dest)); + file_data_unref(file_data_new_group(fd->change->dest)); if (success) metadata_legacy_delete(fd, fd->change->dest); return success; @@ -255,6 +367,9 @@ fd->modified_xmp = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, (GDestroyNotify)string_list_free); } g_hash_table_insert(fd->modified_xmp, g_strdup(key), string_list_copy((GList *)values)); + + metadata_cache_remove(fd, key); + if (fd->exif) { exif_update_metadata(fd->exif, key, values); @@ -540,6 +655,7 @@ { ExifData *exif; GList *list = NULL; + const GList *cache_entry; if (!fd) return NULL; /* unwritten data overide everything */ @@ -549,6 +665,13 @@ if (list) return string_list_copy(list); } + + if (format == METADATA_PLAIN && strcmp(key, KEYWORD_KEY) == 0 + && (cache_entry = metadata_cache_get(fd, key))) + { + return string_list_copy(cache_entry->next); + } + /* Legacy metadata file is the primary source if it exists. Merging the lists does not make much sense, because the existence of @@ -558,8 +681,15 @@ */ if (strcmp(key, KEYWORD_KEY) == 0) { - if (metadata_legacy_read(fd, &list, NULL)) return list; - } + if (metadata_legacy_read(fd, &list, NULL)) + { + if (format == METADATA_PLAIN) + { + metadata_cache_update(fd, key, list); + } + return list; + } + } else if (strcmp(key, COMMENT_KEY) == 0) { gchar *comment = NULL; @@ -574,6 +704,12 @@ if (!exif) return NULL; list = exif_get_metadata(exif, key, format); exif_free_fd(fd, exif); + + if (format == METADATA_PLAIN && strcmp(key, KEYWORD_KEY) == 0) + { + metadata_cache_update(fd, key, list); + } + return list; } @@ -1244,6 +1380,26 @@ } } +GList *keyword_tree_get(GtkTreeModel *keyword_tree, GtkTreeIter *iter_ptr) +{ + GtkTreeIter iter = *iter_ptr; + GList *kw_list = NULL; + + while (TRUE) + { + GtkTreeIter parent; + + if (keyword_get_is_keyword(keyword_tree, &iter)) + { + gchar *name = keyword_get_name(keyword_tree, &iter); + kw_list = g_list_append(kw_list, name); + } + + if (!gtk_tree_model_iter_parent(keyword_tree, &parent, &iter)) return kw_list; + iter = parent; + } +} // GList *keyword_tree_get(GtkTre... + static void keyword_tree_reset1(GtkTreeModel *keyword_tree, GtkTreeIter *iter, GList **kw_list) { gchar *found; diff -Nru geeqie-1.0/src/metadata.h geeqie-1.1/src/metadata.h --- geeqie-1.0/src/metadata.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/metadata.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis, Laurent Monin * @@ -18,6 +18,8 @@ #define KEYWORD_KEY "Xmp.dc.subject" #define ORIENTATION_KEY "Xmp.tiff.Orientation" +void metadata_cache_free(FileData *fd); + gboolean metadata_write_queue_remove(FileData *fd); gboolean metadata_write_queue_remove_list(GList *list); gboolean metadata_write_perform(FileData *fd); @@ -77,6 +79,7 @@ void keyword_set(GtkTreeStore *keyword_tree, GtkTreeIter *iter, const gchar *name, gboolean is_keyword); gboolean keyword_tree_is_set(GtkTreeModel *keyword_tree, GtkTreeIter *iter, GList *kw_list); void keyword_tree_set(GtkTreeModel *keyword_tree, GtkTreeIter *iter_ptr, GList **kw_list); +GList *keyword_tree_get(GtkTreeModel *keyword_tree, GtkTreeIter *iter_ptr); void keyword_tree_reset(GtkTreeModel *keyword_tree, GtkTreeIter *iter_ptr, GList **kw_list); void keyword_delete(GtkTreeStore *keyword_tree, GtkTreeIter *iter_ptr); diff -Nru geeqie-1.0/src/misc.c geeqie-1.1/src/misc.c --- geeqie-1.0/src/misc.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/misc.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: Vladimir Nadvornik / Laurent Monin * diff -Nru geeqie-1.0/src/misc.h geeqie-1.1/src/misc.h --- geeqie-1.0/src/misc.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/misc.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: Vladimir Nadvornik / Laurent Monin * diff -Nru geeqie-1.0/src/options.c geeqie-1.1/src/options.c --- geeqie-1.0/src/options.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/options.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: Vladimir Nadvornik, Laurent Monin * @@ -124,6 +124,13 @@ options->tree_descend_subdirs = FALSE; options->update_on_time_change = TRUE; + + options->stereo.fixed_w = 1920; + options->stereo.fixed_h = 1080; + options->stereo.fixed_x1 = 0; + options->stereo.fixed_y1 = 0; + options->stereo.fixed_x2 = 0; + options->stereo.fixed_y2 = 1125; return options; } @@ -149,7 +156,7 @@ } set_default_image_overlay_template_string(&options->image_overlay.template_string); - options->sidecar.ext = g_strdup(".jpg;%raw;.ufraw;.xmp"); + options->sidecar.ext = g_strdup(".jpg;%raw;.ufraw;.xmp;%unknown"); options->shell.path = g_strdup(GQ_DEFAULT_SHELL_PATH); options->shell.options = g_strdup(GQ_DEFAULT_SHELL_OPTIONS); diff -Nru geeqie-1.0/src/options.h geeqie-1.1/src/options.h --- geeqie-1.0/src/options.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/options.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: Vladimir Nadvornik, Laurent Monin * @@ -181,7 +181,30 @@ gboolean keywords_case_sensitive; gboolean write_orientation; } metadata; - + + /* Stereo */ + struct { + gint mode;; + gint fsmode; + gboolean enable_fsmode; + gint fixed_w, fixed_h; + gint fixed_x1, fixed_y1; + gint fixed_x2, fixed_y2; + struct { /* options in this struct are packed to mode and fsmode entries */ + gboolean mirror_right; + gboolean mirror_left; + gboolean flip_right; + gboolean flip_left; + gboolean swap; + gboolean temp_disable; + gboolean fs_mirror_right; + gboolean fs_mirror_left; + gboolean fs_flip_right; + gboolean fs_flip_left; + gboolean fs_swap; + gboolean fs_temp_disable; + } tmp; + } stereo; }; ConfOptions *options; diff -Nru geeqie-1.0/src/pan-calendar.c geeqie-1.1/src/pan-calendar.c --- geeqie-1.0/src/pan-calendar.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/pan-calendar.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -333,7 +333,7 @@ */ g_snprintf(fake_path, sizeof(fake_path), "//%04d-%02d-%02d", year, month, day); - fd = file_data_new_simple(fake_path); + fd = file_data_new_no_grouping(fake_path); fd->date = dt; pi_day = pan_item_box_new(pw, fd, x, y, PAN_CAL_DAY_WIDTH, PAN_CAL_DAY_HEIGHT, PAN_CAL_DAY_BORDER, diff -Nru geeqie-1.0/src/pan-folder.c geeqie-1.1/src/pan-folder.c --- geeqie-1.0/src/pan-folder.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/pan-folder.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/pan-grid.c geeqie-1.1/src/pan-grid.c --- geeqie-1.0/src/pan-grid.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/pan-grid.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/pan-item.c geeqie-1.1/src/pan-item.c --- geeqie-1.0/src/pan-item.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/pan-item.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/pan-timeline.c geeqie-1.1/src/pan-timeline.c --- geeqie-1.0/src/pan-timeline.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/pan-timeline.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -91,7 +91,7 @@ g_free(buf); y += pi->height; - pi_month = pan_item_box_new(pw, file_data_new_simple(fd->path), + pi_month = pan_item_box_new(pw, file_data_ref(fd), x, y, 0, 0, PAN_BOX_OUTLINE_THICKNESS, PAN_BOX_COLOR, PAN_BOX_ALPHA, @@ -133,7 +133,7 @@ y += pi->height; - pi_day = pan_item_box_new(pw, file_data_new_simple(fd->path), x, y, 0, 0, + pi_day = pan_item_box_new(pw, file_data_ref(fd), x, y, 0, 0, PAN_BOX_OUTLINE_THICKNESS, PAN_BOX_COLOR, PAN_BOX_ALPHA, PAN_BOX_OUTLINE_COLOR, PAN_BOX_OUTLINE_ALPHA); diff -Nru geeqie-1.0/src/pan-types.h geeqie-1.1/src/pan-types.h --- geeqie-1.0/src/pan-types.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/pan-types.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/pan-util.c geeqie-1.1/src/pan-util.c --- geeqie-1.0/src/pan-util.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/pan-util.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/pan-view.c geeqie-1.1/src/pan-view.c --- geeqie-1.0/src/pan-view.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/pan-view.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -1212,9 +1212,15 @@ pr = PIXBUF_RENDERER(pw->imd->pr); fd = pan_menu_click_fd(pw); +#if GTK_CHECK_VERSION(2,20,0) + focused = (pw->fs || gtk_widget_has_focus(GTK_WIDGET(pw->imd->widget))); + on_entry = (gtk_widget_has_focus(pw->path_entry) || + gtk_widget_has_focus(pw->search_entry)); +#else focused = (pw->fs || GTK_WIDGET_HAS_FOCUS(GTK_WIDGET(pw->imd->widget))); on_entry = (GTK_WIDGET_HAS_FOCUS(pw->path_entry) || GTK_WIDGET_HAS_FOCUS(pw->search_entry)); +#endif if (focused) { @@ -1598,7 +1604,7 @@ PAN_POPUP_BORDER_COLOR, PAN_POPUP_ALPHA); pan_item_set_key(pbox, "info"); - p = pan_item_image_new(pw, file_data_new_simple(pi->fd->path), + p = pan_item_image_new(pw, file_data_new_group(pi->fd->path), pbox->x + PREF_PAD_BORDER, pbox->y + PREF_PAD_BORDER, iw, ih); pan_item_set_key(p, "info"); pan_item_size_by_item(pbox, p, PREF_PAD_BORDER); @@ -1967,7 +1973,11 @@ PanWindow *pw = data; gboolean visible; +#if GTK_CHECK_VERSION(2,20,0) + visible = gtk_widget_get_visible(pw->search_box); +#else visible = GTK_WIDGET_VISIBLE(pw->search_box); +#endif if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(button)) == visible) return; if (visible) @@ -1989,7 +1999,11 @@ if (enable) { +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_visible(pw->search_box)) +#else if (GTK_WIDGET_VISIBLE(pw->search_box)) +#endif { gtk_widget_grab_focus(pw->search_entry); } @@ -2000,9 +2014,17 @@ } else { +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_visible(pw->search_entry)) +#else if (GTK_WIDGET_VISIBLE(pw->search_entry)) +#endif { +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_has_focus(pw->search_entry)) +#else if (GTK_WIDGET_HAS_FOCUS(pw->search_entry)) +#endif { gtk_widget_grab_focus(GTK_WIDGET(pw->imd->widget)); } @@ -2275,7 +2297,7 @@ } else { - FileData *dir_fd = file_data_new_simple(path); + FileData *dir_fd = file_data_new_dir(path); tab_completion_append_to_history(pw->path_entry, path); pan_layout_set_fd(pw, dir_fd); diff -Nru geeqie-1.0/src/pan-view.h geeqie-1.1/src/pan-view.h --- geeqie-1.0/src/pan-view.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/pan-view.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/pixbuf-renderer.c geeqie-1.1/src/pixbuf-renderer.c --- geeqie-1.0/src/pixbuf-renderer.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/pixbuf-renderer.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -17,6 +17,7 @@ #include "main.h" #include "pixbuf-renderer.h" +#include "renderer-tiles.h" #include "intl.h" #include "layout.h" @@ -49,12 +50,6 @@ #endif -/* size to use when breaking up image pane for rendering */ -#define PR_TILE_SIZE 128 - -/* default size of tile cache (mb) */ -#define PR_CACHE_SIZE_DEFAULT 8 - /* default min and max zoom */ #define PR_ZOOM_MIN -32.0 #define PR_ZOOM_MAX 32.0 @@ -69,89 +64,11 @@ #define PR_SCROLLER_UPDATES_PER_SEC 30 #define PR_SCROLLER_DEAD_ZONE 6 -/* alpha channel checkerboard background (same as gimp) */ -#define PR_ALPHA_CHECK1 0x00999999 -#define PR_ALPHA_CHECK2 0x00666666 -#define PR_ALPHA_CHECK_SIZE 16 - /* when scaling image to below this size, use nearest pixel for scaling * (below about 4, the other scale types become slow generating their conversion tables) */ #define PR_MIN_SCALE_SIZE 8 -/* round A up/down to integer count of B */ -#define ROUND_UP(A,B) ((gint)(((A)+(B)-1)/(B))*(B)) -#define ROUND_DOWN(A,B) ((gint)(((A))/(B))*(B)) - -typedef enum { - TILE_RENDER_NONE = 0, /* do nothing */ - TILE_RENDER_AREA, /* render an area of the tile */ - TILE_RENDER_ALL /* render the whole tile */ -} ImageTileRenderType; - -typedef struct _ImageTile ImageTile; -typedef struct _QueueData QueueData; - -struct _ImageTile -{ - GdkPixmap *pixmap; /* off screen buffer */ - GdkPixbuf *pixbuf; /* pixbuf area for zooming */ - gint x; /* x offset into image */ - gint y; /* y offset into image */ - gint w; /* width that is visible (may be less if at edge of image) */ - gint h; /* height '' */ - - gboolean blank; - -/* render_todo: (explanation) - NONE do nothing - AREA render area of tile, usually only used when loading an image - note: will jump to an ALL if render_done is not ALL. - ALL render entire tile, if never done before w/ ALL, for expose events *only* -*/ - - ImageTileRenderType render_todo; /* what to do (see above) */ - ImageTileRenderType render_done; /* highest that has been done before on tile */ - - QueueData *qd; - QueueData *qd2; - - guint size; /* est. memory used by pixmap and pixbuf */ -}; - -struct _QueueData -{ - ImageTile *it; - gint x; - gint y; - gint w; - gint h; - gboolean new_data; -}; - -typedef struct _SourceTile SourceTile; -struct _SourceTile -{ - gint x; - gint y; - GdkPixbuf *pixbuf; - gboolean blank; -}; - -typedef struct _OverlayData OverlayData; -struct _OverlayData -{ - gint id; - - GdkPixbuf *pixbuf; - GdkWindow *window; - - gint x; - gint y; - - OverlayRendererFlags flags; -}; - enum { SIGNAL_ZOOM = 0, SIGNAL_CLICKED, @@ -206,32 +123,18 @@ GValue *value, GParamSpec *pspec); static gboolean pixbuf_renderer_expose(GtkWidget *widget, GdkEventExpose *event); -static void pr_render_complete_signal(PixbufRenderer *pr); - -static void pr_overlay_list_clear(PixbufRenderer *pr); static void pr_scroller_timer_set(PixbufRenderer *pr, gboolean start); -static void pr_border_draw(PixbufRenderer *pr, gint x, gint y, gint w, gint h); static void pr_source_tile_free_all(PixbufRenderer *pr); -static void pr_tile_free_all(PixbufRenderer *pr); -static void pr_tile_invalidate_region(PixbufRenderer *pr, gint x, gint y, gint w, gint h); -static gboolean pr_tile_is_visible(PixbufRenderer *pr, ImageTile *it); -static void pr_queue_clear(PixbufRenderer *pr); -static void pr_queue_merge(QueueData *parent, QueueData *qd); -static void pr_queue(PixbufRenderer *pr, gint x, gint y, gint w, gint h, - gint clamp, ImageTileRenderType render, gboolean new_data, gboolean only_existing); - -static void pr_redraw(PixbufRenderer *pr, gboolean new_data); static void pr_zoom_sync(PixbufRenderer *pr, gdouble zoom, PrZoomFlags flags, gint px, gint py); static void pr_signals_connect(PixbufRenderer *pr); static void pr_size_cb(GtkWidget *widget, GtkAllocation *allocation, gpointer data); -static void pr_hierarchy_changed_cb(GtkWidget *widget, GtkWidget *previous_toplevel, gpointer data); static void pixbuf_renderer_paint(PixbufRenderer *pr, GdkRectangle *area); -static gint pr_queue_draw_idle_cb(gpointer data); +static void pr_stereo_temp_disable(PixbufRenderer *pr, gboolean disable); /* @@ -507,21 +410,12 @@ pr->zoom = 1.0; pr->scale = 1.0; + pr->aspect_ratio = 1.0; pr->dither_quality = GDK_RGB_DITHER_NORMAL; pr->scroll_reset = PR_SCROLL_RESET_TOPLEFT; - pr->draw_idle_id = 0; - - pr->tile_width = PR_TILE_SIZE; - pr->tile_height = PR_TILE_SIZE; - - pr->tiles = NULL; - pr->tile_cache_size = 0; - - pr->tile_cache_max = PR_CACHE_SIZE_DEFAULT; - pr->scroller_id = 0; pr->scroller_overlay = -1; @@ -535,14 +429,17 @@ pr->norm_center_x = 0.5; pr->norm_center_y = 0.5; + + pr->stereo_mode = PR_STEREO_NONE; + + pr->renderer = (void *)renderer_tiles_new(pr); + + pr->renderer2 = NULL; gtk_widget_set_double_buffered(box, FALSE); g_signal_connect_after(G_OBJECT(box), "size_allocate", G_CALLBACK(pr_size_cb), pr); - g_signal_connect(G_OBJECT(pr), "hierarchy-changed", - G_CALLBACK(pr_hierarchy_changed_cb), pr); - pr_signals_connect(pr); } @@ -552,15 +449,13 @@ pr = PIXBUF_RENDERER(object); - pr_queue_clear(pr); - pr_tile_free_all(pr); + pr->renderer->free(pr->renderer); + if (pr->renderer2) pr->renderer2->free(pr->renderer2); if (pr->pixbuf) g_object_unref(pr->pixbuf); - if (pr->spare_tile) g_object_unref(pr->spare_tile); pr_scroller_timer_set(pr, FALSE); - pr_overlay_list_clear(pr); pr_source_tile_free_all(pr); } @@ -610,7 +505,7 @@ pr->complete = g_value_get_boolean(value); break; case PROP_CACHE_SIZE_DISPLAY: - pr->tile_cache_max = g_value_get_uint(value); +// pr->tile_cache_max = g_value_get_uint(value); break; case PROP_CACHE_SIZE_TILES: pr->source_tiles_cache_size = g_value_get_uint(value); @@ -676,7 +571,7 @@ g_value_set_boolean(value, pr->complete); break; case PROP_CACHE_SIZE_DISPLAY: - g_value_set_uint(value, pr->tile_cache_max); +// g_value_set_uint(value, pr->tile_cache_max); break; case PROP_CACHE_SIZE_TILES: g_value_set_uint(value, pr->source_tiles_cache_size); @@ -704,9 +599,17 @@ static gboolean pixbuf_renderer_expose(GtkWidget *widget, GdkEventExpose *event) { +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_is_drawable(widget)) +#else if (GTK_WIDGET_DRAWABLE(widget)) +#endif { +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_has_window(widget)) +#else if (!GTK_WIDGET_NO_WINDOW(widget)) +#endif { if (event->window != widget->window) { @@ -756,16 +659,7 @@ if (cursor) gdk_cursor_unref(cursor); } -static gint pixmap_calc_size(GdkPixmap *pixmap) -{ - gint w, h, d; - - d = gdk_drawable_get_depth(pixmap); - gdk_drawable_get_size(pixmap, &w, &h); - return w * h * (d / 8); -} - -static gboolean pr_clip_region(gint x, gint y, gint w, gint h, +gboolean pr_clip_region(gint x, gint y, gint w, gint h, gint clip_x, gint clip_y, gint clip_w, gint clip_h, gint *rx, gint *ry, gint *rw, gint *rh) { @@ -854,326 +748,33 @@ *------------------------------------------------------------------- */ -static void pr_overlay_get_position(PixbufRenderer *pr, OverlayData *od, - gint *x, gint *y, gint *w, gint *h) -{ - gint px, py, pw, ph; - - pw = gdk_pixbuf_get_width(od->pixbuf); - ph = gdk_pixbuf_get_height(od->pixbuf); - px = od->x; - py = od->y; - - if (od->flags & OVL_RELATIVE) - { - if (px < 0) px = pr->window_width - pw + px; - if (py < 0) py = pr->window_height - ph + py; - } - - if (x) *x = px; - if (y) *y = py; - if (w) *w = pw; - if (h) *h = ph; -} - -static void pr_overlay_init_window(PixbufRenderer *pr, OverlayData *od) -{ - gint px, py, pw, ph; - GdkWindowAttr attributes; - gint attributes_mask; - - pr_overlay_get_position(pr, od, &px, &py, &pw, &ph); - - attributes.window_type = GDK_WINDOW_CHILD; - attributes.wclass = GDK_INPUT_OUTPUT; - attributes.width = pw; - attributes.height = ph; - attributes.event_mask = GDK_EXPOSURE_MASK; - attributes_mask = 0; - - od->window = gdk_window_new(GTK_WIDGET(pr)->window, &attributes, attributes_mask); - gdk_window_set_user_data(od->window, pr); - gdk_window_move(od->window, px, py); - gdk_window_show(od->window); -} - -static void pr_overlay_draw(PixbufRenderer *pr, gint x, gint y, gint w, gint h, - ImageTile *it) -{ - GtkWidget *box; - GList *work; - - box = GTK_WIDGET(pr); - - work = pr->overlay_list; - while (work) - { - OverlayData *od; - gint px, py, pw, ph; - gint rx, ry, rw, rh; - - od = work->data; - work = work->next; - - if (!od->window) pr_overlay_init_window(pr, od); - - pr_overlay_get_position(pr, od, &px, &py, &pw, &ph); - if (pr_clip_region(x, y, w, h, px, py, pw, ph, &rx, &ry, &rw, &rh)) - { - if (!pr->overlay_buffer) - { - pr->overlay_buffer = gdk_pixmap_new(((GtkWidget *)pr)->window, pr->tile_width, pr->tile_height, -1); - } - - if (it) - { - gdk_draw_drawable(pr->overlay_buffer, box->style->fg_gc[GTK_WIDGET_STATE(box)], - it->pixmap, - rx - (pr->x_offset + (it->x - pr->x_scroll)), - ry - (pr->y_offset + (it->y - pr->y_scroll)), - 0, 0, rw, rh); - gdk_draw_pixbuf(pr->overlay_buffer, - box->style->fg_gc[GTK_WIDGET_STATE(box)], - od->pixbuf, - rx - px, ry - py, - 0, 0, rw, rh, - pr->dither_quality, rx, ry); - gdk_draw_drawable(od->window, box->style->fg_gc[GTK_WIDGET_STATE(box)], - pr->overlay_buffer, - 0, 0, - rx - px, ry - py, rw, rh); - } - else - { - /* no ImageTile means region may be larger than our scratch buffer */ - gint sx, sy; - - for (sx = rx; sx < rx + rw; sx += pr->tile_width) - for (sy = ry; sy < ry + rh; sy += pr->tile_height) - { - gint sw, sh; - - sw = MIN(rx + rw - sx, pr->tile_width); - sh = MIN(ry + rh - sy, pr->tile_height); - - gdk_draw_rectangle(pr->overlay_buffer, - box->style->bg_gc[GTK_WIDGET_STATE(box)], TRUE, - 0, 0, sw, sh); - gdk_draw_pixbuf(pr->overlay_buffer, - box->style->fg_gc[GTK_WIDGET_STATE(box)], - od->pixbuf, - sx - px, sy - py, - 0, 0, sw, sh, - pr->dither_quality, sx, sy); - gdk_draw_drawable(od->window, box->style->fg_gc[GTK_WIDGET_STATE(box)], - pr->overlay_buffer, - 0, 0, - sx - px, sy - py, sw, sh); - } - } - } - } -} - -static void pr_overlay_queue_draw(PixbufRenderer *pr, OverlayData *od) -{ - gint x, y, w, h; - - pr_overlay_get_position(pr, od, &x, &y, &w, &h); - pr_queue(pr, pr->x_scroll - pr->x_offset + x, - pr->y_scroll - pr->y_offset + y, - w, h, - FALSE, TILE_RENDER_ALL, FALSE, FALSE); - - pr_border_draw(pr, x, y, w, h); -} - -static void pr_overlay_queue_all(PixbufRenderer *pr) -{ - GList *work; - - work = pr->overlay_list; - while (work) - { - OverlayData *od = work->data; - work = work->next; - - pr_overlay_queue_draw(pr, od); - } -} - -static void pr_overlay_update_sizes(PixbufRenderer *pr) -{ - GList *work; - - work = pr->overlay_list; - while (work) - { - OverlayData *od = work->data; - work = work->next; - - if (!od->window) pr_overlay_init_window(pr, od); - - if (od->flags & OVL_RELATIVE) - { - gint x, y, w, h; - - pr_overlay_get_position(pr, od, &x, &y, &w, &h); - gdk_window_move_resize(od->window, x, y, w, h); - } - } -} - -static OverlayData *pr_overlay_find(PixbufRenderer *pr, gint id) -{ - GList *work; - - work = pr->overlay_list; - while (work) - { - OverlayData *od = work->data; - work = work->next; - - if (od->id == id) return od; - } - - return NULL; -} - gint pixbuf_renderer_overlay_add(PixbufRenderer *pr, GdkPixbuf *pixbuf, gint x, gint y, OverlayRendererFlags flags) { - OverlayData *od; - gint id; - - g_return_val_if_fail(IS_PIXBUF_RENDERER(pr), -1); - g_return_val_if_fail(pixbuf != NULL, -1); - - id = 1; - while (pr_overlay_find(pr, id)) id++; - - od = g_new0(OverlayData, 1); - od->id = id; - od->pixbuf = pixbuf; - g_object_ref(G_OBJECT(od->pixbuf)); - od->x = x; - od->y = y; - od->flags = flags; - - pr_overlay_init_window(pr, od); - - pr->overlay_list = g_list_append(pr->overlay_list, od); - - pr_overlay_queue_draw(pr, od); - - return od->id; -} - -static void pr_overlay_free(PixbufRenderer *pr, OverlayData *od) -{ - pr->overlay_list = g_list_remove(pr->overlay_list, od); - - if (od->pixbuf) g_object_unref(G_OBJECT(od->pixbuf)); - if (od->window) gdk_window_destroy(od->window); - g_free(od); - - if (!pr->overlay_list && pr->overlay_buffer) - { - g_object_unref(pr->overlay_buffer); - pr->overlay_buffer = NULL; - } -} - -static void pr_overlay_list_clear(PixbufRenderer *pr) -{ - while (pr->overlay_list) - { - OverlayData *od; - - od = pr->overlay_list->data; - pr_overlay_free(pr, od); - } -} - -static void pr_overlay_list_reset_window(PixbufRenderer *pr) -{ - GList *work; - - if (pr->overlay_buffer) g_object_unref(pr->overlay_buffer); - pr->overlay_buffer = NULL; - - work = pr->overlay_list; - while (work) - { - OverlayData *od = work->data; - work = work->next; - if (od->window) gdk_window_destroy(od->window); - od->window = NULL; - } + /* let's assume both renderers returns the same value */ + if (pr->renderer2) pr->renderer2->overlay_add(pr->renderer2, pixbuf, x, y, flags); + return pr->renderer->overlay_add(pr->renderer, pixbuf, x, y, flags); } void pixbuf_renderer_overlay_set(PixbufRenderer *pr, gint id, GdkPixbuf *pixbuf, gint x, gint y) { - OverlayData *od; - - g_return_if_fail(IS_PIXBUF_RENDERER(pr)); - - od = pr_overlay_find(pr, id); - if (!od) return; - - if (pixbuf) - { - gint px, py, pw, ph; - - g_object_ref(G_OBJECT(pixbuf)); - g_object_unref(G_OBJECT(od->pixbuf)); - od->pixbuf = pixbuf; - - od->x = x; - od->y = y; - - if (!od->window) pr_overlay_init_window(pr, od); - - pr_overlay_queue_draw(pr, od); - pr_overlay_get_position(pr, od, &px, &py, &pw, &ph); - gdk_window_move_resize(od->window, px, py, pw, ph); - } - else - { - pr_overlay_queue_draw(pr, od); - pr_overlay_free(pr, od); - } + pr->renderer->overlay_set(pr->renderer, id, pixbuf, x, y); + if (pr->renderer2) pr->renderer2->overlay_set(pr->renderer2, id, pixbuf, x, y); } gboolean pixbuf_renderer_overlay_get(PixbufRenderer *pr, gint id, GdkPixbuf **pixbuf, gint *x, gint *y) { - OverlayData *od; - - g_return_val_if_fail(IS_PIXBUF_RENDERER(pr), FALSE); - - od = pr_overlay_find(pr, id); - if (!od) return FALSE; - - if (pixbuf) *pixbuf = od->pixbuf; - if (x) *x = od->x; - if (y) *y = od->y; - - return TRUE; + if (pr->renderer2) pr->renderer2->overlay_get(pr->renderer2, id, pixbuf, x, y); + return pr->renderer->overlay_get(pr->renderer, id, pixbuf, x, y); } void pixbuf_renderer_overlay_remove(PixbufRenderer *pr, gint id) { - pixbuf_renderer_overlay_set(pr, id, NULL, 0, 0); -} - -static void pr_hierarchy_changed_cb(GtkWidget *widget, GtkWidget *previous_toplevel, gpointer data) -{ - PixbufRenderer *pr = data; - pr_overlay_list_reset_window(pr); + pr->renderer->overlay_set(pr->renderer, id, NULL, 0, 0); + if (pr->renderer2) pr->renderer2->overlay_set(pr->renderer2, id, NULL, 0, 0); } - /* *------------------------------------------------------------------- * scroller overlay @@ -1327,75 +928,10 @@ *------------------------------------------------------------------- */ -static void pr_border_draw(PixbufRenderer *pr, gint x, gint y, gint w, gint h) -{ - GtkWidget *box; - gint rx, ry, rw, rh; - - box = GTK_WIDGET(pr); - - if (!box->window) return; - - if (!pr->pixbuf && !pr->source_tiles_enabled) - { - if (pr_clip_region(x, y, w, h, - 0, 0, - pr->window_width, pr->window_height, - &rx, &ry, &rw, &rh)) - { - gdk_window_clear_area(box->window, rx, ry, rw, rh); - pr_overlay_draw(pr, rx, ry, rw, rh, NULL); - } - return; - } - - if (pr->vis_width < pr->window_width) - { - if (pr->x_offset > 0 && - pr_clip_region(x, y, w, h, - 0, 0, - pr->x_offset, pr->window_height, - &rx, &ry, &rw, &rh)) - { - gdk_window_clear_area(box->window, rx, ry, rw, rh); - pr_overlay_draw(pr, rx, ry, rw, rh, NULL); - } - if (pr->window_width - pr->vis_width - pr->x_offset > 0 && - pr_clip_region(x, y, w, h, - pr->x_offset + pr->vis_width, 0, - pr->window_width - pr->vis_width - pr->x_offset, pr->window_height, - &rx, &ry, &rw, &rh)) - { - gdk_window_clear_area(box->window, rx, ry, rw, rh); - pr_overlay_draw(pr, rx, ry, rw, rh, NULL); - } - } - if (pr->vis_height < pr->window_height) - { - if (pr->y_offset > 0 && - pr_clip_region(x, y, w, h, - pr->x_offset, 0, - pr->vis_width, pr->y_offset, - &rx, &ry, &rw, &rh)) - { - gdk_window_clear_area(box->window, rx, ry, rw, rh); - pr_overlay_draw(pr, rx, ry, rw, rh, NULL); - } - if (pr->window_height - pr->vis_height - pr->y_offset > 0 && - pr_clip_region(x, y, w, h, - pr->x_offset, pr->y_offset + pr->vis_height, - pr->vis_width, pr->window_height - pr->vis_height - pr->y_offset, - &rx, &ry, &rw, &rh)) - { - gdk_window_clear_area(box->window, rx, ry, rw, rh); - pr_overlay_draw(pr, rx, ry, rw, rh, NULL); - } - } -} - static void pr_border_clear(PixbufRenderer *pr) { - pr_border_draw(pr, 0, 0, pr->window_width, pr->window_height); + pr->renderer->border_clear(pr->renderer); + if (pr->renderer2) pr->renderer2->border_clear(pr->renderer2); } void pixbuf_renderer_set_color(PixbufRenderer *pr, GdkColor *color) @@ -1423,9 +959,22 @@ gtk_widget_set_style(widget, style); +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_visible(widget)) pr_border_clear(pr); +#else if (GTK_WIDGET_VISIBLE(widget)) pr_border_clear(pr); +#endif } +static void pr_redraw(PixbufRenderer *pr, gboolean new_data) +{ + pr->renderer->queue_clear(pr->renderer); + pr->renderer->redraw(pr->renderer, 0, 0, pr->width, pr->height, TRUE, TILE_RENDER_ALL, new_data, FALSE); + if (pr->renderer2) { + pr->renderer2->queue_clear(pr->renderer2); + pr->renderer2->redraw(pr->renderer2, 0, 0, pr->width, pr->height, TRUE, TILE_RENDER_ALL, new_data, FALSE); + } +} /* *------------------------------------------------------------------- @@ -1472,10 +1021,14 @@ if (!st) return FALSE; - x1 = ROUND_DOWN(pr->x_scroll, pr->tile_width); - y1 = ROUND_DOWN(pr->y_scroll, pr->tile_height); - x2 = ROUND_UP(pr->x_scroll + pr->vis_width, pr->tile_width); - y2 = ROUND_UP(pr->y_scroll + pr->vis_height, pr->tile_height); +// x1 = ROUND_DOWN(pr->x_scroll, pr->tile_width); +// y1 = ROUND_DOWN(pr->y_scroll, pr->tile_height); +// x2 = ROUND_UP(pr->x_scroll + pr->vis_width, pr->tile_width); +// y2 = ROUND_UP(pr->y_scroll + pr->vis_height, pr->tile_height); + x1 = pr->x_scroll; + y1 = pr->y_scroll; + x2 = pr->x_scroll + pr->vis_width; + y2 = pr->y_scroll + pr->vis_height; return !((gdouble)st->x * pr->scale > (gdouble)x2 || (gdouble)(st->x + pr->source_tile_width) * pr->scale < (gdouble)x1 || @@ -1560,9 +1113,10 @@ st->blank = FALSE; } - pr_tile_invalidate_region(pr, st->x * pr->scale, st->y * pr->scale, + pr->renderer->invalidate_region(pr->renderer, st->x * pr->scale, st->y * pr->scale, + pr->source_tile_width * pr->scale, pr->source_tile_height * pr->scale); + if (pr->renderer2) pr->renderer2->invalidate_region(pr->renderer2, st->x * pr->scale, st->y * pr->scale, pr->source_tile_width * pr->scale, pr->source_tile_height * pr->scale); - return st; } @@ -1592,7 +1146,7 @@ return NULL; } -static GList *pr_source_tile_compute_region(PixbufRenderer *pr, gint x, gint y, gint w, gint h, gboolean request) +GList *pr_source_tile_compute_region(PixbufRenderer *pr, gint x, gint y, gint w, gint h, gboolean request) { gint x1, y1; GList *list = NULL; @@ -1647,156 +1201,42 @@ if (pr->func_tile_request && pr->func_tile_request(pr, rx, ry, rw, rh, pixbuf, pr->func_tile_data)) { - pr_tile_invalidate_region(pr, rx * pr->scale, ry * pr->scale, + pr->renderer->invalidate_region(pr->renderer, rx * pr->scale, ry * pr->scale, rw * pr->scale, rh * pr->scale); + if (pr->renderer2) pr->renderer2->invalidate_region(pr->renderer2, rx * pr->scale, ry * pr->scale, + rw * pr->scale, rh * pr->scale); } g_object_unref(pixbuf); } } } -static gboolean pr_source_tile_render(PixbufRenderer *pr, ImageTile *it, - gint x, gint y, gint w, gint h, - gboolean new_data, gboolean fast) +void pixbuf_renderer_set_tiles(PixbufRenderer *pr, gint width, gint height, + gint tile_width, gint tile_height, gint cache_size, + PixbufRendererTileRequestFunc func_request, + PixbufRendererTileDisposeFunc func_dispose, + gpointer user_data, + gdouble zoom) { - GtkWidget *box; - GList *list; - GList *work; - gboolean draw = FALSE; + g_return_if_fail(IS_PIXBUF_RENDERER(pr)); + g_return_if_fail(tile_width >= 32 && tile_width >= 32); + g_return_if_fail(width >= 32 && height > 32); + g_return_if_fail(func_request != NULL); - box = GTK_WIDGET(pr); + if (pr->pixbuf) g_object_unref(pr->pixbuf); + pr->pixbuf = NULL; - if (pr->zoom == 1.0 || pr->scale == 1.0) - { - list = pr_source_tile_compute_region(pr, it->x + x, it->y + y, w, h, TRUE); - work = list; - while (work) - { - SourceTile *st; - gint rx, ry, rw, rh; + pr_source_tile_unset(pr); - st = work->data; - work = work->next; + if (cache_size < 4) cache_size = 4; - if (pr_clip_region(st->x, st->y, pr->source_tile_width, pr->source_tile_height, - it->x + x, it->y + y, w, h, - &rx, &ry, &rw, &rh)) - { - if (st->blank) - { - gdk_draw_rectangle(it->pixmap, box->style->black_gc, TRUE, - rx - st->x, ry - st->y, rw, rh); - } - else /* (pr->zoom == 1.0 || pr->scale == 1.0) */ - { - gdk_draw_pixbuf(it->pixmap, - box->style->fg_gc[GTK_WIDGET_STATE(box)], - st->pixbuf, - rx - st->x, ry - st->y, - rx - it->x, ry - it->y, - rw, rh, - pr->dither_quality, rx, ry); - } - } - } - } - else - { - gdouble scale_x, scale_y; - gint sx, sy, sw, sh; + pr->source_tiles_enabled = TRUE; + pr->source_tiles_cache_size = cache_size; + pr->source_tile_width = tile_width; + pr->source_tile_height = tile_height; - if (pr->image_width == 0 || pr->image_height == 0) return FALSE; - scale_x = (gdouble)pr->width / pr->image_width; - scale_y = (gdouble)pr->height / pr->image_height; - - sx = (gdouble)(it->x + x) / scale_x; - sy = (gdouble)(it->y + y) / scale_y; - sw = (gdouble)w / scale_x; - sh = (gdouble)h / scale_y; - - if (pr->width < PR_MIN_SCALE_SIZE || pr->height < PR_MIN_SCALE_SIZE) fast = TRUE; - -#if 0 - /* draws red over draw region, to check for leaks (regions not filled) */ - pixbuf_set_rect_fill(it->pixbuf, x, y, w, h, 255, 0, 0, 255); -#endif - - list = pr_source_tile_compute_region(pr, sx, sy, sw, sh, TRUE); - work = list; - while (work) - { - SourceTile *st; - gint rx, ry, rw, rh; - gint stx, sty, stw, sth; - - st = work->data; - work = work->next; - - stx = floor((gdouble)st->x * scale_x); - sty = floor((gdouble)st->y * scale_y); - stw = ceil((gdouble)(st->x + pr->source_tile_width) * scale_x) - stx; - sth = ceil((gdouble)(st->y + pr->source_tile_height) * scale_y) - sty; - - if (pr_clip_region(stx, sty, stw, sth, - it->x + x, it->y + y, w, h, - &rx, &ry, &rw, &rh)) - { - if (st->blank) - { - gdk_draw_rectangle(it->pixmap, box->style->black_gc, TRUE, - rx - st->x, ry - st->y, rw, rh); - } - else - { - gdouble offset_x; - gdouble offset_y; - - /* may need to use unfloored stx,sty values here */ - offset_x = (gdouble)(stx - it->x); - offset_y = (gdouble)(sty - it->y); - - gdk_pixbuf_scale(st->pixbuf, it->pixbuf, rx - it->x, ry - it->y, rw, rh, - (gdouble) 0.0 + offset_x, - (gdouble) 0.0 + offset_y, - scale_x, scale_y, - (fast) ? GDK_INTERP_NEAREST : pr->zoom_quality); - draw = TRUE; - } - } - } - } - - g_list_free(list); - - return draw; -} - -void pixbuf_renderer_set_tiles(PixbufRenderer *pr, gint width, gint height, - gint tile_width, gint tile_height, gint cache_size, - PixbufRendererTileRequestFunc func_request, - PixbufRendererTileDisposeFunc func_dispose, - gpointer user_data, - gdouble zoom) -{ - g_return_if_fail(IS_PIXBUF_RENDERER(pr)); - g_return_if_fail(tile_width >= 32 && tile_width >= 32); - g_return_if_fail(width >= 32 && height > 32); - g_return_if_fail(func_request != NULL); - - if (pr->pixbuf) g_object_unref(pr->pixbuf); - pr->pixbuf = NULL; - - pr_source_tile_unset(pr); - - if (cache_size < 4) cache_size = 4; - - pr->source_tiles_enabled = TRUE; - pr->source_tiles_cache_size = cache_size; - pr->source_tile_width = tile_width; - pr->source_tile_height = tile_height; - - pr->image_width = width; - pr->image_height = height; + pr->image_width = width; + pr->image_height = height; pr->func_tile_request = func_request; pr->func_tile_dispose = func_dispose; @@ -1872,259 +1312,69 @@ pr_zoom_sync(pr, zoom, flags, x, y); } + /* *------------------------------------------------------------------- - * display tiles + * signal emission *------------------------------------------------------------------- */ -static ImageTile *pr_tile_new(gint x, gint y, gint width, gint height) -{ - ImageTile *it; - - it = g_new0(ImageTile, 1); - - it->x = x; - it->y = y; - it->w = width; - it->h = height; - - it->render_done = TILE_RENDER_NONE; - - return it; -} - -static void pr_tile_free(ImageTile *it) -{ - if (!it) return; - - if (it->pixbuf) g_object_unref(it->pixbuf); - if (it->pixmap) g_object_unref(it->pixmap); - - g_free(it); -} - -static void pr_tile_free_all(PixbufRenderer *pr) +static void pr_update_signal(PixbufRenderer *pr) { - GList *work; - - work = pr->tiles; - while (work) - { - ImageTile *it; - - it = work->data; - work = work->next; - - pr_tile_free(it); - } - - g_list_free(pr->tiles); - pr->tiles = NULL; - pr->tile_cache_size = 0; +#if 0 + log_printf("FIXME: send updated signal\n"); +#endif + DEBUG_1("%s pixbuf renderer updated - started drawing %p, img: %dx%d", get_exec_time(), pr, pr->image_width, pr->image_height); + pr->debug_updated = TRUE; } -static ImageTile *pr_tile_add(PixbufRenderer *pr, gint x, gint y) +static void pr_zoom_signal(PixbufRenderer *pr) { - ImageTile *it; - - it = pr_tile_new(x, y, pr->tile_width, pr->tile_height); - - if (it->x + it->w > pr->width) it->w = pr->width - it->x; - if (it->y + it->h > pr->height) it->h = pr->height - it->y; - - pr->tiles = g_list_prepend(pr->tiles, it); - pr->tile_cache_size += it->size; - - return it; + g_signal_emit(pr, signals[SIGNAL_ZOOM], 0, pr->zoom); } -static void pr_tile_remove(PixbufRenderer *pr, ImageTile *it) +static void pr_clicked_signal(PixbufRenderer *pr, GdkEventButton *bevent) { - if (it->qd) - { - QueueData *qd = it->qd; - - it->qd = NULL; - pr->draw_queue = g_list_remove(pr->draw_queue, qd); - g_free(qd); - } - - if (it->qd2) - { - QueueData *qd = it->qd2; - - it->qd2 = NULL; - pr->draw_queue_2pass = g_list_remove(pr->draw_queue_2pass, qd); - g_free(qd); - } - - pr->tiles = g_list_remove(pr->tiles, it); - pr->tile_cache_size -= it->size; - - pr_tile_free(it); + g_signal_emit(pr, signals[SIGNAL_CLICKED], 0, bevent); } -static void pr_tile_free_space(PixbufRenderer *pr, guint space, ImageTile *it) +static void pr_scroll_notify_signal(PixbufRenderer *pr) { - GList *work; - guint tile_max; - - work = g_list_last(pr->tiles); - - if (pr->source_tiles_enabled && pr->scale < 1.0) - { - gint tiles; - - tiles = (pr->vis_width / pr->tile_width + 1) * (pr->vis_height / pr->tile_height + 1); - tile_max = MAX(tiles * pr->tile_width * pr->tile_height * 3, - (gint)((gdouble)pr->tile_cache_max * 1048576.0 * pr->scale)); - } - else - { - tile_max = pr->tile_cache_max * 1048576; - } - - while (work && pr->tile_cache_size + space > tile_max) - { - ImageTile *needle; - - needle = work->data; - work = work->prev; - if (needle != it && - ((!needle->qd && !needle->qd2) || !pr_tile_is_visible(pr, needle))) pr_tile_remove(pr, needle); - } + g_signal_emit(pr, signals[SIGNAL_SCROLL_NOTIFY], 0); } -static void pr_tile_invalidate_all(PixbufRenderer *pr) +void pr_render_complete_signal(PixbufRenderer *pr) { - GList *work; - - work = pr->tiles; - while (work) + if (!pr->complete) { - ImageTile *it; - - it = work->data; - work = work->next; - - it->render_done = TILE_RENDER_NONE; - it->render_todo = TILE_RENDER_ALL; - it->blank = FALSE; - - it->w = MIN(pr->tile_width, pr->width - it->x); - it->h = MIN(pr->tile_height, pr->height - it->y); + g_signal_emit(pr, signals[SIGNAL_RENDER_COMPLETE], 0); + g_object_set(G_OBJECT(pr), "complete", TRUE, NULL); } -} - -static void pr_tile_invalidate_region(PixbufRenderer *pr, gint x, gint y, gint w, gint h) -{ - gint x1, x2; - gint y1, y2; - GList *work; - - x1 = ROUND_DOWN(x, pr->tile_width); - x2 = ROUND_UP(x + w, pr->tile_width); - - y1 = ROUND_DOWN(y, pr->tile_height); - y2 = ROUND_UP(y + h, pr->tile_height); - - work = pr->tiles; - while (work) + if (pr->debug_updated) { - ImageTile *it; - - it = work->data; - work = work->next; - - if (it->x < x2 && it->x + it->w > x1 && - it->y < y2 && it->y + it->h > y1) - { - it->render_done = TILE_RENDER_NONE; - it->render_todo = TILE_RENDER_ALL; - } + DEBUG_1("%s pixbuf renderer done %p", get_exec_time(), pr); + pr->debug_updated = FALSE; } } -static ImageTile *pr_tile_get(PixbufRenderer *pr, gint x, gint y, gboolean only_existing) +static void pr_drag_signal(PixbufRenderer *pr, GdkEventButton *bevent) { - GList *work; - - work = pr->tiles; - while (work) - { - ImageTile *it; - - it = work->data; - if (it->x == x && it->y == y) - { - pr->tiles = g_list_delete_link(pr->tiles, work); - pr->tiles = g_list_prepend(pr->tiles, it); - return it; - } - - work = work->next; - } - - if (only_existing) return NULL; - - return pr_tile_add(pr, x, y); + g_signal_emit(pr, signals[SIGNAL_DRAG], 0, bevent); } -static void pr_tile_prepare(PixbufRenderer *pr, ImageTile *it) +static void pr_update_pixel_signal(PixbufRenderer *pr) { - if (!it->pixmap) - { - GdkPixmap *pixmap; - guint size; - - pixmap = gdk_pixmap_new(((GtkWidget *)pr)->window, pr->tile_width, pr->tile_height, -1); - - size = pixmap_calc_size(pixmap); - pr_tile_free_space(pr, size, it); - - it->pixmap = pixmap; - it->size += size; - pr->tile_cache_size += size; - } - - if ((pr->zoom != 1.0 || pr->source_tiles_enabled || (pr->pixbuf && gdk_pixbuf_get_has_alpha(pr->pixbuf)) || - pr->orientation != EXIF_ORIENTATION_TOP_LEFT || pr->func_post_process) && !it->pixbuf) - { - GdkPixbuf *pixbuf; - guint size; -#if 0 -/* I don't think that we need a pixbuf with alpha channel here */ - if (pr->pixbuf) - { - pixbuf = gdk_pixbuf_new(gdk_pixbuf_get_colorspace(pr->pixbuf), - gdk_pixbuf_get_has_alpha(pr->pixbuf), - gdk_pixbuf_get_bits_per_sample(pr->pixbuf), - pr->tile_width, pr->tile_height); - } - else -#endif - { - pixbuf = gdk_pixbuf_new(GDK_COLORSPACE_RGB, FALSE, 8, pr->tile_width, pr->tile_height); - } - - size = gdk_pixbuf_get_rowstride(pixbuf) * pr->tile_height; - pr_tile_free_space(pr, size, it); - - it->pixbuf = pixbuf; - it->size += size; - pr->tile_cache_size += size; - } + g_signal_emit(pr, signals[SIGNAL_UPDATE_PIXEL], 0); } /* *------------------------------------------------------------------- - * drawing + * sync and clamp *------------------------------------------------------------------- */ -static void pr_tile_coords_map_orientation(PixbufRenderer *pr, +void pr_tile_coords_map_orientation(gint orientation, gdouble tile_x, gdouble tile_y, /* coordinates of the tile */ gdouble image_w, gdouble image_h, gdouble tile_w, gdouble tile_h, @@ -2132,7 +1382,7 @@ { *res_x = tile_x; *res_y = tile_y; - switch (pr->orientation) + switch (orientation) { case EXIF_ORIENTATION_TOP_LEFT: /* normal -- nothing to do */ @@ -2175,7 +1425,7 @@ // log_printf("tile coord y:%f, ih:%d, th:%f ry:%f\n", tile_y, image_h, tile_h, *res_x); } -static void pr_tile_region_map_orientation(PixbufRenderer *pr, +void pr_tile_region_map_orientation(gint orientation, gint area_x, gint area_y, /* coordinates of the area inside tile */ gint tile_w, gint tile_h, gint area_w, gint area_h, @@ -2187,7 +1437,7 @@ *res_w = area_w; *res_h = area_h; - switch (pr->orientation) + switch (orientation) { case EXIF_ORIENTATION_TOP_LEFT: /* normal -- nothing to do */ @@ -2238,7 +1488,7 @@ // log_printf("inside y:%d, th:%d, ah:%d ry:%d\n", area_y, tile_h, area_h, *res_x); } -static void pr_coords_map_orientation_reverse(PixbufRenderer *pr, +void pr_coords_map_orientation_reverse(gint orientation, gint area_x, gint area_y, gint tile_w, gint tile_h, gint area_w, gint area_h, @@ -2250,7 +1500,7 @@ *res_w = area_w; *res_h = area_h; - switch (pr->orientation) + switch (orientation) { case EXIF_ORIENTATION_TOP_LEFT: /* normal -- nothing to do */ @@ -2266,925 +1516,41 @@ break; case EXIF_ORIENTATION_BOTTOM_LEFT: /* flipped */ - *res_y = tile_h - area_y - area_h; - break; - case EXIF_ORIENTATION_LEFT_TOP: - *res_x = area_y; - *res_y = area_x; - *res_w = area_h; - *res_h = area_w; - break; - case EXIF_ORIENTATION_RIGHT_TOP: - /* rotated -90 (270) */ - *res_x = tile_w - area_y - area_h; - *res_y = area_x; - *res_w = area_h; - *res_h = area_w; - break; - case EXIF_ORIENTATION_RIGHT_BOTTOM: - *res_x = tile_w - area_y - area_h; - *res_y = tile_h - area_x - area_w; - *res_w = area_h; - *res_h = area_w; - break; - case EXIF_ORIENTATION_LEFT_BOTTOM: - /* rotated 90 */ - *res_x = area_y; - *res_y = tile_h - area_x - area_w; - *res_w = area_h; - *res_h = area_w; - break; - default: - /* The other values are out of range */ - break; - } -} - - -static GdkPixbuf *pr_get_spare_tile(PixbufRenderer *pr) -{ - if (!pr->spare_tile) pr->spare_tile = gdk_pixbuf_new(GDK_COLORSPACE_RGB, FALSE, 8, pr->tile_width, pr->tile_height); - return pr->spare_tile; -} - -#define COLOR_BYTES 3 /* rgb */ - -static void pr_tile_rotate_90_clockwise(PixbufRenderer *pr, GdkPixbuf **tile, gint x, gint y, gint w, gint h) -{ - GdkPixbuf *src = *tile; - GdkPixbuf *dest; - gint srs, drs; - guchar *s_pix, *d_pix; - guchar *sp, *dp; - guchar *ip, *spi, *dpi; - gint i, j; - gint tw = pr->tile_width; - - srs = gdk_pixbuf_get_rowstride(src); - s_pix = gdk_pixbuf_get_pixels(src); - spi = s_pix + (x * COLOR_BYTES); - - dest = pr_get_spare_tile(pr); - drs = gdk_pixbuf_get_rowstride(dest); - d_pix = gdk_pixbuf_get_pixels(dest); - dpi = d_pix + (tw - 1) * COLOR_BYTES; - - for (i = y; i < y + h; i++) - { - sp = spi + (i * srs); - ip = dpi - (i * COLOR_BYTES); - for (j = x; j < x + w; j++) - { - dp = ip + (j * drs); - memcpy(dp, sp, COLOR_BYTES); - sp += COLOR_BYTES; - } - } - - pr->spare_tile = src; - *tile = dest; -} - -static void pr_tile_rotate_90_counter_clockwise(PixbufRenderer *pr, GdkPixbuf **tile, gint x, gint y, gint w, gint h) -{ - GdkPixbuf *src = *tile; - GdkPixbuf *dest; - gint srs, drs; - guchar *s_pix, *d_pix; - guchar *sp, *dp; - guchar *ip, *spi, *dpi; - gint i, j; - gint th = pr->tile_height; - - srs = gdk_pixbuf_get_rowstride(src); - s_pix = gdk_pixbuf_get_pixels(src); - spi = s_pix + (x * COLOR_BYTES); - - dest = pr_get_spare_tile(pr); - drs = gdk_pixbuf_get_rowstride(dest); - d_pix = gdk_pixbuf_get_pixels(dest); - dpi = d_pix + (th - 1) * drs; - - for (i = y; i < y + h; i++) - { - sp = spi + (i * srs); - ip = dpi + (i * COLOR_BYTES); - for (j = x; j < x + w; j++) - { - dp = ip - (j * drs); - memcpy(dp, sp, COLOR_BYTES); - sp += COLOR_BYTES; - } - } - - pr->spare_tile = src; - *tile = dest; -} - -static void pr_tile_mirror_only(PixbufRenderer *pr, GdkPixbuf **tile, gint x, gint y, gint w, gint h) -{ - GdkPixbuf *src = *tile; - GdkPixbuf *dest; - gint srs, drs; - guchar *s_pix, *d_pix; - guchar *sp, *dp; - guchar *spi, *dpi; - gint i, j; - - gint tw = pr->tile_width; - - srs = gdk_pixbuf_get_rowstride(src); - s_pix = gdk_pixbuf_get_pixels(src); - spi = s_pix + (x * COLOR_BYTES); - - dest = pr_get_spare_tile(pr); - drs = gdk_pixbuf_get_rowstride(dest); - d_pix = gdk_pixbuf_get_pixels(dest); - dpi = d_pix + (tw - x - 1) * COLOR_BYTES; - - for (i = y; i < y + h; i++) - { - sp = spi + (i * srs); - dp = dpi + (i * drs); - for (j = 0; j < w; j++) - { - memcpy(dp, sp, COLOR_BYTES); - sp += COLOR_BYTES; - dp -= COLOR_BYTES; - } - } - - pr->spare_tile = src; - *tile = dest; -} - -static void pr_tile_mirror_and_flip(PixbufRenderer *pr, GdkPixbuf **tile, gint x, gint y, gint w, gint h) -{ - GdkPixbuf *src = *tile; - GdkPixbuf *dest; - gint srs, drs; - guchar *s_pix, *d_pix; - guchar *sp, *dp; - guchar *spi, *dpi; - gint i, j; - gint tw = pr->tile_width; - gint th = pr->tile_height; - - srs = gdk_pixbuf_get_rowstride(src); - s_pix = gdk_pixbuf_get_pixels(src); - spi = s_pix + (x * COLOR_BYTES); - - dest = pr_get_spare_tile(pr); - drs = gdk_pixbuf_get_rowstride(dest); - d_pix = gdk_pixbuf_get_pixels(dest); - dpi = d_pix + (th - 1) * drs + (tw - 1) * COLOR_BYTES; - - for (i = y; i < y + h; i++) - { - sp = s_pix + (i * srs) + (x * COLOR_BYTES); - dp = dpi - (i * drs) - (x * COLOR_BYTES); - for (j = 0; j < w; j++) - { - memcpy(dp, sp, COLOR_BYTES); - sp += COLOR_BYTES; - dp -= COLOR_BYTES; - } - } - - pr->spare_tile = src; - *tile = dest; -} - -static void pr_tile_flip_only(PixbufRenderer *pr, GdkPixbuf **tile, gint x, gint y, gint w, gint h) -{ - GdkPixbuf *src = *tile; - GdkPixbuf *dest; - gint srs, drs; - guchar *s_pix, *d_pix; - guchar *sp, *dp; - guchar *spi, *dpi; - gint i; - gint th = pr->tile_height; - - srs = gdk_pixbuf_get_rowstride(src); - s_pix = gdk_pixbuf_get_pixels(src); - spi = s_pix + (x * COLOR_BYTES); - - dest = pr_get_spare_tile(pr); - drs = gdk_pixbuf_get_rowstride(dest); - d_pix = gdk_pixbuf_get_pixels(dest); - dpi = d_pix + (th - 1) * drs + (x * COLOR_BYTES); - - for (i = y; i < y + h; i++) - { - sp = spi + (i * srs); - dp = dpi - (i * drs); - memcpy(dp, sp, w * COLOR_BYTES); - } - - pr->spare_tile = src; - *tile = dest; -} - -static void pr_tile_apply_orientation(PixbufRenderer *pr, GdkPixbuf **pixbuf, gint x, gint y, gint w, gint h) -{ - switch (pr->orientation) - { - case EXIF_ORIENTATION_TOP_LEFT: - /* normal -- nothing to do */ - break; - case EXIF_ORIENTATION_TOP_RIGHT: - /* mirrored */ - { - pr_tile_mirror_only(pr, pixbuf, x, y, w, h); - } - break; - case EXIF_ORIENTATION_BOTTOM_RIGHT: - /* upside down */ - { - pr_tile_mirror_and_flip(pr, pixbuf, x, y, w, h); - } - break; - case EXIF_ORIENTATION_BOTTOM_LEFT: - /* flipped */ - { - pr_tile_flip_only(pr, pixbuf, x, y, w, h); - } - break; - case EXIF_ORIENTATION_LEFT_TOP: - { - pr_tile_flip_only(pr, pixbuf, x, y, w, h); - pr_tile_rotate_90_clockwise(pr, pixbuf, x, pr->tile_height - y - h, w, h); - } - break; - case EXIF_ORIENTATION_RIGHT_TOP: - /* rotated -90 (270) */ - { - pr_tile_rotate_90_clockwise(pr, pixbuf, x, y, w, h); - } - break; - case EXIF_ORIENTATION_RIGHT_BOTTOM: - { - pr_tile_flip_only(pr, pixbuf, x, y, w, h); - pr_tile_rotate_90_counter_clockwise(pr, pixbuf, x, pr->tile_height - y - h, w, h); - } - break; - case EXIF_ORIENTATION_LEFT_BOTTOM: - /* rotated 90 */ - { - pr_tile_rotate_90_counter_clockwise(pr, pixbuf, x, y, w, h); - } - break; - default: - /* The other values are out of range */ - break; - } -} - - -static void pr_tile_render(PixbufRenderer *pr, ImageTile *it, - gint x, gint y, gint w, gint h, - gboolean new_data, gboolean fast) -{ - GtkWidget *box; - gboolean has_alpha; - gboolean draw = FALSE; - - if (it->render_todo == TILE_RENDER_NONE && it->pixmap && !new_data) return; - - if (it->render_done != TILE_RENDER_ALL) - { - x = 0; - y = 0; - w = it->w; - h = it->h; - if (!fast) it->render_done = TILE_RENDER_ALL; - } - else if (it->render_todo != TILE_RENDER_AREA) - { - if (!fast) it->render_todo = TILE_RENDER_NONE; - return; - } - - if (!fast) it->render_todo = TILE_RENDER_NONE; - - if (new_data) it->blank = FALSE; - - pr_tile_prepare(pr, it); - has_alpha = (pr->pixbuf && gdk_pixbuf_get_has_alpha(pr->pixbuf)); - - box = GTK_WIDGET(pr); - - /* FIXME checker colors for alpha should be configurable, - * also should be drawn for blank = TRUE - */ - - if (it->blank) - { - /* no data, do fast rect fill */ - gdk_draw_rectangle(it->pixmap, box->style->black_gc, TRUE, - 0, 0, it->w, it->h); - } - else if (pr->source_tiles_enabled) - { - draw = pr_source_tile_render(pr, it, x, y, w, h, new_data, fast); - } - else if (pr->zoom == 1.0 || pr->scale == 1.0) - { - - gdouble src_x, src_y; - gint pb_x, pb_y; - gint pb_w, pb_h; - pr_tile_coords_map_orientation(pr, it->x, it->y, - pr->image_width, pr->image_height, - pr->tile_width, pr->tile_height, - &src_x, &src_y); - pr_tile_region_map_orientation(pr, x, y, - pr->tile_width, pr->tile_height, - w, h, - &pb_x, &pb_y, - &pb_w, &pb_h); - - if (has_alpha) - { - gdk_pixbuf_composite_color(pr->pixbuf, it->pixbuf, pb_x, pb_y, pb_w, pb_h, - (gdouble) 0.0 - src_x, - (gdouble) 0.0 - src_y, - 1.0, 1.0, GDK_INTERP_NEAREST, - 255, it->x + pb_x, it->y + pb_y, - PR_ALPHA_CHECK_SIZE, PR_ALPHA_CHECK1, PR_ALPHA_CHECK2); - pr_tile_apply_orientation(pr, &it->pixbuf, pb_x, pb_y, pb_w, pb_h); - draw = TRUE; - } - else - { - - - if (pr->orientation == EXIF_ORIENTATION_TOP_LEFT && !(pr->func_post_process && !(pr->post_process_slow && fast))) - { - /* faster, simple, base orientation, no postprocessing */ - gdk_draw_pixbuf(it->pixmap, - box->style->fg_gc[GTK_WIDGET_STATE(box)], - pr->pixbuf, - it->x + x, it->y + y, - x, y, - w, h, - pr->dither_quality, it->x + x, it->y + y); - } - else - { - gdk_pixbuf_copy_area(pr->pixbuf, - src_x + pb_x, src_y + pb_y, - pb_w, pb_h, - it->pixbuf, - pb_x, pb_y); - pr_tile_apply_orientation(pr, &it->pixbuf, pb_x, pb_y, pb_w, pb_h); - draw = TRUE; - } - } - } - else - { - gdouble scale_x, scale_y; - gdouble src_x, src_y; - gint pb_x, pb_y; - gint pb_w, pb_h; - - if (pr->image_width == 0 || pr->image_height == 0) return; - - scale_x = (gdouble)pr->width / pr->image_width; - scale_y = (gdouble)pr->height / pr->image_height; - - pr_tile_coords_map_orientation(pr, it->x, it->y, - pr->image_width * scale_x, pr->image_height * scale_y, - pr->tile_width, pr->tile_height, - &src_x, &src_y); - pr_tile_region_map_orientation(pr, x, y, - pr->tile_width, pr->tile_height, - w, h, - &pb_x, &pb_y, - &pb_w, &pb_h); - switch (pr->orientation) - { - gdouble tmp; - case EXIF_ORIENTATION_LEFT_TOP: - case EXIF_ORIENTATION_RIGHT_TOP: - case EXIF_ORIENTATION_RIGHT_BOTTOM: - case EXIF_ORIENTATION_LEFT_BOTTOM: - tmp = scale_x; - scale_x = scale_y; - scale_y = tmp; - break; - default: - /* nothing to do */ - break; - } - - /* HACK: The pixbuf scalers get kinda buggy(crash) with extremely - * small sizes for anything but GDK_INTERP_NEAREST - */ - if (pr->width < PR_MIN_SCALE_SIZE || pr->height < PR_MIN_SCALE_SIZE) fast = TRUE; - - if (!has_alpha) - { - gdk_pixbuf_scale(pr->pixbuf, it->pixbuf, pb_x, pb_y, pb_w, pb_h, - (gdouble) 0.0 - src_x, - (gdouble) 0.0 - src_y, - scale_x, scale_y, - (fast) ? GDK_INTERP_NEAREST : pr->zoom_quality); - } - else - { - gdk_pixbuf_composite_color(pr->pixbuf, it->pixbuf, pb_x, pb_y, pb_w, pb_h, - (gdouble) 0.0 - src_x, - (gdouble) 0.0 - src_y, - scale_x, scale_y, - (fast) ? GDK_INTERP_NEAREST : pr->zoom_quality, - 255, it->x + pb_x, it->y + pb_y, - PR_ALPHA_CHECK_SIZE, PR_ALPHA_CHECK1, PR_ALPHA_CHECK2); - } - pr_tile_apply_orientation(pr, &it->pixbuf, pb_x, pb_y, pb_w, pb_h); - draw = TRUE; - } - - if (draw && it->pixbuf && !it->blank) - { - - if (pr->func_post_process && !(pr->post_process_slow && fast)) - pr->func_post_process(pr, &it->pixbuf, x, y, w, h, pr->post_process_user_data); - - gdk_draw_pixbuf(it->pixmap, - box->style->fg_gc[GTK_WIDGET_STATE(box)], - it->pixbuf, - x, y, - x, y, - w, h, - pr->dither_quality, it->x + x, it->y + y); - } - -#if 0 - /* enable this line for debugging the edges of tiles */ - gdk_draw_rectangle(it->pixmap, box->style->white_gc, - FALSE, 0, 0, it->w, it->h); - gdk_draw_rectangle(it->pixmap, box->style->white_gc, - FALSE, x, y, w, h); -#endif -} - - -static void pr_tile_expose(PixbufRenderer *pr, ImageTile *it, - gint x, gint y, gint w, gint h, - gboolean new_data, gboolean fast) -{ - GtkWidget *box; - - pr_tile_render(pr, it, x, y, w, h, new_data, fast); - - box = GTK_WIDGET(pr); - - gdk_draw_drawable(box->window, box->style->fg_gc[GTK_WIDGET_STATE(box)], - it->pixmap, x, y, - pr->x_offset + (it->x - pr->x_scroll) + x, pr->y_offset + (it->y - pr->y_scroll) + y, w, h); - - if (pr->overlay_list) - { - pr_overlay_draw(pr, pr->x_offset + (it->x - pr->x_scroll) + x, - pr->y_offset + (it->y - pr->y_scroll) + y, - w, h, - it); - } -} - - -static gboolean pr_tile_is_visible(PixbufRenderer *pr, ImageTile *it) -{ - return (it->x + it->w >= pr->x_scroll && it->x < pr->x_scroll + pr->vis_width && - it->y + it->h >= pr->y_scroll && it->y < pr->y_scroll + pr->vis_height); -} - -/* - *------------------------------------------------------------------- - * draw queue - *------------------------------------------------------------------- - */ - -static gint pr_get_queued_area(GList *work) -{ - gint area = 0; - - while (work) - { - QueueData *qd = work->data; - area += qd->w * qd->h; - work = work->next; - } - return area; -} - - -static gboolean pr_queue_schedule_next_draw(PixbufRenderer *pr, gboolean force_set) -{ - gfloat percent; - gint visible_area = pr->vis_width * pr->vis_height; - - if (!pr->loading) - { - /* 2pass prio */ - DEBUG_2("redraw priority: 2pass"); - pr->draw_idle_id = g_idle_add_full(G_PRIORITY_DEFAULT_IDLE, pr_queue_draw_idle_cb, pr, NULL); - return FALSE; - } - - if (visible_area == 0) - { - /* not known yet */ - percent = 100.0; - } - else - { - percent = 100.0 * pr_get_queued_area(pr->draw_queue) / visible_area; - } - - if (percent > 10.0) - { - /* we have enough data for starting intensive redrawing */ - DEBUG_2("redraw priority: high %.2f %%", percent); - pr->draw_idle_id = g_idle_add_full(GDK_PRIORITY_REDRAW, pr_queue_draw_idle_cb, pr, NULL); - return FALSE; - } - - if (percent < 1.0 || force_set) - { - /* queue is (almost) empty, wait 50 ms*/ - DEBUG_2("redraw priority: wait %.2f %%", percent); - pr->draw_idle_id = g_timeout_add_full(G_PRIORITY_DEFAULT_IDLE, 50, pr_queue_draw_idle_cb, pr, NULL); - return FALSE; - } - - /* keep the same priority as before */ - DEBUG_2("redraw priority: no change %.2f %%", percent); - return TRUE; -} - - -static gboolean pr_queue_draw_idle_cb(gpointer data) -{ - PixbufRenderer *pr = data; - QueueData *qd; - gboolean fast; - - - if ((!pr->pixbuf && !pr->source_tiles_enabled) || - (!pr->draw_queue && !pr->draw_queue_2pass) || - !pr->draw_idle_id) - { - pr_render_complete_signal(pr); - - pr->draw_idle_id = 0; - return FALSE; - } - - if (pr->draw_queue) - { - qd = pr->draw_queue->data; - fast = (pr->zoom_2pass && ((pr->zoom_quality != GDK_INTERP_NEAREST && pr->scale != 1.0) || pr->post_process_slow)); - } - else - { - if (pr->loading) - { - /* still loading, wait till done (also drops the higher priority) */ - - return pr_queue_schedule_next_draw(pr, FALSE); - } - - qd = pr->draw_queue_2pass->data; - fast = FALSE; - } - - if (GTK_WIDGET_REALIZED(pr)) - { - if (pr_tile_is_visible(pr, qd->it)) - { - pr_tile_expose(pr, qd->it, qd->x, qd->y, qd->w, qd->h, qd->new_data, fast); - } - else if (qd->new_data) - { - /* if new pixel data, and we already have a pixmap, update the tile */ - qd->it->blank = FALSE; - if (qd->it->pixmap && qd->it->render_done == TILE_RENDER_ALL) - { - pr_tile_render(pr, qd->it, qd->x, qd->y, qd->w, qd->h, qd->new_data, fast); - } - } - } - - if (pr->draw_queue) - { - qd->it->qd = NULL; - pr->draw_queue = g_list_remove(pr->draw_queue, qd); - if (fast) - { - if (qd->it->qd2) - { - pr_queue_merge(qd->it->qd2, qd); - g_free(qd); - } - else - { - qd->it->qd2 = qd; - pr->draw_queue_2pass = g_list_append(pr->draw_queue_2pass, qd); - } - } - else - { - g_free(qd); - } - } - else - { - qd->it->qd2 = NULL; - pr->draw_queue_2pass = g_list_remove(pr->draw_queue_2pass, qd); - g_free(qd); - } - - if (!pr->draw_queue && !pr->draw_queue_2pass) - { - pr_render_complete_signal(pr); - - pr->draw_idle_id = 0; - return FALSE; - } - - return pr_queue_schedule_next_draw(pr, FALSE); -} - -static void pr_queue_list_free(GList *list) -{ - GList *work; - - work = list; - while (work) - { - QueueData *qd; - - qd = work->data; - work = work->next; - - qd->it->qd = NULL; - qd->it->qd2 = NULL; - g_free(qd); - } - - g_list_free(list); -} - -static void pr_queue_clear(PixbufRenderer *pr) -{ - pr_queue_list_free(pr->draw_queue); - pr->draw_queue = NULL; - - pr_queue_list_free(pr->draw_queue_2pass); - pr->draw_queue_2pass = NULL; - - if (pr->draw_idle_id) - { - g_source_remove(pr->draw_idle_id); - pr->draw_idle_id = 0; - } -} - -static void pr_queue_merge(QueueData *parent, QueueData *qd) -{ - if (parent->x + parent->w < qd->x + qd->w) - { - parent->w += (qd->x + qd->w) - (parent->x + parent->w); - } - if (parent->x > qd->x) - { - parent->w += parent->x - qd->x; - parent->x = qd->x; - } - - if (parent->y + parent->h < qd->y + qd->h) - { - parent->h += (qd->y + qd->h) - (parent->y + parent->h); - } - if (parent->y > qd->y) - { - parent->h += parent->y - qd->y; - parent->y = qd->y; - } - - parent->new_data |= qd->new_data; -} - -static gboolean pr_clamp_to_visible(PixbufRenderer *pr, gint *x, gint *y, gint *w, gint *h) -{ - gint nx, ny; - gint nw, nh; - gint vx, vy; - gint vw, vh; - - vw = pr->vis_width; - vh = pr->vis_height; - - vx = pr->x_scroll; - vy = pr->y_scroll; - - if (*x + *w < vx || *x > vx + vw || *y + *h < vy || *y > vy + vh) return FALSE; - - /* now clamp it */ - nx = CLAMP(*x, vx, vx + vw); - nw = CLAMP(*w - (nx - *x), 1, vw); - - ny = CLAMP(*y, vy, vy + vh); - nh = CLAMP(*h - (ny - *y), 1, vh); - - *x = nx; - *y = ny; - *w = nw; - *h = nh; - - return TRUE; -} - -static gboolean pr_queue_to_tiles(PixbufRenderer *pr, gint x, gint y, gint w, gint h, - gboolean clamp, ImageTileRenderType render, - gboolean new_data, gboolean only_existing) -{ - gint i, j; - gint x1, x2; - gint y1, y2; - - if (clamp && !pr_clamp_to_visible(pr, &x, &y, &w, &h)) return FALSE; - - x1 = ROUND_DOWN(x, pr->tile_width); - x2 = ROUND_UP(x + w, pr->tile_width); - - y1 = ROUND_DOWN(y, pr->tile_height); - y2 = ROUND_UP(y + h, pr->tile_height); - - for (j = y1; j <= y2; j += pr->tile_height) - { - for (i = x1; i <= x2; i += pr->tile_width) - { - ImageTile *it; - - it = pr_tile_get(pr, i, j, - (only_existing && - (i + pr->tile_width < pr->x_scroll || - i > pr->x_scroll + pr->vis_width || - j + pr->tile_height < pr->y_scroll || - j > pr->y_scroll + pr->vis_height))); - if (it) - { - QueueData *qd; - - if ((render == TILE_RENDER_ALL && it->render_done != TILE_RENDER_ALL) || - (render == TILE_RENDER_AREA && it->render_todo != TILE_RENDER_ALL)) - { - it->render_todo = render; - } - - qd = g_new(QueueData, 1); - qd->it = it; - qd->new_data = new_data; - - if (i < x) - { - qd->x = x - i; - } - else - { - qd->x = 0; - } - qd->w = x + w - i - qd->x; - if (qd->x + qd->w > pr->tile_width) qd->w = pr->tile_width - qd->x; - - if (j < y) - { - qd->y = y - j; - } - else - { - qd->y = 0; - } - qd->h = y + h - j - qd->y; - if (qd->y + qd->h > pr->tile_height) qd->h = pr->tile_height - qd->y; - - if (qd->w < 1 || qd->h < 1) - { - g_free(qd); - } - else if (it->qd) - { - pr_queue_merge(it->qd, qd); - g_free(qd); - } - else - { - it->qd = qd; - pr->draw_queue = g_list_append(pr->draw_queue, qd); - } - } - } - } - - return TRUE; -} - -static void pr_queue(PixbufRenderer *pr, gint x, gint y, gint w, gint h, - gboolean clamp, ImageTileRenderType render, - gboolean new_data, gboolean only_existing) -{ - gint nx, ny; - - nx = CLAMP(x, 0, pr->width - 1); - ny = CLAMP(y, 0, pr->height - 1); - w -= (nx - x); - h -= (ny - y); - w = CLAMP(w, 0, pr->width - nx); - h = CLAMP(h, 0, pr->height - ny); - if (w < 1 || h < 1) return; - - if (pr_queue_to_tiles(pr, nx, ny, w, h, clamp, render, new_data, only_existing) && - ((!pr->draw_queue && !pr->draw_queue_2pass) || !pr->draw_idle_id)) - { - if (pr->draw_idle_id) - { - g_source_remove(pr->draw_idle_id); - pr->draw_idle_id = 0; - } - pr_queue_schedule_next_draw(pr, TRUE); - } -} - -static void pr_redraw(PixbufRenderer *pr, gboolean new_data) -{ - pr_queue_clear(pr); - pr_queue(pr, 0, 0, pr->width, pr->height, TRUE, TILE_RENDER_ALL, new_data, FALSE); -} - -/* - *------------------------------------------------------------------- - * signal emission - *------------------------------------------------------------------- - */ - -static void pr_update_signal(PixbufRenderer *pr) -{ -#if 0 - log_printf("FIXME: send updated signal\n"); -#endif - DEBUG_1("%s pixbuf renderer updated - started drawing %p", get_exec_time(), pr); - pr->debug_updated = TRUE; -} - -static void pr_zoom_signal(PixbufRenderer *pr) -{ - g_signal_emit(pr, signals[SIGNAL_ZOOM], 0, pr->zoom); -} - -static void pr_clicked_signal(PixbufRenderer *pr, GdkEventButton *bevent) -{ - g_signal_emit(pr, signals[SIGNAL_CLICKED], 0, bevent); -} - -static void pr_scroll_notify_signal(PixbufRenderer *pr) -{ - g_signal_emit(pr, signals[SIGNAL_SCROLL_NOTIFY], 0); -} - -static void pr_render_complete_signal(PixbufRenderer *pr) -{ - if (!pr->complete) - { - g_signal_emit(pr, signals[SIGNAL_RENDER_COMPLETE], 0); - g_object_set(G_OBJECT(pr), "complete", TRUE, NULL); - } - if (pr->debug_updated) - { - DEBUG_1("%s pixbuf renderer done %p", get_exec_time(), pr); - pr->debug_updated = FALSE; + *res_y = tile_h - area_y - area_h; + break; + case EXIF_ORIENTATION_LEFT_TOP: + *res_x = area_y; + *res_y = area_x; + *res_w = area_h; + *res_h = area_w; + break; + case EXIF_ORIENTATION_RIGHT_TOP: + /* rotated -90 (270) */ + *res_x = tile_w - area_y - area_h; + *res_y = area_x; + *res_w = area_h; + *res_h = area_w; + break; + case EXIF_ORIENTATION_RIGHT_BOTTOM: + *res_x = tile_w - area_y - area_h; + *res_y = tile_h - area_x - area_w; + *res_w = area_h; + *res_h = area_w; + break; + case EXIF_ORIENTATION_LEFT_BOTTOM: + /* rotated 90 */ + *res_x = area_y; + *res_y = tile_h - area_x - area_w; + *res_w = area_h; + *res_h = area_w; + break; + default: + /* The other values are out of range */ + break; } } -static void pr_drag_signal(PixbufRenderer *pr, GdkEventButton *bevent) -{ - g_signal_emit(pr, signals[SIGNAL_DRAG], 0, bevent); -} - -static void pr_update_pixel_signal(PixbufRenderer *pr) -{ - g_signal_emit(pr, signals[SIGNAL_UPDATE_PIXEL], 0); -} -/* - *------------------------------------------------------------------- - * sync and clamp - *------------------------------------------------------------------- - */ static void pixbuf_renderer_sync_scroll_center(PixbufRenderer *pr) { @@ -3197,13 +1563,13 @@ * of the "broken image" icon. */ - if (pr->width > pr->window_width) + if (pr->width > pr->viewport_width) { src_x = pr->x_scroll + pr->vis_width / 2; pr->norm_center_x = (gdouble)src_x / pr->width; } - if (pr->height > pr->window_height) + if (pr->height > pr->viewport_height) { src_y = pr->y_scroll + pr->vis_height / 2; pr->norm_center_y = (gdouble)src_y / pr->height; @@ -3257,25 +1623,25 @@ old_vw = pr->vis_width; old_vh = pr->vis_height; - if (pr->width < pr->window_width) + if (pr->width < pr->viewport_width) { pr->vis_width = pr->width; - pr->x_offset = (pr->window_width - pr->width) / 2; + pr->x_offset = (pr->viewport_width - pr->width) / 2; } else { - pr->vis_width = pr->window_width; + pr->vis_width = pr->viewport_width; pr->x_offset = 0; } - if (pr->height < pr->window_height) + if (pr->height < pr->viewport_height) { pr->vis_height = pr->height; - pr->y_offset = (pr->window_height - pr->height) / 2; + pr->y_offset = (pr->viewport_height - pr->height) / 2; } else { - pr->vis_height = pr->window_height; + pr->vis_height = pr->viewport_height; pr->y_offset = 0; } @@ -3327,15 +1693,15 @@ } else { - max_w = pr->window_width; - max_h = pr->window_height; + max_w = pr->viewport_width; + max_h = pr->viewport_height; } if ((pr->zoom_expand && !sizeable) || w > max_w || h > max_h) { - if ((gdouble)max_w / w > (gdouble)max_h / h) + if ((gdouble)max_w / w > (gdouble)max_h / h / pr->aspect_ratio) { - scale = (gdouble)max_h / h; + scale = (gdouble)max_h / h / pr->aspect_ratio; h = max_h; w = w * scale + 0.5; if (w > max_w) w = max_w; @@ -3344,7 +1710,7 @@ { scale = (gdouble)max_w / w; w = max_w; - h = h * scale + 0.5; + h = h * scale * pr->aspect_ratio + 0.5; if (h > max_h) h = max_h; } @@ -3368,13 +1734,13 @@ { scale = zoom; w = w * scale; - h = h * scale; + h = h * scale * pr->aspect_ratio; } else /* zoom out */ { scale = 1.0 / (0.0 - zoom); w = w * scale; - h = h * scale; + h = h * scale * pr->aspect_ratio; } invalid = (pr->width != w || pr->height != h); @@ -3386,7 +1752,8 @@ if (invalidate || invalid) { - pr_tile_invalidate_all(pr); + pr->renderer->invalidate_all(pr->renderer); + if (pr->renderer2) pr->renderer2->invalidate_all(pr->renderer2); if (!lazy) pr_redraw(pr, TRUE); } if (redrawn) *redrawn = (invalidate || invalid); @@ -3441,12 +1808,12 @@ case PR_SCROLL_RESET_NOCHANGE: /* maintain old scroll position */ pr->x_scroll = ((gdouble)pr->image_width * old_center_x * pr->scale) - pr->vis_width / 2; - pr->y_scroll = ((gdouble)pr->image_height * old_center_y * pr->scale) - pr->vis_height / 2; + pr->y_scroll = ((gdouble)pr->image_height * old_center_y * pr->scale * pr->aspect_ratio) - pr->vis_height / 2; break; case PR_SCROLL_RESET_CENTER: /* center new image */ pr->x_scroll = ((gdouble)pr->image_width / 2.0 * pr->scale) - pr->vis_width / 2; - pr->y_scroll = ((gdouble)pr->image_height / 2.0 * pr->scale) - pr->vis_height / 2; + pr->y_scroll = ((gdouble)pr->image_height / 2.0 * pr->scale * pr->aspect_ratio) - pr->vis_height / 2; break; case PR_SCROLL_RESET_TOPLEFT: default: @@ -3462,12 +1829,12 @@ if (center_point) { pr->x_scroll = old_cx / old_scale * pr->scale - (px - pr->x_offset); - pr->y_scroll = old_cy / old_scale * pr->scale - (py - pr->y_offset); + pr->y_scroll = old_cy / old_scale * pr->scale * pr->aspect_ratio - (py - pr->y_offset); } else { pr->x_scroll = old_cx / old_scale * pr->scale - (pr->vis_width / 2); - pr->y_scroll = old_cy / old_scale * pr->scale - (pr->vis_height / 2); + pr->y_scroll = old_cy / old_scale * pr->scale * pr->aspect_ratio - (pr->vis_height / 2); } } @@ -3481,7 +1848,8 @@ if (lazy) { - pr_queue_clear(pr); + pr->renderer->queue_clear(pr->renderer); + if (pr->renderer2) pr->renderer2->queue_clear(pr->renderer2); } else { @@ -3497,10 +1865,33 @@ { gboolean zoom_changed = FALSE; - if (pr->window_width == new_width && pr->window_height == new_height) return; + gint new_viewport_width = new_width; + gint new_viewport_height = new_height; + + if (!pr->stereo_temp_disable) + { + if (pr->stereo_mode & PR_STEREO_HORIZ) + { + new_viewport_width = new_width / 2; + } + else if (pr->stereo_mode & PR_STEREO_VERT) + { + new_viewport_height = new_height / 2; + } + else if (pr->stereo_mode & PR_STEREO_FIXED) + { + new_viewport_width = pr->stereo_fixed_width; + new_viewport_height = pr->stereo_fixed_height; + } + } + + if (pr->window_width == new_width && pr->window_height == new_height && + pr->viewport_width == new_viewport_width && pr->viewport_height == new_viewport_height) return; pr->window_width = new_width; pr->window_height = new_height; + pr->viewport_width = new_viewport_width; + pr->viewport_height = new_viewport_height; if (pr->zoom == 0.0) { @@ -3512,7 +1903,8 @@ pr_size_clamp(pr); pr_scroll_clamp(pr); - pr_overlay_update_sizes(pr); + pr->renderer->update_sizes(pr->renderer); + if (pr->renderer2) pr->renderer2->update_sizes(pr->renderer2); /* ensure scroller remains visible */ if (pr->scroller_overlay != -1) @@ -3566,15 +1958,13 @@ { gint x, y; - pr_border_draw(pr, area->x, area->y, area->width, area->height); - - x = MAX(0, (gint)area->x - pr->x_offset + pr->x_scroll); - y = MAX(0, (gint)area->y - pr->y_offset + pr->y_scroll); - - pr_queue(pr, x, y, - MIN((gint)area->width, pr->width - x), - MIN((gint)area->height, pr->height - y), - FALSE, TILE_RENDER_ALL, FALSE, FALSE); + pr->renderer->redraw(pr->renderer, area->x, area->y, area->width, area->height, + FALSE, TILE_RENDER_ALL, FALSE, FALSE); + if (pr->renderer2) + { + pr->renderer2->redraw(pr->renderer2, area->x, area->y, area->width, area->height, + FALSE, TILE_RENDER_ALL, FALSE, FALSE); + } } /* @@ -3587,7 +1977,6 @@ { gint old_x, old_y; gint x_off, y_off; - gint w, h; g_return_if_fail(IS_PIXBUF_RENDERER(pr)); @@ -3609,93 +1998,9 @@ x_off = pr->x_scroll - old_x; y_off = pr->y_scroll - old_y; - - w = pr->vis_width - abs(x_off); - h = pr->vis_height - abs(y_off); - - if (w < 1 || h < 1) - { - /* scrolled completely to new material */ - pr_queue(pr, 0, 0, pr->width, pr->height, TRUE, TILE_RENDER_ALL, FALSE, FALSE); - return; - } - else - { - gint x1, y1; - gint x2, y2; - GtkWidget *box; - GdkGC *gc; - GdkEvent *event; - - if (x_off < 0) - { - x1 = abs(x_off); - x2 = 0; - } - else - { - x1 = 0; - x2 = abs(x_off); - } - - if (y_off < 0) - { - y1 = abs(y_off); - y2 = 0; - } - else - { - y1 = 0; - y2 = abs(y_off); - } - - box = GTK_WIDGET(pr); - - gc = gdk_gc_new(box->window); - gdk_gc_set_exposures(gc, TRUE); - gdk_draw_drawable(box->window, gc, - box->window, - x2 + pr->x_offset, y2 + pr->y_offset, - x1 + pr->x_offset, y1 + pr->y_offset, w, h); - g_object_unref(gc); - - if (pr->overlay_list) - { - pr_overlay_queue_all(pr); - } - - w = pr->vis_width - w; - h = pr->vis_height - h; - - if (w > 0) - { - pr_queue(pr, - x_off > 0 ? pr->x_scroll + (pr->vis_width - w) : pr->x_scroll, pr->y_scroll, - w, pr->vis_height, TRUE, TILE_RENDER_ALL, FALSE, FALSE); - } - if (h > 0) - { - /* FIXME, to optimize this, remove overlap */ - pr_queue(pr, - pr->x_scroll, y_off > 0 ? pr->y_scroll + (pr->vis_height - h) : pr->y_scroll, - pr->vis_width, h, TRUE, TILE_RENDER_ALL, FALSE, FALSE); - } - - /* process exposures here, "expose_event" seems to miss a few with obstructed windows */ -#if ! GTK_CHECK_VERSION(2,18,0) - while ((event = gdk_event_get_graphics_expose(box->window)) != NULL) - { - pixbuf_renderer_paint(pr, &event->expose.area); - - if (event->expose.count == 0) - { - gdk_event_free(event); - break; - } - gdk_event_free(event); - } -#endif - } + + pr->renderer->scroll(pr->renderer, x_off, y_off); + if (pr->renderer2) pr->renderer2->scroll(pr->renderer2, x_off, y_off); } void pixbuf_renderer_scroll_to_point(PixbufRenderer *pr, gint x, gint y, @@ -3711,7 +2016,7 @@ ay = (gdouble)pr->vis_height * y_align; px = (gdouble)x * pr->scale - (pr->x_scroll + ax); - py = (gdouble)y * pr->scale - (pr->y_scroll + ay); + py = (gdouble)y * pr->scale * pr->aspect_ratio - (pr->y_scroll + ay); pixbuf_renderer_scroll(pr, px, py); } @@ -3848,7 +2153,11 @@ } parent = gtk_widget_get_parent(widget); +#if GTK_CHECK_VERSION(2,20,0) + if (widget && gtk_widget_get_can_focus(parent)) +#else if (widget && GTK_WIDGET_CAN_FOCUS(parent)) +#endif { gtk_widget_grab_focus(parent); } @@ -3868,7 +2177,11 @@ return TRUE; } +#if GTK_CHECK_VERSION(2,20,0) + if (gdk_pointer_is_grabbed() && gtk_widget_has_grab(GTK_WIDGET(pr))) +#else if (gdk_pointer_is_grabbed() && GTK_WIDGET_HAS_GRAB(pr)) +#endif { gtk_grab_remove(widget); gdk_pointer_ungrab(bevent->time); @@ -3928,8 +2241,6 @@ G_CALLBACK(pr_mouse_release_cb), pr); g_signal_connect(G_OBJECT(pr), "leave_notify_event", G_CALLBACK(pr_mouse_leave_cb), pr); - g_signal_connect(G_OBJECT(pr), "hierarchy-changed", - G_CALLBACK(pr_hierarchy_changed_cb), pr); g_signal_connect(G_OBJECT(pr), "leave_notify_event", G_CALLBACK(pr_leave_notify_cb), pr); @@ -3944,11 +2255,138 @@ /* *------------------------------------------------------------------- + * stereo support + *------------------------------------------------------------------- + */ + +#define COLOR_BYTES 3 /* rgb */ +static void pr_create_anaglyph_RC(GdkPixbuf *pixbuf, GdkPixbuf *right, gint x, gint y, gint w, gint h) +{ + gint srs, drs; + guchar *s_pix, *d_pix; + guchar *sp, *dp; + guchar *spi, *dpi; + gint i, j; + + srs = gdk_pixbuf_get_rowstride(right); + s_pix = gdk_pixbuf_get_pixels(right); + spi = s_pix + (x * COLOR_BYTES); + + drs = gdk_pixbuf_get_rowstride(pixbuf); + d_pix = gdk_pixbuf_get_pixels(pixbuf); + dpi = d_pix + x * COLOR_BYTES; + + for (i = y; i < y + h; i++) + { + sp = spi + (i * srs); + dp = dpi + (i * drs); + for (j = 0; j < w; j++) + { + *dp = *sp; /* copy red channel */ + sp += COLOR_BYTES; + dp += COLOR_BYTES; + } + } +} + +static void pr_create_anaglyph_gray(GdkPixbuf *pixbuf, GdkPixbuf *right, gint x, gint y, gint w, gint h) +{ + gint srs, drs; + guchar *s_pix, *d_pix; + guchar *sp, *dp; + guchar *spi, *dpi; + gint i, j; + const double gc[3] = {0.299, 0.587, 0.114}; + + srs = gdk_pixbuf_get_rowstride(right); + s_pix = gdk_pixbuf_get_pixels(right); + spi = s_pix + (x * COLOR_BYTES); + + drs = gdk_pixbuf_get_rowstride(pixbuf); + d_pix = gdk_pixbuf_get_pixels(pixbuf); + dpi = d_pix + x * COLOR_BYTES; + + for (i = y; i < y + h; i++) + { + sp = spi + (i * srs); + dp = dpi + (i * drs); + for (j = 0; j < w; j++) + { + guchar g1 = dp[0] * gc[0] + dp[1] * gc[1] + dp[2] * gc[2]; + guchar g2 = sp[0] * gc[0] + sp[1] * gc[1] + sp[2] * gc[2]; + dp[0] = g2; /* red channel from sp */ + dp[1] = g1; /* green and blue from dp */ + dp[2] = g1; + sp += COLOR_BYTES; + dp += COLOR_BYTES; + } + } +} + +const double pr_dubois_matrix[3][6] = { + { 0.456, 0.500, 0.176, -0.043, -0.088, -0.002}, + {-0.040, -0.038, -0.016, 0.378, 0.734, -0.018}, + {-0.015, -0.021, -0.005, -0.072, -0.113, 1.226} + }; + +static void pr_create_anaglyph_dubois(GdkPixbuf *pixbuf, GdkPixbuf *right, gint x, gint y, gint w, gint h) +{ + gint srs, drs; + guchar *s_pix, *d_pix; + guchar *sp, *dp; + guchar *spi, *dpi; + gint i, j, k; + + srs = gdk_pixbuf_get_rowstride(right); + s_pix = gdk_pixbuf_get_pixels(right); + spi = s_pix + (x * COLOR_BYTES); + + drs = gdk_pixbuf_get_rowstride(pixbuf); + d_pix = gdk_pixbuf_get_pixels(pixbuf); + dpi = d_pix + x * COLOR_BYTES; + + for (i = y; i < y + h; i++) + { + sp = spi + (i * srs); + dp = dpi + (i * drs); + for (j = 0; j < w; j++) + { + double res[3]; + for (k = 0; k < 3; k++) + { + double *m = pr_dubois_matrix[k]; + res[k] = sp[0] * m[0] + sp[1] * m[1] + sp[2] * m[2] + dp[0] * m[3] + dp[1] * m[4] + dp[2] * m[5]; + if (res[k] < 0.0) res[k] = 0; + if (res[k] > 255.0) res[k] = 255.0; + } + dp[0] = res[0]; + dp[1] = res[1]; + dp[2] = res[2]; + sp += COLOR_BYTES; + dp += COLOR_BYTES; + } + } +} + +void pr_create_anaglyph(guint mode, GdkPixbuf *pixbuf, GdkPixbuf *right, gint x, gint y, gint w, gint h) +{ + if (mode & PR_STEREO_ANAGLYPH_RC) + pr_create_anaglyph_RC(pixbuf, right, x, y, w, h); + else if (mode & PR_STEREO_ANAGLYPH_GRAY) + pr_create_anaglyph_gray(pixbuf, right, x, y, w, h); + else if (mode & PR_STEREO_ANAGLYPH_DB) + pr_create_anaglyph_dubois(pixbuf, right, x, y, w, h); +} + +/* + *------------------------------------------------------------------- * public *------------------------------------------------------------------- */ static void pr_pixbuf_size_sync(PixbufRenderer *pr) { + pr->stereo_pixbuf_offset_left = 0; + pr->stereo_pixbuf_offset_right = 0; if (!pr->pixbuf) return; switch (pr->orientation) { @@ -3958,10 +2396,31 @@ case EXIF_ORIENTATION_LEFT_BOTTOM: pr->image_width = gdk_pixbuf_get_height(pr->pixbuf); pr->image_height = gdk_pixbuf_get_width(pr->pixbuf); + if (pr->stereo_data == STEREO_PIXBUF_SBS) + { + pr->image_height /= 2; + pr->stereo_pixbuf_offset_right = pr->image_height; + } + else if (pr->stereo_data == STEREO_PIXBUF_CROSS) + { + pr->image_height /= 2; + pr->stereo_pixbuf_offset_left = pr->image_height; + } + break; default: pr->image_width = gdk_pixbuf_get_width(pr->pixbuf); pr->image_height = gdk_pixbuf_get_height(pr->pixbuf); + if (pr->stereo_data == STEREO_PIXBUF_SBS) + { + pr->image_width /= 2; + pr->stereo_pixbuf_offset_right = pr->image_width; + } + else if (pr->stereo_data == STEREO_PIXBUF_CROSS) + { + pr->image_width /= 2; + pr->stereo_pixbuf_offset_left = pr->image_width; + } } } @@ -3984,10 +2443,15 @@ box = GTK_WIDGET(pr); +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_realized(box)) +#else if (GTK_WIDGET_REALIZED(box)) +#endif { gdk_window_clear(box->window); - pr_overlay_draw(pr, 0, 0, pr->window_width, pr->window_height, NULL); + pr->renderer->overlay_draw(pr->renderer, 0, 0, pr->viewport_width, pr->viewport_height); + if (pr->renderer2) pr->renderer2->overlay_draw(pr->renderer2, 0, 0, pr->viewport_width, pr->viewport_height); } pr_update_signal(pr); @@ -3995,6 +2459,12 @@ return; } + if (pr->stereo_mode & PR_STEREO_TEMP_DISABLE) + { + gint disable = !pr->pixbuf || ! pr->stereo_data; + pr_stereo_temp_disable(pr, disable); + } + pr_pixbuf_size_sync(pr); pr_zoom_sync(pr, zoom, flags | PR_ZOOM_FORCE | PR_ZOOM_NEW, 0, 0); } @@ -4010,13 +2480,14 @@ pr_update_signal(pr); } -void pixbuf_renderer_set_pixbuf_lazy(PixbufRenderer *pr, GdkPixbuf *pixbuf, gdouble zoom, gint orientation) +void pixbuf_renderer_set_pixbuf_lazy(PixbufRenderer *pr, GdkPixbuf *pixbuf, gdouble zoom, gint orientation, StereoPixbufData stereo_data) { g_return_if_fail(IS_PIXBUF_RENDERER(pr)); pr_source_tile_unset(pr); pr->orientation = orientation; + pr->stereo_data = stereo_data; pr_set_pixbuf(pr, pixbuf, zoom, PR_ZOOM_LAZY); pr_update_signal(pr); @@ -4045,6 +2516,21 @@ return pr->orientation; } +void pixbuf_renderer_set_stereo_data(PixbufRenderer *pr, StereoPixbufData stereo_data) +{ + g_return_if_fail(IS_PIXBUF_RENDERER(pr)); + + pr->stereo_data = stereo_data; + + if (pr->stereo_mode & PR_STEREO_TEMP_DISABLE) + { + gint disable = !pr->pixbuf || ! pr->stereo_data; + pr_stereo_temp_disable(pr, disable); + } + pr_pixbuf_size_sync(pr); + pr_zoom_sync(pr, pr->zoom, PR_ZOOM_FORCE, 0, 0); +} + void pixbuf_renderer_set_post_process_func(PixbufRenderer *pr, PixbufRendererPostProcessFunc func, gpointer user_data, gboolean slow) { g_return_if_fail(IS_PIXBUF_RENDERER(pr)); @@ -4086,6 +2572,7 @@ pr->post_process_user_data = source->post_process_user_data; pr->post_process_slow = source->post_process_slow; pr->orientation = source->orientation; + pr->stereo_data = source->stereo_data; if (source->source_tiles_enabled) { @@ -4116,41 +2603,21 @@ pr->scroll_reset = scroll_reset; pixbuf_renderer_set_pixbuf(source, NULL, source->zoom); - pr_queue_clear(source); - pr_tile_free_all(source); +// pr_queue_clear(source); +// pr_tile_free_all(source); } -void pixbuf_renderer_area_changed(PixbufRenderer *pr, gint src_x, gint src_y, gint src_w, gint src_h) +void pixbuf_renderer_area_changed(PixbufRenderer *pr, gint x, gint y, gint w, gint h) { - gint x, y, width, height, x1, y1, x2, y2; - g_return_if_fail(IS_PIXBUF_RENDERER(pr)); - pr_coords_map_orientation_reverse(pr, - src_x, src_y, - pr->image_width, pr->image_height, - src_w, src_h, - &x, &y, - &width, &height); - if (pr->source_tiles_enabled) { - pr_source_tile_changed(pr, x, y, width, height); - } - - if (pr->scale != 1.0 && pr->zoom_quality != GDK_INTERP_NEAREST) - { - /* increase region when using a zoom quality that may access surrounding pixels */ - y -= 1; - height += 2; + pr_source_tile_changed(pr, x, y, w, h); } - x1 = (gint)floor((gdouble)x * pr->scale); - y1 = (gint)floor((gdouble)y * pr->scale); - x2 = (gint)ceil((gdouble)(x + width) * pr->scale); - y2 = (gint)ceil((gdouble)(y + height) * pr->scale); - - pr_queue(pr, x1, y1, x2 - x1, y2 - y1, FALSE, TILE_RENDER_AREA, TRUE, TRUE); + pr->renderer->area_changed(pr->renderer, x, y, w, h); + if (pr->renderer2) pr->renderer2->area_changed(pr->renderer2, x, y, w, h); } void pixbuf_renderer_zoom_adjust(PixbufRenderer *pr, gdouble increment) @@ -4208,6 +2675,85 @@ } } +static void pr_stereo_set(PixbufRenderer *pr) +{ + if (!pr->renderer) pr->renderer = (void *)renderer_tiles_new(pr); + + pr->renderer->stereo_set(pr->renderer, pr->stereo_mode & ~PR_STEREO_MIRROR_RIGHT & ~PR_STEREO_FLIP_RIGHT); + + if (pr->stereo_mode & (PR_STEREO_HORIZ | PR_STEREO_VERT | PR_STEREO_FIXED)) + { + if (!pr->renderer2) pr->renderer2 = (void *)renderer_tiles_new(pr); + pr->renderer2->stereo_set(pr->renderer2, (pr->stereo_mode & ~PR_STEREO_MIRROR_LEFT & ~PR_STEREO_FLIP_LEFT) | PR_STEREO_RIGHT); + } + else + { + if (pr->renderer2) pr->renderer2->free(pr->renderer2); + pr->renderer2 = NULL; + } + if (pr->stereo_mode & PR_STEREO_HALF) + { + if (pr->stereo_mode & PR_STEREO_HORIZ) pr->aspect_ratio = 2.0; + else if (pr->stereo_mode & PR_STEREO_VERT) pr->aspect_ratio = 0.5; + else pr->aspect_ratio = 1.0; + } + else + { + pr->aspect_ratio = 1.0; + } +} + +void pixbuf_renderer_stereo_set(PixbufRenderer *pr, gint stereo_mode) +{ + gboolean redraw = !(pr->stereo_mode == stereo_mode) || pr->stereo_temp_disable; + pr->stereo_mode = stereo_mode; + if ((stereo_mode & PR_STEREO_TEMP_DISABLE) && pr->stereo_temp_disable) return; + + pr->stereo_temp_disable = FALSE; + + pr_stereo_set(pr); + + if (redraw) + { + pr_size_sync(pr, pr->window_width, pr->window_height); /* recalculate new viewport */ + pr_zoom_sync(pr, pr->zoom, PR_ZOOM_FORCE | PR_ZOOM_NEW, 0, 0); + } +} + +void pixbuf_renderer_stereo_fixed_set(PixbufRenderer *pr, gint width, gint height, gint x1, gint y1, gint x2, gint y2) +{ + pr->stereo_fixed_width = width; + pr->stereo_fixed_height = height; + pr->stereo_fixed_x_left = x1; + pr->stereo_fixed_y_left = y1; + pr->stereo_fixed_x_right = x2; + pr->stereo_fixed_y_right = y2; +} + +gint pixbuf_renderer_stereo_get(PixbufRenderer *pr) +{ + return pr->stereo_mode; +} + +static void pr_stereo_temp_disable(PixbufRenderer *pr, gboolean disable) +{ + if (pr->stereo_temp_disable == disable) return; + pr->stereo_temp_disable = disable; + if (disable) + { + if (!pr->renderer) pr->renderer = (void *)renderer_tiles_new(pr); + pr->renderer->stereo_set(pr->renderer, PR_STEREO_NONE); + if (pr->renderer2) pr->renderer2->free(pr->renderer2); + pr->renderer2 = NULL; + pr->aspect_ratio = 1.0; + } + else + { + pr_stereo_set(pr); + } + pr_size_sync(pr, pr->window_width, pr->window_height); /* recalculate new viewport */ +} + gboolean pixbuf_renderer_get_pixel_colors(PixbufRenderer *pr, gint x_pixel, gint y_pixel, gint *r_mouse, gint *g_mouse, gint *b_mouse) { @@ -4229,7 +2775,7 @@ if (!pb) return FALSE; - pr_tile_region_map_orientation(pr, + pr_tile_region_map_orientation(pr->orientation, x_pixel, y_pixel, pr->image_width, pr->image_height, 1, 1, /*single pixel */ @@ -4268,7 +2814,7 @@ } x_pixel = floor((gdouble)(pr->x_mouse - pr->x_offset + pr->x_scroll) / pr->scale); - y_pixel = floor((gdouble)(pr->y_mouse - pr->y_offset + pr->y_scroll) / pr->scale); + y_pixel = floor((gdouble)(pr->y_mouse - pr->y_offset + pr->y_scroll) / pr->scale / pr->aspect_ratio); x_pixel_clamped = CLAMP(x_pixel, 0, pr->image_width - 1); y_pixel_clamped = CLAMP(y_pixel, 0, pr->image_height - 1); @@ -4289,7 +2835,7 @@ g_return_val_if_fail(IS_PIXBUF_RENDERER(pr), FALSE); g_return_val_if_fail(width != NULL && height != NULL, FALSE); - if (!pr->pixbuf && !pr->source_tiles_enabled) + if (!pr->pixbuf && !pr->source_tiles_enabled && (!pr->image_width || !pr->image_height)) { *width = 0; *height = 0; @@ -4306,7 +2852,7 @@ g_return_val_if_fail(IS_PIXBUF_RENDERER(pr), FALSE); g_return_val_if_fail(width != NULL && height != NULL, FALSE); - if (!pr->pixbuf && !pr->source_tiles_enabled) + if (!pr->pixbuf && !pr->source_tiles_enabled && (!pr->image_width || !pr->image_height)) { *width = 0; *height = 0; @@ -4334,9 +2880,9 @@ } rect->x = (gint)((gdouble)pr->x_scroll / pr->scale); - rect->y = (gint)((gdouble)pr->y_scroll / pr->scale); + rect->y = (gint)((gdouble)pr->y_scroll / pr->scale / pr->aspect_ratio); rect->width = (gint)((gdouble)pr->vis_width / pr->scale); - rect->height = (gint)((gdouble)pr->vis_height / pr->scale); + rect->height = (gint)((gdouble)pr->vis_height / pr->scale / pr->aspect_ratio); return TRUE; } @@ -4360,4 +2906,23 @@ rect->height = pr->vis_height; return TRUE; } + +void pixbuf_renderer_set_size_early(PixbufRenderer *pr, guint width, guint height) +{ + gdouble zoom; + gint w, h; + + zoom = pixbuf_renderer_zoom_get(pr); + pr->image_width = width; + pr->image_height = height; + + pr_zoom_clamp(pr, zoom, PR_ZOOM_FORCE, NULL); + + //w = width; + //h = height; + + //pr->width = width; + //pr->height = height; +} + /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */ diff -Nru geeqie-1.0/src/pixbuf-renderer.h geeqie-1.1/src/pixbuf-renderer.h --- geeqie-1.0/src/pixbuf-renderer.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/pixbuf-renderer.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -24,6 +24,24 @@ #define IS_PIXBUF_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), TYPE_PIXBUF_RENDERER)) #define PIXBUF_RENDERER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), TYPE_PIXBUF_RENDERER, PixbufRendererClass)) +/* alpha channel checkerboard background (same as gimp) */ +#define PR_ALPHA_CHECK1 0x00999999 +#define PR_ALPHA_CHECK2 0x00666666 +#define PR_ALPHA_CHECK_SIZE 16 +/* when scaling image to below this size, use nearest pixel for scaling + * (below about 4, the other scale types become slow generating their conversion tables) + */ +#define PR_MIN_SCALE_SIZE 8 + +/* default size of tile cache (mb) */ +#define PR_CACHE_SIZE_DEFAULT 8 + +/* round A up/down to integer count of B */ +#define ROUND_UP(A,B) ((gint)(((A)+(B)-1)/(B))*(B)) +#define ROUND_DOWN(A,B) ((gint)(((A))/(B))*(B)) + + +typedef struct _RendererFuncs RendererFuncs; typedef struct _PixbufRenderer PixbufRenderer; typedef struct _PixbufRendererClass PixbufRendererClass; @@ -44,19 +62,58 @@ PR_SCROLL_RESET_COUNT, } PixbufRendererScrollResetType; +typedef enum { + TILE_RENDER_NONE = 0, /* do nothing */ + TILE_RENDER_AREA, /* render an area of the tile */ + TILE_RENDER_ALL /* render the whole tile */ +} ImageRenderType; + +typedef enum { + OVL_NORMAL = 0, + OVL_RELATIVE = 1 << 0, /* x,y coordinates are relative, negative values start bottom right */ + /* OVL_HIDE_ON_SCROLL = 1 << 1*/ /* hide temporarily when scrolling (not yet implemented) */ +} OverlayRendererFlags; + +struct _RendererFuncs +{ + void (*redraw)(void *renderer, gint x, gint y, gint w, gint h, + gint clamp, ImageRenderType render, gboolean new_data, gboolean only_existing); + void (*area_changed)(void *renderer, gint src_x, gint src_y, gint src_w, gint src_h); + void (*queue_clear)(void *renderer); + void (*border_clear)(void *renderer); + void (*invalidate_all)(void *renderer); + void (*invalidate_region)(void *renderer, gint x, gint y, gint w, gint h); + void (*scroll)(void *renderer, gint x_off, gint y_off); + void (*update_sizes)(void *renderer); + + gint (*overlay_add)(void *renderer, GdkPixbuf *pixbuf, gint x, gint y, OverlayRendererFlags flags); + void (*overlay_set)(void *renderer, gint id, GdkPixbuf *pixbuf, gint x, gint y); + gboolean (*overlay_get)(void *renderer, gint id, GdkPixbuf **pixbuf, gint *x, gint *y); + void (*overlay_draw)(void *renderer, gint x, gint y, gint w, gint h); + + void (*stereo_set)(void *renderer, gint stereo_mode); + + void (*free)(void *renderer); +}; + struct _PixbufRenderer { GtkEventBox eventbox; gint image_width; /* image actual dimensions (pixels) */ gint image_height; + gint stereo_pixbuf_offset_right; /* offset of the right part of the stereo image in pixbuf */ + gint stereo_pixbuf_offset_left; /* offset of the left part of the stereo image in pixbuf */ GdkPixbuf *pixbuf; gint window_width; /* allocated size of window (drawing area) */ gint window_height; - gint x_offset; /* offset of image start (non-zero when image < window) */ + gint viewport_width; /* allocated size of viewport (same as window for normal mode, half of window for SBS mode) */ + gint viewport_height; + + gint x_offset; /* offset of image start (non-zero when viewport < window) */ gint y_offset; gint x_mouse; /* coordinates of the mouse taken from GtkEvent */ @@ -82,6 +139,8 @@ gdouble zoom; /* zoom we want (0 is auto) */ gdouble scale; /* zoom we got (should never be 0) */ + gdouble aspect_ratio; /* screen pixel aspect ratio (2.0 for 3DTV SBS mode) */ + GdkInterpType zoom_quality; gboolean zoom_2pass; gboolean zoom_expand; @@ -102,20 +161,8 @@ gint autofit_limit_size; - gint tile_cache_max; /* max mb to use for offscreen buffer */ /*< private >*/ - - gint tile_width; - gint tile_height; - gint tile_cols; /* count of tile columns */ - GList *tiles; /* list of buffer tiles */ - gint tile_cache_size; /* allocated size of pixmaps/pixbufs */ - GList *draw_queue; /* list of areas to redraw */ - GList *draw_queue_2pass;/* list when 2 pass is enabled */ - - guint draw_idle_id; /* event source id */ - gboolean in_drag; gint drag_last_x; gint drag_last_y; @@ -151,12 +198,21 @@ gint scroller_xinc; gint scroller_yinc; - GList *overlay_list; - GdkPixmap *overlay_buffer; - - GdkPixbuf *spare_tile; - gint orientation; + + gint stereo_mode; + + StereoPixbufData stereo_data; + gboolean stereo_temp_disable; + gint stereo_fixed_width; + gint stereo_fixed_height; + gint stereo_fixed_x_left; + gint stereo_fixed_y_left; + gint stereo_fixed_x_right; + gint stereo_fixed_y_right; + + RendererFuncs *renderer; + RendererFuncs *renderer2; }; struct _PixbufRendererClass @@ -173,6 +229,8 @@ }; + + GType pixbuf_renderer_get_type(void); PixbufRenderer *pixbuf_renderer_new(void); @@ -185,7 +243,7 @@ void pixbuf_renderer_set_pixbuf(PixbufRenderer *pr, GdkPixbuf *pixbuf, gdouble zoom); /* same as pixbuf_renderer_set_pixbuf but waits with redrawing for pixbuf_renderer_area_changed */ -void pixbuf_renderer_set_pixbuf_lazy(PixbufRenderer *pr, GdkPixbuf *pixbuf, gdouble zoom, gint orientation); +void pixbuf_renderer_set_pixbuf_lazy(PixbufRenderer *pr, GdkPixbuf *pixbuf, gdouble zoom, gint orientation, StereoPixbufData stereo_data); GdkPixbuf *pixbuf_renderer_get_pixbuf(PixbufRenderer *pr); @@ -193,6 +251,9 @@ void pixbuf_renderer_set_orientation(PixbufRenderer *pr, gint orientation); gint pixbuf_renderer_get_orientation(PixbufRenderer *pr); +/* sets the format of stereo data in the input pixbuf */ +void pixbuf_renderer_set_stereo_data(PixbufRenderer *pr, StereoPixbufData stereo_data); + void pixbuf_renderer_set_post_process_func(PixbufRenderer *pr, PixbufRendererPostProcessFunc func, gpointer user_data, gboolean slow); /* display an on-request array of pixbuf tiles */ @@ -250,11 +311,6 @@ void pixbuf_renderer_set_color(PixbufRenderer *pr, GdkColor *color); /* overlay */ -typedef enum { - OVL_NORMAL = 0, - OVL_RELATIVE = 1 << 0, /* x,y coordinates are relative, negative values start bottom right */ - /* OVL_HIDE_ON_SCROLL = 1 << 1*/ /* hide temporarily when scrolling (not yet implemented) */ -} OverlayRendererFlags; gint pixbuf_renderer_overlay_add(PixbufRenderer *pr, GdkPixbuf *pixbuf, gint x, gint y, OverlayRendererFlags flags); @@ -265,7 +321,52 @@ gboolean pixbuf_renderer_get_mouse_position(PixbufRenderer *pr, gint *x_pixel, gint *y_pixel); /* x_pixel and y_pixel are the pixel coordinates \see pixbuf_renderer_get_mouse_position */ gboolean pixbuf_renderer_get_pixel_colors(PixbufRenderer *pr, gint x_pixel, gint y_pixel, - gint *r_mouse, gint *g_mouse, gint *b_mouse); + gint *r_mouse, gint *g_mouse, gint *b_mouse); + +void pixbuf_renderer_set_size_early(PixbufRenderer *pr, guint width, guint height); + +/* stereo */ +void pixbuf_renderer_stereo_set(PixbufRenderer *pr, gint stereo_mode); +gint pixbuf_renderer_stereo_get(PixbufRenderer *pr); +void pixbuf_renderer_stereo_fixed_set(PixbufRenderer *pr, gint width, gint height, gint x1, gint y1, gint x2, gint y2); + +/* protected - for renderer use only*/ + +typedef struct _SourceTile SourceTile; +struct _SourceTile +{ + gint x; + gint y; + GdkPixbuf *pixbuf; + gboolean blank; +}; + + +gboolean pr_clip_region(gint x, gint y, gint w, gint h, + gint clip_x, gint clip_y, gint clip_w, gint clip_h, + gint *rx, gint *ry, gint *rw, gint *rh); +void pr_render_complete_signal(PixbufRenderer *pr); + +void pr_tile_coords_map_orientation(gint orientation, + gdouble tile_x, gdouble tile_y, /* coordinates of the tile */ + gdouble image_w, gdouble image_h, + gdouble tile_w, gdouble tile_h, + gdouble *res_x, gdouble *res_y); +void pr_tile_region_map_orientation(gint orientation, + gint area_x, gint area_y, /* coordinates of the area inside tile */ + gint tile_w, gint tile_h, + gint area_w, gint area_h, + gint *res_x, gint *res_y, + gint *res_w, gint *res_h); +void pr_coords_map_orientation_reverse(gint orientation, + gint area_x, gint area_y, + gint tile_w, gint tile_h, + gint area_w, gint area_h, + gint *res_x, gint *res_y, + gint *res_w, gint *res_h); + +GList *pr_source_tile_compute_region(PixbufRenderer *pr, gint x, gint y, gint w, gint h, gboolean request); +void pr_create_anaglyph(guint mode, GdkPixbuf *pixbuf, GdkPixbuf *right, gint x, gint y, gint w, gint h); #endif /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */ diff -Nru geeqie-1.0/src/pixbuf_util.c geeqie-1.1/src/pixbuf_util.c --- geeqie-1.0/src/pixbuf_util.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/pixbuf_util.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/pixbuf_util.h geeqie-1.1/src/pixbuf_util.h --- geeqie-1.0/src/pixbuf_util.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/pixbuf_util.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/preferences.c geeqie-1.1/src/preferences.c --- geeqie-1.0/src/preferences.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/preferences.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -305,6 +305,27 @@ options->metadata.confirm_on_dir_change = c_options->metadata.confirm_on_dir_change; options->metadata.keywords_case_sensitive = c_options->metadata.keywords_case_sensitive; options->metadata.write_orientation = c_options->metadata.write_orientation; + options->stereo.mode = (c_options->stereo.mode & (PR_STEREO_HORIZ | PR_STEREO_VERT | PR_STEREO_FIXED | PR_STEREO_ANAGLYPH | PR_STEREO_HALF)) | + (c_options->stereo.tmp.mirror_right ? PR_STEREO_MIRROR_RIGHT : 0) | + (c_options->stereo.tmp.flip_right ? PR_STEREO_FLIP_RIGHT : 0) | + (c_options->stereo.tmp.mirror_left ? PR_STEREO_MIRROR_LEFT : 0) | + (c_options->stereo.tmp.flip_left ? PR_STEREO_FLIP_LEFT : 0) | + (c_options->stereo.tmp.swap ? PR_STEREO_SWAP : 0) | + (c_options->stereo.tmp.temp_disable ? PR_STEREO_TEMP_DISABLE : 0); + options->stereo.fsmode = (c_options->stereo.fsmode & (PR_STEREO_HORIZ | PR_STEREO_VERT | PR_STEREO_FIXED | PR_STEREO_ANAGLYPH | PR_STEREO_HALF)) | + (c_options->stereo.tmp.fs_mirror_right ? PR_STEREO_MIRROR_RIGHT : 0) | + (c_options->stereo.tmp.fs_flip_right ? PR_STEREO_FLIP_RIGHT : 0) | + (c_options->stereo.tmp.fs_mirror_left ? PR_STEREO_MIRROR_LEFT : 0) | + (c_options->stereo.tmp.fs_flip_left ? PR_STEREO_FLIP_LEFT : 0) | + (c_options->stereo.tmp.fs_swap ? PR_STEREO_SWAP : 0) | + (c_options->stereo.tmp.fs_temp_disable ? PR_STEREO_TEMP_DISABLE : 0); + options->stereo.enable_fsmode = c_options->stereo.enable_fsmode; + options->stereo.fixed_w = c_options->stereo.fixed_w; + options->stereo.fixed_h = c_options->stereo.fixed_h; + options->stereo.fixed_x1 = c_options->stereo.fixed_x1; + options->stereo.fixed_y1 = c_options->stereo.fixed_y1; + options->stereo.fixed_x2 = c_options->stereo.fixed_x2; + options->stereo.fixed_y2 = c_options->stereo.fixed_y2; #ifdef DEBUG set_debug_level(debug_c); @@ -528,6 +549,96 @@ gtk_widget_show(combo); } +static void stereo_mode_menu_cb(GtkWidget *combo, gpointer data) +{ + gint *option = data; + + switch (gtk_combo_box_get_active(GTK_COMBO_BOX(combo))) + { + case 0: + default: + *option = PR_STEREO_NONE; + break; + case 1: + *option = PR_STEREO_ANAGLYPH_RC; + break; + case 2: + *option = PR_STEREO_ANAGLYPH_GRAY; + break; + case 3: + *option = PR_STEREO_ANAGLYPH_DB; + break; + case 4: + *option = PR_STEREO_HORIZ; + break; + case 5: + *option = PR_STEREO_HORIZ | PR_STEREO_HALF; + break; + case 6: + *option = PR_STEREO_VERT; + break; + case 7: + *option = PR_STEREO_VERT | PR_STEREO_HALF; + break; + case 8: + *option = PR_STEREO_FIXED; + break; + } +} + +static void add_stereo_mode_menu(GtkWidget *table, gint column, gint row, const gchar *text, + guint option, guint *option_c, gboolean add_fixed) +{ + GtkWidget *combo; + gint current = 0; + + *option_c = option; + + pref_table_label(table, column, row, text, 0.0); + + combo = gtk_combo_box_new_text(); + + gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Single image")); + + gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Anaglyph Red-Cyan")); + if (option & PR_STEREO_ANAGLYPH_RC) current = 1; + gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Anaglyph Gray Red-Cyan")); + if (option & PR_STEREO_ANAGLYPH_GRAY) current = 2; + gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Anaglyph Dubois")); + if (option & PR_STEREO_ANAGLYPH_DB) current = 3; + + gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Side by Side")); + gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Side by Side Half size")); + if (option & PR_STEREO_HORIZ) + { + current = 4; + if (option & PR_STEREO_HALF) current = 5; + } + + gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Top - Bottom")); + gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Top - Bottom Half size")); + if (option & PR_STEREO_VERT) + { + current = 6; + if (option & PR_STEREO_HALF) current = 7; + } + + if (add_fixed) + { + gtk_combo_box_append_text(GTK_COMBO_BOX(combo), _("Fixed position")); + if (option & PR_STEREO_FIXED) current = 8; + } + + gtk_combo_box_set_active(GTK_COMBO_BOX(combo), current); + + g_signal_connect(G_OBJECT(combo), "changed", + G_CALLBACK(stereo_mode_menu_cb), option_c); + + gtk_table_attach(GTK_TABLE(table), combo, column + 1, column + 2, row, row + 1, + GTK_EXPAND | GTK_FILL, 0, 0, 0); + gtk_widget_show(combo); +} + static void filter_store_populate(void) { GList *work; @@ -1964,6 +2075,83 @@ #endif } +/* stereo tab */ +static void config_tab_stereo(GtkWidget *notebook) +{ + GtkWidget *vbox; + GtkWidget *group; + GtkWidget *group2; + GtkWidget *table; + GtkWidget *box; + GtkWidget *box2; + GtkWidget *fs_button; + vbox = scrolled_notebook_page(notebook, _("Stereo")); + + group = pref_group_new(vbox, FALSE, _("Windowed stereo mode"), GTK_ORIENTATION_VERTICAL); + + table = pref_table_new(group, 2, 1, FALSE, FALSE); + add_stereo_mode_menu(table, 0, 0, _("Windowed stereo mode"), options->stereo.mode, &c_options->stereo.mode, FALSE); + + table = pref_table_new(group, 2, 2, TRUE, FALSE); + box = pref_table_box(table, 0, 0, GTK_ORIENTATION_HORIZONTAL, NULL); + pref_checkbox_new_int(box, _("Mirror left image"), + options->stereo.mode & PR_STEREO_MIRROR_LEFT, &c_options->stereo.tmp.mirror_left); + box = pref_table_box(table, 1, 0, GTK_ORIENTATION_HORIZONTAL, NULL); + pref_checkbox_new_int(box, _("Flip left image"), + options->stereo.mode & PR_STEREO_FLIP_LEFT, &c_options->stereo.tmp.flip_left); + box = pref_table_box(table, 0, 1, GTK_ORIENTATION_HORIZONTAL, NULL); + pref_checkbox_new_int(box, _("Mirror right image"), + options->stereo.mode & PR_STEREO_MIRROR_RIGHT, &c_options->stereo.tmp.mirror_right); + box = pref_table_box(table, 1, 1, GTK_ORIENTATION_HORIZONTAL, NULL); + pref_checkbox_new_int(box, _("Flip right image"), + options->stereo.mode & PR_STEREO_FLIP_RIGHT, &c_options->stereo.tmp.flip_right); + pref_checkbox_new_int(group, _("Swap left and right images"), + options->stereo.mode & PR_STEREO_SWAP, &c_options->stereo.tmp.swap); + pref_checkbox_new_int(group, _("Disable stereo mode on single image source"), + options->stereo.mode & PR_STEREO_TEMP_DISABLE, &c_options->stereo.tmp.temp_disable); + + group = pref_group_new(vbox, FALSE, _("Fullscreen stereo mode"), GTK_ORIENTATION_VERTICAL); + fs_button = pref_checkbox_new_int(group, _("Use different settings for fullscreen"), + options->stereo.enable_fsmode, &c_options->stereo.enable_fsmode); + box2 = pref_box_new(group, FALSE, GTK_ORIENTATION_VERTICAL, PREF_PAD_SPACE); + pref_checkbox_link_sensitivity(fs_button, box2); + table = pref_table_new(box2, 2, 1, FALSE, FALSE); + add_stereo_mode_menu(table, 0, 0, _("Fullscreen stereo mode"), options->stereo.fsmode, &c_options->stereo.fsmode, TRUE); + table = pref_table_new(box2, 2, 2, TRUE, FALSE); + box = pref_table_box(table, 0, 0, GTK_ORIENTATION_HORIZONTAL, NULL); + pref_checkbox_new_int(box, _("Mirror left image"), + options->stereo.fsmode & PR_STEREO_MIRROR_LEFT, &c_options->stereo.tmp.fs_mirror_left); + box = pref_table_box(table, 1, 0, GTK_ORIENTATION_HORIZONTAL, NULL); + pref_checkbox_new_int(box, _("Flip left image"), + options->stereo.fsmode & PR_STEREO_FLIP_LEFT, &c_options->stereo.tmp.fs_flip_left); + box = pref_table_box(table, 0, 1, GTK_ORIENTATION_HORIZONTAL, NULL); + pref_checkbox_new_int(box, _("Mirror right image"), + options->stereo.fsmode & PR_STEREO_MIRROR_RIGHT, &c_options->stereo.tmp.fs_mirror_right); + box = pref_table_box(table, 1, 1, GTK_ORIENTATION_HORIZONTAL, NULL); + pref_checkbox_new_int(box, _("Flip right image"), + options->stereo.fsmode & PR_STEREO_FLIP_RIGHT, &c_options->stereo.tmp.fs_flip_right); + pref_checkbox_new_int(box2, _("Swap left and right images"), + options->stereo.fsmode & PR_STEREO_SWAP, &c_options->stereo.tmp.fs_swap); + pref_checkbox_new_int(box2, _("Disable stereo mode on single image source"), + options->stereo.fsmode & PR_STEREO_TEMP_DISABLE, &c_options->stereo.tmp.fs_temp_disable); + + group2 = pref_group_new(box2, FALSE, _("Fixed position"), GTK_ORIENTATION_VERTICAL); + table = pref_table_new(group2, 5, 3, FALSE, FALSE); + pref_table_spin_new_int(table, 0, 0, _("Width"), NULL, + 1, 5000, 1, options->stereo.fixed_w, &c_options->stereo.fixed_w); + pref_table_spin_new_int(table, 3, 0, _("Height"), NULL, + 1, 5000, 1, options->stereo.fixed_h, &c_options->stereo.fixed_h); + pref_table_spin_new_int(table, 0, 1, _("Left X"), NULL, + 0, 5000, 1, options->stereo.fixed_x1, &c_options->stereo.fixed_x1); + pref_table_spin_new_int(table, 3, 1, _("Left Y"), NULL, + 0, 5000, 1, options->stereo.fixed_y1, &c_options->stereo.fixed_y1); + pref_table_spin_new_int(table, 0, 2, _("Right X"), NULL, + 0, 5000, 1, options->stereo.fixed_x2, &c_options->stereo.fixed_x2); + pref_table_spin_new_int(table, 3, 2, _("Right Y"), NULL, + 0, 5000, 1, options->stereo.fixed_y2, &c_options->stereo.fixed_y2); + +} + /* Main preferences window */ static void config_window_create(void) { @@ -2036,6 +2224,7 @@ config_tab_files(notebook); config_tab_metadata(notebook); config_tab_color(notebook); + config_tab_stereo(notebook); config_tab_behavior(notebook); gtk_widget_show(notebook); @@ -2125,7 +2314,7 @@ buf = g_strdup_printf(_("%s %s\n\nCopyright (c) 2006 John Ellis\nCopyright (c) %s The Geeqie Team\nwebsite: %s\nemail: %s\n\nReleased under the GNU General Public License"), GQ_APPNAME, VERSION, - "2008 - 2010", + "2008 - 2012", GQ_WEBSITE, GQ_EMAIL_ADDRESS); label = gtk_label_new(buf); diff -Nru geeqie-1.0/src/preferences.h geeqie-1.1/src/preferences.h --- geeqie-1.0/src/preferences.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/preferences.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/print.c geeqie-1.1/src/print.c --- geeqie-1.0/src/print.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/print.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -1959,7 +1959,11 @@ GtkWidget *label; gchar *buf; +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_visible(pw->dialog->dialog)) parent = pw->dialog->dialog; +#else if (GTK_WIDGET_VISIBLE(pw->dialog->dialog)) parent = pw->dialog->dialog; +#endif gd = generic_dialog_new(_("Printing error"), "print_warning", parent, TRUE, NULL, NULL); @@ -2481,7 +2485,11 @@ pw->job_pixbuf = NULL; } +#if GTK_CHECK_VERSION(2,20,0) + if (pw->dialog && !gtk_widget_get_visible(pw->dialog->dialog)) +#else if (pw->dialog && !GTK_WIDGET_VISIBLE(pw->dialog->dialog)) +#endif { g_idle_add_full(G_PRIORITY_HIGH_IDLE, print_job_close_finish_cb, pw, NULL); } diff -Nru geeqie-1.0/src/print.h geeqie-1.1/src/print.h --- geeqie-1.0/src/print.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/print.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/rcfile.c geeqie-1.1/src/rcfile.c --- geeqie-1.0/src/rcfile.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/rcfile.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -442,6 +442,15 @@ WRITE_NL(); WRITE_BOOL(*options, metadata.keywords_case_sensitive); WRITE_NL(); WRITE_BOOL(*options, metadata.write_orientation); + WRITE_NL(); WRITE_UINT(*options, stereo.mode); + WRITE_NL(); WRITE_UINT(*options, stereo.fsmode); + WRITE_NL(); WRITE_BOOL(*options, stereo.enable_fsmode); + WRITE_NL(); WRITE_UINT(*options, stereo.fixed_w); + WRITE_NL(); WRITE_UINT(*options, stereo.fixed_h); + WRITE_NL(); WRITE_UINT(*options, stereo.fixed_x1); + WRITE_NL(); WRITE_UINT(*options, stereo.fixed_y1); + WRITE_NL(); WRITE_UINT(*options, stereo.fixed_x2); + WRITE_NL(); WRITE_UINT(*options, stereo.fixed_y2); } static void write_color_profile(GString *outstr, gint indent) @@ -703,6 +712,16 @@ if (READ_BOOL(*options, metadata.keywords_case_sensitive)) continue; if (READ_BOOL(*options, metadata.write_orientation)) continue; + if (READ_UINT(*options, stereo.mode)) continue; + if (READ_UINT(*options, stereo.fsmode)) continue; + if (READ_BOOL(*options, stereo.enable_fsmode)) continue; + if (READ_UINT(*options, stereo.fixed_w)) continue; + if (READ_UINT(*options, stereo.fixed_h)) continue; + if (READ_UINT(*options, stereo.fixed_x1)) continue; + if (READ_UINT(*options, stereo.fixed_y1)) continue; + if (READ_UINT(*options, stereo.fixed_x2)) continue; + if (READ_UINT(*options, stereo.fixed_y2)) continue; + log_printf("unknown attribute %s = %s\n", option, value); } diff -Nru geeqie-1.0/src/rcfile.h geeqie-1.1/src/rcfile.h --- geeqie-1.0/src/rcfile.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/rcfile.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/remote.c geeqie-1.1/src/remote.c --- geeqie-1.0/src/remote.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/remote.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -411,7 +411,7 @@ static void gr_slideshow_start_rec(const gchar *text, GIOChannel *channel, gpointer data) { GList *list; - FileData *dir_fd = file_data_new_simple(text); + FileData *dir_fd = file_data_new_dir(text); list = filelist_recursive(dir_fd); file_data_unref(dir_fd); if (!list) return; @@ -532,7 +532,7 @@ static void gr_get_sidecars(const gchar *text, GIOChannel *channel, gpointer data) { gchar *filename = expand_tilde(text); - FileData *fd = file_data_new_simple(filename); + FileData *fd = file_data_new_group(filename); GList *work; if (fd->parent) fd = fd->parent; @@ -555,7 +555,7 @@ static void gr_get_destination(const gchar *text, GIOChannel *channel, gpointer data) { gchar *filename = expand_tilde(text); - FileData *fd = file_data_new_simple(filename); + FileData *fd = file_data_new_group(filename); if (fd->change && fd->change->dest) { @@ -569,7 +569,7 @@ { gchar *filename = expand_tilde(text); - view_window_new(file_data_new_simple(filename)); + view_window_new(file_data_new_group(filename)); g_free(filename); } @@ -607,7 +607,7 @@ new = (!collection_get_first(remote_data->command_collection)); } - if (collection_add(remote_data->command_collection, file_data_new_simple(text), FALSE) && new) + if (collection_add(remote_data->command_collection, file_data_new_group(text), FALSE) && new) { layout_image_set_collection(NULL, remote_data->command_collection, collection_get_first(remote_data->command_collection)); @@ -736,6 +736,7 @@ } i++; } + printf_term(N_("\n All other command line parameters are used as plain files if they exists.\n")); } GList *remote_build_list(GList *list, gint argc, gchar *argv[], GList **errors) @@ -752,7 +753,7 @@ { list = g_list_append(list, argv[i]); } - else if (errors) + else if (errors && !isfile(argv[i])) { *errors = g_list_append(*errors, argv[i]); } @@ -762,6 +763,13 @@ return list; } +/** + * \param arg_exec Binary (argv0) + * \param remote_list Evaluated and recognized remote commands + * \param path The current path + * \param cmd_list List of all non collections in Path + * \param collection_list List of all collections in argv + */ void remote_control(const gchar *arg_exec, GList *remote_list, const gchar *path, GList *cmd_list, GList *collection_list) { diff -Nru geeqie-1.0/src/remote.h geeqie-1.1/src/remote.h --- geeqie-1.0/src/remote.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/remote.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/renderer-tiles.c geeqie-1.1/src/renderer-tiles.c --- geeqie-1.0/src/renderer-tiles.c 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/src/renderer-tiles.c 2012-08-12 20:13:41.000000000 +0000 @@ -0,0 +1,2157 @@ +/* + * Geeqie + * (C) 2006 John Ellis + * Copyright (C) 2008 - 2012 The Geeqie Team + * + * Author: John Ellis + * Author: Vladimir Nadvornik + * + * This software is released under the GNU General Public License (GNU GPL). + * Please read the included file COPYING for more information. + * This software comes with no warranty of any kind, use at your own risk! + */ + +#include +#include +#include +#include + +#include "main.h" +#include "pixbuf-renderer.h" +#include "renderer-tiles.h" + +#include "intl.h" +#include "layout.h" + +#include + + +/* comment this out if not using this from within Geeqie + * defining GQ_BUILD does these things: + * - Sets the shift-click scroller pixbuf to a nice icon instead of a black box + */ +#define GQ_BUILD 1 + +#ifdef GQ_BUILD +#include "main.h" +#include "pixbuf_util.h" +#include "exif.h" +#else +typedef enum { + EXIF_ORIENTATION_UNKNOWN = 0, + EXIF_ORIENTATION_TOP_LEFT = 1, + EXIF_ORIENTATION_TOP_RIGHT = 2, + EXIF_ORIENTATION_BOTTOM_RIGHT = 3, + EXIF_ORIENTATION_BOTTOM_LEFT = 4, + EXIF_ORIENTATION_LEFT_TOP = 5, + EXIF_ORIENTATION_RIGHT_TOP = 6, + EXIF_ORIENTATION_RIGHT_BOTTOM = 7, + EXIF_ORIENTATION_LEFT_BOTTOM = 8 +} ExifOrientationType; +#endif + + +/* size to use when breaking up image pane for rendering */ +#define PR_TILE_SIZE 128 + +typedef struct _ImageTile ImageTile; +typedef struct _QueueData QueueData; + +struct _ImageTile +{ + GdkPixmap *pixmap; /* off screen buffer */ + GdkPixbuf *pixbuf; /* pixbuf area for zooming */ + gint x; /* x offset into image */ + gint y; /* y offset into image */ + gint w; /* width that is visible (may be less if at edge of image) */ + gint h; /* height '' */ + + gboolean blank; + +/* render_todo: (explanation) + NONE do nothing + AREA render area of tile, usually only used when loading an image + note: will jump to an ALL if render_done is not ALL. + ALL render entire tile, if never done before w/ ALL, for expose events *only* +*/ + + ImageRenderType render_todo; /* what to do (see above) */ + ImageRenderType render_done; /* highest that has been done before on tile */ + + QueueData *qd; + QueueData *qd2; + + guint size; /* est. memory used by pixmap and pixbuf */ +}; + +struct _QueueData +{ + ImageTile *it; + gint x; + gint y; + gint w; + gint h; + gboolean new_data; +}; + +typedef struct _OverlayData OverlayData; +struct _OverlayData +{ + gint id; + + GdkPixbuf *pixbuf; + GdkWindow *window; + + gint x; + gint y; + + OverlayRendererFlags flags; +}; + +typedef struct _RendererTiles RendererTiles; + +struct _RendererTiles +{ + RendererFuncs f; + PixbufRenderer *pr; + + gint tile_cache_max; /* max mb to use for offscreen buffer */ + + gint tile_width; + gint tile_height; + gint tile_cols; /* count of tile columns */ + GList *tiles; /* list of buffer tiles */ + gint tile_cache_size; /* allocated size of pixmaps/pixbufs */ + GList *draw_queue; /* list of areas to redraw */ + GList *draw_queue_2pass;/* list when 2 pass is enabled */ + + GList *overlay_list; + GdkPixmap *overlay_buffer; + + guint draw_idle_id; /* event source id */ + + GdkPixbuf *spare_tile; + + gint stereo_mode; + gint stereo_off_x; + gint stereo_off_y; + + gint x_scroll; /* allow local adjustment and mirroring */ + gint y_scroll; + +}; + + + +static void rt_border_draw(RendererTiles *rt, gint x, gint y, gint w, gint h); +static void rt_overlay_draw(RendererTiles *rt, gint x, gint y, gint w, gint h, ImageTile *it); + + +static void rt_tile_free_all(RendererTiles *rt); +static void rt_tile_invalidate_region(RendererTiles *rt, gint x, gint y, gint w, gint h); +static gboolean rt_tile_is_visible(RendererTiles *rt, ImageTile *it); +static void rt_queue_clear(RendererTiles *rt); +static void rt_queue_merge(QueueData *parent, QueueData *qd); +static void rt_queue(RendererTiles *rt, gint x, gint y, gint w, gint h, + gint clamp, ImageRenderType render, gboolean new_data, gboolean only_existing); + +static void rt_hierarchy_changed_cb(GtkWidget *widget, GtkWidget *previous_toplevel, gpointer data); +static gint rt_queue_draw_idle_cb(gpointer data); +static void renderer_redraw(void *renderer, gint x, gint y, gint w, gint h, + gint clamp, ImageRenderType render, gboolean new_data, gboolean only_existing); + +#define GET_RIGHT_PIXBUF_OFFSET(rt) \ + (( (rt->stereo_mode & PR_STEREO_RIGHT) && !(rt->stereo_mode & PR_STEREO_SWAP)) || \ + (!(rt->stereo_mode & PR_STEREO_RIGHT) && (rt->stereo_mode & PR_STEREO_SWAP)) ? \ + rt->pr->stereo_pixbuf_offset_right : rt->pr->stereo_pixbuf_offset_left ) + +#define GET_LEFT_PIXBUF_OFFSET(rt) \ + ((!(rt->stereo_mode & PR_STEREO_RIGHT) && !(rt->stereo_mode & PR_STEREO_SWAP)) || \ + ( (rt->stereo_mode & PR_STEREO_RIGHT) && (rt->stereo_mode & PR_STEREO_SWAP)) ? \ + rt->pr->stereo_pixbuf_offset_right : rt->pr->stereo_pixbuf_offset_left ) + + +static void rt_sync_scroll(RendererTiles *rt) +{ + PixbufRenderer *pr = rt->pr; + + rt->x_scroll = (rt->stereo_mode & PR_STEREO_MIRROR) ? + pr->width - pr->vis_width - pr->x_scroll + : pr->x_scroll; + + rt->y_scroll = (rt->stereo_mode & PR_STEREO_FLIP) ? + pr->height - pr->vis_height - pr->y_scroll + : pr->y_scroll; +} + +/* + *------------------------------------------------------------------- + * borders + *------------------------------------------------------------------- + */ + +static void rt_border_draw(RendererTiles *rt, gint x, gint y, gint w, gint h) +{ + PixbufRenderer *pr = rt->pr; + GtkWidget *box; + gint rx, ry, rw, rh; + + box = GTK_WIDGET(pr); + + if (!box->window) return; + + if (!pr->pixbuf && !pr->source_tiles_enabled) + { + if (pr_clip_region(x, y, w, h, + 0, 0, + pr->viewport_width, pr->viewport_height, + &rx, &ry, &rw, &rh)) + { + gdk_window_clear_area(box->window, rx + rt->stereo_off_x, ry + rt->stereo_off_y, rw, rh); + rt_overlay_draw(rt, rx, ry, rw, rh, NULL); + } + return; + } + + if (pr->vis_width < pr->viewport_width) + { + if (pr->x_offset > 0 && + pr_clip_region(x, y, w, h, + 0, 0, + pr->x_offset, pr->viewport_height, + &rx, &ry, &rw, &rh)) + { + gdk_window_clear_area(box->window, rx + rt->stereo_off_x, ry + rt->stereo_off_y, rw, rh); + rt_overlay_draw(rt, rx, ry, rw, rh, NULL); + } + if (pr->viewport_width - pr->vis_width - pr->x_offset > 0 && + pr_clip_region(x, y, w, h, + pr->x_offset + pr->vis_width, 0, + pr->viewport_width - pr->vis_width - pr->x_offset, pr->viewport_height, + &rx, &ry, &rw, &rh)) + { + gdk_window_clear_area(box->window, rx + rt->stereo_off_x, ry + rt->stereo_off_y, rw, rh); + rt_overlay_draw(rt, rx, ry, rw, rh, NULL); + } + } + if (pr->vis_height < pr->viewport_height) + { + if (pr->y_offset > 0 && + pr_clip_region(x, y, w, h, + pr->x_offset, 0, + pr->vis_width, pr->y_offset, + &rx, &ry, &rw, &rh)) + { + gdk_window_clear_area(box->window, rx + rt->stereo_off_x, ry + rt->stereo_off_y, rw, rh); + rt_overlay_draw(rt, rx, ry, rw, rh, NULL); + } + if (pr->viewport_height - pr->vis_height - pr->y_offset > 0 && + pr_clip_region(x, y, w, h, + pr->x_offset, pr->y_offset + pr->vis_height, + pr->vis_width, pr->viewport_height - pr->vis_height - pr->y_offset, + &rx, &ry, &rw, &rh)) + { + gdk_window_clear_area(box->window, rx + rt->stereo_off_x, ry + rt->stereo_off_y, rw, rh); + rt_overlay_draw(rt, rx, ry, rw, rh, NULL); + } + } +} + +static void rt_border_clear(RendererTiles *rt) +{ + PixbufRenderer *pr = rt->pr; + rt_border_draw(rt, 0, 0, pr->viewport_width, pr->viewport_height); +} + + +/* + *------------------------------------------------------------------- + * display tiles + *------------------------------------------------------------------- + */ + +static ImageTile *rt_tile_new(gint x, gint y, gint width, gint height) +{ + ImageTile *it; + + it = g_new0(ImageTile, 1); + + it->x = x; + it->y = y; + it->w = width; + it->h = height; + + it->render_done = TILE_RENDER_NONE; + + return it; +} + +static void rt_tile_free(ImageTile *it) +{ + if (!it) return; + + if (it->pixbuf) g_object_unref(it->pixbuf); + if (it->pixmap) g_object_unref(it->pixmap); + + g_free(it); +} + +static void rt_tile_free_all(RendererTiles *rt) +{ + GList *work; + + work = rt->tiles; + while (work) + { + ImageTile *it; + + it = work->data; + work = work->next; + + rt_tile_free(it); + } + + g_list_free(rt->tiles); + rt->tiles = NULL; + rt->tile_cache_size = 0; +} + +static ImageTile *rt_tile_add(RendererTiles *rt, gint x, gint y) +{ + PixbufRenderer *pr = rt->pr; + ImageTile *it; + + it = rt_tile_new(x, y, rt->tile_width, rt->tile_height); + + if (it->x + it->w > pr->width) it->w = pr->width - it->x; + if (it->y + it->h > pr->height) it->h = pr->height - it->y; + + rt->tiles = g_list_prepend(rt->tiles, it); + rt->tile_cache_size += it->size; + + return it; +} + +static void rt_tile_remove(RendererTiles *rt, ImageTile *it) +{ + if (it->qd) + { + QueueData *qd = it->qd; + + it->qd = NULL; + rt->draw_queue = g_list_remove(rt->draw_queue, qd); + g_free(qd); + } + + if (it->qd2) + { + QueueData *qd = it->qd2; + + it->qd2 = NULL; + rt->draw_queue_2pass = g_list_remove(rt->draw_queue_2pass, qd); + g_free(qd); + } + + rt->tiles = g_list_remove(rt->tiles, it); + rt->tile_cache_size -= it->size; + + rt_tile_free(it); +} + +static void rt_tile_free_space(RendererTiles *rt, guint space, ImageTile *it) +{ + PixbufRenderer *pr = rt->pr; + GList *work; + guint tile_max; + + work = g_list_last(rt->tiles); + + if (pr->source_tiles_enabled && pr->scale < 1.0) + { + gint tiles; + + tiles = (pr->vis_width / rt->tile_width + 1) * (pr->vis_height / rt->tile_height + 1); + tile_max = MAX(tiles * rt->tile_width * rt->tile_height * 3, + (gint)((gdouble)rt->tile_cache_max * 1048576.0 * pr->scale)); + } + else + { + tile_max = rt->tile_cache_max * 1048576; + } + + while (work && rt->tile_cache_size + space > tile_max) + { + ImageTile *needle; + + needle = work->data; + work = work->prev; + if (needle != it && + ((!needle->qd && !needle->qd2) || !rt_tile_is_visible(rt, needle))) rt_tile_remove(rt, needle); + } +} + +static void rt_tile_invalidate_all(RendererTiles *rt) +{ + PixbufRenderer *pr = rt->pr; + GList *work; + + work = rt->tiles; + while (work) + { + ImageTile *it; + + it = work->data; + work = work->next; + + it->render_done = TILE_RENDER_NONE; + it->render_todo = TILE_RENDER_ALL; + it->blank = FALSE; + + it->w = MIN(rt->tile_width, pr->width - it->x); + it->h = MIN(rt->tile_height, pr->height - it->y); + } +} + +static void rt_tile_invalidate_region(RendererTiles *rt, gint x, gint y, gint w, gint h) +{ + gint x1, x2; + gint y1, y2; + GList *work; + + x1 = ROUND_DOWN(x, rt->tile_width); + x2 = ROUND_UP(x + w, rt->tile_width); + + y1 = ROUND_DOWN(y, rt->tile_height); + y2 = ROUND_UP(y + h, rt->tile_height); + + work = rt->tiles; + while (work) + { + ImageTile *it; + + it = work->data; + work = work->next; + + if (it->x < x2 && it->x + it->w > x1 && + it->y < y2 && it->y + it->h > y1) + { + it->render_done = TILE_RENDER_NONE; + it->render_todo = TILE_RENDER_ALL; + } + } +} + +static ImageTile *rt_tile_get(RendererTiles *rt, gint x, gint y, gboolean only_existing) +{ + GList *work; + + work = rt->tiles; + while (work) + { + ImageTile *it; + + it = work->data; + if (it->x == x && it->y == y) + { + rt->tiles = g_list_delete_link(rt->tiles, work); + rt->tiles = g_list_prepend(rt->tiles, it); + return it; + } + + work = work->next; + } + + if (only_existing) return NULL; + + return rt_tile_add(rt, x, y); +} + +static gint pixmap_calc_size(GdkPixmap *pixmap) +{ + gint w, h, d; + + d = gdk_drawable_get_depth(pixmap); + gdk_drawable_get_size(pixmap, &w, &h); + return w * h * (d / 8); +} + +static void rt_tile_prepare(RendererTiles *rt, ImageTile *it) +{ + PixbufRenderer *pr = rt->pr; + if (!it->pixmap) + { + GdkPixmap *pixmap; + guint size; + + pixmap = gdk_pixmap_new(((GtkWidget *)pr)->window, rt->tile_width, rt->tile_height, -1); + + size = pixmap_calc_size(pixmap); + rt_tile_free_space(rt, size, it); + + it->pixmap = pixmap; + it->size += size; + rt->tile_cache_size += size; + } + + if (!it->pixbuf) + { + GdkPixbuf *pixbuf; + guint size; + pixbuf = gdk_pixbuf_new(GDK_COLORSPACE_RGB, FALSE, 8, rt->tile_width, rt->tile_height); + + size = gdk_pixbuf_get_rowstride(pixbuf) * rt->tile_height; + rt_tile_free_space(rt, size, it); + + it->pixbuf = pixbuf; + it->size += size; + rt->tile_cache_size += size; + } +} + +/* + *------------------------------------------------------------------- + * overlays + *------------------------------------------------------------------- + */ + +static void rt_overlay_get_position(RendererTiles *rt, OverlayData *od, + gint *x, gint *y, gint *w, gint *h) +{ + PixbufRenderer *pr = rt->pr; + gint px, py, pw, ph; + + pw = gdk_pixbuf_get_width(od->pixbuf); + ph = gdk_pixbuf_get_height(od->pixbuf); + px = od->x; + py = od->y; + + if (od->flags & OVL_RELATIVE) + { + if (px < 0) px = pr->viewport_width - pw + px; + if (py < 0) py = pr->viewport_height - ph + py; + } + + if (x) *x = px; + if (y) *y = py; + if (w) *w = pw; + if (h) *h = ph; +} + +static void rt_overlay_init_window(RendererTiles *rt, OverlayData *od) +{ + PixbufRenderer *pr = rt->pr; + gint px, py, pw, ph; + GdkWindowAttr attributes; + gint attributes_mask; + + rt_overlay_get_position(rt, od, &px, &py, &pw, &ph); + + attributes.window_type = GDK_WINDOW_CHILD; + attributes.wclass = GDK_INPUT_OUTPUT; + attributes.width = pw; + attributes.height = ph; + attributes.event_mask = GDK_EXPOSURE_MASK; + attributes_mask = 0; + + od->window = gdk_window_new(GTK_WIDGET(pr)->window, &attributes, attributes_mask); + gdk_window_set_user_data(od->window, pr); + gdk_window_move(od->window, px + rt->stereo_off_x, py + rt->stereo_off_y); + gdk_window_show(od->window); +} + +static void rt_overlay_draw(RendererTiles *rt, gint x, gint y, gint w, gint h, + ImageTile *it) +{ + PixbufRenderer *pr = rt->pr; + GtkWidget *box; + GList *work; + + box = GTK_WIDGET(pr); + + work = rt->overlay_list; + while (work) + { + OverlayData *od; + gint px, py, pw, ph; + gint rx, ry, rw, rh; + + od = work->data; + work = work->next; + + if (!od->window) rt_overlay_init_window(rt, od); + + rt_overlay_get_position(rt, od, &px, &py, &pw, &ph); + if (pr_clip_region(x, y, w, h, px, py, pw, ph, &rx, &ry, &rw, &rh)) + { + if (!rt->overlay_buffer) + { + rt->overlay_buffer = gdk_pixmap_new(((GtkWidget *)pr)->window, rt->tile_width, rt->tile_height, -1); + } + + if (it) + { +#if GTK_CHECK_VERSION(2,20,0) + gdk_draw_drawable(rt->overlay_buffer, box->style->fg_gc[gtk_widget_get_state(box)], +#else + gdk_draw_drawable(rt->overlay_buffer, box->style->fg_gc[GTK_WIDGET_STATE(box)], +#endif + it->pixmap, + rx - (pr->x_offset + (it->x - rt->x_scroll)), + ry - (pr->y_offset + (it->y - rt->y_scroll)), + 0, 0, rw, rh); + gdk_draw_pixbuf(rt->overlay_buffer, +#if GTK_CHECK_VERSION(2,20,0) + box->style->fg_gc[gtk_widget_get_state(box)], +#else + box->style->fg_gc[GTK_WIDGET_STATE(box)], +#endif + od->pixbuf, + rx - px, ry - py, + 0, 0, rw, rh, + pr->dither_quality, rx, ry); +#if GTK_CHECK_VERSION(2,20,0) + gdk_draw_drawable(od->window, box->style->fg_gc[gtk_widget_get_state(box)], +#else + gdk_draw_drawable(od->window, box->style->fg_gc[GTK_WIDGET_STATE(box)], +#endif + rt->overlay_buffer, + 0, 0, + rx - px, ry - py, rw, rh); + } + else + { + /* no ImageTile means region may be larger than our scratch buffer */ + gint sx, sy; + + for (sx = rx; sx < rx + rw; sx += rt->tile_width) + for (sy = ry; sy < ry + rh; sy += rt->tile_height) + { + gint sw, sh; + + sw = MIN(rx + rw - sx, rt->tile_width); + sh = MIN(ry + rh - sy, rt->tile_height); + + gdk_draw_rectangle(rt->overlay_buffer, +#if GTK_CHECK_VERSION(2,20,0) + box->style->bg_gc[gtk_widget_get_state(box)], TRUE, +#else + box->style->bg_gc[GTK_WIDGET_STATE(box)], TRUE, +#endif + 0, 0, sw, sh); + gdk_draw_pixbuf(rt->overlay_buffer, +#if GTK_CHECK_VERSION(2,20,0) + box->style->fg_gc[gtk_widget_get_state(box)], +#else + box->style->fg_gc[GTK_WIDGET_STATE(box)], +#endif + od->pixbuf, + sx - px, sy - py, + 0, 0, sw, sh, + pr->dither_quality, sx, sy); +#if GTK_CHECK_VERSION(2,20,0) + gdk_draw_drawable(od->window, box->style->fg_gc[gtk_widget_get_state(box)], +#else + gdk_draw_drawable(od->window, box->style->fg_gc[GTK_WIDGET_STATE(box)], +#endif + rt->overlay_buffer, + 0, 0, + sx - px, sy - py, sw, sh); + } + } + } + } +} + +static void rt_overlay_queue_draw(RendererTiles *rt, OverlayData *od, gint x1, gint y1, gint x2, gint y2) +{ + PixbufRenderer *pr = rt->pr; + gint x, y, w, h; + + rt_overlay_get_position(rt, od, &x, &y, &w, &h); + + /* add borders */ + x -= x1; + y -= y1; + w += x1 + x2; + h += y1 + y2; + + rt_queue(rt, rt->x_scroll - pr->x_offset + x, + rt->y_scroll - pr->y_offset + y, + w, h, + FALSE, TILE_RENDER_ALL, FALSE, FALSE); + + rt_border_draw(rt, x, y, w, h); +} + +static void rt_overlay_queue_all(RendererTiles *rt, gint x1, gint y1, gint x2, gint y2) +{ + GList *work; + + work = rt->overlay_list; + while (work) + { + OverlayData *od = work->data; + work = work->next; + + rt_overlay_queue_draw(rt, od, x1, y1, x2, y2); + } +} + +static void rt_overlay_update_sizes(RendererTiles *rt) +{ + GList *work; + + work = rt->overlay_list; + while (work) + { + OverlayData *od = work->data; + work = work->next; + + if (!od->window) rt_overlay_init_window(rt, od); + + if (od->flags & OVL_RELATIVE) + { + gint x, y, w, h; + + rt_overlay_get_position(rt, od, &x, &y, &w, &h); + gdk_window_move_resize(od->window, x + rt->stereo_off_x, y + rt->stereo_off_y, w, h); + } + } +} + +static OverlayData *rt_overlay_find(RendererTiles *rt, gint id) +{ + GList *work; + + work = rt->overlay_list; + while (work) + { + OverlayData *od = work->data; + work = work->next; + + if (od->id == id) return od; + } + + return NULL; +} + + +gint renderer_tiles_overlay_add(RendererTiles *rt, GdkPixbuf *pixbuf, gint x, gint y, + OverlayRendererFlags flags) +{ + PixbufRenderer *pr = rt->pr; + OverlayData *od; + gint id; + + g_return_val_if_fail(IS_PIXBUF_RENDERER(pr), -1); + g_return_val_if_fail(pixbuf != NULL, -1); + + id = 1; + while (rt_overlay_find(rt, id)) id++; + + od = g_new0(OverlayData, 1); + od->id = id; + od->pixbuf = pixbuf; + g_object_ref(G_OBJECT(od->pixbuf)); + od->x = x; + od->y = y; + od->flags = flags; + + rt_overlay_init_window(rt, od); + + rt->overlay_list = g_list_append(rt->overlay_list, od); + + rt_overlay_queue_draw(rt, od, 0, 0, 0, 0); + + return od->id; +} + +static void rt_overlay_free(RendererTiles *rt, OverlayData *od) +{ + rt->overlay_list = g_list_remove(rt->overlay_list, od); + + if (od->pixbuf) g_object_unref(G_OBJECT(od->pixbuf)); + if (od->window) gdk_window_destroy(od->window); + g_free(od); + + if (!rt->overlay_list && rt->overlay_buffer) + { + g_object_unref(rt->overlay_buffer); + rt->overlay_buffer = NULL; + } +} + +static void rt_overlay_list_clear(RendererTiles *rt) +{ + while (rt->overlay_list) + { + OverlayData *od; + + od = rt->overlay_list->data; + rt_overlay_free(rt, od); + } +} + +static void rt_overlay_list_reset_window(RendererTiles *rt) +{ + GList *work; + + if (rt->overlay_buffer) g_object_unref(rt->overlay_buffer); + rt->overlay_buffer = NULL; + + work = rt->overlay_list; + while (work) + { + OverlayData *od = work->data; + work = work->next; + if (od->window) gdk_window_destroy(od->window); + od->window = NULL; + } +} + +void renderer_tiles_overlay_set(RendererTiles *rt, gint id, GdkPixbuf *pixbuf, gint x, gint y) +{ + PixbufRenderer *pr = rt->pr; + OverlayData *od; + + g_return_if_fail(IS_PIXBUF_RENDERER(pr)); + + od = rt_overlay_find(rt, id); + if (!od) return; + + if (pixbuf) + { + gint px, py, pw, ph; + + g_object_ref(G_OBJECT(pixbuf)); + g_object_unref(G_OBJECT(od->pixbuf)); + od->pixbuf = pixbuf; + + od->x = x; + od->y = y; + + if (!od->window) rt_overlay_init_window(rt, od); + + rt_overlay_queue_draw(rt, od, 0, 0, 0, 0); + rt_overlay_get_position(rt, od, &px, &py, &pw, &ph); + gdk_window_move_resize(od->window, px + rt->stereo_off_x, py + rt->stereo_off_y, pw, ph); + } + else + { + rt_overlay_queue_draw(rt, od, 0, 0, 0, 0); + rt_overlay_free(rt, od); + } +} + +gboolean renderer_tiles_overlay_get(RendererTiles *rt, gint id, GdkPixbuf **pixbuf, gint *x, gint *y) +{ + PixbufRenderer *pr = rt->pr; + OverlayData *od; + + g_return_val_if_fail(IS_PIXBUF_RENDERER(pr), FALSE); + + od = rt_overlay_find(rt, id); + if (!od) return FALSE; + + if (pixbuf) *pixbuf = od->pixbuf; + if (x) *x = od->x; + if (y) *y = od->y; + + return TRUE; +} + +static void rt_hierarchy_changed_cb(GtkWidget *widget, GtkWidget *previous_toplevel, gpointer data) +{ + RendererTiles *rt = data; + rt_overlay_list_reset_window(rt); +} + +/* + *------------------------------------------------------------------- + * drawing + *------------------------------------------------------------------- + */ + +static GdkPixbuf *rt_get_spare_tile(RendererTiles *rt) +{ + if (!rt->spare_tile) rt->spare_tile = gdk_pixbuf_new(GDK_COLORSPACE_RGB, FALSE, 8, rt->tile_width, rt->tile_height); + return rt->spare_tile; +} + +#define COLOR_BYTES 3 /* rgb */ + +static void rt_tile_rotate_90_clockwise(RendererTiles *rt, GdkPixbuf **tile, gint x, gint y, gint w, gint h) +{ + GdkPixbuf *src = *tile; + GdkPixbuf *dest; + gint srs, drs; + guchar *s_pix, *d_pix; + guchar *sp, *dp; + guchar *ip, *spi, *dpi; + gint i, j; + gint tw = rt->tile_width; + + srs = gdk_pixbuf_get_rowstride(src); + s_pix = gdk_pixbuf_get_pixels(src); + spi = s_pix + (x * COLOR_BYTES); + + dest = rt_get_spare_tile(rt); + drs = gdk_pixbuf_get_rowstride(dest); + d_pix = gdk_pixbuf_get_pixels(dest); + dpi = d_pix + (tw - 1) * COLOR_BYTES; + + for (i = y; i < y + h; i++) + { + sp = spi + (i * srs); + ip = dpi - (i * COLOR_BYTES); + for (j = x; j < x + w; j++) + { + dp = ip + (j * drs); + memcpy(dp, sp, COLOR_BYTES); + sp += COLOR_BYTES; + } + } + + rt->spare_tile = src; + *tile = dest; +} + +static void rt_tile_rotate_90_counter_clockwise(RendererTiles *rt, GdkPixbuf **tile, gint x, gint y, gint w, gint h) +{ + GdkPixbuf *src = *tile; + GdkPixbuf *dest; + gint srs, drs; + guchar *s_pix, *d_pix; + guchar *sp, *dp; + guchar *ip, *spi, *dpi; + gint i, j; + gint th = rt->tile_height; + + srs = gdk_pixbuf_get_rowstride(src); + s_pix = gdk_pixbuf_get_pixels(src); + spi = s_pix + (x * COLOR_BYTES); + + dest = rt_get_spare_tile(rt); + drs = gdk_pixbuf_get_rowstride(dest); + d_pix = gdk_pixbuf_get_pixels(dest); + dpi = d_pix + (th - 1) * drs; + + for (i = y; i < y + h; i++) + { + sp = spi + (i * srs); + ip = dpi + (i * COLOR_BYTES); + for (j = x; j < x + w; j++) + { + dp = ip - (j * drs); + memcpy(dp, sp, COLOR_BYTES); + sp += COLOR_BYTES; + } + } + + rt->spare_tile = src; + *tile = dest; +} + +static void rt_tile_mirror_only(RendererTiles *rt, GdkPixbuf **tile, gint x, gint y, gint w, gint h) +{ + GdkPixbuf *src = *tile; + GdkPixbuf *dest; + gint srs, drs; + guchar *s_pix, *d_pix; + guchar *sp, *dp; + guchar *spi, *dpi; + gint i, j; + + gint tw = rt->tile_width; + + srs = gdk_pixbuf_get_rowstride(src); + s_pix = gdk_pixbuf_get_pixels(src); + spi = s_pix + (x * COLOR_BYTES); + + dest = rt_get_spare_tile(rt); + drs = gdk_pixbuf_get_rowstride(dest); + d_pix = gdk_pixbuf_get_pixels(dest); + dpi = d_pix + (tw - x - 1) * COLOR_BYTES; + + for (i = y; i < y + h; i++) + { + sp = spi + (i * srs); + dp = dpi + (i * drs); + for (j = 0; j < w; j++) + { + memcpy(dp, sp, COLOR_BYTES); + sp += COLOR_BYTES; + dp -= COLOR_BYTES; + } + } + + rt->spare_tile = src; + *tile = dest; +} + +static void rt_tile_mirror_and_flip(RendererTiles *rt, GdkPixbuf **tile, gint x, gint y, gint w, gint h) +{ + GdkPixbuf *src = *tile; + GdkPixbuf *dest; + gint srs, drs; + guchar *s_pix, *d_pix; + guchar *sp, *dp; + guchar *spi, *dpi; + gint i, j; + gint tw = rt->tile_width; + gint th = rt->tile_height; + + srs = gdk_pixbuf_get_rowstride(src); + s_pix = gdk_pixbuf_get_pixels(src); + spi = s_pix + (x * COLOR_BYTES); + + dest = rt_get_spare_tile(rt); + drs = gdk_pixbuf_get_rowstride(dest); + d_pix = gdk_pixbuf_get_pixels(dest); + dpi = d_pix + (th - 1) * drs + (tw - 1) * COLOR_BYTES; + + for (i = y; i < y + h; i++) + { + sp = s_pix + (i * srs) + (x * COLOR_BYTES); + dp = dpi - (i * drs) - (x * COLOR_BYTES); + for (j = 0; j < w; j++) + { + memcpy(dp, sp, COLOR_BYTES); + sp += COLOR_BYTES; + dp -= COLOR_BYTES; + } + } + + rt->spare_tile = src; + *tile = dest; +} + +static void rt_tile_flip_only(RendererTiles *rt, GdkPixbuf **tile, gint x, gint y, gint w, gint h) +{ + GdkPixbuf *src = *tile; + GdkPixbuf *dest; + gint srs, drs; + guchar *s_pix, *d_pix; + guchar *sp, *dp; + guchar *spi, *dpi; + gint i; + gint th = rt->tile_height; + + srs = gdk_pixbuf_get_rowstride(src); + s_pix = gdk_pixbuf_get_pixels(src); + spi = s_pix + (x * COLOR_BYTES); + + dest = rt_get_spare_tile(rt); + drs = gdk_pixbuf_get_rowstride(dest); + d_pix = gdk_pixbuf_get_pixels(dest); + dpi = d_pix + (th - 1) * drs + (x * COLOR_BYTES); + + for (i = y; i < y + h; i++) + { + sp = spi + (i * srs); + dp = dpi - (i * drs); + memcpy(dp, sp, w * COLOR_BYTES); + } + + rt->spare_tile = src; + *tile = dest; +} + +static void rt_tile_apply_orientation(RendererTiles *rt, gint orientation, GdkPixbuf **pixbuf, gint x, gint y, gint w, gint h) +{ + switch (orientation) + { + case EXIF_ORIENTATION_TOP_LEFT: + /* normal -- nothing to do */ + break; + case EXIF_ORIENTATION_TOP_RIGHT: + /* mirrored */ + { + rt_tile_mirror_only(rt, pixbuf, x, y, w, h); + } + break; + case EXIF_ORIENTATION_BOTTOM_RIGHT: + /* upside down */ + { + rt_tile_mirror_and_flip(rt, pixbuf, x, y, w, h); + } + break; + case EXIF_ORIENTATION_BOTTOM_LEFT: + /* flipped */ + { + rt_tile_flip_only(rt, pixbuf, x, y, w, h); + } + break; + case EXIF_ORIENTATION_LEFT_TOP: + { + rt_tile_flip_only(rt, pixbuf, x, y, w, h); + rt_tile_rotate_90_clockwise(rt, pixbuf, x, rt->tile_height - y - h, w, h); + } + break; + case EXIF_ORIENTATION_RIGHT_TOP: + /* rotated -90 (270) */ + { + rt_tile_rotate_90_clockwise(rt, pixbuf, x, y, w, h); + } + break; + case EXIF_ORIENTATION_RIGHT_BOTTOM: + { + rt_tile_flip_only(rt, pixbuf, x, y, w, h); + rt_tile_rotate_90_counter_clockwise(rt, pixbuf, x, rt->tile_height - y - h, w, h); + } + break; + case EXIF_ORIENTATION_LEFT_BOTTOM: + /* rotated 90 */ + { + rt_tile_rotate_90_counter_clockwise(rt, pixbuf, x, y, w, h); + } + break; + default: + /* The other values are out of range */ + break; + } +} + +static gboolean rt_source_tile_render(RendererTiles *rt, ImageTile *it, + gint x, gint y, gint w, gint h, + gboolean new_data, gboolean fast) +{ + PixbufRenderer *pr = rt->pr; + GtkWidget *box; + GList *list; + GList *work; + gboolean draw = FALSE; + + box = GTK_WIDGET(pr); + + if (pr->zoom == 1.0 || pr->scale == 1.0) + { + list = pr_source_tile_compute_region(pr, it->x + x, it->y + y, w, h, TRUE); + work = list; + while (work) + { + SourceTile *st; + gint rx, ry, rw, rh; + + st = work->data; + work = work->next; + + if (pr_clip_region(st->x, st->y, pr->source_tile_width, pr->source_tile_height, + it->x + x, it->y + y, w, h, + &rx, &ry, &rw, &rh)) + { + if (st->blank) + { + gdk_draw_rectangle(it->pixmap, box->style->black_gc, TRUE, + rx - st->x, ry - st->y, rw, rh); + } + else /* (pr->zoom == 1.0 || pr->scale == 1.0) */ + { + gdk_draw_pixbuf(it->pixmap, +#if GTK_CHECK_VERSION(2,20,0) + box->style->fg_gc[gtk_widget_get_state(box)], +#else + box->style->fg_gc[GTK_WIDGET_STATE(box)], +#endif + st->pixbuf, + rx - st->x, ry - st->y, + rx - it->x, ry - it->y, + rw, rh, + pr->dither_quality, rx, ry); + } + } + } + } + else + { + gdouble scale_x, scale_y; + gint sx, sy, sw, sh; + + if (pr->image_width == 0 || pr->image_height == 0) return FALSE; + scale_x = (gdouble)pr->width / pr->image_width; + scale_y = (gdouble)pr->height / pr->image_height; + + sx = (gdouble)(it->x + x) / scale_x; + sy = (gdouble)(it->y + y) / scale_y; + sw = (gdouble)w / scale_x; + sh = (gdouble)h / scale_y; + + if (pr->width < PR_MIN_SCALE_SIZE || pr->height < PR_MIN_SCALE_SIZE) fast = TRUE; + +#if 0 + /* draws red over draw region, to check for leaks (regions not filled) */ + pixbuf_set_rect_fill(it->pixbuf, x, y, w, h, 255, 0, 0, 255); +#endif + + list = pr_source_tile_compute_region(pr, sx, sy, sw, sh, TRUE); + work = list; + while (work) + { + SourceTile *st; + gint rx, ry, rw, rh; + gint stx, sty, stw, sth; + + st = work->data; + work = work->next; + + stx = floor((gdouble)st->x * scale_x); + sty = floor((gdouble)st->y * scale_y); + stw = ceil((gdouble)(st->x + pr->source_tile_width) * scale_x) - stx; + sth = ceil((gdouble)(st->y + pr->source_tile_height) * scale_y) - sty; + + if (pr_clip_region(stx, sty, stw, sth, + it->x + x, it->y + y, w, h, + &rx, &ry, &rw, &rh)) + { + if (st->blank) + { + gdk_draw_rectangle(it->pixmap, box->style->black_gc, TRUE, + rx - st->x, ry - st->y, rw, rh); + } + else + { + gdouble offset_x; + gdouble offset_y; + + /* may need to use unfloored stx,sty values here */ + offset_x = (gdouble)(stx - it->x); + offset_y = (gdouble)(sty - it->y); + + gdk_pixbuf_scale(st->pixbuf, it->pixbuf, rx - it->x, ry - it->y, rw, rh, + (gdouble) 0.0 + offset_x, + (gdouble) 0.0 + offset_y, + scale_x, scale_y, + (fast) ? GDK_INTERP_NEAREST : pr->zoom_quality); + draw = TRUE; + } + } + } + } + + g_list_free(list); + + return draw; +} + +static void rt_tile_get_region(gboolean has_alpha, + const GdkPixbuf *src, GdkPixbuf *dest, + int pb_x, int pb_y, int pb_w, int pb_h, + double offset_x, double offset_y, double scale_x, double scale_y, + GdkInterpType interp_type, + int check_x, int check_y) +{ + if (!has_alpha) + { + if (scale_x == 1.0 && scale_y == 1.0) + { + gdk_pixbuf_copy_area(src, + -offset_x + pb_x, -offset_y + pb_y, + pb_w, pb_h, + dest, + pb_x, pb_y); + } + else + { + gdk_pixbuf_scale(src, dest, + pb_x, pb_y, pb_w, pb_h, + offset_x, + offset_y, + scale_x, scale_y, + interp_type); + } + } + else + { + gdk_pixbuf_composite_color(src, dest, + pb_x, pb_y, pb_w, pb_h, + offset_x, + offset_y, + scale_x, scale_y, + interp_type, + 255, check_x, check_y, + PR_ALPHA_CHECK_SIZE, PR_ALPHA_CHECK1, PR_ALPHA_CHECK2); + } +} + + +static gint rt_get_orientation(RendererTiles *rt) +{ + PixbufRenderer *pr = rt->pr; + + gint orientation = pr->orientation; + static const gint mirror[] = {1, 2, 1, 4, 3, 6, 5, 8, 7}; + static const gint flip[] = {1, 4, 3, 2, 1, 8, 7, 6, 5}; + + if (rt->stereo_mode & PR_STEREO_MIRROR) orientation = mirror[orientation]; + if (rt->stereo_mode & PR_STEREO_FLIP) orientation = flip[orientation]; + return orientation; +} + + +static void rt_tile_render(RendererTiles *rt, ImageTile *it, + gint x, gint y, gint w, gint h, + gboolean new_data, gboolean fast) +{ + PixbufRenderer *pr = rt->pr; + GtkWidget *box; + gboolean has_alpha; + gboolean draw = FALSE; + gint orientation = rt_get_orientation(rt); + + if (it->render_todo == TILE_RENDER_NONE && it->pixmap && !new_data) return; + + if (it->render_done != TILE_RENDER_ALL) + { + x = 0; + y = 0; + w = it->w; + h = it->h; + if (!fast) it->render_done = TILE_RENDER_ALL; + } + else if (it->render_todo != TILE_RENDER_AREA) + { + if (!fast) it->render_todo = TILE_RENDER_NONE; + return; + } + + if (!fast) it->render_todo = TILE_RENDER_NONE; + + if (new_data) it->blank = FALSE; + + rt_tile_prepare(rt, it); + has_alpha = (pr->pixbuf && gdk_pixbuf_get_has_alpha(pr->pixbuf)); + + box = GTK_WIDGET(pr); + + /* FIXME checker colors for alpha should be configurable, + * also should be drawn for blank = TRUE + */ + + if (it->blank) + { + /* no data, do fast rect fill */ + gdk_draw_rectangle(it->pixmap, box->style->black_gc, TRUE, + 0, 0, it->w, it->h); + } + else if (pr->source_tiles_enabled) + { + draw = rt_source_tile_render(rt, it, x, y, w, h, new_data, fast); + } + else if ((pr->zoom == 1.0 || pr->scale == 1.0) && + pr->aspect_ratio == 1.0 && + !has_alpha && + orientation == EXIF_ORIENTATION_TOP_LEFT && + !(pr->func_post_process && !(pr->post_process_slow && fast)) && + !(rt->stereo_mode & PR_STEREO_ANAGLYPH)) + { + /* special case: faster, simple, scale 1.0, base orientation, no postprocessing */ + gdk_draw_pixbuf(it->pixmap, +#if GTK_CHECK_VERSION(2,20,0) + box->style->fg_gc[gtk_widget_get_state(box)], +#else + box->style->fg_gc[GTK_WIDGET_STATE(box)], +#endif + pr->pixbuf, + it->x + x + GET_RIGHT_PIXBUF_OFFSET(rt), it->y + y, + x, y, + w, h, + pr->dither_quality, it->x + x, it->y + y); + } + else + { + gdouble scale_x, scale_y; + gdouble src_x, src_y; + gint pb_x, pb_y; + gint pb_w, pb_h; + + if (pr->image_width == 0 || pr->image_height == 0) return; + + scale_x = (gdouble)pr->width / pr->image_width; + scale_y = (gdouble)pr->height / pr->image_height; + + pr_tile_coords_map_orientation(orientation, it->x, it->y, + pr->width, pr->height, + rt->tile_width, rt->tile_height, + &src_x, &src_y); + pr_tile_region_map_orientation(orientation, x, y, + rt->tile_width, rt->tile_height, + w, h, + &pb_x, &pb_y, + &pb_w, &pb_h); + + switch (orientation) + { + gdouble tmp; + case EXIF_ORIENTATION_LEFT_TOP: + case EXIF_ORIENTATION_RIGHT_TOP: + case EXIF_ORIENTATION_RIGHT_BOTTOM: + case EXIF_ORIENTATION_LEFT_BOTTOM: + tmp = scale_x; + scale_x = scale_y; + scale_y = tmp; + break; + default: + /* nothing to do */ + break; + } + + /* HACK: The pixbuf scalers get kinda buggy(crash) with extremely + * small sizes for anything but GDK_INTERP_NEAREST + */ + if (pr->width < PR_MIN_SCALE_SIZE || pr->height < PR_MIN_SCALE_SIZE) fast = TRUE; + + rt_tile_get_region(has_alpha, + pr->pixbuf, it->pixbuf, pb_x, pb_y, pb_w, pb_h, + (gdouble) 0.0 - src_x - GET_RIGHT_PIXBUF_OFFSET(rt) * scale_x, + (gdouble) 0.0 - src_y, + scale_x, scale_y, + (fast) ? GDK_INTERP_NEAREST : pr->zoom_quality, + it->x + pb_x, it->y + pb_y); + if (rt->stereo_mode & PR_STEREO_ANAGLYPH && + (pr->stereo_pixbuf_offset_right > 0 || pr->stereo_pixbuf_offset_left > 0)) + { + GdkPixbuf *right_pb = rt_get_spare_tile(rt); + rt_tile_get_region(has_alpha, + pr->pixbuf, right_pb, pb_x, pb_y, pb_w, pb_h, + (gdouble) 0.0 - src_x - GET_LEFT_PIXBUF_OFFSET(rt) * scale_x, + (gdouble) 0.0 - src_y, + scale_x, scale_y, + (fast) ? GDK_INTERP_NEAREST : pr->zoom_quality, + it->x + pb_x, it->y + pb_y); + pr_create_anaglyph(rt->stereo_mode, it->pixbuf, right_pb, pb_x, pb_y, pb_w, pb_h); + /* do not care about freeing spare_tile, it will be reused */ + } + rt_tile_apply_orientation(rt, orientation, &it->pixbuf, pb_x, pb_y, pb_w, pb_h); + draw = TRUE; + } + + if (draw && it->pixbuf && !it->blank) + { + + if (pr->func_post_process && !(pr->post_process_slow && fast)) + pr->func_post_process(pr, &it->pixbuf, x, y, w, h, pr->post_process_user_data); + + gdk_draw_pixbuf(it->pixmap, +#if GTK_CHECK_VERSION(2,20,0) + box->style->fg_gc[gtk_widget_get_state(box)], +#else + box->style->fg_gc[GTK_WIDGET_STATE(box)], +#endif + it->pixbuf, + x, y, + x, y, + w, h, + pr->dither_quality, it->x + x, it->y + y); + } + +#if 0 + /* enable this line for debugging the edges of tiles */ + gdk_draw_rectangle(it->pixmap, box->style->white_gc, + FALSE, 0, 0, it->w, it->h); + gdk_draw_rectangle(it->pixmap, box->style->white_gc, + FALSE, x, y, w, h); +#endif +} + + +static void rt_tile_expose(RendererTiles *rt, ImageTile *it, + gint x, gint y, gint w, gint h, + gboolean new_data, gboolean fast) +{ + PixbufRenderer *pr = rt->pr; + GtkWidget *box; + + /* clamp to visible */ + if (it->x + x < rt->x_scroll) + { + w -= rt->x_scroll - it->x - x; + x = rt->x_scroll - it->x; + } + if (it->x + x + w > rt->x_scroll + pr->vis_width) + { + w = rt->x_scroll + pr->vis_width - it->x - x; + } + if (w < 1) return; + if (it->y + y < rt->y_scroll) + { + h -= rt->y_scroll - it->y - y; + y = rt->y_scroll - it->y; + } + if (it->y + y + h > rt->y_scroll + pr->vis_height) + { + h = rt->y_scroll + pr->vis_height - it->y - y; + } + if (h < 1) return; + + rt_tile_render(rt, it, x, y, w, h, new_data, fast); + + box = GTK_WIDGET(pr); + +#if GTK_CHECK_VERSION(2,20,0) + gdk_draw_drawable(box->window, box->style->fg_gc[gtk_widget_get_state(box)], +#else + gdk_draw_drawable(box->window, box->style->fg_gc[GTK_WIDGET_STATE(box)], +#endif + it->pixmap, x, y, + pr->x_offset + (it->x - rt->x_scroll) + x + rt->stereo_off_x, pr->y_offset + (it->y - rt->y_scroll) + y + rt->stereo_off_y, w, h); + + if (rt->overlay_list) + { + rt_overlay_draw(rt, pr->x_offset + (it->x - rt->x_scroll) + x, + pr->y_offset + (it->y - rt->y_scroll) + y, + w, h, + it); + } +} + + +static gboolean rt_tile_is_visible(RendererTiles *rt, ImageTile *it) +{ + PixbufRenderer *pr = rt->pr; + return (it->x + it->w >= rt->x_scroll && it->x < rt->x_scroll + pr->vis_width && + it->y + it->h >= rt->y_scroll && it->y < rt->y_scroll + pr->vis_height); +} + +/* + *------------------------------------------------------------------- + * draw queue + *------------------------------------------------------------------- + */ + +static gint rt_get_queued_area(GList *work) +{ + gint area = 0; + + while (work) + { + QueueData *qd = work->data; + area += qd->w * qd->h; + work = work->next; + } + return area; +} + + +static gboolean rt_queue_schedule_next_draw(RendererTiles *rt, gboolean force_set) +{ + PixbufRenderer *pr = rt->pr; + gfloat percent; + gint visible_area = pr->vis_width * pr->vis_height; + + if (!pr->loading) + { + /* 2pass prio */ + DEBUG_2("redraw priority: 2pass"); + rt->draw_idle_id = g_idle_add_full(G_PRIORITY_DEFAULT_IDLE, rt_queue_draw_idle_cb, rt, NULL); + return FALSE; + } + + if (visible_area == 0) + { + /* not known yet */ + percent = 100.0; + } + else + { + percent = 100.0 * rt_get_queued_area(rt->draw_queue) / visible_area; + } + + if (percent > 10.0) + { + /* we have enough data for starting intensive redrawing */ + DEBUG_2("redraw priority: high %.2f %%", percent); + rt->draw_idle_id = g_idle_add_full(GDK_PRIORITY_REDRAW, rt_queue_draw_idle_cb, rt, NULL); + return FALSE; + } + + if (percent < 1.0 || force_set) + { + /* queue is (almost) empty, wait 50 ms*/ + DEBUG_2("redraw priority: wait %.2f %%", percent); + rt->draw_idle_id = g_timeout_add_full(G_PRIORITY_DEFAULT_IDLE, 50, rt_queue_draw_idle_cb, rt, NULL); + return FALSE; + } + + /* keep the same priority as before */ + DEBUG_2("redraw priority: no change %.2f %%", percent); + return TRUE; +} + + +static gboolean rt_queue_draw_idle_cb(gpointer data) +{ + RendererTiles *rt = data; + PixbufRenderer *pr = rt->pr; + QueueData *qd; + gboolean fast; + + + if ((!pr->pixbuf && !pr->source_tiles_enabled) || + (!rt->draw_queue && !rt->draw_queue_2pass) || + !rt->draw_idle_id) + { + pr_render_complete_signal(pr); + + rt->draw_idle_id = 0; + return FALSE; + } + + if (rt->draw_queue) + { + qd = rt->draw_queue->data; + fast = (pr->zoom_2pass && ((pr->zoom_quality != GDK_INTERP_NEAREST && pr->scale != 1.0) || pr->post_process_slow)); + } + else + { + if (pr->loading) + { + /* still loading, wait till done (also drops the higher priority) */ + + return rt_queue_schedule_next_draw(rt, FALSE); + } + + qd = rt->draw_queue_2pass->data; + fast = FALSE; + } + +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_realized(pr)) +#else + if (GTK_WIDGET_REALIZED(pr)) +#endif + { + if (rt_tile_is_visible(rt, qd->it)) + { + rt_tile_expose(rt, qd->it, qd->x, qd->y, qd->w, qd->h, qd->new_data, fast); + } + else if (qd->new_data) + { + /* if new pixel data, and we already have a pixmap, update the tile */ + qd->it->blank = FALSE; + if (qd->it->pixmap && qd->it->render_done == TILE_RENDER_ALL) + { + rt_tile_render(rt, qd->it, qd->x, qd->y, qd->w, qd->h, qd->new_data, fast); + } + } + } + + if (rt->draw_queue) + { + qd->it->qd = NULL; + rt->draw_queue = g_list_remove(rt->draw_queue, qd); + if (fast) + { + if (qd->it->qd2) + { + rt_queue_merge(qd->it->qd2, qd); + g_free(qd); + } + else + { + qd->it->qd2 = qd; + rt->draw_queue_2pass = g_list_append(rt->draw_queue_2pass, qd); + } + } + else + { + g_free(qd); + } + } + else + { + qd->it->qd2 = NULL; + rt->draw_queue_2pass = g_list_remove(rt->draw_queue_2pass, qd); + g_free(qd); + } + + if (!rt->draw_queue && !rt->draw_queue_2pass) + { + pr_render_complete_signal(pr); + + rt->draw_idle_id = 0; + return FALSE; + } + + return rt_queue_schedule_next_draw(rt, FALSE); +} + +static void rt_queue_list_free(GList *list) +{ + GList *work; + + work = list; + while (work) + { + QueueData *qd; + + qd = work->data; + work = work->next; + + qd->it->qd = NULL; + qd->it->qd2 = NULL; + g_free(qd); + } + + g_list_free(list); +} + +static void rt_queue_clear(RendererTiles *rt) +{ + rt_queue_list_free(rt->draw_queue); + rt->draw_queue = NULL; + + rt_queue_list_free(rt->draw_queue_2pass); + rt->draw_queue_2pass = NULL; + + if (rt->draw_idle_id) + { + g_source_remove(rt->draw_idle_id); + rt->draw_idle_id = 0; + } + rt_sync_scroll(rt); +} + +static void rt_queue_merge(QueueData *parent, QueueData *qd) +{ + if (parent->x + parent->w < qd->x + qd->w) + { + parent->w += (qd->x + qd->w) - (parent->x + parent->w); + } + if (parent->x > qd->x) + { + parent->w += parent->x - qd->x; + parent->x = qd->x; + } + + if (parent->y + parent->h < qd->y + qd->h) + { + parent->h += (qd->y + qd->h) - (parent->y + parent->h); + } + if (parent->y > qd->y) + { + parent->h += parent->y - qd->y; + parent->y = qd->y; + } + + parent->new_data |= qd->new_data; +} + +static gboolean rt_clamp_to_visible(RendererTiles *rt, gint *x, gint *y, gint *w, gint *h) +{ + PixbufRenderer *pr = rt->pr; + gint nx, ny; + gint nw, nh; + gint vx, vy; + gint vw, vh; + + vw = pr->vis_width; + vh = pr->vis_height; + + vx = rt->x_scroll; + vy = rt->y_scroll; + + if (*x + *w < vx || *x > vx + vw || *y + *h < vy || *y > vy + vh) return FALSE; + + /* now clamp it */ + nx = CLAMP(*x, vx, vx + vw); + nw = CLAMP(*w - (nx - *x), 1, vw); + + ny = CLAMP(*y, vy, vy + vh); + nh = CLAMP(*h - (ny - *y), 1, vh); + + *x = nx; + *y = ny; + *w = nw; + *h = nh; + + return TRUE; +} + +static gboolean rt_queue_to_tiles(RendererTiles *rt, gint x, gint y, gint w, gint h, + gboolean clamp, ImageRenderType render, + gboolean new_data, gboolean only_existing) +{ + PixbufRenderer *pr = rt->pr; + gint i, j; + gint x1, x2; + gint y1, y2; + + if (clamp && !rt_clamp_to_visible(rt, &x, &y, &w, &h)) return FALSE; + + x1 = ROUND_DOWN(x, rt->tile_width); + x2 = ROUND_UP(x + w, rt->tile_width); + + y1 = ROUND_DOWN(y, rt->tile_height); + y2 = ROUND_UP(y + h, rt->tile_height); + + for (j = y1; j <= y2; j += rt->tile_height) + { + for (i = x1; i <= x2; i += rt->tile_width) + { + ImageTile *it; + + it = rt_tile_get(rt, i, j, + (only_existing && + (i + rt->tile_width < rt->x_scroll || + i > rt->x_scroll + pr->vis_width || + j + rt->tile_height < rt->y_scroll || + j > rt->y_scroll + pr->vis_height))); + if (it) + { + QueueData *qd; + + if ((render == TILE_RENDER_ALL && it->render_done != TILE_RENDER_ALL) || + (render == TILE_RENDER_AREA && it->render_todo != TILE_RENDER_ALL)) + { + it->render_todo = render; + } + + qd = g_new(QueueData, 1); + qd->it = it; + qd->new_data = new_data; + + if (i < x) + { + qd->x = x - i; + } + else + { + qd->x = 0; + } + qd->w = x + w - i - qd->x; + if (qd->x + qd->w > rt->tile_width) qd->w = rt->tile_width - qd->x; + + if (j < y) + { + qd->y = y - j; + } + else + { + qd->y = 0; + } + qd->h = y + h - j - qd->y; + if (qd->y + qd->h > rt->tile_height) qd->h = rt->tile_height - qd->y; + + if (qd->w < 1 || qd->h < 1) + { + g_free(qd); + } + else if (it->qd) + { + rt_queue_merge(it->qd, qd); + g_free(qd); + } + else + { + it->qd = qd; + rt->draw_queue = g_list_append(rt->draw_queue, qd); + } + } + } + } + + return TRUE; +} + +static void rt_queue(RendererTiles *rt, gint x, gint y, gint w, gint h, + gboolean clamp, ImageRenderType render, + gboolean new_data, gboolean only_existing) +{ + PixbufRenderer *pr = rt->pr; + gint nx, ny; + + rt_sync_scroll(rt); + + nx = CLAMP(x, 0, pr->width - 1); + ny = CLAMP(y, 0, pr->height - 1); + w -= (nx - x); + h -= (ny - y); + w = CLAMP(w, 0, pr->width - nx); + h = CLAMP(h, 0, pr->height - ny); + if (w < 1 || h < 1) return; + + if (rt_queue_to_tiles(rt, nx, ny, w, h, clamp, render, new_data, only_existing) && + ((!rt->draw_queue && !rt->draw_queue_2pass) || !rt->draw_idle_id)) + { + if (rt->draw_idle_id) + { + g_source_remove(rt->draw_idle_id); + rt->draw_idle_id = 0; + } + rt_queue_schedule_next_draw(rt, TRUE); + } +} + +static void rt_scroll(RendererTiles *rt, gint x_off, gint y_off) +{ + PixbufRenderer *pr = rt->pr; + + rt_sync_scroll(rt); + if (rt->stereo_mode & PR_STEREO_MIRROR) x_off = -x_off; + if (rt->stereo_mode & PR_STEREO_FLIP) y_off = -y_off; + + gint w = pr->vis_width - abs(x_off); + gint h = pr->vis_height - abs(y_off); + + if (w < 1 || h < 1) + { + /* scrolled completely to new material */ + rt_queue(rt, 0, 0, pr->width, pr->height, TRUE, TILE_RENDER_ALL, FALSE, FALSE); + return; + } + else + { + gint x1, y1; + gint x2, y2; + GtkWidget *box; + GdkGC *gc; + GdkEvent *event; + + if (x_off < 0) + { + x1 = abs(x_off); + x2 = 0; + } + else + { + x1 = 0; + x2 = abs(x_off); + } + + if (y_off < 0) + { + y1 = abs(y_off); + y2 = 0; + } + else + { + y1 = 0; + y2 = abs(y_off); + } + + box = GTK_WIDGET(pr); + + gc = gdk_gc_new(box->window); + gdk_gc_set_exposures(gc, TRUE); + gdk_draw_drawable(box->window, gc, + box->window, + x2 + pr->x_offset + rt->stereo_off_x, y2 + pr->y_offset + rt->stereo_off_y, + x1 + pr->x_offset + rt->stereo_off_x, y1 + pr->y_offset + rt->stereo_off_y, w, h); + g_object_unref(gc); + + rt_overlay_queue_all(rt, x2, y2, x1, y1); + + w = pr->vis_width - w; + h = pr->vis_height - h; + + if (w > 0) + { + rt_queue(rt, + x_off > 0 ? rt->x_scroll + (pr->vis_width - w) : rt->x_scroll, rt->y_scroll, + w, pr->vis_height, TRUE, TILE_RENDER_ALL, FALSE, FALSE); + } + if (h > 0) + { + /* FIXME, to optimize this, remove overlap */ + rt_queue(rt, + rt->x_scroll, y_off > 0 ? rt->y_scroll + (pr->vis_height - h) : rt->y_scroll, + pr->vis_width, h, TRUE, TILE_RENDER_ALL, FALSE, FALSE); + } + + /* process exposures here, "expose_event" seems to miss a few with obstructed windows */ +#if ! GTK_CHECK_VERSION(2,18,0) + while ((event = gdk_event_get_graphics_expose(box->window)) != NULL) + { + renderer_redraw((void *) rt, event->expose.area.x, event->expose.area.y, event->expose.area.width, event->expose.area.height, + FALSE, TILE_RENDER_ALL, FALSE, FALSE); + + if (event->expose.count == 0) + { + gdk_event_free(event); + break; + } + gdk_event_free(event); + } +#endif + } +} + +static void renderer_area_changed(void *renderer, gint src_x, gint src_y, gint src_w, gint src_h) +{ + RendererTiles *rt = (RendererTiles *)renderer; + PixbufRenderer *pr = rt->pr; + gint x, y, width, height, x1, y1, x2, y2; + + gint orientation = rt_get_orientation(rt); + pr_coords_map_orientation_reverse(orientation, + src_x - GET_RIGHT_PIXBUF_OFFSET(rt), src_y, + pr->image_width, pr->image_height, + src_w, src_h, + &x, &y, + &width, &height); + + if (pr->scale != 1.0 && pr->zoom_quality != GDK_INTERP_NEAREST) + { + /* increase region when using a zoom quality that may access surrounding pixels */ + y -= 1; + height += 2; + } + + x1 = (gint)floor((gdouble)x * pr->scale); + y1 = (gint)floor((gdouble)y * pr->scale * pr->aspect_ratio); + x2 = (gint)ceil((gdouble)(x + width) * pr->scale); + y2 = (gint)ceil((gdouble)(y + height) * pr->scale * pr->aspect_ratio); + + rt_queue(rt, x1, y1, x2 - x1, y2 - y1, FALSE, TILE_RENDER_AREA, TRUE, TRUE); +} + +static void renderer_redraw(void *renderer, gint x, gint y, gint w, gint h, + gint clamp, ImageRenderType render, gboolean new_data, gboolean only_existing) +{ + RendererTiles *rt = (RendererTiles *)renderer; + PixbufRenderer *pr = rt->pr; + + x -= rt->stereo_off_x; + y -= rt->stereo_off_y; + + rt_border_draw(rt, x, y, w, h); + + x = MAX(0, x - pr->x_offset + pr->x_scroll); + y = MAX(0, y - pr->y_offset + pr->y_scroll); + + rt_queue(rt, + x, y, + MIN(w, pr->width - x), + MIN(h, pr->height - y), + clamp, render, new_data, only_existing); +} + +static void renderer_queue_clear(void *renderer) +{ + rt_queue_clear((RendererTiles *)renderer); +} + +static void renderer_border_clear(void *renderer) +{ + rt_border_clear((RendererTiles *)renderer); +} + + +static void renderer_invalidate_all(void *renderer) +{ + rt_tile_invalidate_all((RendererTiles *)renderer); +} + +static void renderer_invalidate_region(void *renderer, gint x, gint y, gint w, gint h) +{ + rt_tile_invalidate_region((RendererTiles *)renderer, x, y, w, h); +} + +static void renderer_overlay_draw(void *renderer, gint x, gint y, gint w, gint h) +{ + rt_overlay_draw((RendererTiles *)renderer, x, y, w, h, NULL); +} + +static void renderer_update_sizes(void *renderer) +{ + RendererTiles *rt = (RendererTiles *)renderer; + + rt->stereo_off_x = 0; + rt->stereo_off_y = 0; + + if (rt->stereo_mode & PR_STEREO_RIGHT) + { + if (rt->stereo_mode & PR_STEREO_HORIZ) + { + rt->stereo_off_x = rt->pr->viewport_width; + } + else if (rt->stereo_mode & PR_STEREO_VERT) + { + rt->stereo_off_y = rt->pr->viewport_height; + } + else if (rt->stereo_mode & PR_STEREO_FIXED) + { + rt->stereo_off_x = rt->pr->stereo_fixed_x_right; + rt->stereo_off_y = rt->pr->stereo_fixed_y_right; + } + } + else + { + if (rt->stereo_mode & PR_STEREO_FIXED) + { + rt->stereo_off_x = rt->pr->stereo_fixed_x_left; + rt->stereo_off_y = rt->pr->stereo_fixed_y_left; + } + } + DEBUG_1("update size: %p %d %d %d %d", rt, rt->stereo_off_x, rt->stereo_off_y, rt->pr->viewport_width, rt->pr->viewport_height); + rt_sync_scroll(rt); + rt_overlay_update_sizes(rt); +} + +static void renderer_stereo_set(void *renderer, gint stereo_mode) +{ + RendererTiles *rt = (RendererTiles *)renderer; + + rt->stereo_mode = stereo_mode; +} + +static void renderer_free(void *renderer) +{ + RendererTiles *rt = (RendererTiles *)renderer; + rt_queue_clear(rt); + rt_tile_free_all(rt); + if (rt->spare_tile) g_object_unref(rt->spare_tile); + if (rt->overlay_buffer) g_object_unref(rt->overlay_buffer); + rt_overlay_list_clear(rt); + /* disconnect "hierarchy-changed" */ + g_signal_handlers_disconnect_matched(G_OBJECT(rt->pr), G_SIGNAL_MATCH_DATA, + 0, 0, 0, NULL, rt); + g_free(rt); +} + +RendererFuncs *renderer_tiles_new(PixbufRenderer *pr) +{ + RendererTiles *rt = g_new0(RendererTiles, 1); + + rt->pr = pr; + + rt->f.redraw = renderer_redraw; + rt->f.area_changed = renderer_area_changed; + rt->f.queue_clear = renderer_queue_clear; + rt->f.border_clear = renderer_border_clear; + rt->f.free = renderer_free; + rt->f.invalidate_all = renderer_invalidate_all; + rt->f.invalidate_region = renderer_invalidate_region; + rt->f.scroll = rt_scroll; + rt->f.update_sizes = renderer_update_sizes; + + + rt->f.overlay_add = renderer_tiles_overlay_add; + rt->f.overlay_set = renderer_tiles_overlay_set; + rt->f.overlay_get = renderer_tiles_overlay_get; + rt->f.overlay_draw = renderer_overlay_draw; + + rt->f.stereo_set = renderer_stereo_set; + + rt->tile_width = PR_TILE_SIZE; + rt->tile_height = PR_TILE_SIZE; + + rt->tiles = NULL; + rt->tile_cache_size = 0; + + rt->tile_cache_max = PR_CACHE_SIZE_DEFAULT; + + rt->draw_idle_id = 0; + + rt->stereo_mode = 0; + rt->stereo_off_x = 0; + rt->stereo_off_y = 0; + + g_signal_connect(G_OBJECT(pr), "hierarchy-changed", + G_CALLBACK(rt_hierarchy_changed_cb), rt); + + return (RendererFuncs *) rt; +} + + +/* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */ diff -Nru geeqie-1.0/src/renderer-tiles.h geeqie-1.1/src/renderer-tiles.h --- geeqie-1.0/src/renderer-tiles.h 1970-01-01 00:00:00.000000000 +0000 +++ geeqie-1.1/src/renderer-tiles.h 2012-08-12 20:13:41.000000000 +0000 @@ -0,0 +1,25 @@ +/* + * Geeqie + * (C) 2006 John Ellis + * Copyright (C) 2008 - 2012 The Geeqie Team + * + * Author: John Ellis + * + * This software is released under the GNU General Public License (GNU GPL). + * Please read the included file COPYING for more information. + * This software comes with no warranty of any kind, use at your own risk! + */ + +#ifndef RENDERER_TILES_H +#define RENDERER_TILES_H + +#include +#include + +#include + + +RendererFuncs *renderer_tiles_new(PixbufRenderer *pr); + +#endif +/* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */ diff -Nru geeqie-1.0/src/search.c geeqie-1.1/src/search.c --- geeqie-1.0/src/search.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/search.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2005 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -2006,7 +2006,7 @@ path = fd->path + strlen(sd->search_dir_fd->path); if (path != fd->path) { - FileData *dir_fd = file_data_new_simple(path); + FileData *dir_fd = file_data_new_dir(path); success = filelist_read(dir_fd, &list, NULL); file_data_unref(dir_fd); } @@ -2124,7 +2124,7 @@ sd->search_similarity_cd = cache_sim_data_new(); } - sd->img_loader = image_loader_new(file_data_new_simple(sd->search_similarity_path)); + sd->img_loader = image_loader_new(file_data_new_group(sd->search_similarity_path)); g_signal_connect(G_OBJECT(sd->img_loader), "error", (GCallback)search_similarity_load_done_cb, sd); g_signal_connect(G_OBJECT(sd->img_loader), "done", (GCallback)search_similarity_load_done_cb, sd); if (image_loader_start(sd->img_loader)) @@ -2208,7 +2208,7 @@ if (isdir(path)) { file_data_unref(sd->search_dir_fd); - sd->search_dir_fd = file_data_new_simple(path); + sd->search_dir_fd = file_data_new_dir(path); tab_completion_append_to_history(sd->path_entry, sd->search_dir_fd->path); @@ -2227,7 +2227,7 @@ { /* search metadata */ file_data_unref(sd->search_dir_fd); - sd->search_dir_fd = file_data_new_simple(get_metadata_cache_dir()); + sd->search_dir_fd = file_data_new_dir(get_metadata_cache_dir()); search_start(sd); } else if (sd->search_type == SEARCH_MATCH_CONTAINS) @@ -2361,11 +2361,19 @@ { if (visible) { +#if GTK_CHECK_VERSION(2,20,0) + if (!gtk_widget_get_visible(widget)) gtk_widget_show(widget); +#else if (!GTK_WIDGET_VISIBLE(widget)) gtk_widget_show(widget); +#endif } else { +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_visible(widget)) gtk_widget_hide(widget); +#else if (GTK_WIDGET_VISIBLE(widget)) gtk_widget_hide(widget); +#endif } } diff -Nru geeqie-1.0/src/search.h geeqie-1.1/src/search.h --- geeqie-1.0/src/search.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/search.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2005 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/secure_save.c geeqie-1.1/src/secure_save.c --- geeqie-1.0/src/secure_save.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/secure_save.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * based on the code developped for ELinks by Laurent Monin * diff -Nru geeqie-1.0/src/secure_save.h geeqie-1.1/src/secure_save.h --- geeqie-1.0/src/secure_save.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/secure_save.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * based on the code developped for ELinks by Laurent Monin * diff -Nru geeqie-1.0/src/similar.c geeqie-1.1/src/similar.c --- geeqie-1.0/src/similar.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/similar.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/similar.h geeqie-1.1/src/similar.h --- geeqie-1.0/src/similar.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/similar.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/slideshow.c geeqie-1.1/src/slideshow.c --- geeqie-1.0/src/slideshow.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/slideshow.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/slideshow.h geeqie-1.1/src/slideshow.h --- geeqie-1.0/src/slideshow.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/slideshow.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/thumb.c geeqie-1.1/src/thumb.c --- geeqie-1.0/src/thumb.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/thumb.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -27,7 +27,7 @@ static void thumb_loader_error_cb(ImageLoader *il, gpointer data); -static void thumb_loader_setup(ThumbLoader *tl, const gchar *path); +static void thumb_loader_setup(ThumbLoader *tl, FileData *fd); static GdkPixbuf *get_xv_thumbnail(gchar *thumb_filename, gint max_w, gint max_h); @@ -161,7 +161,7 @@ DEBUG_1("thumbnail size mismatch, regenerating: %s", tl->fd->path); tl->cache_hit = FALSE; - thumb_loader_setup(tl, tl->fd->path); + thumb_loader_setup(tl, tl->fd); g_signal_connect(G_OBJECT(tl->il), "done", (GCallback)thumb_loader_done_cb, tl); @@ -262,12 +262,10 @@ if (!tl->idle_done_id) tl->idle_done_id = g_idle_add(thumb_loader_done_delay_cb, tl); } -static void thumb_loader_setup(ThumbLoader *tl, const gchar *path) +static void thumb_loader_setup(ThumbLoader *tl, FileData *fd) { - FileData *fd = file_data_new_simple(path); image_loader_free(tl->il); tl->il = image_loader_new(fd); - file_data_unref(fd); image_loader_set_priority(tl->il, G_PRIORITY_LOW); /* this will speed up jpegs by up to 3x in some cases */ @@ -377,13 +375,15 @@ if (cache_path) { - thumb_loader_setup(tl, cache_path); + FileData *fd = file_data_new_no_grouping(cache_path); + thumb_loader_setup(tl, fd); + file_data_unref(fd); g_free(cache_path); tl->cache_hit = TRUE; } else { - thumb_loader_setup(tl, tl->fd->path); + thumb_loader_setup(tl, tl->fd); } g_signal_connect(G_OBJECT(tl->il), "done", (GCallback)thumb_loader_done_cb, tl); @@ -395,7 +395,7 @@ tl->cache_hit = FALSE; log_printf("%s", _("Thumbnail image in cache failed to load, trying to recreate.\n")); - thumb_loader_setup(tl, tl->fd->path); + thumb_loader_setup(tl, tl->fd); g_signal_connect(G_OBJECT(tl->il), "done", (GCallback)thumb_loader_done_cb, tl); if (image_loader_start(tl->il)) return TRUE; } diff -Nru geeqie-1.0/src/thumb.h geeqie-1.1/src/thumb.h --- geeqie-1.0/src/thumb.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/thumb.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/thumb_standard.c geeqie-1.1/src/thumb_standard.c --- geeqie-1.0/src/thumb_standard.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/thumb_standard.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -66,7 +66,6 @@ static void thumb_loader_std_error_cb(ImageLoader *il, gpointer data); static gint thumb_loader_std_setup(ThumbLoaderStd *tl, FileData *fd); -static gint thumb_loader_std_setup_path(ThumbLoaderStd *tl, const gchar *path); ThumbLoaderStd *thumb_loader_std_new(gint width, gint height) @@ -514,10 +513,16 @@ if (!tl->thumb_path_local) { tl->thumb_path = thumb_loader_std_cache_path(tl, TRUE, NULL, FALSE); - if (isfile(tl->thumb_path) && thumb_loader_std_setup_path(tl, tl->thumb_path)) + if (isfile(tl->thumb_path)) { - tl->thumb_path_local = TRUE; - return TRUE; + FileData *fd = file_data_new_no_grouping(tl->thumb_path); + if (thumb_loader_std_setup(tl, fd)) + { + file_data_unref(fd); + tl->thumb_path_local = TRUE; + return TRUE; + } + file_data_unref(fd); } g_free(tl->thumb_path); @@ -629,14 +634,6 @@ return FALSE; } -static gboolean thumb_loader_std_setup_path(ThumbLoaderStd *tl, const gchar *path) -{ - FileData *fd = file_data_new_simple(path); - gboolean ret = thumb_loader_std_setup(tl, fd); - file_data_unref(fd); - return ret; -} - /* * Note: Currently local_cache only specifies where to save a _new_ thumb, if * a valid existing thumb is found anywhere the local thumb will not be created. @@ -689,7 +686,16 @@ tl->thumb_path_local = FALSE; found = isfile(tl->thumb_path); - if (found && thumb_loader_std_setup_path(tl, tl->thumb_path)) return TRUE; + if (found) + { + FileData *fd = file_data_new_no_grouping(tl->thumb_path); + if (thumb_loader_std_setup(tl, fd)) + { + file_data_unref(fd); + return TRUE; + } + file_data_unref(fd); + } if (thumb_loader_std_fail_check(tl) || !thumb_loader_std_next_source(tl, found)) @@ -876,7 +882,8 @@ tv->func_valid = func_valid; tv->data = data; - if (!thumb_loader_std_setup_path(tv->tl, thumb_path)) + FileData *fd = file_data_new_no_grouping(thumb_path); + if (!thumb_loader_std_setup(tv->tl, fd)) { tv->idle_id = g_idle_add(thumb_loader_std_thumb_file_validate_idle_cb, tv); } @@ -885,6 +892,7 @@ tv->idle_id = 0; } + file_data_unref(fd); return tv->tl; } @@ -974,9 +982,8 @@ tm->tl->cache_enable = TRUE; tm->tl->cache_hit = FALSE; tm->tl->cache_local = FALSE; - file_data_unref(tm->tl->fd); - tm->tl->fd = file_data_new_simple(tm->dest); + tm->tl->fd = file_data_new_group(tm->dest); tm->tl->source_mtime = strtol(mtime_str, NULL, 10); pathl = path_from_utf8(tm->tl->fd->path); diff -Nru geeqie-1.0/src/thumb_standard.h geeqie-1.1/src/thumb_standard.h --- geeqie-1.0/src/thumb_standard.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/thumb_standard.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/trash.c geeqie-1.1/src/trash.c --- geeqie-1.0/src/trash.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/trash.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -37,7 +37,7 @@ gboolean warned = FALSE; FileData *dir_fd; - dir_fd = file_data_new_simple(options->file_ops.safe_delete_path); + dir_fd = file_data_new_dir(options->file_ops.safe_delete_path); if (!filelist_read(dir_fd, &list, NULL)) { file_data_unref(dir_fd); diff -Nru geeqie-1.0/src/trash.h geeqie-1.1/src/trash.h --- geeqie-1.0/src/trash.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/trash.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * This software is released under the GNU General Public License (GNU GPL). * Please read the included file COPYING for more information. diff -Nru geeqie-1.0/src/typedefs.h geeqie-1.1/src/typedefs.h --- geeqie-1.0/src/typedefs.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/typedefs.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -158,11 +158,11 @@ CHANGE_WARN_SAME = 1 << 2, CHANGE_WARN_CHANGED_EXT = 1 << 3, CHANGE_WARN_UNSAVED_META = 1 << 4, + CHANGE_WARN_NO_WRITE_PERM_DEST_DIR = 1 << 5, CHANGE_ERROR_MASK = (~0) << 8, /* the values below are fatal errors */ CHANGE_NO_READ_PERM = 1 << 8, CHANGE_NO_WRITE_PERM_DIR = 1 << 9, CHANGE_NO_DEST_DIR = 1 << 10, - CHANGE_NO_WRITE_PERM_DEST_DIR = 1 << 11, CHANGE_NO_WRITE_PERM_DEST = 1 << 12, CHANGE_DEST_EXISTS = 1 << 13, CHANGE_NO_SRC = 1 << 14, @@ -186,6 +186,38 @@ TOOLBAR_COUNT } ToolbarType; +typedef enum { + PR_STEREO_NONE = 0, /* do nothing */ + PR_STEREO_DUAL = 1 << 0, /* independent stereo buffers, for example nvidia opengl */ + PR_STEREO_FIXED = 1 << 1, /* custom position */ + PR_STEREO_HORIZ = 1 << 2, /* side by side */ + PR_STEREO_VERT = 1 << 3, /* above below */ + PR_STEREO_RIGHT = 1 << 4, /* render right buffer */ + PR_STEREO_ANAGLYPH_RC = 1 << 5, /* anaglyph red-cyan */ + PR_STEREO_ANAGLYPH_GRAY = 1 << 6, /* anaglyph gray red-cyan*/ + PR_STEREO_ANAGLYPH_DB = 1 << 7, /* anaglyph dubois*/ + PR_STEREO_ANAGLYPH = PR_STEREO_ANAGLYPH_RC | PR_STEREO_ANAGLYPH_GRAY | PR_STEREO_ANAGLYPH_DB, /* anaglyph mask */ + + PR_STEREO_MIRROR_LEFT = 1 << 8, /* mirror */ + PR_STEREO_FLIP_LEFT = 1 << 9, /* flip */ + + PR_STEREO_MIRROR_RIGHT = 1 << 10, /* mirror */ + PR_STEREO_FLIP_RIGHT = 1 << 11, /* flip */ + + PR_STEREO_MIRROR = PR_STEREO_MIRROR_LEFT | PR_STEREO_MIRROR_RIGHT, /* mirror mask*/ + PR_STEREO_FLIP = PR_STEREO_FLIP_LEFT | PR_STEREO_FLIP_RIGHT, /* flip mask*/ + PR_STEREO_SWAP = 1 << 12, /* swap left and right buffers */ + PR_STEREO_TEMP_DISABLE = 1 << 13, /* temporarily disable stereo mode if source image is not stereo */ + PR_STEREO_HALF = 1 << 14 +} PixbufRendererStereoMode; + +typedef enum { + STEREO_PIXBUF_DEFAULT = 0, + STEREO_PIXBUF_SBS = 1, + STEREO_PIXBUF_CROSS = 2, + STEREO_PIXBUF_NONE = 3 +} StereoPixbufData; + #define MAX_SPLIT_IMAGES 4 typedef struct _ImageLoader ImageLoader; @@ -440,6 +472,7 @@ gboolean delay_flip; gint orientation; gboolean desaturate; + gint user_stereo; }; #define FILEDATA_MARKS_SIZE 6 @@ -464,6 +497,7 @@ gint64 size; time_t date; mode_t mode; /* this is needed at least for notification in view_dir because it is preserved after the file/directory is deleted */ + gint sidecar_priority; guint marks; /* each bit represents one mark */ guint valid_marks; /* zero bit means that the corresponding mark needs to be reread */ @@ -488,6 +522,7 @@ ExifData *exif; GHashTable *modified_xmp; // hash table which contains unwritten xmp metadata in format: key->list of string values + GList *cached_metadata; }; struct _LayoutOptions diff -Nru geeqie-1.0/src/ui_bookmark.c geeqie-1.1/src/ui_bookmark.c --- geeqie-1.0/src/ui_bookmark.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_bookmark.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/ui_bookmark.h geeqie-1.1/src/ui_bookmark.h --- geeqie-1.0/src/ui_bookmark.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_bookmark.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/ui_fileops.c geeqie-1.1/src/ui_fileops.c --- geeqie-1.0/src/ui_fileops.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_fileops.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -490,8 +490,14 @@ /* set the dest file attributes to that of source (ignoring errors) */ - if (perms && chown(tl, st.st_uid, st.st_gid) < 0) ret = FALSE; - if (perms && chmod(tl, st.st_mode) < 0) ret = FALSE; + if (perms) + { + ret = chown(tl, st.st_uid, st.st_gid); + /* Ignores chown errors, while still doing chown + (so root still can copy files preserving ownership) */ + ret = TRUE; + if (chmod(tl, st.st_mode) < 0) ret = FALSE; + } tb.actime = st.st_atime; tb.modtime = st.st_mtime; diff -Nru geeqie-1.0/src/ui_fileops.h geeqie-1.1/src/ui_fileops.h --- geeqie-1.0/src/ui_fileops.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_fileops.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/ui_help.c geeqie-1.1/src/ui_help.c --- geeqie-1.0/src/ui_help.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_help.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/ui_help.h geeqie-1.1/src/ui_help.h --- geeqie-1.0/src/ui_help.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_help.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/ui_menu.c geeqie-1.1/src/ui_menu.c --- geeqie-1.0/src/ui_menu.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_menu.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/ui_menu.h geeqie-1.1/src/ui_menu.h --- geeqie-1.0/src/ui_menu.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_menu.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/ui_misc.c geeqie-1.1/src/ui_misc.c --- geeqie-1.0/src/ui_misc.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_misc.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -551,7 +551,11 @@ { GtkWidget *widget = data; +#if GTK_CHECK_VERSION(2,20,0) + gtk_widget_set_sensitive(widget, gtk_widget_is_sensitive(watch)); +#else gtk_widget_set_sensitive(widget, GTK_WIDGET_IS_SENSITIVE(watch)); +#endif } void pref_link_sensitivity(GtkWidget *widget, GtkWidget *watch) @@ -718,6 +722,20 @@ return spin; } +GtkWidget *pref_table_spin_new_int(GtkWidget *table, gint column, gint row, + const gchar *text, const gchar *suffix, + gint min, gint max, gint step, + gint value, gint *value_var) +{ + *value_var = value; + return pref_table_spin(table, column, row, + text, suffix, + (gdouble)min, (gdouble)max, (gdouble)step, 0, + value, + G_CALLBACK(pref_spin_int_cb), value_var); +} + + #if ! GTK_CHECK_VERSION(2,12,0) static void pref_toolbar_destroy_cb(GtkWidget *widget, gpointer data) @@ -876,7 +894,11 @@ { if (!ds->window) return; +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_has_grab(ds->window)) +#else if (GTK_WIDGET_HAS_GRAB(ds->window)) +#endif { gtk_grab_remove(ds->window); gdk_keyboard_ungrab(GDK_CURRENT_TIME); @@ -1289,7 +1311,11 @@ if (bevent->button != MOUSE_BUTTON_LEFT) return FALSE; +#if GTK_CHECK_VERSION(2,20,0) + if (gdk_pointer_is_grabbed() && gtk_widget_has_grab(sd->sizer)) +#else if (gdk_pointer_is_grabbed() && GTK_WIDGET_HAS_GRAB(sd->sizer)) +#endif { gtk_grab_remove(sd->sizer); gdk_pointer_ungrab(bevent->time); diff -Nru geeqie-1.0/src/ui_misc.h geeqie-1.1/src/ui_misc.h --- geeqie-1.0/src/ui_misc.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_misc.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -136,6 +136,11 @@ gdouble value, GCallback func, gpointer data); +GtkWidget *pref_table_spin_new_int(GtkWidget *table, gint column, gint row, + const gchar *text, const gchar *suffix, + gint min, gint max, gint step, + gint value, gint *value_var); + GtkWidget *pref_toolbar_new(GtkWidget *parent_box, GtkToolbarStyle style); GtkWidget *pref_toolbar_button(GtkWidget *toolbar, diff -Nru geeqie-1.0/src/ui_pathsel.c geeqie-1.1/src/ui_pathsel.c --- geeqie-1.0/src/ui_pathsel.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_pathsel.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -740,7 +740,10 @@ tmp = gtk_entry_get_text(GTK_ENTRY(dd->entry)); if (!isname(tmp)) { - path = g_strdup(tmp); + buf = remove_trailing_slash(tmp); + path = g_strdup(buf); + g_free(buf); + buf = remove_level_from_path(path); from_text = TRUE; } else @@ -765,7 +768,11 @@ GtkListStore *store; const gchar *text; - if (from_text) gtk_entry_set_text(GTK_ENTRY(dd->entry), dd->path); + if (from_text) + { + dest_populate(dd, buf); + g_free(buf); + } store = GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(dd->d_view))); diff -Nru geeqie-1.0/src/ui_pathsel.h geeqie-1.1/src/ui_pathsel.h --- geeqie-1.0/src/ui_pathsel.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_pathsel.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/ui_spinner.c geeqie-1.1/src/ui_spinner.c --- geeqie-1.0/src/ui_spinner.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_spinner.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/ui_spinner.h geeqie-1.1/src/ui_spinner.h --- geeqie-1.0/src/ui_spinner.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_spinner.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/ui_tabcomp.c geeqie-1.1/src/ui_tabcomp.c --- geeqie-1.0/src/ui_tabcomp.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_tabcomp.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -206,7 +206,11 @@ TabCompData *td = data; GtkWidget *child; +#if GTK_CHECK_VERSION(2,20,0) + if (!gtk_widget_get_visible(widget)) return; +#else if (!GTK_WIDGET_VISIBLE(widget)) return; +#endif child = gtk_bin_get_child(GTK_BIN(widget)); if (GTK_IS_LABEL(child)) { @@ -646,7 +650,11 @@ if (!td) return; +#if GTK_CHECK_VERSION(2,20,0) + if (!gtk_widget_has_focus(entry)) +#else if (!GTK_WIDGET_HAS_FOCUS(entry)) +#endif { gtk_widget_grab_focus(entry); } diff -Nru geeqie-1.0/src/ui_tabcomp.h geeqie-1.1/src/ui_tabcomp.h --- geeqie-1.0/src/ui_tabcomp.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_tabcomp.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/ui_tree_edit.c geeqie-1.1/src/ui_tree_edit.c --- geeqie-1.0/src/ui_tree_edit.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_tree_edit.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -184,7 +184,11 @@ GList *work; if (!edit_func) return FALSE; +#if GTK_CHECK_VERSION(2,20,0) + if (!gtk_widget_get_visible(tree)) return FALSE; +#else if (!GTK_WIDGET_VISIBLE(tree)) return FALSE; +#endif tcolumn = gtk_tree_view_get_column(tree, column); if (!tcolumn) return FALSE; diff -Nru geeqie-1.0/src/ui_tree_edit.h geeqie-1.1/src/ui_tree_edit.h --- geeqie-1.0/src/ui_tree_edit.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_tree_edit.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/ui_utildlg.c geeqie-1.1/src/ui_utildlg.c --- geeqie-1.0/src/ui_utildlg.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_utildlg.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -62,7 +62,11 @@ { GenericDialog *gd = data; +#if GTK_CHECK_VERSION(2,20,0) + if (event->keyval == GDK_Return && gtk_widget_has_focus(widget) +#else if (event->keyval == GDK_Return && GTK_WIDGET_HAS_FOCUS(widget) +#endif && gd->default_cb) { gboolean auto_close; @@ -178,7 +182,7 @@ GtkWidget *vbox; GtkWidget *label; - hbox = pref_box_new(gd->vbox, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE); + hbox = pref_box_new(gd->vbox, TRUE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE); if (icon_stock_id) { GtkWidget *image; @@ -234,7 +238,11 @@ GtkWidget *top; top = gtk_widget_get_toplevel(parent); +#if GTK_CHECK_VERSION(2,20,0) + if (GTK_IS_WINDOW(top) && gtk_widget_is_toplevel(top)) window = GTK_WINDOW(top); +#else if (GTK_IS_WINDOW(top) && GTK_WIDGET_TOPLEVEL(top)) window = GTK_WINDOW(top); +#endif } if (window) gtk_window_set_transient_for(GTK_WINDOW(gd->dialog), window); diff -Nru geeqie-1.0/src/ui_utildlg.h geeqie-1.1/src/ui_utildlg.h --- geeqie-1.0/src/ui_utildlg.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/ui_utildlg.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * (SLIK) SimpLIstic sKin functions * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/uri_utils.c geeqie-1.1/src/uri_utils.c --- geeqie-1.0/src/uri_utils.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/uri_utils.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: John Ellis, Vladimir Nadvornik, Laurent Monin * diff -Nru geeqie-1.0/src/uri_utils.h geeqie-1.1/src/uri_utils.h --- geeqie-1.0/src/uri_utils.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/uri_utils.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis, Vladimir Nadvornik, Laurent Monin * diff -Nru geeqie-1.0/src/utilops.c geeqie-1.1/src/utilops.c --- geeqie-1.0/src/utilops.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/utilops.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -440,7 +440,7 @@ scrolled = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolled), GTK_SHADOW_IN); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled), - GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); + GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_box_pack_start(GTK_BOX(box), scrolled, TRUE, TRUE, 0); gtk_widget_show(scrolled); @@ -1074,7 +1074,7 @@ break; case UTILITY_TYPE_CREATE_FOLDER: file_data_unref(ud->dir_fd); - ud->dir_fd = file_data_new_simple(ud->dest_path); + ud->dir_fd = file_data_new_dir(ud->dest_path); break; case UTILITY_TYPE_DELETE: case UTILITY_TYPE_DELETE_LINK: @@ -2676,7 +2676,7 @@ g_free(buf); } - ud->dir_fd = file_data_new_simple(ud->dest_path); + ud->dir_fd = file_data_new_dir(ud->dest_path); ud->done_func = done_func; ud->done_data = done_data; diff -Nru geeqie-1.0/src/utilops.h geeqie-1.1/src/utilops.h --- geeqie-1.0/src/utilops.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/utilops.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/view_dir.c geeqie-1.1/src/view_dir.c --- geeqie-1.0/src/view_dir.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/view_dir.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Laurent Monin * @@ -241,7 +241,7 @@ ViewDir *vd = data; if (success) { - FileData *fd = file_data_new_simple(new_path); + FileData *fd = file_data_new_dir(new_path); GtkTreeIter iter; if (vd_find_row(vd, fd, &iter)) @@ -435,7 +435,7 @@ if (vd->select_func) { - FileData *fd = file_data_new_simple(path); + FileData *fd = file_data_new_dir(path); vd->select_func(vd, fd, vd->select_data); file_data_unref(fd); } @@ -561,7 +561,7 @@ break; case DIRVIEW_TREE: { - FileData *new_fd = file_data_new_simple(new_path); + FileData *new_fd = file_data_new_dir(new_path); fd = vdtree_populate_path(vd, new_fd, TRUE, TRUE); file_data_unref(new_fd); } @@ -1117,7 +1117,7 @@ if (vd->type == DIRVIEW_TREE) { GtkTreeIter iter; - FileData *base_fd = file_data_new_simple(base); + FileData *base_fd = file_data_new_dir(base); if (vd_find_row(vd, base_fd, &iter)) { diff -Nru geeqie-1.0/src/view_dir.h geeqie-1.1/src/view_dir.h --- geeqie-1.0/src/view_dir.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/view_dir.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Laurent Monin * diff -Nru geeqie-1.0/src/view_dir_list.c geeqie-1.1/src/view_dir_list.c --- geeqie-1.0/src/view_dir_list.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/view_dir_list.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -96,7 +96,11 @@ { GtkTreeIter iter; +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_realized(vd->view) && vd_find_row(vd, fd, &iter)) +#else if (GTK_WIDGET_REALIZED(vd->view) && vd_find_row(vd, fd, &iter)) +#endif { GtkTreeModel *store; GtkTreePath *tpath; @@ -107,7 +111,11 @@ gtk_tree_view_set_cursor(GTK_TREE_VIEW(vd->view), tpath, NULL, FALSE); gtk_tree_path_free(tpath); +#if GTK_CHECK_VERSION(2,20,0) + if (!gtk_widget_has_focus(vd->view)) gtk_widget_grab_focus(vd->view); +#else if (!GTK_WIDGET_HAS_FOCUS(vd->view)) gtk_widget_grab_focus(vd->view); +#endif } } @@ -151,7 +159,7 @@ if (strcmp(vd->dir_fd->path, G_DIR_SEPARATOR_S) != 0) { filepath = g_build_filename(vd->dir_fd->path, "..", NULL); - fd = file_data_new_simple(filepath); + fd = file_data_new_dir(filepath); VDLIST(vd)->list = g_list_prepend(VDLIST(vd)->list, fd); g_free(filepath); } @@ -159,7 +167,7 @@ if (options->file_filter.show_dot_directory) { filepath = g_build_filename(vd->dir_fd->path, ".", NULL); - fd = file_data_new_simple(filepath); + fd = file_data_new_dir(filepath); VDLIST(vd)->list = g_list_prepend(VDLIST(vd)->list, fd); g_free(filepath); } @@ -289,7 +297,7 @@ gboolean vdlist_set_fd(ViewDir *vd, FileData *dir_fd) { gboolean ret; - gchar *old_path = NULL; + gchar *old_path = NULL; /* Used to store directory for walking up */ if (!dir_fd) return FALSE; if (vd->dir_fd == dir_fd) return TRUE; @@ -301,7 +309,7 @@ base = remove_level_from_path(vd->dir_fd->path); if (strcmp(base, dir_fd->path) == 0) { - old_path = g_strdup(vd->dir_fd->name); + old_path = g_strdup(filename_from_path(vd->dir_fd->path)); } g_free(base); } @@ -331,7 +339,11 @@ return ret; } +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_realized(vd->view)) +#else if (GTK_WIDGET_REALIZED(vd->view)) +#endif { gtk_tree_view_scroll_to_point(GTK_TREE_VIEW(vd->view), 0, 0); } diff -Nru geeqie-1.0/src/view_dir_list.h geeqie-1.1/src/view_dir_list.h --- geeqie-1.0/src/view_dir_list.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/view_dir_list.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/view_dir_tree.c geeqie-1.1/src/view_dir_tree.c --- geeqie-1.0/src/view_dir_tree.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/view_dir_tree.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -159,7 +159,7 @@ { if (!nd) return; - file_data_unref(nd->fd); + if (nd->fd) file_data_unref(nd->fd); g_free(nd); } @@ -281,7 +281,7 @@ NodeData *nd; gtk_tree_model_get(store, &iter, DIR_COLUMN_POINTER, &nd, -1); - if (strcmp(nd->fd->name, pd->name) == 0) + if (nd->fd && strcmp(nd->fd->name, pd->name) == 0) { fd = nd->fd; } @@ -419,7 +419,7 @@ /* all nodes are created with an "empty" node, so that the expander is shown * this is removed when the child is populated */ end = g_new0(NodeData, 1); - end->fd = file_data_new_simple(""); + end->fd = NULL; end->expanded = TRUE; gtk_tree_store_append(store, &empty, &child); @@ -462,7 +462,7 @@ if (nd->expanded) { - if (!isdir(nd->fd->path)) + if (!nd->fd || !isdir(nd->fd->path)) { if (vd->click_fd == nd->fd) vd->click_fd = NULL; if (vd->drop_fd == nd->fd) vd->drop_fd = NULL; @@ -475,6 +475,7 @@ DEBUG_1("Too frequent update of %s", nd->fd->path); return TRUE; } + file_data_check_changed_files(nd->fd); /* make sure we have recent info */ if (nd->fd->version == nd->version) return TRUE; } @@ -495,16 +496,15 @@ if (target_fd->path[n] == G_DIR_SEPARATOR && target_fd->path[n+1] == '.') { gchar *name8; - struct stat sbuf; n++; while (target_fd->path[n] != '\0' && target_fd->path[n] != G_DIR_SEPARATOR) n++; name8 = g_strndup(target_fd->path, n); - if (stat_utf8(name8, &sbuf)) + if (isdir(name8)) { - list = g_list_prepend(list, file_data_new_simple(name8)); + list = g_list_prepend(list, file_data_new_dir(name8)); } g_free(name8); @@ -904,6 +904,10 @@ gtk_tree_model_get(store, a, DIR_COLUMN_POINTER, &nda, -1); gtk_tree_model_get(store, b, DIR_COLUMN_POINTER, &ndb, -1); + if (!nda->fd && !ndb->fd) return 0; + if (!nda->fd) return 1; + if (!ndb->fd) return -1; + if (options->file_sort.case_sensitive) return strcmp(nda->fd->collate_key_name, ndb->fd->collate_key_name); else @@ -922,7 +926,7 @@ FileData *fd; - fd = file_data_new_simple(path); + fd = file_data_new_dir(path); vdtree_add_by_data(vd, fd, NULL); vdtree_expand_by_data(vd, fd, TRUE); diff -Nru geeqie-1.0/src/view_dir_tree.h geeqie-1.1/src/view_dir_tree.h --- geeqie-1.0/src/view_dir_tree.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/view_dir_tree.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/view_file.c geeqie-1.1/src/view_file.c --- geeqie-1.0/src/view_file.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/view_file.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Laurent Monin * @@ -878,7 +878,11 @@ { FileData *fd = NULL; +#if GTK_CHECK_VERSION(2,20,0) + if (!gtk_widget_get_realized(vf->listview)) +#else if (!GTK_WIDGET_REALIZED(vf->listview)) +#endif { vf_thumb_status(vf, 0.0, NULL); return FALSE; diff -Nru geeqie-1.0/src/view_file.h geeqie-1.1/src/view_file.h --- geeqie-1.0/src/view_file.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/view_file.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: Laurent Monin * diff -Nru geeqie-1.0/src/view_file_icon.c geeqie-1.1/src/view_file_icon.c --- geeqie-1.0/src/view_file_icon.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/view_file_icon.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2006 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -431,7 +431,11 @@ gdk_window_get_pointer(NULL, &x, &y, NULL); +#if GTK_CHECK_VERSION(2,20,0) + if (!gtk_widget_get_realized(VFICON(vf)->tip_window)) gtk_widget_realize(VFICON(vf)->tip_window); +#else if (!GTK_WIDGET_REALIZED(VFICON(vf)->tip_window)) gtk_widget_realize(VFICON(vf)->tip_window); +#endif gtk_window_move(GTK_WINDOW(VFICON(vf)->tip_window), x + 16, y + 16); gtk_widget_show(VFICON(vf)->tip_window); } @@ -451,7 +455,11 @@ window = gtk_widget_get_toplevel(vf->listview); +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_sensitive(window) && +#else if (GTK_WIDGET_SENSITIVE(window) && +#endif GTK_WINDOW(window)->has_focus) { tip_show(vf); @@ -1006,11 +1014,11 @@ { case MTS_MODE_SET: selected = mark_val; break; - case MTS_MODE_OR: selected = mark_val | selected; + case MTS_MODE_OR: selected = mark_val || selected; break; - case MTS_MODE_AND: selected = mark_val & selected; + case MTS_MODE_AND: selected = mark_val && selected; break; - case MTS_MODE_MINUS: selected = !mark_val & selected; + case MTS_MODE_MINUS: selected = !mark_val && selected; break; } @@ -1440,7 +1448,11 @@ switch (bevent->button) { case MOUSE_BUTTON_LEFT: +#if GTK_CHECK_VERSION(2,20,0) + if (!gtk_widget_has_focus(vf->listview)) +#else if (!GTK_WIDGET_HAS_FOCUS(vf->listview)) +#endif { gtk_widget_grab_focus(vf->listview); } @@ -1603,7 +1615,11 @@ store = gtk_tree_view_get_model(GTK_TREE_VIEW(vf->listview)); +#if GTK_CHECK_VERSION(2,20,0) + if (keep_position && gtk_widget_get_realized(vf->listview) && +#else if (keep_position && GTK_WIDGET_REALIZED(vf->listview) && +#endif gtk_tree_view_get_path_at_pos(GTK_TREE_VIEW(vf->listview), 0, 0, &tpath, NULL, NULL, NULL)) { GtkTreeIter iter; @@ -1654,7 +1670,11 @@ NULL); } } +#if GTK_CHECK_VERSION(2,20,0) + if (gtk_widget_get_realized(vf->listview)) gtk_tree_view_columns_autosize(GTK_TREE_VIEW(vf->listview)); +#else if (GTK_WIDGET_REALIZED(vf->listview)) gtk_tree_view_columns_autosize(GTK_TREE_VIEW(vf->listview)); +#endif } r = -1; diff -Nru geeqie-1.0/src/view_file_icon.h geeqie-1.1/src/view_file_icon.h --- geeqie-1.0/src/view_file_icon.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/view_file_icon.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/view_file_list.c geeqie-1.1/src/view_file_list.c --- geeqie-1.0/src/view_file_list.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/view_file_list.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * @@ -516,7 +516,7 @@ else { gchar *old_path = g_build_filename(vf->dir_fd->path, old, NULL); - FileData *fd = file_data_new_simple(old_path); /* get the fd from cache */ + FileData *fd = file_data_new_group(old_path); /* get the fd from cache */ file_util_rename_simple(fd, new_path, vf->listview); file_data_unref(fd); g_free(old_path); @@ -1610,11 +1610,11 @@ { case MTS_MODE_SET: selected = mark_val; break; - case MTS_MODE_OR: selected = mark_val | selected; + case MTS_MODE_OR: selected = mark_val || selected; break; - case MTS_MODE_AND: selected = mark_val & selected; + case MTS_MODE_AND: selected = mark_val && selected; break; - case MTS_MODE_MINUS: selected = !mark_val & selected; + case MTS_MODE_MINUS: selected = !mark_val && selected; break; } diff -Nru geeqie-1.0/src/view_file_list.h geeqie-1.1/src/view_file_list.h --- geeqie-1.0/src/view_file_list.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/view_file_list.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,7 +1,7 @@ /* * Geeqie * (C) 2004 John Ellis - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Author: John Ellis * diff -Nru geeqie-1.0/src/window.c geeqie-1.1/src/window.c --- geeqie-1.0/src/window.c 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/window.c 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: Vladimir Nadvornik / Laurent Monin * diff -Nru geeqie-1.0/src/window.h geeqie-1.1/src/window.h --- geeqie-1.0/src/window.h 2010-02-17 21:21:19.000000000 +0000 +++ geeqie-1.1/src/window.h 2012-08-12 20:13:41.000000000 +0000 @@ -1,6 +1,6 @@ /* * Geeqie - * Copyright (C) 2008 - 2010 The Geeqie Team + * Copyright (C) 2008 - 2012 The Geeqie Team * * Authors: Vladimir Nadvornik / Laurent Monin *