[jasper] Change macro names to comply with broader conventions

This commit is contained in:
Gary Talent 2024-12-21 02:41:27 -06:00
parent 8c4f55621d
commit 33425ccf3a
14 changed files with 105 additions and 105 deletions

View File

@ -18,10 +18,10 @@ struct Bootfile {
ox::Vector<ox::String> args;
};
oxModelBegin(Bootfile)
oxModelField(app)
oxModelField(args)
oxModelEnd()
OX_MODEL_BEGIN(Bootfile)
OX_MODEL_FIELD(app)
OX_MODEL_FIELD(args)
OX_MODEL_END()
}

View File

@ -33,10 +33,10 @@ struct DocObjRef {
ObjectId worldObjectId{};
};
oxModelBegin(DocObjRef)
oxModelFieldRename(worldObjectSetId, world_object_set_id)
oxModelFieldRename(worldObjectId, world_object_id)
oxModelEnd()
OX_MODEL_BEGIN(DocObjRef)
OX_MODEL_FIELD_RENAME(worldObjectSetId, world_object_set_id)
OX_MODEL_FIELD_RENAME(worldObjectId, world_object_id)
OX_MODEL_END()
struct TileDoc {
constexpr static auto TypeName = "net.drinkingtea.jasper.world.TileDoc";
@ -50,15 +50,15 @@ struct TileDoc {
uint8_t rightLayerAttachment{};
};
oxModelBegin(TileDoc)
oxModelField(obj)
oxModelField(type)
oxModelFieldRename(palBank, pal_bank)
oxModelFieldRename(topLayerAttachment, top_layer_attachment)
oxModelFieldRename(bottomLayerAttachment, bottom_layer_attachment)
oxModelFieldRename(leftLayerAttachment, left_layer_attachment)
oxModelFieldRename(rightLayerAttachment, right_layer_attachment)
oxModelEnd()
OX_MODEL_BEGIN(TileDoc)
OX_MODEL_FIELD(obj)
OX_MODEL_FIELD(type)
OX_MODEL_FIELD_RENAME(palBank, pal_bank)
OX_MODEL_FIELD_RENAME(topLayerAttachment, top_layer_attachment)
OX_MODEL_FIELD_RENAME(bottomLayerAttachment, bottom_layer_attachment)
OX_MODEL_FIELD_RENAME(leftLayerAttachment, left_layer_attachment)
OX_MODEL_FIELD_RENAME(rightLayerAttachment, right_layer_attachment)
OX_MODEL_END()
struct ObjectSetEntry {
@ -68,10 +68,10 @@ struct ObjectSetEntry {
uint64_t id{};
};
oxModelBegin(ObjectSetEntry)
oxModelField(path)
oxModelField(id)
oxModelEnd()
OX_MODEL_BEGIN(ObjectSetEntry)
OX_MODEL_FIELD(path)
OX_MODEL_FIELD(id)
OX_MODEL_END()
struct WorldDoc {
@ -92,7 +92,7 @@ constexpr ox::Result<ox::String> objectSetPath(WorldDoc const&wd, uint64_t setId
auto const obj = ox::find_if(wd.objSets.begin(), wd.objSets.end(), [setId](ObjectSetEntry const&e) {
return e.id == setId;
});
oxReturnError(ox::Error(obj == wd.objSets.end(), "Obj set not found"));
OX_RETURN_ERROR(ox::Error(obj == wd.objSets.end(), "Obj set not found"));
return obj->path;
}
@ -101,17 +101,17 @@ constexpr ox::Result<uint64_t> objectSetId(WorldDoc const&wd, ox::StringView set
auto const obj = ox::find_if(wd.objSets.begin(), wd.objSets.end(), [setPath](ObjectSetEntry const&e) {
return e.path == setPath;
});
oxReturnError(ox::Error(obj == wd.objSets.end(), "Obj set not found"));
OX_RETURN_ERROR(ox::Error(obj == wd.objSets.end(), "Obj set not found"));
return obj->id;
}
oxModelBegin(WorldDoc)
oxModelFieldRename(objSets, object_sets)
oxModelFieldRename(objSetIdIdx, object_set_id_idx)
oxModelField(columns)
oxModelField(rows)
oxModelField(tiles)
oxModelEnd()
OX_MODEL_BEGIN(WorldDoc)
OX_MODEL_FIELD_RENAME(objSets, object_sets)
OX_MODEL_FIELD_RENAME(objSetIdIdx, object_set_id_idx)
OX_MODEL_FIELD(columns)
OX_MODEL_FIELD(rows)
OX_MODEL_FIELD(tiles)
OX_MODEL_END()
[[nodiscard]]
constexpr bool valid(WorldDoc const&doc) noexcept {

View File

@ -39,18 +39,18 @@ struct WorldObject {
uint8_t ext3{};
};
oxModelBegin(WorldObject)
oxModelField(id)
oxModelField(name)
oxModelFieldRename(intervalMs, interval_ms)
oxModelFieldRename(palBank, pal_bank)
oxModelFieldRename(subsheetId, subsheet_id)
oxModelFieldRename(collisionMap, collision_map)
oxModelFieldRename(objectType, object_type)
oxModelField(ext1)
oxModelField(ext2)
oxModelField(ext3)
oxModelEnd()
OX_MODEL_BEGIN(WorldObject)
OX_MODEL_FIELD(id)
OX_MODEL_FIELD(name)
OX_MODEL_FIELD_RENAME(intervalMs, interval_ms)
OX_MODEL_FIELD_RENAME(palBank, pal_bank)
OX_MODEL_FIELD_RENAME(subsheetId, subsheet_id)
OX_MODEL_FIELD_RENAME(collisionMap, collision_map)
OX_MODEL_FIELD_RENAME(objectType, object_type)
OX_MODEL_FIELD(ext1)
OX_MODEL_FIELD(ext2)
OX_MODEL_FIELD(ext3)
OX_MODEL_END()
enum class TerrainType: uint8_t {
NormalLand,
@ -73,12 +73,12 @@ struct WorldObjectSet {
ox::Vector<WorldObject> objects;
};
oxModelBegin(WorldObjectSet)
oxModelFieldRename(objIdIdx, obj_id_idx)
oxModelField(tilesheet)
oxModelField(palettes)
oxModelField(objects)
oxModelEnd()
OX_MODEL_BEGIN(WorldObjectSet)
OX_MODEL_FIELD_RENAME(objIdIdx, obj_id_idx)
OX_MODEL_FIELD(tilesheet)
OX_MODEL_FIELD(palettes)
OX_MODEL_FIELD(objects)
OX_MODEL_END()
ox::Error loadObjectSet(WorldObjectSet const&os) noexcept;

View File

@ -65,12 +65,12 @@ struct TileStatic {
uint8_t layerAttachments{};
};
oxModelBegin(TileStatic)
oxModelField(tileIdx)
oxModelField(palBank)
oxModelField(tileType)
oxModelField(layerAttachments)
oxModelEnd()
OX_MODEL_BEGIN(TileStatic)
OX_MODEL_FIELD(tileIdx)
OX_MODEL_FIELD(palBank)
OX_MODEL_FIELD(tileType)
OX_MODEL_FIELD(layerAttachments)
OX_MODEL_END()
struct BgLayer {
@ -80,10 +80,10 @@ struct BgLayer {
ox::Vector<TileStatic> tiles;
};
oxModelBegin(BgLayer)
oxModelField(cbb)
oxModelField(tiles)
oxModelEnd()
OX_MODEL_BEGIN(BgLayer)
OX_MODEL_FIELD(cbb)
OX_MODEL_FIELD(tiles)
OX_MODEL_END()
struct WorldStatic {
@ -97,13 +97,13 @@ struct WorldStatic {
ox::Array<BgLayer, 3> map;
};
oxModelBegin(WorldStatic)
oxModelField(tilesheets)
oxModelField(palettes)
oxModelField(columns)
oxModelField(rows)
oxModelField(map)
oxModelEnd()
OX_MODEL_BEGIN(WorldStatic)
OX_MODEL_FIELD(tilesheets)
OX_MODEL_FIELD(palettes)
OX_MODEL_FIELD(columns)
OX_MODEL_FIELD(rows)
OX_MODEL_FIELD(map)
OX_MODEL_END()
void loadTile(ObjectCache const&objCache, TileStatic &dst, TileDoc const&src) noexcept;

View File

@ -15,7 +15,7 @@ ox::Error WorldDocToWorldStaticConverter::convert(
keel::Context &kctx,
WorldDoc &src,
WorldStatic &dst) const noexcept {
oxRequire(oc, buildObjCache(kctx, src));
OX_REQUIRE(oc, buildObjCache(kctx, src));
return loadWorldStatic(oc, src).moveTo(dst);
}

View File

@ -26,7 +26,7 @@ ox::Error ObjectCache::indexSet(
.setId = setId,
.objects = {},
});
oxRequire(ts, readObj<ncore::TileSheet>(kctx, objSet.tilesheet));
OX_REQUIRE(ts, readObj<ncore::TileSheet>(kctx, objSet.tilesheet));
for (auto const&obj : objSet.objects) {
set.objects.emplace_back(Obj{
.id = obj.id,
@ -41,7 +41,7 @@ ox::Error ObjectCache::indexSet(
addTileSheet(objSet.tilesheet, static_cast<int32_t>(tileCnt));
for (auto const&pal : objSet.palettes) {
m_palettes.emplace_back(pal);
oxRequire(p, readObj<ncore::Palette>(kctx, pal));
OX_REQUIRE(p, readObj<ncore::Palette>(kctx, pal));
m_palBank += largestPage(*p);
}
return {};
@ -82,8 +82,8 @@ void ObjectCache::addTileSheet(ox::FileAddress path, int32_t tiles) noexcept {
ox::Result<ObjectCache> buildObjCache(keel::Context &kctx, WorldDoc const&doc) noexcept {
ObjectCache cache;
for (auto &set : doc.objSets) {
oxRequire(s, readObj<WorldObjectSet>(kctx, set.path));
oxReturnError(cache.indexSet(kctx, set.id, *s));
OX_REQUIRE(s, readObj<WorldObjectSet>(kctx, set.path));
OX_RETURN_ERROR(cache.indexSet(kctx, set.id, *s));
}
return cache;
}

View File

@ -21,14 +21,14 @@ EditWorldSizeCommand::EditWorldSizeCommand(
ox::Error EditWorldSizeCommand::redo() noexcept {
m_oldMap = m_doc.tiles;
resize(m_doc, m_newSize);
oxReturnError(loadWorldStatic(m_objCache, m_doc).moveTo(m_worldStatic));
OX_RETURN_ERROR(loadWorldStatic(m_objCache, m_doc).moveTo(m_worldStatic));
return {};
}
ox::Error EditWorldSizeCommand::undo() noexcept {
resize(m_doc, m_oldSize);
m_doc.tiles = std::move(m_oldMap);
oxReturnError(loadWorldStatic(m_objCache, m_doc).moveTo(m_worldStatic));
OX_RETURN_ERROR(loadWorldStatic(m_objCache, m_doc).moveTo(m_worldStatic));
return {};
}

View File

@ -36,7 +36,7 @@ class TileClipboard : public turbine::ClipboardObject<TileClipboard> {
}
};
oxModelBegin(TileClipboard)
oxModelEnd()
OX_MODEL_BEGIN(TileClipboard)
OX_MODEL_END()
}

View File

@ -30,9 +30,9 @@ struct WorldEditorConfig {
bool animateBg{};
};
oxModelBegin(WorldEditorConfig)
oxModelField(animateBg);
oxModelEnd()
OX_MODEL_BEGIN(WorldEditorConfig)
OX_MODEL_FIELD(animateBg);
OX_MODEL_END()
struct WorldTileDragDrop {
@ -42,10 +42,10 @@ struct WorldTileDragDrop {
ObjectId objId{};
};
oxModelBegin(WorldTileDragDrop)
oxModelField(setId)
oxModelField(objId)
oxModelEnd()
OX_MODEL_BEGIN(WorldTileDragDrop)
OX_MODEL_FIELD(setId)
OX_MODEL_FIELD(objId)
OX_MODEL_END()
static WorldDoc makeValid(WorldDoc doc) noexcept {
@ -84,7 +84,7 @@ WorldEditorImGui::WorldEditorImGui(studio::StudioContext &sctx, ox::StringView p
m_objCache(buildObjCache(keelCtx(m_sctx), m_doc).unwrapThrow()),
m_worldStatic(loadWorldStatic(m_objCache, m_doc)),
m_view(m_sctx, m_worldStatic) {
oxThrowError(loadObjectSets());
OX_THROW_ERROR(loadObjectSets());
m_objSetPicker.filePicked.connect(this, &WorldEditorImGui::addObjSet);
m_sctx.project->fileUpdated.connect(this, &WorldEditorImGui::handleDepUpdate);
studio::Editor::undoStack()->changeTriggered.connect(this, &WorldEditorImGui::undoStackChanged);
@ -353,7 +353,7 @@ void WorldEditorImGui::handleMouseSelection(float fbPaneScale) noexcept {
}
ox::Error WorldEditorImGui::handleDrop(float fbPaneScale) noexcept {
oxRequire(objId, ig::getDragDropPayload<WorldTileDragDrop>("WorldTile"));
OX_REQUIRE(objId, ig::getDragDropPayload<WorldTileDragDrop>("WorldTile"));
auto const&io = ImGui::GetIO();
auto const fbPos = world::fbPos(ox::Vec2{io.MousePos});
auto const viewSz = m_view.drawSize();
@ -389,12 +389,12 @@ ox::Error WorldEditorImGui::handleDrop(float fbPaneScale) noexcept {
m_objCache,
std::move(mods));
}
oxReturnError(loadWorldStatic(m_objCache, m_doc).moveTo(m_worldStatic));
OX_RETURN_ERROR(loadWorldStatic(m_objCache, m_doc).moveTo(m_worldStatic));
return {};
}
ox::Error WorldEditorImGui::addObjSet(ox::StringView path) noexcept {
oxRequire(uuid, getUuid(keelCtx(m_sctx), path));
OX_REQUIRE(uuid, getUuid(keelCtx(m_sctx), path));
std::ignore = pushCommand<AddObjectSet>(m_doc, uuid);
return {};
}
@ -415,9 +415,9 @@ ox::Error WorldEditorImGui::handleDepUpdate(ox::StringView, ox::UUID const&uuid)
auto const depUpdated = ox::any_of(m_doc.objSets.begin(), m_doc.objSets.end(), objSetMatches)
|| ox::any_of(m_dependencies.pairs().begin(), m_dependencies.pairs().end(), depMatches);
if (depUpdated) {
oxReturnError(buildObjCache(kctx, m_doc).moveTo(m_objCache));
oxReturnError(loadWorldStatic(m_objCache, m_doc).moveTo(m_worldStatic));
oxReturnError(loadObjectSets());
OX_RETURN_ERROR(buildObjCache(kctx, m_doc).moveTo(m_objCache));
OX_RETURN_ERROR(loadWorldStatic(m_objCache, m_doc).moveTo(m_worldStatic));
OX_RETURN_ERROR(loadObjectSets());
}
return {};
}
@ -427,7 +427,7 @@ ox::Error WorldEditorImGui::loadObjectSets() noexcept {
m_dependencies.clear();
auto &kctx = keelCtx(m_sctx);
for (auto const&set : m_doc.objSets) {
oxRequireM(os, readObj<WorldObjectSet>(kctx, set.path));
OX_REQUIRE_M(os, readObj<WorldObjectSet>(kctx, set.path));
oxLogError(addDependency(os->tilesheet));
for (auto const&pal : os->palettes) {
oxLogError(addDependency(pal));
@ -438,7 +438,7 @@ ox::Error WorldEditorImGui::loadObjectSets() noexcept {
}
ox::Error WorldEditorImGui::undoStackChanged(studio::UndoCommand const*) {
oxReturnError(m_view.setupWorld());
OX_RETURN_ERROR(m_view.setupWorld());
return {};
}
@ -460,7 +460,7 @@ ox::Result<ox::UUID> WorldEditorImGui::assetId() const noexcept {
ox::Error WorldEditorImGui::addDependency(ox::FileAddress const&fileAddr) noexcept {
auto &kctx = keelCtx(m_sctx);
oxRequire(uuid, getUuid(kctx, fileAddr));
OX_REQUIRE(uuid, getUuid(kctx, fileAddr));
m_dependencies[uuid] = true;
return {};
}

View File

@ -18,7 +18,7 @@ WorldEditorView::WorldEditorView(studio::StudioContext &sctx, WorldStatic const&
ox::Error WorldEditorView::setupWorld() noexcept {
glutils::resizeInitFrameBuffer(m_frameBuffer, ncore::gl::drawSize(m_scale));
if (m_columns != m_worldStatic.columns || m_rows != m_worldStatic.rows) {
oxReturnError(m_highlighter.setup({m_worldStatic.columns, m_worldStatic.rows}));
OX_RETURN_ERROR(m_highlighter.setup({m_worldStatic.columns, m_worldStatic.rows}));
m_columns = m_worldStatic.columns;
m_rows = m_worldStatic.rows;
m_selection.reset();

View File

@ -30,9 +30,9 @@ ox::Error CollisionView::setup(
m_subsheetTilesHeight = h;
m_sheetTileStart = tile;
ncore::setBgStatus(*m_nctx, 0, true);
oxReturnError(ncore::loadBgTileSheet(*m_nctx, 0, tsAddr));
oxReturnError(ncore::loadBgPalette(*m_nctx, 0, palAddr));
oxReturnError(m_highlighter.setup({w / 2, h / 2}));
OX_RETURN_ERROR(ncore::loadBgTileSheet(*m_nctx, 0, tsAddr));
OX_RETURN_ERROR(ncore::loadBgPalette(*m_nctx, 0, palAddr));
OX_RETURN_ERROR(m_highlighter.setup({w / 2, h / 2}));
buildGlBuffers(colMap);
return {};
}

View File

@ -27,7 +27,7 @@ ox::Error AddObject::redo() noexcept {
ox::Error AddObject::undo() noexcept {
m_obj = std::move(m_doc.objects[m_insertIdx]);
oxReturnError(m_doc.objects.erase(m_insertIdx));
OX_RETURN_ERROR(m_doc.objects.erase(m_insertIdx));
--m_doc.objIdIdx;
return {};
}

View File

@ -19,11 +19,11 @@ ox::Error World::setupDisplay() noexcept {
return ox::Error(1, "World has no palettes");
}
for (auto i = 0u; auto const&palAddr : m_worldStatic.palettes) {
oxRequire(pal, readObj<ncore::CompactPalette>(keelCtx(m_nctx), palAddr));
oxReturnError(ncore::loadBgPalette(m_nctx, i, *pal));
OX_REQUIRE(pal, readObj<ncore::CompactPalette>(keelCtx(m_nctx), palAddr));
OX_RETURN_ERROR(ncore::loadBgPalette(m_nctx, i, *pal));
++i;
}
oxReturnError(ncore::loadBgTileSheet(m_nctx, 0, m_worldStatic.tilesheets));
OX_RETURN_ERROR(ncore::loadBgTileSheet(m_nctx, 0, m_worldStatic.tilesheets));
ncore::setBgStatus(m_nctx, 0); // disable all backgrounds
for (auto layerNo = 0u; auto const&layer : m_worldStatic.map) {
setupLayer(layerNo, layer.cbb);

View File

@ -23,14 +23,14 @@ ox::Error run(
[[maybe_unused]] ox::StringView projectDataDir,
ox::SpanView<ox::CString> args) noexcept {
auto const fsPath = args.size() > 1 ? args[1] : ".";
oxRequireM(tctx, turbine::init(fsPath, project));
oxRequire(bootfile, keel::readObj<jasper::core::Bootfile>(keelCtx(*tctx), "/Bootfile"));
OX_REQUIRE_M(tctx, turbine::init(fsPath, project));
OX_REQUIRE(bootfile, keel::readObj<jasper::core::Bootfile>(keelCtx(*tctx), "/Bootfile"));
oxOut("Jasper Player\n");
oxRequire(nctx, ncore::init(*tctx));
OX_REQUIRE(nctx, ncore::init(*tctx));
auto const&worldPath = *bootfile->args.at(0).unwrap();
oxRequire(worldStatic, readObj<world::WorldStatic>(keelCtx(*tctx), worldPath));
OX_REQUIRE(worldStatic, readObj<world::WorldStatic>(keelCtx(*tctx), worldPath));
world::World world(*nctx, *worldStatic);
oxReturnError(world.setupDisplay());
OX_RETURN_ERROR(world.setupDisplay());
turbine::setApplicationData(*tctx, &world);
setUpdateHandler(*tctx, [](turbine::Context &tctx) -> int {
auto &world = *applicationData<world::World>(tctx);
@ -40,7 +40,7 @@ ox::Error run(
}
return 0;
});
oxReturnError(turbine::run(*tctx));
OX_RETURN_ERROR(turbine::run(*tctx));
oxOut("Exiting...\n");
return {};
}