ComicBook Thumbnail Plugin

Various KDE 1.-4. Improvements

Source i (link to git-repo or to original if based on someone elses unmodified work):

Add the source-code for this project on opencode.net

1
Become a Fan
5.0

Available as/for:
Description:
Comicbook Thumbnail Plugin for KDE 4

*** This is only for 4.3.x and below users - Plugin will be included by default in KDE 4.4! ***

Description
-----------

A Thumbnail creator for KDE 4 that enables previewing ComicBook Reader files (.cbz, .cbr, .cbt) in Dolphin and elsewhere.

The screenshots show the previewer in action inside KDE 4's Dolphin File Manager

INSTALLING
----------

To install, download the file and unpack, then execute the following commands:

[indent]cd comicbook-thumbnails
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` ../
make
sudo make install
kbuildsycoca4[/indent]

Close and restart Dolphin to see it in action.

NOTES:

You might have to enable the plugin manually via Dolphin's Settings > Dolphin Settings > General > Previews (Check the "Comic Book" box).

You may also have to adjust 'Maximum File Size' to an appropriate value (say, 40 MB) for the plugin to work on your large comic files.

View the included README file for more information.
Last changelog:

27-Oct-2009: (0.1 final)
* Cleaned up code according to KDE Policies. (Review - http://reviewboard.kde.org/r/1983/).
* Fixed memory leak issues.
* Removed manual smooth scaling.

26-Oct-2009:
* Some superficial changes - in hope of 4.4 integration.

25-Oct-2009:
* Fixes issue #1 - A missing entry in cmake
leading to make errors.

24-Oct-2009:
* Enhanced cover detection.
* .cbt thumbs support.

24-Oct-2009:
* Initial program - supports thumbs for .cbr and .cbz.


Ratings & Comments

25 Comments

wargleu

works fine ! great job ! thanks a lot

brserek

Works for me with cbr-files but not with cbt. By cbt I mean .tar with changed extension, no compressing. I've compiled just yesterday, so I think it's newest version.

qwertymaniac

Sorry, overlooked the application/x-tar type. Fixed now, redownload the update and build and all types of tar must work under KDE (tar, compressed tar, gz, and bz2).

brserek

Just compiled again. Works perfectly now. Many thanks!

marcinfa

"and all types of tar must work under KDE (tar, compressed tar, gz, and bz2)." - But xz not work!

qwertymaniac

Have applied for a review for entry into 4.4 (Can't do 4.3, new Translation Strings). You can view the reviewboard entry here: http://reviewboard.kde.org/r/1983/ Have also improved the source a bit. Will put up a new download soon.

joethefox

happy to hear the news :)

qwertymaniac

Am sad cause I'll be missing the great user comments here after 4.4 :(

lestek

I have following error after make: lestek@laptop:~/tmp/comicbook-thumbnails/build$ make Scanning dependencies of target comicbookthumbnail_automoc Generating comiccreator.moc [ 0%] Built target comicbookthumbnail_automoc Scanning dependencies of target comicbookthumbnail [ 50%] Building CXX object CMakeFiles/comicbookthumbnail.dir/comicbookthumbnail_automoc.o [100%] Building CXX object CMakeFiles/comicbookthumbnail.dir/comiccreator.o In file included from /usr/include/kio/kio_export.h:24, from /usr/include/kio/thumbcreator.h:23, from /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:23, from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:20: /usr/include/kdemacros.h:162:29: error: QtCore/qglobal.h: No such file or directory In file included from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:20: /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:25:29: error: QtCore/QByteArray: No such file or directory /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:26:29: error: QtCore/QEventLoop: No such file or directory /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:27:27: error: QtCore/QProcess: No such file or directory /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:28:30: error: QtCore/QStringList: No such file or directory In file included from /usr/include/kzip.h:21, from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:23: /usr/include/karchive.h:27:24: error: QtCore/QDate: No such file or directory /usr/include/karchive.h:28:26: error: QtCore/QString: No such file or directory /usr/include/karchive.h:30:24: error: QtCore/QHash: No such file or directory In file included from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:24: /usr/include/kmimetype.h:24:24: error: QtCore/QList: No such file or directory In file included from /usr/include/kmimetype.h:26, from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:24: /usr/include/kurl.h:27:27: error: QtCore/QVariant: No such file or directory /usr/include/kurl.h:28:23: error: QtCore/QUrl: No such file or directory /usr/include/kurl.h:29:23: error: QtCore/QMap: No such file or directory In file included from /usr/include/ksycocaentry.h:22, from /usr/include/kservicetype.h:24, from /usr/include/kmimetype.h:28, from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:24: /usr/include/kglobal.h:23:33: error: QtCore/QAtomicPointer: No such file or directory In file included from /usr/include/ksycocaentry.h:24, from /usr/include/kservicetype.h:24, from /usr/include/kmimetype.h:28, from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:24: /usr/include/ksharedptr.h:30:47: error: QtCore/QExplicitlySharedDataPointer: No such file or directory In file included from /usr/include/kservicetype.h:24, from /usr/include/kmimetype.h:28, from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:24: /usr/include/ksycocaentry.h:26:30: error: QtCore/QDataStream: No such file or directory In file included from /usr/include/kconfig.h:27, from /usr/include/kservicetype.h:31, from /usr/include/kmimetype.h:28, from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:24: /usr/include/kconfigbase.h:29:27: error: QtCore/QtGlobal: No such file or directory In file included from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:25: /usr/include/kdebug.h:27:25: error: QtCore/QDebug: No such file or directory /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:33:24: error: QtGui/QImage: No such file or directory /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:34:24: error: QtCore/QFile: No such file or directory /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:35:28: error: QtCore/QFileInfo: No such file or directory In file included from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:294: /home/lestek/tmp/comicbook-thumbnails/build/comiccreator.moc:12:2: error: #error "The header file 'comiccreator.h' doesn't include <QObject>." /home/lestek/tmp/comicbook-thumbnails/build/comiccreator.moc:13:7: warning: "Q_MOC_OUTPUT_REVISION" is not defined In file included from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:20: /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:34: error: expected class-name before ‘,’ token /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:35: error: ISO C++ forbids declaration of ‘Q_OBJECT’ with no type /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:36: error: expected ‘;’ before ‘public’ /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:49: error: ‘QByteArray’ does not name a type /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:50: error: ‘QByteArray’ does not name a type /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:51: error: ISO C++ forbids declaration of ‘QEventLoop’ with no type /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:51: error: expected ‘;’ before ‘*’ token /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:55: error: ‘QStringList’ has not been declared /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:59: error: ‘QStringList’ has not been declared /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:62: error: ‘QStringList’ has not been declared /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:63: error: ‘QStringList’ has not been declared /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:64: error: expected ‘:’ before ‘Q_SLOTS’ /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:65: error: expected primary-expression before ‘void’ /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:65: error: ISO C++ forbids declaration of ‘Q_SLOTS’ with no type /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:65: error: expected ‘;’ before ‘void’ /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:67: error: ‘QProcess’ has not been declared /home/lestek/tmp/comicbook-thumbnails/comiccreator.h:67: error: expected ‘,’ or ‘...’ before ‘exitStatus’ In file included from /usr/include/kzip.h:21, from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:23: /usr/include/karchive.h:61: error: expected ‘)’ before ‘*’ token /usr/include/karchive.h:72: error: ‘QIODevice’ has not been declared /usr/include/karchive.h:72: error: expected ‘,’ or ‘...’ before ‘mode’ /usr/include/karchive.h:94: error: ‘QIODevice’ has not been declared /usr/include/karchive.h:94: error: expected ‘;’ before ‘mode’ /usr/include/karchive.h:100: error: expected ‘;’ before ‘*’ token /usr/include/karchive.h:200: error: ‘qint64’ has not been declared /usr/include/karchive.h:224: error: ‘qint64’ has not been declared /usr/include/karchive.h:231: error: ‘qint64’ has not been declared /usr/include/karchive.h:238: error: ‘qint64’ has not been declared /usr/include/karchive.h:246: error: ‘QIODevice’ has not been declared /usr/include/karchive.h:246: error: expected ‘,’ or ‘...’ before ‘mode’ /usr/include/karchive.h:315: error: ‘qint64’ has not been declared /usr/include/karchive.h:325: error: ‘qint64’ has not been declared /usr/include/karchive.h:341: error: ‘QIODevice’ has not been declared /usr/include/karchive.h:341: error: expected ‘,’ or ‘...’ before ‘mode’ /usr/include/karchive.h:347: error: ‘QIODevice’ has not been declared /usr/include/karchive.h:392: error: ‘QDateTime’ does not name a type /usr/include/karchive.h:474: error: ‘qint64’ has not been declared /usr/include/karchive.h:474: error: ‘qint64’ has not been declared /usr/include/karchive.h:485: error: ‘qint64’ does not name a type /usr/include/karchive.h:490: error: ‘qint64’ does not name a type /usr/include/karchive.h:495: error: ‘qint64’ has not been declared /usr/include/karchive.h:502: error: ‘QByteArray’ does not name a type /usr/include/karchive.h:514: error: ‘QIODevice’ declared as a ‘virtual’ field /usr/include/karchive.h:514: error: expected ‘;’ before ‘*’ token /usr/include/karchive.h:568: error: ‘QStringList’ does not name a type In file included from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:23: /usr/include/kzip.h:62: error: expected ‘)’ before ‘*’ token /usr/include/kzip.h:122: error: ‘qint64’ has not been declared /usr/include/kzip.h:131: error: ‘qint64’ has not been declared /usr/include/kzip.h:139: error: ‘qint64’ has not been declared /usr/include/kzip.h:147: error: ‘QIODevice’ has not been declared /usr/include/kzip.h:147: error: expected ‘,’ or ‘...’ before ‘mode’ /usr/include/kzip.h:179: error: ‘qint64’ has not been declared /usr/include/kzip.h:179: error: ‘qint64’ has not been declared /usr/include/kzip.h:180: error: ‘qint64’ has not been declared /usr/include/kzip.h:188: error: ‘qint64’ does not name a type /usr/include/kzip.h:191: error: ‘qint64’ has not been declared /usr/include/kzip.h:194: error: ‘qint64’ has not been declared /usr/include/kzip.h:195: error: ‘qint64’ does not name a type /usr/include/kzip.h:208: error: ‘QByteArray’ does not name a type /usr/include/kzip.h:217: error: ‘QIODevice’ declared as a ‘virtual’ field /usr/include/kzip.h:217: error: expected ‘;’ before ‘*’ token In file included from /usr/include/kmimetype.h:26, from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:24: /usr/include/kurl.h:112: error: expected class-name before ‘{’ token /usr/include/kurl.h:114: error: expected ‘;’ before ‘<’ token /usr/include/kurl.h:125: error: expected template-name before ‘<’ token /usr/include/kurl.h:125: error: expected ‘{’ before ‘<’ token /usr/include/kurl.h:125: error: expected unqualified-id before ‘<’ token In file included from /home/lestek/tmp/comicbook-thumbnails/comiccreator.cpp:294: /home/lestek/tmp/comicbook-thumbnails/build/comiccreator.moc:81: error: expected ‘}’ at end of input /home/lestek/tmp/comicbook-thumbnails/build/comiccreator.moc:81: error: expected unqualified-id at end of input make[2]: *** [CMakeFiles/comicbookthumbnail.dir/comiccreator.o] Error 1 make[1]: *** [CMakeFiles/comicbookthumbnail.dir/all] Error 2 make: *** [all] Error 2 lestek@laptop:~/tmp/comicbook-thumbnails/build$ (Karmic Koala 9.10, Kde 4.3.2, x64)

qwertymaniac

Hi, Updated the download with a newer CMakeLists.txt file. Redownload and build - it should work. Thanks to the anonymous user tip [url=http://bitbucket.org/qwertymaniac/comicbook-thumbnails/issue/1/cannot-compile-in-ubuntu-904-kde-432]here[/url]. Thank you for reporting this in, am new at CMake :)

qwertymaniac
lestek

Thanks, I've added this two lines to CMakeList.txt: add_definitions (${QT_DEFINITIONS} ${KDE4_DEFINITIONS}) include_directories (${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${KDE4_INCLUDES}) and now everything works!

lestek

Install works, but there is no previewing. The same afer redownloadnig Your file.

lestek

Sorry, i've forgot to enable preview for "Comic Book files" in Dolphin configuration. Besides my testing .cbr file was too large - preview works after changing "Maximum file size" in preview configuration. So, everything realy works. Thanks again!

qwertymaniac

I should put this in the README, forgot about it. One has to set the maximum file size to something around 40 MB. Wish there was a per-plugin setting for this though.

joethefox

Excellent work. Should be included in the next official release of KDE, 4.4.

qwertymaniac

Is there a specific process to get this done? :)

joethefox

I do not know maybe you can start from here: http://www.kde.org/getinvolved/ http://www.kde.org/getinvolved/development/ bye

Nordlibris

Polish like this is why I love my KDE4 desktop. Most excellent work!

qwertymaniac

Thank you for the comment - KDE is indeed beautiful in all aspects :)

srog

Thumbnailing fine with the Kubuntu 9.04 / KDE 4.2 and Kubuntu 9.10 (RC) / KDE 4.3. Tested with the CBR and CBZ. Thank you of a fine comicbook-thumbnailer.

qwertymaniac

You're welcome. Necessity (read: 500 unmanageable comic files) was the mother of this invention ;-)

joth666

Nice work! It works flawlessly here (admittedly I've only tried it on .cbr files), and makes it a lot easier to find the one I want. Just a question though: is it normal that the properties window thinks the contents of the file is a RAR-archive??

srog

Here (KDE 4.3) the type is comic book archive. The content is Zip/Rar archive.

qwertymaniac

Yes it is normal and its 'cause the .cbr (application/x-cbr MIME) is just a subtype of .rar (application/x-rar). They're just .rar files renamed and contain ordered image files :) Glad to know that the plugin helped you! If you notice any bugs, do let me know :)

Pling
0 Affiliates
Details
license
version 0.1
updated
added
downloads 24h 0
mediaviews 24h 0
pageviews 24h 1

Other Various KDE 1.-4. Improvements:

Slicker Debian Package for Woody
cirrusgr
last update date: 22 years ago

Score 5.0

Konqueror/kdesktop suggestion
PovMan
last update date: 22 years ago

Score 5.0

Biiig buttons
dbojan
last update date: 20 years ago

Score 5.0

Yet Another KControl
Frans
last update date: 21 years ago

Score 5.0

Next window and next/previos window
dbojan
last update date: 20 years ago

Score 5.0

Fantasie Toolbar
katoe
last update date: 20 years ago

Score 5.0