diff --git a/qqtanimation.cpp b/qqtanimation.cpp new file mode 100644 index 00000000..4761b669 --- /dev/null +++ b/qqtanimation.cpp @@ -0,0 +1,6 @@ +#include "qqtanimation.h" + +QQTAnimation::QQTAnimation(QObject *parent) : QParallelAnimationGroup(parent) +{ + +} diff --git a/qqtanimation.h b/qqtanimation.h new file mode 100644 index 00000000..be856931 --- /dev/null +++ b/qqtanimation.h @@ -0,0 +1,22 @@ +#ifndef QQTANIMATION_H +#define QQTANIMATION_H + + +#include +#include +#include +#include +#include + +class QQTAnimation : public QParallelAnimationGroup +{ + Q_OBJECT +public: + explicit QQTAnimation(QObject *parent = nullptr); + +signals: + +public slots: +}; + +#endif // QQTANIMATION_H diff --git a/qqtanimationmanager.cpp b/qqtanimationmanager.cpp new file mode 100644 index 00000000..613c63b2 --- /dev/null +++ b/qqtanimationmanager.cpp @@ -0,0 +1,15 @@ +#include "qqtanimationmanager.h" + +QQTAnimationManager* QQTAnimationManager::_instance = NULL; + +QQTAnimationManager *QQTAnimationManager::Instance(QObject *parent) +{ + if(_instance) + return _instance; + _instance = new QQTAnimationManager(parent); + return _instance; +} + +QQTAnimationManager::QQTAnimationManager(QObject *parent) : QObject(parent) +{ +} diff --git a/qqtanimationmanager.h b/qqtanimationmanager.h new file mode 100644 index 00000000..b727db8b --- /dev/null +++ b/qqtanimationmanager.h @@ -0,0 +1,30 @@ +#ifndef QQTANIMATIONMANAGER_H +#define QQTANIMATIONMANAGER_H + +#include +#include "qqtobjectfactory.h" +#include "qqtanimation.h" +#include "qqtgui-qt.h" + +/** + * @brief The QQTAnimationManager class + * @brief 这是指示型代码,不可使用,否则将会出现无法调用子类构造函数的问题 + * @brief AppAnimationManager模仿此类编写 + * @brief 在构造函数中处理所有的动画修饰动作 + */ +class QQTAnimationManager : public QObject +{ + Q_OBJECT +public: + static QQTAnimationManager *Instance(QObject* parent = 0); + +signals: + +public slots: +protected: + explicit QQTAnimationManager(QObject *parent = nullptr); +private: + static QQTAnimationManager* _instance; +}; + +#endif // QQTANIMATIONMANAGER_H diff --git a/qqtfoundation.pri b/qqtfoundation.pri index b870baae..70dbc284 100755 --- a/qqtfoundation.pri +++ b/qqtfoundation.pri @@ -133,7 +133,9 @@ SOURCES += $$PWD/qqtcheckbox.cpp \ $$PWD/qqtserialmessage.cpp \ $$PWD/qqtnetworkmessage.cpp \ $$PWD/qqtuserserialprotocol.cpp \ - $$PWD/qqtlanprotocol.cpp + $$PWD/qqtlanprotocol.cpp \ + $$PWD/qqtanimation.cpp \ + $$PWD/qqtanimationmanager.cpp HEADERS += $$PWD/qqtcheckbox.h \ $$PWD/qqtdefine.h \ @@ -187,7 +189,9 @@ HEADERS += $$PWD/qqtcheckbox.h \ $$PWD/qqtserialmessage.h \ $$PWD/qqtnetworkmessage.h \ $$PWD/qqtuserserialprotocol.h \ - $$PWD/qqtlanprotocol.h + $$PWD/qqtlanprotocol.h \ + $$PWD/qqtanimation.h \ + $$PWD/qqtanimationmanager.h FORMS += $$PWD/qqtcheckbox.ui \ diff --git a/qqtgui-qt.h b/qqtgui-qt.h index 28c89aa8..4724e75f 100755 --- a/qqtgui-qt.h +++ b/qqtgui-qt.h @@ -58,13 +58,27 @@ #include #include +#include +#include #include #include #include #include #include #include -#include -#include + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include #endif // QQTGUIQT_H diff --git a/qqtobjectfactory.h b/qqtobjectfactory.h index 31cd88d4..9f47f08c 100755 --- a/qqtobjectfactory.h +++ b/qqtobjectfactory.h @@ -15,15 +15,12 @@ class QQTObjectFactory { public: - template - static void registerClass() - { - /* - * 将生成此类对象的具体(非模板)函数注册进Hash - */ - constructors().insert( T::staticMetaObject.className(), &constructorHelper ); - } - + /** + * @brief createObject 根据对象类型(类名)生成类对象实例 + * @param className + * @param parent + * @return + */ static QObject* createObject( const QByteArray& className, QObject* parent = NULL ) { /* @@ -37,12 +34,18 @@ public: */ return (*constructor)( parent ); } - + /** + * @brief registerObject 将对象注册进工厂 + * @param w + */ static void registerObject(const QObject * const& w) { containers().push_back(w); } - + /** + * @brief unregisterObject 取消对象在工厂中注册 + * @param w + */ static void unregisterObject(const QObject*& w) { QListIterator itor(containers()); @@ -56,7 +59,11 @@ public: } } } - + /** + * @brief registedObject 根据对象名(ObjectName)查找注册的对象。 + * @param objName + * @return + */ static const QObject* registedObject(const QString objName) { QListIterator itor(containers()); @@ -88,6 +95,15 @@ private: return instance; } + template + static void registerClass() + { + /* + * 将生成此类对象的具体(非模板)函数注册进Hash + */ + constructors().insert( T::staticMetaObject.className(), &constructorHelper ); + } + private: static QList& containers() { diff --git a/version.h b/version.h index 309bcc24..78ad01f4 100755 --- a/version.h +++ b/version.h @@ -8,14 +8,14 @@ #define VER_PRODUCTVERSION_STR "1.0" //产品版本 #define VER_COMPANYNAME_STR "QQT" -#define VER_FILEDESCRIPTION_STR "K1160 Digest" //文件说明 -#define VER_INTERNALNAME_STR "K1160" -#define VER_LEGALCOPYRIGHT_STR "Copyright 2007-2016 QQT Co., Ltd." //版权 +#define VER_FILEDESCRIPTION_STR "QQT" //文件说明 +#define VER_INTERNALNAME_STR "QQT" +#define VER_LEGALCOPYRIGHT_STR "Copyright 2007-2017 QQT Co., Ltd." //版权 #define VER_LEGALTRADEMARKS1_STR "All rights reserved" #define VER_LEGALTRADEMARKS2_STR VER_LEGALTRADEMARKS1_STR -#define VER_ORIGINALFILENAME_STR "K1160" //原始文件名 -#define VER_PRODUCTNAME_STR "K1160" //产品名称 +#define VER_ORIGINALFILENAME_STR "QQT" //原始文件名 +#define VER_PRODUCTNAME_STR "QQT" //产品名称 -#define VER_COMPANYDOMAIN_STR "www.QQT.cc" +#define VER_COMPANYDOMAIN_STR "www.qqt.com" #endif // QVERSION_H