[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,
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [freetype2-demos] gsoc-2022-chariri-2 b453b4e 13/30: [ftinspect] Fix build on GCC and on C++11,
Werner Lemberg <=