Merge branch 'qml_renaming'

Conflicts:
	src/plugins/qmldesigner/components/propertyeditor/basicwidgets.cpp
	src/plugins/qmldesigner/components/propertyeditor/propertyeditor.cpp
This commit is contained in:
Thomas Hartmann
2010-03-01 09:44:00 +01:00
117 changed files with 978 additions and 853 deletions

View File

@@ -15,7 +15,7 @@ QFrame {
opacity: Behavior { opacity: Behavior {
NumberAnimation { NumberAnimation {
easing: "easeInSine" easing.type: "InSine"
duration: 200 duration: 200
} }
} }

View File

@@ -39,7 +39,7 @@
#include <QtGui/QApplication> #include <QtGui/QApplication>
#ifndef NO_DECLARATIVE_BACKEND #ifndef NO_DECLARATIVE_BACKEND
# include <QtDeclarative/private/qmlstringconverters_p.h> // ### remove me # include <QtDeclarative/private/qdeclarativestringconverters_p.h> // ### remove me
#endif #endif
namespace QmlJS { namespace QmlJS {
@@ -141,7 +141,7 @@ public:
#ifndef NO_DECLARATIVE_BACKEND #ifndef NO_DECLARATIVE_BACKEND
bool ok = false; bool ok = false;
QmlStringConverters::colorFromString(colorString, &ok); QDeclarativeStringConverters::colorFromString(colorString, &ok);
if (!ok) if (!ok)
_message.message = QCoreApplication::translate("QmlJS::Check", "not a valid color"); _message.message = QCoreApplication::translate("QmlJS::Check", "not a valid color");
#endif #endif

View File

@@ -36,12 +36,11 @@
#include <QtCore/QDebug> #include <QtCore/QDebug>
#ifndef NO_DECLARATIVE_BACKEND #ifndef NO_DECLARATIVE_BACKEND
# include <QtDeclarative/QmlType> # include <QtDeclarative/private/qdeclarativemetatype_p.h>
# include <QtDeclarative/QmlMetaType> # include <QtDeclarative/private/qdeclarativeanchors_p.h> // ### remove me
# include <QtDeclarative/private/qmlgraphicsanchors_p.h> // ### remove me # include <QtDeclarative/private/qdeclarativerectangle_p.h> // ### remove me
# include <QtDeclarative/private/qmlgraphicsrectangle_p.h> // ### remove me # include <QtDeclarative/private/qdeclarativevaluetype_p.h> // ### remove me
# include <QtDeclarative/private/qmlvaluetype_p.h> // ### remove me # include <QtDeclarative/private/qdeclarativeanimation_p.h> // ### remove me
# include <QtDeclarative/private/qmlanimation_p.h> // ### remove me
#endif #endif
using namespace QmlJS::Interpreter; using namespace QmlJS::Interpreter;
@@ -232,8 +231,8 @@ void QmlObjectValue::processMembers(MemberProcessor *processor) const
const Value *QmlObjectValue::propertyValue(const QMetaProperty &prop) const const Value *QmlObjectValue::propertyValue(const QMetaProperty &prop) const
{ {
if (QmlMetaType::isQObject(prop.userType())) { if (QDeclarativeMetaType::isQObject(prop.userType())) {
QmlType *qmlPropertyType = QmlMetaType::qmlType(prop.userType()); QDeclarativeType *qmlPropertyType = QDeclarativeMetaType::qmlType(prop.userType());
if (qmlPropertyType && !qmlPropertyType->qmlTypeName().isEmpty()) { if (qmlPropertyType && !qmlPropertyType->qmlTypeName().isEmpty()) {
QString typeName = qmlPropertyType->qmlTypeName(); QString typeName = qmlPropertyType->qmlTypeName();
@@ -254,7 +253,7 @@ const Value *QmlObjectValue::propertyValue(const QMetaProperty &prop) const
typeName.replace(QLatin1Char('.'), QLatin1Char('/')); typeName.replace(QLatin1Char('.'), QLatin1Char('/'));
if (const ObjectValue *objectValue = engine()->newQmlObject(typeName, "", -1, -1)) // ### we should extend this to lookup the property types in the QmlType object, instead of the QMetaProperty. if (const ObjectValue *objectValue = engine()->newQmlObject(typeName, "", -1, -1)) // ### we should extend this to lookup the property types in the QDeclarativeType object, instead of the QMetaProperty.
return objectValue; return objectValue;
} }
} }
@@ -335,11 +334,11 @@ const Value *QmlObjectValue::propertyValue(const QMetaProperty &prop) const
} // end of switch } // end of switch
const QString typeName = prop.typeName(); const QString typeName = prop.typeName();
if (typeName == QLatin1String("QmlGraphicsAnchorLine")) { if (typeName == QLatin1String("QDeclarativeAnchorLine")) {
value = engine()->anchorLineValue(); value = engine()->anchorLineValue();
} }
if (value->asStringValue() && prop.name() == QLatin1String("easing") if (value->asStringValue() && prop.name() == QLatin1String("easing")
&& isDerivedFrom(&QmlPropertyAnimation::staticMetaObject)) { && isDerivedFrom(&QDeclarativePropertyAnimation::staticMetaObject)) {
value = engine()->easingCurveNameValue(); value = engine()->easingCurveNameValue();
} }
@@ -2156,13 +2155,13 @@ const Value *Engine::defaultValueForBuiltinType(const QString &typeName) const
#ifndef NO_DECLARATIVE_BACKEND #ifndef NO_DECLARATIVE_BACKEND
QmlObjectValue *Engine::newQmlObject(const QString &name, const QString &prefix, int majorVersion, int minorVersion) QmlObjectValue *Engine::newQmlObject(const QString &name, const QString &prefix, int majorVersion, int minorVersion)
{ {
if (name == QLatin1String("QmlGraphicsAnchors")) { if (name == QLatin1String("QDeclarativeAnchors")) {
QmlObjectValue *object = new QmlObjectValue(&QmlGraphicsAnchors::staticMetaObject, QLatin1String("Anchors"), -1, -1, this); QmlObjectValue *object = new QmlObjectValue(&QDeclarativeAnchors::staticMetaObject, QLatin1String("Anchors"), -1, -1, this);
return object; return object;
} else if (name == QLatin1String("QmlGraphicsPen")) { } else if (name == QLatin1String("QDeclarativePen")) {
QmlObjectValue *object = new QmlObjectValue(&QmlGraphicsPen::staticMetaObject, QLatin1String("Pen"), -1, -1, this); QmlObjectValue *object = new QmlObjectValue(&QDeclarativePen::staticMetaObject, QLatin1String("Pen"), -1, -1, this);
return object; return object;
} else if (name == QLatin1String("QmlGraphicsScaleGrid")) { } else if (name == QLatin1String("QDeclarativeScaleGrid")) {
QmlObjectValue *object = new QmlObjectValue(&QObject::staticMetaObject, QLatin1String("ScaleGrid"), -1, -1, this); QmlObjectValue *object = new QmlObjectValue(&QObject::staticMetaObject, QLatin1String("ScaleGrid"), -1, -1, this);
object->setProperty("left", numberValue()); object->setProperty("left", numberValue());
object->setProperty("top", numberValue()); object->setProperty("top", numberValue());
@@ -2174,7 +2173,7 @@ QmlObjectValue *Engine::newQmlObject(const QString &name, const QString &prefix,
// ### TODO: add support for QML packages // ### TODO: add support for QML packages
const QString componentName = prefix + QLatin1Char('/') + name; const QString componentName = prefix + QLatin1Char('/') + name;
if (QmlType *qmlType = QmlMetaType::qmlType(componentName.toUtf8(), majorVersion, minorVersion)) { if (QDeclarativeType *qmlType = QDeclarativeMetaType::qmlType(componentName.toUtf8(), majorVersion, minorVersion)) {
const QString typeName = qmlType->qmlTypeName(); const QString typeName = qmlType->qmlTypeName();
const QString strippedTypeName = typeName.mid(typeName.lastIndexOf('/') + 1); const QString strippedTypeName = typeName.mid(typeName.lastIndexOf('/') + 1);
QmlObjectValue *object = new QmlObjectValue(qmlType->metaObject(), strippedTypeName, majorVersion, minorVersion, this); QmlObjectValue *object = new QmlObjectValue(qmlType->metaObject(), strippedTypeName, majorVersion, minorVersion, this);

View File

@@ -31,8 +31,7 @@
#include "qmljsmetatypesystem.h" #include "qmljsmetatypesystem.h"
#ifndef NO_DECLARATIVE_BACKEND #ifndef NO_DECLARATIVE_BACKEND
#include <QtDeclarative/QmlType> #include <QtDeclarative/private/qdeclarativemetatype_p.h>
#include <QtDeclarative/QmlMetaType>
#endif // NO_DECLARATIVE_BACKEND #endif // NO_DECLARATIVE_BACKEND
using namespace QmlJS; using namespace QmlJS;
@@ -43,7 +42,7 @@ void MetaTypeSystem::reload(Interpreter::Engine *interpreter)
_importedTypes.clear(); _importedTypes.clear();
#ifndef NO_DECLARATIVE_BACKEND #ifndef NO_DECLARATIVE_BACKEND
foreach (QmlType *type, QmlMetaType::qmlTypes()) { foreach (QDeclarativeType *type, QDeclarativeMetaType::qmlTypes()) {
const QString fqType = type->qmlTypeName(); const QString fqType = type->qmlTypeName();
const int sepIdx = fqType.lastIndexOf(QLatin1Char('/')); const int sepIdx = fqType.lastIndexOf(QLatin1Char('/'));
QString typeName; QString typeName;

View File

@@ -40,7 +40,7 @@ contains(QT_CONFIG, declarative) {
SUBDIRS += plugin_qmlprojectmanager \ SUBDIRS += plugin_qmlprojectmanager \
plugin_qmlinspector plugin_qmlinspector
exists($$[QT_INSTALL_HEADERS]/QtDeclarative/private/qmlcontext_p.h) { exists($$[QT_INSTALL_HEADERS]/QtDeclarative/private/qdeclarativecontext_p.h) {
SUBDIRS += plugin_qmldesigner SUBDIRS += plugin_qmldesigner
} else { } else {
warning("QmlDesigner plugin disabled! It depends on private headers from QtDeclarative module, which seems not to be installed.") warning("QmlDesigner plugin disabled! It depends on private headers from QtDeclarative module, which seems not to be installed.")

View File

@@ -41,7 +41,7 @@ class QWidget;
class QIODevice; class QIODevice;
class QProcess; class QProcess;
class QPlainTextEdit; class QPlainTextEdit;
class QmlError; class QDeclarativeError;
QT_END_NAMESPACE QT_END_NAMESPACE
namespace QmlDesigner { namespace QmlDesigner {

View File

@@ -33,7 +33,7 @@
#include <QtGui/QTextEdit> #include <QtGui/QTextEdit>
#include <QtGui/QMessageBox> #include <QtGui/QMessageBox>
#include <QmlError> #include <QDeclarativeError>
#include <model.h> #include <model.h>
#include "designdocumentcontroller.h" #include "designdocumentcontroller.h"

View File

@@ -42,7 +42,7 @@
#include <QtGui/QTabWidget> #include <QtGui/QTabWidget>
#include <QtGui/QUndoGroup> #include <QtGui/QUndoGroup>
class QmlError; class QDeclarativeError;
namespace QmlDesigner { namespace QmlDesigner {

View File

@@ -54,9 +54,9 @@
#include <QFileIconProvider> #include <QFileIconProvider>
#include <QImageReader> #include <QImageReader>
#include <QmlView> #include <QDeclarativeView>
#include <QmlGraphicsItem> #include <QDeclarativeItem>
#include <private/qmlengine_p.h> #include <private/qdeclarativeengine_p.h>
namespace QmlDesigner { namespace QmlDesigner {
@@ -106,7 +106,7 @@ public:
Ui::ItemLibrary m_ui; Ui::ItemLibrary m_ui;
Internal::ItemLibraryModel *m_itemLibraryModel; Internal::ItemLibraryModel *m_itemLibraryModel;
QmlView *m_itemsView; QDeclarativeView *m_itemsView;
QDirModel *m_resourcesDirModel; QDirModel *m_resourcesDirModel;
QString m_resourcePath; QString m_resourcePath;
QSize m_itemIconSize, m_resIconSize; QSize m_itemIconSize, m_resIconSize;
@@ -147,24 +147,23 @@ ItemLibrary::ItemLibrary(QWidget *parent) :
m_d->m_ui.ItemLibraryTreeView->setAttribute(Qt::WA_MacShowFocusRect, false); m_d->m_ui.ItemLibraryTreeView->setAttribute(Qt::WA_MacShowFocusRect, false);
m_d->m_ui.ItemLibraryTreeView->setRootIndex(m_d->m_resourcesDirModel->index(m_d->m_resourcePath)); m_d->m_ui.ItemLibraryTreeView->setRootIndex(m_d->m_resourcesDirModel->index(m_d->m_resourcePath));
m_d->m_itemsView = new QmlView(this); m_d->m_itemsView = new QDeclarativeView(this);
m_d->m_itemsView->setSource(QUrl("qrc:/ItemLibrary/qml/ItemsView.qml"));
m_d->m_itemsView->setAttribute(Qt::WA_OpaquePaintEvent); m_d->m_itemsView->setAttribute(Qt::WA_OpaquePaintEvent);
m_d->m_itemsView->setAttribute(Qt::WA_NoSystemBackground); m_d->m_itemsView->setAttribute(Qt::WA_NoSystemBackground);
m_d->m_itemsView->setAcceptDrops(false); m_d->m_itemsView->setAcceptDrops(false);
m_d->m_itemsView->setFocusPolicy(Qt::ClickFocus); m_d->m_itemsView->setFocusPolicy(Qt::ClickFocus);
m_d->m_itemsView->setResizeMode(QmlView::SizeRootObjectToView); m_d->m_itemsView->setResizeMode(QDeclarativeView::SizeRootObjectToView);
m_d->m_ui.ItemLibraryGridLayout->addWidget(m_d->m_itemsView, 0, 0); m_d->m_ui.ItemLibraryGridLayout->addWidget(m_d->m_itemsView, 0, 0);
m_d->m_itemLibraryModel = new Internal::ItemLibraryModel(QmlEnginePrivate::getScriptEngine(m_d->m_itemsView->engine()), this); m_d->m_itemLibraryModel = new Internal::ItemLibraryModel(QDeclarativeEnginePrivate::getScriptEngine(m_d->m_itemsView->engine()), this);
m_d->m_itemLibraryModel->setItemIconSize(m_d->m_itemIconSize); m_d->m_itemLibraryModel->setItemIconSize(m_d->m_itemIconSize);
m_d->m_itemsView->rootContext()->setContextProperty(QLatin1String("itemLibraryModel"), m_d->m_itemLibraryModel); m_d->m_itemsView->rootContext()->setContextProperty(QLatin1String("itemLibraryModel"), m_d->m_itemLibraryModel);
m_d->m_itemsView->rootContext()->setContextProperty(QLatin1String("itemLibraryIconWidth"), m_d->m_itemIconSize.width()); m_d->m_itemsView->rootContext()->setContextProperty(QLatin1String("itemLibraryIconWidth"), m_d->m_itemIconSize.width());
m_d->m_itemsView->rootContext()->setContextProperty(QLatin1String("itemLibraryIconHeight"), m_d->m_itemIconSize.height()); m_d->m_itemsView->rootContext()->setContextProperty(QLatin1String("itemLibraryIconHeight"), m_d->m_itemIconSize.height());
m_d->m_itemsView->execute(); m_d->m_itemsView->setSource(QUrl("qrc:/ItemLibrary/qml/ItemsView.qml"));
QmlGraphicsItem *rootItem = qobject_cast<QmlGraphicsItem*>(m_d->m_itemsView->rootObject()); QDeclarativeItem *rootItem = qobject_cast<QDeclarativeItem*>(m_d->m_itemsView->rootObject());
connect(rootItem, SIGNAL(itemSelected(int)), this, SLOT(showItemInfo(int))); connect(rootItem, SIGNAL(itemSelected(int)), this, SLOT(showItemInfo(int)));
connect(rootItem, SIGNAL(itemDragged(int)), this, SLOT(startDragAndDrop(int))); connect(rootItem, SIGNAL(itemDragged(int)), this, SLOT(startDragAndDrop(int)));
connect(this, SIGNAL(expandAllItems()), rootItem, SLOT(expandAll())); connect(this, SIGNAL(expandAllItems()), rootItem, SLOT(expandAll()));
@@ -262,7 +261,7 @@ void ItemLibrary::startDragAndDrop(int itemLibId)
drag->setPreview(QPixmap::fromImage(image)); drag->setPreview(QPixmap::fromImage(image));
drag->setMimeData(mimeData); drag->setMimeData(mimeData);
QmlGraphicsItem *rootItem = qobject_cast<QmlGraphicsItem*>(m_d->m_itemsView->rootObject()); QDeclarativeItem *rootItem = qobject_cast<QDeclarativeItem*>(m_d->m_itemsView->rootObject());
connect(rootItem, SIGNAL(stopDragAndDrop()), drag, SLOT(stopDrag())); connect(rootItem, SIGNAL(stopDragAndDrop()), drag, SLOT(stopDrag()));
drag->exec(); drag->exec();

View File

@@ -44,7 +44,7 @@ namespace Internal {
template <class T> template <class T>
ItemLibrarySortedModel<T>::ItemLibrarySortedModel(QObject *parent) : ItemLibrarySortedModel<T>::ItemLibrarySortedModel(QObject *parent) :
QmlListModel(parent) QDeclarativeListModel(parent)
{ {
} }
@@ -230,7 +230,7 @@ ItemLibrarySectionModel::ItemLibrarySectionModel(QScriptEngine *scriptEngine, in
QScriptValue::setProperty(QLatin1String("sectionLibId"), sectionLibId); QScriptValue::setProperty(QLatin1String("sectionLibId"), sectionLibId);
QScriptValue::setProperty(QLatin1String("sectionName"), sectionName); QScriptValue::setProperty(QLatin1String("sectionName"), sectionName);
QScriptValue::setProperty(QLatin1String("sectionEntries"), QScriptValue::setProperty(QLatin1String("sectionEntries"),
scriptEngine->newVariant(QVariant::fromValue(static_cast<QmlListModel *>(&m_sectionEntries)))); scriptEngine->newVariant(QVariant::fromValue(static_cast<QDeclarativeListModel *>(&m_sectionEntries))));
} }

View File

@@ -34,7 +34,7 @@
#include <QIcon> #include <QIcon>
#include <QVariant> #include <QVariant>
#include <QScriptEngine> #include <QScriptEngine>
#include <private/qmllistmodel_p.h> #include <private/qdeclarativelistmodel_p.h>
QT_FORWARD_DECLARE_CLASS(QMimeData); QT_FORWARD_DECLARE_CLASS(QMimeData);
@@ -46,7 +46,7 @@ class ItemLibraryInfo;
namespace Internal { namespace Internal {
template <class T> template <class T>
class ItemLibrarySortedModel: public QmlListModel { class ItemLibrarySortedModel: public QDeclarativeListModel {
public: public:
ItemLibrarySortedModel(QObject *parent = 0); ItemLibrarySortedModel(QObject *parent = 0);
~ItemLibrarySortedModel(); ~ItemLibrarySortedModel();

View File

@@ -31,7 +31,6 @@
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
QML_DEFINE_TYPE(Bauhaus,1,0,QBoxLayout,QBoxLayoutObject);
QBoxLayoutObject::QBoxLayoutObject(QObject *parent) QBoxLayoutObject::QBoxLayoutObject(QObject *parent)
: QLayoutObject(parent), _layout(0) : QLayoutObject(parent), _layout(0)
@@ -57,16 +56,22 @@ void QBoxLayoutObject::clearWidget()
{ {
} }
QML_DEFINE_TYPE(Bauhaus,1,0,QHBoxLayout,QHBoxLayoutObject);
QHBoxLayoutObject::QHBoxLayoutObject(QObject *parent) QHBoxLayoutObject::QHBoxLayoutObject(QObject *parent)
: QBoxLayoutObject(new QHBoxLayout, parent) : QBoxLayoutObject(new QHBoxLayout, parent)
{ {
} }
QML_DEFINE_TYPE(Bauhaus,1,0,QVBoxLayout,QVBoxLayoutObject);
QVBoxLayoutObject::QVBoxLayoutObject(QObject *parent) QVBoxLayoutObject::QVBoxLayoutObject(QObject *parent)
: QBoxLayoutObject(new QVBoxLayout, parent) : QBoxLayoutObject(new QVBoxLayout, parent)
{ {
} }
void BasicLayouts::registerDeclarativeTypes()
{
QML_REGISTER_TYPE(Bauhaus,1,0,QBoxLayout,QBoxLayoutObject);
QML_REGISTER_TYPE(Bauhaus,1,0,QHBoxLayout,QHBoxLayoutObject);
QML_REGISTER_TYPE(Bauhaus,1,0,QVBoxLayout,QVBoxLayoutObject);
}
QT_END_NAMESPACE QT_END_NAMESPACE

View File

@@ -43,7 +43,7 @@ class QBoxLayoutObject : public QLayoutObject
{ {
Q_OBJECT Q_OBJECT
Q_PROPERTY(QmlListProperty<QWidget> children READ children) Q_PROPERTY(QDeclarativeListProperty<QWidget> children READ children)
Q_PROPERTY(int topMargin READ topMargin WRITE setTopMargin) Q_PROPERTY(int topMargin READ topMargin WRITE setTopMargin)
Q_PROPERTY(int bottomMargin READ bottomMargin WRITE setBottomMargin) Q_PROPERTY(int bottomMargin READ bottomMargin WRITE setBottomMargin)
@@ -57,8 +57,8 @@ public:
explicit QBoxLayoutObject(QBoxLayout *, QObject *parent=0); explicit QBoxLayoutObject(QBoxLayout *, QObject *parent=0);
virtual QLayout *layout() const; virtual QLayout *layout() const;
QmlListProperty<QWidget> children() { QDeclarativeListProperty<QWidget> children() {
return QmlListProperty<QWidget>(this, 0, children_append, 0, 0, children_clear); return QDeclarativeListProperty<QWidget>(this, 0, children_append, 0, 0, children_clear);
} }
private: private:
@@ -66,11 +66,11 @@ private:
void addWidget(QWidget *); void addWidget(QWidget *);
void clearWidget(); void clearWidget();
static void children_append(QmlListProperty<QWidget> *property, QWidget *widget) { static void children_append(QDeclarativeListProperty<QWidget> *property, QWidget *widget) {
static_cast<QBoxLayoutObject*>(property->object)->addWidget(widget); static_cast<QBoxLayoutObject*>(property->object)->addWidget(widget);
} }
static void children_clear(QmlListProperty<QWidget> *property) { static void children_clear(QDeclarativeListProperty<QWidget> *property) {
static_cast<QBoxLayoutObject*>(property->object)->clearWidget(); static_cast<QBoxLayoutObject*>(property->object)->clearWidget();
} }
@@ -172,6 +172,12 @@ QML_DECLARE_TYPE(QBoxLayoutObject);
QML_DECLARE_TYPE(QHBoxLayoutObject); QML_DECLARE_TYPE(QHBoxLayoutObject);
QML_DECLARE_TYPE(QVBoxLayoutObject); QML_DECLARE_TYPE(QVBoxLayoutObject);
class BasicLayouts {
public:
static void registerDeclarativeTypes();
};
QT_END_HEADER QT_END_HEADER
#endif // BASICLAYOUTS_H #endif // BASICLAYOUTS_H

View File

@@ -29,10 +29,10 @@
#include "basicwidgets.h" #include "basicwidgets.h"
#include <qlayoutobject.h> #include <qlayoutobject.h>
#include <private/graphicswidgets_p.h> //#include <private/graphicswidgets_p.h>
#include <qmlcontext.h> #include <QDeclarativeContext>
#include <qmlengine.h> #include <QDeclarativeEngine>
#include <qmlcomponent.h> #include <QDeclarativeComponent>
#include <QtCore/QDebug> #include <QtCore/QDebug>
#include <QFile> #include <QFile>
#include <QPixmap> #include <QPixmap>
@@ -104,9 +104,9 @@ class QWidgetDeclarativeUI : public QObject
{ {
Q_OBJECT Q_OBJECT
Q_PROPERTY(QmlListProperty<QObject> children READ children) Q_PROPERTY(QDeclarativeListProperty<QObject> children READ children)
Q_PROPERTY(QLayoutObject *layout READ layout WRITE setLayout) Q_PROPERTY(QLayoutObject *layout READ layout WRITE setLayout)
Q_PROPERTY(QmlListProperty<Action> actions READ actions) Q_PROPERTY(QDeclarativeListProperty<Action> actions READ actions)
Q_PROPERTY(QFont font READ font CONSTANT) Q_PROPERTY(QFont font READ font CONSTANT)
Q_PROPERTY(QPoint pos READ pos) Q_PROPERTY(QPoint pos READ pos)
@@ -195,13 +195,14 @@ public:
emit mouseOverChanged(); emit mouseOverChanged();
} }
void emitVisibleChanged() void emitVisibleChanged()
{ {
emit visibleChanged(); emit visibleChanged();
} }
QmlListProperty<QObject> children() { QDeclarativeListProperty<QObject> children() {
return QmlListProperty<QObject>(this, 0, children_append, children_count, children_at, children_clear); return QDeclarativeListProperty<QObject>(this, 0, children_append, children_count, children_at, children_clear);
} }
QLayoutObject *layout() const { return _layout; } QLayoutObject *layout() const { return _layout; }
@@ -427,8 +428,8 @@ public:
} }
QmlListProperty<Action> actions() { QDeclarativeListProperty<Action> actions() {
return QmlListProperty<Action>(this, 0, actions_append, actions_count, actions_at, actions_clear); return QDeclarativeListProperty<Action>(this, 0, actions_append, actions_count, actions_at, actions_clear);
} }
private: private:
@@ -439,7 +440,7 @@ private:
QGraphicsOpacityEffect *_graphicsOpacityEffect; QGraphicsOpacityEffect *_graphicsOpacityEffect;
bool m_mouseOver; bool m_mouseOver;
static void children_append(QmlListProperty<QObject> *property, QObject *o) { static void children_append(QDeclarativeListProperty<QObject> *property, QObject *o) {
QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object); QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object);
QWidget *q = p->q; QWidget *q = p->q;
if (QWidget *w = qobject_cast<QWidget *>(o)) if (QWidget *w = qobject_cast<QWidget *>(o))
@@ -448,19 +449,19 @@ private:
o->setParent(q); o->setParent(q);
} }
static int children_count(QmlListProperty<QObject> *property) { static int children_count(QDeclarativeListProperty<QObject> *property) {
QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object); QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object);
QWidget *q = p->q; QWidget *q = p->q;
return q->children().count(); return q->children().count();
} }
static QObject * children_at(QmlListProperty<QObject> *property, int index) { static QObject * children_at(QDeclarativeListProperty<QObject> *property, int index) {
QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object); QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object);
QWidget *q = p->q; QWidget *q = p->q;
return q->children().at(index); return q->children().at(index);
} }
static void children_clear(QmlListProperty<QObject> *property) { static void children_clear(QDeclarativeListProperty<QObject> *property) {
QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object); QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object);
QWidget *q = p->q; QWidget *q = p->q;
QObjectList c = q->children(); QObjectList c = q->children();
@@ -469,25 +470,25 @@ private:
} }
// ### Original had an insert, and removeAt // ### Original had an insert, and removeAt
static void actions_append(QmlListProperty<Action> *property, Action *o) { static void actions_append(QDeclarativeListProperty<Action> *property, Action *o) {
QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object); QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object);
QWidget *w = p->q; QWidget *w = p->q;
o->setParent(w); o->setParent(w);
w->addAction(o); w->addAction(o);
} }
static int actions_count(QmlListProperty<Action> *property) { static int actions_count(QDeclarativeListProperty<Action> *property) {
QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object); QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object);
QWidget *w = p->q; QWidget *w = p->q;
return w->actions().count(); return w->actions().count();
} }
static Action *actions_at(QmlListProperty<Action> *property, int index) { static Action *actions_at(QDeclarativeListProperty<Action> *property, int index) {
QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object); QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object);
QWidget *w = p->q; QWidget *w = p->q;
return qobject_cast<Action *>(w->actions().at(index)); return qobject_cast<Action *>(w->actions().at(index));
} }
static void actions_clear(QmlListProperty<Action> *property) { static void actions_clear(QDeclarativeListProperty<Action> *property) {
QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object); QWidgetDeclarativeUI *p = static_cast<QWidgetDeclarativeUI *>(property->object);
QWidget *w = p->q; QWidget *w = p->q;
@@ -674,7 +675,7 @@ public:
} }
private: private:
//if not for the at() function, we could use QmlList instead //if not for the at() function, we could use QDeclarativeList instead
QMenu *menu; QMenu *menu;
@@ -865,7 +866,7 @@ class WidgetLoader : public QWidget
Q_PROPERTY(QString sourceString READ sourceString WRITE setSourceString NOTIFY sourceChanged) Q_PROPERTY(QString sourceString READ sourceString WRITE setSourceString NOTIFY sourceChanged)
Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged) Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged)
Q_PROPERTY(QWidget *widget READ widget NOTIFY widgetChanged) Q_PROPERTY(QWidget *widget READ widget NOTIFY widgetChanged)
Q_PROPERTY(QmlComponent *component READ component NOTIFY sourceChanged) Q_PROPERTY(QDeclarativeComponent *component READ component NOTIFY sourceChanged)
public: public:
WidgetLoader(QWidget * parent = 0) : QWidget(parent), m_source(QUrl()), m_widget(0), WidgetLoader(QWidget * parent = 0) : QWidget(parent), m_source(QUrl()), m_widget(0),
@@ -884,7 +885,7 @@ public:
{ setSource(QUrl(url)); } { setSource(QUrl(url)); }
QWidget *widget() const; QWidget *widget() const;
QmlComponent *component() const QDeclarativeComponent *component() const
{ return m_component; } { return m_component; }
signals: signals:
@@ -894,7 +895,7 @@ signals:
private: private:
QUrl m_source; QUrl m_source;
QWidget *m_widget; QWidget *m_widget;
QmlComponent *m_component; QDeclarativeComponent *m_component;
QVBoxLayout *m_layout; QVBoxLayout *m_layout;
QHash<QString, QWidget*> m_cachedWidgets; QHash<QString, QWidget*> m_cachedWidgets;
}; };
@@ -936,7 +937,7 @@ void WidgetLoader::setSource(const QUrl &source)
m_widget = m_cachedWidgets.value(source.toString()); m_widget = m_cachedWidgets.value(source.toString());
m_widget->show(); m_widget->show();
} else { } else {
m_component = new QmlComponent(qmlEngine(this), m_source, this); m_component = new QDeclarativeComponent(qmlEngine(this), m_source, this);
if (m_component) { if (m_component) {
emit sourceChanged(); emit sourceChanged();
@@ -952,7 +953,7 @@ void WidgetLoader::setSource(const QUrl &source)
return; return;
} }
QmlContext *ctxt = new QmlContext(qmlContext(this)); QDeclarativeContext *ctxt = new QDeclarativeContext(qmlContext(this));
ctxt->addDefaultObject(this); ctxt->addDefaultObject(this);
QObject *obj = m_component->create(ctxt); QObject *obj = m_component->create(ctxt);
@@ -1170,17 +1171,17 @@ class QTabWidgetDeclarativeUI : public QObject
{ {
Q_OBJECT Q_OBJECT
Q_PROPERTY(QmlListProperty<QTabObject> tabs READ tabs) Q_PROPERTY(QDeclarativeListProperty<QTabObject> tabs READ tabs)
Q_CLASSINFO("DefaultProperty", "tabs") Q_CLASSINFO("DefaultProperty", "tabs")
public: public:
QTabWidgetDeclarativeUI(QObject *other) : QObject(other) {} QTabWidgetDeclarativeUI(QObject *other) : QObject(other) {}
QmlListProperty<QTabObject> tabs() { QDeclarativeListProperty<QTabObject> tabs() {
return QmlListProperty<QTabObject>(this, 0, tabs_append, 0, 0, tabs_clear); return QDeclarativeListProperty<QTabObject>(this, 0, tabs_append, 0, 0, tabs_clear);
} }
private: private:
static void tabs_append(QmlListProperty<QTabObject> *property, QTabObject *o) { static void tabs_append(QDeclarativeListProperty<QTabObject> *property, QTabObject *o) {
QTabWidget *tw = static_cast<QTabWidget*>(property->object->parent()); QTabWidget *tw = static_cast<QTabWidget*>(property->object->parent());
if (!o->icon().isNull()) if (!o->icon().isNull())
tw->addTab(o->content(), o->icon(), o->label()); tw->addTab(o->content(), o->icon(), o->label());
@@ -1188,7 +1189,7 @@ private:
tw->addTab(o->content(), o->label()); tw->addTab(o->content(), o->label());
} }
static void tabs_clear(QmlListProperty<QTabObject> *property) { static void tabs_clear(QDeclarativeListProperty<QTabObject> *property) {
QTabWidget *tw = static_cast<QTabWidget*>(property->object->parent()); QTabWidget *tw = static_cast<QTabWidget*>(property->object->parent());
tw->clear(); tw->clear();
} }
@@ -1203,68 +1204,71 @@ public:
{} {}
}; };
QT_END_NAMESPACE
QML_DEFINE_EXTENDED_TYPE(Bauhaus,1,0,QWidget,QWidget,QWidgetDeclarativeUI);
//display
QML_DEFINE_TYPE(Bauhaus,1,0,QProgressBar,QProgressBar)
QML_DEFINE_TYPE(Bauhaus,1,0,QLCDNumber,QLCDNumber)
//input
QML_DEFINE_TYPE(Bauhaus,1,0,QLineEdit,QLineEdit)
QML_DEFINE_TYPE(Bauhaus,1,0,QTextEdit,QTextEdit)
QML_DEFINE_TYPE(Bauhaus,1,0,QPlainTextEdit,QPlainTextEdit)
QML_DEFINE_TYPE(Bauhaus,1,0,QSpinBox,QSpinBox)
QML_DEFINE_TYPE(Bauhaus,1,0,QDoubleSpinBox,QDoubleSpinBox)
QML_DEFINE_TYPE(Bauhaus,1,0,QSlider,QSlider)
QML_DEFINE_TYPE(Bauhaus,1,0,QDateTimeEdit,QDateTimeEdit)
QML_DEFINE_TYPE(Bauhaus,1,0,QDateEdit,QDateEdit)
QML_DEFINE_TYPE(Bauhaus,1,0,QTimeEdit,QTimeEdit)
QML_DEFINE_TYPE(Bauhaus,1,0,QFontComboBox,QFontComboBox)
QML_DEFINE_TYPE(Bauhaus,1,0,QDial,QDial)
QML_DEFINE_TYPE(Bauhaus,1,0,QScrollBar,QScrollBar)
QML_DEFINE_TYPE(Bauhaus,1,0,QCalendarWidget, QCalendarWidget)
QML_DECLARE_TYPE(MyGroupBox)
QML_DECLARE_TYPE(WidgetLoader)
QML_DECLARE_TYPE(WidgetFrame)
//QML_DEFINE_TYPE(Bauhaus,1,0,QComboBox,QComboBox); //need a way to populate
//QML_DEFINE_EXTENDED_TYPE(QComboBox,QComboBox, QComboBox); //need a way to populate
//buttons
//QML_DEFINE_TYPE(Bauhaus,1,0,QPushButton,QPushButton);
QML_DEFINE_TYPE(Bauhaus,1,0,QCheckBox,QCheckBox)
QML_DEFINE_TYPE(Bauhaus,1,0,QGroupBox,QGroupBox)
QML_DEFINE_TYPE(Bauhaus,1,0,QAction,Action)
QML_DEFINE_TYPE(Bauhaus,1,0,QRadioButton,QRadioButton)
QML_DEFINE_TYPE(Bauhaus,1,0,FileWidget, FileWidget)
QML_DEFINE_TYPE(Bauhaus,1,0,LayoutWidget, LayoutWidget)
//containers
QML_DEFINE_TYPE(Bauhaus,1,0,QFrame,QFrame)
QML_DEFINE_TYPE(Bauhaus,1,0,WidgetFrame,WidgetFrame)
QML_DEFINE_TYPE(Bauhaus,1,0,WidgetLoader,WidgetLoader)
QML_DEFINE_EXTENDED_TYPE(Bauhaus,1,0,QExtGroupBox,MyGroupBox,QGroupBoxDeclarativeUI)
QML_DEFINE_EXTENDED_TYPE(Bauhaus,1,0,QTabWidget,QTabWidget,QTabWidgetDeclarativeUI)
QML_DEFINE_EXTENDED_TYPE(Bauhaus,1,0,QScrollArea,QScrollArea,QScrollAreaDeclarativeUI)
QML_DEFINE_EXTENDED_TYPE(Bauhaus,1,0,QPushButton,QPushButton,QPushButtonDeclarativeUI)
QML_DEFINE_EXTENDED_TYPE(Bauhaus,1,0,QLabel,QLabel,QLabelDeclarativeUI)
QML_DEFINE_EXTENDED_TYPE(Bauhaus,1,0,QToolButton,QToolButton, QToolButtonDeclarativeUI)
QML_DEFINE_EXTENDED_TYPE(Bauhaus,1,0,QComboBox,QComboBox, QComboBoxDeclarativeUI)
QML_DEFINE_EXTENDED_TYPE(Bauhaus,1,0,QMenu,QMenu, QMenuDeclarativeUI)
//QML_DEFINE_TYPE(Bauhaus,1,0,BauhausoolBox,BauhausoolBox);
//QML_DEFINE_TYPE(Bauhaus,1,0,QScrollArea,QScrollArea);
//QML_DEFINE_EXTENDED_TYPE(BauhausColorButton,BauhausColorButton,BauhausColorButtonDeclarativeUI);
//itemviews
//QML_DEFINE_TYPE(Bauhaus,1,0,QListView,QListView);
//QML_DEFINE_TYPE(Bauhaus,1,0,BauhausreeView,BauhausreeView);
//QML_DEFINE_TYPE(Bauhaus,1,0,BauhausableView,BauhausableView);
QML_DECLARE_TYPE(QTabObject); QML_DECLARE_TYPE(QTabObject);
QML_DEFINE_TYPE(Qt,4,6,QTabObject,QTabObject); //### with namespacing, this should just be 'Tab' QML_DECLARE_TYPE(MyGroupBox);
QML_DECLARE_TYPE(WidgetLoader);
QML_DECLARE_TYPE(WidgetFrame);
void BasicWidgets::registerDeclarativeTypes()
{
QML_REGISTER_EXTENDED_TYPE(Bauhaus,1,0,QWidget,QWidget,QWidgetDeclarativeUI);
//display
QML_REGISTER_TYPE(Bauhaus,1,0,QProgressBar,QProgressBar);
QML_REGISTER_TYPE(Bauhaus,1,0,QLCDNumber,QLCDNumber);
//input
QML_REGISTER_TYPE(Bauhaus,1,0,QLineEdit,QLineEdit);
QML_REGISTER_TYPE(Bauhaus,1,0,QTextEdit,QTextEdit);
QML_REGISTER_TYPE(Bauhaus,1,0,QPlainTextEdit,QPlainTextEdit);
QML_REGISTER_TYPE(Bauhaus,1,0,QSpinBox,QSpinBox);
QML_REGISTER_TYPE(Bauhaus,1,0,QDoubleSpinBox,QDoubleSpinBox);
QML_REGISTER_TYPE(Bauhaus,1,0,QSlider,QSlider);
QML_REGISTER_TYPE(Bauhaus,1,0,QDateTimeEdit,QDateTimeEdit);
QML_REGISTER_TYPE(Bauhaus,1,0,QDateEdit,QDateEdit);
QML_REGISTER_TYPE(Bauhaus,1,0,QTimeEdit,QTimeEdit);
QML_REGISTER_TYPE(Bauhaus,1,0,QFontComboBox,QFontComboBox);
QML_REGISTER_TYPE(Bauhaus,1,0,QDial,QDial);
QML_REGISTER_TYPE(Bauhaus,1,0,QScrollBar,QScrollBar);
QML_REGISTER_TYPE(Bauhaus,1,0,QCalendarWidget, QCalendarWidget);
//QML_REGISTER_TYPE(Bauhaus,1,0,QComboBox,QComboBox); //need a way to populate
//QML_REGISTER_EXTENDED_TYPE(QComboBox,QComboBox, QComboBox); //need a way to populate
//buttons
//QML_REGISTER_TYPE(Bauhaus,1,0,QPushButton,QPushButton);
QML_REGISTER_TYPE(Bauhaus,1,0,QCheckBox,QCheckBox);
QML_REGISTER_TYPE(Bauhaus,1,0,QGroupBox,QGroupBox);
QML_REGISTER_TYPE(Bauhaus,1,0,QAction,Action);
QML_REGISTER_TYPE(Bauhaus,1,0,QRadioButton,QRadioButton);
QML_REGISTER_TYPE(Bauhaus,1,0,FileWidget, FileWidget);
QML_REGISTER_TYPE(Bauhaus,1,0,LayoutWidget, LayoutWidget);
//containers
QML_REGISTER_TYPE(Bauhaus,1,0,QFrame,QFrame);
QML_REGISTER_TYPE(Bauhaus,1,0,WidgetFrame,WidgetFrame);
QML_REGISTER_TYPE(Bauhaus,1,0,WidgetLoader,WidgetLoader);
QML_REGISTER_EXTENDED_TYPE(Bauhaus,1,0,QExtGroupBox,MyGroupBox,QGroupBoxDeclarativeUI);
QML_REGISTER_EXTENDED_TYPE(Bauhaus,1,0,QTabWidget,QTabWidget,QTabWidgetDeclarativeUI);
QML_REGISTER_EXTENDED_TYPE(Bauhaus,1,0,QScrollArea,QScrollArea,QScrollAreaDeclarativeUI);
QML_REGISTER_EXTENDED_TYPE(Bauhaus,1,0,QPushButton,QPushButton,QPushButtonDeclarativeUI);
QML_REGISTER_EXTENDED_TYPE(Bauhaus,1,0,QLabel,QLabel,QLabelDeclarativeUI);
QML_REGISTER_EXTENDED_TYPE(Bauhaus,1,0,QToolButton,QToolButton, QToolButtonDeclarativeUI);
QML_REGISTER_EXTENDED_TYPE(Bauhaus,1,0,QComboBox,QComboBox, QComboBoxDeclarativeUI);
QML_REGISTER_EXTENDED_TYPE(Bauhaus,1,0,QMenu,QMenu, QMenuDeclarativeUI);
//QML_REGISTER_TYPE(Bauhaus,1,0,BauhausoolBox,BauhausoolBox);
//QML_REGISTER_TYPE(Bauhaus,1,0,QScrollArea,QScrollArea);
//QML_REGISTER_EXTENDED_TYPE(BauhausColorButton,BauhausColorButton,BauhausColorButtonDeclarativeUI);
//itemviews
//QML_REGISTER_TYPE(Bauhaus,1,0,QListView,QListView);
//QML_REGISTER_TYPE(Bauhaus,1,0,BauhausreeView,BauhausreeView);
//QML_REGISTER_TYPE(Bauhaus,1,0,BauhausableView,BauhausableView);
QML_REGISTER_TYPE(Bauhaus,1,0,QTabObject,QTabObject); //### with namespacing, this should just be 'Tab'
}
#include "basicwidgets.moc" #include "basicwidgets.moc"

View File

@@ -30,7 +30,7 @@
#ifndef BASICWIDGETS_H #ifndef BASICWIDGETS_H
#define BASICWIDGETS_H #define BASICWIDGETS_H
#include <qml.h> #include <qdeclarative.h>
#include <QGraphicsScene> #include <QGraphicsScene>
#include <QGraphicsView> #include <QGraphicsView>
#include <QLabel> #include <QLabel>
@@ -94,6 +94,7 @@ QML_DECLARE_TYPE(QTabWidget);
QML_DECLARE_TYPE(FileWidget); QML_DECLARE_TYPE(FileWidget);
QML_DECLARE_TYPE(LayoutWidget); QML_DECLARE_TYPE(LayoutWidget);
class Action : public QAction { class Action : public QAction {
Q_OBJECT Q_OBJECT
public: public:
@@ -111,5 +112,9 @@ QML_DECLARE_TYPE(Action);
//QML_DECLARE_TYPE(QTableView); //QML_DECLARE_TYPE(QTableView);
//top-level windows? //top-level windows?
class BasicWidgets {
public:
static void registerDeclarativeTypes();
};
#endif // BASICWIDGETS_H #endif // BASICWIDGETS_H

View File

@@ -39,10 +39,12 @@
#include <QSpinBox> #include <QSpinBox>
QML_DEFINE_TYPE(Bauhaus,1,0,BehaviorWidget,QmlDesigner::BehaviorWidget);
namespace QmlDesigner { namespace QmlDesigner {
void BehaviorDialog::registerDeclarativeType()
{
QML_REGISTER_TYPE(Bauhaus,1,0,BehaviorWidget,QmlDesigner::BehaviorWidget);
}
BehaviorWidget::BehaviorWidget() : QPushButton(), m_BehaviorDialog(new BehaviorDialog(0)) BehaviorWidget::BehaviorWidget() : QPushButton(), m_BehaviorDialog(new BehaviorDialog(0))
{ {

View File

@@ -37,7 +37,7 @@
#include <QDialog> #include <QDialog>
#include <QWeakPointer> #include <QWeakPointer>
#include <QScopedPointer> #include <QScopedPointer>
#include <qml.h> #include <qdeclarative.h>
#include "ui_behaviordialog.h" #include "ui_behaviordialog.h"
@@ -83,6 +83,7 @@ public slots:
virtual void accept(); virtual void accept();
virtual void reject(); virtual void reject();
static void registerDeclarativeType();
private: private:
ModelNode m_modelNode; ModelNode m_modelNode;

View File

@@ -41,13 +41,14 @@
#include <variantproperty.h> #include <variantproperty.h>
#include <qmlobjectnode.h> #include <qmlobjectnode.h>
QML_DEFINE_TYPE(Bauhaus,1,0,ColorButton,QmlDesigner::ColorButton);
QML_DEFINE_TYPE(Bauhaus,1,0,HueControl,QmlDesigner::HueControl);
QML_DEFINE_TYPE(Bauhaus,1,0,ColorBox,QmlDesigner::ColorBox);
namespace QmlDesigner { namespace QmlDesigner {
void ColorWidget::registerDeclarativeTypes() {
QML_REGISTER_TYPE(Bauhaus,1,0,ColorButton,QmlDesigner::ColorButton);
QML_REGISTER_TYPE(Bauhaus,1,0,HueControl,QmlDesigner::HueControl);
QML_REGISTER_TYPE(Bauhaus,1,0,ColorBox,QmlDesigner::ColorBox);
}
void ColorButton::paintEvent(QPaintEvent *event) void ColorButton::paintEvent(QPaintEvent *event)
{ {
QToolButton::paintEvent(event); QToolButton::paintEvent(event);

View File

@@ -36,7 +36,7 @@
#include <QToolButton> #include <QToolButton>
#include <QMouseEvent> #include <QMouseEvent>
#include <modelnode.h> #include <modelnode.h>
#include <qml.h> #include <qdeclarative.h>
#include <propertyeditorvalue.h> #include <propertyeditorvalue.h>
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
@@ -282,6 +282,12 @@ private:
}; };
class ColorWidget {
public:
static void registerDeclarativeTypes();
};
} //QmlDesigner } //QmlDesigner
QML_DECLARE_TYPE(QmlDesigner::ColorButton); QML_DECLARE_TYPE(QmlDesigner::ColorButton);

View File

@@ -36,8 +36,6 @@
#include <QComboBox> #include <QComboBox>
#include <QLabel> #include <QLabel>
QML_DEFINE_TYPE(Bauhaus,1,0,FontWidget,QmlDesigner::FontWidget);
namespace QmlDesigner { namespace QmlDesigner {
FontWidget::FontWidget(QWidget *parent) FontWidget::FontWidget(QWidget *parent)
@@ -169,4 +167,8 @@ void FontWidget::setFontSize(qreal size)
} }
} }
void FontWidget::registerDeclarativeTypes() {
QML_REGISTER_TYPE(Bauhaus,1,0,FontWidget,QmlDesigner::FontWidget);
}
} // namespace QmlDesigner } // namespace QmlDesigner

View File

@@ -32,7 +32,7 @@
#include <QWeakPointer> #include <QWeakPointer>
#include <QWidget> #include <QWidget>
#include <qml.h> #include <qdeclarative.h>
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
@@ -75,6 +75,8 @@ public:
QFont font() const; QFont font() const;
void setFont(QFont size); void setFont(QFont size);
static void registerDeclarativeTypes();
signals: signals:
void familyChanged(); void familyChanged();
void boldChanged(); void boldChanged();

View File

@@ -39,19 +39,28 @@
#include <variantproperty.h> #include <variantproperty.h>
#include "propertyeditorvalue.h" #include "propertyeditorvalue.h"
#include "basiclayouts.h"
#include "basicwidgets.h"
#include "resetwidget.h"
#include "qlayoutobject.h"
#include "colorwidget.h"
#include "behaviordialog.h"
#include "qproxylayoutitem.h"
#include "fontwidget.h"
#include "siblingcombobox.h"
#include <QtCore/QCoreApplication> #include <QtCore/QCoreApplication>
#include <QtCore/QDir> #include <QtCore/QDir>
#include <QtCore/QFileSystemWatcher> #include <QtCore/QFileSystemWatcher>
#include <QtCore/QFileInfo> #include <QtCore/QFileInfo>
#include <QtCore/QDebug> #include <QtCore/QDebug>
#include <QtDeclarative/QmlView> #include <QtDeclarative/QDeclarativeView>
#include <QtDeclarative/QmlContext> #include <QtDeclarative/QDeclarativeContext>
#include <QtGui/QVBoxLayout> #include <QtGui/QVBoxLayout>
#include <QtGui/QShortcut> #include <QtGui/QShortcut>
#include <QtGui/QStackedWidget> #include <QtGui/QStackedWidget>
#include <QmlEngine> #include <QDeclarativeEngine>
#include <QmlMetaType> #include <private/qdeclarativemetatype_p.h>
#include <QMessageBox> #include <QMessageBox>
#include <QApplication> #include <QApplication>
@@ -61,13 +70,12 @@ enum {
namespace QmlDesigner { namespace QmlDesigner {
PropertyEditor::NodeType::NodeType(const QUrl &qmlFile, PropertyEditor *propertyEditor) : PropertyEditor::NodeType::NodeType(PropertyEditor *propertyEditor) :
m_view(new QmlView) m_view(new QDeclarativeView)
{ {
Q_ASSERT(QFileInfo(":/images/button_normal.png").exists()); Q_ASSERT(QFileInfo(":/images/button_normal.png").exists());
m_view->setResizeMode(QmlView::SizeRootObjectToView); m_view->setResizeMode(QDeclarativeView::SizeRootObjectToView);
m_view->setSource(qmlFile);
connect(&m_backendValuesPropertyMap, SIGNAL(valueChanged(const QString&)), propertyEditor, SLOT(changeValue(const QString&))); connect(&m_backendValuesPropertyMap, SIGNAL(valueChanged(const QString&)), propertyEditor, SLOT(changeValue(const QString&)));
} }
@@ -76,11 +84,11 @@ PropertyEditor::NodeType::~NodeType()
{ {
} }
void setupPropertyEditorValue(const QString &name, QmlPropertyMap *propertyMap, PropertyEditor *propertyEditor) void setupPropertyEditorValue(const QString &name, QDeclarativePropertyMap *propertyMap, PropertyEditor *propertyEditor)
{ {
QString propertyName(name); QString propertyName(name);
propertyName.replace(QLatin1Char('.'), QLatin1Char('_')); propertyName.replace(QLatin1Char('.'), QLatin1Char('_'));
PropertyEditorValue *valueObject = qobject_cast<PropertyEditorValue*>(QmlMetaType::toQObject(propertyMap->value(propertyName))); PropertyEditorValue *valueObject = qobject_cast<PropertyEditorValue*>(QDeclarativeMetaType::toQObject(propertyMap->value(propertyName)));
if (!valueObject) { if (!valueObject) {
valueObject = new PropertyEditorValue(propertyMap); valueObject = new PropertyEditorValue(propertyMap);
QObject::connect(valueObject, SIGNAL(valueChanged(QString)), propertyMap, SIGNAL(valueChanged(QString))); QObject::connect(valueObject, SIGNAL(valueChanged(QString)), propertyMap, SIGNAL(valueChanged(QString)));
@@ -91,11 +99,11 @@ void setupPropertyEditorValue(const QString &name, QmlPropertyMap *propertyMap,
valueObject->setValue(QVariant("")); valueObject->setValue(QVariant(""));
} }
void createPropertyEditorValue(const QmlObjectNode &fxObjectNode, const QString &name, const QVariant &value, QmlPropertyMap *propertyMap, PropertyEditor *propertyEditor) void createPropertyEditorValue(const QmlObjectNode &fxObjectNode, const QString &name, const QVariant &value, QDeclarativePropertyMap *propertyMap, PropertyEditor *propertyEditor)
{ {
QString propertyName(name); QString propertyName(name);
propertyName.replace(QLatin1Char('.'), QLatin1Char('_')); propertyName.replace(QLatin1Char('.'), QLatin1Char('_'));
PropertyEditorValue *valueObject = qobject_cast<PropertyEditorValue*>(QmlMetaType::toQObject(propertyMap->value(propertyName))); PropertyEditorValue *valueObject = qobject_cast<PropertyEditorValue*>(QDeclarativeMetaType::toQObject(propertyMap->value(propertyName)));
if (!valueObject) { if (!valueObject) {
valueObject = new PropertyEditorValue(propertyMap); valueObject = new PropertyEditorValue(propertyMap);
QObject::connect(valueObject, SIGNAL(valueChanged(QString)), propertyMap, SIGNAL(valueChanged(QString))); QObject::connect(valueObject, SIGNAL(valueChanged(QString)), propertyMap, SIGNAL(valueChanged(QString)));
@@ -125,7 +133,7 @@ void PropertyEditor::NodeType::setValue(const QmlObjectNode & /*fxObjectNode*/,
{ {
QString propertyName = name; QString propertyName = name;
propertyName.replace(QLatin1Char('.'), QLatin1Char('_')); propertyName.replace(QLatin1Char('.'), QLatin1Char('_'));
PropertyEditorValue *propertyValue = qobject_cast<PropertyEditorValue*>(QmlMetaType::toQObject(m_backendValuesPropertyMap.value(propertyName))); PropertyEditorValue *propertyValue = qobject_cast<PropertyEditorValue*>(QDeclarativeMetaType::toQObject(m_backendValuesPropertyMap.value(propertyName)));
if (propertyValue) if (propertyValue)
propertyValue->setValue(value); propertyValue->setValue(value);
} }
@@ -135,14 +143,14 @@ void PropertyEditor::NodeType::setup(const QmlObjectNode &fxObjectNode, const QS
if (!fxObjectNode.isValid()) if (!fxObjectNode.isValid())
return; return;
QmlContext *ctxt = m_view->rootContext(); QDeclarativeContext *ctxt = m_view->rootContext();
if (fxObjectNode.isValid()) { if (fxObjectNode.isValid()) {
foreach (const QString &propertyName, fxObjectNode.modelNode().metaInfo().properties(true).keys()) foreach (const QString &propertyName, fxObjectNode.modelNode().metaInfo().properties(true).keys())
createPropertyEditorValue(fxObjectNode, propertyName, fxObjectNode.instanceValue(propertyName), &m_backendValuesPropertyMap, propertyEditor); createPropertyEditorValue(fxObjectNode, propertyName, fxObjectNode.instanceValue(propertyName), &m_backendValuesPropertyMap, propertyEditor);
// className // className
PropertyEditorValue *valueObject = qobject_cast<PropertyEditorValue*>(QmlMetaType::toQObject(m_backendValuesPropertyMap.value("className"))); PropertyEditorValue *valueObject = qobject_cast<PropertyEditorValue*>(QDeclarativeMetaType::toQObject(m_backendValuesPropertyMap.value("className")));
if (!valueObject) if (!valueObject)
valueObject = new PropertyEditorValue(&m_backendValuesPropertyMap); valueObject = new PropertyEditorValue(&m_backendValuesPropertyMap);
valueObject->setName("className"); valueObject->setName("className");
@@ -152,7 +160,7 @@ void PropertyEditor::NodeType::setup(const QmlObjectNode &fxObjectNode, const QS
m_backendValuesPropertyMap.insert("className", QVariant::fromValue(valueObject)); m_backendValuesPropertyMap.insert("className", QVariant::fromValue(valueObject));
// id // id
valueObject = qobject_cast<PropertyEditorValue*>(QmlMetaType::toQObject(m_backendValuesPropertyMap.value("id"))); valueObject = qobject_cast<PropertyEditorValue*>(QDeclarativeMetaType::toQObject(m_backendValuesPropertyMap.value("id")));
if (!valueObject) if (!valueObject)
valueObject = new PropertyEditorValue(&m_backendValuesPropertyMap); valueObject = new PropertyEditorValue(&m_backendValuesPropertyMap);
valueObject->setName("id"); valueObject->setName("id");
@@ -178,14 +186,14 @@ void PropertyEditor::NodeType::setup(const QmlObjectNode &fxObjectNode, const QS
void PropertyEditor::NodeType::initialSetup(const QString &typeName, const QUrl &qmlSpecificsFile, PropertyEditor *propertyEditor) void PropertyEditor::NodeType::initialSetup(const QString &typeName, const QUrl &qmlSpecificsFile, PropertyEditor *propertyEditor)
{ {
QmlContext *ctxt = m_view->rootContext(); QDeclarativeContext *ctxt = m_view->rootContext();
NodeMetaInfo metaInfo = propertyEditor->model()->metaInfo().nodeMetaInfo(typeName, 4, 6); NodeMetaInfo metaInfo = propertyEditor->model()->metaInfo().nodeMetaInfo(typeName, 4, 6);
foreach (const QString &propertyName, metaInfo.properties(true).keys()) foreach (const QString &propertyName, metaInfo.properties(true).keys())
setupPropertyEditorValue(propertyName, &m_backendValuesPropertyMap, propertyEditor); setupPropertyEditorValue(propertyName, &m_backendValuesPropertyMap, propertyEditor);
PropertyEditorValue *valueObject = qobject_cast<PropertyEditorValue*>(QmlMetaType::toQObject(m_backendValuesPropertyMap.value("className"))); PropertyEditorValue *valueObject = qobject_cast<PropertyEditorValue*>(QDeclarativeMetaType::toQObject(m_backendValuesPropertyMap.value("className")));
if (!valueObject) if (!valueObject)
valueObject = new PropertyEditorValue(&m_backendValuesPropertyMap); valueObject = new PropertyEditorValue(&m_backendValuesPropertyMap);
valueObject->setName("className"); valueObject->setName("className");
@@ -195,7 +203,7 @@ void PropertyEditor::NodeType::initialSetup(const QString &typeName, const QUrl
m_backendValuesPropertyMap.insert("className", QVariant::fromValue(valueObject)); m_backendValuesPropertyMap.insert("className", QVariant::fromValue(valueObject));
// id // id
valueObject = qobject_cast<PropertyEditorValue*>(QmlMetaType::toQObject(m_backendValuesPropertyMap.value("id"))); valueObject = qobject_cast<PropertyEditorValue*>(QDeclarativeMetaType::toQObject(m_backendValuesPropertyMap.value("id")));
if (!valueObject) if (!valueObject)
valueObject = new PropertyEditorValue(&m_backendValuesPropertyMap); valueObject = new PropertyEditorValue(&m_backendValuesPropertyMap);
valueObject->setName("id"); valueObject->setName("id");
@@ -228,6 +236,21 @@ PropertyEditor::PropertyEditor(QWidget *parent) :
QString styleSheet = QLatin1String(file.readAll()); QString styleSheet = QLatin1String(file.readAll());
m_stackedWidget->setStyleSheet(styleSheet); m_stackedWidget->setStyleSheet(styleSheet);
m_stackedWidget->setMinimumWidth(360); m_stackedWidget->setMinimumWidth(360);
static bool declarativeTypesRegistered = false;
if (!declarativeTypesRegistered) {
declarativeTypesRegistered = true;
BasicWidgets::registerDeclarativeTypes();
BasicLayouts::registerDeclarativeTypes();
ResetWidget::registerDeclarativeType();
QLayoutObject::registerDeclarativeType();
ColorWidget::registerDeclarativeTypes();
BehaviorDialog::registerDeclarativeType();
QProxyLayoutItem::registerDeclarativeTypes();
PropertyEditorValue::registerDeclarativeTypes();
FontWidget::registerDeclarativeTypes();
SiblingComboBox::registerDeclarativeTypes();
}
} }
PropertyEditor::~PropertyEditor() PropertyEditor::~PropertyEditor()
@@ -246,20 +269,23 @@ void PropertyEditor::setupPane(const QString &typeName)
NodeType *type = m_typeHash.value(qmlFile.toString()); NodeType *type = m_typeHash.value(qmlFile.toString());
if (!type) { if (!type) {
type = new NodeType(qmlFile, this); type = new NodeType(this);
QmlContext *ctxt = type->m_view->rootContext(); QDeclarativeContext *ctxt = type->m_view->rootContext();
ctxt->setContextProperty("finishedNotify", QVariant(false) ); ctxt->setContextProperty("finishedNotify", QVariant(false) );
type->initialSetup(typeName, qmlSpecificsFile, this); type->initialSetup(typeName, qmlSpecificsFile, this);
type->m_view->execute(); type->m_view->setSource(qmlFile);
ctxt->setContextProperty("finishedNotify", QVariant(true) ); ctxt->setContextProperty("finishedNotify", QVariant(true) );
m_stackedWidget->addWidget(type->m_view); m_stackedWidget->addWidget(type->m_view);
m_typeHash.insert(qmlFile.toString(), type); m_typeHash.insert(qmlFile.toString(), type);
} else { } else {
QmlContext *ctxt = type->m_view->rootContext(); QDeclarativeContext *ctxt = type->m_view->rootContext();
ctxt->setContextProperty("finishedNotify", QVariant(false) ); ctxt->setContextProperty("finishedNotify", QVariant(false) );
type->initialSetup(typeName, qmlSpecificsFile, this);
type->initialSetup(typeName, qmlSpecificsFile, this);
ctxt->setContextProperty("finishedNotify", QVariant(true) );
} }
QApplication::processEvents(); QApplication::processEvents();
} }
@@ -279,7 +305,7 @@ void PropertyEditor::changeValue(const QString &propertyName)
return; return;
if (propertyName == "id") { if (propertyName == "id") {
PropertyEditorValue *value = qobject_cast<PropertyEditorValue*>(QmlMetaType::toQObject(m_currentType->m_backendValuesPropertyMap.value(propertyName))); PropertyEditorValue *value = qobject_cast<PropertyEditorValue*>(QDeclarativeMetaType::toQObject(m_currentType->m_backendValuesPropertyMap.value(propertyName)));
const QString newId = value->value().toString(); const QString newId = value->value().toString();
try { try {
@@ -297,7 +323,7 @@ void PropertyEditor::changeValue(const QString &propertyName)
//.replace(QLatin1Char('.'), QLatin1Char('_')) //.replace(QLatin1Char('.'), QLatin1Char('_'))
QString underscoreName(propertyName); QString underscoreName(propertyName);
underscoreName.replace(QLatin1Char('.'), QLatin1Char('_')); underscoreName.replace(QLatin1Char('.'), QLatin1Char('_'));
PropertyEditorValue *value = qobject_cast<PropertyEditorValue*>(QmlMetaType::toQObject(m_currentType->m_backendValuesPropertyMap.value(underscoreName))); PropertyEditorValue *value = qobject_cast<PropertyEditorValue*>(QDeclarativeMetaType::toQObject(m_currentType->m_backendValuesPropertyMap.value(underscoreName)));
if (value ==0) { if (value ==0) {
qWarning() << "PropertyEditor:" <<propertyName << " - value is null"; qWarning() << "PropertyEditor:" <<propertyName << " - value is null";
@@ -354,7 +380,7 @@ void PropertyEditor::changeExpression(const QString &name)
return; return;
QmlObjectNode fxObjectNode(m_selectedNode); QmlObjectNode fxObjectNode(m_selectedNode);
PropertyEditorValue *value = qobject_cast<PropertyEditorValue*>(QmlMetaType::toQObject(m_currentType->m_backendValuesPropertyMap.value(name))); PropertyEditorValue *value = qobject_cast<PropertyEditorValue*>(QDeclarativeMetaType::toQObject(m_currentType->m_backendValuesPropertyMap.value(name)));
try { try {
if (fxObjectNode.currentState().isBaseState()) { if (fxObjectNode.currentState().isBaseState()) {
fxObjectNode.modelNode().bindingProperty(name).setExpression(value->expression()); fxObjectNode.modelNode().bindingProperty(name).setExpression(value->expression());
@@ -442,7 +468,7 @@ void PropertyEditor::resetView()
NodeType *type = m_typeHash.value(qmlFile.toString()); NodeType *type = m_typeHash.value(qmlFile.toString());
if (!type) { if (!type) {
type = new NodeType(qmlFile, this); type = new NodeType(this);
m_stackedWidget->addWidget(type->m_view); m_stackedWidget->addWidget(type->m_view);
m_typeHash.insert(qmlFile.toString(), type); m_typeHash.insert(qmlFile.toString(), type);
@@ -454,15 +480,16 @@ void PropertyEditor::resetView()
} }
type->setup(fxObjectNode, currentState().name(), qmlSpecificsFile, this); type->setup(fxObjectNode, currentState().name(), qmlSpecificsFile, this);
QmlContext *ctxt = type->m_view->rootContext(); QDeclarativeContext *ctxt = type->m_view->rootContext();
ctxt->setContextProperty("finishedNotify", QVariant(false)); ctxt->setContextProperty("finishedNotify", QVariant(false));
type->m_view->execute(); type->m_view->setSource(qmlFile);
ctxt->setContextProperty("finishedNotify", QVariant(true));
} else { } else {
QmlObjectNode fxObjectNode; QmlObjectNode fxObjectNode;
if (m_selectedNode.isValid()) { if (m_selectedNode.isValid()) {
fxObjectNode = QmlObjectNode(m_selectedNode); fxObjectNode = QmlObjectNode(m_selectedNode);
} }
QmlContext *ctxt = type->m_view->rootContext(); QDeclarativeContext *ctxt = type->m_view->rootContext();
ctxt->setContextProperty("selectionChanged", QVariant(false)); ctxt->setContextProperty("selectionChanged", QVariant(false));
ctxt->setContextProperty("selectionChanged", QVariant(true)); ctxt->setContextProperty("selectionChanged", QVariant(true));
ctxt->setContextProperty("selectionChanged", QVariant(false)); ctxt->setContextProperty("selectionChanged", QVariant(false));
@@ -472,7 +499,7 @@ void PropertyEditor::resetView()
m_stackedWidget->setCurrentWidget(type->m_view); m_stackedWidget->setCurrentWidget(type->m_view);
QmlContext *ctxt = type->m_view->rootContext(); QDeclarativeContext *ctxt = type->m_view->rootContext();
ctxt->setContextProperty("finishedNotify", QVariant(true)); ctxt->setContextProperty("finishedNotify", QVariant(true));
ctxt->setContextProperty("selectionChanged", QVariant(false)); ctxt->setContextProperty("selectionChanged", QVariant(false));
ctxt->setContextProperty("selectionChanged", QVariant(true)); ctxt->setContextProperty("selectionChanged", QVariant(true));

View File

@@ -31,9 +31,9 @@
#define QmlPropertyView_h #define QmlPropertyView_h
#include <qmlmodelview.h> #include <qmlmodelview.h>
#include <QmlView> #include <QDeclarativeView>
#include <QHash> #include <QHash>
#include <QmlPropertyMap> #include <QDeclarativePropertyMap>
#include "qmlanchorbindingproxy.h" #include "qmlanchorbindingproxy.h"
@@ -50,16 +50,16 @@ class PropertyEditor: public QmlModelView
class NodeType { class NodeType {
public: public:
NodeType(const QUrl &qmlFile, PropertyEditor *propertyEditor); NodeType(PropertyEditor *propertyEditor);
~NodeType(); ~NodeType();
void setup(const QmlObjectNode &fxObjectNode, const QString &stateName, const QUrl &qmlSpecificsFile, PropertyEditor *propertyEditor); void setup(const QmlObjectNode &fxObjectNode, const QString &stateName, const QUrl &qmlSpecificsFile, PropertyEditor *propertyEditor);
void initialSetup(const QString &typeName, const QUrl &qmlSpecificsFile, PropertyEditor *propertyEditor); void initialSetup(const QString &typeName, const QUrl &qmlSpecificsFile, PropertyEditor *propertyEditor);
void setValue(const QmlObjectNode &fxObjectNode, const QString &name, const QVariant &value); void setValue(const QmlObjectNode &fxObjectNode, const QString &name, const QVariant &value);
QmlView *m_view; QDeclarativeView *m_view;
Internal::QmlAnchorBindingProxy m_backendAnchorBinding; Internal::QmlAnchorBindingProxy m_backendAnchorBinding;
QmlPropertyMap m_backendValuesPropertyMap; QDeclarativePropertyMap m_backendValuesPropertyMap;
}; };
public: public:

View File

@@ -38,11 +38,6 @@
#include <nodeproperty.h> #include <nodeproperty.h>
#include <qmlobjectnode.h> #include <qmlobjectnode.h>
QML_DEFINE_TYPE(Bauhaus,1,0,PropertyEditorValue,PropertyEditorValue)
QML_DEFINE_TYPE(Bauhaus,1,0,PropertyEditorNodeWrapper,PropertyEditorNodeWrapper)
QML_DEFINE_TYPE(Bauhaus,1,0,QmlPropertyMap,QmlPropertyMap)
//using namespace QmlDesigner; //using namespace QmlDesigner;
PropertyEditorValue::PropertyEditorValue(QObject *parent) PropertyEditorValue::PropertyEditorValue(QObject *parent)
@@ -209,6 +204,13 @@ void PropertyEditorValue::unlock()
//m_rewriterTransaction.commit(); //m_rewriterTransaction.commit();
} }
void PropertyEditorValue::registerDeclarativeTypes()
{
QML_REGISTER_TYPE(Bauhaus,1,0,PropertyEditorValue,PropertyEditorValue);
QML_REGISTER_TYPE(Bauhaus,1,0,PropertyEditorNodeWrapper,PropertyEditorNodeWrapper);
QML_REGISTER_TYPE(Bauhaus,1,0,QDeclarativePropertyMap,QDeclarativePropertyMap);
}
PropertyEditorNodeWrapper::PropertyEditorNodeWrapper(PropertyEditorValue* parent) : m_valuesPropertyMap(this) PropertyEditorNodeWrapper::PropertyEditorNodeWrapper(PropertyEditorValue* parent) : m_valuesPropertyMap(this)
{ {
m_editorValue = parent; m_editorValue = parent;
@@ -246,7 +248,7 @@ QString PropertyEditorNodeWrapper::propertyName() const
return m_editorValue->name(); return m_editorValue->name();
} }
QmlPropertyMap* PropertyEditorNodeWrapper::properties() QDeclarativePropertyMap* PropertyEditorNodeWrapper::properties()
{ {
return &m_valuesPropertyMap; return &m_valuesPropertyMap;
} }
@@ -344,3 +346,4 @@ void PropertyEditorNodeWrapper::update()
emit typeChanged(); emit typeChanged();
} }
} }

View File

@@ -31,8 +31,8 @@
#define PROPERTYEDITORVALUE_H #define PROPERTYEDITORVALUE_H
#include <QObject> #include <QObject>
#include <QmlPropertyMap> #include <QDeclarativePropertyMap>
#include <qml.h> #include <qdeclarative.h>
#include <modelnode.h> #include <modelnode.h>
#include <qmlitemnode.h> #include <qmlitemnode.h>
#include <rewritertransaction.h> #include <rewritertransaction.h>
@@ -46,7 +46,7 @@ class PropertyEditorNodeWrapper : public QObject {
Q_OBJECT Q_OBJECT
Q_PROPERTY(bool exists READ exists NOTIFY existsChanged) Q_PROPERTY(bool exists READ exists NOTIFY existsChanged)
Q_PROPERTY(QmlPropertyMap* properties READ properties NOTIFY propertiesChanged) Q_PROPERTY(QDeclarativePropertyMap* properties READ properties NOTIFY propertiesChanged)
Q_PROPERTY(QString type READ type NOTIFY typeChanged) Q_PROPERTY(QString type READ type NOTIFY typeChanged)
public: public:
@@ -54,7 +54,7 @@ public:
PropertyEditorNodeWrapper(PropertyEditorValue* parent); PropertyEditorNodeWrapper(PropertyEditorValue* parent);
bool exists(); bool exists();
QString type(); QString type();
QmlPropertyMap* properties(); QDeclarativePropertyMap* properties();
ModelNode parentModelNode() const; ModelNode parentModelNode() const;
QString propertyName() const; QString propertyName() const;
@@ -73,7 +73,7 @@ private:
void setup(); void setup();
QmlDesigner::ModelNode m_modelNode; QmlDesigner::ModelNode m_modelNode;
QmlPropertyMap m_valuesPropertyMap; QDeclarativePropertyMap m_valuesPropertyMap;
PropertyEditorValue* m_editorValue; PropertyEditorValue* m_editorValue;
}; };
@@ -117,6 +117,8 @@ public:
PropertyEditorNodeWrapper* complexNode(); PropertyEditorNodeWrapper* complexNode();
static void registerDeclarativeTypes();
public slots: public slots:
void resetValue(); void resetValue();
void lock(); void lock();
@@ -148,7 +150,7 @@ private: //variables
QML_DECLARE_TYPE(PropertyEditorValue); QML_DECLARE_TYPE(PropertyEditorValue);
QML_DECLARE_TYPE(PropertyEditorNodeWrapper); QML_DECLARE_TYPE(PropertyEditorNodeWrapper);
QML_DECLARE_TYPE(QmlPropertyMap); QML_DECLARE_TYPE(QDeclarativePropertyMap);
#endif // PROPERTYEDITORVALUE_H #endif // PROPERTYEDITORVALUE_H

View File

@@ -31,7 +31,11 @@
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
QML_DEFINE_TYPE(Qt,4,6,QLayoutObject,QLayoutObject);
void QLayoutObject::registerDeclarativeType()
{
QML_REGISTER_TYPE(Bauhaus,1,0,QLayoutObject,QLayoutObject);
}
QLayoutObject::QLayoutObject(QObject *parent) QLayoutObject::QLayoutObject(QObject *parent)
: QObject(parent) : QObject(parent)

View File

@@ -32,7 +32,7 @@
#include <QObject> #include <QObject>
#include <QLayout> #include <QLayout>
#include <qml.h> #include <qdeclarative.h>
QT_BEGIN_HEADER QT_BEGIN_HEADER
@@ -47,6 +47,8 @@ public:
QLayoutObject(QObject *parent = 0); QLayoutObject(QObject *parent = 0);
virtual QLayout *layout() const; virtual QLayout *layout() const;
static void registerDeclarativeType();
}; };
QT_END_NAMESPACE QT_END_NAMESPACE

View File

@@ -32,8 +32,6 @@
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
QML_DEFINE_TYPE(Qt,4,6,LayoutItem,QProxyLayoutItem);
QProxyLayoutItem::QProxyLayoutItem(QGraphicsLayoutItem *i) QProxyLayoutItem::QProxyLayoutItem(QGraphicsLayoutItem *i)
: enabled(true), other(i) : enabled(true), other(i)
{ {
@@ -90,8 +88,6 @@ QSizeF QProxyLayoutItem::sizeHint(Qt::SizeHint which, const QSizeF &c) const
return rv; return rv;
} }
QML_DEFINE_TYPE(Qt,4,6,ProxyLayout,QProxyLayout);
QProxyLayout::QProxyLayout(QObject *parent) QProxyLayout::QProxyLayout(QObject *parent)
: QObject(parent), proxy(0) : QObject(parent), proxy(0)
{ {
@@ -162,4 +158,10 @@ QSizeF QProxyLayout::sizeHint(Qt::SizeHint which,
return QSizeF(); return QSizeF();
} }
void QProxyLayoutItem::registerDeclarativeTypes()
{
QML_REGISTER_TYPE(Bauhaus,1,0,LayoutItem,QProxyLayoutItem);
QML_REGISTER_TYPE(Bauhaus,1,0,ProxyLayout,QProxyLayout);
}
QT_END_NAMESPACE QT_END_NAMESPACE

View File

@@ -30,7 +30,7 @@
#ifndef QPROXYLAYOUTITEM_H #ifndef QPROXYLAYOUTITEM_H
#define QPROXYLAYOUTITEM_H #define QPROXYLAYOUTITEM_H
#include <qml.h> #include <qdeclarative.h>
#include <QGraphicsLayout> #include <QGraphicsLayout>
QT_BEGIN_HEADER QT_BEGIN_HEADER
@@ -78,6 +78,9 @@ public:
void setItem(QGraphicsLayoutItem *); void setItem(QGraphicsLayoutItem *);
void setEnabled(bool); void setEnabled(bool);
static void registerDeclarativeTypes();
protected: protected:
virtual QSizeF sizeHint(Qt::SizeHint, const QSizeF &) const; virtual QSizeF sizeHint(Qt::SizeHint, const QSizeF &) const;

View File

@@ -28,7 +28,7 @@
**************************************************************************/ **************************************************************************/
#include "qml.h" #include "qdeclarative.h"
#include "resetwidget.h" #include "resetwidget.h"
#include <QVBoxLayout> #include <QVBoxLayout>
#include <QHBoxLayout> #include <QHBoxLayout>
@@ -41,7 +41,6 @@
#include <QApplication> #include <QApplication>
QML_DECLARE_TYPE(QmlDesigner::ResetWidget); QML_DECLARE_TYPE(QmlDesigner::ResetWidget);
QML_DEFINE_TYPE(Bauhaus, 1, 0, ResetWidget, QmlDesigner::ResetWidget);
namespace QmlDesigner { namespace QmlDesigner {
@@ -58,6 +57,11 @@ ResetWidget::ResetWidget(QWidget *parent) : QGroupBox(parent), m_backendObject(0
setLayout(m_vlayout); setLayout(m_vlayout);
} }
void ResetWidget::registerDeclarativeType()
{
QML_REGISTER_TYPE(Bauhaus, 1, 0, ResetWidget, QmlDesigner::ResetWidget);
}
void ResetWidget::resetView() void ResetWidget::resetView()
{ {
m_tableWidget->clear(); m_tableWidget->clear();

View File

@@ -64,6 +64,8 @@ public:
setupView(); setupView();
} }
static void registerDeclarativeType();
public slots: public slots:
void buttonPressed(const QString &name); void buttonPressed(const QString &name);

View File

@@ -28,9 +28,7 @@
**************************************************************************/ **************************************************************************/
#include "siblingcombobox.h" #include "siblingcombobox.h"
#include <qml.h> #include <QDeclarativeComponent>
QML_DEFINE_TYPE(Bauhaus,1,0,SiblingComboBox,QmlDesigner::SiblingComboBox)
namespace QmlDesigner { namespace QmlDesigner {
@@ -44,6 +42,11 @@ void SiblingComboBox::setItemNode(const QVariant &itemNode)
emit itemNodeChanged(); emit itemNodeChanged();
} }
void SiblingComboBox::registerDeclarativeTypes()
{
QML_REGISTER_TYPE(Bauhaus,1,0,SiblingComboBox,SiblingComboBox);
}
void SiblingComboBox::setSelectedItemNode(const QVariant &itemNode) void SiblingComboBox::setSelectedItemNode(const QVariant &itemNode)
{ {
if (itemNode.value<ModelNode>() == m_selectedItemNode) if (itemNode.value<ModelNode>() == m_selectedItemNode)

View File

@@ -51,6 +51,8 @@ public:
void setItemNode(const QVariant &itemNode); void setItemNode(const QVariant &itemNode);
void setSelectedItemNode(const QVariant &itemNode); void setSelectedItemNode(const QVariant &itemNode);
static void registerDeclarativeTypes();
signals: signals:
void selectedItemNodeChanged(); void selectedItemNodeChanged();
void itemNodeChanged(); void itemNodeChanged();

View File

@@ -43,10 +43,10 @@
#include <QtGui/QPushButton> #include <QtGui/QPushButton>
#include <QtGui/QMessageBox> #include <QtGui/QMessageBox>
#include <QtDeclarative/QmlView> #include <QtDeclarative/QDeclarativeView>
#include <QtDeclarative/QmlContext> #include <QtDeclarative/QDeclarativeContext>
#include <QtDeclarative/QmlEngine> #include <QtDeclarative/QDeclarativeEngine>
#include <QtDeclarative/QmlGraphicsItem> #include <QtDeclarative/QDeclarativeItem>
enum { enum {
debug = false debug = false
@@ -77,7 +77,7 @@ private slots:
private: private:
StatesEditorWidget *m_q; StatesEditorWidget *m_q;
QWeakPointer<Model> model; QWeakPointer<Model> model;
QWeakPointer<QmlView> listView; QWeakPointer<QDeclarativeView> listView;
QWeakPointer<Internal::StatesEditorModel> statesEditorModel; QWeakPointer<Internal::StatesEditorModel> statesEditorModel;
QWeakPointer<Internal::StatesEditorView> statesEditorView; QWeakPointer<Internal::StatesEditorView> statesEditorView;
friend class QmlDesigner::StatesEditorWidget; friend class QmlDesigner::StatesEditorWidget;
@@ -149,7 +149,7 @@ StatesEditorWidget::StatesEditorWidget(QWidget *parent):
m_d(new Internal::StatesEditorWidgetPrivate(this)) m_d(new Internal::StatesEditorWidgetPrivate(this))
{ {
m_d->statesEditorModel = new Internal::StatesEditorModel(this); m_d->statesEditorModel = new Internal::StatesEditorModel(this);
m_d->listView = new QmlView(this); m_d->listView = new QDeclarativeView(this);
m_d->listView->setAcceptDrops(false); m_d->listView->setAcceptDrops(false);
@@ -158,13 +158,11 @@ StatesEditorWidget::StatesEditorWidget(QWidget *parent):
layout->setSpacing(0); layout->setSpacing(0);
layout->addWidget(m_d->listView.data()); layout->addWidget(m_d->listView.data());
m_d->listView->setSource(QUrl("qrc:/stateseditor/stateslist.qml")); m_d->listView->setResizeMode(QDeclarativeView::SizeRootObjectToView);
m_d->listView->setResizeMode(QmlView::SizeRootObjectToView);
m_d->listView->rootContext()->setContextProperty(QLatin1String("statesEditorModel"), m_d->statesEditorModel.data()); m_d->listView->rootContext()->setContextProperty(QLatin1String("statesEditorModel"), m_d->statesEditorModel.data());
m_d->listView->execute(); m_d->listView->setSource(QUrl("qrc:/stateseditor/stateslist.qml"));
if (!m_d->listView->rootObject()) if (!m_d->listView->rootObject())
throw InvalidQmlSourceException(__LINE__, __FUNCTION__, __FILE__); throw InvalidQmlSourceException(__LINE__, __FUNCTION__, __FILE__);

View File

@@ -37,7 +37,7 @@
#include <QString> #include <QString>
#include <QIcon> #include <QIcon>
#include "propertycontainer.h" #include "propertycontainer.h"
#include <qml.h> #include <qdeclarative.h>
namespace QmlDesigner { namespace QmlDesigner {

View File

@@ -34,7 +34,7 @@
#include <QtCore/QObject> #include <QtCore/QObject>
#include <QtCore/QMimeData> #include <QtCore/QMimeData>
#include <QtCore/QPair> #include <QtCore/QPair>
#include <QtDeclarative/QmlError> #include <QtDeclarative/QDeclarativeError>
#include <import.h> #include <import.h>

View File

@@ -40,7 +40,7 @@
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
class QPainter; class QPainter;
class QStyleOptionGraphicsItem; class QStyleOptionGraphicsItem;
class QmlContext; class QDeclarativeContext;
class QGraphicsItem; class QGraphicsItem;
class QGraphicsTransform; class QGraphicsTransform;
QT_END_NAMESPACE QT_END_NAMESPACE
@@ -92,7 +92,7 @@ public:
bool isGraphicsWidget() const; bool isGraphicsWidget() const;
bool isProxyWidget() const; bool isProxyWidget() const;
bool isWidget() const; bool isWidget() const;
bool isQmlView() const; bool isQDeclarativeView() const;
bool isGraphicsObject() const; bool isGraphicsObject() const;
bool isTransition() const; bool isTransition() const;
@@ -137,11 +137,13 @@ public:
void deactivateState(); void deactivateState();
void refreshState(); void refreshState();
static void registerDeclarativeTypes();
private: // functions private: // functions
NodeInstance(const QSharedPointer<Internal::ObjectNodeInstance> &abstractInstance); NodeInstance(const QSharedPointer<Internal::ObjectNodeInstance> &abstractInstance);
static NodeInstance create(NodeInstanceView *nodeInstanceView, const ModelNode &node, QObject *objectToBeWrapped); static NodeInstance create(NodeInstanceView *nodeInstanceView, const ModelNode &node, QObject *objectToBeWrapped);
static NodeInstance create(NodeInstanceView *nodeInstanceView, const NodeMetaInfo &metaInfo, QmlContext *context); static NodeInstance create(NodeInstanceView *nodeInstanceView, const NodeMetaInfo &metaInfo, QDeclarativeContext *context);
void setDeleteHeldInstance(bool deleteInstance); void setDeleteHeldInstance(bool deleteInstance);
void reparent(const NodeInstance &oldParentInstance, const QString &oldParentProperty, const NodeInstance &newParentInstance, const QString &newParentProperty); void reparent(const NodeInstance &oldParentInstance, const QString &oldParentProperty, const NodeInstance &newParentInstance, const QString &newParentProperty);
@@ -150,7 +152,7 @@ private: // functions
void setId(const QString &id); void setId(const QString &id);
static QSharedPointer<Internal::ObjectNodeInstance> createInstance(const NodeMetaInfo &metaInfo, QmlContext *context, QObject *objectToBeWrapped); static QSharedPointer<Internal::ObjectNodeInstance> createInstance(const NodeMetaInfo &metaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped);
QSharedPointer<Internal::QmlGraphicsItemNodeInstance> qmlGraphicsItemNodeInstance() const; QSharedPointer<Internal::QmlGraphicsItemNodeInstance> qmlGraphicsItemNodeInstance() const;
void paintUpdate(); void paintUpdate();

View File

@@ -42,7 +42,7 @@
#include <nodeinstance.h> #include <nodeinstance.h>
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
class QmlEngine; class QDeclarativeEngine;
class QGraphicsScene; class QGraphicsScene;
class QGraphicsView; class QGraphicsView;
QT_END_NAMESPACE QT_END_NAMESPACE
@@ -134,7 +134,7 @@ private: // functions
void insertInstanceNodeRelationship(const ModelNode &node, const NodeInstance &instance); void insertInstanceNodeRelationship(const ModelNode &node, const NodeInstance &instance);
void removeInstanceNodeRelationship(const ModelNode &node); void removeInstanceNodeRelationship(const ModelNode &node);
QmlEngine *engine() const; QDeclarativeEngine *engine() const;
Internal::ChildrenChangeEventFilter *childrenChangeEventFilter(); Internal::ChildrenChangeEventFilter *childrenChangeEventFilter();
void removeInstanceAndSubInstances(const ModelNode &node); void removeInstanceAndSubInstances(const ModelNode &node);
@@ -144,7 +144,7 @@ private: //variables
QHash<ModelNode, NodeInstance> m_nodeInstanceHash; QHash<ModelNode, NodeInstance> m_nodeInstanceHash;
QHash<QObject*, NodeInstance> m_objectInstanceHash; // This is purely internal. Might contain dangling pointers! QHash<QObject*, NodeInstance> m_objectInstanceHash; // This is purely internal. Might contain dangling pointers!
QWeakPointer<QmlEngine> m_engine; QWeakPointer<QDeclarativeEngine> m_engine;
QWeakPointer<Internal::ChildrenChangeEventFilter> m_childrenChangeEventFilter; QWeakPointer<Internal::ChildrenChangeEventFilter> m_childrenChangeEventFilter;
QWeakPointer<QmlModelView> m_qmlModelView; QWeakPointer<QmlModelView> m_qmlModelView;

View File

@@ -39,7 +39,7 @@
#include "invalidmetainfoexception.h" #include "invalidmetainfoexception.h"
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
class QmlContext; class QDeclarativeContext;
QT_END_NAMESPACE QT_END_NAMESPACE
namespace QmlDesigner { namespace QmlDesigner {
@@ -77,7 +77,7 @@ public:
bool isValid() const; bool isValid() const;
MetaInfo metaInfo() const; MetaInfo metaInfo() const;
QObject *createInstance(QmlContext *parentContext) const; QObject *createInstance(QDeclarativeContext *parentContext) const;
PropertyMetaInfo property(const QString &propertyName, bool resolveDotSyntax = false) const; PropertyMetaInfo property(const QString &propertyName, bool resolveDotSyntax = false) const;

View File

@@ -77,7 +77,7 @@ public:
public: public:
Error(); Error();
Error(const QmlError &qmlError); Error(const QDeclarativeError &qmlError);
Error(Exception *exception); Error(Exception *exception);
Type type() const Type type() const

View File

@@ -37,7 +37,7 @@
#include <QObject> #include <QObject>
#include <QString> #include <QString>
#include <QUrl> #include <QUrl>
#include <private/qmldom_p.h> #include <private/qdeclarativedom_p.h>
namespace QmlDesigner { namespace QmlDesigner {
@@ -49,7 +49,7 @@ public:
~SubComponentManager(); ~SubComponentManager();
void update(const QUrl &fileUrl, const QByteArray &data); void update(const QUrl &fileUrl, const QByteArray &data);
void update(const QUrl &fileUrl, const QList<QmlDomImport> &imports); void update(const QUrl &fileUrl, const QList<QDeclarativeDomImport> &imports);
QStringList qmlFiles() const; QStringList qmlFiles() const;
QStringList directories() const; QStringList directories() const;

View File

@@ -1,6 +1,6 @@
#include "behaviornodeinstance.h" #include "behaviornodeinstance.h"
#include <private/qmlbehavior_p.h> #include <private/qdeclarativebehavior_p.h>
#include "invalidnodeinstanceexception.h" #include "invalidnodeinstanceexception.h"
@@ -13,7 +13,7 @@ BehaviorNodeInstance::BehaviorNodeInstance(QObject *object)
{ {
} }
BehaviorNodeInstance::Pointer BehaviorNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, QmlContext *context, QObject *objectToBeWrapped) BehaviorNodeInstance::Pointer BehaviorNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped)
{ {
QObject *object = 0; QObject *object = 0;
if (objectToBeWrapped) if (objectToBeWrapped)
@@ -21,7 +21,7 @@ BehaviorNodeInstance::Pointer BehaviorNodeInstance::create(const NodeMetaInfo &n
else else
object = createObject(nodeMetaInfo, context); object = createObject(nodeMetaInfo, context);
QmlBehavior* behavior = qobject_cast<QmlBehavior*>(object); QDeclarativeBehavior* behavior = qobject_cast<QDeclarativeBehavior*>(object);
if (behavior == 0) if (behavior == 0)
throw InvalidNodeInstanceException(__LINE__, __FUNCTION__, __FILE__); throw InvalidNodeInstanceException(__LINE__, __FUNCTION__, __FILE__);

View File

@@ -14,7 +14,7 @@ public:
BehaviorNodeInstance(QObject *object); BehaviorNodeInstance(QObject *object);
static Pointer create(const NodeMetaInfo &metaInfo, QmlContext *context, QObject *objectToBeWrapped); static Pointer create(const NodeMetaInfo &metaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped);
void setPropertyVariant(const QString &name, const QVariant &value); void setPropertyVariant(const QString &name, const QVariant &value);
void setPropertyBinding(const QString &name, const QString &expression); void setPropertyBinding(const QString &name, const QString &expression);

View File

@@ -30,31 +30,31 @@
#include "componentnodeinstance.h" #include "componentnodeinstance.h"
#include <invalidnodeinstanceexception.h> #include <invalidnodeinstanceexception.h>
#include <QmlComponent> #include <QDeclarativeComponent>
#include <QmlContext> #include <QDeclarativeContext>
namespace QmlDesigner { namespace QmlDesigner {
namespace Internal { namespace Internal {
ComponentNodeInstance::ComponentNodeInstance(QmlComponent *component) ComponentNodeInstance::ComponentNodeInstance(QDeclarativeComponent *component)
: ObjectNodeInstance(component) : ObjectNodeInstance(component)
{ {
} }
QmlComponent *ComponentNodeInstance::component() const QDeclarativeComponent *ComponentNodeInstance::component() const
{ {
Q_ASSERT(qobject_cast<QmlComponent*>(object())); Q_ASSERT(qobject_cast<QDeclarativeComponent*>(object()));
return static_cast<QmlComponent*>(object()); return static_cast<QDeclarativeComponent*>(object());
} }
ComponentNodeInstance::Pointer ComponentNodeInstance::create(const NodeMetaInfo &/*metaInfo*/, QmlContext *context, QObject *objectToBeWrapped) ComponentNodeInstance::Pointer ComponentNodeInstance::create(const NodeMetaInfo &/*metaInfo*/, QDeclarativeContext *context, QObject *objectToBeWrapped)
{ {
QmlComponent *component = 0; QDeclarativeComponent *component = 0;
if (objectToBeWrapped) if (objectToBeWrapped)
component = qobject_cast<QmlComponent *>(objectToBeWrapped); component = qobject_cast<QDeclarativeComponent *>(objectToBeWrapped);
else else
component = new QmlComponent(context->engine()); component = new QDeclarativeComponent(context->engine());
if (component == 0) if (component == 0)
throw InvalidNodeInstanceException(__LINE__, __FUNCTION__, __FILE__); throw InvalidNodeInstanceException(__LINE__, __FUNCTION__, __FILE__);
@@ -91,7 +91,7 @@ void ComponentNodeInstance::setPropertyVariant(const QString &name, const QVaria
} }
if (component()->isError()) { if (component()->isError()) {
qDebug() << value; qDebug() << value;
foreach(const QmlError &error, component()->errors()) foreach(const QDeclarativeError &error, component()->errors())
qDebug() << error; qDebug() << error;
} }

View File

@@ -33,7 +33,7 @@
#include "objectnodeinstance.h" #include "objectnodeinstance.h"
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
class QmlComponent; class QDeclarativeComponent;
QT_END_NAMESPACE QT_END_NAMESPACE
namespace QmlDesigner { namespace QmlDesigner {
@@ -44,15 +44,15 @@ class ComponentNodeInstance : public ObjectNodeInstance
public: public:
typedef QSharedPointer<ComponentNodeInstance> Pointer; typedef QSharedPointer<ComponentNodeInstance> Pointer;
typedef QWeakPointer<ComponentNodeInstance> WeakPointer; typedef QWeakPointer<ComponentNodeInstance> WeakPointer;
ComponentNodeInstance(QmlComponent *component); ComponentNodeInstance(QDeclarativeComponent *component);
static Pointer create(const NodeMetaInfo &metaInfo, QmlContext *context, QObject *objectToBeWrapped); static Pointer create(const NodeMetaInfo &metaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped);
void setPropertyVariant(const QString &name, const QVariant &value); void setPropertyVariant(const QString &name, const QVariant &value);
bool hasContent() const; bool hasContent() const;
private: //function private: //function
QmlComponent *component() const; QDeclarativeComponent *component() const;
}; };

View File

@@ -29,7 +29,7 @@
#include "dummynodeinstance.h" #include "dummynodeinstance.h"
#include <QmlMetaType> #include <private/qdeclarativemetatype_p.h>
#include <nodemetainfo.h> #include <nodemetainfo.h>
#include <invalidnodeinstanceexception.h> #include <invalidnodeinstanceexception.h>
@@ -43,7 +43,7 @@ DummyNodeInstance::DummyNodeInstance()
{ {
} }
DummyNodeInstance::Pointer DummyNodeInstance::create(const NodeMetaInfo & metaInfo, QmlContext *context) DummyNodeInstance::Pointer DummyNodeInstance::create(const NodeMetaInfo & metaInfo, QDeclarativeContext *context)
{ {
Q_UNUSED(context); Q_UNUSED(context);
qWarning() << "DummyNodeInstance created" << metaInfo.typeName(); qWarning() << "DummyNodeInstance created" << metaInfo.typeName();

View File

@@ -43,7 +43,7 @@ public:
typedef QSharedPointer<DummyNodeInstance> Pointer; typedef QSharedPointer<DummyNodeInstance> Pointer;
typedef QWeakPointer<DummyNodeInstance> WeakPointer; typedef QWeakPointer<DummyNodeInstance> WeakPointer;
static Pointer create(const NodeMetaInfo &metaInfo, QmlContext *context); static Pointer create(const NodeMetaInfo &metaInfo, QDeclarativeContext *context);
void paint(QPainter *painter) const; void paint(QPainter *painter) const;

View File

@@ -201,7 +201,7 @@ void GraphicsObjectNodeInstance::paint(QPainter *painter) const
painter->restore(); painter->restore();
} }
QPair<QGraphicsObject*, bool> GraphicsObjectNodeInstance::createGraphicsObject(const NodeMetaInfo &metaInfo, QmlContext *context) QPair<QGraphicsObject*, bool> GraphicsObjectNodeInstance::createGraphicsObject(const NodeMetaInfo &metaInfo, QDeclarativeContext *context)
{ {
QObject *object = ObjectNodeInstance::createObject(metaInfo, context); QObject *object = ObjectNodeInstance::createObject(metaInfo, context);
QGraphicsObject *graphicsObject = qobject_cast<QGraphicsObject*>(object); QGraphicsObject *graphicsObject = qobject_cast<QGraphicsObject*>(object);

View File

@@ -80,7 +80,7 @@ public:
protected: protected:
QGraphicsObject *graphicsObject() const; QGraphicsObject *graphicsObject() const;
void paintRecursively(QGraphicsItem *graphicsItem, QPainter *painter) const; void paintRecursively(QGraphicsItem *graphicsItem, QPainter *painter) const;
static QPair<QGraphicsObject*, bool> createGraphicsObject(const NodeMetaInfo &metaInfo, QmlContext *context); static QPair<QGraphicsObject*, bool> createGraphicsObject(const NodeMetaInfo &metaInfo, QDeclarativeContext *context);
private: // variables private: // variables
bool m_isVisible; bool m_isVisible;
bool m_hasContent; bool m_hasContent;

View File

@@ -29,7 +29,7 @@
#include "graphicsscenenodeinstance.h" #include "graphicsscenenodeinstance.h"
#include <QmlMetaType> #include <private/qdeclarativemetatype_p.h>
#include "graphicsviewnodeinstance.h" #include "graphicsviewnodeinstance.h"
@@ -48,7 +48,7 @@ GraphicsSceneNodeInstance::~GraphicsSceneNodeInstance()
{ {
} }
GraphicsSceneNodeInstance::Pointer GraphicsSceneNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, QmlContext *context, QObject *objectToBeWrapped) GraphicsSceneNodeInstance::Pointer GraphicsSceneNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped)
{ {
QObject *object = 0; QObject *object = 0;
if (objectToBeWrapped) if (objectToBeWrapped)

View File

@@ -45,7 +45,7 @@ public:
~GraphicsSceneNodeInstance(); ~GraphicsSceneNodeInstance();
static Pointer create(const NodeMetaInfo &metaInfo, QmlContext *context, QObject *objectToBeWrapped); static Pointer create(const NodeMetaInfo &metaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped);
void paint(QPainter *painter) const; void paint(QPainter *painter) const;

View File

@@ -29,8 +29,8 @@
#include "graphicsviewnodeinstance.h" #include "graphicsviewnodeinstance.h"
#include <QmlMetaType> #include <private/qdeclarativemetatype_p.h>
#include <QmlEngine> #include <QDeclarativeEngine>
#include <invalidnodeinstanceexception.h> #include <invalidnodeinstanceexception.h>
namespace QmlDesigner { namespace QmlDesigner {
@@ -43,7 +43,7 @@ GraphicsViewNodeInstance::GraphicsViewNodeInstance(QGraphicsView *view)
GraphicsViewNodeInstance::Pointer GraphicsViewNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, GraphicsViewNodeInstance::Pointer GraphicsViewNodeInstance::create(const NodeMetaInfo &nodeMetaInfo,
QmlContext *context, QDeclarativeContext *context,
QObject *objectToBeWrapped) QObject *objectToBeWrapped)
{ {
QObject *object = 0; QObject *object = 0;

View File

@@ -44,7 +44,7 @@ public:
typedef QSharedPointer<GraphicsViewNodeInstance> Pointer; typedef QSharedPointer<GraphicsViewNodeInstance> Pointer;
typedef QWeakPointer<GraphicsViewNodeInstance> WeakPointer; typedef QWeakPointer<GraphicsViewNodeInstance> WeakPointer;
static Pointer create(const NodeMetaInfo &metaInfo, QmlContext *context, QObject *objectToBeWrapped); static Pointer create(const NodeMetaInfo &metaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped);
void setScene(QGraphicsScene *scene); void setScene(QGraphicsScene *scene);

View File

@@ -32,7 +32,7 @@
#include "objectnodeinstance.h" #include "objectnodeinstance.h"
#include <QmlMetaType> #include <private/qdeclarativemetatype_p.h>
#include <invalidnodeinstanceexception.h> #include <invalidnodeinstanceexception.h>
#include <propertymetainfo.h> #include <propertymetainfo.h>
@@ -49,7 +49,7 @@ GraphicsWidgetNodeInstance::~GraphicsWidgetNodeInstance()
{ {
} }
GraphicsWidgetNodeInstance::Pointer GraphicsWidgetNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, QmlContext *context, QObject *objectToBeWrapped) GraphicsWidgetNodeInstance::Pointer GraphicsWidgetNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped)
{ {
QObject *object = 0; QObject *object = 0;
if (objectToBeWrapped) if (objectToBeWrapped)

View File

@@ -46,7 +46,7 @@ public:
~GraphicsWidgetNodeInstance(); ~GraphicsWidgetNodeInstance();
static Pointer create(const NodeMetaInfo &metaInfo, QmlContext *context, QObject *objectToBeWrapped); static Pointer create(const NodeMetaInfo &metaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped);
void paint(QPainter *painter) const; void paint(QPainter *painter) const;

View File

@@ -52,7 +52,7 @@
#include <QHash> #include <QHash>
#include <QSet> #include <QSet>
#include <QtDeclarative/QmlEngine> #include <QtDeclarative/QDeclarativeEngine>
/*! /*!
\class QmlDesigner::NodeInstance \class QmlDesigner::NodeInstance
@@ -123,19 +123,19 @@ void NodeInstance::paint(QPainter *painter) const
\brief Creates a new NodeInstace for this NodeMetaInfo \brief Creates a new NodeInstace for this NodeMetaInfo
\param metaInfo MetaInfo for which a Instance should be created \param metaInfo MetaInfo for which a Instance should be created
\param context QmlContext which should be used \param context QDeclarativeContext which should be used
\returns Internal Pointer of a NodeInstance \returns Internal Pointer of a NodeInstance
\see NodeMetaInfo \see NodeMetaInfo
*/ */
Internal::ObjectNodeInstance::Pointer NodeInstance::createInstance(const NodeMetaInfo &metaInfo, Internal::ObjectNodeInstance::Pointer NodeInstance::createInstance(const NodeMetaInfo &metaInfo,
QmlContext *context, QObject *objectToBeWrapped) QDeclarativeContext *context, QObject *objectToBeWrapped)
{ {
Internal::ObjectNodeInstance::Pointer instance; Internal::ObjectNodeInstance::Pointer instance;
if (metaInfo.isSubclassOf("Qt/QGraphicsView", 4, 6)) if (metaInfo.isSubclassOf("Qt/QGraphicsView", 4, 6))
instance = Internal::GraphicsViewNodeInstance::create(metaInfo, context, objectToBeWrapped); instance = Internal::GraphicsViewNodeInstance::create(metaInfo, context, objectToBeWrapped);
else if (metaInfo.isSubclassOf("Qt/QmlView", 4, 6)) else if (metaInfo.isSubclassOf("Qt/QDeclarativeView", 4, 6))
instance = Internal::QmlViewNodeInstance::create(metaInfo, context, objectToBeWrapped); instance = Internal::QDeclarativeViewNodeInstance::create(metaInfo, context, objectToBeWrapped);
else if (metaInfo.isSubclassOf("Qt/QGraphicsWidget", 4, 6)) else if (metaInfo.isSubclassOf("Qt/QGraphicsWidget", 4, 6))
instance = Internal::GraphicsWidgetNodeInstance::create(metaInfo, context, objectToBeWrapped); instance = Internal::GraphicsWidgetNodeInstance::create(metaInfo, context, objectToBeWrapped);
else if (metaInfo.isSubclassOf("Qt/Item", 4, 6)) else if (metaInfo.isSubclassOf("Qt/Item", 4, 6))
@@ -175,7 +175,7 @@ NodeInstance NodeInstance::create(NodeInstanceView *nodeInstanceView, const Mode
// for all items. However, this is a hack ... ideally we should // for all items. However, this is a hack ... ideally we should
// rebuild the same context hierarchy as the qml compiler does // rebuild the same context hierarchy as the qml compiler does
QmlContext *context = nodeInstanceView->engine()->rootContext(); QDeclarativeContext *context = nodeInstanceView->engine()->rootContext();
NodeInstance instance(createInstance(node.metaInfo(), context, objectToBeWrapped)); NodeInstance instance(createInstance(node.metaInfo(), context, objectToBeWrapped));
@@ -197,7 +197,7 @@ NodeInstance NodeInstance::create(NodeInstanceView *nodeInstanceView, const Mode
return instance; return instance;
} }
NodeInstance NodeInstance::create(NodeInstanceView *nodeInstanceView, const NodeMetaInfo &metaInfo, QmlContext *context) NodeInstance NodeInstance::create(NodeInstanceView *nodeInstanceView, const NodeMetaInfo &metaInfo, QDeclarativeContext *context)
{ {
NodeInstance instance(createInstance(metaInfo, context, 0)); NodeInstance instance(createInstance(metaInfo, context, 0));
instance.m_nodeInstance->setNodeInstanceView(nodeInstanceView); instance.m_nodeInstance->setNodeInstanceView(nodeInstanceView);
@@ -265,8 +265,8 @@ bool NodeInstance::hasParent() const
} }
/*! /*!
\brief Returns if the NodeInstance is a QmlGraphicsItem. \brief Returns if the NodeInstance is a QDeclarativeItem.
\returns true if this NodeInstance is a QmlGraphicsItem \returns true if this NodeInstance is a QDeclarativeItem
*/ */
bool NodeInstance::isQmlGraphicsItem() const bool NodeInstance::isQmlGraphicsItem() const
{ {
@@ -319,12 +319,12 @@ bool NodeInstance::isWidget() const
} }
/*! /*!
\brief Returns if the NodeInstance is a QmlView. \brief Returns if the NodeInstance is a QDeclarativeView.
\returns true if this NodeInstance is a QmlView \returns true if this NodeInstance is a QDeclarativeView
*/ */
bool NodeInstance::isQmlView() const bool NodeInstance::isQDeclarativeView() const
{ {
return m_nodeInstance->isQmlView(); return m_nodeInstance->isQDeclarativeView();
} }
bool NodeInstance::isGraphicsObject() const bool NodeInstance::isGraphicsObject() const
@@ -610,4 +610,13 @@ void NodeInstance::refreshState()
{ {
m_nodeInstance->refreshState(); m_nodeInstance->refreshState();
} }
/*!
Makes types used in node instances known to the Qml engine. To be called once at initialization time.
*/
void NodeInstance::registerDeclarativeTypes()
{
QML_REGISTER_NOCREATE_TYPE(QmlDesigner::Internal::QmlPropertyChangesObject);
} }
} // namespace QmlDesigner

View File

@@ -8,14 +8,14 @@ namespace QmlDesigner {
namespace Internal { namespace Internal {
NodeInstanceMetaObject::NodeInstanceMetaObject(const ObjectNodeInstance::Pointer &nodeInstance) NodeInstanceMetaObject::NodeInstanceMetaObject(const ObjectNodeInstance::Pointer &nodeInstance)
: QmlOpenMetaObject(nodeInstance->object()), : QDeclarativeOpenMetaObject(nodeInstance->object()),
m_nodeInstance(nodeInstance), m_nodeInstance(nodeInstance),
m_context(nodeInstance->modelNode().isRootNode() ? nodeInstance->context() : 0) m_context(nodeInstance->modelNode().isRootNode() ? nodeInstance->context() : 0)
{ {
} }
NodeInstanceMetaObject::NodeInstanceMetaObject(const ObjectNodeInstancePointer &nodeInstance, QObject *object, const QString &prefix) NodeInstanceMetaObject::NodeInstanceMetaObject(const ObjectNodeInstancePointer &nodeInstance, QObject *object, const QString &prefix)
: QmlOpenMetaObject(object), : QDeclarativeOpenMetaObject(object),
m_nodeInstance(nodeInstance), m_nodeInstance(nodeInstance),
m_prefix(prefix) m_prefix(prefix)
{ {

View File

@@ -1,8 +1,8 @@
#ifndef NODEINSTANCEMETAOBJECT_H #ifndef NODEINSTANCEMETAOBJECT_H
#define NODEINSTANCEMETAOBJECT_H #define NODEINSTANCEMETAOBJECT_H
#include <private/qmlopenmetaobject_p.h> #include <private/qdeclarativeopenmetaobject_p.h>
#include <private/qmlcontext_p.h> #include <private/qdeclarativecontext_p.h>
namespace QmlDesigner { namespace QmlDesigner {
namespace Internal { namespace Internal {
@@ -11,7 +11,7 @@ class ObjectNodeInstance;
typedef QSharedPointer<ObjectNodeInstance> ObjectNodeInstancePointer; typedef QSharedPointer<ObjectNodeInstance> ObjectNodeInstancePointer;
typedef QWeakPointer<ObjectNodeInstance> ObjectNodeInstanceWeakPointer; typedef QWeakPointer<ObjectNodeInstance> ObjectNodeInstanceWeakPointer;
class NodeInstanceMetaObject : public QmlOpenMetaObject class NodeInstanceMetaObject : public QDeclarativeOpenMetaObject
{ {
public: public:
NodeInstanceMetaObject(const ObjectNodeInstancePointer &nodeInstance); NodeInstanceMetaObject(const ObjectNodeInstancePointer &nodeInstance);
@@ -26,7 +26,7 @@ protected:
private: private:
ObjectNodeInstanceWeakPointer m_nodeInstance; ObjectNodeInstanceWeakPointer m_nodeInstance;
QString m_prefix; QString m_prefix;
QWeakPointer<QmlContext> m_context; QWeakPointer<QDeclarativeContext> m_context;
}; };
} // namespace Internal } // namespace Internal

View File

@@ -4,7 +4,7 @@
#include <QMetaProperty> #include <QMetaProperty>
#include <QMetaObject> #include <QMetaObject>
#include <QtDebug> #include <QtDebug>
#include <private/qmlmetaproperty_p.h> #include <private/qdeclarativeproperty_p.h>
#include "objectnodeinstance.h" #include "objectnodeinstance.h"
#include <QSharedPointer> #include <QSharedPointer>
@@ -33,8 +33,8 @@ void NodeInstanceSignalSpy::registerObject(QObject *spiedObject, const QString &
QMetaProperty metaProperty = spiedObject->metaObject()->property(index); QMetaProperty metaProperty = spiedObject->metaObject()->property(index);
if (metaProperty.isReadable() if (metaProperty.isReadable()
&& !metaProperty.isWritable() && !metaProperty.isWritable()
&& QmlMetaType::isQObject(metaProperty.userType())) { && QDeclarativeMetaType::isQObject(metaProperty.userType())) {
QObject *propertyObject = QmlMetaType::toQObject(metaProperty.read(spiedObject)); QObject *propertyObject = QDeclarativeMetaType::toQObject(metaProperty.read(spiedObject));
if (propertyObject) if (propertyObject)
registerObject(propertyObject, prefix + metaProperty.name() + "."); registerObject(propertyObject, prefix + metaProperty.name() + ".");
} else if (metaProperty.hasNotifySignal()) { } else if (metaProperty.hasNotifySignal()) {

View File

@@ -29,15 +29,15 @@
#include "nodeinstanceview.h" #include "nodeinstanceview.h"
#include <QtDeclarative/QmlEngine> #include <QtDeclarative/QDeclarativeEngine>
#include <QtDeclarative/QmlContext> #include <QtDeclarative/QDeclarativeContext>
#include <QtDebug> #include <QtDebug>
#include <QUrl> #include <QUrl>
#include <QGraphicsView> #include <QGraphicsView>
#include <QGraphicsScene> #include <QGraphicsScene>
#include <QGraphicsObject> #include <QGraphicsObject>
#include <private/qmlengine_p.h> #include <private/qdeclarativeengine_p.h>
#include <model.h> #include <model.h>
#include <modelnode.h> #include <modelnode.h>
@@ -91,7 +91,7 @@ deleted too.
NodeInstanceView::NodeInstanceView(QObject *parent) NodeInstanceView::NodeInstanceView(QObject *parent)
: AbstractView(parent), : AbstractView(parent),
m_graphicsView(new QGraphicsView), m_graphicsView(new QGraphicsView),
m_engine(new QmlEngine(this)), m_engine(new QDeclarativeEngine(this)),
m_blockChangeSignal(false), m_blockChangeSignal(false),
m_blockStatePropertyChanges(false) m_blockStatePropertyChanges(false)
{ {
@@ -101,9 +101,9 @@ NodeInstanceView::NodeInstanceView(QObject *parent)
Q_ASSERT(!m_engine.isNull()); Q_ASSERT(!m_engine.isNull());
QmlEnginePrivate *privateQmlEngine = QmlEnginePrivate::get(m_engine.data()); QDeclarativeEnginePrivate *privateQDeclarativeEngine = QDeclarativeEnginePrivate::get(m_engine.data());
Q_ASSERT(privateQmlEngine); Q_ASSERT(privateQDeclarativeEngine);
privateQmlEngine->scriptEngine.setProcessEventsInterval(100); privateQDeclarativeEngine->scriptEngine.setProcessEventsInterval(100);
} }
@@ -474,7 +474,7 @@ void NodeInstanceView::insertInstanceNodeRelationship(const ModelNode &node, con
m_objectInstanceHash.insert(instance.internalObject(), instance); m_objectInstanceHash.insert(instance.internalObject(), instance);
} }
QmlEngine *NodeInstanceView::engine() const QDeclarativeEngine *NodeInstanceView::engine() const
{ {
return m_engine.data(); return m_engine.data();
} }

View File

@@ -47,25 +47,26 @@
#include <nodelistproperty.h> #include <nodelistproperty.h>
#include <metainfo.h> #include <metainfo.h>
#include <propertymetainfo.h> #include <propertymetainfo.h>
#include <qmlmetaproperty.h>
#include <QEvent> #include <QEvent>
#include <QGraphicsScene> #include <QGraphicsScene>
#include <QmlContext> #include <QDeclarativeContext>
#include <QmlError> #include <QDeclarativeError>
#include <QmlBinding> #include <QDeclarativeEngine>
#include <QmlMetaType> #include <QDeclarativeProperty>
#include <QmlEngine>
#include <QSharedPointer> #include <QSharedPointer>
#include <private/qmlcontext_p.h> #include <private/qdeclarativebinding_p.h>
#include <private/qmllistaccessor_p.h> #include <private/qdeclarativecontext_p.h>
#include <private/qmlvaluetype_p.h> #include <private/qdeclarativelistaccessor_p.h>
#include <private/qmlgraphicsanchors_p.h> #include <private/qdeclarativevaluetype_p.h>
#include <private/qmlgraphicsrectangle_p.h> // to get QmlGraphicsPen #include <private/qdeclarativeanchors_p.h>
#include <private/qdeclarativerectangle_p.h> // to get QDeclarativePen
#include <private/qmetaobjectbuilder_p.h> #include <private/qmetaobjectbuilder_p.h>
#include <private/qmlvmemetaobject_p.h> #include <private/qdeclarativevmemetaobject_p.h>
#include <private/qdeclarativemetatype_p.h>
#include <private/qobject_p.h> #include <private/qobject_p.h>
#include <private/qdeclarativeproperty_p.h>
@@ -114,7 +115,7 @@ static bool isChildrenProperty(const QString &name)
static void specialRemoveParentForQmlGraphicsItemChildren(QObject *object) static void specialRemoveParentForQmlGraphicsItemChildren(QObject *object)
{ {
QmlGraphicsItem *item = qobject_cast<QmlGraphicsItem*>(object); QDeclarativeItem *item = qobject_cast<QDeclarativeItem*>(object);
if (item && item->scene()) if (item && item->scene())
item->scene()->removeItem(item); item->scene()->removeItem(item);
@@ -187,8 +188,8 @@ void ObjectNodeInstance::initializePropertyWatcher(const ObjectNodeInstance::Poi
m_metaObject = new NodeInstanceMetaObject(objectNodeInstance); m_metaObject = new NodeInstanceMetaObject(objectNodeInstance);
const QMetaObject *metaObject = objectNodeInstance->object()->metaObject(); const QMetaObject *metaObject = objectNodeInstance->object()->metaObject();
for(int propertyIndex = QObject::staticMetaObject.propertyCount(); propertyIndex < metaObject->propertyCount(); propertyIndex++) { for(int propertyIndex = QObject::staticMetaObject.propertyCount(); propertyIndex < metaObject->propertyCount(); propertyIndex++) {
if (QmlMetaType::isQObject(metaObject->property(propertyIndex).userType())) { if (QDeclarativeMetaType::isQObject(metaObject->property(propertyIndex).userType())) {
QObject *propertyObject = QmlMetaType::toQObject(metaObject->property(propertyIndex).read(objectNodeInstance->object())); QObject *propertyObject = QDeclarativeMetaType::toQObject(metaObject->property(propertyIndex).read(objectNodeInstance->object()));
if (propertyObject && hasPropertiesWitoutNotifications(propertyObject->metaObject())) { if (propertyObject && hasPropertiesWitoutNotifications(propertyObject->metaObject())) {
new NodeInstanceMetaObject(objectNodeInstance, propertyObject, metaObject->property(propertyIndex).name()); new NodeInstanceMetaObject(objectNodeInstance, propertyObject, metaObject->property(propertyIndex).name());
} }
@@ -241,7 +242,7 @@ bool ObjectNodeInstance::isWidget() const
return false; return false;
} }
bool ObjectNodeInstance::isQmlView() const bool ObjectNodeInstance::isQDeclarativeView() const
{ {
return false; return false;
} }
@@ -324,14 +325,14 @@ QPair<QString, NodeInstance> ObjectNodeInstance::anchor(const QString &/*name*/)
} }
static bool isList(const QmlMetaProperty &metaProperty) static bool isList(const QDeclarativeProperty &metaProperty)
{ {
return metaProperty.propertyCategory() == QmlMetaProperty::List; return metaProperty.propertyTypeCategory() == QDeclarativeProperty::List;
} }
static bool isObject(const QmlMetaProperty &metaProperty) static bool isObject(const QDeclarativeProperty &metaProperty)
{ {
return metaProperty.propertyCategory() == QmlMetaProperty::Object; return metaProperty.propertyTypeCategory() == QDeclarativeProperty::Object;
} }
static QVariant objectToVariant(QObject *object) static QVariant objectToVariant(QObject *object)
@@ -339,14 +340,14 @@ static QVariant objectToVariant(QObject *object)
return QVariant::fromValue(object); return QVariant::fromValue(object);
} }
static void removeObjectFromList(const QmlMetaProperty & /*metaProperty*/, QObject * /*object*/, QmlEngine * /*engine*/) static void removeObjectFromList(const QDeclarativeProperty & /*metaProperty*/, QObject * /*object*/, QDeclarativeEngine * /*engine*/)
{ {
// ### Very few QML lists ever responded to removes // ### Very few QML lists ever responded to removes
} }
void ObjectNodeInstance::removeFromOldProperty(QObject *object, QObject *oldParent, const QString &oldParentProperty) void ObjectNodeInstance::removeFromOldProperty(QObject *object, QObject *oldParent, const QString &oldParentProperty)
{ {
QmlMetaProperty metaProperty = QmlMetaProperty::createProperty(oldParent, oldParentProperty, context()); QDeclarativeProperty metaProperty(oldParent, oldParentProperty, context());
if (isList(metaProperty)) { if (isList(metaProperty)) {
removeObjectFromList(metaProperty, object, nodeInstanceView()->engine()); removeObjectFromList(metaProperty, object, nodeInstanceView()->engine());
@@ -359,10 +360,10 @@ void ObjectNodeInstance::removeFromOldProperty(QObject *object, QObject *oldPare
void ObjectNodeInstance::addToNewProperty(QObject *object, QObject *newParent, const QString &newParentProperty) void ObjectNodeInstance::addToNewProperty(QObject *object, QObject *newParent, const QString &newParentProperty)
{ {
QmlMetaProperty metaProperty = QmlMetaProperty::createProperty(newParent, newParentProperty, context()); QDeclarativeProperty metaProperty(newParent, newParentProperty, context());
if (isList(metaProperty)) { if (isList(metaProperty)) {
QmlListReference list = qvariant_cast<QmlListReference>(metaProperty.read()); QDeclarativeListReference list = qvariant_cast<QDeclarativeListReference>(metaProperty.read());
list.append(object); list.append(object);
} else if (isObject(metaProperty)) { } else if (isObject(metaProperty)) {
metaProperty.write(objectToVariant(object)); metaProperty.write(objectToVariant(object));
@@ -372,9 +373,9 @@ void ObjectNodeInstance::addToNewProperty(QObject *object, QObject *newParent, c
Q_ASSERT(objectToVariant(object).isValid()); Q_ASSERT(objectToVariant(object).isValid());
} }
static void specialSetParentForQmlGraphicsItemChildren(QObject *object, QmlGraphicsItem *parent) static void specialSetParentForQmlGraphicsItemChildren(QObject *object, QDeclarativeItem *parent)
{ {
QmlGraphicsItem *item = qobject_cast<QmlGraphicsItem*>(object); QDeclarativeItem *item = qobject_cast<QDeclarativeItem*>(object);
if (item) if (item)
item->setParentItem(parent); item->setParentItem(parent);
else else
@@ -392,7 +393,7 @@ void ObjectNodeInstance::reparent(const NodeInstance &oldParentInstance, const Q
if (newParentInstance.isValid()) { if (newParentInstance.isValid()) {
if (newParentInstance.isQmlGraphicsItem() && isChildrenProperty(newParentProperty)) if (newParentInstance.isQmlGraphicsItem() && isChildrenProperty(newParentProperty))
specialSetParentForQmlGraphicsItemChildren(object(), qobject_cast<QmlGraphicsItem*>(newParentInstance.internalObject())); specialSetParentForQmlGraphicsItemChildren(object(), qobject_cast<QDeclarativeItem*>(newParentInstance.internalObject()));
else else
addToNewProperty(object(), newParentInstance.internalObject(), newParentProperty); addToNewProperty(object(), newParentInstance.internalObject(), newParentProperty);
} }
@@ -402,33 +403,33 @@ void ObjectNodeInstance::reparent(const NodeInstance &oldParentInstance, const Q
void ObjectNodeInstance::setPropertyVariant(const QString &name, const QVariant &value) void ObjectNodeInstance::setPropertyVariant(const QString &name, const QVariant &value)
{ {
QmlMetaProperty qmlMetaProperty = QmlMetaProperty::createProperty(object(), name, context()); QDeclarativeProperty QDeclarativeProperty(object(), name, context());
qmlMetaProperty.write(value); QDeclarativeProperty.write(value);
} }
void ObjectNodeInstance::setPropertyBinding(const QString &name, const QString &expression) void ObjectNodeInstance::setPropertyBinding(const QString &name, const QString &expression)
{ {
QmlContext *qmlContext = QmlEngine::contextForObject(object()); QDeclarativeContext *QDeclarativeContext = QDeclarativeEngine::contextForObject(object());
QmlMetaProperty metaProperty = QmlMetaProperty::createProperty(object(), name, context()); QDeclarativeProperty metaProperty(object(), name, context());
if (metaProperty.isValid() && metaProperty.isProperty()) { if (metaProperty.isValid() && metaProperty.isProperty()) {
QmlBinding *qmlBinding = new QmlBinding(expression, object(), qmlContext); QDeclarativeBinding *binding = new QDeclarativeBinding(expression, object(), QDeclarativeContext);
qmlBinding->setTarget(metaProperty); binding->setTarget(metaProperty);
qmlBinding->setTrackChange(true); binding->setNotifyOnValueChanged(true);
QmlAbstractBinding *oldBinding = metaProperty.setBinding(qmlBinding); QDeclarativeAbstractBinding *oldBinding = QDeclarativePropertyPrivate::setBinding(metaProperty, binding);
delete oldBinding; delete oldBinding;
qmlBinding->update(); binding->update();
} else { } else {
qWarning() << "Cannot set binding for property" << name << ": property is unknown for type" qWarning() << "Cannot set binding for property" << name << ": property is unknown for type"
<< (modelNode().isValid() ? modelNode().type() : "unknown"); << (modelNode().isValid() ? modelNode().type() : "unknown");
} }
} }
void ObjectNodeInstance::deleteObjectsInList(const QmlMetaProperty &metaProperty) void ObjectNodeInstance::deleteObjectsInList(const QDeclarativeProperty &metaProperty)
{ {
QObjectList objectList; QObjectList objectList;
QmlListReference list = qvariant_cast<QmlListReference>(metaProperty.read()); QDeclarativeListReference list = qvariant_cast<QDeclarativeListReference>(metaProperty.read());
for(int i = 0; i < list.count(); i++) { for(int i = 0; i < list.count(); i++) {
objectList += list.at(i); objectList += list.at(i);
@@ -463,10 +464,10 @@ void ObjectNodeInstance::resetProperty(QObject *object, const QString &propertyN
{ {
m_modelAbstractPropertyHash.remove(propertyName); m_modelAbstractPropertyHash.remove(propertyName);
QmlMetaProperty qmlMetaProperty = QmlMetaProperty::createProperty(object, propertyName, context()); QDeclarativeProperty qmlProperty(object, propertyName, context());
QMetaProperty metaProperty = qmlMetaProperty.property(); QMetaProperty metaProperty = qmlProperty.property();
QmlAbstractBinding *binding = qmlMetaProperty.binding(); QDeclarativeAbstractBinding *binding = QDeclarativePropertyPrivate::binding(qmlProperty);
if (binding) { if (binding) {
binding->setEnabled(false, 0); binding->setEnabled(false, 0);
delete binding; delete binding;
@@ -474,12 +475,12 @@ void ObjectNodeInstance::resetProperty(QObject *object, const QString &propertyN
if (metaProperty.isResettable()) { if (metaProperty.isResettable()) {
metaProperty.reset(object); metaProperty.reset(object);
} else if (qmlMetaProperty.isWritable()) { } else if (qmlProperty.isWritable()) {
if (qmlMetaProperty.read() == resetValue(propertyName)) if (qmlProperty.read() == resetValue(propertyName))
return; return;
qmlMetaProperty.write(resetValue(propertyName)); qmlProperty.write(resetValue(propertyName));
} else if (qmlMetaProperty.propertyCategory() == QmlMetaProperty::List) { } else if (qmlProperty.propertyTypeCategory() == QDeclarativeProperty::List) {
qvariant_cast<QmlListReference>(qmlMetaProperty.read()).clear(); qvariant_cast<QDeclarativeListReference>(qmlProperty.read()).clear();
} }
} }
@@ -491,7 +492,7 @@ QVariant ObjectNodeInstance::property(const QString &name) const
// TODO: handle model nodes // TODO: handle model nodes
QmlMetaProperty metaProperty = QmlMetaProperty::createProperty(object(), name, context()); QDeclarativeProperty metaProperty(object(), name, context());
if (metaProperty.property().isEnumType()) { if (metaProperty.property().isEnumType()) {
QVariant value = object()->property(name.toLatin1()); QVariant value = object()->property(name.toLatin1());
return metaProperty.property().enumerator().valueToKey(value.toInt()); return metaProperty.property().enumerator().valueToKey(value.toInt());
@@ -522,7 +523,7 @@ bool ObjectNodeInstance::deleteHeldInstance() const
return m_deleteHeldInstance; return m_deleteHeldInstance;
} }
ObjectNodeInstance::Pointer ObjectNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, QmlContext *context, QObject *objectToBeWrapped) ObjectNodeInstance::Pointer ObjectNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped)
{ {
QObject *object = 0; QObject *object = 0;
if (objectToBeWrapped) if (objectToBeWrapped)
@@ -540,7 +541,7 @@ ObjectNodeInstance::Pointer ObjectNodeInstance::create(const NodeMetaInfo &nodeM
return instance; return instance;
} }
QObject* ObjectNodeInstance::createObject(const NodeMetaInfo &metaInfo, QmlContext *context) QObject* ObjectNodeInstance::createObject(const NodeMetaInfo &metaInfo, QDeclarativeContext *context)
{ {
QObject *object = metaInfo.createInstance(context); QObject *object = metaInfo.createInstance(context);
@@ -564,9 +565,9 @@ void ObjectNodeInstance::updateAnchors()
{ {
} }
QmlContext *ObjectNodeInstance::context() const QDeclarativeContext *ObjectNodeInstance::context() const
{ {
QmlContext *context = QmlEngine::contextForObject(object()); QDeclarativeContext *context = QDeclarativeEngine::contextForObject(object());
if (context) if (context)
return context; return context;
else if (nodeInstanceView()) else if (nodeInstanceView())
@@ -599,11 +600,11 @@ QStringList propertyNameForWritableProperties(QObject *object, const QString &ba
for (int index = 0; index < metaObject->propertyCount(); ++index) { for (int index = 0; index < metaObject->propertyCount(); ++index) {
QMetaProperty metaProperty = metaObject->property(index); QMetaProperty metaProperty = metaObject->property(index);
if (metaProperty.isReadable() && !metaProperty.isWritable()) { if (metaProperty.isReadable() && !metaProperty.isWritable()) {
QObject *childObject = QmlMetaType::toQObject(metaProperty.read(object)); QObject *childObject = QDeclarativeMetaType::toQObject(metaProperty.read(object));
if (childObject) if (childObject)
propertyNameList.append(propertyNameForWritableProperties(childObject, baseName + QString::fromUtf8(metaProperty.name()) + '.')); propertyNameList.append(propertyNameForWritableProperties(childObject, baseName + QString::fromUtf8(metaProperty.name()) + '.'));
} else if (QmlValueTypeFactory::valueType(metaProperty.userType())) { } else if (QDeclarativeValueTypeFactory::valueType(metaProperty.userType())) {
QmlValueType *valueType = QmlValueTypeFactory::valueType(metaProperty.userType()); QDeclarativeValueType *valueType = QDeclarativeValueTypeFactory::valueType(metaProperty.userType());
valueType->setValue(metaProperty.read(object)); valueType->setValue(metaProperty.read(object));
propertyNameList.append(propertyNameForWritableProperties(valueType, baseName + QString::fromUtf8(metaProperty.name()) + '.')); propertyNameList.append(propertyNameForWritableProperties(valueType, baseName + QString::fromUtf8(metaProperty.name()) + '.'));
} else if (metaProperty.isReadable() && metaProperty.isWritable()) { } else if (metaProperty.isReadable() && metaProperty.isWritable()) {
@@ -619,7 +620,7 @@ void ObjectNodeInstance::populateResetValueHash()
QStringList propertyNameList = propertyNameForWritableProperties(object()); QStringList propertyNameList = propertyNameForWritableProperties(object());
foreach(const QString &propertyName, propertyNameList) { foreach(const QString &propertyName, propertyNameList) {
QmlMetaProperty metaProperty = QmlMetaProperty::createProperty(object(), propertyName, context()); QDeclarativeProperty metaProperty(object(), propertyName, context());
if (metaProperty.isWritable()) if (metaProperty.isWritable())
m_resetValueHash.insert(propertyName, metaProperty.read()); m_resetValueHash.insert(propertyName, metaProperty.read());
} }
@@ -695,10 +696,10 @@ void ObjectNodeInstance::createDynamicProperty(const QString &name, const QStrin
/** /**
Force all bindings in this or a sub context to be re-evaluated. Force all bindings in this or a sub context to be re-evaluated.
*/ */
void ObjectNodeInstance::refreshBindings(QmlContext *context) void ObjectNodeInstance::refreshBindings(QDeclarativeContext *context)
{ {
// TODO: Maybe do this via a timer to prevent update flooding // TODO: Maybe do this via a timer to prevent update flooding
QmlContextPrivate::get(context)->refreshExpressions(); QDeclarativeContextPrivate::get(context)->refreshExpressions();
} }
} }

View File

@@ -43,10 +43,10 @@
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
class QGraphicsItem; class QGraphicsItem;
class QmlContext; class QDeclarativeContext;
class QmlMetaProperty; class QDeclarativeProperty;
class QmlContext; class QDeclarativeContext;
class QmlBinding; class QDeclarativeBinding;
QT_END_NAMESPACE QT_END_NAMESPACE
namespace QmlDesigner { namespace QmlDesigner {
@@ -60,7 +60,7 @@ class GraphicsViewNodeInstance;
class GraphicsSceneNodeInstance; class GraphicsSceneNodeInstance;
class ProxyWidgetNodeInstance; class ProxyWidgetNodeInstance;
class WidgetNodeInstance; class WidgetNodeInstance;
class QmlViewNodeInstance; class QDeclarativeViewNodeInstance;
class ChildrenChangeEventFilter : public QObject class ChildrenChangeEventFilter : public QObject
{ {
@@ -88,7 +88,7 @@ public:
void destroy(); void destroy();
//void setModelNode(const ModelNode &node); //void setModelNode(const ModelNode &node);
static Pointer create(const NodeMetaInfo &metaInfo, QmlContext *context, QObject *objectToBeWrapped); static Pointer create(const NodeMetaInfo &metaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped);
ModelNode modelNode() const; ModelNode modelNode() const;
void setModelNode(const ModelNode &node); void setModelNode(const ModelNode &node);
@@ -112,7 +112,7 @@ public:
virtual bool isGraphicsWidget() const; virtual bool isGraphicsWidget() const;
virtual bool isProxyWidget() const; virtual bool isProxyWidget() const;
virtual bool isWidget() const; virtual bool isWidget() const;
virtual bool isQmlView() const; virtual bool isQDeclarativeView() const;
virtual bool isGraphicsObject() const; virtual bool isGraphicsObject() const;
virtual bool isTransition() const; virtual bool isTransition() const;
@@ -164,20 +164,20 @@ public:
virtual bool hasContent() const; virtual bool hasContent() const;
QmlContext *context() const; QDeclarativeContext *context() const;
protected: protected:
static QObject* createObject(const NodeMetaInfo &metaInfo, QmlContext *context); static QObject* createObject(const NodeMetaInfo &metaInfo, QDeclarativeContext *context);
void resetProperty(QObject *object, const QString &propertyName); void resetProperty(QObject *object, const QString &propertyName);
NodeInstance instanceForNode(const ModelNode &node, const QString &fullname); NodeInstance instanceForNode(const ModelNode &node, const QString &fullname);
void removeFromOldProperty(QObject *object, QObject *oldParent, const QString &oldParentProperty); void removeFromOldProperty(QObject *object, QObject *oldParent, const QString &oldParentProperty);
void addToNewProperty(QObject *object, QObject *newParent, const QString &newParentProperty); void addToNewProperty(QObject *object, QObject *newParent, const QString &newParentProperty);
void deleteObjectsInList(const QmlMetaProperty &metaProperty); void deleteObjectsInList(const QDeclarativeProperty &metaProperty);
private: private:
static void refreshBindings(QmlContext *context); static void refreshBindings(QDeclarativeContext *context);
QHash<QString, QVariant> m_resetValueHash; QHash<QString, QVariant> m_resetValueHash;
QHash<QString, NodeInstance> m_modelAbstractPropertyHash; QHash<QString, NodeInstance> m_modelAbstractPropertyHash;
@@ -189,7 +189,6 @@ private:
QWeakPointer<QObject> m_object; QWeakPointer<QObject> m_object;
NodeInstanceMetaObject *m_metaObject; NodeInstanceMetaObject *m_metaObject;
NodeInstanceSignalSpy m_signalSpy; NodeInstanceSignalSpy m_signalSpy;
}; };

View File

@@ -29,7 +29,7 @@
#include "proxywidgetnodeinstance.h" #include "proxywidgetnodeinstance.h"
#include <QmlMetaType> #include <private/qdeclarativemetatype_p.h>
#include <QGraphicsProxyWidget> #include <QGraphicsProxyWidget>
@@ -45,7 +45,7 @@ ProxyWidgetNodeInstance::ProxyWidgetNodeInstance(QGraphicsProxyWidget *widget)
ProxyWidgetNodeInstance::Pointer ProxyWidgetNodeInstance::create(const QString &typeName) ProxyWidgetNodeInstance::Pointer ProxyWidgetNodeInstance::create(const QString &typeName)
{ {
QObject *object = QmlMetaType::qmlType(typeName.toLatin1(), 4, 6)->create(); QObject *object = QDeclarativeMetaType::qmlType(typeName.toLatin1(), 4, 6)->create();
Q_ASSERT(object); Q_ASSERT(object);
if (object == 0) if (object == 0)
return Pointer(); return Pointer();

View File

@@ -38,10 +38,11 @@
#include "bindingproperty.h" #include "bindingproperty.h"
#include "variantproperty.h" #include "variantproperty.h"
#include <private/qmlgraphicsanchors_p.h> #include <QDeclarativeExpression>
#include <private/qmlgraphicsanchors_p_p.h>
#include <private/qmlgraphicsrectangle_p.h> #include <private/qdeclarativeanchors_p.h>
#include <private/qmlexpression_p.h> #include <private/qdeclarativeanchors_p_p.h>
#include <private/qdeclarativerectangle_p.h>
#include <cmath> #include <cmath>
@@ -50,7 +51,7 @@
namespace QmlDesigner { namespace QmlDesigner {
namespace Internal { namespace Internal {
QmlGraphicsItemNodeInstance::QmlGraphicsItemNodeInstance(QmlGraphicsItem *item, bool hasContent) QmlGraphicsItemNodeInstance::QmlGraphicsItemNodeInstance(QDeclarativeItem *item, bool hasContent)
: GraphicsObjectNodeInstance(item, hasContent), : GraphicsObjectNodeInstance(item, hasContent),
m_hasHeight(false), m_hasHeight(false),
m_hasWidth(false) m_hasWidth(false)
@@ -61,7 +62,7 @@ QmlGraphicsItemNodeInstance::~QmlGraphicsItemNodeInstance()
{ {
} }
QmlGraphicsItemNodeInstance::Pointer QmlGraphicsItemNodeInstance::create(const NodeMetaInfo &metaInfo, QmlContext *context, QObject *objectToBeWrapped) QmlGraphicsItemNodeInstance::Pointer QmlGraphicsItemNodeInstance::create(const NodeMetaInfo &metaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped)
{ {
QPair<QGraphicsObject*, bool> objectPair; QPair<QGraphicsObject*, bool> objectPair;
@@ -70,7 +71,7 @@ QmlGraphicsItemNodeInstance::Pointer QmlGraphicsItemNodeInstance::create(const N
else else
objectPair = GraphicsObjectNodeInstance::createGraphicsObject(metaInfo, context); objectPair = GraphicsObjectNodeInstance::createGraphicsObject(metaInfo, context);
QmlGraphicsItem *qmlGraphicsItem = dynamic_cast<QmlGraphicsItem*>(objectPair.first); QDeclarativeItem *qmlGraphicsItem = dynamic_cast<QDeclarativeItem*>(objectPair.first);
if (qmlGraphicsItem == 0) if (qmlGraphicsItem == 0)
throw InvalidNodeInstanceException(__LINE__, __FUNCTION__, __FILE__); throw InvalidNodeInstanceException(__LINE__, __FUNCTION__, __FILE__);
@@ -170,7 +171,7 @@ QRectF QmlGraphicsItemNodeInstance::boundingRect() const
return qmlGraphicsItem()->boundingRect(); return qmlGraphicsItem()->boundingRect();
} }
//QVariant anchorLineFor(QmlGraphicsItem *item, const AnchorLine &anchorLine) //QVariant anchorLineFor(QDeclarativeItem *item, const AnchorLine &anchorLine)
//{ //{
// switch(anchorLine.type()) { // switch(anchorLine.type()) {
// case AnchorLine::Top : return item->property("top"); // case AnchorLine::Top : return item->property("top");
@@ -268,9 +269,9 @@ void QmlGraphicsItemNodeInstance::resetVertical()
int QmlGraphicsItemNodeInstance::penWidth() const int QmlGraphicsItemNodeInstance::penWidth() const
{ {
QmlGraphicsRectangle *qmlGraphcisRectangle = qobject_cast<QmlGraphicsRectangle*>(object()); QDeclarativeRectangle *rectangle = qobject_cast<QDeclarativeRectangle*>(object());
if (qmlGraphcisRectangle) if (rectangle)
return qmlGraphcisRectangle->border()->width(); return rectangle->border()->width();
return GraphicsObjectNodeInstance::penWidth(); return GraphicsObjectNodeInstance::penWidth();
} }
@@ -330,7 +331,7 @@ void QmlGraphicsItemNodeInstance::resetProperty(const QString &name)
// qmlGraphicsItem()->anchors()->setProperty("top", anchorLineFor(qmlGraphicsItemInstance->qmlGraphicsItem(), anchorLine)); // qmlGraphicsItem()->anchors()->setProperty("top", anchorLineFor(qmlGraphicsItemInstance->qmlGraphicsItem(), anchorLine));
// } // }
// } else { // } else {
// if (qmlGraphicsItem()->anchors()->usedAnchors().testFlag(QmlGraphicsAnchors::HasTopAnchor)) { // if (qmlGraphicsItem()->anchors()->usedAnchors().testFlag(QDeclarativeAnchors::HasTopAnchor)) {
// qmlGraphicsItem()->anchors()->resetTop(); // qmlGraphicsItem()->anchors()->resetTop();
// setPropertyValue("y", modelNode().property("y").value()); // setPropertyValue("y", modelNode().property("y").value());
// setPropertyValue("height", modelNode().property("height").value()); // setPropertyValue("height", modelNode().property("height").value());
@@ -347,7 +348,7 @@ void QmlGraphicsItemNodeInstance::resetProperty(const QString &name)
// qmlGraphicsItem()->anchors()->setProperty("left", anchorLineFor(qmlGraphicsItemInstance->qmlGraphicsItem(), anchorLine)); // qmlGraphicsItem()->anchors()->setProperty("left", anchorLineFor(qmlGraphicsItemInstance->qmlGraphicsItem(), anchorLine));
// } // }
// } else { // } else {
// if (qmlGraphicsItem()->anchors()->usedAnchors().testFlag(QmlGraphicsAnchors::HasLeftAnchor)) { // if (qmlGraphicsItem()->anchors()->usedAnchors().testFlag(QDeclarativeAnchors::HasLeftAnchor)) {
// qmlGraphicsItem()->anchors()->resetLeft(); // qmlGraphicsItem()->anchors()->resetLeft();
// setPropertyValue("x", modelNode().property("x").value()); // setPropertyValue("x", modelNode().property("x").value());
// setPropertyValue("width", modelNode().property("width").value()); // setPropertyValue("width", modelNode().property("width").value());
@@ -364,7 +365,7 @@ void QmlGraphicsItemNodeInstance::resetProperty(const QString &name)
// qmlGraphicsItem()->anchors()->setProperty("right", anchorLineFor(qmlGraphicsItemInstance->qmlGraphicsItem(), anchorLine)); // qmlGraphicsItem()->anchors()->setProperty("right", anchorLineFor(qmlGraphicsItemInstance->qmlGraphicsItem(), anchorLine));
// } // }
// } else { // } else {
// if (qmlGraphicsItem()->anchors()->usedAnchors().testFlag(QmlGraphicsAnchors::HasRightAnchor)) { // if (qmlGraphicsItem()->anchors()->usedAnchors().testFlag(QDeclarativeAnchors::HasRightAnchor)) {
// qmlGraphicsItem()->anchors()->resetRight(); // qmlGraphicsItem()->anchors()->resetRight();
// setPropertyValue("x", modelNode().property("x").value()); // setPropertyValue("x", modelNode().property("x").value());
// setPropertyValue("width", modelNode().property("width").value()); // setPropertyValue("width", modelNode().property("width").value());
@@ -381,7 +382,7 @@ void QmlGraphicsItemNodeInstance::resetProperty(const QString &name)
// qmlGraphicsItem()->anchors()->setProperty("bottom", anchorLineFor(qmlGraphicsItemInstance->qmlGraphicsItem(), anchorLine)); // qmlGraphicsItem()->anchors()->setProperty("bottom", anchorLineFor(qmlGraphicsItemInstance->qmlGraphicsItem(), anchorLine));
// } // }
// } else { // } else {
// if (qmlGraphicsItem()->anchors()->usedAnchors().testFlag(QmlGraphicsAnchors::HasBottomAnchor)) { // if (qmlGraphicsItem()->anchors()->usedAnchors().testFlag(QDeclarativeAnchors::HasBottomAnchor)) {
// qmlGraphicsItem()->anchors()->resetBottom(); // qmlGraphicsItem()->anchors()->resetBottom();
// setPropertyValue("y", modelNode().property("y").value()); // setPropertyValue("y", modelNode().property("y").value());
// setPropertyValue("height", modelNode().property("height").value()); // setPropertyValue("height", modelNode().property("height").value());
@@ -398,7 +399,7 @@ void QmlGraphicsItemNodeInstance::resetProperty(const QString &name)
// qmlGraphicsItem()->anchors()->setProperty("horizontalCenter", anchorLineFor(qmlGraphicsItemInstance->qmlGraphicsItem(), anchorLine)); // qmlGraphicsItem()->anchors()->setProperty("horizontalCenter", anchorLineFor(qmlGraphicsItemInstance->qmlGraphicsItem(), anchorLine));
// } // }
// } else { // } else {
// if (qmlGraphicsItem()->anchors()->usedAnchors().testFlag(QmlGraphicsAnchors::HasHCenterAnchor)) { // if (qmlGraphicsItem()->anchors()->usedAnchors().testFlag(QDeclarativeAnchors::HasHCenterAnchor)) {
// qmlGraphicsItem()->anchors()->resetHorizontalCenter(); // qmlGraphicsItem()->anchors()->resetHorizontalCenter();
// setPropertyValue("x", modelNode().property("x").value()); // setPropertyValue("x", modelNode().property("x").value());
// setPropertyValue("width", modelNode().property("width").value()); // setPropertyValue("width", modelNode().property("width").value());
@@ -415,7 +416,7 @@ void QmlGraphicsItemNodeInstance::resetProperty(const QString &name)
// qmlGraphicsItem()->anchors()->setProperty("verticalCenter",anchorLineFor(qmlGraphicsItemInstance->qmlGraphicsItem(), anchorLine)); // qmlGraphicsItem()->anchors()->setProperty("verticalCenter",anchorLineFor(qmlGraphicsItemInstance->qmlGraphicsItem(), anchorLine));
// } // }
// } else { // } else {
// if (qmlGraphicsItem()->anchors()->usedAnchors().testFlag(QmlGraphicsAnchors::HasVCenterAnchor)) { // if (qmlGraphicsItem()->anchors()->usedAnchors().testFlag(QDeclarativeAnchors::HasVCenterAnchor)) {
// qmlGraphicsItem()->anchors()->resetVerticalCenter(); // qmlGraphicsItem()->anchors()->resetVerticalCenter();
// setPropertyValue("y", modelNode().property("y").value()); // setPropertyValue("y", modelNode().property("y").value());
// setPropertyValue("height", modelNode().property("height").value()); // setPropertyValue("height", modelNode().property("height").value());
@@ -431,45 +432,45 @@ void QmlGraphicsItemNodeInstance::resetProperty(const QString &name)
// qmlGraphicsItem()->anchors()->setVerticalCenterOffset(anchors.margin(AnchorLine::VerticalCenter)); // qmlGraphicsItem()->anchors()->setVerticalCenterOffset(anchors.margin(AnchorLine::VerticalCenter));
//} //}
QmlGraphicsAnchors::UsedAnchor anchorLineFlagForName(const QString &name) QDeclarativeAnchors::UsedAnchor anchorLineFlagForName(const QString &name)
{ {
if (name == "anchors.top") if (name == "anchors.top")
return QmlGraphicsAnchors::HasTopAnchor; return QDeclarativeAnchors::HasTopAnchor;
if (name == "anchors.left") if (name == "anchors.left")
return QmlGraphicsAnchors::HasLeftAnchor; return QDeclarativeAnchors::HasLeftAnchor;
if (name == "anchors.bottom") if (name == "anchors.bottom")
return QmlGraphicsAnchors::HasBottomAnchor; return QDeclarativeAnchors::HasBottomAnchor;
if (name == "anchors.right") if (name == "anchors.right")
return QmlGraphicsAnchors::HasRightAnchor; return QDeclarativeAnchors::HasRightAnchor;
if (name == "anchors.horizontalCenter") if (name == "anchors.horizontalCenter")
return QmlGraphicsAnchors::HasHCenterAnchor; return QDeclarativeAnchors::HasHCenterAnchor;
if (name == "anchors.verticalCenter") if (name == "anchors.verticalCenter")
return QmlGraphicsAnchors::HasVCenterAnchor; return QDeclarativeAnchors::HasVCenterAnchor;
if (name == "anchors.baseline") if (name == "anchors.baseline")
return QmlGraphicsAnchors::HasBaselineAnchor; return QDeclarativeAnchors::HasBaselineAnchor;
Q_ASSERT_X(false, Q_FUNC_INFO, "wrong anchor name - this should never happen"); Q_ASSERT_X(false, Q_FUNC_INFO, "wrong anchor name - this should never happen");
return QmlGraphicsAnchors::HasLeftAnchor; return QDeclarativeAnchors::HasLeftAnchor;
} }
QString propertyNameForAnchorLine(const QmlGraphicsAnchorLine::AnchorLine &anchorLine) QString propertyNameForAnchorLine(const QDeclarativeAnchorLine::AnchorLine &anchorLine)
{ {
switch(anchorLine) { switch(anchorLine) {
case QmlGraphicsAnchorLine::Left: return "left"; case QDeclarativeAnchorLine::Left: return "left";
case QmlGraphicsAnchorLine::Right: return "right"; case QDeclarativeAnchorLine::Right: return "right";
case QmlGraphicsAnchorLine::Top: return "top"; case QDeclarativeAnchorLine::Top: return "top";
case QmlGraphicsAnchorLine::Bottom: return "bottom"; case QDeclarativeAnchorLine::Bottom: return "bottom";
case QmlGraphicsAnchorLine::HCenter: return "horizontalCenter"; case QDeclarativeAnchorLine::HCenter: return "horizontalCenter";
case QmlGraphicsAnchorLine::VCenter: return "verticalCenter"; case QDeclarativeAnchorLine::VCenter: return "verticalCenter";
case QmlGraphicsAnchorLine::Baseline: return "baseline"; case QDeclarativeAnchorLine::Baseline: return "baseline";
case QmlGraphicsAnchorLine::Invalid: case QDeclarativeAnchorLine::Invalid:
default: return QString(); default: return QString();
} }
} }
@@ -502,9 +503,9 @@ QPair<QString, NodeInstance> QmlGraphicsItemNodeInstance::anchor(const QString &
} else if (name == "anchors.centerIn") { } else if (name == "anchors.centerIn") {
targetObject = qmlGraphicsItem()->anchors()->centerIn(); targetObject = qmlGraphicsItem()->anchors()->centerIn();
} else { } else {
QmlMetaProperty metaProperty = QmlMetaProperty::createProperty(object(), name, context()); QDeclarativeProperty metaProperty(object(), name, context());
QmlGraphicsAnchorLine anchorLine = metaProperty.read().value<QmlGraphicsAnchorLine>(); QDeclarativeAnchorLine anchorLine = metaProperty.read().value<QDeclarativeAnchorLine>();
if (anchorLine.anchorLine != QmlGraphicsAnchorLine::Invalid) { if (anchorLine.anchorLine != QDeclarativeAnchorLine::Invalid) {
targetObject = anchorLine.item; targetObject = anchorLine.item;
targetName = propertyNameForAnchorLine(anchorLine.anchorLine); targetName = propertyNameForAnchorLine(anchorLine.anchorLine);
} }
@@ -553,7 +554,7 @@ bool QmlGraphicsItemNodeInstance::hasAnchor(const QString &name) const
return qmlGraphicsItem()->anchors()->usedAnchors().testFlag(anchorLineFlagForName(name)); return qmlGraphicsItem()->anchors()->usedAnchors().testFlag(anchorLineFlagForName(name));
} }
bool isAnchoredTo(QmlGraphicsItem *fromItem, QmlGraphicsItem *toItem) bool isAnchoredTo(QDeclarativeItem *fromItem, QDeclarativeItem *toItem)
{ {
return fromItem->anchors()->fill() == toItem return fromItem->anchors()->fill() == toItem
|| fromItem->anchors()->centerIn() == toItem || fromItem->anchors()->centerIn() == toItem
@@ -566,10 +567,10 @@ bool isAnchoredTo(QmlGraphicsItem *fromItem, QmlGraphicsItem *toItem)
|| fromItem->anchors()->baseline().item == toItem; || fromItem->anchors()->baseline().item == toItem;
} }
bool areChildrenAnchoredTo(QmlGraphicsItem *fromItem, QmlGraphicsItem *toItem) bool areChildrenAnchoredTo(QDeclarativeItem *fromItem, QDeclarativeItem *toItem)
{ {
foreach(QObject *childObject, fromItem->children()) { foreach(QObject *childObject, fromItem->children()) {
QmlGraphicsItem *childItem = qobject_cast<QmlGraphicsItem*>(childObject); QDeclarativeItem *childItem = qobject_cast<QDeclarativeItem*>(childObject);
if (childItem) { if (childItem) {
if (isAnchoredTo(childItem, toItem)) if (isAnchoredTo(childItem, toItem))
return true; return true;
@@ -589,7 +590,7 @@ bool QmlGraphicsItemNodeInstance::isAnchoredBy() const
if (qmlGraphicsItem()->parent()) { if (qmlGraphicsItem()->parent()) {
foreach(QObject *siblingObject, qmlGraphicsItem()->parent()->children()) { // search in siblings for a anchor to this item foreach(QObject *siblingObject, qmlGraphicsItem()->parent()->children()) { // search in siblings for a anchor to this item
QmlGraphicsItem *siblingItem = qobject_cast<QmlGraphicsItem*>(siblingObject); QDeclarativeItem *siblingItem = qobject_cast<QDeclarativeItem*>(siblingObject);
if (siblingItem) { if (siblingItem) {
if (isAnchoredTo(siblingItem, qmlGraphicsItem())) if (isAnchoredTo(siblingItem, qmlGraphicsItem()))
return true; return true;
@@ -605,13 +606,13 @@ bool QmlGraphicsItemNodeInstance::isAnchoredBy() const
QmlGraphicsItem *QmlGraphicsItemNodeInstance::qmlGraphicsItem() const QDeclarativeItem *QmlGraphicsItemNodeInstance::qmlGraphicsItem() const
{ {
if (object() == 0) if (object() == 0)
return 0; return 0;
Q_ASSERT(qobject_cast<QmlGraphicsItem*>(object())); Q_ASSERT(qobject_cast<QDeclarativeItem*>(object()));
return static_cast<QmlGraphicsItem*>(object()); return static_cast<QDeclarativeItem*>(object());
} }
} }
} }

View File

@@ -31,7 +31,7 @@
#define QMLGRAPHICSITEMNODEINSTANCE_H #define QMLGRAPHICSITEMNODEINSTANCE_H
#include "graphicsobjectnodeinstance.h" #include "graphicsobjectnodeinstance.h"
#include <QmlGraphicsItem> #include <QDeclarativeItem>
#include <QWeakPointer> #include <QWeakPointer>
@@ -46,7 +46,7 @@ public:
~QmlGraphicsItemNodeInstance(); ~QmlGraphicsItemNodeInstance();
static Pointer create(const NodeMetaInfo &metaInfo, QmlContext *context, QObject *objectToBeWrapped); static Pointer create(const NodeMetaInfo &metaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped);
bool isQmlGraphicsItem() const; bool isQmlGraphicsItem() const;
@@ -66,8 +66,8 @@ public:
QPair<QString, NodeInstance> anchor(const QString &name) const; QPair<QString, NodeInstance> anchor(const QString &name) const;
bool isAnchoredBy() const; bool isAnchoredBy() const;
protected: protected:
QmlGraphicsItemNodeInstance(QmlGraphicsItem *item, bool hasContent); QmlGraphicsItemNodeInstance(QDeclarativeItem *item, bool hasContent);
QmlGraphicsItem *qmlGraphicsItem() const; QDeclarativeItem *qmlGraphicsItem() const;
void resetHorizontal(); void resetHorizontal();
void resetVertical(); void resetVertical();

View File

@@ -29,28 +29,28 @@
#include "qmlpropertychangesnodeinstance.h" #include "qmlpropertychangesnodeinstance.h"
#include "qmlstatenodeinstance.h" #include "qmlstatenodeinstance.h"
#include <QmlEngine> #include <QDeclarativeEngine>
#include <QmlContext> #include <QDeclarativeContext>
#include <QmlExpression> #include <QDeclarativeExpression>
#include <QmlBinding> #include <private/qdeclarativebinding_p.h>
#include <metainfo.h> #include <metainfo.h>
namespace QmlDesigner { namespace QmlDesigner {
namespace Internal { namespace Internal {
QmlPropertyChangesObject::QmlPropertyChangesObject() : QmlPropertyChangesObject::QmlPropertyChangesObject() :
QmlStateOperation(), QDeclarativeStateOperation(),
m_restoreEntryValues(true), m_restoreEntryValues(true),
m_isExplicit(false) m_isExplicit(false)
{ {
} }
QmlStateOperation::ActionList QmlPropertyChangesObject::actions() QDeclarativeStateOperation::ActionList QmlPropertyChangesObject::actions()
{ {
ActionList list; ActionList list;
foreach (const QString &property, m_properties.keys()) { foreach (const QString &property, m_properties.keys()) {
QmlAction a(m_targetObject.data(), property, m_properties.value(property)); QDeclarativeAction a(m_targetObject.data(), property, m_properties.value(property));
if (a.property.isValid()) { if (a.property.isValid()) {
a.restore = restoreEntryValues(); a.restore = restoreEntryValues();
@@ -75,10 +75,10 @@ QmlStateOperation::ActionList QmlPropertyChangesObject::actions()
// } // }
foreach (const QString &property, m_expressions.keys()) { foreach (const QString &property, m_expressions.keys()) {
QmlMetaProperty mProperty = metaProperty(property); QDeclarativeProperty mProperty = metaProperty(property);
if (mProperty.isValid()) { if (mProperty.isValid()) {
QmlAction a; QDeclarativeAction a;
a.restore = restoreEntryValues(); a.restore = restoreEntryValues();
a.property = mProperty; a.property = mProperty;
a.fromValue = a.property.read(); a.fromValue = a.property.read();
@@ -86,9 +86,9 @@ QmlStateOperation::ActionList QmlPropertyChangesObject::actions()
a.specifiedProperty = property; a.specifiedProperty = property;
if (m_isExplicit) { if (m_isExplicit) {
a.toValue = QmlExpression(qmlContext(object()), m_expressions.value(property), object()).value(); a.toValue = QDeclarativeExpression(qmlContext(object()), m_expressions.value(property), object()).value();
} else { } else {
QmlBinding *newBinding = new QmlBinding(m_expressions.value(property), object(), qmlContext(object())); QDeclarativeBinding *newBinding = new QDeclarativeBinding(m_expressions.value(property), object(), qmlContext(object()));
newBinding->setTarget(mProperty); newBinding->setTarget(mProperty);
a.toBinding = newBinding; a.toBinding = newBinding;
a.deletableToBinding = true; a.deletableToBinding = true;
@@ -101,15 +101,15 @@ QmlStateOperation::ActionList QmlPropertyChangesObject::actions()
return list; return list;
} }
QmlMetaProperty QmlPropertyChangesObject::metaProperty(const QString &property) QDeclarativeProperty QmlPropertyChangesObject::metaProperty(const QString &property)
{ {
QmlMetaProperty prop = QmlMetaProperty::createProperty(m_targetObject.data(), property); QDeclarativeProperty prop(m_targetObject.data(), property);
if (!prop.isValid()) { if (!prop.isValid()) {
qWarning() << "Cannot assign to non-existent property" << property; qWarning() << "Cannot assign to non-existent property" << property;
return QmlMetaProperty(); return QDeclarativeProperty();
} else if (!prop.isWritable()) { } else if (!prop.isWritable()) {
qWarning() << "Cannot assign to read-only property" << property; qWarning() << "Cannot assign to read-only property" << property;
return QmlMetaProperty(); return QDeclarativeProperty();
} }
return prop; return prop;
} }
@@ -121,13 +121,13 @@ QmlPropertyChangesNodeInstance::QmlPropertyChangesNodeInstance(QmlPropertyChange
QmlPropertyChangesNodeInstance::Pointer QmlPropertyChangesNodeInstance::Pointer
QmlPropertyChangesNodeInstance::create(const NodeMetaInfo & /*metaInfo*/, QmlPropertyChangesNodeInstance::create(const NodeMetaInfo & /*metaInfo*/,
QmlContext *context, QDeclarativeContext *context,
QObject *objectToBeWrapped) QObject *objectToBeWrapped)
{ {
Q_ASSERT(!objectToBeWrapped); Q_ASSERT(!objectToBeWrapped);
QmlPropertyChangesObject *object = new QmlPropertyChangesObject; QmlPropertyChangesObject *object = new QmlPropertyChangesObject;
QmlEngine::setContextForObject(object, context); QDeclarativeEngine::setContextForObject(object, context);
Pointer instance(new QmlPropertyChangesNodeInstance(object)); Pointer instance(new QmlPropertyChangesNodeInstance(object));
return instance; return instance;
} }
@@ -202,5 +202,3 @@ void QmlPropertyChangesNodeInstance::updateStateInstance() const
} // namespace Internal } // namespace Internal
} // namespace QmlDesigner } // namespace QmlDesigner
QML_DEFINE_NOCREATE_TYPE(QmlDesigner::Internal::QmlPropertyChangesObject)

View File

@@ -31,7 +31,7 @@
#define QMLPROPERTYCHANGESNODEINSTANCE_H #define QMLPROPERTYCHANGESNODEINSTANCE_H
#include "objectnodeinstance.h" #include "objectnodeinstance.h"
#include <private/qmlstateoperations_p.h> #include <private/qdeclarativestateoperations_p.h>
namespace QmlDesigner { namespace QmlDesigner {
@@ -41,7 +41,7 @@ class QmlPropertyChangesNodeInstance;
// Original QmlPropertyChanges class requires a custom parser // Original QmlPropertyChanges class requires a custom parser
// work around this by writing a replacement class // work around this by writing a replacement class
class QmlPropertyChangesObject : public QmlStateOperation class QmlPropertyChangesObject : public QDeclarativeStateOperation
{ {
Q_OBJECT Q_OBJECT
Q_PROPERTY(QObject *target READ object WRITE setObject) Q_PROPERTY(QObject *target READ object WRITE setObject)
@@ -64,7 +64,7 @@ private:
friend class QmlPropertyChangesNodeInstance; friend class QmlPropertyChangesNodeInstance;
QmlPropertyChangesObject(); QmlPropertyChangesObject();
QmlMetaProperty metaProperty(const QString &property); QDeclarativeProperty metaProperty(const QString &property);
QWeakPointer<QObject> m_targetObject; QWeakPointer<QObject> m_targetObject;
bool m_restoreEntryValues; bool m_restoreEntryValues;
@@ -81,7 +81,7 @@ public:
typedef QSharedPointer<QmlPropertyChangesNodeInstance> Pointer; typedef QSharedPointer<QmlPropertyChangesNodeInstance> Pointer;
typedef QWeakPointer<QmlPropertyChangesNodeInstance> WeakPointer; typedef QWeakPointer<QmlPropertyChangesNodeInstance> WeakPointer;
static Pointer create(const NodeMetaInfo &metaInfo, QmlContext *context, QObject *objectToBeWrapped); static Pointer create(const NodeMetaInfo &metaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped);
virtual void setPropertyVariant(const QString &name, const QVariant &value); virtual void setPropertyVariant(const QString &name, const QVariant &value);
virtual void setPropertyBinding(const QString &name, const QString &expression); virtual void setPropertyBinding(const QString &name, const QString &expression);

View File

@@ -28,7 +28,7 @@
**************************************************************************/ **************************************************************************/
#include "qmlstatenodeinstance.h" #include "qmlstatenodeinstance.h"
#include <private/qmlstategroup_p.h> #include <private/qdeclarativestategroup_p.h>
namespace QmlDesigner { namespace QmlDesigner {
namespace Internal { namespace Internal {
@@ -36,23 +36,23 @@ namespace Internal {
/** /**
\class QmlStateNodeInstance \class QmlStateNodeInstance
QmlStateNodeInstance manages a QmlState object. One can activate / deactivate a state QmlStateNodeInstance manages a QDeclarativeState object. One can activate / deactivate a state
by setting/unsetting the special "__activateState" boolean property. by setting/unsetting the special "__activateState" boolean property.
*/ */
QmlStateNodeInstance::QmlStateNodeInstance(QmlState *object) : QmlStateNodeInstance::QmlStateNodeInstance(QDeclarativeState *object) :
ObjectNodeInstance(object) ObjectNodeInstance(object)
{ {
} }
QmlStateNodeInstance::Pointer QmlStateNodeInstance::Pointer
QmlStateNodeInstance::create(const NodeMetaInfo &metaInfo, QmlStateNodeInstance::create(const NodeMetaInfo &metaInfo,
QmlContext *context, QDeclarativeContext *context,
QObject *objectToBeWrapped) QObject *objectToBeWrapped)
{ {
Q_ASSERT(!objectToBeWrapped); Q_ASSERT(!objectToBeWrapped);
QObject *object = createObject(metaInfo, context); QObject *object = createObject(metaInfo, context);
QmlState *stateObject = qobject_cast<QmlState*>(object); QDeclarativeState *stateObject = qobject_cast<QDeclarativeState*>(object);
Q_ASSERT(stateObject); Q_ASSERT(stateObject);
Pointer instance(new QmlStateNodeInstance(stateObject)); Pointer instance(new QmlStateNodeInstance(stateObject));
@@ -86,14 +86,14 @@ void QmlStateNodeInstance::refreshState()
nodeInstanceView()->setBlockStatePropertyChanges(false); nodeInstanceView()->setBlockStatePropertyChanges(false);
} }
QmlState *QmlStateNodeInstance::stateObject() const QDeclarativeState *QmlStateNodeInstance::stateObject() const
{ {
Q_ASSERT(object()); Q_ASSERT(object());
Q_ASSERT(qobject_cast<QmlState*>(object())); Q_ASSERT(qobject_cast<QDeclarativeState*>(object()));
return static_cast<QmlState*>(object()); return static_cast<QDeclarativeState*>(object());
} }
QmlStateGroup *QmlStateNodeInstance::stateGroup() const QDeclarativeStateGroup *QmlStateNodeInstance::stateGroup() const
{ {
return stateObject()->stateGroup(); return stateObject()->stateGroup();
} }

View File

@@ -31,7 +31,7 @@
#define QMLSTATENODEINSTANCE_H #define QMLSTATENODEINSTANCE_H
#include "objectnodeinstance.h" #include "objectnodeinstance.h"
#include <private/qmlstate_p.h> #include <private/qdeclarativestate_p.h>
namespace QmlDesigner { namespace QmlDesigner {
@@ -43,19 +43,19 @@ public:
typedef QSharedPointer<QmlStateNodeInstance> Pointer; typedef QSharedPointer<QmlStateNodeInstance> Pointer;
typedef QWeakPointer<QmlStateNodeInstance> WeakPointer; typedef QWeakPointer<QmlStateNodeInstance> WeakPointer;
static Pointer create(const NodeMetaInfo &metaInfo, QmlContext *context, QObject *objectToBeWrapped); static Pointer create(const NodeMetaInfo &metaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped);
void activateState(); void activateState();
void deactivateState(); void deactivateState();
void refreshState(); void refreshState();
protected: protected:
QmlStateNodeInstance(QmlState *object); QmlStateNodeInstance(QDeclarativeState *object);
bool isStateActive() const; bool isStateActive() const;
QmlState *stateObject() const; QDeclarativeState *stateObject() const;
QmlStateGroup *stateGroup() const; QDeclarativeStateGroup *stateGroup() const;
}; };
} // namespace Internal } // namespace Internal

View File

@@ -28,19 +28,19 @@
**************************************************************************/ **************************************************************************/
#include "qmltransitionnodeinstance.h" #include "qmltransitionnodeinstance.h"
#include <private/qmltransition_p.h> #include <private/qdeclarativetransition_p.h>
#include <nodemetainfo.h> #include <nodemetainfo.h>
#include "invalidnodeinstanceexception.h" #include "invalidnodeinstanceexception.h"
namespace QmlDesigner { namespace QmlDesigner {
namespace Internal { namespace Internal {
QmlTransitionNodeInstance::QmlTransitionNodeInstance(QmlTransition *transition) QmlTransitionNodeInstance::QmlTransitionNodeInstance(QDeclarativeTransition *transition)
: ObjectNodeInstance(transition) : ObjectNodeInstance(transition)
{ {
} }
QmlTransitionNodeInstance::Pointer QmlTransitionNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, QmlContext *context, QObject *objectToBeWrapped) QmlTransitionNodeInstance::Pointer QmlTransitionNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped)
{ {
QObject *object = 0; QObject *object = 0;
if (objectToBeWrapped) if (objectToBeWrapped)
@@ -48,7 +48,7 @@ QmlTransitionNodeInstance::Pointer QmlTransitionNodeInstance::create(const NodeM
else else
object = createObject(nodeMetaInfo, context); object = createObject(nodeMetaInfo, context);
QmlTransition *transition = qobject_cast<QmlTransition*>(object); QDeclarativeTransition *transition = qobject_cast<QDeclarativeTransition*>(object);
if (transition == 0) if (transition == 0)
throw InvalidNodeInstanceException(__LINE__, __FUNCTION__, __FILE__); throw InvalidNodeInstanceException(__LINE__, __FUNCTION__, __FILE__);
@@ -78,10 +78,10 @@ void QmlTransitionNodeInstance::setPropertyVariant(const QString &name, const QV
ObjectNodeInstance::setPropertyVariant(name, value); ObjectNodeInstance::setPropertyVariant(name, value);
} }
QmlTransition *QmlTransitionNodeInstance::qmlTransition() const QDeclarativeTransition *QmlTransitionNodeInstance::qmlTransition() const
{ {
Q_ASSERT(qobject_cast<QmlTransition*>(object())); Q_ASSERT(qobject_cast<QDeclarativeTransition*>(object()));
return static_cast<QmlTransition*>(object()); return static_cast<QDeclarativeTransition*>(object());
} }
} }
} }

View File

@@ -33,7 +33,7 @@
#include "objectnodeinstance.h" #include "objectnodeinstance.h"
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
class QmlTransition; class QDeclarativeTransition;
QT_END_NAMESPACE QT_END_NAMESPACE
namespace QmlDesigner { namespace QmlDesigner {
@@ -45,17 +45,17 @@ public:
typedef QSharedPointer<QmlTransitionNodeInstance> Pointer; typedef QSharedPointer<QmlTransitionNodeInstance> Pointer;
typedef QWeakPointer<QmlTransitionNodeInstance> WeakPointer; typedef QWeakPointer<QmlTransitionNodeInstance> WeakPointer;
static Pointer create(const NodeMetaInfo &metaInfo, QmlContext *context, QObject *objectToBeWrapped); static Pointer create(const NodeMetaInfo &metaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped);
void setPropertyVariant(const QString &name, const QVariant &value); void setPropertyVariant(const QString &name, const QVariant &value);
bool isTransition() const; bool isTransition() const;
protected: protected:
QmlTransition *qmlTransition() const; QDeclarativeTransition *qmlTransition() const;
private: private:
QmlTransitionNodeInstance(QmlTransition *transition); QmlTransitionNodeInstance(QDeclarativeTransition *transition);
}; };
} }
} }

View File

@@ -30,22 +30,22 @@
#include "qmlviewnodeinstance.h" #include "qmlviewnodeinstance.h"
#include <QmlMetaType> #include <private/qdeclarativemetatype_p.h>
#include <QmlView> #include <QDeclarativeView>
#include <QmlGraphicsItem> #include <QDeclarativeItem>
#include <invalidnodeinstanceexception.h> #include <invalidnodeinstanceexception.h>
namespace QmlDesigner { namespace QmlDesigner {
namespace Internal { namespace Internal {
QmlViewNodeInstance::QmlViewNodeInstance(QmlView *view) QDeclarativeViewNodeInstance::QDeclarativeViewNodeInstance(QDeclarativeView *view)
: GraphicsViewNodeInstance(view) : GraphicsViewNodeInstance(view)
{ {
} }
QmlViewNodeInstance::Pointer QmlViewNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, QmlContext *context, QObject *objectToBeWrapped) QDeclarativeViewNodeInstance::Pointer QDeclarativeViewNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped)
{ {
QObject *object = 0; QObject *object = 0;
if (objectToBeWrapped) if (objectToBeWrapped)
@@ -53,11 +53,11 @@ QmlViewNodeInstance::Pointer QmlViewNodeInstance::create(const NodeMetaInfo &nod
else else
createObject(nodeMetaInfo, context); createObject(nodeMetaInfo, context);
QmlView* view = qobject_cast<QmlView*>(object); QDeclarativeView* view = qobject_cast<QDeclarativeView*>(object);
if (view == 0) if (view == 0)
throw InvalidNodeInstanceException(__LINE__, __FUNCTION__, __FILE__); throw InvalidNodeInstanceException(__LINE__, __FUNCTION__, __FILE__);
Pointer instance(new QmlViewNodeInstance(view)); Pointer instance(new QDeclarativeViewNodeInstance(view));
if (objectToBeWrapped) if (objectToBeWrapped)
instance->setDeleteHeldInstance(false); // the object isn't owned instance->setDeleteHeldInstance(false); // the object isn't owned
@@ -67,22 +67,22 @@ QmlViewNodeInstance::Pointer QmlViewNodeInstance::create(const NodeMetaInfo &nod
return instance; return instance;
} }
QmlView* QmlViewNodeInstance::view() const QDeclarativeView* QDeclarativeViewNodeInstance::view() const
{ {
QmlView* view = qobject_cast<QmlView*>(widget()); QDeclarativeView* view = qobject_cast<QDeclarativeView*>(widget());
Q_ASSERT(view); Q_ASSERT(view);
return view; return view;
} }
bool QmlViewNodeInstance::isQmlView() const bool QDeclarativeViewNodeInstance::isQDeclarativeView() const
{ {
return true; return true;
} }
void QmlViewNodeInstance::addItem(QmlGraphicsItem *item) void QDeclarativeViewNodeInstance::addItem(QDeclarativeItem *item)
{ {
QmlGraphicsItem *rootItem = qobject_cast<QmlGraphicsItem *>(view()->rootObject()); QDeclarativeItem *rootItem = qobject_cast<QDeclarativeItem *>(view()->rootObject());
Q_ASSERT_X(rootItem, Q_FUNC_INFO, "root item is QmlGraphicsItem based"); Q_ASSERT_X(rootItem, Q_FUNC_INFO, "root item is QDeclarativeItem based");
item->setParent(rootItem); item->setParent(rootItem);
} }

View File

@@ -31,30 +31,30 @@
#define QMLVIEWNODEINSTANCE_H #define QMLVIEWNODEINSTANCE_H
#include <QWeakPointer> #include <QWeakPointer>
#include <QmlView> #include <QDeclarativeView>
#include <QmlGraphicsItem> #include <QDeclarativeItem>
#include "graphicsviewnodeinstance.h" #include "graphicsviewnodeinstance.h"
namespace QmlDesigner { namespace QmlDesigner {
namespace Internal { namespace Internal {
class QmlViewNodeInstance : public GraphicsViewNodeInstance class QDeclarativeViewNodeInstance : public GraphicsViewNodeInstance
{ {
public: public:
typedef QSharedPointer<QmlViewNodeInstance> Pointer; typedef QSharedPointer<QDeclarativeViewNodeInstance> Pointer;
typedef QWeakPointer<QmlViewNodeInstance> WeakPointer; typedef QWeakPointer<QDeclarativeViewNodeInstance> WeakPointer;
static Pointer create(const NodeMetaInfo &metaInfo, QmlContext *context, QObject *objectToBeWrapped); static Pointer create(const NodeMetaInfo &metaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped);
bool isQmlView() const; bool isQDeclarativeView() const;
void addItem(QmlGraphicsItem *item); void addItem(QDeclarativeItem *item);
protected: protected:
QmlViewNodeInstance(QmlView *view); QDeclarativeViewNodeInstance(QDeclarativeView *view);
QmlView* view() const; QDeclarativeView* view() const;
}; };
} }

View File

@@ -29,7 +29,7 @@
#include "widgetnodeinstance.h" #include "widgetnodeinstance.h"
#include <QmlMetaType> #include <private/qdeclarativemetatype_p.h>
#include "proxywidgetnodeinstance.h" #include "proxywidgetnodeinstance.h"
#include <invalidnodeinstanceexception.h> #include <invalidnodeinstanceexception.h>
@@ -48,7 +48,7 @@ WidgetNodeInstance::~WidgetNodeInstance()
{ {
} }
WidgetNodeInstance::Pointer WidgetNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, QmlContext *context, QObject *objectToBeWrapped) WidgetNodeInstance::Pointer WidgetNodeInstance::create(const NodeMetaInfo &nodeMetaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped)
{ {
QObject *object = 0; QObject *object = 0;
if (objectToBeWrapped) if (objectToBeWrapped)

View File

@@ -43,7 +43,7 @@ public:
typedef QSharedPointer<WidgetNodeInstance> Pointer; typedef QSharedPointer<WidgetNodeInstance> Pointer;
typedef QWeakPointer<WidgetNodeInstance> WeakPointer; typedef QWeakPointer<WidgetNodeInstance> WeakPointer;
static Pointer create(const NodeMetaInfo &metaInfo, QmlContext *context, QObject *objectToBeWrapped); static Pointer create(const NodeMetaInfo &metaInfo, QDeclarativeContext *context, QObject *objectToBeWrapped);
void paint(QPainter *painter) const; void paint(QPainter *painter) const;

View File

@@ -44,9 +44,9 @@
#include <QPair> #include <QPair>
#include <QtAlgorithms> #include <QtAlgorithms>
#include <QMetaProperty> #include <QMetaProperty>
#include <QmlEngine> #include <QDeclarativeEngine>
#include <QmlMetaType> #include <private/qdeclarativemetatype_p.h>
#include <private/qmlgraphicsanchors_p.h> #include <private/qdeclarativeanchors_p.h>
enum { enum {
debug = false debug = false
@@ -109,7 +109,7 @@ void MetaInfoPrivate::initialize()
{ {
// make sure QmlGraphicsItemsModule gets initialized, that is // make sure QmlGraphicsItemsModule gets initialized, that is
// QmlGraphicsItemsModule::defineModule called // QmlGraphicsItemsModule::defineModule called
QmlEngine engine; QDeclarativeEngine engine;
Q_UNUSED(engine); Q_UNUSED(engine);
parseQmlTypes(); parseQmlTypes();
@@ -191,7 +191,7 @@ void MetaInfoPrivate::parseNonQmlClassRecursively(const QMetaObject *qMetaObject
Q_ASSERT_X(qMetaObject, Q_FUNC_INFO, "invalid QMetaObject"); Q_ASSERT_X(qMetaObject, Q_FUNC_INFO, "invalid QMetaObject");
const QString className = qMetaObject->className(); const QString className = qMetaObject->className();
if ( !m_q->hasNodeMetaInfo(className) if ( !m_q->hasNodeMetaInfo(className)
&& !QmlMetaType::qmlTypeNames().contains(typeName(qMetaObject).toAscii()) ) { && !QDeclarativeMetaType::qmlTypeNames().contains(typeName(qMetaObject).toAscii()) ) {
NodeMetaInfo nodeMetaInfo(*m_q); NodeMetaInfo nodeMetaInfo(*m_q);
nodeMetaInfo.setTypeName(typeName(qMetaObject)); nodeMetaInfo.setTypeName(typeName(qMetaObject));
parseProperties(nodeMetaInfo, qMetaObject); parseProperties(nodeMetaInfo, qMetaObject);
@@ -213,7 +213,7 @@ QString MetaInfoPrivate::typeName(const QMetaObject *qMetaObject) const
if (!qMetaObject) if (!qMetaObject)
return QString(); return QString();
QString className = qMetaObject->className(); QString className = qMetaObject->className();
if (QmlType *qmlType = QmlMetaType::qmlType(qMetaObject)) { if (QDeclarativeType *qmlType = QDeclarativeMetaType::qmlType(qMetaObject)) {
QString qmlClassName(qmlType->qmlTypeName()); QString qmlClassName(qmlType->qmlTypeName());
if (!qmlClassName.isEmpty()) if (!qmlClassName.isEmpty())
className = qmlType->qmlTypeName(); // Ensure that we always use the qml name, className = qmlType->qmlTypeName(); // Ensure that we always use the qml name,
@@ -271,12 +271,12 @@ void MetaInfoPrivate::parseValueTypes()
void MetaInfoPrivate::parseQmlTypes() void MetaInfoPrivate::parseQmlTypes()
{ {
foreach (QmlType *qmlType, QmlMetaType::qmlTypes()) { foreach (QDeclarativeType *qmlType, QDeclarativeMetaType::qmlTypes()) {
const QString qtTypeName(qmlType->typeName()); const QString qtTypeName(qmlType->typeName());
const QString qmlTypeName(qmlType->qmlTypeName()); const QString qmlTypeName(qmlType->qmlTypeName());
m_QtTypesToQmlTypes.insert(qtTypeName, qmlTypeName); m_QtTypesToQmlTypes.insert(qtTypeName, qmlTypeName);
} }
foreach (QmlType *qmlType, QmlMetaType::qmlTypes()) { foreach (QDeclarativeType *qmlType, QDeclarativeMetaType::qmlTypes()) {
const QMetaObject *qMetaObject = qmlType->metaObject(); const QMetaObject *qMetaObject = qmlType->metaObject();
// parseQmlTypes is called iteratively e.g. when plugins are loaded // parseQmlTypes is called iteratively e.g. when plugins are loaded
@@ -305,11 +305,11 @@ void MetaInfoPrivate::parseQmlTypes()
void MetaInfoPrivate::parseNonQmlTypes() void MetaInfoPrivate::parseNonQmlTypes()
{ {
foreach (QmlType *qmlType, QmlMetaType::qmlTypes()) { foreach (QDeclarativeType *qmlType, QDeclarativeMetaType::qmlTypes()) {
parseNonQmlClassRecursively(qmlType->metaObject()); parseNonQmlClassRecursively(qmlType->metaObject());
} }
parseNonQmlClassRecursively(&QmlGraphicsAnchors::staticMetaObject); parseNonQmlClassRecursively(&QDeclarativeAnchors::staticMetaObject);
} }

View File

@@ -39,11 +39,11 @@
#include <QtCore/QSharedData> #include <QtCore/QSharedData>
#include <QtCore/QtDebug> #include <QtCore/QtDebug>
#include <QtGui/QIcon> #include <QtGui/QIcon>
#include <QtDeclarative/QmlMetaType> #include <QtDeclarative/private/qdeclarativemetatype_p.h>
#include <QtDeclarative/QmlContext> #include <QtDeclarative/QDeclarativeContext>
#include <QtDeclarative/QmlEngine> #include <QtDeclarative/QDeclarativeEngine>
#include <QtDeclarative/QmlComponent> #include <QtDeclarative/QDeclarativeComponent>
#include <private/qmlvaluetype_p.h> #include <private/qdeclarativevaluetype_p.h>
namespace QmlDesigner { namespace QmlDesigner {
@@ -159,7 +159,7 @@ MetaInfo NodeMetaInfo::metaInfo() const
\throws InvalidArgumentException when the context argument is a null pointer \throws InvalidArgumentException when the context argument is a null pointer
\throws InvalidMetaInfoException if the object is not valid \throws InvalidMetaInfoException if the object is not valid
*/ */
QObject *NodeMetaInfo::createInstance(QmlContext *context) const QObject *NodeMetaInfo::createInstance(QDeclarativeContext *context) const
{ {
if (!context) { if (!context) {
Q_ASSERT_X(0, Q_FUNC_INFO, "Context cannot be null"); Q_ASSERT_X(0, Q_FUNC_INFO, "Context cannot be null");
@@ -175,13 +175,13 @@ QObject *NodeMetaInfo::createInstance(QmlContext *context) const
if (isComponent()) { if (isComponent()) {
// qml component // qml component
// TODO: This is maybe expensive ... // TODO: This is maybe expensive ...
QmlComponent component(context->engine(), QUrl::fromLocalFile(m_data->qmlFile)); QDeclarativeComponent component(context->engine(), QUrl::fromLocalFile(m_data->qmlFile));
object = component.create(context); object = component.create(context);
} else { } else {
// primitive // primitive
object = QmlMetaType::qmlType(typeName().toAscii(), 4, 6)->create(); object = QDeclarativeMetaType::qmlType(typeName().toAscii(), 4, 6)->create();
if (object && context) if (object && context)
QmlEngine::setContextForObject(object, context); QDeclarativeEngine::setContextForObject(object, context);
} }
return object; return object;
} }
@@ -418,7 +418,7 @@ void NodeMetaInfo::addProperty(const PropertyMetaInfo &property)
/*! /*!
\brief Returns the name of the qml type. \brief Returns the name of the qml type.
This is not necessarily the class name: E.g. the class defining "Item" is QmlGraphicsItem. This is not necessarily the class name: E.g. the class defining "Item" is QDeclarativeItem.
\throws InvalidMetaInfoException if the object is not valid \throws InvalidMetaInfoException if the object is not valid
*/ */
@@ -655,7 +655,7 @@ bool NodeMetaInfo::isGraphicsObject() const
} }
/*! /*!
\brief Returns whether the type inherits from "Item/QmlGraphicsItem". \brief Returns whether the type inherits from "Item/QDeclarativeItem".
\throws InvalidMetaInfoException if the object is not valid \throws InvalidMetaInfoException if the object is not valid
*/ */

View File

@@ -34,8 +34,8 @@
#include "invalidmetainfoexception.h" #include "invalidmetainfoexception.h"
#include "metainfo.h" #include "metainfo.h"
#include "modelnode.h" #include "modelnode.h"
#include <private/qmlvaluetype_p.h> #include <private/qdeclarativevaluetype_p.h>
#include <private/qmlstringconverters_p.h> #include <private/qdeclarativestringconverters_p.h>
namespace QmlDesigner { namespace QmlDesigner {
@@ -255,12 +255,12 @@ bool PropertyMetaInfo::isValueType() const
throw InvalidMetaInfoException(__LINE__, Q_FUNC_INFO, __FILE__); throw InvalidMetaInfoException(__LINE__, Q_FUNC_INFO, __FILE__);
} }
QmlValueType *valueType(QmlValueTypeFactory::valueType(variantTypeId())); QDeclarativeValueType *valueType(QDeclarativeValueTypeFactory::valueType(variantTypeId()));
return valueType; return valueType;
} }
/*! /*!
\brief Returns whether the propery is a QmlList. \brief Returns whether the propery is a QDeclarativeList.
*/ */
bool PropertyMetaInfo::isListProperty() const bool PropertyMetaInfo::isListProperty() const
{ {
@@ -269,7 +269,7 @@ bool PropertyMetaInfo::isListProperty() const
throw InvalidMetaInfoException(__LINE__, Q_FUNC_INFO, __FILE__); throw InvalidMetaInfoException(__LINE__, Q_FUNC_INFO, __FILE__);
} }
return type().contains("QmlList"); return type().contains("QDeclarativeList");
} }
/*! /*!
@@ -435,7 +435,7 @@ QVariant PropertyMetaInfo::castedValue(const QVariant &originalVariant) const
return variant; return variant;
} }
return QmlStringConverters::variantFromString(variant.toString()); return QDeclarativeStringConverters::variantFromString(variant.toString());
} }
} }

View File

@@ -33,10 +33,10 @@
#include <QDir> #include <QDir>
#include <QMetaType> #include <QMetaType>
#include <QUrl> #include <QUrl>
#include <QmlEngine> #include <QDeclarativeEngine>
#include <QmlMetaType> #include <private/qdeclarativemetatype_p.h>
#include <QFileSystemWatcher> #include <QFileSystemWatcher>
#include <private/qmldom_p.h> #include <private/qdeclarativedom_p.h>
enum { debug = false }; enum { debug = false };
@@ -68,7 +68,7 @@ class SubComponentManagerPrivate : QObject {
public: public:
SubComponentManagerPrivate(MetaInfo metaInfo, SubComponentManager *q); SubComponentManagerPrivate(MetaInfo metaInfo, SubComponentManager *q);
void addImport(int pos, const QmlDomImport &import); void addImport(int pos, const QDeclarativeDomImport &import);
void removeImport(int pos); void removeImport(int pos);
void parseDirectories(); void parseDirectories();
@@ -79,12 +79,12 @@ public slots:
public: public:
QList<QFileInfo> watchedFiles(const QDir &dirInfo); QList<QFileInfo> watchedFiles(const QDir &dirInfo);
void unregisterQmlFile(const QFileInfo &fileInfo, const QString &qualifier); void unregisterQmlFile(const QFileInfo &fileInfo, const QString &qualifier);
void registerQmlFile(const QFileInfo &fileInfo, const QString &qualifier, const QmlDomDocument &document); void registerQmlFile(const QFileInfo &fileInfo, const QString &qualifier, const QDeclarativeDomDocument &document);
SubComponentManager *m_q; SubComponentManager *m_q;
MetaInfo m_metaInfo; MetaInfo m_metaInfo;
QmlEngine m_engine; QDeclarativeEngine m_engine;
QFileSystemWatcher m_watcher; QFileSystemWatcher m_watcher;
@@ -92,7 +92,7 @@ public:
QUrl m_filePath; QUrl m_filePath;
QList<QmlDomImport> m_imports; QList<QDeclarativeDomImport> m_imports;
}; };
SubComponentManagerPrivate::SubComponentManagerPrivate(MetaInfo metaInfo, SubComponentManager *q) : SubComponentManagerPrivate::SubComponentManagerPrivate(MetaInfo metaInfo, SubComponentManager *q) :
@@ -103,19 +103,19 @@ SubComponentManagerPrivate::SubComponentManagerPrivate(MetaInfo metaInfo, SubCom
connect(&m_watcher, SIGNAL(fileChanged(QString)), this, SLOT(parseFile(QString))); connect(&m_watcher, SIGNAL(fileChanged(QString)), this, SLOT(parseFile(QString)));
} }
void SubComponentManagerPrivate::addImport(int pos, const QmlDomImport &import) void SubComponentManagerPrivate::addImport(int pos, const QDeclarativeDomImport &import)
{ {
if (debug) if (debug)
qDebug() << Q_FUNC_INFO << pos << import.uri(); qDebug() << Q_FUNC_INFO << pos << import.uri();
if (import.type() == QmlDomImport::File) { if (import.type() == QDeclarativeDomImport::File) {
QFileInfo dirInfo = QFileInfo(m_filePath.resolved(import.uri()).toLocalFile()); QFileInfo dirInfo = QFileInfo(m_filePath.resolved(import.uri()).toLocalFile());
if (dirInfo.exists() && dirInfo.isDir()) { if (dirInfo.exists() && dirInfo.isDir()) {
m_watcher.addPath(dirInfo.filePath()); m_watcher.addPath(dirInfo.filePath());
m_dirToQualifier.insertMulti(dirInfo, import.qualifier()); m_dirToQualifier.insertMulti(dirInfo, import.qualifier());
} }
} else { } else {
// TODO: QmlDomImport::Library // TODO: QDeclarativeDomImport::Library
} }
m_imports.insert(pos, import); m_imports.insert(pos, import);
@@ -123,9 +123,9 @@ void SubComponentManagerPrivate::addImport(int pos, const QmlDomImport &import)
void SubComponentManagerPrivate::removeImport(int pos) void SubComponentManagerPrivate::removeImport(int pos)
{ {
const QmlDomImport import = m_imports.takeAt(pos); const QDeclarativeDomImport import = m_imports.takeAt(pos);
if (import.type() == QmlDomImport::File) { if (import.type() == QDeclarativeDomImport::File) {
QFileInfo dirInfo = QFileInfo(m_filePath.resolved(import.uri()).toLocalFile()); QFileInfo dirInfo = QFileInfo(m_filePath.resolved(import.uri()).toLocalFile());
m_dirToQualifier.remove(dirInfo, import.qualifier()); m_dirToQualifier.remove(dirInfo, import.qualifier());
@@ -139,7 +139,7 @@ void SubComponentManagerPrivate::removeImport(int pos)
unregisterQmlFile(monitoredFile, import.qualifier()); unregisterQmlFile(monitoredFile, import.qualifier());
} }
} else { } else {
// TODO: QmlDomImport::Library // TODO: QDeclarativeDomImport::Library
} }
} }
@@ -152,8 +152,8 @@ void SubComponentManagerPrivate::parseDirectories()
parseDirectory(dirInfo.filePath()); parseDirectory(dirInfo.filePath());
} }
foreach (const QmlDomImport &import, m_imports) { foreach (const QDeclarativeDomImport &import, m_imports) {
if (import.type() == QmlDomImport::File) { if (import.type() == QDeclarativeDomImport::File) {
QFileInfo dirInfo = QFileInfo(m_filePath.resolved(import.uri()).toLocalFile()); QFileInfo dirInfo = QFileInfo(m_filePath.resolved(import.uri()).toLocalFile());
if (dirInfo.exists() && dirInfo.isDir()) { if (dirInfo.exists() && dirInfo.isDir()) {
parseDirectory(dirInfo.filePath()); parseDirectory(dirInfo.filePath());
@@ -241,7 +241,7 @@ void SubComponentManagerPrivate::parseFile(const QString &filePath)
return; return;
} }
QmlDomDocument document; QDeclarativeDomDocument document;
if (!document.load(&m_engine, file.readAll(), QUrl::fromLocalFile(filePath))) { if (!document.load(&m_engine, file.readAll(), QUrl::fromLocalFile(filePath))) {
// TODO: Put the errors somewhere? // TODO: Put the errors somewhere?
qWarning() << "Could not load qml file " << filePath; qWarning() << "Could not load qml file " << filePath;
@@ -280,7 +280,7 @@ void SubComponentManagerPrivate::unregisterQmlFile(const QFileInfo &fileInfo, co
} }
} }
void SubComponentManagerPrivate::registerQmlFile(const QFileInfo &fileInfo, const QString &qualifier, const QmlDomDocument &document) void SubComponentManagerPrivate::registerQmlFile(const QFileInfo &fileInfo, const QString &qualifier, const QDeclarativeDomDocument &document)
{ {
QString componentName = fileInfo.baseName(); QString componentName = fileInfo.baseName();
if (!qualifier.isEmpty()) if (!qualifier.isEmpty())
@@ -294,7 +294,7 @@ void SubComponentManagerPrivate::registerQmlFile(const QFileInfo &fileInfo, cons
m_metaInfo.removeNodeInfo(nodeInfo); m_metaInfo.removeNodeInfo(nodeInfo);
} }
const QmlDomObject rootObject = document.rootObject(); const QDeclarativeDomObject rootObject = document.rootObject();
const QString baseType = document.rootObject().objectType(); const QString baseType = document.rootObject().objectType();
Q_ASSERT_X(!baseType.isEmpty(), Q_FUNC_INFO, "Type of root object cannot be empty"); Q_ASSERT_X(!baseType.isEmpty(), Q_FUNC_INFO, "Type of root object cannot be empty");
@@ -310,7 +310,7 @@ void SubComponentManagerPrivate::registerQmlFile(const QFileInfo &fileInfo, cons
m_metaInfo.addItemLibraryInfo(nodeInfo, componentName); m_metaInfo.addItemLibraryInfo(nodeInfo, componentName);
m_metaInfo.addNodeInfo(nodeInfo, baseType); m_metaInfo.addNodeInfo(nodeInfo, baseType);
foreach (const QmlDomDynamicProperty &dynamicProperty, document.rootObject().dynamicProperties()) { foreach (const QDeclarativeDomDynamicProperty &dynamicProperty, document.rootObject().dynamicProperties()) {
Q_ASSERT(!dynamicProperty.propertyName().isEmpty()); Q_ASSERT(!dynamicProperty.propertyName().isEmpty());
Q_ASSERT(!dynamicProperty.propertyTypeName().isEmpty()); Q_ASSERT(!dynamicProperty.propertyTypeName().isEmpty());
@@ -321,7 +321,7 @@ void SubComponentManagerPrivate::registerQmlFile(const QFileInfo &fileInfo, cons
propertyMetaInfo.setReadable(true); propertyMetaInfo.setReadable(true);
propertyMetaInfo.setWritable(true); propertyMetaInfo.setWritable(true);
QmlDomProperty defaultValue = dynamicProperty.defaultValue(); QDeclarativeDomProperty defaultValue = dynamicProperty.defaultValue();
if (defaultValue.value().isLiteral()) { if (defaultValue.value().isLiteral()) {
QVariant defaultValueVariant(defaultValue.value().toLiteral().literal()); QVariant defaultValueVariant(defaultValue.value().toLiteral().literal());
defaultValueVariant.convert((QVariant::Type) dynamicProperty.propertyType()); defaultValueVariant.convert((QVariant::Type) dynamicProperty.propertyType());
@@ -362,7 +362,7 @@ QStringList SubComponentManager::qmlFiles() const
return m_d->m_watcher.files(); return m_d->m_watcher.files();
} }
static bool importEqual(const QmlDomImport &import1, const QmlDomImport &import2) static bool importEqual(const QDeclarativeDomImport &import1, const QDeclarativeDomImport &import2)
{ {
return import1.type() == import2.type() return import1.type() == import2.type()
&& import1.uri() == import2.uri() && import1.uri() == import2.uri()
@@ -372,17 +372,17 @@ static bool importEqual(const QmlDomImport &import1, const QmlDomImport &import2
void SubComponentManager::update(const QUrl &filePath, const QByteArray &data) void SubComponentManager::update(const QUrl &filePath, const QByteArray &data)
{ {
QmlEngine engine; QDeclarativeEngine engine;
QmlDomDocument document; QDeclarativeDomDocument document;
QList<QmlDomImport> imports; QList<QDeclarativeDomImport> imports;
if (document.load(&engine, data, filePath)) if (document.load(&engine, data, filePath))
imports = document.imports(); imports = document.imports();
update(filePath, imports); update(filePath, imports);
} }
void SubComponentManager::update(const QUrl &filePath, const QList<QmlDomImport> &imports) void SubComponentManager::update(const QUrl &filePath, const QList<QDeclarativeDomImport> &imports)
{ {
if (debug) if (debug)
qDebug() << Q_FUNC_INFO << filePath << imports.size(); qDebug() << Q_FUNC_INFO << filePath << imports.size();

View File

@@ -42,7 +42,7 @@
#include "nodelistproperty.h" #include "nodelistproperty.h"
#include <QTextStream> #include <QTextStream>
#include <qmlobjectnode.h> #include <qmlobjectnode.h>
#include <qmlview.h> #include <QDeclarativeView>
namespace QmlDesigner { namespace QmlDesigner {

View File

@@ -995,7 +995,7 @@ Model *Model::create(QString type, int major, int minor)
// componentRootLocation, // componentRootLocation,
// m_d->m_rootInternalNode->baseNodeState()->location()); // m_d->m_rootInternalNode->baseNodeState()->location());
// //
// QList<QmlError> errors; // QList<QDeclarativeError> errors;
// Model *subModel = create(textModifier, m_d->m_fileUrl, &errors); // Model *subModel = create(textModifier, m_d->m_fileUrl, &errors);
// //
// Q_ASSERT(subModel); // Q_ASSERT(subModel);

View File

@@ -30,7 +30,7 @@
#include "propertyparser.h" #include "propertyparser.h"
#include <QUrl> #include <QUrl>
#include <QtCore/QDebug> #include <QtCore/QDebug>
#include <QtDeclarative/private/qmlstringconverters_p.h> #include <QtDeclarative/private/qdeclarativestringconverters_p.h>
#include <modelnode.h> #include <modelnode.h>
#include <metainfo.h> #include <metainfo.h>
@@ -71,28 +71,28 @@ QVariant read(const QString &typeStr, const QString &str)
bool conversionOk = true; bool conversionOk = true;
switch (type) { switch (type) {
case QMetaType::QPoint: case QMetaType::QPoint:
value = QmlStringConverters::pointFFromString(str, &conversionOk).toPoint(); value = QDeclarativeStringConverters::pointFFromString(str, &conversionOk).toPoint();
break; break;
case QMetaType::QPointF: case QMetaType::QPointF:
value = QmlStringConverters::pointFFromString(str, &conversionOk); value = QDeclarativeStringConverters::pointFFromString(str, &conversionOk);
break; break;
case QMetaType::QSize: case QMetaType::QSize:
value = QmlStringConverters::sizeFFromString(str, &conversionOk).toSize(); value = QDeclarativeStringConverters::sizeFFromString(str, &conversionOk).toSize();
break; break;
case QMetaType::QSizeF: case QMetaType::QSizeF:
value = QmlStringConverters::sizeFFromString(str, &conversionOk); value = QDeclarativeStringConverters::sizeFFromString(str, &conversionOk);
break; break;
case QMetaType::QRect: case QMetaType::QRect:
value = QmlStringConverters::rectFFromString(str, &conversionOk).toRect(); value = QDeclarativeStringConverters::rectFFromString(str, &conversionOk).toRect();
break; break;
case QMetaType::QRectF: case QMetaType::QRectF:
value = QmlStringConverters::rectFFromString(str, &conversionOk); value = QDeclarativeStringConverters::rectFFromString(str, &conversionOk);
break; break;
case QMetaType::QUrl: case QMetaType::QUrl:
value = QVariant(QUrl(str)); value = QVariant(QUrl(str));
break; break;
case QMetaType::QColor: case QMetaType::QColor:
value = QmlStringConverters::colorFromString(str); value = QDeclarativeStringConverters::colorFromString(str);
break; break;
default: { default: {
value = QVariant(str); value = QVariant(str);

View File

@@ -29,7 +29,7 @@
#include "qmlitemnode.h" #include "qmlitemnode.h"
#include <metainfo.h> #include <metainfo.h>
#include "qmlview.h" #include <QDeclarativeView>
#include "qmlchangeset.h" #include "qmlchangeset.h"
#include "variantproperty.h" #include "variantproperty.h"
#include "nodelistproperty.h" #include "nodelistproperty.h"

View File

@@ -62,7 +62,7 @@ RewriterView::Error::Error(Exception *exception):
{ {
} }
RewriterView::Error::Error(const QmlError &qmlError): RewriterView::Error::Error(const QDeclarativeError &qmlError):
m_type(ParseError), m_type(ParseError),
m_line(qmlError.line()), m_line(qmlError.line()),
m_column(qmlError.column()), m_column(qmlError.column()),

View File

@@ -38,9 +38,9 @@
#include "rewriterview.h" #include "rewriterview.h"
#include "variantproperty.h" #include "variantproperty.h"
#include <QmlEngine> #include <QDeclarativeEngine>
#include <QSet> #include <QSet>
#include <private/qmldom_p.h> #include <private/qdeclarativedom_p.h>
using namespace QmlDesigner; using namespace QmlDesigner;
using namespace QmlDesigner::Internal; using namespace QmlDesigner::Internal;
@@ -70,20 +70,20 @@ bool TextToModelMerger::isActive() const
return m_isActive; return m_isActive;
} }
void TextToModelMerger::setupImports(QmlDomDocument &doc, void TextToModelMerger::setupImports(QDeclarativeDomDocument &doc,
DifferenceHandler &differenceHandler) DifferenceHandler &differenceHandler)
{ {
QSet<Import> existingImports = m_rewriterView->model()->imports(); QSet<Import> existingImports = m_rewriterView->model()->imports();
foreach (const QmlDomImport &qmlImport, doc.imports()) { foreach (const QDeclarativeDomImport &qmlImport, doc.imports()) {
if (qmlImport.type() == QmlDomImport::Library) { if (qmlImport.type() == QDeclarativeDomImport::Library) {
Import import(Import::createLibraryImport(qmlImport.uri(), Import import(Import::createLibraryImport(qmlImport.uri(),
qmlImport.version(), qmlImport.version(),
qmlImport.qualifier())); qmlImport.qualifier()));
if (!existingImports.remove(import)) if (!existingImports.remove(import))
differenceHandler.modelMissesImport(import); differenceHandler.modelMissesImport(import);
} else if (qmlImport.type() == QmlDomImport::File) { } else if (qmlImport.type() == QDeclarativeDomImport::File) {
Import import(Import:: createFileImport(qmlImport.uri(), Import import(Import:: createFileImport(qmlImport.uri(),
qmlImport.version(), qmlImport.version(),
qmlImport.qualifier())); qmlImport.qualifier()));
@@ -102,22 +102,22 @@ bool TextToModelMerger::load(const QByteArray &data, DifferenceHandler &differen
setActive(true); setActive(true);
try { try {
QmlEngine engine; QDeclarativeEngine engine;
QmlDomDocument doc; QDeclarativeDomDocument doc;
const QUrl url = m_rewriterView->model()->fileUrl(); const QUrl url = m_rewriterView->model()->fileUrl();
const bool success = doc.load(&engine, data, url); const bool success = doc.load(&engine, data, url);
if (success) { if (success) {
setupImports(doc, differenceHandler); setupImports(doc, differenceHandler);
const QmlDomObject rootDomObject = doc.rootObject(); const QDeclarativeDomObject rootDomObject = doc.rootObject();
ModelNode modelRootNode = m_rewriterView->rootModelNode(); ModelNode modelRootNode = m_rewriterView->rootModelNode();
syncNode(modelRootNode, rootDomObject, differenceHandler); syncNode(modelRootNode, rootDomObject, differenceHandler);
m_rewriterView->positionStorage()->cleanupInvalidOffsets(); m_rewriterView->positionStorage()->cleanupInvalidOffsets();
m_rewriterView->clearErrors(); m_rewriterView->clearErrors();
} else { } else {
QList<RewriterView::Error> errors; QList<RewriterView::Error> errors;
foreach (const QmlError &qmlError, doc.errors()) foreach (const QDeclarativeError &qmlError, doc.errors())
errors.append(RewriterView::Error(qmlError)); errors.append(RewriterView::Error(qmlError));
m_rewriterView->setErrors(errors); m_rewriterView->setErrors(errors);
} }
@@ -139,7 +139,7 @@ bool TextToModelMerger::load(const QByteArray &data, DifferenceHandler &differen
} }
void TextToModelMerger::syncNode(ModelNode &modelNode, void TextToModelMerger::syncNode(ModelNode &modelNode,
const QmlDomObject &domObject, const QDeclarativeDomObject &domObject,
DifferenceHandler &differenceHandler) DifferenceHandler &differenceHandler)
{ {
m_rewriterView->positionStorage()->setNodeOffset(modelNode, domObject.position()); m_rewriterView->positionStorage()->setNodeOffset(modelNode, domObject.position());
@@ -155,7 +155,7 @@ void TextToModelMerger::syncNode(ModelNode &modelNode,
{ {
QString domObjectId = domObject.objectId(); QString domObjectId = domObject.objectId();
const QmlDomProperty domIdProperty = domObject.property("id"); const QDeclarativeDomProperty domIdProperty = domObject.property("id");
if (domObjectId.isEmpty() && domIdProperty.value().isLiteral()) if (domObjectId.isEmpty() && domIdProperty.value().isLiteral())
domObjectId = domIdProperty.value().toLiteral().literal(); domObjectId = domIdProperty.value().toLiteral().literal();
@@ -178,7 +178,7 @@ void TextToModelMerger::syncNode(ModelNode &modelNode,
QSet<QString> modelPropertyNames = QSet<QString>::fromList(modelNode.propertyNames()); QSet<QString> modelPropertyNames = QSet<QString>::fromList(modelNode.propertyNames());
foreach (const QmlDomProperty &domProperty, domObject.properties()) { foreach (const QDeclarativeDomProperty &domProperty, domObject.properties()) {
const QString domPropertyName = domProperty.propertyName(); const QString domPropertyName = domProperty.propertyName();
if (isSignalPropertyName(domPropertyName.toUtf8())) if (isSignalPropertyName(domPropertyName.toUtf8()))
@@ -196,7 +196,7 @@ void TextToModelMerger::syncNode(ModelNode &modelNode,
modelPropertyNames.remove(domPropertyName); modelPropertyNames.remove(domPropertyName);
continue; continue;
} else { } else {
const QmlDomDynamicProperty dynamicProperty = domObject.dynamicProperty(domProperty.propertyName()); const QDeclarativeDomDynamicProperty dynamicProperty = domObject.dynamicProperty(domProperty.propertyName());
if (dynamicProperty.isValid() || modelNode.metaInfo().hasProperty(domPropertyName, true) || modelNode.type() == QLatin1String("Qt/PropertyChanges")) { if (dynamicProperty.isValid() || modelNode.metaInfo().hasProperty(domPropertyName, true) || modelNode.type() == QLatin1String("Qt/PropertyChanges")) {
AbstractProperty modelProperty = modelNode.property(domPropertyName); AbstractProperty modelProperty = modelNode.property(domPropertyName);
syncProperty(modelProperty, domProperty, dynamicProperty, differenceHandler); syncProperty(modelProperty, domProperty, dynamicProperty, differenceHandler);
@@ -206,7 +206,7 @@ void TextToModelMerger::syncNode(ModelNode &modelNode,
} }
{ // for new dynamic properties which have no property definitions: { // for new dynamic properties which have no property definitions:
foreach (const QmlDomDynamicProperty &dynamicDomProperty, domObject.dynamicProperties()) { foreach (const QDeclarativeDomDynamicProperty &dynamicDomProperty, domObject.dynamicProperties()) {
const QByteArray propertyName = dynamicDomProperty.propertyName(); const QByteArray propertyName = dynamicDomProperty.propertyName();
if (domObject.property(propertyName).isValid()) if (domObject.property(propertyName).isValid())
continue; continue;
@@ -230,7 +230,7 @@ void TextToModelMerger::syncNode(ModelNode &modelNode,
foreach (const QString &modelPropertyName, modelPropertyNames) { foreach (const QString &modelPropertyName, modelPropertyNames) {
AbstractProperty modelProperty = modelNode.property(modelPropertyName); AbstractProperty modelProperty = modelNode.property(modelPropertyName);
const QmlDomDynamicProperty dynamicDomProperty = domObject.dynamicProperty(modelPropertyName.toUtf8()); const QDeclarativeDomDynamicProperty dynamicDomProperty = domObject.dynamicProperty(modelPropertyName.toUtf8());
if (dynamicDomProperty.isValid()) { if (dynamicDomProperty.isValid()) {
const QString dynamicTypeName = QMetaType::typeName(dynamicDomProperty.propertyType()); const QString dynamicTypeName = QMetaType::typeName(dynamicDomProperty.propertyType());
@@ -251,23 +251,23 @@ void TextToModelMerger::syncNode(ModelNode &modelNode,
} }
void TextToModelMerger::syncProperty(AbstractProperty &modelProperty, void TextToModelMerger::syncProperty(AbstractProperty &modelProperty,
const QmlDomProperty &qmlProperty, const QDeclarativeDomProperty &qmlProperty,
const QmlDomDynamicProperty &qmlDynamicProperty, const QDeclarativeDomDynamicProperty &qmlDynamicProperty,
DifferenceHandler &differenceHandler) DifferenceHandler &differenceHandler)
{ {
Q_ASSERT(modelProperty.name() == qmlProperty.propertyName()); Q_ASSERT(modelProperty.name() == qmlProperty.propertyName());
const QmlDomValue qmlValue = qmlProperty.value(); const QDeclarativeDomValue qmlValue = qmlProperty.value();
if (qmlValue.isBinding()) { if (qmlValue.isBinding()) {
const QString qmlBinding = qmlValue.toBinding().binding(); const QString QDeclarativeBinding = qmlValue.toBinding().binding();
if (modelProperty.isBindingProperty()) { if (modelProperty.isBindingProperty()) {
BindingProperty bindingProperty = modelProperty.toBindingProperty(); BindingProperty bindingProperty = modelProperty.toBindingProperty();
if (bindingProperty.expression() != qmlBinding) { if (bindingProperty.expression() != QDeclarativeBinding) {
differenceHandler.bindingExpressionsDiffer(bindingProperty, qmlBinding); differenceHandler.bindingExpressionsDiffer(bindingProperty, QDeclarativeBinding);
} }
} else { } else {
differenceHandler.shouldBeBindingProperty(modelProperty, qmlBinding); differenceHandler.shouldBeBindingProperty(modelProperty, QDeclarativeBinding);
} }
} else if (qmlValue.isList()) { } else if (qmlValue.isList()) {
if (modelProperty.isNodeListProperty()) { if (modelProperty.isNodeListProperty()) {
@@ -314,13 +314,13 @@ void TextToModelMerger::syncProperty(AbstractProperty &modelProperty,
} }
} }
void TextToModelMerger::syncNodeListProperty(NodeListProperty &modelListProperty, const QmlDomList &domList, DifferenceHandler &differenceHandler) void TextToModelMerger::syncNodeListProperty(NodeListProperty &modelListProperty, const QDeclarativeDomList &domList, DifferenceHandler &differenceHandler)
{ {
QList<ModelNode> modelNodes = modelListProperty.toModelNodeList(); QList<ModelNode> modelNodes = modelListProperty.toModelNodeList();
QList<QmlDomValue> domValues = domList.values(); QList<QDeclarativeDomValue> domValues = domList.values();
int i = 0; int i = 0;
for (; i < modelNodes.size() && i < domValues.size(); ++i) { for (; i < modelNodes.size() && i < domValues.size(); ++i) {
QmlDomValue value = domValues.at(i); QDeclarativeDomValue value = domValues.at(i);
if (value.isObject()) { if (value.isObject()) {
ModelNode modelNode = modelNodes.at(i); ModelNode modelNode = modelNodes.at(i);
syncNode(modelNode, value.toObject(), differenceHandler); syncNode(modelNode, value.toObject(), differenceHandler);
@@ -331,9 +331,9 @@ void TextToModelMerger::syncNodeListProperty(NodeListProperty &modelListProperty
for (int j = i; j < domValues.size(); ++j) { for (int j = i; j < domValues.size(); ++j) {
// more elements in the dom-list, so add them to the model // more elements in the dom-list, so add them to the model
QmlDomValue value = domValues.at(j); QDeclarativeDomValue value = domValues.at(j);
if (value.isObject()) { if (value.isObject()) {
const QmlDomObject qmlObject = value.toObject(); const QDeclarativeDomObject qmlObject = value.toObject();
const ModelNode newNode = differenceHandler.listPropertyMissingModelNode(modelListProperty, qmlObject); const ModelNode newNode = differenceHandler.listPropertyMissingModelNode(modelListProperty, qmlObject);
if (QString::fromUtf8(qmlObject.objectType()) == QLatin1String("Qt/Component")) if (QString::fromUtf8(qmlObject.objectType()) == QLatin1String("Qt/Component"))
setupComponent(newNode); setupComponent(newNode);
@@ -349,14 +349,14 @@ void TextToModelMerger::syncNodeListProperty(NodeListProperty &modelListProperty
} }
} }
ModelNode TextToModelMerger::createModelNode(const QmlDomObject &domObject, DifferenceHandler &differenceHandler) ModelNode TextToModelMerger::createModelNode(const QDeclarativeDomObject &domObject, DifferenceHandler &differenceHandler)
{ {
ModelNode newNode = m_rewriterView->createModelNode(domObject.objectType(), domObject.objectTypeMajorVersion(), domObject.objectTypeMinorVersion()); ModelNode newNode = m_rewriterView->createModelNode(domObject.objectType(), domObject.objectTypeMajorVersion(), domObject.objectTypeMinorVersion());
syncNode(newNode, domObject, differenceHandler); syncNode(newNode, domObject, differenceHandler);
return newNode; return newNode;
} }
QVariant TextToModelMerger::convertToVariant(const ModelNode &node, const QmlDomProperty &qmlProperty, const QmlDomDynamicProperty &qmlDynamicProperty) QVariant TextToModelMerger::convertToVariant(const ModelNode &node, const QDeclarativeDomProperty &qmlProperty, const QDeclarativeDomDynamicProperty &qmlDynamicProperty)
{ {
QString stringValue = qmlProperty.value().toLiteral().literal(); QString stringValue = qmlProperty.value().toLiteral().literal();
@@ -400,19 +400,19 @@ void ModelValidator::importAbsentInQMl(const Import &import)
Q_ASSERT(! m_merger->view()->model()->imports().contains(import)); Q_ASSERT(! m_merger->view()->model()->imports().contains(import));
} }
void ModelValidator::bindingExpressionsDiffer(BindingProperty &modelProperty, const QString &qmlBinding) void ModelValidator::bindingExpressionsDiffer(BindingProperty &modelProperty, const QString &QDeclarativeBinding)
{ {
Q_ASSERT(modelProperty.expression() == qmlBinding); Q_ASSERT(modelProperty.expression() == QDeclarativeBinding);
Q_ASSERT(0); Q_ASSERT(0);
} }
void ModelValidator::shouldBeBindingProperty(AbstractProperty &modelProperty, const QString &/*qmlBinding*/) void ModelValidator::shouldBeBindingProperty(AbstractProperty &modelProperty, const QString &/*QDeclarativeBinding*/)
{ {
Q_ASSERT(modelProperty.isBindingProperty()); Q_ASSERT(modelProperty.isBindingProperty());
Q_ASSERT(0); Q_ASSERT(0);
} }
void ModelValidator::shouldBeNodeListProperty(AbstractProperty &modelProperty, const QmlDomList &/*domList*/) void ModelValidator::shouldBeNodeListProperty(AbstractProperty &modelProperty, const QDeclarativeDomList &/*domList*/)
{ {
Q_ASSERT(modelProperty.isNodeListProperty()); Q_ASSERT(modelProperty.isNodeListProperty());
Q_ASSERT(0); Q_ASSERT(0);
@@ -435,7 +435,7 @@ void ModelValidator::shouldBeVariantProperty(AbstractProperty &modelProperty, co
Q_ASSERT(0); Q_ASSERT(0);
} }
void ModelValidator::shouldBeNodeProperty(AbstractProperty &modelProperty, const QmlDomObject &/*qmlObject*/) void ModelValidator::shouldBeNodeProperty(AbstractProperty &modelProperty, const QDeclarativeDomObject &/*qmlObject*/)
{ {
Q_ASSERT(modelProperty.isNodeProperty()); Q_ASSERT(modelProperty.isNodeProperty());
Q_ASSERT(0); Q_ASSERT(0);
@@ -447,13 +447,13 @@ void ModelValidator::modelNodeAbsentFromQml(ModelNode &modelNode)
Q_ASSERT(0); Q_ASSERT(0);
} }
ModelNode ModelValidator::listPropertyMissingModelNode(NodeListProperty &/*modelProperty*/, const QmlDomObject &/*qmlObject*/) ModelNode ModelValidator::listPropertyMissingModelNode(NodeListProperty &/*modelProperty*/, const QDeclarativeDomObject &/*qmlObject*/)
{ {
Q_ASSERT(0); Q_ASSERT(0);
return ModelNode(); return ModelNode();
} }
void ModelValidator::typeDiffers(bool /*isRootNode*/, ModelNode &modelNode, const QmlDomObject &domObject) void ModelValidator::typeDiffers(bool /*isRootNode*/, ModelNode &modelNode, const QDeclarativeDomObject &domObject)
{ {
Q_ASSERT(modelNode.type() == domObject.objectType()); Q_ASSERT(modelNode.type() == domObject.objectType());
Q_ASSERT(modelNode.majorVersion() == domObject.objectTypeMajorVersion()); Q_ASSERT(modelNode.majorVersion() == domObject.objectTypeMajorVersion());
@@ -483,19 +483,19 @@ void ModelAmender::importAbsentInQMl(const Import &import)
m_merger->view()->model()->removeImport(import); m_merger->view()->model()->removeImport(import);
} }
void ModelAmender::bindingExpressionsDiffer(BindingProperty &modelProperty, const QString &qmlBinding) void ModelAmender::bindingExpressionsDiffer(BindingProperty &modelProperty, const QString &QDeclarativeBinding)
{ {
modelProperty.toBindingProperty().setExpression(qmlBinding); modelProperty.toBindingProperty().setExpression(QDeclarativeBinding);
} }
void ModelAmender::shouldBeBindingProperty(AbstractProperty &modelProperty, const QString &qmlBinding) void ModelAmender::shouldBeBindingProperty(AbstractProperty &modelProperty, const QString &QDeclarativeBinding)
{ {
ModelNode theNode = modelProperty.parentModelNode(); ModelNode theNode = modelProperty.parentModelNode();
BindingProperty newModelProperty = theNode.bindingProperty(modelProperty.name()); BindingProperty newModelProperty = theNode.bindingProperty(modelProperty.name());
newModelProperty.setExpression(qmlBinding); newModelProperty.setExpression(QDeclarativeBinding);
} }
void ModelAmender::shouldBeNodeListProperty(AbstractProperty &modelProperty, const QmlDomList &domList) void ModelAmender::shouldBeNodeListProperty(AbstractProperty &modelProperty, const QDeclarativeDomList &domList)
{ {
ModelNode theNode = modelProperty.parentModelNode(); ModelNode theNode = modelProperty.parentModelNode();
NodeListProperty newNodeListProperty = theNode.nodeListProperty(modelProperty.name()); NodeListProperty newNodeListProperty = theNode.nodeListProperty(modelProperty.name());
@@ -522,7 +522,7 @@ void ModelAmender::shouldBeVariantProperty(AbstractProperty &modelProperty, cons
newModelProperty.setDynamicTypeNameAndValue(dynamicTypeName, qmlVariantValue); newModelProperty.setDynamicTypeNameAndValue(dynamicTypeName, qmlVariantValue);
} }
void ModelAmender::shouldBeNodeProperty(AbstractProperty &modelProperty, const QmlDomObject &qmlObject) void ModelAmender::shouldBeNodeProperty(AbstractProperty &modelProperty, const QDeclarativeDomObject &qmlObject)
{ {
ModelNode theNode = modelProperty.parentModelNode(); ModelNode theNode = modelProperty.parentModelNode();
NodeProperty newNodeProperty = theNode.nodeProperty(modelProperty.name()); NodeProperty newNodeProperty = theNode.nodeProperty(modelProperty.name());
@@ -534,14 +534,14 @@ void ModelAmender::modelNodeAbsentFromQml(ModelNode &modelNode)
modelNode.destroy(); modelNode.destroy();
} }
ModelNode ModelAmender::listPropertyMissingModelNode(NodeListProperty &modelProperty, const QmlDomObject &qmlObject) ModelNode ModelAmender::listPropertyMissingModelNode(NodeListProperty &modelProperty, const QDeclarativeDomObject &qmlObject)
{ {
const ModelNode &newNode = m_merger->createModelNode(qmlObject, *this); const ModelNode &newNode = m_merger->createModelNode(qmlObject, *this);
modelProperty.reparentHere(newNode); modelProperty.reparentHere(newNode);
return newNode; return newNode;
} }
void ModelAmender::typeDiffers(bool isRootNode, ModelNode &modelNode, const QmlDomObject &domObject) void ModelAmender::typeDiffers(bool isRootNode, ModelNode &modelNode, const QDeclarativeDomObject &domObject)
{ {
if (isRootNode) { if (isRootNode) {
modelNode.view()->changeRootNodeType(domObject.objectType(), domObject.objectTypeMajorVersion(), domObject.objectTypeMinorVersion()); modelNode.view()->changeRootNodeType(domObject.objectType(), domObject.objectTypeMajorVersion(), domObject.objectTypeMinorVersion());

View File

@@ -35,7 +35,7 @@
#include "nodelistproperty.h" #include "nodelistproperty.h"
#include "modelnode.h" #include "modelnode.h"
#include <private/qmldom_p.h> #include <private/qdeclarativedom_p.h>
namespace QmlDesigner { namespace QmlDesigner {
@@ -54,7 +54,7 @@ public:
TextToModelMerger(RewriterView *reWriterView); TextToModelMerger(RewriterView *reWriterView);
bool isActive() const; bool isActive() const;
void setupImports(QmlDomDocument &doc, DifferenceHandler &differenceHandler); void setupImports(QDeclarativeDomDocument &doc, DifferenceHandler &differenceHandler);
bool load(const QByteArray &data, DifferenceHandler &differenceHandler); bool load(const QByteArray &data, DifferenceHandler &differenceHandler);
RewriterView *view() const RewriterView *view() const
@@ -65,20 +65,20 @@ protected:
public: public:
void syncNode(ModelNode &modelNode, void syncNode(ModelNode &modelNode,
const QmlDomObject &qmlObject, const QDeclarativeDomObject &qmlObject,
DifferenceHandler &differenceHandler); DifferenceHandler &differenceHandler);
void syncProperty(AbstractProperty &modelProperty, void syncProperty(AbstractProperty &modelProperty,
const QmlDomProperty &qmlProperty, const QDeclarativeDomProperty &qmlProperty,
const QmlDomDynamicProperty &qmlDynamicProperty, const QDeclarativeDomDynamicProperty &qmlDynamicProperty,
DifferenceHandler &differenceHandler); DifferenceHandler &differenceHandler);
void syncNodeListProperty(NodeListProperty &modelListProperty, void syncNodeListProperty(NodeListProperty &modelListProperty,
const QmlDomList &domList, const QDeclarativeDomList &domList,
DifferenceHandler &differenceHandler); DifferenceHandler &differenceHandler);
ModelNode createModelNode(const QmlDomObject &domObject, ModelNode createModelNode(const QDeclarativeDomObject &domObject,
DifferenceHandler &differenceHandler); DifferenceHandler &differenceHandler);
static QVariant convertToVariant(const ModelNode &node, static QVariant convertToVariant(const ModelNode &node,
const QmlDomProperty &qmlProperty, const QDeclarativeDomProperty &qmlProperty,
const QmlDomDynamicProperty &qmlDynamicProperty); const QDeclarativeDomDynamicProperty &qmlDynamicProperty);
private: private:
static bool isSignalPropertyName(const QString &signalName); static bool isSignalPropertyName(const QString &signalName);
@@ -100,15 +100,15 @@ public:
virtual void modelMissesImport(const Import &import) = 0; virtual void modelMissesImport(const Import &import) = 0;
virtual void importAbsentInQMl(const Import &import) = 0; virtual void importAbsentInQMl(const Import &import) = 0;
virtual void bindingExpressionsDiffer(BindingProperty &modelProperty, const QString &qmlBinding) = 0; virtual void bindingExpressionsDiffer(BindingProperty &modelProperty, const QString &QDeclarativeBinding) = 0;
virtual void shouldBeBindingProperty(AbstractProperty &modelProperty, const QString &qmlBinding) = 0; virtual void shouldBeBindingProperty(AbstractProperty &modelProperty, const QString &QDeclarativeBinding) = 0;
virtual void shouldBeNodeListProperty(AbstractProperty &modelProperty, const QmlDomList &domList) = 0; virtual void shouldBeNodeListProperty(AbstractProperty &modelProperty, const QDeclarativeDomList &domList) = 0;
virtual void variantValuesDiffer(VariantProperty &modelProperty, const QVariant &qmlVariantValue, const QString &dynamicTypeName) = 0; virtual void variantValuesDiffer(VariantProperty &modelProperty, const QVariant &qmlVariantValue, const QString &dynamicTypeName) = 0;
virtual void shouldBeVariantProperty(AbstractProperty &modelProperty, const QVariant &qmlVariantValue, const QString &dynamicTypeName) = 0; virtual void shouldBeVariantProperty(AbstractProperty &modelProperty, const QVariant &qmlVariantValue, const QString &dynamicTypeName) = 0;
virtual void shouldBeNodeProperty(AbstractProperty &modelProperty, const QmlDomObject &qmlObject) = 0; virtual void shouldBeNodeProperty(AbstractProperty &modelProperty, const QDeclarativeDomObject &qmlObject) = 0;
virtual void modelNodeAbsentFromQml(ModelNode &modelNode) = 0; virtual void modelNodeAbsentFromQml(ModelNode &modelNode) = 0;
virtual ModelNode listPropertyMissingModelNode(NodeListProperty &modelProperty, const QmlDomObject &qmlObject) = 0; virtual ModelNode listPropertyMissingModelNode(NodeListProperty &modelProperty, const QDeclarativeDomObject &qmlObject) = 0;
virtual void typeDiffers(bool isRootNode, ModelNode &modelNode, const QmlDomObject &domObject) = 0; virtual void typeDiffers(bool isRootNode, ModelNode &modelNode, const QDeclarativeDomObject &domObject) = 0;
virtual void propertyAbsentFromQml(AbstractProperty &modelProperty) = 0; virtual void propertyAbsentFromQml(AbstractProperty &modelProperty) = 0;
virtual void idsDiffer(ModelNode &modelNode, const QString &qmlId) = 0; virtual void idsDiffer(ModelNode &modelNode, const QString &qmlId) = 0;
@@ -127,15 +127,15 @@ public:
virtual void modelMissesImport(const Import &import); virtual void modelMissesImport(const Import &import);
virtual void importAbsentInQMl(const Import &import); virtual void importAbsentInQMl(const Import &import);
virtual void bindingExpressionsDiffer(BindingProperty &modelProperty, const QString &qmlBinding); virtual void bindingExpressionsDiffer(BindingProperty &modelProperty, const QString &QDeclarativeBinding);
virtual void shouldBeBindingProperty(AbstractProperty &modelProperty, const QString &qmlBinding); virtual void shouldBeBindingProperty(AbstractProperty &modelProperty, const QString &QDeclarativeBinding);
virtual void shouldBeNodeListProperty(AbstractProperty &modelProperty, const QmlDomList &domList); virtual void shouldBeNodeListProperty(AbstractProperty &modelProperty, const QDeclarativeDomList &domList);
virtual void variantValuesDiffer(VariantProperty &modelProperty, const QVariant &qmlVariantValue, const QString &dynamicTypeName); virtual void variantValuesDiffer(VariantProperty &modelProperty, const QVariant &qmlVariantValue, const QString &dynamicTypeName);
virtual void shouldBeVariantProperty(AbstractProperty &modelProperty, const QVariant &qmlVariantValue, const QString &dynamicTypeName); virtual void shouldBeVariantProperty(AbstractProperty &modelProperty, const QVariant &qmlVariantValue, const QString &dynamicTypeName);
virtual void shouldBeNodeProperty(AbstractProperty &modelProperty, const QmlDomObject &qmlObject); virtual void shouldBeNodeProperty(AbstractProperty &modelProperty, const QDeclarativeDomObject &qmlObject);
virtual void modelNodeAbsentFromQml(ModelNode &modelNode); virtual void modelNodeAbsentFromQml(ModelNode &modelNode);
virtual ModelNode listPropertyMissingModelNode(NodeListProperty &modelProperty, const QmlDomObject &qmlObject); virtual ModelNode listPropertyMissingModelNode(NodeListProperty &modelProperty, const QDeclarativeDomObject &qmlObject);
virtual void typeDiffers(bool isRootNode, ModelNode &modelNode, const QmlDomObject &domObject); virtual void typeDiffers(bool isRootNode, ModelNode &modelNode, const QDeclarativeDomObject &domObject);
virtual void propertyAbsentFromQml(AbstractProperty &modelProperty); virtual void propertyAbsentFromQml(AbstractProperty &modelProperty);
virtual void idsDiffer(ModelNode &modelNode, const QString &qmlId); virtual void idsDiffer(ModelNode &modelNode, const QString &qmlId);
}; };
@@ -151,15 +151,15 @@ public:
virtual void modelMissesImport(const Import &import); virtual void modelMissesImport(const Import &import);
virtual void importAbsentInQMl(const Import &import); virtual void importAbsentInQMl(const Import &import);
virtual void bindingExpressionsDiffer(BindingProperty &modelProperty, const QString &qmlBinding); virtual void bindingExpressionsDiffer(BindingProperty &modelProperty, const QString &QDeclarativeBinding);
virtual void shouldBeBindingProperty(AbstractProperty &modelProperty, const QString &qmlBinding); virtual void shouldBeBindingProperty(AbstractProperty &modelProperty, const QString &QDeclarativeBinding);
virtual void shouldBeNodeListProperty(AbstractProperty &modelProperty, const QmlDomList &domList); virtual void shouldBeNodeListProperty(AbstractProperty &modelProperty, const QDeclarativeDomList &domList);
virtual void variantValuesDiffer(VariantProperty &modelProperty, const QVariant &qmlVariantValue, const QString &dynamicType); virtual void variantValuesDiffer(VariantProperty &modelProperty, const QVariant &qmlVariantValue, const QString &dynamicType);
virtual void shouldBeVariantProperty(AbstractProperty &modelProperty, const QVariant &qmlVariantValue, const QString &dynamicTypeName); virtual void shouldBeVariantProperty(AbstractProperty &modelProperty, const QVariant &qmlVariantValue, const QString &dynamicTypeName);
virtual void shouldBeNodeProperty(AbstractProperty &modelProperty, const QmlDomObject &qmlObject); virtual void shouldBeNodeProperty(AbstractProperty &modelProperty, const QDeclarativeDomObject &qmlObject);
virtual void modelNodeAbsentFromQml(ModelNode &modelNode); virtual void modelNodeAbsentFromQml(ModelNode &modelNode);
virtual ModelNode listPropertyMissingModelNode(NodeListProperty &modelProperty, const QmlDomObject &qmlObject); virtual ModelNode listPropertyMissingModelNode(NodeListProperty &modelProperty, const QDeclarativeDomObject &qmlObject);
virtual void typeDiffers(bool isRootNode, ModelNode &modelNode, const QmlDomObject &domObject); virtual void typeDiffers(bool isRootNode, ModelNode &modelNode, const QDeclarativeDomObject &domObject);
virtual void propertyAbsentFromQml(AbstractProperty &modelProperty); virtual void propertyAbsentFromQml(AbstractProperty &modelProperty);
virtual void idsDiffer(ModelNode &modelNode, const QString &qmlId); virtual void idsDiffer(ModelNode &modelNode, const QString &qmlId);
}; };

View File

@@ -28,7 +28,7 @@
**************************************************************************/ **************************************************************************/
#include "variantparser.h" #include "variantparser.h"
#include <private/qmlvaluetype_p.h> #include <private/qdeclarativevaluetype_p.h>
#include <QPoint> #include <QPoint>
#include <QPointF> #include <QPointF>
@@ -43,7 +43,7 @@
namespace QmlDesigner { namespace QmlDesigner {
namespace Internal { namespace Internal {
VariantParser::VariantParser(const QVariant &value) : m_valueType(QmlValueTypeFactory::valueType(value.type())) VariantParser::VariantParser(const QVariant &value) : m_valueType(QDeclarativeValueTypeFactory::valueType(value.type()))
{ {
if (m_valueType) { if (m_valueType) {
m_valueType->setValue(value); m_valueType->setValue(value);
@@ -121,21 +121,21 @@ VariantParser VariantParser::create(const QString &type)
void VariantParser::init(const QString &type) void VariantParser::init(const QString &type)
{ {
if (type == "QFont") if (type == "QFont")
m_valueType = QmlValueTypeFactory::valueType(QVariant::Font); m_valueType = QDeclarativeValueTypeFactory::valueType(QVariant::Font);
if (type == "QPoint") if (type == "QPoint")
m_valueType = QmlValueTypeFactory::valueType(QVariant::Point); m_valueType = QDeclarativeValueTypeFactory::valueType(QVariant::Point);
if (type == "QPointF") if (type == "QPointF")
m_valueType = QmlValueTypeFactory::valueType(QVariant::PointF); m_valueType = QDeclarativeValueTypeFactory::valueType(QVariant::PointF);
if (type == "QSize") if (type == "QSize")
m_valueType = QmlValueTypeFactory::valueType(QVariant::Size); m_valueType = QDeclarativeValueTypeFactory::valueType(QVariant::Size);
if (type == "QSizeF") if (type == "QSizeF")
m_valueType = QmlValueTypeFactory::valueType(QVariant::SizeF); m_valueType = QDeclarativeValueTypeFactory::valueType(QVariant::SizeF);
if (type == "QRect") if (type == "QRect")
m_valueType = QmlValueTypeFactory::valueType(QVariant::Rect); m_valueType = QDeclarativeValueTypeFactory::valueType(QVariant::Rect);
if (type == "QRectF") if (type == "QRectF")
m_valueType = QmlValueTypeFactory::valueType(QVariant::RectF); m_valueType = QDeclarativeValueTypeFactory::valueType(QVariant::RectF);
if (type == "QVector3D") if (type == "QVector3D")
m_valueType = QmlValueTypeFactory::valueType(QVariant::Vector3D); m_valueType = QDeclarativeValueTypeFactory::valueType(QVariant::Vector3D);
} }
bool VariantParser::isValid() bool VariantParser::isValid()

View File

@@ -35,7 +35,7 @@
#include <QStringList> #include <QStringList>
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
class QmlValueType; class QDeclarativeValueType;
QT_END_NAMESPACE QT_END_NAMESPACE
namespace QmlDesigner { namespace QmlDesigner {
@@ -56,7 +56,7 @@ public:
static bool isValueType(const QString &type); static bool isValueType(const QString &type);
static VariantParser create(const QString &type); static VariantParser create(const QString &type);
private: private:
QmlValueType *m_valueType; QDeclarativeValueType *m_valueType;
}; };

View File

@@ -45,7 +45,7 @@
#include <QWeakPointer> #include <QWeakPointer>
#include <QmlError> #include <QDeclarativeError>
#include <QtCore/QHash> #include <QtCore/QHash>
#include <QtGui/QWidget> #include <QtGui/QWidget>
#include <QtGui/QToolBar> #include <QtGui/QToolBar>

View File

@@ -31,7 +31,7 @@
#define FXPLUGIN_H #define FXPLUGIN_H
#include <iwidgetplugin.h> #include <iwidgetplugin.h>
#include <QtDeclarative/qml.h> #include <QtDeclarative/qdeclarative.h>
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
QT_END_NAMESPACE QT_END_NAMESPACE

View File

@@ -28,7 +28,7 @@
**************************************************************************/ **************************************************************************/
#include "canvasframerate.h" #include "canvasframerate.h"
#include <private/qmldebugclient_p.h> #include <private/qdeclarativedebugclient_p.h>
#include <QtCore/qdebug.h> #include <QtCore/qdebug.h>
#include <QtCore/qstringlist.h> #include <QtCore/qstringlist.h>
@@ -393,11 +393,11 @@ QSize GraphWindow::sizeHint() const
} }
class CanvasFrameRatePlugin : public QmlDebugClient class CanvasFrameRatePlugin : public QDeclarativeDebugClient
{ {
Q_OBJECT Q_OBJECT
public: public:
CanvasFrameRatePlugin(QmlDebugConnection *client); CanvasFrameRatePlugin(QDeclarativeDebugConnection *client);
signals: signals:
void sample(int, int, int, bool); void sample(int, int, int, bool);
@@ -410,8 +410,8 @@ private:
int ld; int ld;
}; };
CanvasFrameRatePlugin::CanvasFrameRatePlugin(QmlDebugConnection *client) CanvasFrameRatePlugin::CanvasFrameRatePlugin(QDeclarativeDebugConnection *client)
: QmlDebugClient(QLatin1String("CanvasFrameRate"), client), lb(-1) : QDeclarativeDebugClient(QLatin1String("CanvasFrameRate"), client), lb(-1)
{ {
} }
@@ -476,7 +476,7 @@ CanvasFrameRate::CanvasFrameRate(QWidget *parent)
setLayout(layout); setLayout(layout);
} }
void CanvasFrameRate::reset(QmlDebugConnection *conn) void CanvasFrameRate::reset(QDeclarativeDebugConnection *conn)
{ {
delete m_plugin; delete m_plugin;
m_plugin = 0; m_plugin = 0;
@@ -502,11 +502,11 @@ void CanvasFrameRate::connectionStateChanged(QAbstractSocket::SocketState state)
delete m_plugin; delete m_plugin;
m_plugin = 0; m_plugin = 0;
} else if (state == QAbstractSocket::ConnectedState) { } else if (state == QAbstractSocket::ConnectedState) {
handleConnected(qobject_cast<QmlDebugConnection*>(sender())); handleConnected(qobject_cast<QDeclarativeDebugConnection*>(sender()));
} }
} }
void CanvasFrameRate::handleConnected(QmlDebugConnection *conn) void CanvasFrameRate::handleConnected(QDeclarativeDebugConnection *conn)
{ {
delete m_plugin; delete m_plugin;
m_plugin = new CanvasFrameRatePlugin(conn); m_plugin = new CanvasFrameRatePlugin(conn);
@@ -561,7 +561,7 @@ void CanvasFrameRate::newTab()
void CanvasFrameRate::enabledToggled(bool checked) void CanvasFrameRate::enabledToggled(bool checked)
{ {
if (m_plugin) if (m_plugin)
static_cast<QmlDebugClient *>(m_plugin)->setEnabled(checked); static_cast<QDeclarativeDebugClient *>(m_plugin)->setEnabled(checked);
} }
QT_END_NAMESPACE QT_END_NAMESPACE

View File

@@ -29,7 +29,7 @@
#ifndef CANVASFRAMERATE_H #ifndef CANVASFRAMERATE_H
#define CANVASFRAMERATE_H #define CANVASFRAMERATE_H
#include <private/qmldebugclient_p.h> #include <private/qdeclarativedebugclient_p.h>
#include <QtCore/qpointer.h> #include <QtCore/qpointer.h>
#include <QtGui/qwidget.h> #include <QtGui/qwidget.h>
@@ -52,7 +52,7 @@ class CanvasFrameRate : public QWidget
public: public:
CanvasFrameRate(QWidget *parent = 0); CanvasFrameRate(QWidget *parent = 0);
void reset(QmlDebugConnection *conn); void reset(QDeclarativeDebugConnection *conn);
void setSizeHint(const QSize &); void setSizeHint(const QSize &);
virtual QSize sizeHint() const; virtual QSize sizeHint() const;
@@ -64,7 +64,7 @@ private slots:
void connectionStateChanged(QAbstractSocket::SocketState state); void connectionStateChanged(QAbstractSocket::SocketState state);
private: private:
void handleConnected(QmlDebugConnection *conn); void handleConnected(QDeclarativeDebugConnection *conn);
QGroupBox *m_group; QGroupBox *m_group;
QTabWidget *m_tabs; QTabWidget *m_tabs;

View File

@@ -39,7 +39,7 @@
#include <QtGui/qtextobject.h> #include <QtGui/qtextobject.h>
#include <QtGui/qlayout.h> #include <QtGui/qlayout.h>
ExpressionQueryWidget::ExpressionQueryWidget(Mode mode, QmlEngineDebug *client, QWidget *parent) ExpressionQueryWidget::ExpressionQueryWidget(Mode mode, QDeclarativeEngineDebug *client, QWidget *parent)
: QWidget(parent), : QWidget(parent),
m_mode(mode), m_mode(mode),
m_client(client), m_client(client),
@@ -74,7 +74,7 @@ ExpressionQueryWidget::ExpressionQueryWidget(Mode mode, QmlEngineDebug *client,
} }
} }
void ExpressionQueryWidget::setEngineDebug(QmlEngineDebug *client) void ExpressionQueryWidget::setEngineDebug(QDeclarativeEngineDebug *client)
{ {
m_client = client; m_client = client;
} }
@@ -113,7 +113,7 @@ void ExpressionQueryWidget::appendPrompt()
} }
} }
void ExpressionQueryWidget::setCurrentObject(const QmlDebugObjectReference &obj) void ExpressionQueryWidget::setCurrentObject(const QDeclarativeDebugObjectReference &obj)
{ {
m_currObject = obj; m_currObject = obj;
updateTitle(); updateTitle();
@@ -161,7 +161,7 @@ void ExpressionQueryWidget::executeExpression()
if (!m_query->isWaiting()) if (!m_query->isWaiting())
showResult(); showResult();
else else
QObject::connect(m_query, SIGNAL(stateChanged(QmlDebugQuery::State)), QObject::connect(m_query, SIGNAL(stateChanged(QDeclarativeDebugQuery::State)),
this, SLOT(showResult())); this, SLOT(showResult()));
m_lastExpr = m_expr; m_lastExpr = m_expr;

View File

@@ -29,7 +29,7 @@
#ifndef EXPRESSIONQUERYWIDGET_H #ifndef EXPRESSIONQUERYWIDGET_H
#define EXPRESSIONQUERYWIDGET_H #define EXPRESSIONQUERYWIDGET_H
#include <private/qmldebug_p.h> #include <private/qdeclarativedebug_p.h>
#include <QtGui/qwidget.h> #include <QtGui/qwidget.h>
@@ -50,16 +50,16 @@ public:
ShellMode ShellMode
}; };
ExpressionQueryWidget(Mode mode = SeparateEntryMode, QmlEngineDebug *client = 0, QWidget *parent = 0); ExpressionQueryWidget(Mode mode = SeparateEntryMode, QDeclarativeEngineDebug *client = 0, QWidget *parent = 0);
void setEngineDebug(QmlEngineDebug *client); void setEngineDebug(QDeclarativeEngineDebug *client);
void clear(); void clear();
protected: protected:
bool eventFilter(QObject *obj, QEvent *event); bool eventFilter(QObject *obj, QEvent *event);
public slots: public slots:
void setCurrentObject(const QmlDebugObjectReference &obj); void setCurrentObject(const QDeclarativeDebugObjectReference &obj);
private slots: private slots:
void executeExpression(); void executeExpression();
@@ -73,8 +73,8 @@ private:
Mode m_mode; Mode m_mode;
QmlEngineDebug *m_client; QDeclarativeEngineDebug *m_client;
QmlDebugExpressionQuery *m_query; QDeclarativeDebugExpressionQuery *m_query;
QTextEdit *m_textEdit; QTextEdit *m_textEdit;
QLineEdit *m_lineEdit; QLineEdit *m_lineEdit;
QPushButton *m_button; QPushButton *m_button;
@@ -84,8 +84,8 @@ private:
QString m_title; QString m_title;
QmlDebugObjectReference m_currObject; QDeclarativeDebugObjectReference m_currObject;
QmlDebugObjectReference m_objectAtLastFocus; QDeclarativeDebugObjectReference m_objectAtLastFocus;
}; };
QT_END_NAMESPACE QT_END_NAMESPACE

View File

@@ -28,9 +28,9 @@
**************************************************************************/ **************************************************************************/
#include "objectpropertiesview.h" #include "objectpropertiesview.h"
#include <private/qmldebugservice_p.h> #include <private/qdeclarativedebugservice_p.h>
#include <private/qmldebug_p.h> #include <private/qdeclarativedebug_p.h>
#include <private/qmldebugclient_p.h> #include <private/qdeclarativedebugclient_p.h>
#include <QtCore/qdebug.h> #include <QtCore/qdebug.h>
@@ -53,7 +53,7 @@ public:
PropertiesViewItem(QTreeWidget *widget, Type type = OtherType); PropertiesViewItem(QTreeWidget *widget, Type type = OtherType);
PropertiesViewItem(QTreeWidgetItem *parent, Type type = OtherType); PropertiesViewItem(QTreeWidgetItem *parent, Type type = OtherType);
QmlDebugPropertyReference property; QDeclarativeDebugPropertyReference property;
Type type; Type type;
}; };
@@ -67,7 +67,7 @@ PropertiesViewItem::PropertiesViewItem(QTreeWidgetItem *parent, Type type)
{ {
} }
ObjectPropertiesView::ObjectPropertiesView(QmlEngineDebug *client, QWidget *parent) ObjectPropertiesView::ObjectPropertiesView(QDeclarativeEngineDebug *client, QWidget *parent)
: QWidget(parent), : QWidget(parent),
m_client(client), m_client(client),
m_query(0), m_query(0),
@@ -92,17 +92,17 @@ ObjectPropertiesView::ObjectPropertiesView(QmlEngineDebug *client, QWidget *pare
layout->addWidget(m_tree); layout->addWidget(m_tree);
} }
void ObjectPropertiesView::setEngineDebug(QmlEngineDebug *client) void ObjectPropertiesView::setEngineDebug(QDeclarativeEngineDebug *client)
{ {
m_client = client; m_client = client;
} }
void ObjectPropertiesView::clear() void ObjectPropertiesView::clear()
{ {
setObject(QmlDebugObjectReference()); setObject(QDeclarativeDebugObjectReference());
} }
void ObjectPropertiesView::reload(const QmlDebugObjectReference &obj) void ObjectPropertiesView::reload(const QDeclarativeDebugObjectReference &obj)
{ {
if (!m_client) if (!m_client)
return; return;
@@ -113,7 +113,7 @@ void ObjectPropertiesView::reload(const QmlDebugObjectReference &obj)
if (!m_query->isWaiting()) if (!m_query->isWaiting())
queryFinished(); queryFinished();
else else
QObject::connect(m_query, SIGNAL(stateChanged(QmlDebugQuery::State)), QObject::connect(m_query, SIGNAL(stateChanged(QDeclarativeDebugQuery::State)),
this, SLOT(queryFinished())); this, SLOT(queryFinished()));
} }
@@ -122,10 +122,10 @@ void ObjectPropertiesView::queryFinished()
if (!m_client || !m_query) if (!m_client || !m_query)
return; return;
QmlDebugObjectReference obj = m_query->object(); QDeclarativeDebugObjectReference obj = m_query->object();
QmlDebugWatch *watch = m_client->addWatch(obj, this); QDeclarativeDebugWatch *watch = m_client->addWatch(obj, this);
if (watch->state() == QmlDebugWatch::Dead) { if (watch->state() == QDeclarativeDebugWatch::Dead) {
delete watch; delete watch;
watch = 0; watch = 0;
} else { } else {
@@ -180,14 +180,14 @@ void ObjectPropertiesView::setPropertyValue(PropertiesViewItem *item, const QVar
} }
} }
void ObjectPropertiesView::setObject(const QmlDebugObjectReference &object) void ObjectPropertiesView::setObject(const QDeclarativeDebugObjectReference &object)
{ {
m_object = object; m_object = object;
m_tree->clear(); m_tree->clear();
QList<QmlDebugPropertyReference> properties = object.properties(); QList<QDeclarativeDebugPropertyReference> properties = object.properties();
for (int i=0; i<properties.count(); ++i) { for (int i=0; i<properties.count(); ++i) {
const QmlDebugPropertyReference &p = properties[i]; const QDeclarativeDebugPropertyReference &p = properties[i];
PropertiesViewItem *item = new PropertiesViewItem(m_tree); PropertiesViewItem *item = new PropertiesViewItem(m_tree);
item->property = p; item->property = p;
@@ -208,23 +208,23 @@ void ObjectPropertiesView::setObject(const QmlDebugObjectReference &object)
} }
} }
void ObjectPropertiesView::watchCreated(QmlDebugWatch *watch) void ObjectPropertiesView::watchCreated(QDeclarativeDebugWatch *watch)
{ {
if (watch->objectDebugId() == m_object.debugId() if (watch->objectDebugId() == m_object.debugId()
&& qobject_cast<QmlDebugPropertyWatch*>(watch)) { && qobject_cast<QDeclarativeDebugPropertyWatch*>(watch)) {
connect(watch, SIGNAL(stateChanged(QmlDebugWatch::State)), SLOT(watchStateChanged())); connect(watch, SIGNAL(stateChanged(QDeclarativeDebugWatch::State)), SLOT(watchStateChanged()));
setWatched(qobject_cast<QmlDebugPropertyWatch*>(watch)->name(), true); setWatched(qobject_cast<QDeclarativeDebugPropertyWatch*>(watch)->name(), true);
} }
} }
void ObjectPropertiesView::watchStateChanged() void ObjectPropertiesView::watchStateChanged()
{ {
QmlDebugWatch *watch = qobject_cast<QmlDebugWatch*>(sender()); QDeclarativeDebugWatch *watch = qobject_cast<QDeclarativeDebugWatch*>(sender());
if (watch->objectDebugId() == m_object.debugId() if (watch->objectDebugId() == m_object.debugId()
&& qobject_cast<QmlDebugPropertyWatch*>(watch) && qobject_cast<QDeclarativeDebugPropertyWatch*>(watch)
&& watch->state() == QmlDebugWatch::Inactive) { && watch->state() == QDeclarativeDebugWatch::Inactive) {
setWatched(qobject_cast<QmlDebugPropertyWatch*>(watch)->name(), false); setWatched(qobject_cast<QDeclarativeDebugPropertyWatch*>(watch)->name(), false);
} }
} }

View File

@@ -29,7 +29,7 @@
#ifndef PROPERTIESTABLEMODEL_H #ifndef PROPERTIESTABLEMODEL_H
#define PROPERTIESTABLEMODEL_H #define PROPERTIESTABLEMODEL_H
#include <private/qmldebug_p.h> #include <private/qdeclarativedebug_p.h>
#include <QtGui/qwidget.h> #include <QtGui/qwidget.h>
@@ -37,24 +37,24 @@ QT_BEGIN_NAMESPACE
class QTreeWidget; class QTreeWidget;
class QTreeWidgetItem; class QTreeWidgetItem;
class QmlDebugConnection; class QDeclarativeDebugConnection;
class PropertiesViewItem; class PropertiesViewItem;
class ObjectPropertiesView : public QWidget class ObjectPropertiesView : public QWidget
{ {
Q_OBJECT Q_OBJECT
public: public:
ObjectPropertiesView(QmlEngineDebug *client = 0, QWidget *parent = 0); ObjectPropertiesView(QDeclarativeEngineDebug *client = 0, QWidget *parent = 0);
void setEngineDebug(QmlEngineDebug *client); void setEngineDebug(QDeclarativeEngineDebug *client);
void clear(); void clear();
signals: signals:
void activated(const QmlDebugObjectReference &, const QmlDebugPropertyReference &); void activated(const QDeclarativeDebugObjectReference &, const QDeclarativeDebugPropertyReference &);
public slots: public slots:
void reload(const QmlDebugObjectReference &); void reload(const QDeclarativeDebugObjectReference &);
void watchCreated(QmlDebugWatch *); void watchCreated(QDeclarativeDebugWatch *);
private slots: private slots:
void queryFinished(); void queryFinished();
@@ -63,16 +63,16 @@ private slots:
void itemActivated(QTreeWidgetItem *i); void itemActivated(QTreeWidgetItem *i);
private: private:
void setObject(const QmlDebugObjectReference &object); void setObject(const QDeclarativeDebugObjectReference &object);
void setWatched(const QString &property, bool watched); void setWatched(const QString &property, bool watched);
void setPropertyValue(PropertiesViewItem *item, const QVariant &value, bool makeGray); void setPropertyValue(PropertiesViewItem *item, const QVariant &value, bool makeGray);
QmlEngineDebug *m_client; QDeclarativeEngineDebug *m_client;
QmlDebugObjectQuery *m_query; QDeclarativeDebugObjectQuery *m_query;
QmlDebugWatch *m_watch; QDeclarativeDebugWatch *m_watch;
QTreeWidget *m_tree; QTreeWidget *m_tree;
QmlDebugObjectReference m_object; QDeclarativeDebugObjectReference m_object;
}; };

View File

@@ -32,15 +32,15 @@
#include <QInputDialog> #include <QInputDialog>
#include <private/qmldebugservice_p.h> #include <private/qdeclarativedebugservice_p.h>
#include <private/qmldebug_p.h> #include <private/qdeclarativedebug_p.h>
#include <private/qmldebugclient_p.h> #include <private/qdeclarativedebugclient_p.h>
#include "objecttree.h" #include "objecttree.h"
//Q_DECLARE_METATYPE(QmlDebugObjectReference) //Q_DECLARE_METATYPE(QDeclarativeDebugObjectReference)
ObjectTree::ObjectTree(QmlEngineDebug *client, QWidget *parent) ObjectTree::ObjectTree(QDeclarativeEngineDebug *client, QWidget *parent)
: QTreeWidget(parent), : QTreeWidget(parent),
m_client(client), m_client(client),
m_query(0) m_query(0)
@@ -55,7 +55,7 @@ ObjectTree::ObjectTree(QmlEngineDebug *client, QWidget *parent)
SLOT(activated(QTreeWidgetItem *))); SLOT(activated(QTreeWidgetItem *)));
} }
void ObjectTree::setEngineDebug(QmlEngineDebug *client) void ObjectTree::setEngineDebug(QDeclarativeEngineDebug *client)
{ {
m_client = client; m_client = client;
} }
@@ -70,11 +70,11 @@ void ObjectTree::reload(int objectDebugId)
m_query = 0; m_query = 0;
} }
m_query = m_client->queryObjectRecursive(QmlDebugObjectReference(objectDebugId), this); m_query = m_client->queryObjectRecursive(QDeclarativeDebugObjectReference(objectDebugId), this);
if (!m_query->isWaiting()) if (!m_query->isWaiting())
objectFetched(); objectFetched();
else else
QObject::connect(m_query, SIGNAL(stateChanged(QmlDebugQuery::State)), QObject::connect(m_query, SIGNAL(stateChanged(QDeclarativeDebugQuery::State)),
this, SLOT(objectFetched())); this, SLOT(objectFetched()));
} }
@@ -103,7 +103,7 @@ void ObjectTree::currentItemChanged(QTreeWidgetItem *item)
if (!item) if (!item)
return; return;
QmlDebugObjectReference obj = item->data(0, Qt::UserRole).value<QmlDebugObjectReference>(); QDeclarativeDebugObjectReference obj = item->data(0, Qt::UserRole).value<QDeclarativeDebugObjectReference>();
if (obj.debugId() >= 0) if (obj.debugId() >= 0)
emit currentObjectChanged(obj); emit currentObjectChanged(obj);
} }
@@ -113,12 +113,12 @@ void ObjectTree::activated(QTreeWidgetItem *item)
if (!item) if (!item)
return; return;
QmlDebugObjectReference obj = item->data(0, Qt::UserRole).value<QmlDebugObjectReference>(); QDeclarativeDebugObjectReference obj = item->data(0, Qt::UserRole).value<QDeclarativeDebugObjectReference>();
if (obj.debugId() >= 0) if (obj.debugId() >= 0)
emit activated(obj); emit activated(obj);
} }
void ObjectTree::buildTree(const QmlDebugObjectReference &obj, QTreeWidgetItem *parent) void ObjectTree::buildTree(const QDeclarativeDebugObjectReference &obj, QTreeWidgetItem *parent)
{ {
if (!parent) if (!parent)
clear(); clear();
@@ -129,8 +129,8 @@ void ObjectTree::buildTree(const QmlDebugObjectReference &obj, QTreeWidgetItem *
if (parent && obj.contextDebugId() >= 0 if (parent && obj.contextDebugId() >= 0
&& obj.contextDebugId() != parent->data(0, Qt::UserRole && obj.contextDebugId() != parent->data(0, Qt::UserRole
).value<QmlDebugObjectReference>().contextDebugId()) { ).value<QDeclarativeDebugObjectReference>().contextDebugId()) {
QmlDebugFileReference source = obj.source(); QDeclarativeDebugFileReference source = obj.source();
if (!source.url().isEmpty()) { if (!source.url().isEmpty()) {
QString toolTipString = QLatin1String("URL: ") + source.url().toString(); QString toolTipString = QLatin1String("URL: ") + source.url().toString();
item->setToolTip(0, toolTipString); item->setToolTip(0, toolTipString);
@@ -147,7 +147,7 @@ void ObjectTree::buildTree(const QmlDebugObjectReference &obj, QTreeWidgetItem *
buildTree(obj.children().at(ii), item); buildTree(obj.children().at(ii), item);
} }
void ObjectTree::dump(const QmlDebugContextReference &ctxt, int ind) void ObjectTree::dump(const QDeclarativeDebugContextReference &ctxt, int ind)
{ {
QByteArray indent(ind * 4, ' '); QByteArray indent(ind * 4, ' ');
qWarning().nospace() << indent.constData() << ctxt.debugId() << " " qWarning().nospace() << indent.constData() << ctxt.debugId() << " "
@@ -160,7 +160,7 @@ void ObjectTree::dump(const QmlDebugContextReference &ctxt, int ind)
dump(ctxt.objects().at(ii), ind); dump(ctxt.objects().at(ii), ind);
} }
void ObjectTree::dump(const QmlDebugObjectReference &obj, int ind) void ObjectTree::dump(const QDeclarativeDebugObjectReference &obj, int ind)
{ {
QByteArray indent(ind * 4, ' '); QByteArray indent(ind * 4, ' ');
qWarning().nospace() << indent.constData() << qPrintable(obj.className()) qWarning().nospace() << indent.constData() << qPrintable(obj.className())
@@ -184,7 +184,7 @@ QTreeWidgetItem *ObjectTree::findItemByObjectId(int debugId) const
QTreeWidgetItem *ObjectTree::findItem(QTreeWidgetItem *item, int debugId) const QTreeWidgetItem *ObjectTree::findItem(QTreeWidgetItem *item, int debugId) const
{ {
if (item->data(0, Qt::UserRole).value<QmlDebugObjectReference>().debugId() == debugId) if (item->data(0, Qt::UserRole).value<QDeclarativeDebugObjectReference>().debugId() == debugId)
return item; return item;
QTreeWidgetItem *child; QTreeWidgetItem *child;
@@ -206,8 +206,8 @@ void ObjectTree::mousePressEvent(QMouseEvent *me)
QAction action(tr("Add watch..."), 0); QAction action(tr("Add watch..."), 0);
QList<QAction *> actions; QList<QAction *> actions;
actions << &action; actions << &action;
QmlDebugObjectReference obj = QDeclarativeDebugObjectReference obj =
currentItem()->data(0, Qt::UserRole).value<QmlDebugObjectReference>(); currentItem()->data(0, Qt::UserRole).value<QDeclarativeDebugObjectReference>();
if (QMenu::exec(actions, me->globalPos())) { if (QMenu::exec(actions, me->globalPos())) {
bool ok = false; bool ok = false;
QString watch = QInputDialog::getText(this, tr("Watch expression"), QString watch = QInputDialog::getText(this, tr("Watch expression"),

View File

@@ -35,25 +35,25 @@ QT_BEGIN_NAMESPACE
class QTreeWidgetItem; class QTreeWidgetItem;
class QmlEngineDebug; class QDeclarativeEngineDebug;
class QmlDebugObjectReference; class QDeclarativeDebugObjectReference;
class QmlDebugObjectQuery; class QDeclarativeDebugObjectQuery;
class QmlDebugContextReference; class QDeclarativeDebugContextReference;
class QmlDebugConnection; class QDeclarativeDebugConnection;
class ObjectTree : public QTreeWidget class ObjectTree : public QTreeWidget
{ {
Q_OBJECT Q_OBJECT
public: public:
ObjectTree(QmlEngineDebug *client = 0, QWidget *parent = 0); ObjectTree(QDeclarativeEngineDebug *client = 0, QWidget *parent = 0);
void setEngineDebug(QmlEngineDebug *client); void setEngineDebug(QDeclarativeEngineDebug *client);
signals: signals:
void currentObjectChanged(const QmlDebugObjectReference &); void currentObjectChanged(const QDeclarativeDebugObjectReference &);
void activated(const QmlDebugObjectReference &); void activated(const QDeclarativeDebugObjectReference &);
void expressionWatchRequested(const QmlDebugObjectReference &, const QString &); void expressionWatchRequested(const QDeclarativeDebugObjectReference &, const QString &);
public slots: public slots:
void reload(int objectDebugId); // set the root object void reload(int objectDebugId); // set the root object
@@ -70,12 +70,12 @@ private slots:
private: private:
QTreeWidgetItem *findItemByObjectId(int debugId) const; QTreeWidgetItem *findItemByObjectId(int debugId) const;
QTreeWidgetItem *findItem(QTreeWidgetItem *item, int debugId) const; QTreeWidgetItem *findItem(QTreeWidgetItem *item, int debugId) const;
void dump(const QmlDebugContextReference &, int); void dump(const QDeclarativeDebugContextReference &, int);
void dump(const QmlDebugObjectReference &, int); void dump(const QDeclarativeDebugObjectReference &, int);
void buildTree(const QmlDebugObjectReference &, QTreeWidgetItem *parent); void buildTree(const QDeclarativeDebugObjectReference &, QTreeWidgetItem *parent);
QmlEngineDebug *m_client; QDeclarativeEngineDebug *m_client;
QmlDebugObjectQuery *m_query; QDeclarativeDebugObjectQuery *m_query;
}; };
QT_END_NAMESPACE QT_END_NAMESPACE

View File

@@ -33,13 +33,13 @@
#include <QtGui/qaction.h> #include <QtGui/qaction.h>
#include <QtGui/qmenu.h> #include <QtGui/qmenu.h>
#include <private/qmldebug_p.h> #include <private/qdeclarativedebug_p.h>
#include <QtDeclarative/qmlmetatype.h> #include <QtDeclarative/private/qdeclarativemetatype_p.h>
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
WatchTableModel::WatchTableModel(QmlEngineDebug *client, QObject *parent) WatchTableModel::WatchTableModel(QDeclarativeEngineDebug *client, QObject *parent)
: QAbstractTableModel(parent), : QAbstractTableModel(parent),
m_client(client) m_client(client)
{ {
@@ -51,21 +51,21 @@ WatchTableModel::~WatchTableModel()
delete m_columns[i].watch; delete m_columns[i].watch;
} }
void WatchTableModel::setEngineDebug(QmlEngineDebug *client) void WatchTableModel::setEngineDebug(QDeclarativeEngineDebug *client)
{ {
m_client = client; m_client = client;
} }
void WatchTableModel::addWatch(QmlDebugWatch *watch, const QString &title) void WatchTableModel::addWatch(QDeclarativeDebugWatch *watch, const QString &title)
{ {
QString property; QString property;
if (qobject_cast<QmlDebugPropertyWatch *>(watch)) if (qobject_cast<QDeclarativeDebugPropertyWatch *>(watch))
property = qobject_cast<QmlDebugPropertyWatch *>(watch)->name(); property = qobject_cast<QDeclarativeDebugPropertyWatch *>(watch)->name();
connect(watch, SIGNAL(valueChanged(QByteArray,QVariant)), connect(watch, SIGNAL(valueChanged(QByteArray,QVariant)),
SLOT(watchedValueChanged(QByteArray,QVariant))); SLOT(watchedValueChanged(QByteArray,QVariant)));
connect(watch, SIGNAL(stateChanged(QmlDebugWatch::State)), SLOT(watchStateChanged())); connect(watch, SIGNAL(stateChanged(QDeclarativeDebugWatch::State)), SLOT(watchStateChanged()));
int col = columnCount(QModelIndex()); int col = columnCount(QModelIndex());
beginInsertColumns(QModelIndex(), col, col); beginInsertColumns(QModelIndex(), col, col);
@@ -80,7 +80,7 @@ void WatchTableModel::addWatch(QmlDebugWatch *watch, const QString &title)
endInsertColumns(); endInsertColumns();
} }
void WatchTableModel::removeWatch(QmlDebugWatch *watch) void WatchTableModel::removeWatch(QDeclarativeDebugWatch *watch)
{ {
int column = columnForWatch(watch); int column = columnForWatch(watch);
if (column == -1) if (column == -1)
@@ -101,7 +101,7 @@ void WatchTableModel::removeWatch(QmlDebugWatch *watch)
reset(); reset();
} }
void WatchTableModel::updateWatch(QmlDebugWatch *watch, const QVariant &value) void WatchTableModel::updateWatch(QDeclarativeDebugWatch *watch, const QVariant &value)
{ {
int column = columnForWatch(watch); int column = columnForWatch(watch);
if (column == -1) if (column == -1)
@@ -115,14 +115,14 @@ void WatchTableModel::updateWatch(QmlDebugWatch *watch, const QVariant &value)
} }
} }
QmlDebugWatch *WatchTableModel::findWatch(int column) const QDeclarativeDebugWatch *WatchTableModel::findWatch(int column) const
{ {
if (column < m_columns.count()) if (column < m_columns.count())
return m_columns.at(column).watch; return m_columns.at(column).watch;
return 0; return 0;
} }
QmlDebugWatch *WatchTableModel::findWatch(int objectDebugId, const QString &property) const QDeclarativeDebugWatch *WatchTableModel::findWatch(int objectDebugId, const QString &property) const
{ {
for (int i=0; i<m_columns.count(); ++i) { for (int i=0; i<m_columns.count(); ++i) {
if (m_columns[i].watch->objectDebugId() == objectDebugId if (m_columns[i].watch->objectDebugId() == objectDebugId
@@ -162,8 +162,8 @@ QVariant WatchTableModel::data(const QModelIndex &idx, int role) const
const QVariant &value = m_values.at(idx.row()).variant; const QVariant &value = m_values.at(idx.row()).variant;
QString str = value.toString(); QString str = value.toString();
if (str.isEmpty() && QmlMetaType::isQObject(value.userType())) { if (str.isEmpty() && QDeclarativeMetaType::isQObject(value.userType())) {
QObject *o = QmlMetaType::toQObject(value); QObject *o = QDeclarativeMetaType::toQObject(value);
if(o) { if(o) {
QString objectName = o->objectName(); QString objectName = o->objectName();
if(objectName.isEmpty()) if(objectName.isEmpty())
@@ -193,15 +193,15 @@ QVariant WatchTableModel::data(const QModelIndex &idx, int role) const
void WatchTableModel::watchStateChanged() void WatchTableModel::watchStateChanged()
{ {
QmlDebugWatch *watch = qobject_cast<QmlDebugWatch*>(sender()); QDeclarativeDebugWatch *watch = qobject_cast<QDeclarativeDebugWatch*>(sender());
if (watch && watch->state() == QmlDebugWatch::Inactive) { if (watch && watch->state() == QDeclarativeDebugWatch::Inactive) {
removeWatch(watch); removeWatch(watch);
watch->deleteLater(); watch->deleteLater();
} }
} }
int WatchTableModel::columnForWatch(QmlDebugWatch *watch) const int WatchTableModel::columnForWatch(QDeclarativeDebugWatch *watch) const
{ {
for (int i=0; i<m_columns.count(); ++i) { for (int i=0; i<m_columns.count(); ++i) {
if (m_columns.at(i).watch == watch) if (m_columns.at(i).watch == watch)
@@ -224,12 +224,12 @@ void WatchTableModel::addValue(int column, const QVariant &value)
endInsertRows(); endInsertRows();
} }
void WatchTableModel::togglePropertyWatch(const QmlDebugObjectReference &object, const QmlDebugPropertyReference &property) void WatchTableModel::togglePropertyWatch(const QDeclarativeDebugObjectReference &object, const QDeclarativeDebugPropertyReference &property)
{ {
if (!m_client || !property.hasNotifySignal()) if (!m_client || !property.hasNotifySignal())
return; return;
QmlDebugWatch *watch = findWatch(object.debugId(), property.name()); QDeclarativeDebugWatch *watch = findWatch(object.debugId(), property.name());
if (watch) { if (watch) {
// watch will be deleted in watchStateChanged() // watch will be deleted in watchStateChanged()
m_client->removeWatch(watch); m_client->removeWatch(watch);
@@ -237,7 +237,7 @@ void WatchTableModel::togglePropertyWatch(const QmlDebugObjectReference &object,
} }
watch = m_client->addWatch(property, this); watch = m_client->addWatch(property, this);
if (watch->state() == QmlDebugWatch::Dead) { if (watch->state() == QDeclarativeDebugWatch::Dead) {
delete watch; delete watch;
watch = 0; watch = 0;
} else { } else {
@@ -254,19 +254,19 @@ void WatchTableModel::togglePropertyWatch(const QmlDebugObjectReference &object,
void WatchTableModel::watchedValueChanged(const QByteArray &propertyName, const QVariant &value) void WatchTableModel::watchedValueChanged(const QByteArray &propertyName, const QVariant &value)
{ {
Q_UNUSED(propertyName); Q_UNUSED(propertyName);
QmlDebugWatch *watch = qobject_cast<QmlDebugWatch*>(sender()); QDeclarativeDebugWatch *watch = qobject_cast<QDeclarativeDebugWatch*>(sender());
if (watch) if (watch)
updateWatch(watch, value); updateWatch(watch, value);
} }
void WatchTableModel::expressionWatchRequested(const QmlDebugObjectReference &obj, const QString &expr) void WatchTableModel::expressionWatchRequested(const QDeclarativeDebugObjectReference &obj, const QString &expr)
{ {
if (!m_client) if (!m_client)
return; return;
QmlDebugWatch *watch = m_client->addWatch(obj, expr, this); QDeclarativeDebugWatch *watch = m_client->addWatch(obj, expr, this);
if (watch->state() == QmlDebugWatch::Dead) { if (watch->state() == QDeclarativeDebugWatch::Dead) {
delete watch; delete watch;
watch = 0; watch = 0;
} else { } else {
@@ -280,7 +280,7 @@ void WatchTableModel::removeWatchAt(int column)
if (!m_client) if (!m_client)
return; return;
QmlDebugWatch *watch = findWatch(column); QDeclarativeDebugWatch *watch = findWatch(column);
if (watch) { if (watch) {
m_client->removeWatch(watch); m_client->removeWatch(watch);
delete watch; delete watch;
@@ -334,18 +334,18 @@ WatchTableView::WatchTableView(WatchTableModel *model, QWidget *parent)
m_model(model) m_model(model)
{ {
setAlternatingRowColors(true); setAlternatingRowColors(true);
connect(model, SIGNAL(watchCreated(QmlDebugWatch*)), SLOT(watchCreated(QmlDebugWatch*))); connect(model, SIGNAL(watchCreated(QDeclarativeDebugWatch*)), SLOT(watchCreated(QDeclarativeDebugWatch*)));
connect(this, SIGNAL(activated(QModelIndex)), SLOT(indexActivated(QModelIndex))); connect(this, SIGNAL(activated(QModelIndex)), SLOT(indexActivated(QModelIndex)));
} }
void WatchTableView::indexActivated(const QModelIndex &index) void WatchTableView::indexActivated(const QModelIndex &index)
{ {
QmlDebugWatch *watch = m_model->findWatch(index.column()); QDeclarativeDebugWatch *watch = m_model->findWatch(index.column());
if (watch) if (watch)
emit objectActivated(watch->objectDebugId()); emit objectActivated(watch->objectDebugId());
} }
void WatchTableView::watchCreated(QmlDebugWatch *watch) void WatchTableView::watchCreated(QDeclarativeDebugWatch *watch)
{ {
int column = m_model->columnForWatch(watch); int column = m_model->columnForWatch(watch);
resizeColumnToContents(column); resizeColumnToContents(column);

View File

@@ -39,23 +39,23 @@
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
class QmlDebugWatch; class QDeclarativeDebugWatch;
class QmlEngineDebug; class QDeclarativeEngineDebug;
class QmlDebugConnection; class QDeclarativeDebugConnection;
class QmlDebugPropertyReference; class QDeclarativeDebugPropertyReference;
class QmlDebugObjectReference; class QDeclarativeDebugObjectReference;
class WatchTableModel : public QAbstractTableModel class WatchTableModel : public QAbstractTableModel
{ {
Q_OBJECT Q_OBJECT
public: public:
WatchTableModel(QmlEngineDebug *client = 0, QObject *parent = 0); WatchTableModel(QDeclarativeEngineDebug *client = 0, QObject *parent = 0);
~WatchTableModel(); ~WatchTableModel();
void setEngineDebug(QmlEngineDebug *client); void setEngineDebug(QDeclarativeEngineDebug *client);
QmlDebugWatch *findWatch(int column) const; QDeclarativeDebugWatch *findWatch(int column) const;
int columnForWatch(QmlDebugWatch *watch) const; int columnForWatch(QDeclarativeDebugWatch *watch) const;
void removeWatchAt(int column); void removeWatchAt(int column);
void removeAllWatches(); void removeAllWatches();
@@ -66,22 +66,22 @@ public:
QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
signals: signals:
void watchCreated(QmlDebugWatch *watch); void watchCreated(QDeclarativeDebugWatch *watch);
public slots: public slots:
void togglePropertyWatch(const QmlDebugObjectReference &obj, const QmlDebugPropertyReference &prop); void togglePropertyWatch(const QDeclarativeDebugObjectReference &obj, const QDeclarativeDebugPropertyReference &prop);
void expressionWatchRequested(const QmlDebugObjectReference &, const QString &); void expressionWatchRequested(const QDeclarativeDebugObjectReference &, const QString &);
private slots: private slots:
void watchStateChanged(); void watchStateChanged();
void watchedValueChanged(const QByteArray &propertyName, const QVariant &value); void watchedValueChanged(const QByteArray &propertyName, const QVariant &value);
private: private:
void addWatch(QmlDebugWatch *watch, const QString &title); void addWatch(QDeclarativeDebugWatch *watch, const QString &title);
void removeWatch(QmlDebugWatch *watch); void removeWatch(QDeclarativeDebugWatch *watch);
void updateWatch(QmlDebugWatch *watch, const QVariant &value); void updateWatch(QDeclarativeDebugWatch *watch, const QVariant &value);
QmlDebugWatch *findWatch(int objectDebugId, const QString &property) const; QDeclarativeDebugWatch *findWatch(int objectDebugId, const QString &property) const;
void addValue(int column, const QVariant &value); void addValue(int column, const QVariant &value);
@@ -90,7 +90,7 @@ private:
QString title; QString title;
bool hasFirstValue; bool hasFirstValue;
QString property; QString property;
QPointer<QmlDebugWatch> watch; QPointer<QDeclarativeDebugWatch> watch;
}; };
struct Value { struct Value {
@@ -99,7 +99,7 @@ private:
bool first; bool first;
}; };
QmlEngineDebug *m_client; QDeclarativeEngineDebug *m_client;
QList<WatchedEntity> m_columns; QList<WatchedEntity> m_columns;
QList<Value> m_values; QList<Value> m_values;
}; };
@@ -130,7 +130,7 @@ signals:
private slots: private slots:
void indexActivated(const QModelIndex &index); void indexActivated(const QModelIndex &index);
void watchCreated(QmlDebugWatch *watch); void watchCreated(QDeclarativeDebugWatch *watch);
private: private:
WatchTableModel *m_model; WatchTableModel *m_model;

Some files were not shown because too many files have changed in this diff Show More