Add DockModeData and update DockConstants

This commit is contained in:
杨万青 2015-07-02 15:16:35 +08:00
parent 000e06ae8d
commit 3ee411c038
13 changed files with 80 additions and 55 deletions

View File

@ -17,14 +17,15 @@ SOURCES += \
src/mainwidget.cpp \ src/mainwidget.cpp \
src/Widgets/appbackground.cpp \ src/Widgets/appbackground.cpp \
src/Widgets/appicon.cpp \ src/Widgets/appicon.cpp \
src/Widgets/dockconstants.cpp \
src/Widgets/docklayout.cpp \ src/Widgets/docklayout.cpp \
src/Widgets/screenmask.cpp \ src/Widgets/screenmask.cpp \
src/Widgets/windowpreview.cpp \ src/Widgets/windowpreview.cpp \
src/Panel/panel.cpp \ src/Panel/panel.cpp \
src/Widgets/appitem.cpp \ src/Widgets/appitem.cpp \
src/systraymanager.cpp \ src/systraymanager.cpp \
src/Panel/panelmenu.cpp src/Panel/panelmenu.cpp \
src/Controller/dockmodedata.cpp \
src/Controller/dockconstants.cpp
HEADERS += \ HEADERS += \
src/abstractdockitem.h \ src/abstractdockitem.h \
@ -32,14 +33,15 @@ HEADERS += \
src/mainwidget.h \ src/mainwidget.h \
src/Widgets/appbackground.h \ src/Widgets/appbackground.h \
src/Widgets/appicon.h \ src/Widgets/appicon.h \
src/Widgets/dockconstants.h \
src/Widgets/docklayout.h \ src/Widgets/docklayout.h \
src/Widgets/screenmask.h \ src/Widgets/screenmask.h \
src/Widgets/windowpreview.h \ src/Widgets/windowpreview.h \
src/Panel/panel.h \ src/Panel/panel.h \
src/Widgets/appitem.h \ src/Widgets/appitem.h \
src/systraymanager.h \ src/systraymanager.h \
src/Panel/panelmenu.h src/Panel/panelmenu.h \
src/Controller/dockmodedata.h \
src/Controller/dockconstants.h
RESOURCES += \ RESOURCES += \
images.qrc \ images.qrc \

View File

@ -0,0 +1,7 @@
#include "dockconstants.h"
DockConstants::DockConstants(QObject *parent) : QObject(parent)
{
}

View File

@ -0,0 +1,23 @@
#ifndef DOCKCONSTANTS_H
#define DOCKCONSTANTS_H
#include <QObject>
class DockConstants : public QObject
{
Q_OBJECT
public:
explicit DockConstants(QObject *parent = 0);
enum DockMode {
FashionMode,
EfficientMode,
ClassicMode
};
signals:
public slots:
};
#endif // DOCKCONSTANTS_H

View File

@ -1,33 +1,33 @@
#include "dockconstants.h" #include "dockmodedata.h"
DockConstants::DockConstants(QObject *parent) : DockModeData::DockModeData(QObject *parent) :
QObject(parent) QObject(parent)
{ {
} }
DockConstants * DockConstants::dockConstants = NULL; DockModeData * DockModeData::dockModeData = NULL;
DockConstants * DockConstants::getInstants() DockModeData * DockModeData::getInstants()
{ {
if (dockConstants == NULL) if (dockModeData == NULL)
dockConstants = new DockConstants(); dockModeData = new DockModeData();
return dockConstants; return dockModeData;
} }
DockConstants::DockMode DockConstants::getDockMode() DockConstants::DockMode DockModeData::getDockMode()
{ {
return m_currentMode; return m_currentMode;
} }
void DockConstants::setDockMode(DockMode value) void DockModeData::setDockMode(DockConstants::DockMode value)
{ {
DockMode tmpValue = m_currentMode; DockConstants::DockMode tmpValue = m_currentMode;
m_currentMode = value; m_currentMode = value;
emit dockModeChanged(value, tmpValue); emit dockModeChanged(value, tmpValue);
} }
int DockConstants::getDockHeight() int DockModeData::getDockHeight()
{ {
switch (m_currentMode) switch (m_currentMode)
{ {
@ -42,7 +42,7 @@ int DockConstants::getDockHeight()
} }
} }
int DockConstants::getItemHeight() int DockModeData::getItemHeight()
{ {
switch (m_currentMode) switch (m_currentMode)
{ {
@ -57,7 +57,7 @@ int DockConstants::getItemHeight()
} }
} }
int DockConstants::getNormalItemWidth() int DockModeData::getNormalItemWidth()
{ {
switch (m_currentMode) switch (m_currentMode)
{ {
@ -72,7 +72,7 @@ int DockConstants::getNormalItemWidth()
} }
} }
int DockConstants::getActivedItemWidth() int DockModeData::getActivedItemWidth()
{ {
switch (m_currentMode) switch (m_currentMode)
{ {
@ -87,7 +87,7 @@ int DockConstants::getActivedItemWidth()
} }
} }
int DockConstants::getAppItemSpacing() int DockModeData::getAppItemSpacing()
{ {
switch (m_currentMode) switch (m_currentMode)
{ {
@ -102,7 +102,7 @@ int DockConstants::getAppItemSpacing()
} }
} }
int DockConstants::getAppIconSize() int DockModeData::getAppIconSize()
{ {
switch (m_currentMode) switch (m_currentMode)
{ {
@ -117,7 +117,7 @@ int DockConstants::getAppIconSize()
} }
} }
int DockConstants::getAppletsItemHeight() int DockModeData::getAppletsItemHeight()
{ {
switch (m_currentMode) switch (m_currentMode)
{ {
@ -132,7 +132,7 @@ int DockConstants::getAppletsItemHeight()
} }
} }
int DockConstants::getAppletsItemWidth() int DockModeData::getAppletsItemWidth()
{ {
switch (m_currentMode) switch (m_currentMode)
{ {
@ -147,7 +147,7 @@ int DockConstants::getAppletsItemWidth()
} }
} }
int DockConstants::getAppletsItemSpacing() int DockModeData::getAppletsItemSpacing()
{ {
switch (m_currentMode) switch (m_currentMode)
{ {
@ -162,7 +162,7 @@ int DockConstants::getAppletsItemSpacing()
} }
} }
int DockConstants::getAppletsIconSize() int DockModeData::getAppletsIconSize()
{ {
switch (m_currentMode) switch (m_currentMode)
{ {

View File

@ -1,23 +1,18 @@
#ifndef DOCKCONSTANTS_H #ifndef DOCKMODEDATA_H
#define DOCKCONSTANTS_H #define DOCKMODEDATA_H
#include <QObject> #include <QObject>
#include <QStringList> #include <QStringList>
#include "dockconstants.h"
class DockConstants : public QObject class DockModeData : public QObject
{ {
Q_OBJECT Q_OBJECT
public: public:
static DockConstants * getInstants(); static DockModeData * getInstants();
enum DockMode { DockConstants::DockMode getDockMode();
FashionMode, void setDockMode(DockConstants::DockMode value);
EfficientMode,
ClassicMode
};
DockMode getDockMode();
void setDockMode(DockMode value);
int getDockHeight(); int getDockHeight();
int getItemHeight(); int getItemHeight();
@ -34,13 +29,13 @@ signals:
void dockModeChanged(DockConstants::DockMode newMode,DockConstants::DockMode oldMode); void dockModeChanged(DockConstants::DockMode newMode,DockConstants::DockMode oldMode);
private: private:
explicit DockConstants(QObject *parent = 0); explicit DockModeData(QObject *parent = 0);
private: private:
static DockConstants * dockConstants; static DockModeData * dockModeData;
DockMode m_currentMode = DockConstants::EfficientMode; DockConstants::DockMode m_currentMode = DockConstants::EfficientMode;
}; };
#endif // DOCKCONSTANTS_H #endif // DOCKMODEDATA_H

View File

@ -5,7 +5,7 @@
#include <QLabel> #include <QLabel>
#include <QPushButton> #include <QPushButton>
#include <QDebug> #include <QDebug>
#include "Widgets/dockconstants.h" #include "Controller/dockmodedata.h"
#include "Widgets/appitem.h" #include "Widgets/appitem.h"
#include "Widgets/docklayout.h" #include "Widgets/docklayout.h"
#include "Widgets/screenmask.h" #include "Widgets/screenmask.h"
@ -49,7 +49,7 @@ private:
DockLayout *rightLayout; DockLayout *rightLayout;
QWidget * parentWidget = NULL; QWidget * parentWidget = NULL;
ScreenMask * maskWidget = NULL; ScreenMask * maskWidget = NULL;
DockConstants *dockCons = DockConstants::getInstants(); DockModeData *dockCons = DockModeData::getInstants();
PanelMenu *panelMenu = NULL; PanelMenu *panelMenu = NULL;
}; };

View File

@ -4,7 +4,7 @@
#include <QWidget> #include <QWidget>
#include <QLabel> #include <QLabel>
#include <QDebug> #include <QDebug>
#include "Widgets/dockconstants.h" #include "Controller/dockmodedata.h"
class PanelMenuItem : public QLabel class PanelMenuItem : public QLabel
{ {
@ -35,7 +35,7 @@ private slots:
void changeToClassicMode(); void changeToClassicMode();
private: private:
DockConstants *dockCons = DockConstants::getInstants(); DockModeData *dockCons = DockModeData::getInstants();
const int MENU_ITEM_HEIGHT = 30; const int MENU_ITEM_HEIGHT = 30;
const int MENU_ITEM_SPACING = 3; const int MENU_ITEM_SPACING = 3;

View File

@ -5,7 +5,6 @@
#include <QLabel> #include <QLabel>
#include <QStyle> #include <QStyle>
#include <QDebug> #include <QDebug>
#include "dockconstants.h"
class AppBackground : public QLabel class AppBackground : public QLabel
{ {

View File

@ -6,7 +6,7 @@ AppItem::AppItem(QWidget *parent) :
setAcceptDrops(true); setAcceptDrops(true);
resize(dockCons->getNormalItemWidth(), dockCons->getItemHeight()); resize(dockCons->getNormalItemWidth(), dockCons->getItemHeight());
initBackground(); initBackground();
connect(dockCons, &DockConstants::dockModeChanged,this, &AppItem::slotDockModeChanged); connect(dockCons, &DockModeData::dockModeChanged,this, &AppItem::slotDockModeChanged);
} }
AppItem::AppItem(QString title, QWidget *parent): AppItem::AppItem(QString title, QWidget *parent):
@ -17,7 +17,7 @@ AppItem::AppItem(QString title, QWidget *parent):
setAcceptDrops(true); setAcceptDrops(true);
resize(dockCons->getNormalItemWidth(), dockCons->getItemHeight()); resize(dockCons->getNormalItemWidth(), dockCons->getItemHeight());
initBackground(); initBackground();
connect(dockCons, &DockConstants::dockModeChanged,this, &AppItem::slotDockModeChanged); connect(dockCons, &DockModeData::dockModeChanged,this, &AppItem::slotDockModeChanged);
} }
AppItem::AppItem(QString title, QString iconPath, QWidget *parent) : AppItem::AppItem(QString title, QString iconPath, QWidget *parent) :
@ -30,7 +30,7 @@ AppItem::AppItem(QString title, QString iconPath, QWidget *parent) :
resize(dockCons->getNormalItemWidth(), dockCons->getItemHeight()); resize(dockCons->getNormalItemWidth(), dockCons->getItemHeight());
initBackground(); initBackground();
setIcon(m_itemIconPath,dockCons->getAppIconSize()); setIcon(m_itemIconPath,dockCons->getAppIconSize());
connect(dockCons, &DockConstants::dockModeChanged,this, &AppItem::slotDockModeChanged); connect(dockCons, &DockModeData::dockModeChanged,this, &AppItem::slotDockModeChanged);
} }
void AppItem::setIcon(const QString &iconPath, int size) void AppItem::setIcon(const QString &iconPath, int size)

View File

@ -13,7 +13,7 @@
#include <QImage> #include <QImage>
#include <QDebug> #include <QDebug>
#include "abstractdockitem.h" #include "abstractdockitem.h"
#include "dockconstants.h" #include "Controller/dockmodedata.h"
#include "appicon.h" #include "appicon.h"
#include "appbackground.h" #include "appbackground.h"
@ -53,7 +53,7 @@ private:
void initBackground(); void initBackground();
private: private:
DockConstants *dockCons = DockConstants::getInstants(); DockModeData *dockCons = DockModeData::getInstants();
AppBackground * appBackground = NULL; AppBackground * appBackground = NULL;
QPoint nextPos; QPoint nextPos;

View File

@ -7,7 +7,6 @@
#include <QPropertyAnimation> #include <QPropertyAnimation>
#include <QCursor> #include <QCursor>
#include "appitem.h" #include "appitem.h"
#include "dockconstants.h"
class DockLayout : public QWidget class DockLayout : public QWidget
{ {

View File

@ -4,7 +4,7 @@ MainWidget::MainWidget(QWidget *parent)
: QWidget(parent) : QWidget(parent)
{ {
QRect rec = QApplication::desktop()->screenGeometry(); QRect rec = QApplication::desktop()->screenGeometry();
this->resize(rec.width(),DockConstants::getInstants()->getDockHeight()); this->resize(rec.width(),DockModeData::getInstants()->getDockHeight());
mainPanel = new Panel(this); mainPanel = new Panel(this);
mainPanel->resize(this->width(),this->height()); mainPanel->resize(this->width(),this->height());
mainPanel->move(0,0); mainPanel->move(0,0);
@ -13,14 +13,14 @@ MainWidget::MainWidget(QWidget *parent)
this->setAttribute(Qt::WA_TranslucentBackground); this->setAttribute(Qt::WA_TranslucentBackground);
this->move(0,rec.height() - 100); this->move(0,rec.height() - 100);
connect(DockConstants::getInstants(), SIGNAL(dockModeChanged(DockConstants::DockMode,DockConstants::DockMode)), connect(DockModeData::getInstants(), SIGNAL(dockModeChanged(DockConstants::DockMode,DockConstants::DockMode)),
this, SLOT(slotDockModeChanged(DockConstants::DockMode,DockConstants::DockMode))); this, SLOT(slotDockModeChanged(DockConstants::DockMode,DockConstants::DockMode)));
} }
void MainWidget::slotDockModeChanged(DockConstants::DockMode newMode, DockConstants::DockMode oldMode) void MainWidget::slotDockModeChanged(DockConstants::DockMode newMode, DockConstants::DockMode oldMode)
{ {
QRect rec = QApplication::desktop()->screenGeometry(); QRect rec = QApplication::desktop()->screenGeometry();
this->resize(rec.width(),DockConstants::getInstants()->getDockHeight()); this->resize(rec.width(),DockModeData::getInstants()->getDockHeight());
// mainPanel->resize(this->width(),this->height()); // mainPanel->resize(this->width(),this->height());
// mainPanel->move(0,0); // mainPanel->move(0,0);

View File

@ -6,7 +6,7 @@
#include <QWidget> #include <QWidget>
#include <QScreen> #include <QScreen>
#include <QDebug> #include <QDebug>
#include "Widgets/dockconstants.h" #include "Controller/dockmodedata.h"
#include "Panel/panel.h" #include "Panel/panel.h"
class MainWidget : public QWidget class MainWidget : public QWidget