forked from qt-creator/qt-creator
QmlDesigner: Fix import version when adding unimported module
Fixes: QDS-3994 Change-Id: If39df641cbfb563a169b3b2e8001f68941fd398c Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This commit is contained in:
@@ -78,7 +78,6 @@ ScrollView {
|
|||||||
|
|
||||||
property string importToRemove: ""
|
property string importToRemove: ""
|
||||||
property string importToAdd: ""
|
property string importToAdd: ""
|
||||||
property var currentItem: null
|
|
||||||
|
|
||||||
// called from C++ to close context menu on focus out
|
// called from C++ to close context menu on focus out
|
||||||
function closeContextMenu()
|
function closeContextMenu()
|
||||||
@@ -137,8 +136,8 @@ ScrollView {
|
|||||||
StudioControls.MenuItem {
|
StudioControls.MenuItem {
|
||||||
id: importMenuItem
|
id: importMenuItem
|
||||||
text: qsTr("Add Module: ") + importToAdd
|
text: qsTr("Add Module: ") + importToAdd
|
||||||
enabled: currentItem
|
enabled: importToAdd !== ""
|
||||||
onTriggered: rootView.addImportForItem(currentItem)
|
onTriggered: rootView.addImportForItem(importToAdd)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -211,8 +210,6 @@ ScrollView {
|
|||||||
onShowContextMenu: {
|
onShowContextMenu: {
|
||||||
if (!itemUsable) {
|
if (!itemUsable) {
|
||||||
importToAdd = itemRequiredImport
|
importToAdd = itemRequiredImport
|
||||||
if (importToAdd !== "") {
|
|
||||||
currentItem = itemLibraryEntry
|
|
||||||
itemContextMenu.popup()
|
itemContextMenu.popup()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -225,5 +222,4 @@ ScrollView {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@@ -141,6 +141,15 @@ void ItemLibraryAddImportModel::update(const QList<Import> &possibleImports)
|
|||||||
endResetModel();
|
endResetModel();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Import ItemLibraryAddImportModel::getImport(const QString &importUrl) const
|
||||||
|
{
|
||||||
|
for (const Import &import : std::as_const(m_importList))
|
||||||
|
if (import.url() == importUrl)
|
||||||
|
return import;
|
||||||
|
|
||||||
|
return {};
|
||||||
|
}
|
||||||
|
|
||||||
void ItemLibraryAddImportModel::setSearchText(const QString &searchText)
|
void ItemLibraryAddImportModel::setSearchText(const QString &searchText)
|
||||||
{
|
{
|
||||||
QString lowerSearchText = searchText.toLower();
|
QString lowerSearchText = searchText.toLower();
|
||||||
|
@@ -51,6 +51,7 @@ public:
|
|||||||
Import getImportAt(int index) const;
|
Import getImportAt(int index) const;
|
||||||
|
|
||||||
void setPriorityImports(const QSet<QString> &priorityImports);
|
void setPriorityImports(const QSet<QString> &priorityImports);
|
||||||
|
Import getImport(const QString &importUrl) const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QString m_searchText;
|
QString m_searchText;
|
||||||
|
@@ -434,12 +434,12 @@ void ItemLibraryWidget::removeImport(const QString &importUrl)
|
|||||||
m_model->changeImports({}, {importSection->importEntry()});
|
m_model->changeImports({}, {importSection->importEntry()});
|
||||||
}
|
}
|
||||||
|
|
||||||
void ItemLibraryWidget::addImportForItem(const QVariant &entry)
|
void ItemLibraryWidget::addImportForItem(const QString &importUrl)
|
||||||
{
|
{
|
||||||
QTC_ASSERT(m_itemLibraryModel, return);
|
QTC_ASSERT(m_itemLibraryModel, return);
|
||||||
QTC_ASSERT(m_model, return);
|
QTC_ASSERT(m_model, return);
|
||||||
|
|
||||||
Import import = m_itemLibraryModel->entryToImport(entry.value<ItemLibraryEntry>());
|
Import import = m_itemLibraryAddImportModel->getImport(importUrl);
|
||||||
m_model->changeImports({import}, {});
|
m_model->changeImports({import}, {});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -90,7 +90,7 @@ public:
|
|||||||
|
|
||||||
Q_INVOKABLE void startDragAndDrop(const QVariant &itemLibEntry, const QPointF &mousePos);
|
Q_INVOKABLE void startDragAndDrop(const QVariant &itemLibEntry, const QPointF &mousePos);
|
||||||
Q_INVOKABLE void removeImport(const QString &importUrl);
|
Q_INVOKABLE void removeImport(const QString &importUrl);
|
||||||
Q_INVOKABLE void addImportForItem(const QVariant &entry);
|
Q_INVOKABLE void addImportForItem(const QString &importUrl);
|
||||||
Q_INVOKABLE void handleTabChanged(int index);
|
Q_INVOKABLE void handleTabChanged(int index);
|
||||||
Q_INVOKABLE void handleAddModule();
|
Q_INVOKABLE void handleAddModule();
|
||||||
Q_INVOKABLE void handleAddAsset();
|
Q_INVOKABLE void handleAddAsset();
|
||||||
|
Reference in New Issue
Block a user