freetype-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[freetype2-demos] master 80dc634 29/41: [ftinspect] Modify the about tex


From: Werner Lemberg
Subject: [freetype2-demos] master 80dc634 29/41: [ftinspect] Modify the about text and add actual version.
Date: Mon, 3 Oct 2022 11:27:03 -0400 (EDT)

branch: master
commit 80dc6343f52bcbf26bc1cc5bfaa3e4207819ead7
Author: Charlie Jiang <w@chariri.moe>
Commit: Werner Lemberg <wl@gnu.org>

    [ftinspect] Modify the about text and add actual version.
    
    * src/ftinspect/maingui.cpp: As described.
    
    * src/ftinspect/ftinspect.cpp: Pass the actual version.
    
    * src/ftinspect/engine/engine.cpp, src/ftinspect/engine/engine.hpp:
      Add `dynamicLibraryVersion` func.
---
 src/ftinspect/engine/engine.cpp | 12 ++++++++++++
 src/ftinspect/engine/engine.hpp |  1 +
 src/ftinspect/ftinspect.cpp     | 10 +++++++---
 src/ftinspect/maingui.cpp       | 33 +++++++++++++++++++--------------
 4 files changed, 39 insertions(+), 17 deletions(-)

diff --git a/src/ftinspect/engine/engine.cpp b/src/ftinspect/engine/engine.cpp
index 11164eb..a4bfd8f 100644
--- a/src/ftinspect/engine/engine.cpp
+++ b/src/ftinspect/engine/engine.cpp
@@ -604,6 +604,18 @@ Engine::glyphName(int index)
 }
 
 
+QString
+Engine::dynamicLibraryVersion()
+{
+  int major, minor, patch;
+  FT_Library_Version(library_, &major, &minor, &patch);
+  return QString("%1.%2.%3")
+           .arg(QString::number(major),
+                QString::number(minor),
+                QString::number(patch));
+}
+
+
 int
 Engine::numberOfOpenedFonts()
 {
diff --git a/src/ftinspect/engine/engine.hpp b/src/ftinspect/engine/engine.hpp
index e71564e..ee71932 100644
--- a/src/ftinspect/engine/engine.hpp
+++ b/src/ftinspect/engine/engine.hpp
@@ -105,6 +105,7 @@ public:
   FontFileManager& fontFileManager() { return fontFileManager_; }
   EngineDefaultValues& engineDefaults() { return engineDefaults_; }
   RenderingEngine* renderingEngine() { return renderingEngine_.get(); }
+  QString dynamicLibraryVersion();
 
   int numberOfOpenedFonts();
 
diff --git a/src/ftinspect/ftinspect.cpp b/src/ftinspect/ftinspect.cpp
index 4060f9c..5add270 100644
--- a/src/ftinspect/ftinspect.cpp
+++ b/src/ftinspect/ftinspect.cpp
@@ -7,17 +7,21 @@
 #include "engine/engine.hpp"
 
 #include <QApplication>
-
-#define VERSION "X.Y.Z"
+#include <freetype/freetype.h>
 
 
 int
 main(int argc,
      char** argv)
 {
+  auto version = QString("%1.%2.%3")
+                   .arg(QString::number(FREETYPE_MAJOR),
+                        QString::number(FREETYPE_MINOR),
+                        QString::number(FREETYPE_PATCH));
+
   QApplication app(argc, argv);
   app.setApplicationName("ftinspect");
-  app.setApplicationVersion(VERSION);
+  app.setApplicationVersion(version);
   app.setOrganizationName("FreeType");
   app.setOrganizationDomain("freetype.org");
 
diff --git a/src/ftinspect/maingui.cpp b/src/ftinspect/maingui.cpp
index 1b7ca32..85eacbd 100644
--- a/src/ftinspect/maingui.cpp
+++ b/src/ftinspect/maingui.cpp
@@ -93,23 +93,28 @@ MainGUI::keyPressEvent(QKeyEvent* event)
 void
 MainGUI::about()
 {
+  auto version = QApplication::applicationVersion();
+  auto dynamicVersion = engine_->dynamicLibraryVersion();
+  if (version != dynamicVersion)
+    version = QString("%1 (library ver. %2)").arg(version, dynamicVersion);
   QMessageBox::about(
     this,
     tr("About ftinspect"),
-    tr("<p>This is <b>ftinspect</b> version %1<br>"
-       " Copyright %2 2016-2022<br>"
-       " by Werner Lemberg <tt>&lt;wl@gnu.org&gt;</tt></p>"
-       ""
-       "<p><b>ftinspect</b> shows how a font gets rendered"
-       " by FreeType, allowing control over virtually"
-       " all rendering parameters.</p>"
-       ""
-       "<p>License:"
-       " <a 
href='https://gitlab.freedesktop.org/freetype/freetype/-/blob/master/docs/FTL.TXT'>FreeType"
-       " License (FTL)</a> or"
-       " <a 
href='https://gitlab.freedesktop.org/freetype/freetype/-/blob/master/docs/GPLv2.TXT'>GNU"
-       " GPLv2</a></p>")
-       .arg(QApplication::applicationVersion())
+    tr(R"(<p>This is <b>ftinspect</b> version %1<br>
+Copyright %2 2016-2022<br>
+by Werner Lemberg <tt>&lt;wl@gnu.org&gt;</tt>
+ and Charlie Jiang <tt>&lt;w@chariri.moe&gt;</tt></p>
+
+<p><b>ftinspect</b> shows how a font gets rendered
+by FreeType, allowing control over virtually
+all rendering parameters.</p>
+
+<p>License:
+<a 
href='https://gitlab.freedesktop.org/freetype/freetype/-/blob/master/docs/FTL.TXT'>FreeType
+License (FTL)</a> or
+<a 
href='https://gitlab.freedesktop.org/freetype/freetype/-/blob/master/docs/GPLv2.TXT'>GNU
+GPLv2</a></p>)")
+          .arg(version)
        .arg(QChar(0xA9)));
 }
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]