diff --git a/include/ui/tileseteditor.h b/include/ui/tileseteditor.h index 663fcbdb..1095b0be 100644 --- a/include/ui/tileseteditor.h +++ b/include/ui/tileseteditor.h @@ -95,6 +95,7 @@ private: void importTilesetTiles(Tileset*, bool); void importTilesetMetatiles(Tileset*, bool); void refresh(); + void saveMetatileLabel(); Ui::TilesetEditor *ui; History metatileHistory; TilesetEditorMetatileSelector *metatileSelector = nullptr; diff --git a/src/ui/tileseteditor.cpp b/src/ui/tileseteditor.cpp index ca6f89ab..49119430 100644 --- a/src/ui/tileseteditor.cpp +++ b/src/ui/tileseteditor.cpp @@ -318,6 +318,11 @@ void TilesetEditor::on_comboBox_metatileBehaviors_activated(const QString &metat } void TilesetEditor::on_lineEdit_metatileLabel_editingFinished() +{ + saveMetatileLabel(); +} + +void TilesetEditor::saveMetatileLabel() { if (this->metatile) { Metatile *prevMetatile = this->metatile->copy(); @@ -339,6 +344,12 @@ void TilesetEditor::on_comboBox_layerType_activated(int layerType) void TilesetEditor::on_actionSave_Tileset_triggered() { + if (this->metatile) { + if (this->metatile->label != this->ui->lineEdit_metatileLabel->text()) { + saveMetatileLabel(); + } + } + this->project->saveTilesets(this->primaryTileset, this->secondaryTileset); emit this->tilesetsSaved(this->primaryTileset->name, this->secondaryTileset->name); if (this->paletteEditor) {