mirror of
https://port.numenaute.org/aleajactaest/khanat-opennel-code.git
synced 2024-12-26 19:00:53 +00:00
Changed: #1301 Added dialog with a list of landscapes and operations (setActive, save, saveAs, delete).
--HG-- branch : gsoc2011-worldeditorqt
This commit is contained in:
parent
808d0f1b8e
commit
d67fa1668d
4 changed files with 265 additions and 28 deletions
|
@ -222,10 +222,11 @@ void ZoneBuilder::deleteZoneRegion(int id)
|
||||||
{
|
{
|
||||||
if ((0 <= id) && (id < int(m_landscapeItems.size())))
|
if ((0 <= id) && (id < int(m_landscapeItems.size())))
|
||||||
{
|
{
|
||||||
|
if (m_landscapeItems.at(id).rectItem != 0)
|
||||||
|
delete m_landscapeItems.at(id).rectItem;
|
||||||
m_landscapeScene->delZoneRegion(m_landscapeItems.at(id).zoneRegionObject->ligoZoneRegion());
|
m_landscapeScene->delZoneRegion(m_landscapeItems.at(id).zoneRegionObject->ligoZoneRegion());
|
||||||
delete m_landscapeItems.at(id).zoneRegionObject;
|
delete m_landscapeItems.at(id).zoneRegionObject;
|
||||||
delete m_landscapeItems.at(id).builderZoneRegion;
|
delete m_landscapeItems.at(id).builderZoneRegion;
|
||||||
delete m_landscapeItems.at(id).rectItem;
|
|
||||||
m_landscapeItems.erase(m_landscapeItems.begin() + id);
|
m_landscapeItems.erase(m_landscapeItems.begin() + id);
|
||||||
calcMask();
|
calcMask();
|
||||||
}
|
}
|
||||||
|
@ -236,10 +237,13 @@ void ZoneBuilder::setCurrentZoneRegion(int id)
|
||||||
if ((0 <= id) && (id < int(m_landscapeItems.size())))
|
if ((0 <= id) && (id < int(m_landscapeItems.size())))
|
||||||
{
|
{
|
||||||
if (currentIdZoneRegion() != -1)
|
if (currentIdZoneRegion() != -1)
|
||||||
m_landscapeItems.at(m_currentZoneRegion).rectItem = m_landscapeScene->createLayerBlackout(currentZoneRegion()->ligoZoneRegion());
|
{
|
||||||
m_currentZoneRegion = id;
|
NLLIGO::CZoneRegion &ligoRegion = m_landscapeItems.at(m_currentZoneRegion).zoneRegionObject->ligoZoneRegion();
|
||||||
|
m_landscapeItems.at(m_currentZoneRegion).rectItem = m_landscapeScene->createLayerBlackout(ligoRegion);
|
||||||
|
}
|
||||||
delete m_landscapeItems.at(id).rectItem;
|
delete m_landscapeItems.at(id).rectItem;
|
||||||
m_landscapeItems.at(id).rectItem = 0;
|
m_landscapeItems.at(id).rectItem = 0;
|
||||||
|
m_currentZoneRegion = id;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -33,15 +33,20 @@
|
||||||
|
|
||||||
// Qt includes
|
// Qt includes
|
||||||
#include <QtCore/QSettings>
|
#include <QtCore/QSettings>
|
||||||
|
#include <QtGui/QMenu>
|
||||||
#include <QtGui/QFileDialog>
|
#include <QtGui/QFileDialog>
|
||||||
#include <QtGui/QMessageBox>
|
#include <QtGui/QMessageBox>
|
||||||
|
|
||||||
namespace LandscapeEditor
|
namespace LandscapeEditor
|
||||||
{
|
{
|
||||||
|
|
||||||
|
static const int LANDSCAPE_ID = 32;
|
||||||
|
int NewLandCounter = 0;
|
||||||
QString _lastDir;
|
QString _lastDir;
|
||||||
|
|
||||||
LandscapeEditorWindow::LandscapeEditorWindow(QWidget *parent)
|
LandscapeEditorWindow::LandscapeEditorWindow(QWidget *parent)
|
||||||
: QMainWindow(parent),
|
: QMainWindow(parent),
|
||||||
|
m_currentRow(-1),
|
||||||
m_landscapeScene(0),
|
m_landscapeScene(0),
|
||||||
m_zoneBuilder(0),
|
m_zoneBuilder(0),
|
||||||
m_undoStack(0),
|
m_undoStack(0),
|
||||||
|
@ -53,7 +58,7 @@ LandscapeEditorWindow::LandscapeEditorWindow(QWidget *parent)
|
||||||
m_landscapeScene = new LandscapeScene(this);
|
m_landscapeScene = new LandscapeScene(this);
|
||||||
|
|
||||||
m_zoneBuilder = new ZoneBuilder(m_landscapeScene, m_ui.zoneListWidget, m_undoStack);
|
m_zoneBuilder = new ZoneBuilder(m_landscapeScene, m_ui.zoneListWidget, m_undoStack);
|
||||||
m_zoneBuilder->init("e:/-nel-/install/continents/newbieland", true);
|
m_zoneBuilder->init("e:/-nel-/install/continents/newbieland", false);
|
||||||
m_ui.zoneListWidget->setZoneBuilder(m_zoneBuilder);
|
m_ui.zoneListWidget->setZoneBuilder(m_zoneBuilder);
|
||||||
m_ui.zoneListWidget->updateUi();
|
m_ui.zoneListWidget->updateUi();
|
||||||
|
|
||||||
|
@ -63,6 +68,12 @@ LandscapeEditorWindow::LandscapeEditorWindow(QWidget *parent)
|
||||||
m_oglWidget = new QGLWidget(QGLFormat(QGL::DoubleBuffer | QGL::SampleBuffers));
|
m_oglWidget = new QGLWidget(QGLFormat(QGL::DoubleBuffer | QGL::SampleBuffers));
|
||||||
m_ui.graphicsView->setViewport(m_oglWidget);
|
m_ui.graphicsView->setViewport(m_oglWidget);
|
||||||
|
|
||||||
|
m_ui.newLandAction->setIcon(QIcon(Core::Constants::ICON_NEW));
|
||||||
|
m_ui.saveAction->setIcon(QIcon(Core::Constants::ICON_SAVE));
|
||||||
|
m_ui.saveLandAction->setIcon(QIcon(Core::Constants::ICON_SAVE));
|
||||||
|
m_ui.saveAsLandAction->setIcon(QIcon(Core::Constants::ICON_SAVE_AS));
|
||||||
|
m_ui.deleteLandAction->setEnabled(false);
|
||||||
|
|
||||||
createMenus();
|
createMenus();
|
||||||
createToolBars();
|
createToolBars();
|
||||||
readSettings();
|
readSettings();
|
||||||
|
@ -71,6 +82,16 @@ LandscapeEditorWindow::LandscapeEditorWindow(QWidget *parent)
|
||||||
connect(m_ui.projectSettingsAction, SIGNAL(triggered()), this, SLOT(openProjectSettings()));
|
connect(m_ui.projectSettingsAction, SIGNAL(triggered()), this, SLOT(openProjectSettings()));
|
||||||
connect(m_ui.snapshotAction, SIGNAL(triggered()), this, SLOT(openSnapshotDialog()));
|
connect(m_ui.snapshotAction, SIGNAL(triggered()), this, SLOT(openSnapshotDialog()));
|
||||||
connect(m_ui.enableGridAction, SIGNAL(toggled(bool)), m_ui.graphicsView, SLOT(setVisibleGrid(bool)));
|
connect(m_ui.enableGridAction, SIGNAL(toggled(bool)), m_ui.graphicsView, SLOT(setVisibleGrid(bool)));
|
||||||
|
|
||||||
|
connect(m_ui.newLandAction, SIGNAL(triggered()), this, SLOT(newLand()));
|
||||||
|
connect(m_ui.setActiveLandAction, SIGNAL(triggered()), this, SLOT(setActiveLand()));
|
||||||
|
connect(m_ui.saveLandAction, SIGNAL(triggered()), this, SLOT(saveSelectedLand()));
|
||||||
|
connect(m_ui.saveAsLandAction, SIGNAL(triggered()), this, SLOT(saveAsSelectedLand()));
|
||||||
|
connect(m_ui.deleteLandAction, SIGNAL(triggered()), this, SLOT(deleteSelectedLand()));
|
||||||
|
|
||||||
|
connect(m_ui.landscapesListWidget, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(customContextMenu()));
|
||||||
|
m_ui.landscapesListWidget->setContextMenuPolicy(Qt::CustomContextMenu);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
LandscapeEditorWindow::~LandscapeEditorWindow()
|
LandscapeEditorWindow::~LandscapeEditorWindow()
|
||||||
|
@ -97,17 +118,9 @@ void LandscapeEditorWindow::open()
|
||||||
_lastDir = QFileInfo(list.front()).absolutePath();
|
_lastDir = QFileInfo(list.front()).absolutePath();
|
||||||
Q_FOREACH(QString fileName, fileNames)
|
Q_FOREACH(QString fileName, fileNames)
|
||||||
{
|
{
|
||||||
int id = m_zoneBuilder->createZoneRegion(fileName);
|
int row = createLandscape(fileName);
|
||||||
if (id == -1)
|
if (row != -1)
|
||||||
{
|
setActiveLandscape(row);
|
||||||
QMessageBox::critical(this, "Landscape Editor", "Cannot add this zone because it overlaps existing ones");
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
ZoneRegionObject *zoneRegion = m_zoneBuilder->zoneRegion(id);
|
|
||||||
m_ui.graphicsView->centerOn(zoneRegion->ligoZoneRegion().getMinX() * m_landscapeScene->cellSize(),
|
|
||||||
abs(zoneRegion->ligoZoneRegion().getMinY()) * m_landscapeScene->cellSize());
|
|
||||||
|
|
||||||
m_zoneBuilder->setCurrentZoneRegion(id);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
setCursor(Qt::ArrowCursor);
|
setCursor(Qt::ArrowCursor);
|
||||||
|
@ -115,16 +128,7 @@ void LandscapeEditorWindow::open()
|
||||||
|
|
||||||
void LandscapeEditorWindow::save()
|
void LandscapeEditorWindow::save()
|
||||||
{
|
{
|
||||||
ZoneRegionObject *zoneRegion = m_zoneBuilder->currentZoneRegion();
|
saveLandscape(m_currentRow, true);
|
||||||
if (zoneRegion->fileName().empty())
|
|
||||||
{
|
|
||||||
QString fileName = QFileDialog::getSaveFileName(this,
|
|
||||||
tr("Save NeL Ligo land file"), _lastDir,
|
|
||||||
tr("NeL Ligo land file (*.land)"));
|
|
||||||
if (!fileName.isEmpty())
|
|
||||||
zoneRegion->setFileName(fileName.toStdString());
|
|
||||||
}
|
|
||||||
zoneRegion->save();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void LandscapeEditorWindow::openProjectSettings()
|
void LandscapeEditorWindow::openProjectSettings()
|
||||||
|
@ -184,6 +188,133 @@ void LandscapeEditorWindow::openSnapshotDialog()
|
||||||
delete dialog;
|
delete dialog;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void LandscapeEditorWindow::customContextMenu()
|
||||||
|
{
|
||||||
|
if (m_ui.landscapesListWidget->currentRow() == -1)
|
||||||
|
return;
|
||||||
|
QMenu *popurMenu = new QMenu(this);
|
||||||
|
popurMenu->addAction(m_ui.setActiveLandAction);
|
||||||
|
popurMenu->addAction(m_ui.saveLandAction);
|
||||||
|
popurMenu->addAction(m_ui.saveAsLandAction);
|
||||||
|
popurMenu->addAction(m_ui.deleteLandAction);
|
||||||
|
popurMenu->exec(QCursor::pos());
|
||||||
|
delete popurMenu;
|
||||||
|
}
|
||||||
|
|
||||||
|
void LandscapeEditorWindow::newLand()
|
||||||
|
{
|
||||||
|
createLandscape(QString());
|
||||||
|
}
|
||||||
|
|
||||||
|
void LandscapeEditorWindow::setActiveLand()
|
||||||
|
{
|
||||||
|
setActiveLandscape(m_ui.landscapesListWidget->currentRow());
|
||||||
|
}
|
||||||
|
|
||||||
|
void LandscapeEditorWindow::saveSelectedLand()
|
||||||
|
{
|
||||||
|
saveLandscape(m_ui.landscapesListWidget->currentRow(), true);
|
||||||
|
}
|
||||||
|
|
||||||
|
void LandscapeEditorWindow::saveAsSelectedLand()
|
||||||
|
{
|
||||||
|
saveLandscape(m_ui.landscapesListWidget->currentRow(), false);
|
||||||
|
}
|
||||||
|
|
||||||
|
void LandscapeEditorWindow::deleteSelectedLand()
|
||||||
|
{
|
||||||
|
int row = m_ui.landscapesListWidget->currentRow();
|
||||||
|
QListWidgetItem *item = m_ui.landscapesListWidget->item(row);
|
||||||
|
if (row == m_currentRow)
|
||||||
|
{
|
||||||
|
if (row == 0)
|
||||||
|
++row;
|
||||||
|
else
|
||||||
|
--row;
|
||||||
|
setActiveLandscape(row);
|
||||||
|
}
|
||||||
|
m_zoneBuilder->deleteZoneRegion(item->data(LANDSCAPE_ID).toInt());
|
||||||
|
m_ui.landscapesListWidget->removeItemWidget(item);
|
||||||
|
delete item;
|
||||||
|
if (m_ui.landscapesListWidget->count() == 1)
|
||||||
|
m_ui.deleteLandAction->setEnabled(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
int LandscapeEditorWindow::createLandscape(const QString &fileName)
|
||||||
|
{
|
||||||
|
int id;
|
||||||
|
if (fileName.isEmpty())
|
||||||
|
id = m_zoneBuilder->createZoneRegion();
|
||||||
|
else
|
||||||
|
id = m_zoneBuilder->createZoneRegion(fileName);
|
||||||
|
|
||||||
|
if (id == -1)
|
||||||
|
{
|
||||||
|
QMessageBox::critical(this, "Landscape Editor", "Cannot add this zone because it overlaps existing ones");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
ZoneRegionObject *zoneRegion = m_zoneBuilder->zoneRegion(id);
|
||||||
|
m_ui.graphicsView->centerOn(zoneRegion->ligoZoneRegion().getMinX() * m_landscapeScene->cellSize(),
|
||||||
|
abs(zoneRegion->ligoZoneRegion().getMinY()) * m_landscapeScene->cellSize());
|
||||||
|
|
||||||
|
QListWidgetItem *item;
|
||||||
|
if (fileName.isEmpty())
|
||||||
|
item = new QListWidgetItem(QString("NewLandscape%1").arg(NewLandCounter++), m_ui.landscapesListWidget);
|
||||||
|
else
|
||||||
|
item = new QListWidgetItem(fileName, m_ui.landscapesListWidget);
|
||||||
|
|
||||||
|
item->setData(LANDSCAPE_ID, id);
|
||||||
|
item->setFont(QFont("SansSerif", 9, QFont::Normal));
|
||||||
|
|
||||||
|
if (m_ui.landscapesListWidget->count() > 1)
|
||||||
|
m_ui.deleteLandAction->setEnabled(true);
|
||||||
|
|
||||||
|
return m_ui.landscapesListWidget->count() - 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
void LandscapeEditorWindow::setActiveLandscape(int row)
|
||||||
|
{
|
||||||
|
if ((0 <= row) && (row < m_ui.landscapesListWidget->count()))
|
||||||
|
{
|
||||||
|
if (m_currentRow != -1)
|
||||||
|
{
|
||||||
|
QListWidgetItem *item = m_ui.landscapesListWidget->item(m_currentRow);
|
||||||
|
item->setFont(QFont("SansSerif", 9, QFont::Normal));
|
||||||
|
}
|
||||||
|
QListWidgetItem *item = m_ui.landscapesListWidget->item(row);
|
||||||
|
item->setFont(QFont("SansSerif", 9, QFont::Bold));
|
||||||
|
m_zoneBuilder->setCurrentZoneRegion(item->data(LANDSCAPE_ID).toInt());
|
||||||
|
m_currentRow = row;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void LandscapeEditorWindow::saveLandscape(int row, bool force)
|
||||||
|
{
|
||||||
|
if ((0 <= row) && (row < m_ui.landscapesListWidget->count()))
|
||||||
|
{
|
||||||
|
QListWidgetItem *item = m_ui.landscapesListWidget->item(row);
|
||||||
|
ZoneRegionObject *regionObject = m_zoneBuilder->zoneRegion(item->data(LANDSCAPE_ID).toInt());
|
||||||
|
if ((!force) || (regionObject->fileName().empty()))
|
||||||
|
{
|
||||||
|
QString fileName = QFileDialog::getSaveFileName(this,
|
||||||
|
tr("Save NeL Ligo land file"), _lastDir,
|
||||||
|
tr("NeL Ligo land file (*.land)"));
|
||||||
|
if (!fileName.isEmpty())
|
||||||
|
{
|
||||||
|
regionObject->setFileName(fileName.toStdString());
|
||||||
|
regionObject->save();
|
||||||
|
regionObject->setModified(false);
|
||||||
|
item->setText(fileName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
regionObject->save();
|
||||||
|
regionObject->setModified(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void LandscapeEditorWindow::showEvent(QShowEvent *showEvent)
|
void LandscapeEditorWindow::showEvent(QShowEvent *showEvent)
|
||||||
{
|
{
|
||||||
QMainWindow::showEvent(showEvent);
|
QMainWindow::showEvent(showEvent);
|
||||||
|
@ -202,7 +333,23 @@ void LandscapeEditorWindow::createToolBars()
|
||||||
//QAction *action = menuManager->action(Core::Constants::NEW);
|
//QAction *action = menuManager->action(Core::Constants::NEW);
|
||||||
//m_ui.fileToolBar->addAction(action);
|
//m_ui.fileToolBar->addAction(action);
|
||||||
QAction *action = menuManager->action(Core::Constants::OPEN);
|
QAction *action = menuManager->action(Core::Constants::OPEN);
|
||||||
|
m_ui.fileToolBar->addAction(m_ui.newLandAction);
|
||||||
m_ui.fileToolBar->addAction(action);
|
m_ui.fileToolBar->addAction(action);
|
||||||
|
m_ui.fileToolBar->addAction(m_ui.saveAction);
|
||||||
|
|
||||||
|
const char * const UNDO = "ObjectViewerQt.Undo";
|
||||||
|
const char * const REDO = "ObjectViewerQt.Redo";
|
||||||
|
|
||||||
|
//action = menuManager->action(Core::Constants::UNDO);
|
||||||
|
action = menuManager->action(UNDO);
|
||||||
|
if (action != 0)
|
||||||
|
m_ui.undoToolBar->addAction(action);
|
||||||
|
|
||||||
|
//action = menuManager->action(Core::Constants::REDO);
|
||||||
|
action = menuManager->action(REDO);
|
||||||
|
if (action != 0)
|
||||||
|
m_ui.undoToolBar->addAction(action);
|
||||||
|
|
||||||
//action = menuManager->action(Core::Constants::SAVE);
|
//action = menuManager->action(Core::Constants::SAVE);
|
||||||
//m_ui.fileToolBar->addAction(action);
|
//m_ui.fileToolBar->addAction(action);
|
||||||
//action = menuManager->action(Core::Constants::SAVE_AS);
|
//action = menuManager->action(Core::Constants::SAVE_AS);
|
||||||
|
|
|
@ -49,6 +49,12 @@ public Q_SLOTS:
|
||||||
private Q_SLOTS:
|
private Q_SLOTS:
|
||||||
void openProjectSettings();
|
void openProjectSettings();
|
||||||
void openSnapshotDialog();
|
void openSnapshotDialog();
|
||||||
|
void customContextMenu();
|
||||||
|
void newLand();
|
||||||
|
void setActiveLand();
|
||||||
|
void saveSelectedLand();
|
||||||
|
void saveAsSelectedLand();
|
||||||
|
void deleteSelectedLand();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void showEvent(QShowEvent *showEvent);
|
virtual void showEvent(QShowEvent *showEvent);
|
||||||
|
@ -59,6 +65,11 @@ private:
|
||||||
void readSettings();
|
void readSettings();
|
||||||
void writeSettings();
|
void writeSettings();
|
||||||
|
|
||||||
|
void setActiveLandscape(int row);
|
||||||
|
void saveLandscape(int row, bool force);
|
||||||
|
int createLandscape(const QString &fileName);
|
||||||
|
|
||||||
|
int m_currentRow;
|
||||||
LandscapeScene *m_landscapeScene;
|
LandscapeScene *m_landscapeScene;
|
||||||
ZoneBuilder *m_zoneBuilder;
|
ZoneBuilder *m_zoneBuilder;
|
||||||
QUndoStack *m_undoStack;
|
QUndoStack *m_undoStack;
|
||||||
|
|
|
@ -62,7 +62,7 @@
|
||||||
</attribute>
|
</attribute>
|
||||||
<widget class="LandscapeEditor::ListZonesWidget" name="zoneListWidget"/>
|
<widget class="LandscapeEditor::ListZonesWidget" name="zoneListWidget"/>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QToolBar" name="landToolBar">
|
<widget class="QToolBar" name="undoToolBar">
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
<string>toolBar_2</string>
|
<string>toolBar_2</string>
|
||||||
</property>
|
</property>
|
||||||
|
@ -72,9 +72,40 @@
|
||||||
<attribute name="toolBarBreak">
|
<attribute name="toolBarBreak">
|
||||||
<bool>false</bool>
|
<bool>false</bool>
|
||||||
</attribute>
|
</attribute>
|
||||||
<addaction name="saveAction"/>
|
</widget>
|
||||||
<addaction name="snapshotAction"/>
|
<widget class="QDockWidget" name="landscapesDockWidget">
|
||||||
|
<property name="windowTitle">
|
||||||
|
<string>Landscapes</string>
|
||||||
|
</property>
|
||||||
|
<attribute name="dockWidgetArea">
|
||||||
|
<number>1</number>
|
||||||
|
</attribute>
|
||||||
|
<widget class="QWidget" name="dockWidgetContents">
|
||||||
|
<layout class="QGridLayout" name="gridLayout_2">
|
||||||
|
<property name="margin">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<property name="spacing">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QListWidget" name="landscapesListWidget"/>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</widget>
|
||||||
|
<widget class="QToolBar" name="zoneToolBar">
|
||||||
|
<property name="windowTitle">
|
||||||
|
<string>toolBar</string>
|
||||||
|
</property>
|
||||||
|
<attribute name="toolBarArea">
|
||||||
|
<enum>TopToolBarArea</enum>
|
||||||
|
</attribute>
|
||||||
|
<attribute name="toolBarBreak">
|
||||||
|
<bool>false</bool>
|
||||||
|
</attribute>
|
||||||
<addaction name="projectSettingsAction"/>
|
<addaction name="projectSettingsAction"/>
|
||||||
|
<addaction name="snapshotAction"/>
|
||||||
<addaction name="enableGridAction"/>
|
<addaction name="enableGridAction"/>
|
||||||
</widget>
|
</widget>
|
||||||
<action name="projectSettingsAction">
|
<action name="projectSettingsAction">
|
||||||
|
@ -113,6 +144,50 @@
|
||||||
<string>Save</string>
|
<string>Save</string>
|
||||||
</property>
|
</property>
|
||||||
</action>
|
</action>
|
||||||
|
<action name="setActiveLandAction">
|
||||||
|
<property name="icon">
|
||||||
|
<iconset resource="landscape_editor.qrc">
|
||||||
|
<normaloff>:/icons/ic_nel_zone.png</normaloff>:/icons/ic_nel_zone.png</iconset>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Set active</string>
|
||||||
|
</property>
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>Set active selected landscape</string>
|
||||||
|
</property>
|
||||||
|
</action>
|
||||||
|
<action name="saveLandAction">
|
||||||
|
<property name="text">
|
||||||
|
<string>Save</string>
|
||||||
|
</property>
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>Save selected landscape</string>
|
||||||
|
</property>
|
||||||
|
</action>
|
||||||
|
<action name="saveAsLandAction">
|
||||||
|
<property name="text">
|
||||||
|
<string>Save As landscape</string>
|
||||||
|
</property>
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>Save as selected landscape</string>
|
||||||
|
</property>
|
||||||
|
</action>
|
||||||
|
<action name="deleteLandAction">
|
||||||
|
<property name="text">
|
||||||
|
<string>Delete</string>
|
||||||
|
</property>
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>Delete selected landscape</string>
|
||||||
|
</property>
|
||||||
|
</action>
|
||||||
|
<action name="newLandAction">
|
||||||
|
<property name="text">
|
||||||
|
<string>New</string>
|
||||||
|
</property>
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>Create new landscape</string>
|
||||||
|
</property>
|
||||||
|
</action>
|
||||||
</widget>
|
</widget>
|
||||||
<customwidgets>
|
<customwidgets>
|
||||||
<customwidget>
|
<customwidget>
|
||||||
|
|
Loading…
Reference in a new issue