qtquick: Don't hardcode "DockWidget.qml"
Allow the user to specify their impl
This commit is contained in:
@@ -10,6 +10,7 @@
|
||||
*/
|
||||
|
||||
#include "DockWidgetQuick.h"
|
||||
#include "FrameworkWidgetFactory.h"
|
||||
|
||||
#include <Config.h>
|
||||
#include <QQuickItem>
|
||||
@@ -29,7 +30,8 @@ class DockWidgetQuick::Private
|
||||
public:
|
||||
Private(DockWidgetQuick *dw)
|
||||
: q(dw)
|
||||
, m_visualItem(q->createItem(Config::self().qmlEngine(), QStringLiteral("qrc:/kddockwidgets/private/quick/qml/DockWidget.qml")))
|
||||
, m_visualItem(q->createItem(Config::self().qmlEngine(),
|
||||
Config::self().frameworkWidgetFactory()->dockwidgetFilename().toString()))
|
||||
{
|
||||
Q_ASSERT(m_visualItem);
|
||||
m_visualItem->setParent(q);
|
||||
|
||||
@@ -217,6 +217,11 @@ QUrl DefaultWidgetFactory::titleBarFilename() const
|
||||
return QUrl(QStringLiteral("qrc:/kddockwidgets/private/quick/qml/TitleBar.qml"));
|
||||
}
|
||||
|
||||
QUrl DefaultWidgetFactory::dockwidgetFilename() const
|
||||
{
|
||||
return QUrl(QStringLiteral("qrc:/kddockwidgets/private/quick/qml/DockWidget.qml"));
|
||||
}
|
||||
|
||||
#endif // QtQuick
|
||||
|
||||
// iconForButtonType impl is the same for QtQuick and QtWidgets
|
||||
|
||||
@@ -146,6 +146,7 @@ public:
|
||||
virtual QAbstractButton* createTitleBarButton(QWidget *parent, TitleBarButtonType) const = 0;
|
||||
#else
|
||||
virtual QUrl titleBarFilename() const = 0;
|
||||
virtual QUrl dockwidgetFilename() const = 0;
|
||||
#endif
|
||||
|
||||
/// @brief Returns the icon to be used with the specified @p type
|
||||
@@ -179,6 +180,7 @@ public:
|
||||
QAbstractButton* createTitleBarButton(QWidget *parent, TitleBarButtonType) const override;
|
||||
#else
|
||||
QUrl titleBarFilename() const override;
|
||||
QUrl dockwidgetFilename() const override;
|
||||
#endif
|
||||
|
||||
QIcon iconForButtonType(TitleBarButtonType type, qreal dpr) const override;
|
||||
|
||||
Reference in New Issue
Block a user