[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [kio-extras] thumbnail: Port textcreator thumbnailer
From:       Maarten De Meyer <de.meyer.maarten () gmail ! com>
Date:       2014-09-29 19:42:55
Message-ID: E1XYgqV-0004Qp-Fw () scm ! kde ! org
[Download RAW message or body]

Git commit 7cadf8888ec1b02e30512a44c1bae76202f30f96 by Maarten De Meyer.
Committed on 28/09/2014 at 22:32.
Pushed by demeyer into branch 'master'.

Port textcreator thumbnailer

Thumbcreator needs to be a QGuiApplication because we use pixmaps.
CCBUG: 339456
REVIEW: 120408

M  +14   -11   thumbnail/CMakeLists.txt
M  +7    -7    thumbnail/textcreator.cpp
M  +1    -1    thumbnail/thumbnail.cpp

http://commits.kde.org/kio-extras/7cadf8888ec1b02e30512a44c1bae76202f30f96

diff --git a/thumbnail/CMakeLists.txt b/thumbnail/CMakeLists.txt
index aec8b8e..4c2d5e9 100644
--- a/thumbnail/CMakeLists.txt
+++ b/thumbnail/CMakeLists.txt
@@ -107,16 +107,19 @@ target_link_libraries(svgthumbnail
 
 install(TARGETS svgthumbnail DESTINATION ${PLUGIN_INSTALL_DIR})
 
-# ########### next target ###############
-# 
-# set(textthumbnail_PART_SRCS textcreator.cpp)
-# 
-# add_library(textthumbnail MODULE ${textthumbnail_PART_SRCS})
-# 
-# target_link_libraries(textthumbnail ${KIO_LIBRARIES})
-# 
-# install(TARGETS textthumbnail DESTINATION ${PLUGIN_INSTALL_DIR})
-# 
+########### next target ###############
+
+set(textthumbnail_PART_SRCS textcreator.cpp)
+
+add_library(textthumbnail MODULE ${textthumbnail_PART_SRCS})
+
+target_link_libraries(textthumbnail
+    Qt5::Gui
+    KF5::KIOWidgets
+)
+
+install(TARGETS textthumbnail DESTINATION ${PLUGIN_INSTALL_DIR})
+
 # ########### next target ###############
 # 
 # if(NOT WINCE)
@@ -222,7 +225,7 @@ install(FILES
     svgthumbnail.desktop
     imagethumbnail.desktop
     jpegthumbnail.desktop
-#    textthumbnail.desktop
+    textthumbnail.desktop
 #    htmlthumbnail.desktop
 #    djvuthumbnail.desktop
 #    desktopthumbnail.desktop
diff --git a/thumbnail/textcreator.cpp b/thumbnail/textcreator.cpp
index d3f633c..7c0263c 100644
--- a/thumbnail/textcreator.cpp
+++ b/thumbnail/textcreator.cpp
@@ -21,16 +21,15 @@
 #include "textcreator.h"
 
 #include <QFile>
+#include <QFontDatabase>
 #include <QPixmap>
 #include <QImage>
 #include <QPainter>
 #include <QPalette>
 #include <QTextCodec>
 
-
-#include <kglobalsettings.h>
-#include <kencodingprober.h>
-#include <klocale.h>
+// TODO Fix or remove kencodingprober code
+// #include <kencodingprober.h>
 
 extern "C"
 {
@@ -60,7 +59,7 @@ static QTextCodec *codecFromContent(const char *data, int dataSize)
 #else
     QByteArray ba = QByteArray::fromRawData(data, dataSize);
     // try to detect UTF text, fall back to locale default (which is usually UTF-8)
-    return QTextCodec::codecForUtfText(ba, KGlobal::locale()->codecForEncoding());
+    return QTextCodec::codecForUtfText(ba, QTextCodec::codecForLocale());
 #endif
 }
 
@@ -84,7 +83,8 @@ bool TextCreator::create(const QString &path, int width, int height, QImage &img
     int yborder = 1 + pixmapSize.height()/16; // minimum y-border
 
     // this font is supposed to look good at small sizes
-    QFont font = KGlobalSettings::smallestReadableFont();
+    QFont font = QFontDatabase::systemFont(QFontDatabase::SmallestReadableFont);
+
     font.setPixelSize( qMax(7, qMin( 10, ( pixmapSize.height() - 2 * yborder ) / 16 ) ) );
     QFontMetrics fm( font );
 
@@ -121,7 +121,7 @@ bool TextCreator::create(const QString &path, int width, int height, QImage &img
             foreach ( const QString &line, textLines ) {
                 QString trimmedLine = line.trimmed();
                 if ( trimmedLine.contains( '\t' ) || trimmedLine.contains( "  " ) ) {
-                    font.setFamily( KGlobalSettings::fixedFont().family() );
+                    font.setFamily( QFontDatabase::systemFont(QFontDatabase::FixedFont).family());
                     break;
                 }
             }
diff --git a/thumbnail/thumbnail.cpp b/thumbnail/thumbnail.cpp
index 3a38dc9..d4a7f35 100644
--- a/thumbnail/thumbnail.cpp
+++ b/thumbnail/thumbnail.cpp
@@ -118,7 +118,7 @@ extern "C" Q_DECL_EXPORT int kdemain( int argc, char **argv )
     // and HTML previews need even KApplication :(
     putenv(strdup("SESSION_MANAGER="));
 
-    QCoreApplication app( argc, argv);
+    QGuiApplication app(argc, argv);
 #endif
 
 
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic