forked from qt-creator/qt-creator
QmlDesigner: use default values at isSubclassOf
Change-Id: Ia31d698635a9b29a023f4d919f3741ac912923b7 Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
This commit is contained in:
@@ -300,7 +300,7 @@ bool singleSelectionAndInQtQuickLayout(const SelectionContext &context)
|
|||||||
if (!metaInfo.isValid())
|
if (!metaInfo.isValid())
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
return metaInfo.isSubclassOf("QtQuick.Layouts.Layout", -1, -1);
|
return metaInfo.isSubclassOf("QtQuick.Layouts.Layout");
|
||||||
}
|
}
|
||||||
|
|
||||||
bool isLayout(const SelectionContext &context)
|
bool isLayout(const SelectionContext &context)
|
||||||
@@ -321,7 +321,7 @@ bool isLayout(const SelectionContext &context)
|
|||||||
if (!metaInfo.isValid())
|
if (!metaInfo.isValid())
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
return metaInfo.isSubclassOf("QtQuick.Layouts.Layout", -1, -1);
|
return metaInfo.isSubclassOf("QtQuick.Layouts.Layout");
|
||||||
}
|
}
|
||||||
|
|
||||||
bool isPositioner(const SelectionContext &context)
|
bool isPositioner(const SelectionContext &context)
|
||||||
@@ -342,8 +342,8 @@ bool isPositioner(const SelectionContext &context)
|
|||||||
if (!metaInfo.isValid())
|
if (!metaInfo.isValid())
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
return metaInfo.isSubclassOf("<cpp>.QDeclarativeBasePositioner", -1, -1)
|
return metaInfo.isSubclassOf("<cpp>.QDeclarativeBasePositioner")
|
||||||
|| metaInfo.isSubclassOf("QtQuick.Positioner", -1, -1);
|
|| metaInfo.isSubclassOf("QtQuick.Positioner");
|
||||||
}
|
}
|
||||||
|
|
||||||
bool layoutOptionVisible(const SelectionContext &context)
|
bool layoutOptionVisible(const SelectionContext &context)
|
||||||
|
@@ -88,7 +88,7 @@ void ContentNotEditableIndicator::updateItems(const QList<FormEditorItem *> &ite
|
|||||||
void ContentNotEditableIndicator::addAddiationEntries(const QList<FormEditorItem *> &itemList)
|
void ContentNotEditableIndicator::addAddiationEntries(const QList<FormEditorItem *> &itemList)
|
||||||
{
|
{
|
||||||
foreach (FormEditorItem *formEditorItem, itemList) {
|
foreach (FormEditorItem *formEditorItem, itemList) {
|
||||||
if (formEditorItem->qmlItemNode().modelNode().metaInfo().isSubclassOf("QtQuick.Loader", -1, -1)) {
|
if (formEditorItem->qmlItemNode().modelNode().metaInfo().isSubclassOf("QtQuick.Loader")) {
|
||||||
|
|
||||||
if (!m_entryList.contains(EntryPair(formEditorItem, 0))) {
|
if (!m_entryList.contains(EntryPair(formEditorItem, 0))) {
|
||||||
QGraphicsRectItem *indicatorShape = new QGraphicsRectItem(m_layerItem);
|
QGraphicsRectItem *indicatorShape = new QGraphicsRectItem(m_layerItem);
|
||||||
|
@@ -148,7 +148,7 @@ void ItemLibraryModel::update(ItemLibraryInfo *itemLibraryInfo, Model *model)
|
|||||||
|
|
||||||
foreach (ItemLibraryEntry entry, itemLibraryInfo->entries()) {
|
foreach (ItemLibraryEntry entry, itemLibraryInfo->entries()) {
|
||||||
|
|
||||||
NodeMetaInfo metaInfo = model->metaInfo(entry.typeName(), -1, -1);
|
NodeMetaInfo metaInfo = model->metaInfo(entry.typeName());
|
||||||
bool valid = metaInfo.isValid() && metaInfo.majorVersion() == entry.majorVersion();
|
bool valid = metaInfo.isValid() && metaInfo.majorVersion() == entry.majorVersion();
|
||||||
|
|
||||||
if (valid
|
if (valid
|
||||||
|
@@ -693,7 +693,7 @@ void NavigatorTreeModel::moveNodesInteractive(NodeAbstractProperty &parentProper
|
|||||||
if (modelNode.isValid()
|
if (modelNode.isValid()
|
||||||
&& modelNode != parentProperty.parentModelNode()
|
&& modelNode != parentProperty.parentModelNode()
|
||||||
&& !modelNode.isAncestorOf(parentProperty.parentModelNode())
|
&& !modelNode.isAncestorOf(parentProperty.parentModelNode())
|
||||||
&& (modelNode.metaInfo().isSubclassOf(propertyQmlType, -1, -1) || propertyQmlType == "alias")) {
|
&& (modelNode.metaInfo().isSubclassOf(propertyQmlType) || propertyQmlType == "alias")) {
|
||||||
//### todo: allowing alias is just a heuristic
|
//### todo: allowing alias is just a heuristic
|
||||||
//once the MetaInfo is part of instances we can do this right
|
//once the MetaInfo is part of instances we can do this right
|
||||||
|
|
||||||
|
@@ -77,7 +77,7 @@ void StatesEditorView::removeState(int nodeId)
|
|||||||
try {
|
try {
|
||||||
if (nodeId > 0 && hasModelNodeForInternalId(nodeId)) {
|
if (nodeId > 0 && hasModelNodeForInternalId(nodeId)) {
|
||||||
ModelNode stateNode(modelNodeForInternalId(nodeId));
|
ModelNode stateNode(modelNodeForInternalId(nodeId));
|
||||||
Q_ASSERT(stateNode.metaInfo().isSubclassOf("QtQuick.State", -1, -1));
|
Q_ASSERT(stateNode.metaInfo().isSubclassOf("QtQuick.State"));
|
||||||
NodeListProperty parentProperty = stateNode.parentProperty().toNodeListProperty();
|
NodeListProperty parentProperty = stateNode.parentProperty().toNodeListProperty();
|
||||||
|
|
||||||
if (parentProperty.count() <= 1) {
|
if (parentProperty.count() <= 1) {
|
||||||
@@ -188,7 +188,7 @@ void StatesEditorView::duplicateCurrentState()
|
|||||||
void StatesEditorView::checkForWindow()
|
void StatesEditorView::checkForWindow()
|
||||||
{
|
{
|
||||||
if (m_statesEditorWidget)
|
if (m_statesEditorWidget)
|
||||||
m_statesEditorWidget->showAddNewStatesButton(!rootModelNode().metaInfo().isSubclassOf("QtQuick.Window.Window", -1, -1));
|
m_statesEditorWidget->showAddNewStatesButton(!rootModelNode().metaInfo().isSubclassOf("QtQuick.Window.Window"));
|
||||||
}
|
}
|
||||||
|
|
||||||
void StatesEditorView::setCurrentState(const QmlModelState &state)
|
void StatesEditorView::setCurrentState(const QmlModelState &state)
|
||||||
|
@@ -44,14 +44,14 @@ namespace QmlDesigner {
|
|||||||
|
|
||||||
bool isTabView(const ModelNode &modelNode)
|
bool isTabView(const ModelNode &modelNode)
|
||||||
{
|
{
|
||||||
return modelNode.metaInfo().isSubclassOf("QtQuick.Controls.TabView", -1, -1);
|
return modelNode.metaInfo().isSubclassOf("QtQuick.Controls.TabView");
|
||||||
}
|
}
|
||||||
|
|
||||||
bool isTabAndParentIsTabView(const ModelNode &modelNode)
|
bool isTabAndParentIsTabView(const ModelNode &modelNode)
|
||||||
{
|
{
|
||||||
return modelNode.metaInfo().isSubclassOf("QtQuick.Controls.Tab", -1, -1)
|
return modelNode.metaInfo().isSubclassOf("QtQuick.Controls.Tab")
|
||||||
&& modelNode.hasParentProperty()
|
&& modelNode.hasParentProperty()
|
||||||
&& modelNode.parentProperty().parentModelNode().metaInfo().isSubclassOf("QtQuick.Controls.TabView", -1, -1);
|
&& modelNode.parentProperty().parentModelNode().metaInfo().isSubclassOf("QtQuick.Controls.TabView");
|
||||||
}
|
}
|
||||||
|
|
||||||
AddTabDesignerAction::AddTabDesignerAction()
|
AddTabDesignerAction::AddTabDesignerAction()
|
||||||
@@ -97,7 +97,7 @@ bool AddTabDesignerAction::isEnabled(const SelectionContext &selectionContext) c
|
|||||||
|
|
||||||
static ModelNode findTabViewModelNode(const ModelNode ¤tModelNode)
|
static ModelNode findTabViewModelNode(const ModelNode ¤tModelNode)
|
||||||
{
|
{
|
||||||
if (currentModelNode.metaInfo().isSubclassOf("QtQuick.Controls.TabView", -1, -1))
|
if (currentModelNode.metaInfo().isSubclassOf("QtQuick.Controls.TabView"))
|
||||||
return currentModelNode;
|
return currentModelNode;
|
||||||
else
|
else
|
||||||
return findTabViewModelNode(currentModelNode.parentProperty().parentModelNode());
|
return findTabViewModelNode(currentModelNode.parentProperty().parentModelNode());
|
||||||
|
@@ -83,7 +83,7 @@ void EnterTabDesignerAction::updateContext()
|
|||||||
if (action()->isEnabled()) {
|
if (action()->isEnabled()) {
|
||||||
const ModelNode selectedModelNode = selectionContext().currentSingleSelectedNode();
|
const ModelNode selectedModelNode = selectionContext().currentSingleSelectedNode();
|
||||||
if (selectedModelNode.metaInfo().isValid()
|
if (selectedModelNode.metaInfo().isValid()
|
||||||
&& selectedModelNode.metaInfo().isSubclassOf("QtQuick.Controls.TabView", -1, -1)) {
|
&& selectedModelNode.metaInfo().isSubclassOf("QtQuick.Controls.TabView")) {
|
||||||
|
|
||||||
const NodeAbstractProperty defaultProperty = selectedModelNode.defaultNodeAbstractProperty();
|
const NodeAbstractProperty defaultProperty = selectedModelNode.defaultNodeAbstractProperty();
|
||||||
foreach (const QmlDesigner::ModelNode &childModelNode, defaultProperty.directSubNodes()) {
|
foreach (const QmlDesigner::ModelNode &childModelNode, defaultProperty.directSubNodes()) {
|
||||||
@@ -117,7 +117,7 @@ bool EnterTabDesignerAction::isEnabled(const SelectionContext &selectionContext)
|
|||||||
void EnterTabDesignerAction::createActionForTab(const ModelNode &modelNode)
|
void EnterTabDesignerAction::createActionForTab(const ModelNode &modelNode)
|
||||||
{
|
{
|
||||||
if (modelNode.metaInfo().isValid()
|
if (modelNode.metaInfo().isValid()
|
||||||
&& modelNode.metaInfo().isSubclassOf("QtQuick.Controls.Tab", -1, -1)) {
|
&& modelNode.metaInfo().isSubclassOf("QtQuick.Controls.Tab")) {
|
||||||
|
|
||||||
QmlDesigner::QmlItemNode itemNode(modelNode);
|
QmlDesigner::QmlItemNode itemNode(modelNode);
|
||||||
|
|
||||||
|
@@ -60,11 +60,11 @@ void TabViewIndexModel::setupModel()
|
|||||||
m_tabViewIndexModel.clear();
|
m_tabViewIndexModel.clear();
|
||||||
if (m_modelNode.isValid()
|
if (m_modelNode.isValid()
|
||||||
&& m_modelNode.metaInfo().isValid()
|
&& m_modelNode.metaInfo().isValid()
|
||||||
&& m_modelNode.metaInfo().isSubclassOf("QtQuick.Controls.TabView", -1, -1)) {
|
&& m_modelNode.metaInfo().isSubclassOf("QtQuick.Controls.TabView")) {
|
||||||
|
|
||||||
foreach (const QmlDesigner::ModelNode &childModelNode, m_modelNode.defaultNodeAbstractProperty().directSubNodes()) {
|
foreach (const QmlDesigner::ModelNode &childModelNode, m_modelNode.defaultNodeAbstractProperty().directSubNodes()) {
|
||||||
if (childModelNode.metaInfo().isValid()
|
if (childModelNode.metaInfo().isValid()
|
||||||
&& childModelNode.metaInfo().isSubclassOf("QtQuick.Controls.Tab", -1, -1)) {
|
&& childModelNode.metaInfo().isSubclassOf("QtQuick.Controls.Tab")) {
|
||||||
QmlDesigner::QmlItemNode itemNode(childModelNode);
|
QmlDesigner::QmlItemNode itemNode(childModelNode);
|
||||||
if (itemNode.isValid()) {
|
if (itemNode.isValid()) {
|
||||||
m_tabViewIndexModel.append(itemNode.instanceValue("title").toString());
|
m_tabViewIndexModel.append(itemNode.instanceValue("title").toString());
|
||||||
|
@@ -96,7 +96,7 @@ public:
|
|||||||
bool hasCustomParser() const;
|
bool hasCustomParser() const;
|
||||||
|
|
||||||
bool availableInVersion(int majorVersion, int minorVersion) const;
|
bool availableInVersion(int majorVersion, int minorVersion) const;
|
||||||
bool isSubclassOf(const TypeName &type, int majorVersion, int minorVersio) const;
|
bool isSubclassOf(const TypeName &type, int majorVersion = -1, int minorVersion = -1) const;
|
||||||
|
|
||||||
bool isGraphicalItem() const;
|
bool isGraphicalItem() const;
|
||||||
bool isLayoutable() const;
|
bool isLayoutable() const;
|
||||||
|
@@ -783,7 +783,7 @@ CreateSceneCommand NodeInstanceView::createCreateSceneCommand()
|
|||||||
InstanceContainer::NodeSourceType nodeSourceType = static_cast<InstanceContainer::NodeSourceType>(instance.modelNode().nodeSourceType());
|
InstanceContainer::NodeSourceType nodeSourceType = static_cast<InstanceContainer::NodeSourceType>(instance.modelNode().nodeSourceType());
|
||||||
|
|
||||||
InstanceContainer::NodeMetaType nodeMetaType = InstanceContainer::ObjectMetaType;
|
InstanceContainer::NodeMetaType nodeMetaType = InstanceContainer::ObjectMetaType;
|
||||||
if (instance.modelNode().metaInfo().isSubclassOf("QtQuick.Item", -1, -1))
|
if (instance.modelNode().metaInfo().isSubclassOf("QtQuick.Item"))
|
||||||
nodeMetaType = InstanceContainer::ItemMetaType;
|
nodeMetaType = InstanceContainer::ItemMetaType;
|
||||||
|
|
||||||
InstanceContainer container(instance.instanceId(),
|
InstanceContainer container(instance.instanceId(),
|
||||||
@@ -885,7 +885,7 @@ CreateInstancesCommand NodeInstanceView::createCreateInstancesCommand(const QLis
|
|||||||
InstanceContainer::NodeSourceType nodeSourceType = static_cast<InstanceContainer::NodeSourceType>(instance.modelNode().nodeSourceType());
|
InstanceContainer::NodeSourceType nodeSourceType = static_cast<InstanceContainer::NodeSourceType>(instance.modelNode().nodeSourceType());
|
||||||
|
|
||||||
InstanceContainer::NodeMetaType nodeMetaType = InstanceContainer::ObjectMetaType;
|
InstanceContainer::NodeMetaType nodeMetaType = InstanceContainer::ObjectMetaType;
|
||||||
if (instance.modelNode().metaInfo().isSubclassOf("QtQuick.Item", -1, -1))
|
if (instance.modelNode().metaInfo().isSubclassOf("QtQuick.Item"))
|
||||||
nodeMetaType = InstanceContainer::ItemMetaType;
|
nodeMetaType = InstanceContainer::ItemMetaType;
|
||||||
|
|
||||||
InstanceContainer container(instance.instanceId(), instance.modelNode().type(), instance.modelNode().majorVersion(), instance.modelNode().minorVersion(),
|
InstanceContainer container(instance.instanceId(), instance.modelNode().type(), instance.modelNode().majorVersion(), instance.modelNode().minorVersion(),
|
||||||
|
@@ -1519,7 +1519,7 @@ bool NodeMetaInfo::isSubclassOf(const TypeName &type, int majorVersion, int mino
|
|||||||
|
|
||||||
bool NodeMetaInfo::isGraphicalItem() const
|
bool NodeMetaInfo::isGraphicalItem() const
|
||||||
{
|
{
|
||||||
return isSubclassOf("QtQuick.Item", -1, -1) || isSubclassOf("QtQuick.Window.Window", -1, -1);
|
return isSubclassOf("QtQuick.Item") || isSubclassOf("QtQuick.Window.Window");
|
||||||
}
|
}
|
||||||
|
|
||||||
void NodeMetaInfo::clearCache()
|
void NodeMetaInfo::clearCache()
|
||||||
@@ -1529,25 +1529,25 @@ void NodeMetaInfo::clearCache()
|
|||||||
|
|
||||||
bool NodeMetaInfo::isLayoutable() const
|
bool NodeMetaInfo::isLayoutable() const
|
||||||
{
|
{
|
||||||
if (isSubclassOf("<cpp>.QDeclarativeBasePositioner", -1, -1))
|
if (isSubclassOf("<cpp>.QDeclarativeBasePositioner"))
|
||||||
return true; //QtQuick 1
|
return true; //QtQuick 1
|
||||||
|
|
||||||
return isSubclassOf("QtQuick.Positioner", -1, -1)
|
return isSubclassOf("QtQuick.Positioner")
|
||||||
|| isSubclassOf("QtQuick.Layouts.Layout", -1, -1)
|
|| isSubclassOf("QtQuick.Layouts.Layout")
|
||||||
|| isSubclassOf("QtQuick.Controls.SplitView", -1, -1);
|
|| isSubclassOf("QtQuick.Controls.SplitView");
|
||||||
}
|
}
|
||||||
|
|
||||||
bool NodeMetaInfo::isView() const
|
bool NodeMetaInfo::isView() const
|
||||||
{
|
{
|
||||||
return isValid() &&
|
return isValid() &&
|
||||||
(isSubclassOf("QtQuick.ListView", -1, -1) ||
|
(isSubclassOf("QtQuick.ListView") ||
|
||||||
isSubclassOf("QtQuick.GridView", -1, -1) ||
|
isSubclassOf("QtQuick.GridView") ||
|
||||||
isSubclassOf("QtQuick.PathView", -1, -1));
|
isSubclassOf("QtQuick.PathView"));
|
||||||
}
|
}
|
||||||
|
|
||||||
bool NodeMetaInfo::isTabView() const
|
bool NodeMetaInfo::isTabView() const
|
||||||
{
|
{
|
||||||
return isSubclassOf("QtQuick.Controls.TabView", -1, -1);
|
return isSubclassOf("QtQuick.Controls.TabView");
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace QmlDesigner
|
} // namespace QmlDesigner
|
||||||
|
@@ -1056,7 +1056,7 @@ bool ModelNode::isComponent() const
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (metaInfo().isSubclassOf("QtQuick.Loader", -1 , -1)) {
|
if (metaInfo().isSubclassOf("QtQuick.Loader")) {
|
||||||
|
|
||||||
if (hasNodeListProperty("component")) {
|
if (hasNodeListProperty("component")) {
|
||||||
|
|
||||||
|
@@ -51,7 +51,7 @@ bool QmlPropertyChanges::isValid() const
|
|||||||
|
|
||||||
bool QmlPropertyChanges::isValidQmlPropertyChanges(const ModelNode &modelNode)
|
bool QmlPropertyChanges::isValidQmlPropertyChanges(const ModelNode &modelNode)
|
||||||
{
|
{
|
||||||
return isValidQmlModelNodeFacade(modelNode) && modelNode.metaInfo().isSubclassOf("QtQuick.PropertyChanges", -1, -1);
|
return isValidQmlModelNodeFacade(modelNode) && modelNode.metaInfo().isSubclassOf("QtQuick.PropertyChanges");
|
||||||
}
|
}
|
||||||
|
|
||||||
bool QmlModelStateOperation::isValid() const
|
bool QmlModelStateOperation::isValid() const
|
||||||
@@ -62,8 +62,8 @@ bool QmlModelStateOperation::isValid() const
|
|||||||
bool QmlModelStateOperation::isValidQmlModelStateOperation(const ModelNode &modelNode)
|
bool QmlModelStateOperation::isValidQmlModelStateOperation(const ModelNode &modelNode)
|
||||||
{
|
{
|
||||||
return isValidQmlModelNodeFacade(modelNode)
|
return isValidQmlModelNodeFacade(modelNode)
|
||||||
&& (modelNode.metaInfo().isSubclassOf("<cpp>.QDeclarative1StateOperation", -1, -1)
|
&& (modelNode.metaInfo().isSubclassOf("<cpp>.QDeclarative1StateOperation")
|
||||||
|| modelNode.metaInfo().isSubclassOf("<cpp>.QQuickStateOperation", -1, -1));
|
|| modelNode.metaInfo().isSubclassOf("<cpp>.QQuickStateOperation"));
|
||||||
}
|
}
|
||||||
|
|
||||||
void QmlPropertyChanges::removeProperty(const PropertyName &name)
|
void QmlPropertyChanges::removeProperty(const PropertyName &name)
|
||||||
|
@@ -47,10 +47,10 @@ namespace QmlDesigner {
|
|||||||
|
|
||||||
bool QmlItemNode::isItemOrWindow(const ModelNode &modelNode)
|
bool QmlItemNode::isItemOrWindow(const ModelNode &modelNode)
|
||||||
{
|
{
|
||||||
if (modelNode.metaInfo().isSubclassOf("QtQuick.Item", -1, -1))
|
if (modelNode.metaInfo().isSubclassOf("QtQuick.Item"))
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
if (modelNode.metaInfo().isSubclassOf("QtQuick.Window.Window", -1, -1) && modelNode.isRootNode())
|
if (modelNode.metaInfo().isSubclassOf("QtQuick.Window.Window") && modelNode.isRootNode())
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
@@ -364,7 +364,7 @@ bool QmlItemNode::instanceHasRotationTransform() const
|
|||||||
|
|
||||||
bool itemIsMovable(const ModelNode &modelNode)
|
bool itemIsMovable(const ModelNode &modelNode)
|
||||||
{
|
{
|
||||||
if (modelNode.metaInfo().isSubclassOf("QtQuick.Controls.Tab", -1, -1))
|
if (modelNode.metaInfo().isSubclassOf("QtQuick.Controls.Tab"))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (modelNode.hasParentProperty()) {
|
if (modelNode.hasParentProperty()) {
|
||||||
@@ -599,7 +599,7 @@ bool QmlItemNode::isInLayout() const
|
|||||||
ModelNode parent = modelNode().parentProperty().parentModelNode();
|
ModelNode parent = modelNode().parentProperty().parentModelNode();
|
||||||
|
|
||||||
if (parent.isValid() && parent.metaInfo().isValid())
|
if (parent.isValid() && parent.metaInfo().isValid())
|
||||||
return parent.metaInfo().isSubclassOf("QtQuick.Layouts.Layout", -1, -1);
|
return parent.metaInfo().isSubclassOf("QtQuick.Layouts.Layout");
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
@@ -224,7 +224,7 @@ bool QmlModelState::isValidQmlModelState(const ModelNode &modelNode)
|
|||||||
{
|
{
|
||||||
return isValidQmlModelNodeFacade(modelNode)
|
return isValidQmlModelNodeFacade(modelNode)
|
||||||
&& modelNode.metaInfo().isValid()
|
&& modelNode.metaInfo().isValid()
|
||||||
&& (modelNode.metaInfo().isSubclassOf("QtQuick.State", -1, -1) || isBaseState(modelNode));
|
&& (modelNode.metaInfo().isSubclassOf("QtQuick.State") || isBaseState(modelNode));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -294,7 +294,7 @@ static bool isConnectionsType(const QmlDesigner::TypeName &type)
|
|||||||
|
|
||||||
static bool propertyIsComponentType(const QmlDesigner::NodeAbstractProperty &property, const QmlDesigner::TypeName &type, QmlDesigner::Model *model)
|
static bool propertyIsComponentType(const QmlDesigner::NodeAbstractProperty &property, const QmlDesigner::TypeName &type, QmlDesigner::Model *model)
|
||||||
{
|
{
|
||||||
if (model->metaInfo(type, -1, -1).isSubclassOf("QtQuick.Component", -1, -1) && !isComponentType(type))
|
if (model->metaInfo(type).isSubclassOf("QtQuick.Component") && !isComponentType(type))
|
||||||
return false; //If the type is already a subclass of Component keep it
|
return false; //If the type is already a subclass of Component keep it
|
||||||
|
|
||||||
return property.parentModelNode().isValid() &&
|
return property.parentModelNode().isValid() &&
|
||||||
|
@@ -240,7 +240,7 @@ static bool isLoaderWithSourceComponent(const ModelNode &modelNode)
|
|||||||
{
|
{
|
||||||
if (modelNode.isValid()
|
if (modelNode.isValid()
|
||||||
&& modelNode.metaInfo().isValid()
|
&& modelNode.metaInfo().isValid()
|
||||||
&& modelNode.metaInfo().isSubclassOf("QtQuick.Loader", -1, -1)) {
|
&& modelNode.metaInfo().isSubclassOf("QtQuick.Loader")) {
|
||||||
|
|
||||||
if (modelNode.hasNodeProperty("sourceComponent"))
|
if (modelNode.hasNodeProperty("sourceComponent"))
|
||||||
return true;
|
return true;
|
||||||
@@ -256,7 +256,7 @@ static bool hasSourceWithFileComponent(const ModelNode &modelNode)
|
|||||||
{
|
{
|
||||||
if (modelNode.isValid()
|
if (modelNode.isValid()
|
||||||
&& modelNode.metaInfo().isValid()
|
&& modelNode.metaInfo().isValid()
|
||||||
&& modelNode.metaInfo().isSubclassOf("QtQuick.Loader", -1, -1)
|
&& modelNode.metaInfo().isSubclassOf("QtQuick.Loader")
|
||||||
&& modelNode.hasVariantProperty("source"))
|
&& modelNode.hasVariantProperty("source"))
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
@@ -78,7 +78,7 @@ static int pathRankForModelNode(const ModelNode &modelNode) {
|
|||||||
if (modelNode.metaInfo().hasProperty("path")) {
|
if (modelNode.metaInfo().hasProperty("path")) {
|
||||||
if (modelNode.hasNodeProperty("path")) {
|
if (modelNode.hasNodeProperty("path")) {
|
||||||
ModelNode pathNode = modelNode.nodeProperty("path").modelNode();
|
ModelNode pathNode = modelNode.nodeProperty("path").modelNode();
|
||||||
if (pathNode.metaInfo().isSubclassOf("QtQuick.Path", -1, -1) && pathNode.hasNodeListProperty("pathElements")) {
|
if (pathNode.metaInfo().isSubclassOf("QtQuick.Path") && pathNode.hasNodeListProperty("pathElements")) {
|
||||||
QList<ModelNode> pathElements = pathNode.nodeListProperty("pathElements").toModelNodeList();
|
QList<ModelNode> pathElements = pathNode.nodeListProperty("pathElements").toModelNodeList();
|
||||||
if (pathElements.isEmpty())
|
if (pathElements.isEmpty())
|
||||||
return 0;
|
return 0;
|
||||||
|
@@ -47,7 +47,7 @@ static bool isInEditedPath(const NodeAbstractProperty &propertyParent, const Mod
|
|||||||
if (editingPathViewModelNode.isValid()) {
|
if (editingPathViewModelNode.isValid()) {
|
||||||
if (editingPathViewModelNode.hasNodeProperty("path")) {
|
if (editingPathViewModelNode.hasNodeProperty("path")) {
|
||||||
ModelNode pathModelNode = editingPathViewModelNode.nodeProperty("path").modelNode();
|
ModelNode pathModelNode = editingPathViewModelNode.nodeProperty("path").modelNode();
|
||||||
if (pathModelNode.metaInfo().isSubclassOf("QtQuick.Path", -1, -1)) {
|
if (pathModelNode.metaInfo().isSubclassOf("QtQuick.Path")) {
|
||||||
if (propertyParent.name() == "pathElements" && propertyParent.parentModelNode() == pathModelNode)
|
if (propertyParent.name() == "pathElements" && propertyParent.parentModelNode() == pathModelNode)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@@ -65,8 +65,8 @@ void TextEditItem::setFormEditorItem(FormEditorItem *formEditorItem)
|
|||||||
|
|
||||||
NodeMetaInfo metaInfo = m_formEditorItem->qmlItemNode().modelNode().metaInfo();
|
NodeMetaInfo metaInfo = m_formEditorItem->qmlItemNode().modelNode().metaInfo();
|
||||||
if (metaInfo.isValid() &&
|
if (metaInfo.isValid() &&
|
||||||
(metaInfo.isSubclassOf("QtQuick.TextEdit", -1, -1)
|
(metaInfo.isSubclassOf("QtQuick.TextEdit")
|
||||||
|| metaInfo.isSubclassOf("QtQuick.Controls.TextArea", -1, -1))) {
|
|| metaInfo.isSubclassOf("QtQuick.Controls.TextArea"))) {
|
||||||
QSize maximumSize = rect.size().toSize();
|
QSize maximumSize = rect.size().toSize();
|
||||||
activateTextEdit(maximumSize);
|
activateTextEdit(maximumSize);
|
||||||
} else {
|
} else {
|
||||||
|
Reference in New Issue
Block a user