freetype-commit
[Top][All Lists]
Advanced

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

[freetype2-demos] mpsuzuki-gsoc-2022-chariri-3 87fe838 5/5: load the fon


From: Werner Lemberg
Subject: [freetype2-demos] mpsuzuki-gsoc-2022-chariri-3 87fe838 5/5: load the font files given by the CLI arguments
Date: Wed, 27 Jul 2022 23:06:08 -0400 (EDT)

branch: mpsuzuki-gsoc-2022-chariri-3
commit 87fe8384146b73ca1de82b2a0b4f6eeb7cb44f99
Author: suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
Commit: suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>

    load the font files given by the CLI arguments
---
 src/ftinspect/ftinspect.cpp |  3 +++
 src/ftinspect/maingui.cpp   | 18 ++++++++++++++++++
 src/ftinspect/maingui.hpp   |  1 +
 3 files changed, 22 insertions(+)

diff --git a/src/ftinspect/ftinspect.cpp b/src/ftinspect/ftinspect.cpp
index 4060f9c..e3e473f 100644
--- a/src/ftinspect/ftinspect.cpp
+++ b/src/ftinspect/ftinspect.cpp
@@ -24,6 +24,9 @@ main(int argc,
   Engine engine;
   MainGUI gui(&engine);
 
+  if (argc > 1)
+    gui.loadFontsFromArgs(argc - 1, argv + 1);
+
   gui.show();
 
   return app.exec();
diff --git a/src/ftinspect/maingui.cpp b/src/ftinspect/maingui.cpp
index 0c1a78d..89a1198 100644
--- a/src/ftinspect/maingui.cpp
+++ b/src/ftinspect/maingui.cpp
@@ -134,6 +134,24 @@ MainGUI::loadFonts()
 }
 
 
+// the caller must shift argv & decrement argc,
+// to exclude the ftinspect program itself
+void
+MainGUI::loadFontsFromArgs(int argc, char** argv)
+{
+  QStringList files;
+
+  for (int i = 0; i < argc; i++)
+  {
+    QFileInfo qFileInfo(argv[i]);
+    if (qFileInfo.isReadable())
+      files.append(argv[i]);
+  }
+
+  openFonts(files);
+}
+
+
 void
 MainGUI::openFonts(QStringList const& fileNames)
 {
diff --git a/src/ftinspect/maingui.hpp b/src/ftinspect/maingui.hpp
index 71885b6..88ec2d6 100644
--- a/src/ftinspect/maingui.hpp
+++ b/src/ftinspect/maingui.hpp
@@ -50,6 +50,7 @@ class MainGUI
 public:
   MainGUI(Engine* engine);
   ~MainGUI() override;
+  void loadFontsFromArgs(int, char**);
 
   friend class Engine;
   friend FT_Error faceRequester(FTC_FaceID,



reply via email to

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