feat(editor): save as

This commit is contained in:
maelstrom 2025-03-31 21:50:46 +02:00
parent 4805f717ac
commit 4b79ae6f49
2 changed files with 22 additions and 0 deletions

View file

@ -123,6 +123,13 @@ MainWindow::MainWindow(QWidget *parent)
dataModel->SaveToFile(path);
});
connect(ui->actionSaveAs, &QAction::triggered, this, [&]() {
std::optional<std::string> path = openFileDialog("Openblocks Level (*.obl)", ".obl", QFileDialog::AcceptSave, QString::fromStdString("Save as " + dataModel->name));
if (path == "") return;
dataModel->SaveToFile(path);
});
connect(ui->actionOpen, &QAction::triggered, this, [&]() {
std::optional<std::string> path = openFileDialog("Openblocks Level (*.obl)", ".obl", QFileDialog::AcceptOpen);
if (!path) return;

View file

@ -51,6 +51,7 @@
<addaction name="actionNew"/>
<addaction name="actionOpen"/>
<addaction name="actionSave"/>
<addaction name="actionSaveAs"/>
<addaction name="separator"/>
<addaction name="actionQuit"/>
</widget>
@ -480,6 +481,20 @@
<enum>QAction::MenuRole::NoRole</enum>
</property>
</action>
<action name="actionSaveAs">
<property name="icon">
<iconset theme="document-save-as"/>
</property>
<property name="text">
<string>Save As...</string>
</property>
<property name="shortcut">
<string>Ctrl+Shift+S</string>
</property>
<property name="menuRole">
<enum>QAction::MenuRole::NoRole</enum>
</property>
</action>
</widget>
<customwidgets>
<customwidget>