From 34bbe05013e6ce6e58c60861dc4cad3959822d2e Mon Sep 17 00:00:00 2001
From: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Date: Fri, 8 Feb 2013 17:33:35 +0100
Subject: [PATCH] Fix Splitter with private libs

Change-Id: I687fd6feab388a356cfe50b8959f4b43d21cb09f
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
---
 src/private/{Splitter.qml => SplitterBase.qml} | 2 ++
 src/private/private.pro                        | 8 +++-----
 src/private/qmldir                             | 1 +
 src/private/qprivateplugin.cpp                 | 2 --
 src/qtdesktop/SplitterColumn.qml               | 5 ++---
 src/qtdesktop/SplitterRow.qml                  | 5 ++---
 src/qtdesktop/plugin.cpp                       | 2 ++
 src/qtdesktop/plugin.pri                       | 2 ++
 src/qtdesktop/qmldir                           | 1 -
 src/{private => qtdesktop}/qtsplitterbase.cpp  | 0
 src/{private => qtdesktop}/qtsplitterbase_p.h  | 0
 11 files changed, 14 insertions(+), 14 deletions(-)
 rename src/private/{Splitter.qml => SplitterBase.qml} (99%)
 rename src/{private => qtdesktop}/qtsplitterbase.cpp (100%)
 rename src/{private => qtdesktop}/qtsplitterbase_p.h (100%)

diff --git a/src/private/Splitter.qml b/src/private/SplitterBase.qml
similarity index 99%
rename from src/private/Splitter.qml
rename to src/private/SplitterBase.qml
index b24840b63..d70128f12 100644
--- a/src/private/Splitter.qml
+++ b/src/private/SplitterBase.qml
@@ -40,6 +40,7 @@
 
 import QtQuick 2.0
 import QtDesktop 1.0
+import QtDesktop.Private 1.0 as Private
 
 Splitter {
     id: root
@@ -58,6 +59,7 @@ Splitter {
     QtObject {
         id: d
 
+
         property bool horizontal: orientation == Qt.Horizontal
         property string size: horizontal ? "width" : "height"
         property string minimum: horizontal ? "minimumWidth" : "minimumHeight"
diff --git a/src/private/private.pro b/src/private/private.pro
index b0a8fa4ff..4f231692e 100644
--- a/src/private/private.pro
+++ b/src/private/private.pro
@@ -10,16 +10,14 @@ HEADERS += \
     $$PWD/qrangemodel_p.h \
     $$PWD/qrangemodel_p_p.h \
     $$PWD/qwheelarea_p.h \
-    $$PWD/qstyleitem_p.h \
-    $$PWD/qtsplitterbase_p.h
+    $$PWD/qstyleitem_p.h
 
 SOURCES += \
     $$PWD/qquickcomponentsprivate.cpp \
     $$PWD/qprivateplugin.cpp\
     $$PWD/qstyleitem.cpp \
     $$PWD/qrangemodel.cpp\
-    $$PWD/qwheelarea.cpp \
-    $$PWD/qtsplitterbase.cpp
+    $$PWD/qwheelarea.cpp
 
 OTHER_FILES += \
     $$PWD/privateplugin.json
@@ -32,8 +30,8 @@ QML_FILES += \
     ModalPopupBehavior.qml \
     PageSlideTransition.qml \
     PageStack.js \
+    SplitterBase.qml \
     ScrollAreaHelper.qml \
-    Splitter.qml \
     ScrollBar.qml \
     FocusFrame.qml
 
diff --git a/src/private/qmldir b/src/private/qmldir
index a9046611c..6f42dc148 100644
--- a/src/private/qmldir
+++ b/src/private/qmldir
@@ -7,3 +7,4 @@ ScrollBar 1.0 ScrollBar.qml
 ScrollAreaHelper 1.0 ScrollAreaHelper.qml
 TabBar 1.0 TabBar.qml
 PageSlideTransition 1.0 PageSlideTransition.qml
+SplitterBase 1.0 SplitterBase.qml
diff --git a/src/private/qprivateplugin.cpp b/src/private/qprivateplugin.cpp
index b44b53cce..8a807da04 100644
--- a/src/private/qprivateplugin.cpp
+++ b/src/private/qprivateplugin.cpp
@@ -44,7 +44,6 @@
 #include "qwheelarea_p.h"
 #include "qstyleitem_p.h"
 #include "qquickcomponentsprivate_p.h"
-#include "qtsplitterbase_p.h"
 
 QT_BEGIN_NAMESPACE
 
@@ -61,7 +60,6 @@ void StylePlugin::registerTypes(const char *uri)
     qmlRegisterType<QRangeModel>(uri, 1, 0, "RangeModel");
     qmlRegisterType<QWheelArea>(uri, 1, 0, "WheelArea");
     qmlRegisterType<QStyleItem>(uri, 1, 0, "StyleItem");
-    qmlRegisterType<QtSplitterBase>(uri, 1, 0, "Splitter");
     qmlRegisterSingletonType<QQuickComponentsPrivate>(uri, 1, 0, "PrivateHelper", registerPrivateModule);
 }
 
diff --git a/src/qtdesktop/SplitterColumn.qml b/src/qtdesktop/SplitterColumn.qml
index 51f6457ae..0b9026d64 100644
--- a/src/qtdesktop/SplitterColumn.qml
+++ b/src/qtdesktop/SplitterColumn.qml
@@ -40,7 +40,6 @@
 
 import QtQuick 2.0
 import QtDesktop.Private 1.0 as Private
-import QtDesktop 1.0
 
 /*!
     \qmltype SplitterColumn
@@ -144,9 +143,9 @@ import QtDesktop 1.0
 *    }
 */
 
-Private.Splitter {
+Private.SplitterBase {
     orientation: Qt.Vertical
-    handleDelegate: StyleItem {
+    handleDelegate: Private.StyleItem {
         id: styleitem
         elementType: "splitter"
         height: handleWidth != -1 ?  handleWidth : pixelMetric("splitterwidth")
diff --git a/src/qtdesktop/SplitterRow.qml b/src/qtdesktop/SplitterRow.qml
index d9ee388fc..54bd331df 100644
--- a/src/qtdesktop/SplitterRow.qml
+++ b/src/qtdesktop/SplitterRow.qml
@@ -40,7 +40,6 @@
 
 import QtQuick 2.0
 import QtDesktop.Private 1.0 as Private
-import QtDesktop 1.0
 
 /*!
     \qmltype SplitterRow
@@ -145,9 +144,9 @@ import QtDesktop 1.0
 */
 
 
-Private.Splitter {
+Private.SplitterBase {
     orientation: Qt.Horizontal
-    handleDelegate: StyleItem {
+    handleDelegate: Private.StyleItem {
         id: styleitem
         elementType: "splitter"
         width: handleWidth != -1 ?  handleWidth : pixelMetric("splitterwidth")
diff --git a/src/qtdesktop/plugin.cpp b/src/qtdesktop/plugin.cpp
index b8c768914..6dd49f084 100644
--- a/src/qtdesktop/plugin.cpp
+++ b/src/qtdesktop/plugin.cpp
@@ -45,6 +45,7 @@
 #include "qtmenu_p.h"
 #include "qtmenubar_p.h"
 #include "qquicklinearlayout_p.h"
+#include "qtsplitterbase_p.h"
 #include "qpagestatus.h"
 #include <qqmlextensionplugin.h>
 
@@ -93,6 +94,7 @@ void StylePlugin::registerTypes(const char *uri)
                                                        QLatin1String("Do not create objects of type Layout"));
 
     qmlRegisterUncreatableType<QPageStatus>(uri, 1, 0, "PageStatus", QLatin1String("Do not create objects of type PageStatus"));
+    qmlRegisterType<QtSplitterBase>(uri, 1, 0, "Splitter");
 }
 
 void StylePlugin::initializeEngine(QQmlEngine *engine, const char *uri)
diff --git a/src/qtdesktop/plugin.pri b/src/qtdesktop/plugin.pri
index 5637e75cc..dae7ddd49 100644
--- a/src/qtdesktop/plugin.pri
+++ b/src/qtdesktop/plugin.pri
@@ -4,6 +4,7 @@ HEADERS += \
     $$PWD/qquicklinearlayout_p.h \
     $$PWD/plugin_p.h \
     $$PWD/qtaction_p.h \
+    $$PWD/qtsplitterbase_p.h \
     $$PWD/qtexclusivegroup_p.h \
     $$PWD/qtmenu_p.h \
     $$PWD/qtmenubar_p.h \
@@ -13,6 +14,7 @@ HEADERS += \
 
 SOURCES += \
     $$PWD/qquicklayout.cpp \
+    $$PWD/qtsplitterbase.cpp \
     $$PWD/qquicklayoutengine.cpp \
     $$PWD/qquicklinearlayout.cpp \
     $$PWD/plugin.cpp \
diff --git a/src/qtdesktop/qmldir b/src/qtdesktop/qmldir
index 2e6383303..72ebb39d6 100644
--- a/src/qtdesktop/qmldir
+++ b/src/qtdesktop/qmldir
@@ -29,4 +29,3 @@ TextArea 1.0 TextArea.qml
 TextField 1.0 TextField.qml
 ToolBar 1.0 ToolBar.qml
 ToolButton 1.0 ToolButton.qml
-
diff --git a/src/private/qtsplitterbase.cpp b/src/qtdesktop/qtsplitterbase.cpp
similarity index 100%
rename from src/private/qtsplitterbase.cpp
rename to src/qtdesktop/qtsplitterbase.cpp
diff --git a/src/private/qtsplitterbase_p.h b/src/qtdesktop/qtsplitterbase_p.h
similarity index 100%
rename from src/private/qtsplitterbase_p.h
rename to src/qtdesktop/qtsplitterbase_p.h
-- 
GitLab