mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-01 07:05:48 +00:00
add plugins
Change-Id: Ib35a19191b8169993ca5e04cc9d5654b8519a56e
This commit is contained in:
parent
ca52556f5b
commit
3d2a1e76c3
45
dde-dock.pro
45
dde-dock.pro
@ -1,43 +1,4 @@
|
||||
QT += core gui widgets dbus x11extras svg
|
||||
|
||||
TARGET = dde-dock
|
||||
TEMPLATE = app
|
||||
CONFIG += c++11 link_pkgconfig
|
||||
|
||||
PKGCONFIG += xcb-ewmh gtk+-2.0 dtkwidget dtkbase
|
||||
|
||||
SOURCES += main.cpp \
|
||||
window/mainwindow.cpp \
|
||||
xcb/xcb_misc.cpp \
|
||||
item/dockitem.cpp \
|
||||
panel/mainpanel.cpp \
|
||||
controller/dockitemcontroller.cpp \
|
||||
dbus/dbusdockentry.cpp \
|
||||
dbus/dbusdisplay.cpp \
|
||||
item/appitem.cpp \
|
||||
util/docksettings.cpp \
|
||||
item/placeholderitem.cpp \
|
||||
dbus/dbusclientmanager.cpp \
|
||||
dbus/dbusdock.cpp \
|
||||
util/themeappicon.cpp \
|
||||
item/launcheritem.cpp \
|
||||
dbus/dbusmenumanager.cpp \
|
||||
dbus/dbusmenu.cpp
|
||||
|
||||
HEADERS += \
|
||||
window/mainwindow.h \
|
||||
xcb/xcb_misc.h \
|
||||
item/dockitem.h \
|
||||
panel/mainpanel.h \
|
||||
controller/dockitemcontroller.h \
|
||||
dbus/dbusdockentry.h \
|
||||
dbus/dbusdisplay.h \
|
||||
item/appitem.h \
|
||||
util/docksettings.h \
|
||||
item/placeholderitem.h \
|
||||
dbus/dbusclientmanager.h \
|
||||
dbus/dbusdock.h \
|
||||
util/themeappicon.h \
|
||||
item/launcheritem.h \
|
||||
dbus/dbusmenumanager.h \
|
||||
dbus/dbusmenu.h
|
||||
TEMPLATE = subdirs
|
||||
SUBDIRS = frame \
|
||||
plugins
|
||||
|
46
frame/frame.pro
Normal file
46
frame/frame.pro
Normal file
@ -0,0 +1,46 @@
|
||||
QT += core gui widgets dbus x11extras svg
|
||||
|
||||
TARGET = dde-dock
|
||||
TEMPLATE = app
|
||||
CONFIG += c++11 link_pkgconfig
|
||||
|
||||
PKGCONFIG += xcb-ewmh gtk+-2.0 dtkwidget dtkbase
|
||||
|
||||
SOURCES += main.cpp \
|
||||
window/mainwindow.cpp \
|
||||
xcb/xcb_misc.cpp \
|
||||
item/dockitem.cpp \
|
||||
panel/mainpanel.cpp \
|
||||
controller/dockitemcontroller.cpp \
|
||||
dbus/dbusdockentry.cpp \
|
||||
dbus/dbusdisplay.cpp \
|
||||
item/appitem.cpp \
|
||||
util/docksettings.cpp \
|
||||
item/placeholderitem.cpp \
|
||||
dbus/dbusclientmanager.cpp \
|
||||
dbus/dbusdock.cpp \
|
||||
util/themeappicon.cpp \
|
||||
item/launcheritem.cpp \
|
||||
dbus/dbusmenumanager.cpp \
|
||||
dbus/dbusmenu.cpp \
|
||||
item/pluginsitem.cpp
|
||||
|
||||
HEADERS += \
|
||||
window/mainwindow.h \
|
||||
xcb/xcb_misc.h \
|
||||
item/dockitem.h \
|
||||
panel/mainpanel.h \
|
||||
controller/dockitemcontroller.h \
|
||||
dbus/dbusdockentry.h \
|
||||
dbus/dbusdisplay.h \
|
||||
item/appitem.h \
|
||||
util/docksettings.h \
|
||||
item/placeholderitem.h \
|
||||
dbus/dbusclientmanager.h \
|
||||
dbus/dbusdock.h \
|
||||
util/themeappicon.h \
|
||||
item/launcheritem.h \
|
||||
dbus/dbusmenumanager.h \
|
||||
dbus/dbusmenu.h \
|
||||
item/pluginsiteminterface.h \
|
||||
item/pluginsitem.h
|
@ -1,25 +1,26 @@
|
||||
|
||||
#include "dockitem.h"
|
||||
#include "dbus/dbusmenu.h"
|
||||
#include "dbus/dbusmenumanager.h"
|
||||
|
||||
#include <QMouseEvent>
|
||||
#include <QJsonObject>
|
||||
|
||||
DockItem::DockItem(const ItemType type, QWidget *parent)
|
||||
: QWidget(parent),
|
||||
m_side(DockSettings::Top),
|
||||
// m_side(DockSettings::Top),
|
||||
m_type(type),
|
||||
|
||||
m_menuManagerInter(new DBusMenuManager(this))
|
||||
{
|
||||
}
|
||||
|
||||
void DockItem::setDockSide(const DockSettings::DockSide side)
|
||||
{
|
||||
m_side = side;
|
||||
//void DockItem::setDockSide(const DockSettings::DockSide side)
|
||||
//{
|
||||
// m_side = side;
|
||||
|
||||
update();
|
||||
}
|
||||
// update();
|
||||
//}
|
||||
|
||||
DockItem::ItemType DockItem::itemType() const
|
||||
{
|
||||
@ -76,5 +77,5 @@ void DockItem::invokedMenuItem(const QString &itemId, const bool checked)
|
||||
|
||||
const QString DockItem::contextMenu() const
|
||||
{
|
||||
return "";
|
||||
return QString();
|
||||
}
|
@ -3,9 +3,9 @@
|
||||
|
||||
#include <QFrame>
|
||||
|
||||
#include "util/docksettings.h"
|
||||
#include "dbus/dbusmenumanager.h"
|
||||
//#include "util/docksettings.h"
|
||||
|
||||
class DBusMenuManager;
|
||||
class DockItem : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -20,7 +20,7 @@ public:
|
||||
|
||||
public:
|
||||
explicit DockItem(const ItemType type, QWidget *parent = nullptr);
|
||||
void setDockSide(const DockSettings::DockSide side);
|
||||
// void setDockSide(const DockSettings::DockSide side);
|
||||
|
||||
ItemType itemType() const;
|
||||
|
||||
@ -33,7 +33,7 @@ protected:
|
||||
virtual const QString contextMenu() const;
|
||||
|
||||
protected:
|
||||
DockSettings::DockSide m_side;
|
||||
// DockSettings::DockSide m_side;
|
||||
ItemType m_type;
|
||||
|
||||
DBusMenuManager *m_menuManagerInter;
|
7
frame/item/pluginsitem.cpp
Normal file
7
frame/item/pluginsitem.cpp
Normal file
@ -0,0 +1,7 @@
|
||||
#include "pluginsitem.h"
|
||||
|
||||
PluginsItem::PluginsItem(QWidget *parent)
|
||||
: DockItem(Plugins, parent)
|
||||
{
|
||||
|
||||
}
|
14
frame/item/pluginsitem.h
Normal file
14
frame/item/pluginsitem.h
Normal file
@ -0,0 +1,14 @@
|
||||
#ifndef PLUGINSITEM_H
|
||||
#define PLUGINSITEM_H
|
||||
|
||||
#include "dockitem.h"
|
||||
|
||||
class PluginsItem : public DockItem
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit PluginsItem(QWidget *parent = 0);
|
||||
};
|
||||
|
||||
#endif // PLUGINSITEM_H
|
4
interfaces/interfaces.pri
Normal file
4
interfaces/interfaces.pri
Normal file
@ -0,0 +1,4 @@
|
||||
HEADERS += \
|
||||
$$PWD/pluginsiteminterface.h
|
||||
|
||||
INCLUDEPATH += $$PWD
|
19
interfaces/pluginsiteminterface.h
Normal file
19
interfaces/pluginsiteminterface.h
Normal file
@ -0,0 +1,19 @@
|
||||
#ifndef PLUGINSITEMINTERFACE_H
|
||||
#define PLUGINSITEMINTERFACE_H
|
||||
|
||||
class PluginsItem;
|
||||
class PluginsItemInterface
|
||||
{
|
||||
public:
|
||||
virtual ~PluginsItemInterface() {}
|
||||
virtual PluginsItem *getPluginsItem() = 0;
|
||||
};
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
#define ModuleInterface_iid "com.deepin.dock.PluginsItemInterface"
|
||||
|
||||
Q_DECLARE_INTERFACE(PluginsItemInterface, ModuleInterface_iid)
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#endif // PLUGINSITEMINTERFACE_H
|
2
plugins/datetime/datetime.json
Normal file
2
plugins/datetime/datetime.json
Normal file
@ -0,0 +1,2 @@
|
||||
{
|
||||
}
|
20
plugins/datetime/datetime.pro
Normal file
20
plugins/datetime/datetime.pro
Normal file
@ -0,0 +1,20 @@
|
||||
|
||||
QT += widgets
|
||||
TEMPLATE = lib
|
||||
CONFIG += plugin c++11 link_pkgconfig
|
||||
PKGCONFIG +=
|
||||
|
||||
TARGET = $$qtLibraryTarget(datetime)
|
||||
DESTDIR = $$_PRO_FILE_PWD_/../
|
||||
|
||||
HEADERS += \
|
||||
datetimeplugin.h \
|
||||
datetimeitem.h
|
||||
|
||||
SOURCES += \
|
||||
datetimeplugin.cpp \
|
||||
datetimeitem.cpp
|
||||
|
||||
include(../../interfaces/interfaces.pri)
|
||||
|
||||
INCLUDEPATH += "../../frame/item"
|
7
plugins/datetime/datetimeitem.cpp
Normal file
7
plugins/datetime/datetimeitem.cpp
Normal file
@ -0,0 +1,7 @@
|
||||
#include "datetimeitem.h"
|
||||
|
||||
DateTimeItem::DateTimeItem(QWidget *parent)
|
||||
: PluginsItem(parent)
|
||||
{
|
||||
|
||||
}
|
14
plugins/datetime/datetimeitem.h
Normal file
14
plugins/datetime/datetimeitem.h
Normal file
@ -0,0 +1,14 @@
|
||||
#ifndef DATETIMEITEM_H
|
||||
#define DATETIMEITEM_H
|
||||
|
||||
#include "pluginsitem.h"
|
||||
|
||||
class DateTimeItem : public PluginsItem
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit DateTimeItem(QWidget *parent = 0);
|
||||
};
|
||||
|
||||
#endif // DATETIMEITEM_H
|
12
plugins/datetime/datetimeplugin.cpp
Normal file
12
plugins/datetime/datetimeplugin.cpp
Normal file
@ -0,0 +1,12 @@
|
||||
#include "datetimeplugin.h"
|
||||
|
||||
DatetimePlugin::DatetimePlugin(QObject *parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
PluginsItem *DatetimePlugin::getPluginsItem()
|
||||
{
|
||||
return nullptr;
|
||||
}
|
19
plugins/datetime/datetimeplugin.h
Normal file
19
plugins/datetime/datetimeplugin.h
Normal file
@ -0,0 +1,19 @@
|
||||
#ifndef DATETIMEPLUGIN_H
|
||||
#define DATETIMEPLUGIN_H
|
||||
|
||||
#include <QObject>
|
||||
|
||||
#include "pluginsiteminterface.h"
|
||||
|
||||
class DatetimePlugin : public QObject, PluginsItemInterface
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_INTERFACES(PluginsItemInterface)
|
||||
Q_PLUGIN_METADATA(IID "com.deepin.dock.PluginsItemInterface" FILE "datetime.json")
|
||||
|
||||
public:
|
||||
explicit DatetimePlugin(QObject *parent = 0);
|
||||
PluginsItem *getPluginsItem();
|
||||
};
|
||||
|
||||
#endif // DATETIMEPLUGIN_H
|
3
plugins/plugins.pro
Normal file
3
plugins/plugins.pro
Normal file
@ -0,0 +1,3 @@
|
||||
TEMPLATE = subdirs
|
||||
SUBDIRS = \
|
||||
datetime
|
Loading…
x
Reference in New Issue
Block a user