summaryrefslogtreecommitdiffhomepage
path: root/editor/vobj-editor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'editor/vobj-editor.cpp')
-rw-r--r--editor/vobj-editor.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/editor/vobj-editor.cpp b/editor/vobj-editor.cpp
index bfe88d71..0cfa64d6 100644
--- a/editor/vobj-editor.cpp
+++ b/editor/vobj-editor.cpp
@@ -22,7 +22,10 @@ void vobj_editor::clear_selection() { _selected = nullptr; }
auto vobj_editor::get_selected() const -> const vobj_*
{
- return _selected;
+ if (_selected)
+ return _selected;
+ else
+ return {};
}
auto vobj_editor::get_type(StringView name) -> const vobj_*
@@ -91,13 +94,13 @@ std::shared_ptr<object> light_factory::make(world& w, object_id id, global_coord
return ret;
}
-auto vobj_editor::make_vobj_type_map() -> std::map<StringView, vobj_>
+auto vobj_editor::make_vobj_type_map() -> std::map<String, vobj_>
{
constexpr auto add = [](auto& m, std::unique_ptr<vobj_factory>&& x) {
StringView name = x->name(), descr = x->descr();
m[name] = vobj_editor::vobj_{ name, descr, std::move(x) };
};
- std::map<StringView, vobj_editor::vobj_> map;
+ std::map<String, vobj_> map;
add(map, std::make_unique<light_factory>());
return map;
}