mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-04 17:33:05 +00:00
dock plugin interface changes
1, add title() to get title 2, change getContent to getApplets which makes more sense 3, plugin now can access to mode of dock by calling dockMode on its proxy
This commit is contained in:
parent
7116e4d030
commit
146019a0aa
@ -85,4 +85,4 @@ headers.files += src/dockconstants.h \
|
||||
src/dockpluginproxyinterface.h
|
||||
headers.path = /usr/include/dock
|
||||
|
||||
INSTALLS += target headers
|
||||
INSTALLS += headers
|
||||
|
@ -13,12 +13,13 @@ public:
|
||||
virtual ~DockPluginInterface() {}
|
||||
virtual void init(DockPluginProxyInterface *proxy) = 0;
|
||||
|
||||
virtual QString name() = 0;
|
||||
virtual QString title() = 0;
|
||||
|
||||
virtual QStringList uuids() = 0;
|
||||
virtual QWidget * getItem(QString uuid) = 0;
|
||||
virtual QWidget * getContents(QString uuid) = 0;
|
||||
virtual QWidget * getApplets(QString uuid) = 0;
|
||||
virtual void changeMode(Dock::DockMode newMode, Dock::DockMode oldMode) = 0;
|
||||
|
||||
virtual QString name() = 0;
|
||||
};
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
@ -1,5 +1,6 @@
|
||||
#include "dockpluginproxy.h"
|
||||
#include "pluginitemwrapper.h"
|
||||
#include "Controller/dockmodedata.h"
|
||||
|
||||
DockPluginProxy::DockPluginProxy(DockPluginInterface * plugin, QObject * parent) :
|
||||
QObject(parent),
|
||||
@ -12,6 +13,11 @@ DockPluginInterface * DockPluginProxy::plugin()
|
||||
return m_plugin;
|
||||
}
|
||||
|
||||
Dock::DockMode DockPluginProxy::dockMode()
|
||||
{
|
||||
return DockModeData::instance()->getDockMode();
|
||||
}
|
||||
|
||||
void DockPluginProxy::itemAddedEvent(QString uuid)
|
||||
{
|
||||
qDebug() << "Item added on plugin " << m_plugin->name() << uuid;
|
||||
|
@ -13,6 +13,8 @@ public:
|
||||
|
||||
DockPluginInterface * plugin();
|
||||
|
||||
Dock::DockMode dockMode() Q_DECL_OVERRIDE;
|
||||
|
||||
void itemAddedEvent(QString uuid) Q_DECL_OVERRIDE;
|
||||
void itemRemovedEvent(QString uuid) Q_DECL_OVERRIDE;
|
||||
void itemSizeChangedEvent(QString uuid) Q_DECL_OVERRIDE;
|
||||
|
@ -3,9 +3,13 @@
|
||||
|
||||
#include <QString>
|
||||
|
||||
#include "dockconstants.h"
|
||||
|
||||
class DockPluginProxyInterface
|
||||
{
|
||||
public:
|
||||
virtual Dock::DockMode dockMode() = 0;
|
||||
|
||||
virtual void itemAddedEvent(QString uuid) = 0;
|
||||
virtual void itemRemovedEvent(QString uuid) = 0;
|
||||
|
||||
|
@ -12,8 +12,7 @@ PluginItemWrapper::PluginItemWrapper(DockPluginInterface *plugin,
|
||||
|
||||
if (m_plugin) {
|
||||
QWidget * item = m_plugin->getItem(uuid);
|
||||
m_pluginItemContents = m_plugin->getContents(uuid);
|
||||
// setFixedSize(item->size());
|
||||
m_pluginItemContents = m_plugin->getApplets(uuid);
|
||||
|
||||
if (item) {
|
||||
setFixedSize(item->size());
|
||||
@ -27,7 +26,7 @@ PluginItemWrapper::PluginItemWrapper(DockPluginInterface *plugin,
|
||||
|
||||
QWidget * PluginItemWrapper::getContents()
|
||||
{
|
||||
return m_plugin->getContents(m_uuid);
|
||||
return m_plugin->getApplets(m_uuid);
|
||||
}
|
||||
|
||||
void PluginItemWrapper::enterEvent(QEvent *)
|
||||
|
Loading…
x
Reference in New Issue
Block a user