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/Widgets/appbackground.cpp \
src/Widgets/appicon.cpp \
src/Widgets/dockconstants.cpp \
src/Widgets/docklayout.cpp \
src/Widgets/screenmask.cpp \
src/Widgets/windowpreview.cpp \
src/Panel/panel.cpp \
src/Widgets/appitem.cpp \
src/systraymanager.cpp \
src/Panel/panelmenu.cpp
src/Panel/panelmenu.cpp \
src/Controller/dockmodedata.cpp \
src/Controller/dockconstants.cpp
HEADERS += \
src/abstractdockitem.h \
@ -32,14 +33,15 @@ HEADERS += \
src/mainwidget.h \
src/Widgets/appbackground.h \
src/Widgets/appicon.h \
src/Widgets/dockconstants.h \
src/Widgets/docklayout.h \
src/Widgets/screenmask.h \
src/Widgets/windowpreview.h \
src/Panel/panel.h \
src/Widgets/appitem.h \
src/systraymanager.h \
src/Panel/panelmenu.h
src/Panel/panelmenu.h \
src/Controller/dockmodedata.h \
src/Controller/dockconstants.h
RESOURCES += \
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)
{
}
DockConstants * DockConstants::dockConstants = NULL;
DockConstants * DockConstants::getInstants()
DockModeData * DockModeData::dockModeData = NULL;
DockModeData * DockModeData::getInstants()
{
if (dockConstants == NULL)
dockConstants = new DockConstants();
if (dockModeData == NULL)
dockModeData = new DockModeData();
return dockConstants;
return dockModeData;
}
DockConstants::DockMode DockConstants::getDockMode()
DockConstants::DockMode DockModeData::getDockMode()
{
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;
emit dockModeChanged(value, tmpValue);
}
int DockConstants::getDockHeight()
int DockModeData::getDockHeight()
{
switch (m_currentMode)
{
@ -42,7 +42,7 @@ int DockConstants::getDockHeight()
}
}
int DockConstants::getItemHeight()
int DockModeData::getItemHeight()
{
switch (m_currentMode)
{
@ -57,7 +57,7 @@ int DockConstants::getItemHeight()
}
}
int DockConstants::getNormalItemWidth()
int DockModeData::getNormalItemWidth()
{
switch (m_currentMode)
{
@ -72,7 +72,7 @@ int DockConstants::getNormalItemWidth()
}
}
int DockConstants::getActivedItemWidth()
int DockModeData::getActivedItemWidth()
{
switch (m_currentMode)
{
@ -87,7 +87,7 @@ int DockConstants::getActivedItemWidth()
}
}
int DockConstants::getAppItemSpacing()
int DockModeData::getAppItemSpacing()
{
switch (m_currentMode)
{
@ -102,7 +102,7 @@ int DockConstants::getAppItemSpacing()
}
}
int DockConstants::getAppIconSize()
int DockModeData::getAppIconSize()
{
switch (m_currentMode)
{
@ -117,7 +117,7 @@ int DockConstants::getAppIconSize()
}
}
int DockConstants::getAppletsItemHeight()
int DockModeData::getAppletsItemHeight()
{
switch (m_currentMode)
{
@ -132,7 +132,7 @@ int DockConstants::getAppletsItemHeight()
}
}
int DockConstants::getAppletsItemWidth()
int DockModeData::getAppletsItemWidth()
{
switch (m_currentMode)
{
@ -147,7 +147,7 @@ int DockConstants::getAppletsItemWidth()
}
}
int DockConstants::getAppletsItemSpacing()
int DockModeData::getAppletsItemSpacing()
{
switch (m_currentMode)
{
@ -162,7 +162,7 @@ int DockConstants::getAppletsItemSpacing()
}
}
int DockConstants::getAppletsIconSize()
int DockModeData::getAppletsIconSize()
{
switch (m_currentMode)
{

View File

@ -1,23 +1,18 @@
#ifndef DOCKCONSTANTS_H
#define DOCKCONSTANTS_H
#ifndef DOCKMODEDATA_H
#define DOCKMODEDATA_H
#include <QObject>
#include <QStringList>
#include "dockconstants.h"
class DockConstants : public QObject
class DockModeData : public QObject
{
Q_OBJECT
public:
static DockConstants * getInstants();
static DockModeData * getInstants();
enum DockMode {
FashionMode,
EfficientMode,
ClassicMode
};
DockMode getDockMode();
void setDockMode(DockMode value);
DockConstants::DockMode getDockMode();
void setDockMode(DockConstants::DockMode value);
int getDockHeight();
int getItemHeight();
@ -34,13 +29,13 @@ signals:
void dockModeChanged(DockConstants::DockMode newMode,DockConstants::DockMode oldMode);
private:
explicit DockConstants(QObject *parent = 0);
explicit DockModeData(QObject *parent = 0);
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 <QPushButton>
#include <QDebug>
#include "Widgets/dockconstants.h"
#include "Controller/dockmodedata.h"
#include "Widgets/appitem.h"
#include "Widgets/docklayout.h"
#include "Widgets/screenmask.h"
@ -49,7 +49,7 @@ private:
DockLayout *rightLayout;
QWidget * parentWidget = NULL;
ScreenMask * maskWidget = NULL;
DockConstants *dockCons = DockConstants::getInstants();
DockModeData *dockCons = DockModeData::getInstants();
PanelMenu *panelMenu = NULL;
};

View File

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

View File

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

View File

@ -6,7 +6,7 @@ AppItem::AppItem(QWidget *parent) :
setAcceptDrops(true);
resize(dockCons->getNormalItemWidth(), dockCons->getItemHeight());
initBackground();
connect(dockCons, &DockConstants::dockModeChanged,this, &AppItem::slotDockModeChanged);
connect(dockCons, &DockModeData::dockModeChanged,this, &AppItem::slotDockModeChanged);
}
AppItem::AppItem(QString title, QWidget *parent):
@ -17,7 +17,7 @@ AppItem::AppItem(QString title, QWidget *parent):
setAcceptDrops(true);
resize(dockCons->getNormalItemWidth(), dockCons->getItemHeight());
initBackground();
connect(dockCons, &DockConstants::dockModeChanged,this, &AppItem::slotDockModeChanged);
connect(dockCons, &DockModeData::dockModeChanged,this, &AppItem::slotDockModeChanged);
}
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());
initBackground();
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)

View File

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

View File

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

View File

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

View File

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