summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/controls/Styles/styles.pri1
-rw-r--r--src/controls/controls.pro1
-rw-r--r--src/controls/plugin.cpp49
3 files changed, 49 insertions, 2 deletions
diff --git a/src/controls/Styles/styles.pri b/src/controls/Styles/styles.pri
index ff3db817..c29cebfd 100644
--- a/src/controls/Styles/styles.pri
+++ b/src/controls/Styles/styles.pri
@@ -109,5 +109,6 @@ STYLES_QML_FILES += \
$$PWD/Base/images/needle.png
AUX_QML_FILES += $$PWD/qmldir
+static: QML_FILES += $$AUX_QML_FILES
ios:static: include(iOS/iOS.pri)
!qtquickcompiler|static: QML_FILES += $$STYLES_QML_FILES
diff --git a/src/controls/controls.pro b/src/controls/controls.pro
index 75871bf0..3119d33d 100644
--- a/src/controls/controls.pro
+++ b/src/controls/controls.pro
@@ -45,6 +45,7 @@ qtquickcompiler {
} else {
QML_FILES += $$CONTROLS_QML_FILES
!static: CONFIG += qmlcache
+ else: CONTROLS_QML_FILES += qmldir
}
SOURCES += $$PWD/plugin.cpp
diff --git a/src/controls/plugin.cpp b/src/controls/plugin.cpp
index 8aca0c49..82eef800 100644
--- a/src/controls/plugin.cpp
+++ b/src/controls/plugin.cpp
@@ -73,10 +73,12 @@
QT_BEGIN_NAMESPACE
-static const struct {
+struct QmldirStruct {
const char *type;
int major, minor;
-} qmldir [] = {
+};
+
+static const QmldirStruct qmldir [] = {
{ "ApplicationWindow", 1, 0 },
{ "Button", 1, 0 },
{ "Calendar", 1, 2 },
@@ -119,6 +121,43 @@ static const struct {
{ "Slider", 1, 6 }
};
+static const QmldirStruct stylesQmldir [] = {
+ { "ApplicationWindowStyle", 1, 3 },
+ { "ButtonStyle", 1, 0 },
+ { "BusyIndicatorStyle", 1, 1 },
+ { "CalendarStyle", 1, 1 },
+ { "CheckBoxStyle", 1, 0 },
+ { "ComboBoxStyle", 1, 0 },
+ { "MenuStyle", 1, 2 },
+ { "MenuBarStyle", 1, 2 },
+ { "ProgressBarStyle", 1, 0 },
+ { "RadioButtonStyle", 1, 0 },
+ { "ScrollViewStyle", 1, 0 },
+ { "SliderStyle", 1, 0 },
+ { "SpinBoxStyle", 1, 1 },
+ { "SwitchStyle", 1, 1 },
+ { "TabViewStyle", 1, 0 },
+ { "TableViewStyle", 1, 0 },
+ { "TreeViewStyle", 1, 4 },
+ { "TextAreaStyle", 1, 1 },
+ { "TextFieldStyle", 1, 0 },
+ { "ToolBarStyle", 1, 0 },
+ { "StatusBarStyle", 1, 0 },
+ { "CircularGaugeStyle", 1, 0 },
+ { "CircularButtonStyle", 1, 0 },
+ { "CircularTickmarkLabelStyle", 1, 0 },
+ { "CommonStyleHelper", 1, 0 },
+ { "DelayButtonStyle", 1, 0 },
+ { "DialStyle", 1, 1 },
+ { "GaugeStyle", 1, 0 },
+ { "HandleStyle", 1, 0 },
+ { "HandleStyleHelper", 1, 0 },
+ { "PieMenuStyle", 1, 3 },
+ { "StatusIndicatorStyle", 1, 1 },
+ { "ToggleButtonStyle", 1, 0 },
+ { "TumblerStyle", 1, 2 }
+};
+
QtQuickControls1Plugin::QtQuickControls1Plugin(QObject *parent) : QQmlExtensionPlugin(parent)
{
}
@@ -172,6 +211,12 @@ void QtQuickControls1Plugin::registerTypes(const char *uri)
#ifdef QT_WIDGETS_LIB
qmlRegisterType<QQuickStyleItem1>(private_uri, 1, 0, "StyleItem");
#endif
+
+ const char *styles_uri = "QtQuick.Controls.Styles";
+ const QString baseStyleLocation = filesLocation + "/Styles/Base";
+ for (int i = 0; i < int(sizeof(stylesQmldir)/sizeof(stylesQmldir[0])); i++)
+ qmlRegisterType(QUrl(baseStyleLocation + "/" + stylesQmldir[i].type + ".qml"), styles_uri,
+ stylesQmldir[i].major, stylesQmldir[i].minor, stylesQmldir[i].type);
}
void QtQuickControls1Plugin::initializeEngine(QQmlEngine *engine, const char *uri)