freetype-commit
[Top][All Lists]
Advanced

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

[freetype2-demos] gsoc-2022-chariri-2 b453b4e 13/30: [ftinspect] Fix bui


From: Werner Lemberg
Subject: [freetype2-demos] gsoc-2022-chariri-2 b453b4e 13/30: [ftinspect] Fix build on GCC and on C++11
Date: Mon, 11 Jul 2022 07:17:38 -0400 (EDT)

branch: gsoc-2022-chariri-2
commit b453b4e0eaf190532cced3b87180b71979a2fc79
Author: Charlie Jiang <w@chariri.moe>
Commit: Charlie Jiang <w@chariri.moe>

    [ftinspect] Fix build on GCC and on C++11
    
    MSVC is way too lenient and the current code won't compile on GCC, C++11.
    This commit fixed it.
    
    * src/ftinspect/engine/engine.hpp: Fix enum forward decl, explicitly 
defining
    enum's underlying type.
    
    * src/ftinspect/engine/fontfilemanager.hpp,
      src/ftinspect/engine/fontfilemanager.cpp: Define destructor as virtual.
    
    * src/ftinspect/models/ttsettingscomboboxmodel.hpp: Define all destructors 
as
    virtual; fix enum forward decl; add missing `Q_OBJECT` declaration.
    
    * src/ftinspect/panels/settingpanel.cpp: Remove C++14 usage.
---
 src/ftinspect/engine/engine.hpp                  |  2 +-
 src/ftinspect/engine/fontfilemanager.cpp         |  5 -----
 src/ftinspect/engine/fontfilemanager.hpp         |  2 +-
 src/ftinspect/models/ttsettingscomboboxmodel.hpp | 16 +++++++++-------
 src/ftinspect/panels/settingpanel.cpp            |  6 +++---
 5 files changed, 14 insertions(+), 17 deletions(-)

diff --git a/src/ftinspect/engine/engine.hpp b/src/ftinspect/engine/engine.hpp
index 4231ca8..1ba09a8 100644
--- a/src/ftinspect/engine/engine.hpp
+++ b/src/ftinspect/engine/engine.hpp
@@ -175,7 +175,7 @@ public:
   /// Actual definition
 
   // XXX cover all available modules
-  enum FontType
+  enum FontType : int
   {
     FontType_CFF,
     FontType_TrueType,
diff --git a/src/ftinspect/engine/fontfilemanager.cpp 
b/src/ftinspect/engine/fontfilemanager.cpp
index de3d065..9931430 100644
--- a/src/ftinspect/engine/fontfilemanager.cpp
+++ b/src/ftinspect/engine/fontfilemanager.cpp
@@ -19,11 +19,6 @@ FontFileManager::FontFileManager()
 }
 
 
-FontFileManager::~FontFileManager()
-{
-}
-
-
 int
 FontFileManager::size()
 {
diff --git a/src/ftinspect/engine/fontfilemanager.hpp 
b/src/ftinspect/engine/fontfilemanager.hpp
index ed4032c..d1fe2af 100644
--- a/src/ftinspect/engine/fontfilemanager.hpp
+++ b/src/ftinspect/engine/fontfilemanager.hpp
@@ -20,7 +20,7 @@ class FontFileManager
   Q_OBJECT
 public:
   FontFileManager();
-  ~FontFileManager() override;
+  virtual ~FontFileManager() = default;
 
   int size();
   void append(QStringList newFileNames);
diff --git a/src/ftinspect/models/ttsettingscomboboxmodel.hpp 
b/src/ftinspect/models/ttsettingscomboboxmodel.hpp
index 3d3489f..c5a72fe 100644
--- a/src/ftinspect/models/ttsettingscomboboxmodel.hpp
+++ b/src/ftinspect/models/ttsettingscomboboxmodel.hpp
@@ -26,7 +26,7 @@ public:
   };
 
   explicit HintingModeComboBoxModel(QObject* parent);
-  ~HintingModeComboBoxModel() = default;
+  virtual ~HintingModeComboBoxModel() = default;
 
   int rowCount(const QModelIndex& parent) const;
   QVariant data(const QModelIndex& index,
@@ -53,13 +53,13 @@ private:
 public:
   // Note: Ensure related funcs are also changed when
   // these enums are changed!
-  enum HintingEngineType
+  enum HintingEngineType : int
   {
     HintingEngineType_TrueType,
     HintingEngineType_CFF
   };
 
-  enum HintingMode
+  enum HintingMode : int
   {
     HintingMode_TrueType_v35 = 0,
     HintingMode_TrueType_v38,
@@ -83,7 +83,7 @@ public:
   };
 
   explicit SimpleComboBoxModel(QObject* parent);
-  ~SimpleComboBoxModel() = default;
+  virtual ~SimpleComboBoxModel() = default;
 
   int rowCount(const QModelIndex& parent) const;
   QVariant data(const QModelIndex& index,
@@ -99,6 +99,7 @@ protected:
 class LCDFilterComboBoxModel
 : public SimpleComboBoxModel
 {
+  Q_OBJECT
 public:
   enum LCDFilter : int;
   struct LCDFilterItem
@@ -108,7 +109,7 @@ public:
   };
 
   explicit LCDFilterComboBoxModel(QObject* parent);
-  ~LCDFilterComboBoxModel() = default;
+  virtual ~LCDFilterComboBoxModel() = default;
 
 public:
   enum LCDFilter
@@ -124,11 +125,12 @@ public:
 class AntiAliasingComboBoxModel
 : public SimpleComboBoxModel
 {
+  Q_OBJECT
 public:
   enum AntiAliasing : int;
 
   explicit AntiAliasingComboBoxModel(QObject* parent);
-  ~AntiAliasingComboBoxModel() = default;
+  virtual ~AntiAliasingComboBoxModel() = default;
   
   QVariant data(const QModelIndex& index,
                 int role) const;
@@ -143,7 +145,7 @@ private:
   bool lightAntiAliasingEnabled_;
 
 public:
-  enum AntiAliasing
+  enum AntiAliasing : int
   {
     AntiAliasing_None,
     AntiAliasing_Normal,
diff --git a/src/ftinspect/panels/settingpanel.cpp 
b/src/ftinspect/panels/settingpanel.cpp
index 4673e3a..c459481 100644
--- a/src/ftinspect/panels/settingpanel.cpp
+++ b/src/ftinspect/panels/settingpanel.cpp
@@ -238,13 +238,13 @@ SettingPanel::createConnections()
 {
   // use `qOverload` here to prevent ambiguity.
   connect(hintingModeComboBox_, 
-          qOverload<int>(&QComboBox::currentIndexChanged),
+          QOverload<int>::of(&QComboBox::currentIndexChanged),
           this, &SettingPanel::checkHintingMode);
   connect(antiAliasingComboBox_,
-          qOverload<int>(&QComboBox::currentIndexChanged),
+          QOverload<int>::of(&QComboBox::currentIndexChanged),
           this, &SettingPanel::checkAntiAliasing);
   connect(lcdFilterComboBox_, 
-          qOverload<int>(&QComboBox::currentIndexChanged),
+          QOverload<int>::of(&QComboBox::currentIndexChanged),
           this, &SettingPanel::checkLCDFilter);
 
   connect(gammaSlider_, &QSlider::valueChanged,



reply via email to

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