mirror of
https://github.com/HifiExperiments/overte.git
synced 2025-08-09 14:40:40 +02:00
Merge pull request #877 from Atlante45/separate_import_with_preview
New paste behaviour
This commit is contained in:
commit
18dbfd5cc7
4 changed files with 12 additions and 16 deletions
|
@ -495,6 +495,11 @@ void Application::keyPressEvent(QKeyEvent* event) {
|
||||||
|
|
||||||
bool isShifted = event->modifiers().testFlag(Qt::ShiftModifier);
|
bool isShifted = event->modifiers().testFlag(Qt::ShiftModifier);
|
||||||
switch (event->key()) {
|
switch (event->key()) {
|
||||||
|
case Qt::Key_Shift:
|
||||||
|
if (Menu::getInstance()->isOptionChecked(MenuOption::VoxelSelectMode)) {
|
||||||
|
_pasteMode = true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
case Qt::Key_BracketLeft:
|
case Qt::Key_BracketLeft:
|
||||||
case Qt::Key_BracketRight:
|
case Qt::Key_BracketRight:
|
||||||
case Qt::Key_BraceLeft:
|
case Qt::Key_BraceLeft:
|
||||||
|
@ -726,6 +731,9 @@ void Application::keyReleaseEvent(QKeyEvent* event) {
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (event->key()) {
|
switch (event->key()) {
|
||||||
|
case Qt::Key_Shift:
|
||||||
|
_pasteMode = false;
|
||||||
|
break;
|
||||||
case Qt::Key_E:
|
case Qt::Key_E:
|
||||||
_myAvatar.setDriveKeys(UP, 0);
|
_myAvatar.setDriveKeys(UP, 0);
|
||||||
break;
|
break;
|
||||||
|
@ -1201,22 +1209,17 @@ void Application::exportVoxels() {
|
||||||
}
|
}
|
||||||
|
|
||||||
void Application::importVoxels() {
|
void Application::importVoxels() {
|
||||||
_pasteMode = false;
|
|
||||||
|
|
||||||
if (_voxelImporter.exec()) {
|
if (_voxelImporter.exec()) {
|
||||||
qDebug("[DEBUG] Import succedded.\n");
|
qDebug("[DEBUG] Import succedded.\n");
|
||||||
|
|
||||||
if (_voxelImporter.getimportIntoClipboard()) {
|
if (_voxelImporter.getImportIntoClipboard()) {
|
||||||
_clipboard.killLocalVoxels();
|
_clipboard.killLocalVoxels();
|
||||||
_voxelImporter.getVoxelSystem()->copySubTreeIntoNewTree(
|
_voxelImporter.getVoxelSystem()->copySubTreeIntoNewTree(
|
||||||
_voxelImporter.getVoxelSystem()->getVoxelAt(0, 0, 0, 1),
|
_voxelImporter.getVoxelSystem()->getVoxelAt(0, 0, 0, 1),
|
||||||
&_clipboard,
|
&_clipboard,
|
||||||
true);
|
true);
|
||||||
} else {
|
_voxelImporter.reset();
|
||||||
_pasteMode = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
qDebug("[DEBUG] Import failed.\n");
|
qDebug("[DEBUG] Import failed.\n");
|
||||||
}
|
}
|
||||||
|
@ -1239,12 +1242,6 @@ void Application::copyVoxels() {
|
||||||
// then copy onto it
|
// then copy onto it
|
||||||
_voxels.copySubTreeIntoNewTree(selectedNode, &_clipboard, true);
|
_voxels.copySubTreeIntoNewTree(selectedNode, &_clipboard, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
_pasteMode = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
void Application::togglePasteMode() {
|
|
||||||
_pasteMode = !_pasteMode;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Application::pasteVoxels() {
|
void Application::pasteVoxels() {
|
||||||
|
|
|
@ -140,7 +140,6 @@ public slots:
|
||||||
void importVoxels();
|
void importVoxels();
|
||||||
void cutVoxels();
|
void cutVoxels();
|
||||||
void copyVoxels();
|
void copyVoxels();
|
||||||
void togglePasteMode();
|
|
||||||
void pasteVoxels();
|
void pasteVoxels();
|
||||||
|
|
||||||
void setRenderVoxels(bool renderVoxels);
|
void setRenderVoxels(bool renderVoxels);
|
||||||
|
|
|
@ -248,7 +248,7 @@ Menu::Menu() :
|
||||||
addActionToQMenuAndActionHash(voxelMenu, MenuOption::ImportVoxels, Qt::CTRL | Qt::Key_I, appInstance, SLOT(importVoxels()));
|
addActionToQMenuAndActionHash(voxelMenu, MenuOption::ImportVoxels, Qt::CTRL | Qt::Key_I, appInstance, SLOT(importVoxels()));
|
||||||
addActionToQMenuAndActionHash(voxelMenu, MenuOption::CutVoxels, Qt::CTRL | Qt::Key_X, appInstance, SLOT(cutVoxels()));
|
addActionToQMenuAndActionHash(voxelMenu, MenuOption::CutVoxels, Qt::CTRL | Qt::Key_X, appInstance, SLOT(cutVoxels()));
|
||||||
addActionToQMenuAndActionHash(voxelMenu, MenuOption::CopyVoxels, Qt::CTRL | Qt::Key_C, appInstance, SLOT(copyVoxels()));
|
addActionToQMenuAndActionHash(voxelMenu, MenuOption::CopyVoxels, Qt::CTRL | Qt::Key_C, appInstance, SLOT(copyVoxels()));
|
||||||
addActionToQMenuAndActionHash(voxelMenu, MenuOption::PasteVoxels, Qt::CTRL | Qt::Key_V, appInstance, SLOT(togglePasteMode()));
|
addActionToQMenuAndActionHash(voxelMenu, MenuOption::PasteVoxels, Qt::CTRL | Qt::Key_V, appInstance, SLOT(pasteVoxels()));
|
||||||
|
|
||||||
QMenu* debugMenu = addMenu("Debug");
|
QMenu* debugMenu = addMenu("Debug");
|
||||||
|
|
||||||
|
|
|
@ -26,7 +26,7 @@ public:
|
||||||
|
|
||||||
bool getImportWaiting() const { return _importWaiting; }
|
bool getImportWaiting() const { return _importWaiting; }
|
||||||
VoxelSystem* getVoxelSystem() { return &_voxelSystem; }
|
VoxelSystem* getVoxelSystem() { return &_voxelSystem; }
|
||||||
bool getimportIntoClipboard() const { return _importDialog.getImportIntoClipboard(); }
|
bool getImportIntoClipboard() const { return _importDialog.getImportIntoClipboard(); }
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
int exec();
|
int exec();
|
||||||
|
|
Loading…
Reference in a new issue