仍有bug
This commit is contained in:
@@ -447,6 +447,11 @@ Scene_Edit_Error Scene_Base::Renderable_Editor::clear_dependency_parent(
|
||||
scene_data.model_dirty_.store(true, std::memory_order_release);
|
||||
return Scene_Edit_Error::none;
|
||||
}
|
||||
void Scene_Base::Renderable_Editor::replace_frame_control_strategy(
|
||||
std::shared_ptr<Frame_Control_Strategy_Base> strategy) {
|
||||
scene_.d_func().frame_control().replace_frame_control_strategy(
|
||||
std::move(strategy));
|
||||
}
|
||||
Scene_Edit_Error Scene_Base::Edit_Operation::wait() const {
|
||||
if (!result_.valid()) ::renderive::error::unexpected<std::logic_error>("scene edit operation is invalid");
|
||||
return result_.get();
|
||||
|
||||
@@ -80,6 +80,8 @@ public:
|
||||
[[nodiscard]] Scene_Edit_Error set_dependency_parent(const Renderable& child, const Renderable& parent);
|
||||
[[nodiscard]] Scene_Edit_Error add_dependency_parent(const Renderable& child, const Renderable& parent);
|
||||
[[nodiscard]] Scene_Edit_Error clear_dependency_parent(const Renderable& child);
|
||||
void replace_frame_control_strategy(
|
||||
std::shared_ptr<Frame_Control_Strategy_Base> strategy);
|
||||
[[nodiscard]] Scene_Edit_Error error() const noexcept {
|
||||
return error_;
|
||||
}
|
||||
|
||||
@@ -10,6 +10,8 @@ public:
|
||||
virtual ~Frame_Control_Capability() = default;
|
||||
virtual std::shared_ptr<Frame_Control_Strategy_Base> frame_control_strategy() = 0;
|
||||
virtual std::shared_ptr<const Frame_Control_Strategy_Base> frame_control_strategy() const = 0;
|
||||
virtual void replace_frame_control_strategy(
|
||||
std::shared_ptr<Frame_Control_Strategy_Base> strategy) = 0;
|
||||
};
|
||||
struct Scene_State_Capability {
|
||||
virtual ~Scene_State_Capability() = default;
|
||||
|
||||
Reference in New Issue
Block a user