|
@@ -1476,8 +1476,8 @@ void SpriteFramesEditor::edit(Ref<SpriteFrames> p_frames) {
|
|
_fetch_sprite_node(); // Fetch node after set frames.
|
|
_fetch_sprite_node(); // Fetch node after set frames.
|
|
}
|
|
}
|
|
|
|
|
|
-bool SpriteFramesEditor::is_editing() const {
|
|
|
|
- return frames.is_valid();
|
|
|
|
|
|
+Ref<SpriteFrames> SpriteFramesEditor::get_sprite_frames() const {
|
|
|
|
+ return frames;
|
|
}
|
|
}
|
|
|
|
|
|
Variant SpriteFramesEditor::get_drag_data_fw(const Point2 &p_point, Control *p_from) {
|
|
Variant SpriteFramesEditor::get_drag_data_fw(const Point2 &p_point, Control *p_from) {
|
|
@@ -2337,7 +2337,11 @@ bool SpriteFramesEditorPlugin::handles(Object *p_object) const {
|
|
if (animated_sprite_3d && *animated_sprite_3d->get_sprite_frames()) {
|
|
if (animated_sprite_3d && *animated_sprite_3d->get_sprite_frames()) {
|
|
return true;
|
|
return true;
|
|
}
|
|
}
|
|
- return !frames_editor->is_editing() && Object::cast_to<SpriteFrames>(p_object);
|
|
|
|
|
|
+ SpriteFrames *frames = Object::cast_to<SpriteFrames>(p_object);
|
|
|
|
+ if (frames && (frames_editor->get_sprite_frames().is_null() || frames_editor->get_sprite_frames() == frames)) {
|
|
|
|
+ return true;
|
|
|
|
+ }
|
|
|
|
+ return false;
|
|
}
|
|
}
|
|
|
|
|
|
void SpriteFramesEditorPlugin::make_visible(bool p_visible) {
|
|
void SpriteFramesEditorPlugin::make_visible(bool p_visible) {
|