[nostalgia] Add NewMenu for creating new files

This commit is contained in:
2022-07-29 21:38:18 -05:00
parent b14e41d057
commit 275e9dbff1
31 changed files with 630 additions and 120 deletions
@@ -20,6 +20,7 @@ class TileSheetEditorModel: public ox::SignalHandler {
ox::Signal<ox::Error(const TileSheet::SubSheetIdx&)> activeSubsheetChanged;
private:
static const Palette s_defaultPalette;
TileSheet m_img;
TileSheet::SubSheetIdx m_activeSubsSheetIdx;
AssetRef<Palette> m_pal;
@@ -33,7 +34,7 @@ class TileSheetEditorModel: public ox::SignalHandler {
geo::Bounds m_selectionBounds = {{-1, -1}, {-1, -1}};
public:
TileSheetEditorModel(Context *ctx, const ox::String &path);
TileSheetEditorModel(Context *ctx, ox::String path);
~TileSheetEditorModel() override = default;
@@ -50,7 +51,7 @@ class TileSheetEditorModel: public ox::SignalHandler {
constexpr TileSheet &img() noexcept;
[[nodiscard]]
constexpr const Palette &pal() const noexcept;
constexpr const Palette *pal() const noexcept;
[[nodiscard]]
const ox::FileAddress &palPath() const noexcept;
@@ -142,8 +143,11 @@ constexpr TileSheet &TileSheetEditorModel::img() noexcept {
return m_img;
}
constexpr const Palette &TileSheetEditorModel::pal() const noexcept {
return *m_pal;
constexpr const Palette *TileSheetEditorModel::pal() const noexcept {
if (m_pal) {
return m_pal.get();
}
return &s_defaultPalette;
}
constexpr studio::UndoStack *TileSheetEditorModel::undoStack() noexcept {