PQIV README

WHY NOT USE QIV?

qiv (http://www.klografx.net/qiv/index2.html) is a great image viewer, but it
does not use gtk2 but imlib for image handling. This is bad, because many
distributions (well, at least gentoo) do not offer this library anymore as it's
quite old and not maintained anymore.


ABOUT PQIV

When the first release of pqiv was written, I used python, hence the name. I
expected somebody else to write a c-rewrite of qiv, so I didn't really care
about that. About one month later nothing had happened yet, so I did this on my
own. Starting from 0.4 pqiv means "pretty quick image viewer", written in pure
c, using gtk+-2.0.

Now the program is more or less feature complete. If you miss something either
look for one of those big image viewers or pass me an email.


FEATURES

Thanks to Rene Saarsoo <nene ät triin döt net>, who suggested nearly all of the
new 0.4 features. He also implemented most of them into the old python code,
so ask him if you're interested in another python'ish version.

Features include:
 * Fullscreen
 * Slideshow
 * Rotate / Flip
 * (Automatic/manual) Zoom
 * Move by drag & drop in fullscreen
 * Keep preferences in a configuration file
 * Rather small executable (~36k), low ram consumtion, quick
 * Execute predefined commands, pipe images through them or
   display their output
 * Real transparency
 * Fade between images


INSTALLATION

Usual stuff. ./configure && make && make install
You'll need
 * gtk+-2.0
 * gthread-2.0
 * pango
 * glib


THANKS

This program uses Martin Pool's natsort algorithm [http://sourcefrog.net/projects/natsort/]


CONTRIBUTORS

 * Nir Tzachar
 * Yaakov (Cygwin Ports)
 * David Lindquist
 * Tinoucas


KNOWN PROBLEMS

 * Some window managers, especially Beryl, have problems with many commands in
   short intervals. As a resize follows the unfullscreen command immediately,
   the main window could be too big/small upon the unfullscreen command
 * If you experience problems with file encodings, try setting the environment
   variable G_FILENAME_ENCODING to match your file system's encoding
 * It seems that GTK buffers images in memory even after they are freed. If you
   reload images (press 'r') often, the memory consumed by the procress will
   increase. However, it doesn't do so linearly and reaches a limit, so it's
   probably not an issue in pqiv's code. IF you can assert any linear increase
   report that as a bug!


CODING-STYLE

I personally dislike the typical C coding style. Which means I won't ever use
it in pqiv code. Here's what I do:
 * Tabs (width 8) instead of spaces
 * if(..) {\n\t..\n}
   same goes for while/do/..
 * }\nelse {
 * function(\n\tparameters,\n\t..\n)
 * I indent preprocessor stuff whereever I think it might improve readability
 * Variable names are capitalized the java way (eachNewWordStartsCapitalized)


CHANGELOG

pqiv 0.6.1
 * Fixed an array index overflow which led to a segfault (Tinoucas)
 
pqiv 0.6
 * Added -q option
 * Added --no-inotify option to make pqiv compatible with
   !linux systems. (Yaakov)
 * Added -a for aliasing (Idea by David Lindquist)
 * -t scales images up to fill the screen (optional)
 * zoom in fullscreen via mouse 3 & scroll (not realtime)
 * Mousebuttons behave more qiv-like. (Tinoucas)

pqiv 0.5
 * Minor bugfix: Show an error message when no X11 display
   is found
 * Fading between images
 * Advanced command execution
 * More glib calls instead of own functions
 * Added option to select interpolation type
 * Added support for real transparent images
 * Added support for sorting (using natsort)
 * Added support for real transparency
 * Added support for fading between images

pqiv 0.4
 * Updated Makefile to conform to standards
   Thanks to Samuli Suominen <drac at gentoo.org>
 
pqiv 0.4 rc1
 * Source rewritten into c
 * Mouse moves image in fullscreen
 * Configuration file
 * Many bugfixes (i.e. fullscreen on startup)
 * Ability to execute external commands

pqiv <0.4:
 See the old python release for information on that
