forked from qt-creator/qt-creator
QmlDesigner: Move QDS mime types to constants
Also: - Rename libraryresource to asset to match the assets view name. - Replace the outdated "bauhaus" name with "qtdesignstudio". Change-Id: I4cacfdc33c029431b1a7b906439dabc3d9a7ee26 Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This commit is contained in:
@@ -87,7 +87,7 @@ bool AssetsLibraryWidget::eventFilter(QObject *obj, QEvent *event)
|
|||||||
auto drag = new QDrag(this);
|
auto drag = new QDrag(this);
|
||||||
drag->setPixmap(m_assetsIconProvider->requestPixmap(m_assetsToDrag[0], nullptr, {128, 128}));
|
drag->setPixmap(m_assetsIconProvider->requestPixmap(m_assetsToDrag[0], nullptr, {128, 128}));
|
||||||
QMimeData *mimeData = new QMimeData;
|
QMimeData *mimeData = new QMimeData;
|
||||||
mimeData->setData("application/vnd.bauhaus.libraryresource", m_assetsToDrag.join(',').toUtf8());
|
mimeData->setData(Constants::MIME_TYPE_ASSETS, m_assetsToDrag.join(',').toUtf8());
|
||||||
drag->setMimeData(mimeData);
|
drag->setMimeData(mimeData);
|
||||||
drag->exec();
|
drag->exec();
|
||||||
drag->deleteLater();
|
drag->deleteLater();
|
||||||
@@ -307,25 +307,25 @@ QPair<QString, QByteArray> AssetsLibraryWidget::getAssetTypeAndData(const QStrin
|
|||||||
if (!suffix.isEmpty()) {
|
if (!suffix.isEmpty()) {
|
||||||
if (AssetsLibraryModel::supportedImageSuffixes().contains(suffix)) {
|
if (AssetsLibraryModel::supportedImageSuffixes().contains(suffix)) {
|
||||||
// Data: Image format (suffix)
|
// Data: Image format (suffix)
|
||||||
return {"application/vnd.bauhaus.libraryresource.image", suffix.toUtf8()};
|
return {Constants::MIME_TYPE_ASSET_IMAGE, suffix.toUtf8()};
|
||||||
} else if (AssetsLibraryModel::supportedFontSuffixes().contains(suffix)) {
|
} else if (AssetsLibraryModel::supportedFontSuffixes().contains(suffix)) {
|
||||||
// Data: Font family name
|
// Data: Font family name
|
||||||
QRawFont font(assetPath, 10);
|
QRawFont font(assetPath, 10);
|
||||||
QString fontFamily = font.isValid() ? font.familyName() : "";
|
QString fontFamily = font.isValid() ? font.familyName() : "";
|
||||||
return {"application/vnd.bauhaus.libraryresource.font", fontFamily.toUtf8()};
|
return {Constants::MIME_TYPE_ASSET_FONT, fontFamily.toUtf8()};
|
||||||
} else if (AssetsLibraryModel::supportedShaderSuffixes().contains(suffix)) {
|
} else if (AssetsLibraryModel::supportedShaderSuffixes().contains(suffix)) {
|
||||||
// Data: shader type, frament (f) or vertex (v)
|
// Data: shader type, frament (f) or vertex (v)
|
||||||
return {"application/vnd.bauhaus.libraryresource.shader",
|
return {Constants::MIME_TYPE_ASSET_SHADER,
|
||||||
AssetsLibraryModel::supportedFragmentShaderSuffixes().contains(suffix) ? "f" : "v"};
|
AssetsLibraryModel::supportedFragmentShaderSuffixes().contains(suffix) ? "f" : "v"};
|
||||||
} else if (AssetsLibraryModel::supportedAudioSuffixes().contains(suffix)) {
|
} else if (AssetsLibraryModel::supportedAudioSuffixes().contains(suffix)) {
|
||||||
// No extra data for sounds
|
// No extra data for sounds
|
||||||
return {"application/vnd.bauhaus.libraryresource.sound", {}};
|
return {Constants::MIME_TYPE_ASSET_SOUND, {}};
|
||||||
} else if (AssetsLibraryModel::supportedVideoSuffixes().contains(suffix)) {
|
} else if (AssetsLibraryModel::supportedVideoSuffixes().contains(suffix)) {
|
||||||
// No extra data for videos
|
// No extra data for videos
|
||||||
return {"application/vnd.bauhaus.libraryresource.video", {}};
|
return {Constants::MIME_TYPE_ASSET_VIDEO, {}};
|
||||||
} else if (AssetsLibraryModel::supportedTexture3DSuffixes().contains(suffix)) {
|
} else if (AssetsLibraryModel::supportedTexture3DSuffixes().contains(suffix)) {
|
||||||
// Data: Image format (suffix)
|
// Data: Image format (suffix)
|
||||||
return {"application/vnd.bauhaus.libraryresource.texture3d", suffix.toUtf8()};
|
return {Constants::MIME_TYPE_ASSET_TEXTURE3D, suffix.toUtf8()};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return {};
|
return {};
|
||||||
|
@@ -169,7 +169,7 @@ void Edit3DCanvas::dragEnterEvent(QDragEnterEvent *e)
|
|||||||
// Allow drop when there is no valid active scene, as the drop goes under the root node of
|
// Allow drop when there is no valid active scene, as the drop goes under the root node of
|
||||||
// the document in that case.
|
// the document in that case.
|
||||||
if (!node.isValid() || !ModelNode::isThisOrAncestorLocked(node)) {
|
if (!node.isValid() || !ModelNode::isThisOrAncestorLocked(node)) {
|
||||||
QByteArray data = e->mimeData()->data(QStringLiteral("application/vnd.bauhaus.itemlibraryinfo"));
|
QByteArray data = e->mimeData()->data(Constants::MIME_TYPE_ITEM_LIBRARY_INFO);
|
||||||
if (!data.isEmpty()) {
|
if (!data.isEmpty()) {
|
||||||
QDataStream stream(data);
|
QDataStream stream(data);
|
||||||
stream >> m_itemLibraryEntry;
|
stream >> m_itemLibraryEntry;
|
||||||
|
@@ -24,12 +24,12 @@
|
|||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#include "abstractformeditortool.h"
|
#include "abstractformeditortool.h"
|
||||||
|
#include "assetslibrarywidget.h"
|
||||||
|
#include "formeditorscene.h"
|
||||||
#include "formeditorview.h"
|
#include "formeditorview.h"
|
||||||
#include "formeditorwidget.h"
|
#include "formeditorwidget.h"
|
||||||
#include "formeditorscene.h"
|
#include "modelnodecontextmenu.h"
|
||||||
#include "assetslibrarywidget.h"
|
#include "qmldesignerconstants.h"
|
||||||
|
|
||||||
#include <modelnodecontextmenu.h>
|
|
||||||
|
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
#include <QGraphicsSceneDragDropEvent>
|
#include <QGraphicsSceneDragDropEvent>
|
||||||
@@ -236,20 +236,20 @@ void AbstractFormEditorTool::dropEvent(const QList<QGraphicsItem*> &/*itemList*/
|
|||||||
void AbstractFormEditorTool::dragEnterEvent(const QList<QGraphicsItem*> &itemList, QGraphicsSceneDragDropEvent *event)
|
void AbstractFormEditorTool::dragEnterEvent(const QList<QGraphicsItem*> &itemList, QGraphicsSceneDragDropEvent *event)
|
||||||
{
|
{
|
||||||
bool hasValidAssets = false;
|
bool hasValidAssets = false;
|
||||||
if (event->mimeData()->hasFormat("application/vnd.bauhaus.libraryresource")) {
|
if (event->mimeData()->hasFormat(Constants::MIME_TYPE_ASSETS)) {
|
||||||
const QStringList assetPaths = QString::fromUtf8(event->mimeData()
|
const QStringList assetPaths = QString::fromUtf8(event->mimeData()
|
||||||
->data("application/vnd.bauhaus.libraryresource")).split(",");
|
->data(Constants::MIME_TYPE_ASSETS)).split(',');
|
||||||
for (const QString &assetPath : assetPaths) {
|
for (const QString &assetPath : assetPaths) {
|
||||||
QString assetType = AssetsLibraryWidget::getAssetTypeAndData(assetPath).first;
|
QString assetType = AssetsLibraryWidget::getAssetTypeAndData(assetPath).first;
|
||||||
if (assetType == "application/vnd.bauhaus.libraryresource.image"
|
if (assetType == Constants::MIME_TYPE_ASSET_IMAGE
|
||||||
|| assetType == "application/vnd.bauhaus.libraryresource.font") {
|
|| assetType == Constants::MIME_TYPE_ASSET_FONT) {
|
||||||
hasValidAssets = true;
|
hasValidAssets = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (event->mimeData()->hasFormat(QLatin1String("application/vnd.bauhaus.itemlibraryinfo")) || hasValidAssets) {
|
if (event->mimeData()->hasFormat(Constants::MIME_TYPE_ITEM_LIBRARY_INFO) || hasValidAssets) {
|
||||||
event->accept();
|
event->accept();
|
||||||
view()->changeToDragTool();
|
view()->changeToDragTool();
|
||||||
view()->currentTool()->dragEnterEvent(itemList, event);
|
view()->currentTool()->dragEnterEvent(itemList, event);
|
||||||
|
@@ -31,6 +31,7 @@
|
|||||||
#include <metainfo.h>
|
#include <metainfo.h>
|
||||||
#include <nodehints.h>
|
#include <nodehints.h>
|
||||||
#include <rewritingexception.h>
|
#include <rewritingexception.h>
|
||||||
|
#include "qmldesignerconstants.h"
|
||||||
|
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
#include <QGraphicsSceneMouseEvent>
|
#include <QGraphicsSceneMouseEvent>
|
||||||
@@ -219,9 +220,7 @@ void DragTool::abort()
|
|||||||
|
|
||||||
static ItemLibraryEntry itemLibraryEntryFromMimeData(const QMimeData *mimeData)
|
static ItemLibraryEntry itemLibraryEntryFromMimeData(const QMimeData *mimeData)
|
||||||
{
|
{
|
||||||
QByteArray data = mimeData->data(QStringLiteral("application/vnd.bauhaus.itemlibraryinfo"));
|
QDataStream stream(mimeData->data(Constants::MIME_TYPE_ITEM_LIBRARY_INFO));
|
||||||
|
|
||||||
QDataStream stream(data);
|
|
||||||
|
|
||||||
ItemLibraryEntry itemLibraryEntry;
|
ItemLibraryEntry itemLibraryEntry;
|
||||||
stream >> itemLibraryEntry;
|
stream >> itemLibraryEntry;
|
||||||
@@ -236,7 +235,7 @@ static bool canBeDropped(const QMimeData *mimeData)
|
|||||||
|
|
||||||
static bool hasItemLibraryInfo(const QMimeData *mimeData)
|
static bool hasItemLibraryInfo(const QMimeData *mimeData)
|
||||||
{
|
{
|
||||||
return mimeData->hasFormat(QStringLiteral("application/vnd.bauhaus.itemlibraryinfo"));
|
return mimeData->hasFormat(Constants::MIME_TYPE_ITEM_LIBRARY_INFO);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DragTool::dropEvent(const QList<QGraphicsItem *> &/*itemList*/, QGraphicsSceneDragDropEvent *event)
|
void DragTool::dropEvent(const QList<QGraphicsItem *> &/*itemList*/, QGraphicsSceneDragDropEvent *event)
|
||||||
@@ -326,12 +325,12 @@ void DragTool::createDragNodes(const QMimeData *mimeData, const QPointF &scenePo
|
|||||||
scenePosition);
|
scenePosition);
|
||||||
} else {
|
} else {
|
||||||
const QStringList assetPaths = QString::fromUtf8(mimeData
|
const QStringList assetPaths = QString::fromUtf8(mimeData
|
||||||
->data("application/vnd.bauhaus.libraryresource")).split(",");
|
->data(Constants::MIME_TYPE_ASSETS)).split(',');
|
||||||
for (const QString &assetPath : assetPaths) {
|
for (const QString &assetPath : assetPaths) {
|
||||||
QString assetType = AssetsLibraryWidget::getAssetTypeAndData(assetPath).first;
|
QString assetType = AssetsLibraryWidget::getAssetTypeAndData(assetPath).first;
|
||||||
if (assetType == "application/vnd.bauhaus.libraryresource.image")
|
if (assetType == Constants::MIME_TYPE_ASSET_IMAGE)
|
||||||
createQmlItemNodeFromImage(assetPath, targetContainerQmlItemNode, scenePosition);
|
createQmlItemNodeFromImage(assetPath, targetContainerQmlItemNode, scenePosition);
|
||||||
else if (assetType == "application/vnd.bauhaus.libraryresource.font")
|
else if (assetType == Constants::MIME_TYPE_ASSET_FONT)
|
||||||
createQmlItemNodeFromFont(assetPath, targetContainerQmlItemNode, scenePosition);
|
createQmlItemNodeFromFont(assetPath, targetContainerQmlItemNode, scenePosition);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -36,6 +36,7 @@
|
|||||||
#include <nodemetainfo.h>
|
#include <nodemetainfo.h>
|
||||||
#include <projectexplorer/project.h>
|
#include <projectexplorer/project.h>
|
||||||
#include <projectexplorer/session.h>
|
#include <projectexplorer/session.h>
|
||||||
|
#include "qmldesignerconstants.h"
|
||||||
#include "qmldesignerplugin.h"
|
#include "qmldesignerplugin.h"
|
||||||
#include <utils/algorithm.h>
|
#include <utils/algorithm.h>
|
||||||
#include <utils/qtcassert.h>
|
#include <utils/qtcassert.h>
|
||||||
@@ -512,9 +513,9 @@ QMimeData *ItemLibraryModel::getMimeData(const ItemLibraryEntry &itemLibraryEntr
|
|||||||
QByteArray data;
|
QByteArray data;
|
||||||
QDataStream stream(&data, QIODevice::WriteOnly);
|
QDataStream stream(&data, QIODevice::WriteOnly);
|
||||||
stream << itemLibraryEntry;
|
stream << itemLibraryEntry;
|
||||||
mimeData->setData(QStringLiteral("application/vnd.bauhaus.itemlibraryinfo"), data);
|
mimeData->setData(Constants::MIME_TYPE_ITEM_LIBRARY_INFO, data);
|
||||||
|
|
||||||
mimeData->removeFormat(QStringLiteral("text/plain"));
|
mimeData->removeFormat("text/plain");
|
||||||
|
|
||||||
return mimeData;
|
return mimeData;
|
||||||
}
|
}
|
||||||
|
@@ -71,7 +71,7 @@ namespace QmlDesigner {
|
|||||||
|
|
||||||
static QList<ModelNode> modelNodesFromMimeData(const QMimeData *mineData, AbstractView *view)
|
static QList<ModelNode> modelNodesFromMimeData(const QMimeData *mineData, AbstractView *view)
|
||||||
{
|
{
|
||||||
QByteArray encodedModelNodeData = mineData->data(QLatin1String("application/vnd.modelnode.list"));
|
QByteArray encodedModelNodeData = mineData->data(Constants::MIME_TYPE_MODELNODE_LIST);
|
||||||
QDataStream modelNodeStream(&encodedModelNodeData, QIODevice::ReadOnly);
|
QDataStream modelNodeStream(&encodedModelNodeData, QIODevice::ReadOnly);
|
||||||
|
|
||||||
QList<ModelNode> modelNodeList;
|
QList<ModelNode> modelNodeList;
|
||||||
@@ -465,9 +465,9 @@ void NavigatorTreeModel::setView(NavigatorView *view)
|
|||||||
|
|
||||||
QStringList NavigatorTreeModel::mimeTypes() const
|
QStringList NavigatorTreeModel::mimeTypes() const
|
||||||
{
|
{
|
||||||
const static QStringList types({"application/vnd.modelnode.list",
|
const static QStringList types({Constants::MIME_TYPE_MODELNODE_LIST,
|
||||||
"application/vnd.bauhaus.itemlibraryinfo",
|
Constants::MIME_TYPE_ITEM_LIBRARY_INFO,
|
||||||
"application/vnd.bauhaus.libraryresource"});
|
Constants::MIME_TYPE_ASSETS});
|
||||||
|
|
||||||
return types;
|
return types;
|
||||||
}
|
}
|
||||||
@@ -490,7 +490,7 @@ QMimeData *NavigatorTreeModel::mimeData(const QModelIndexList &modelIndexList) c
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
mimeData->setData("application/vnd.modelnode.list", encodedModelNodeData);
|
mimeData->setData(Constants::MIME_TYPE_MODELNODE_LIST, encodedModelNodeData);
|
||||||
|
|
||||||
return mimeData;
|
return mimeData;
|
||||||
}
|
}
|
||||||
@@ -560,10 +560,10 @@ bool NavigatorTreeModel::dropMimeData(const QMimeData *mimeData,
|
|||||||
widget->setDragType("");
|
widget->setDragType("");
|
||||||
|
|
||||||
if (dropModelIndex.model() == this) {
|
if (dropModelIndex.model() == this) {
|
||||||
if (mimeData->hasFormat("application/vnd.bauhaus.itemlibraryinfo")) {
|
if (mimeData->hasFormat(Constants::MIME_TYPE_ITEM_LIBRARY_INFO)) {
|
||||||
handleItemLibraryItemDrop(mimeData, rowNumber, dropModelIndex);
|
handleItemLibraryItemDrop(mimeData, rowNumber, dropModelIndex);
|
||||||
} else if (mimeData->hasFormat("application/vnd.bauhaus.libraryresource")) {
|
} else if (mimeData->hasFormat(Constants::MIME_TYPE_ASSETS)) {
|
||||||
const QStringList assetsPaths = QString::fromUtf8(mimeData->data("application/vnd.bauhaus.libraryresource")).split(",");
|
const QStringList assetsPaths = QString::fromUtf8(mimeData->data(Constants::MIME_TYPE_ASSETS)).split(',');
|
||||||
NodeAbstractProperty targetProperty;
|
NodeAbstractProperty targetProperty;
|
||||||
|
|
||||||
const QModelIndex rowModelIndex = dropModelIndex.sibling(dropModelIndex.row(), 0);
|
const QModelIndex rowModelIndex = dropModelIndex.sibling(dropModelIndex.row(), 0);
|
||||||
@@ -579,9 +579,9 @@ bool NavigatorTreeModel::dropMimeData(const QMimeData *mimeData,
|
|||||||
QSet<QString> neededImports;
|
QSet<QString> neededImports;
|
||||||
for (const QString &assetPath : assetsPaths) {
|
for (const QString &assetPath : assetsPaths) {
|
||||||
QString assetType = AssetsLibraryWidget::getAssetTypeAndData(assetPath).first;
|
QString assetType = AssetsLibraryWidget::getAssetTypeAndData(assetPath).first;
|
||||||
if (assetType == "application/vnd.bauhaus.libraryresource.shader")
|
if (assetType == Constants::MIME_TYPE_ASSET_SHADER)
|
||||||
neededImports.insert("QtQuick3D");
|
neededImports.insert("QtQuick3D");
|
||||||
else if (assetType == "application/vnd.bauhaus.libraryresource.sound")
|
else if (assetType == Constants::MIME_TYPE_ASSET_SOUND)
|
||||||
neededImports.insert("QtMultimedia");
|
neededImports.insert("QtMultimedia");
|
||||||
|
|
||||||
if (neededImports.size() == 2)
|
if (neededImports.size() == 2)
|
||||||
@@ -598,20 +598,20 @@ bool NavigatorTreeModel::dropMimeData(const QMimeData *mimeData,
|
|||||||
auto assetTypeAndData = AssetsLibraryWidget::getAssetTypeAndData(assetPath);
|
auto assetTypeAndData = AssetsLibraryWidget::getAssetTypeAndData(assetPath);
|
||||||
QString assetType = assetTypeAndData.first;
|
QString assetType = assetTypeAndData.first;
|
||||||
QString assetData = QString::fromUtf8(assetTypeAndData.second);
|
QString assetData = QString::fromUtf8(assetTypeAndData.second);
|
||||||
if (assetType == "application/vnd.bauhaus.libraryresource.image") {
|
if (assetType == Constants::MIME_TYPE_ASSET_IMAGE) {
|
||||||
currNode = handleItemLibraryImageDrop(assetPath, targetProperty,
|
currNode = handleItemLibraryImageDrop(assetPath, targetProperty,
|
||||||
rowModelIndex, moveNodesAfter);
|
rowModelIndex, moveNodesAfter);
|
||||||
} else if (assetType == "application/vnd.bauhaus.libraryresource.font") {
|
} else if (assetType == Constants::MIME_TYPE_ASSET_FONT) {
|
||||||
currNode = handleItemLibraryFontDrop(assetData, // assetData is fontFamily
|
currNode = handleItemLibraryFontDrop(assetData, // assetData is fontFamily
|
||||||
targetProperty, rowModelIndex);
|
targetProperty, rowModelIndex);
|
||||||
} else if (assetType == "application/vnd.bauhaus.libraryresource.shader") {
|
} else if (assetType == Constants::MIME_TYPE_ASSET_SHADER) {
|
||||||
currNode = handleItemLibraryShaderDrop(assetPath, assetData == "f",
|
currNode = handleItemLibraryShaderDrop(assetPath, assetData == "f",
|
||||||
targetProperty, rowModelIndex,
|
targetProperty, rowModelIndex,
|
||||||
moveNodesAfter);
|
moveNodesAfter);
|
||||||
} else if (assetType == "application/vnd.bauhaus.libraryresource.sound") {
|
} else if (assetType == Constants::MIME_TYPE_ASSET_SOUND) {
|
||||||
currNode = handleItemLibrarySoundDrop(assetPath, targetProperty,
|
currNode = handleItemLibrarySoundDrop(assetPath, targetProperty,
|
||||||
rowModelIndex);
|
rowModelIndex);
|
||||||
} else if (assetType == "application/vnd.bauhaus.libraryresource.texture3d") {
|
} else if (assetType == Constants::MIME_TYPE_ASSET_TEXTURE3D) {
|
||||||
currNode = handleItemLibraryTexture3dDrop(assetPath, targetProperty,
|
currNode = handleItemLibraryTexture3dDrop(assetPath, targetProperty,
|
||||||
rowModelIndex, moveNodesAfter);
|
rowModelIndex, moveNodesAfter);
|
||||||
}
|
}
|
||||||
@@ -627,7 +627,7 @@ bool NavigatorTreeModel::dropMimeData(const QMimeData *mimeData,
|
|||||||
m_view->setSelectedModelNodes(addedNodes);
|
m_view->setSelectedModelNodes(addedNodes);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (mimeData->hasFormat("application/vnd.modelnode.list")) {
|
} else if (mimeData->hasFormat(Constants::MIME_TYPE_MODELNODE_LIST)) {
|
||||||
handleInternalDrop(mimeData, rowNumber, dropModelIndex);
|
handleInternalDrop(mimeData, rowNumber, dropModelIndex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -673,7 +673,7 @@ void NavigatorTreeModel::handleItemLibraryItemDrop(const QMimeData *mimeData, in
|
|||||||
NodeAbstractProperty targetProperty;
|
NodeAbstractProperty targetProperty;
|
||||||
|
|
||||||
const ItemLibraryEntry itemLibraryEntry =
|
const ItemLibraryEntry itemLibraryEntry =
|
||||||
createItemLibraryEntryFromMimeData(mimeData->data("application/vnd.bauhaus.itemlibraryinfo"));
|
createItemLibraryEntryFromMimeData(mimeData->data(Constants::MIME_TYPE_ITEM_LIBRARY_INFO));
|
||||||
|
|
||||||
const NodeHints hints = NodeHints::fromItemLibraryEntry(itemLibraryEntry);
|
const NodeHints hints = NodeHints::fromItemLibraryEntry(itemLibraryEntry);
|
||||||
|
|
||||||
|
@@ -268,8 +268,8 @@ void NavigatorView::bindingPropertiesChanged(const QList<BindingProperty> & prop
|
|||||||
|
|
||||||
void NavigatorView::dragStarted(QMimeData *mimeData)
|
void NavigatorView::dragStarted(QMimeData *mimeData)
|
||||||
{
|
{
|
||||||
if (mimeData->hasFormat("application/vnd.bauhaus.itemlibraryinfo")) {
|
if (mimeData->hasFormat(Constants::MIME_TYPE_ITEM_LIBRARY_INFO)) {
|
||||||
QByteArray data = mimeData->data("application/vnd.bauhaus.itemlibraryinfo");
|
QByteArray data = mimeData->data(Constants::MIME_TYPE_ITEM_LIBRARY_INFO);
|
||||||
QDataStream stream(data);
|
QDataStream stream(data);
|
||||||
ItemLibraryEntry itemLibraryEntry;
|
ItemLibraryEntry itemLibraryEntry;
|
||||||
stream >> itemLibraryEntry;
|
stream >> itemLibraryEntry;
|
||||||
|
@@ -85,6 +85,16 @@ const char QUICK_3D_ASSET_IMPORT_DATA_OPTIONS_KEY[] = "import_options";
|
|||||||
const char QUICK_3D_ASSET_IMPORT_DATA_SOURCE_KEY[] = "source_scene";
|
const char QUICK_3D_ASSET_IMPORT_DATA_SOURCE_KEY[] = "source_scene";
|
||||||
const char DEFAULT_ASSET_IMPORT_FOLDER[] = "/asset_imports";
|
const char DEFAULT_ASSET_IMPORT_FOLDER[] = "/asset_imports";
|
||||||
|
|
||||||
|
const char MIME_TYPE_ITEM_LIBRARY_INFO[] = "application/vnd.qtdesignstudio.itemlibraryinfo";
|
||||||
|
const char MIME_TYPE_ASSETS[] = "application/vnd.qtdesignstudio.assets";
|
||||||
|
const char MIME_TYPE_ASSET_IMAGE[] = "application/vnd.qtdesignstudio.asset.image";
|
||||||
|
const char MIME_TYPE_ASSET_FONT[] = "application/vnd.qtdesignstudio.asset.font";
|
||||||
|
const char MIME_TYPE_ASSET_SHADER[] = "application/vnd.qtdesignstudio.asset.shader";
|
||||||
|
const char MIME_TYPE_ASSET_SOUND[] = "application/vnd.qtdesignstudio.asset.sound";
|
||||||
|
const char MIME_TYPE_ASSET_VIDEO[] = "application/vnd.qtdesignstudio.asset.video";
|
||||||
|
const char MIME_TYPE_ASSET_TEXTURE3D[] = "application/vnd.qtdesignstudio.asset.texture3d";
|
||||||
|
const char MIME_TYPE_MODELNODE_LIST[] = "application/vnd.qtdesignstudio.modelnode.list";
|
||||||
|
|
||||||
// Menus
|
// Menus
|
||||||
const char M_VIEW_WORKSPACES[] = "QmlDesigner.Menu.View.Workspaces";
|
const char M_VIEW_WORKSPACES[] = "QmlDesigner.Menu.View.Workspaces";
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user