Add meta classes.

parent 8cc8a2e4
// This file is part of Qtah.
//
// Copyright 2015-2018 The Qtah Authors.
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "wrap_qmetaclassinfo.hpp"
namespace qtah {
namespace qmetaclassinfo {
QString name(const QMetaClassInfo& self) {
return self.name();
}
QString value(const QMetaClassInfo& self) {
return self.value();
}
} // namespace qmetaclassinfo
} // namespace qtah
#ifndef QTAH_WRAP_QMETACLASSINFO_HPP
#define QTAH_WRAP_QMETACLASSINFO_HPP
// This file is part of Qtah.
//
// Copyright 2015-2018 The Qtah Authors.
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
#include <QMetaClassInfo>
#include <QString>
namespace qtah {
namespace qmetaclassinfo {
QString name(const QMetaClassInfo& self);
QString value(const QMetaClassInfo& self);
} // namespace qmetaclassinfo
} // namespace qtah
#endif // QTAH_WRAP_QMETACLASSINFO_HPP
// This file is part of Qtah.
//
// Copyright 2015-2018 The Qtah Authors.
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "wrap_qmetaobject.hpp"
namespace qtah {
namespace qmetaobject {
int indexOfClassInfo(const QMetaObject& self, const QString& name) {
return self.indexOfClassInfo(name.toStdString().c_str());
}
int indexOfConstructor(const QMetaObject& self, const QString& name) {
return self.indexOfConstructor(name.toStdString().c_str());
}
int indexOfEnumerator(const QMetaObject& self, const QString& name) {
return self.indexOfEnumerator(name.toStdString().c_str());
}
int indexOfMethod(const QMetaObject& self, const QString& name) {
return self.indexOfMethod(name.toStdString().c_str());
}
int indexOfProperty(const QMetaObject& self, const QString& name) {
return self.indexOfProperty(name.toStdString().c_str());
}
int indexOfSignal(const QMetaObject& self, const QString& name) {
return self.indexOfSignal(name.toStdString().c_str());
}
int indexOfSlot(const QMetaObject& self, const QString& name) {
return self.indexOfSlot(name.toStdString().c_str());
}
} // namespace qmetaobject
} // namespace qtah
#ifndef QTAH_WRAP_QMETAOBJECT_HPP
#define QTAH_WRAP_QMETAOBJECT_HPP
// This file is part of Qtah.
//
// Copyright 2015-2018 The Qtah Authors.
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
#include <QMetaObject>
#include <QString>
namespace qtah {
namespace qmetaobject {
int indexOfClassInfo(const QMetaObject& self, const QString& name);
int indexOfConstructor(const QMetaObject& self, const QString& name);
int indexOfEnumerator(const QMetaObject& self, const QString& name);
int indexOfMethod(const QMetaObject& self, const QString& name);
int indexOfProperty(const QMetaObject& self, const QString& name);
int indexOfSignal(const QMetaObject& self, const QString& name);
int indexOfSlot(const QMetaObject& self, const QString& name);
} // namespace qmetaobject
} // namespace qtah
#endif // QTAH_WRAP_QMETAOBJECT_HPP
......@@ -69,6 +69,11 @@ executable qtah-generator
, Graphics.UI.Qtah.Generator.Interface.Core.QList
, Graphics.UI.Qtah.Generator.Interface.Core.QMargins
, Graphics.UI.Qtah.Generator.Interface.Core.QMarginsF
, Graphics.UI.Qtah.Generator.Interface.Core.QMetaClassInfo
, Graphics.UI.Qtah.Generator.Interface.Core.QMetaEnum
, Graphics.UI.Qtah.Generator.Interface.Core.QMetaMethod
, Graphics.UI.Qtah.Generator.Interface.Core.QMetaObject
, Graphics.UI.Qtah.Generator.Interface.Core.QMetaProperty
, Graphics.UI.Qtah.Generator.Interface.Core.QModelIndex
, Graphics.UI.Qtah.Generator.Interface.Core.QObject
, Graphics.UI.Qtah.Generator.Interface.Core.QPersistentModelIndex
......
......@@ -33,6 +33,11 @@ import qualified Graphics.UI.Qtah.Generator.Interface.Core.QItemSelectionRange a
import qualified Graphics.UI.Qtah.Generator.Interface.Core.QList as QList
import qualified Graphics.UI.Qtah.Generator.Interface.Core.QMargins as QMargins
import qualified Graphics.UI.Qtah.Generator.Interface.Core.QMarginsF as QMarginsF
import qualified Graphics.UI.Qtah.Generator.Interface.Core.QMetaClassInfo as QMetaClassInfo
import qualified Graphics.UI.Qtah.Generator.Interface.Core.QMetaEnum as QMetaEnum
import qualified Graphics.UI.Qtah.Generator.Interface.Core.QMetaMethod as QMetaMethod
import qualified Graphics.UI.Qtah.Generator.Interface.Core.QMetaObject as QMetaObject
import qualified Graphics.UI.Qtah.Generator.Interface.Core.QMetaProperty as QMetaProperty
import qualified Graphics.UI.Qtah.Generator.Interface.Core.QModelIndex as QModelIndex
import qualified Graphics.UI.Qtah.Generator.Interface.Core.QObject as QObject
import qualified Graphics.UI.Qtah.Generator.Interface.Core.QPalette as QPalette
......@@ -75,6 +80,11 @@ modules =
, QItemSelectionRange.aModule
, QMargins.aModule
, QMarginsF.aModule
, QMetaClassInfo.aModule
, QMetaEnum.aModule
, QMetaMethod.aModule
, QMetaObject.aModule
, QMetaProperty.aModule
, QModelIndex.aModule
, QObject.aModule
, QPalette.aModule
......
......@@ -17,12 +17,15 @@
-- | Bindings for @QList@.
module Graphics.UI.Qtah.Generator.Interface.Core.QList (
c_QListQByteArray,
c_QListQModelIndex,
c_QListQObject,
) where
import Foreign.Hoppy.Generator.Spec (Class)
c_QListQByteArray :: Class
c_QListQModelIndex :: Class
c_QListQObject :: Class
-- This file is part of Qtah.
--
-- Copyright 2015-2018 The Qtah Authors.
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU Lesser General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU Lesser General Public License for more details.
--
-- You should have received a copy of the GNU Lesser General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
module Graphics.UI.Qtah.Generator.Interface.Core.QMetaClassInfo (
aModule,
c_QMetaClassInfo,
) where
import Foreign.Hoppy.Generator.Spec (
Export (ExportClass),
MethodApplicability (MConst),
Purity (Nonpure),
addReqIncludes,
classSetConversionToGc,
classSetEntityPrefix,
ident,
ident2,
includeLocal,
includeStd,
makeClass,
makeFnMethod,
)
import Foreign.Hoppy.Generator.Spec.ClassFeature (
ClassFeature (Copyable),
classAddFeatures,
)
import Foreign.Hoppy.Generator.Types (objT)
import Graphics.UI.Qtah.Generator.Interface.Core.QString (c_QString)
import Graphics.UI.Qtah.Generator.Module (AModule (AQtModule), makeQtModule)
import Graphics.UI.Qtah.Generator.Types
{-# ANN module "HLint: ignore Use camelCase" #-}
aModule =
AQtModule $
makeQtModule ["Core", "QMetaClassInfo"]
[ QtExport $ ExportClass c_QMetaClassInfo ]
c_QMetaClassInfo =
addReqIncludes [ includeStd "QMetaClassInfo"
, includeLocal "wrap_qmetaclassinfo.hpp"
] $
classSetConversionToGc $
classAddFeatures [Copyable] $
classSetEntityPrefix "" $
makeClass (ident "QMetaClassInfo") Nothing [] $
[ makeFnMethod (ident2 "qtah" "qmetaclassinfo" "name") "name" MConst Nonpure
[objT c_QMetaClassInfo] $ objT c_QString
, makeFnMethod (ident2 "qtah" "qmetaclassinfo" "value") "value" MConst Nonpure
[objT c_QMetaClassInfo] $ objT c_QString
]
-- This file is part of Qtah.
--
-- Copyright 2015-2018 The Qtah Authors.
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU Lesser General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU Lesser General Public License for more details.
--
-- You should have received a copy of the GNU Lesser General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
module Graphics.UI.Qtah.Generator.Interface.Core.QMetaEnum (
aModule,
c_QMetaEnum,
) where
import Foreign.Hoppy.Generator.Spec (
Export (ExportClass),
addReqIncludes,
classSetConversionToGc,
classSetEntityPrefix,
ident,
includeStd,
makeClass,
)
import Foreign.Hoppy.Generator.Spec.ClassFeature (
ClassFeature (Copyable),
classAddFeatures,
)
--import Foreign.Hoppy.Generator.Types (boolT, intT, objT, ptrT, refT, voidT)
import Graphics.UI.Qtah.Generator.Module (AModule (AQtModule), makeQtModule)
import Graphics.UI.Qtah.Generator.Types
{-# ANN module "HLint: ignore Use camelCase" #-}
aModule =
AQtModule $
makeQtModule ["Core", "QMetaEnum"]
[ QtExport $ ExportClass c_QMetaEnum ]
c_QMetaEnum =
addReqIncludes [includeStd "QMetaEnum"] $
classSetConversionToGc $
classAddFeatures [Copyable] $
classSetEntityPrefix "" $
makeClass (ident "QMetaEnum") Nothing []
[ -- TODO
]
-- This file is part of Qtah.
--
-- Copyright 2015-2018 The Qtah Authors.
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU Lesser General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU Lesser General Public License for more details.
--
-- You should have received a copy of the GNU Lesser General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
module Graphics.UI.Qtah.Generator.Interface.Core.QMetaMethod (
aModule,
c_QMetaMethod,
) where
import Foreign.Hoppy.Generator.Spec (
Export (ExportClass),
addReqIncludes,
classSetConversionToGc,
classSetEntityPrefix,
ident,
includeStd,
makeClass,
)
import Foreign.Hoppy.Generator.Spec.ClassFeature (
ClassFeature (Copyable),
classAddFeatures,
)
--import Foreign.Hoppy.Generator.Types (boolT, intT, objT, ptrT, refT, voidT)
import Graphics.UI.Qtah.Generator.Module (AModule (AQtModule), makeQtModule)
import Graphics.UI.Qtah.Generator.Types
{-# ANN module "HLint: ignore Use camelCase" #-}
aModule =
AQtModule $
makeQtModule ["Core", "QMetaMethod"]
[ QtExport $ ExportClass c_QMetaMethod ]
c_QMetaMethod =
addReqIncludes [includeStd "QMetaMethod"] $
classSetConversionToGc $
classAddFeatures [Copyable] $
classSetEntityPrefix "" $
makeClass (ident "QMetaMethod") Nothing []
[ -- TODO
]
-- This file is part of Qtah.
--
-- Copyright 2015-2018 The Qtah Authors.
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU Lesser General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU Lesser General Public License for more details.
--
-- You should have received a copy of the GNU Lesser General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
module Graphics.UI.Qtah.Generator.Interface.Core.QMetaObject (
aModule,
c_QMetaObject,
) where
import Foreign.Hoppy.Generator.Spec (
Export (ExportClass),
MethodApplicability (MConst),
Purity (Nonpure),
addReqIncludes,
classSetConversionToGc,
classSetEntityPrefix,
ident,
ident2,
includeLocal,
includeStd,
makeClass,
makeFnMethod,
mkConstMethod,
)
import Foreign.Hoppy.Generator.Spec.ClassFeature (
ClassFeature (Copyable),
classAddFeatures,
)
import Foreign.Hoppy.Generator.Types (boolT, constT, intT, objT, ptrT)
import Graphics.UI.Qtah.Generator.Interface.Core.QMetaClassInfo (c_QMetaClassInfo)
import Graphics.UI.Qtah.Generator.Interface.Core.QMetaEnum (c_QMetaEnum)
import Graphics.UI.Qtah.Generator.Interface.Core.QMetaMethod (c_QMetaMethod)
import Graphics.UI.Qtah.Generator.Interface.Core.QMetaProperty (c_QMetaProperty)
import Graphics.UI.Qtah.Generator.Interface.Core.QString (c_QString)
import Graphics.UI.Qtah.Generator.Module (AModule (AQtModule), makeQtModule)
import Graphics.UI.Qtah.Generator.Types
{-# ANN module "HLint: ignore Use camelCase" #-}
aModule =
AQtModule $
makeQtModule ["Core", "QMetaObject"]
[ QtExport $ ExportClass c_QMetaObject ]
c_QMetaObject =
addReqIncludes [ includeStd "QMetaObject"
, includeLocal "wrap_qmetaobject.hpp"
] $
classSetConversionToGc $
classAddFeatures [Copyable] $
classSetEntityPrefix "" $
makeClass (ident "QMetaObject") Nothing []
[ mkConstMethod "classInfo" [intT] $ objT c_QMetaClassInfo
, mkConstMethod "classInfoCount" [] intT
, mkConstMethod "classInfoOffset" [] intT
, mkConstMethod "constructor" [intT] $ objT c_QMetaMethod
, mkConstMethod "constructorCount" [] intT
, mkConstMethod "enumerator" [intT] $ objT c_QMetaEnum
, mkConstMethod "enumeratorCount" [] intT
, mkConstMethod "enumeratorOffset" [] intT
, makeFnMethod (ident2 "qtah" "qmetaobject" "indexOfClassInfo") "indexOfClassInfo" MConst Nonpure
[objT c_QMetaObject, objT c_QString] intT
, makeFnMethod (ident2 "qtah" "qmetaobject" "indexOfConstructor") "indexOfConstructor" MConst Nonpure
[objT c_QMetaObject, objT c_QString] intT
, makeFnMethod (ident2 "qtah" "qmetaobject" "indexOfEnumerator") "indexOfEnumerator" MConst Nonpure
[objT c_QMetaObject, objT c_QString] intT
, makeFnMethod (ident2 "qtah" "qmetaobject" "indexOfMethod") "indexOfMethod" MConst Nonpure
[objT c_QMetaObject, objT c_QString] intT
, makeFnMethod (ident2 "qtah" "qmetaobject" "indexOfProperty") "indexOfProperty" MConst Nonpure
[objT c_QMetaObject, objT c_QString] intT
, makeFnMethod (ident2 "qtah" "qmetaobject" "indexOfSignal") "indexOfSignal" MConst Nonpure
[objT c_QMetaObject, objT c_QString] intT
, makeFnMethod (ident2 "qtah" "qmetaobject" "indexOfSlot") "indexOfSlot" MConst Nonpure
[objT c_QMetaObject, objT c_QString] intT
, mkConstMethod "inherits" [ptrT $ constT $ objT c_QMetaObject] boolT
, mkConstMethod "method" [intT] $ objT c_QMetaMethod
, mkConstMethod "methodCount" [] intT
, mkConstMethod "methodOffset" [] intT
-- TODO newInstance
, mkConstMethod "property" [intT] $ objT c_QMetaProperty
, mkConstMethod "propertyCount" [] intT
, mkConstMethod "propertyOffset" [] intT
, mkConstMethod "superClass" [] $ ptrT $ constT $ objT c_QMetaObject
, mkConstMethod "userProperty" [] $ objT c_QMetaProperty
-- TODO Static methods
]
-- This file is part of Qtah.
--
-- Copyright 2015-2018 The Qtah Authors.
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU Lesser General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU Lesser General Public License for more details.
--
-- You should have received a copy of the GNU Lesser General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
module Graphics.UI.Qtah.Generator.Interface.Core.QMetaProperty (
aModule,
c_QMetaProperty,
) where
import Foreign.Hoppy.Generator.Spec (
Export (ExportClass),
addReqIncludes,
classSetConversionToGc,
classSetEntityPrefix,
ident,
includeStd,
makeClass,
)
import Foreign.Hoppy.Generator.Spec.ClassFeature (
ClassFeature (Copyable),
classAddFeatures,
)
--import Foreign.Hoppy.Generator.Types (boolT, intT, objT, ptrT, refT, voidT)
import Graphics.UI.Qtah.Generator.Module (AModule (AQtModule), makeQtModule)
import Graphics.UI.Qtah.Generator.Types
{-# ANN module "HLint: ignore Use camelCase" #-}
aModule =
AQtModule $
makeQtModule ["Core", "QMetaProperty"]
[ QtExport $ ExportClass c_QMetaProperty ]
c_QMetaProperty =
addReqIncludes [includeStd "QMetaProperty"] $
classSetConversionToGc $
classAddFeatures [Copyable] $
classSetEntityPrefix "" $
makeClass (ident "QMetaProperty") Nothing []
[ -- TODO
]
......@@ -37,16 +37,19 @@ import Foreign.Hoppy.Generator.Spec (
mkMethod,
mkProp,
)
import Foreign.Hoppy.Generator.Types (boolT, intT, objT, ptrT, refT, voidT)
import Foreign.Hoppy.Generator.Types (boolT, constT, intT, objT, ptrT, refT, voidT)
import Foreign.Hoppy.Generator.Version (collect, just, test)
import Graphics.UI.Qtah.Generator.Flags (qtVersion)
import {-# SOURCE #-} Graphics.UI.Qtah.Generator.Interface.Internal.Listener
(c_ListenerPtrQObject, c_ListenerQString)
import {-# SOURCE #-} Graphics.UI.Qtah.Generator.Interface.Internal.Listener (
c_ListenerPtrQObject,
c_ListenerQString,
)
import {-# SOURCE #-} Graphics.UI.Qtah.Generator.Interface.Core.QList (
c_QListQByteArray,
c_QListQObject,
)
import Graphics.UI.Qtah.Generator.Interface.Core.QEvent (c_QEvent)
import Graphics.UI.Qtah.Generator.Interface.Core.QMetaObject (c_QMetaObject)
import Graphics.UI.Qtah.Generator.Interface.Core.QString (c_QString)
import {-# SOURCE #-} Graphics.UI.Qtah.Generator.Interface.Core.QVariant (c_QVariant)
import Graphics.UI.Qtah.Generator.Module (AModule (AQtModule), makeQtModule)
......@@ -82,13 +85,13 @@ c_QObject =
-- TODO findChild
-- TODO findChildren
, just $ makeFnMethod (ident2 "qtah" "qobject" "inherits") "inherits" MConst Nonpure
[objT c_QString] boolT
[objT c_QObject, objT c_QString] boolT
, just $ mkMethod "installEventFilter" [ptrT $ objT c_QObject] voidT
, just $ mkConstMethod "isWidgetType" [] boolT
, -- This is a guess on the version bound.
test (qtVersion >= [5, 0]) $ mkConstMethod "isWindowType" [] boolT
, just $ mkMethod "killTimer" [intT] voidT
-- TODO metaObject
, just $ mkConstMethod "metaObject" [] $ ptrT $ constT $ objT c_QMetaObject
-- TODO moveToThread
, just $ mkProp "objectName" $ objT c_QString
, just $ mkProp "parent" $ ptrT $ objT c_QObject
......
......@@ -55,6 +55,11 @@ library
, Graphics.UI.Qtah.Core.QList.QWidget
, Graphics.UI.Qtah.Core.QMargins
, Graphics.UI.Qtah.Core.QMarginsF
, Graphics.UI.Qtah.Core.QMetaClassInfo
, Graphics.UI.Qtah.Core.QMetaEnum
, Graphics.UI.Qtah.Core.QMetaMethod
, Graphics.UI.Qtah.Core.QMetaObject
, Graphics.UI.Qtah.Core.QMetaProperty
, Graphics.UI.Qtah.Core.QModelIndex
, Graphics.UI.Qtah.Core.QObject
, Graphics.UI.Qtah.Core.QPalette
......@@ -225,6 +230,11 @@ library
, Graphics.UI.Qtah.Generated.Core.QList.QWidget
, Graphics.UI.Qtah.Generated.Core.QMargins
, Graphics.UI.Qtah.Generated.Core.QMarginsF
, Graphics.UI.Qtah.Generated.Core.QMetaClassInfo
, Graphics.UI.Qtah.Generated.Core.QMetaEnum
, Graphics.UI.Qtah.Generated.Core.QMetaMethod
, Graphics.UI.Qtah.Generated.Core.QMetaObject
, Graphics.UI.Qtah.Generated.Core.QMetaProperty
, Graphics.UI.Qtah.Generated.Core.QModelIndex
, Graphics.UI.Qtah.Generated.Core.QObject
, Graphics.UI.Qtah.Generated.Core.QPalette
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment