OSDN Git Service

kcontrol: convert fonts KCM pixmaps to PNG
authorIvailo Monev <xakepa10@gmail.com>
Thu, 20 Oct 2022 19:42:50 +0000 (22:42 +0300)
committerIvailo Monev <xakepa10@gmail.com>
Thu, 20 Oct 2022 19:42:50 +0000 (22:42 +0300)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
kcontrol/fonts/CMakeLists.txt
kcontrol/fonts/data/aa_bgr.png [new file with mode: 0644]
kcontrol/fonts/data/aa_rgb.png [new file with mode: 0644]
kcontrol/fonts/data/aa_vbgr.png [new file with mode: 0644]
kcontrol/fonts/data/aa_vrgb.png [new file with mode: 0644]
kcontrol/fonts/fonts.cpp

index d9419e2..d73fd5b 100644 (file)
@@ -44,3 +44,12 @@ install(
     FILES fonts.desktop
     DESTINATION ${KDE4_SERVICES_INSTALL_DIR}
 )
+
+install(
+    FILES
+    data/aa_rgb.png
+    data/aa_bgr.png
+    data/aa_vrgb.png
+    data/aa_vbgr.png
+    DESTINATION ${KDE4_DATA_INSTALL_DIR}/kcminput/pics
+)
diff --git a/kcontrol/fonts/data/aa_bgr.png b/kcontrol/fonts/data/aa_bgr.png
new file mode 100644 (file)
index 0000000..ebda153
Binary files /dev/null and b/kcontrol/fonts/data/aa_bgr.png differ
diff --git a/kcontrol/fonts/data/aa_rgb.png b/kcontrol/fonts/data/aa_rgb.png
new file mode 100644 (file)
index 0000000..3394648
Binary files /dev/null and b/kcontrol/fonts/data/aa_rgb.png differ
diff --git a/kcontrol/fonts/data/aa_vbgr.png b/kcontrol/fonts/data/aa_vbgr.png
new file mode 100644 (file)
index 0000000..773e8f9
Binary files /dev/null and b/kcontrol/fonts/data/aa_vbgr.png differ
diff --git a/kcontrol/fonts/data/aa_vrgb.png b/kcontrol/fonts/data/aa_vrgb.png
new file mode 100644 (file)
index 0000000..fe13b1f
Binary files /dev/null and b/kcontrol/fonts/data/aa_vrgb.png differ
index c497e45..98e2aeb 100644 (file)
 #undef None
 #endif
 
-static const char * const aa_rgb_xpm[]={
-"12 12 3 1",
-"a c #0000ff",
-"# c #00ff00",
-". c #ff0000",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa"};
-static const char * const aa_bgr_xpm[]={
-"12 12 3 1",
-". c #0000ff",
-"# c #00ff00",
-"a c #ff0000",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa",
-"....####aaaa"};
-static const char * const aa_vrgb_xpm[]={
-"12 12 3 1",
-"a c #0000ff",
-"# c #00ff00",
-". c #ff0000",
-"............",
-"............",
-"............",
-"............",
-"############",
-"############",
-"############",
-"############",
-"aaaaaaaaaaaa",
-"aaaaaaaaaaaa",
-"aaaaaaaaaaaa",
-"aaaaaaaaaaaa"};
-static const char * const aa_vbgr_xpm[]={
-"12 12 3 1",
-". c #0000ff",
-"# c #00ff00",
-"a c #ff0000",
-"............",
-"............",
-"............",
-"............",
-"############",
-"############",
-"############",
-"############",
-"aaaaaaaaaaaa",
-"aaaaaaaaaaaa",
-"aaaaaaaaaaaa",
-"aaaaaaaaaaaa"};
-
-static const char* const * const aaPixmaps[]={ aa_rgb_xpm, aa_bgr_xpm, aa_vrgb_xpm, aa_vbgr_xpm };
+static QPixmap aaPixmap(const int t)
+{
+    static const char* const aaPixmaps[] = {
+        "kcminput/pics/aa_rgb.png",
+        "kcminput/pics/aa_bgr.png",
+        "kcminput/pics/aa_vrgb.png",
+        "kcminput/pics/aa_vbgr.png",
+    };
+    const QString pixmapfilepath = KGlobal::dirs()->findResource("data", aaPixmaps[t]);
+    if (pixmapfilepath.isEmpty()) {
+        kWarning() << "No image for" << aaPixmaps[t];
+        return QPixmap();
+    }
+    return QPixmap(pixmapfilepath);
+}
 
 /**** DLL Interface ****/
 K_PLUGIN_FACTORY(FontFactory, registerPlugin<KFonts>(); )
@@ -264,7 +209,7 @@ FontAASettings::FontAASettings(QWidget *parent)
   subPixelType->setWhatsThis( subPixelWhatsThis );
 
   for(int t=KXftConfig::SubPixel::None+1; t<=KXftConfig::SubPixel::Vbgr; ++t)
-    subPixelType->addItem(QPixmap(aaPixmaps[t-1]), i18n(KXftConfig::description((KXftConfig::SubPixel::Type)t).toUtf8()));
+    subPixelType->addItem(aaPixmap(t-1), i18n(KXftConfig::description((KXftConfig::SubPixel::Type)t).toUtf8()));
 
   QLabel *hintingLabel=new QLabel(i18n("Hinting style: "), mw);
   hintingStyle=new QComboBox(mw);