KuickShow: Difference between revisions

From KDE Wiki Sandbox
(corrected handling of KDE3 category)
m (Warning about libpng 1.5)
Line 59: Line 59:
}}
}}


{{Warning|1=Imlib code needs patching to build with libpng >= 1.5. Below is the reference patch applied to Mandriva src.rpm code:<!--}}--></translate>
{{Input|<syntaxhighlight lang="diff">
diff -Nuar imlib-1.9.15-old/Imlib/load.c imlib-1.9.15/Imlib/load.c
--- imlib-1.9.15-old/Imlib/load.c 2012-07-16 12:50:03.000000000 +0300
+++ imlib-1.9.15/Imlib/load.c 2012-07-16 12:20:58.000000000 +0300
@@ -197,12 +197,12 @@
      png_destroy_read_struct(&png_ptr, NULL, NULL);
      return NULL;
    }
-  if (setjmp(png_ptr->jmpbuf))
+  if (setjmp(png_jmpbuf((png_ptr))))
    {
      png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
      return NULL;
    }
-  if (info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA)
+  if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_RGB_ALPHA)
    {
      png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
      return NULL;
diff -Nuar imlib-1.9.15-old/Imlib/save.c imlib-1.9.15/Imlib/save.c
--- imlib-1.9.15-old/Imlib/save.c 2004-09-21 03:22:59.000000000 +0300
+++ imlib-1.9.15/Imlib/save.c 2012-07-16 12:17:47.000000000 +0300
@@ -342,7 +342,7 @@
      png_destroy_write_struct(&png_ptr, (png_infopp) NULL);
      return 0;
    }
-   if (setjmp(png_ptr->jmpbuf))
+   if (setjmp(png_jmpbuf((png_ptr))))
    {
      fclose(f);
      png_destroy_write_struct(&png_ptr, (png_infopp) NULL);
diff -Nuar imlib-1.9.15-old/Imlib/utils.c imlib-1.9.15/Imlib/utils.c
--- imlib-1.9.15-old/Imlib/utils.c 2012-07-16 12:50:03.000000000 +0300
+++ imlib-1.9.15/Imlib/utils.c 2012-07-16 12:15:54.000000000 +0300
@@ -1982,13 +1982,13 @@
      return NULL;
    }
 
-  if (setjmp(png_ptr->jmpbuf))
+  if (setjmp(png_jmpbuf((png_ptr))))
    {
      png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
      return NULL;
    }
 
-  if (info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA)
+  if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_RGB_ALPHA)
    {
      png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
      return NULL;
</syntaxhighlight>}}
}}
<translate>
<!--T:15-->
<!--T:15-->
You may choose different directory as prefix of course (e.g. choose the directory where your KDE4 is installed).
You may choose different directory as prefix of course (e.g. choose the directory where your KDE4 is installed).

Revision as of 10:00, 16 July 2012

A fast and convenient image viewer

What is KuickShow?

KuickShow displays images using all the available space, without being wasted in bars or menus. It also has a smart automatic zooming that scales images according to its size. You can use the integrated file browser to choose images, or navigate through a folder with the mousewheel or the keyboard. It also has fullscreen view and slideshow, and supports a wide range of image formats.

Features

  • Fast loading of big images.
  • Powerful keyboard and mouse navigation.
  • Easy zooming, mirroring, rotation, and adjustment of brightness, contrast and gamma.
  • Full screen and slideshow views.
  • Support for jpg, gif, tiff, png, bmp, psd, xpm, xbm, pbm and eim files.

Availability

Source release packages of KuickShow for KDE SC 4.x can be downloaded from

http://hosti.leonde.de/~gis/kuickshow-0.9.1.tar.bz2.

The source resides in the extragear repository in the "graphics/" sub directory, see here.


The KDE 3 version of KuickShow is available in the KDE Graphics module, so it should be available in all distributions that package KDE 3.5 or earlier.


Building to run with KDE SC 4.x

Before building KuickShow, you must make sure to have Imlib1 as well as its development headers installed.

If your distribution doesn't provide Imlib1 packages, download from here, unpack it to a temporary directory, enter the directory "imlib-1.9.15" and run

./configure
make
make install

This will build and install Imlib to /usr/local. Then grab the latest version of KuickShow, unpack it to a temporary directory, enter the directory "kuickshow-0.9.1" and run

cmake -DCMAKE_INSTALL_PREFIX=/usr
make
make install
Warning
Imlib code needs patching to build with libpng >= 1.5. Below is the reference patch applied to Mandriva src.rpm code:
diff -Nuar imlib-1.9.15-old/Imlib/load.c imlib-1.9.15/Imlib/load.c
--- imlib-1.9.15-old/Imlib/load.c	2012-07-16 12:50:03.000000000 +0300
+++ imlib-1.9.15/Imlib/load.c	2012-07-16 12:20:58.000000000 +0300
@@ -197,12 +197,12 @@
       png_destroy_read_struct(&png_ptr, NULL, NULL);
       return NULL;
     }
-  if (setjmp(png_ptr->jmpbuf))
+  if (setjmp(png_jmpbuf((png_ptr))))
     {
       png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
       return NULL;
     }
-  if (info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA)
+  if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_RGB_ALPHA)
     {
       png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
       return NULL;
diff -Nuar imlib-1.9.15-old/Imlib/save.c imlib-1.9.15/Imlib/save.c
--- imlib-1.9.15-old/Imlib/save.c	2004-09-21 03:22:59.000000000 +0300
+++ imlib-1.9.15/Imlib/save.c	2012-07-16 12:17:47.000000000 +0300
@@ -342,7 +342,7 @@
 	      png_destroy_write_struct(&png_ptr, (png_infopp) NULL);
 	      return 0;
 	    }
-	  if (setjmp(png_ptr->jmpbuf))
+	  if (setjmp(png_jmpbuf((png_ptr))))
 	    {
 	      fclose(f);
 	      png_destroy_write_struct(&png_ptr, (png_infopp) NULL);
diff -Nuar imlib-1.9.15-old/Imlib/utils.c imlib-1.9.15/Imlib/utils.c
--- imlib-1.9.15-old/Imlib/utils.c	2012-07-16 12:50:03.000000000 +0300
+++ imlib-1.9.15/Imlib/utils.c	2012-07-16 12:15:54.000000000 +0300
@@ -1982,13 +1982,13 @@
       return NULL;
     }
   
-  if (setjmp(png_ptr->jmpbuf))
+  if (setjmp(png_jmpbuf((png_ptr))))
     {
       png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
       return NULL;
     }
   
-  if (info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA)
+  if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_RGB_ALPHA)
     {
       png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
       return NULL;

You may choose different directory as prefix of course (e.g. choose the directory where your KDE4 is installed).

That's it, KuickShow is now installed and ready to display your images!