#include "sprite_frames_editor_plugin.h"
#include "core/config/project_settings.h"
#include "core/io/resource_loader.h"
#include "core/os/keyboard.h"
#include "editor/editor_command_palette.h"
#include "editor/editor_file_system.h"
#include "editor/editor_node.h"
#include "editor/editor_settings.h"
#include "editor/editor_string_names.h"
#include "editor/editor_undo_redo_manager.h"
#include "editor/gui/editor_bottom_panel.h"
#include "editor/gui/editor_file_dialog.h"
#include "editor/scene_tree_dock.h"
#include "editor/themes/editor_scale.h"
#include "scene/gui/center_container.h"
#include "scene/gui/flow_container.h"
#include "scene/gui/margin_container.h"
#include "scene/gui/option_button.h"
#include "scene/gui/panel_container.h"
#include "scene/gui/separator.h"
#include "scene/resources/atlas_texture.h"
static void _draw_shadowed_line(Control *p_control, const Point2 &p_from, const Size2 &p_size, const Size2 &p_shadow_offset, Color p_color, Color p_shadow_color) { … }
void SpriteFramesEditor::_open_sprite_sheet() { … }
int SpriteFramesEditor::_sheet_preview_position_to_frame_index(const Point2 &p_position) { … }
void SpriteFramesEditor::_sheet_preview_draw() { … }
void SpriteFramesEditor::_sheet_preview_input(const Ref<InputEvent> &p_event) { … }
void SpriteFramesEditor::_sheet_scroll_input(const Ref<InputEvent> &p_event) { … }
void SpriteFramesEditor::_sheet_add_frames() { … }
void SpriteFramesEditor::_sheet_zoom_on_position(float p_zoom, const Vector2 &p_position) { … }
void SpriteFramesEditor::_sheet_zoom_in() { … }
void SpriteFramesEditor::_sheet_zoom_out() { … }
void SpriteFramesEditor::_sheet_zoom_reset() { … }
void SpriteFramesEditor::_sheet_order_selected(int p_option) { … }
void SpriteFramesEditor::_sheet_select_all_frames() { … }
void SpriteFramesEditor::_sheet_clear_all_frames() { … }
void SpriteFramesEditor::_sheet_sort_frames() { … }
void SpriteFramesEditor::_sheet_spin_changed(double p_value, int p_dominant_param) { … }
void SpriteFramesEditor::_toggle_show_settings() { … }
void SpriteFramesEditor::_update_show_settings() { … }
void SpriteFramesEditor::_auto_slice_sprite_sheet() { … }
bool SpriteFramesEditor::_matches_background_color(const Color &p_background_color, const Color &p_pixel_color) { … }
Size2i SpriteFramesEditor::_estimate_sprite_sheet_size(const Ref<Texture2D> p_texture) { … }
void SpriteFramesEditor::_prepare_sprite_sheet(const String &p_file) { … }
void SpriteFramesEditor::_notification(int p_what) { … }
void SpriteFramesEditor::_file_load_request(const Vector<String> &p_path, int p_at_pos) { … }
Size2i SpriteFramesEditor::_get_frame_count() const { … }
Size2i SpriteFramesEditor::_get_frame_size() const { … }
Size2i SpriteFramesEditor::_get_offset() const { … }
Size2i SpriteFramesEditor::_get_separation() const { … }
void SpriteFramesEditor::_load_pressed() { … }
void SpriteFramesEditor::_paste_pressed() { … }
void SpriteFramesEditor::_paste_frame_array(const Ref<ClipboardSpriteFrames> &p_clipboard_frames) { … }
void SpriteFramesEditor::_paste_texture(const Ref<Texture2D> &p_texture) { … }
void SpriteFramesEditor::_copy_pressed() { … }
void SpriteFramesEditor::_empty_pressed() { … }
void SpriteFramesEditor::_empty2_pressed() { … }
void SpriteFramesEditor::_up_pressed() { … }
void SpriteFramesEditor::_down_pressed() { … }
void SpriteFramesEditor::_delete_pressed() { … }
void SpriteFramesEditor::_animation_selected() { … }
void SpriteFramesEditor::_sync_animation() { … }
void SpriteFramesEditor::_select_animation(const String &p_name, bool p_update_node) { … }
static void _find_anim_sprites(Node *p_node, List<Node *> *r_nodes, Ref<SpriteFrames> p_sfames) { … }
void SpriteFramesEditor::_animation_name_edited() { … }
void SpriteFramesEditor::_rename_node_animation(EditorUndoRedoManager *undo_redo, bool is_undo, const String &p_filter, const String &p_new_animation, const String &p_new_autoplay) { … }
void SpriteFramesEditor::_animation_add() { … }
void SpriteFramesEditor::_animation_duplicate() { … }
void SpriteFramesEditor::_animation_remove() { … }
void SpriteFramesEditor::_animation_remove_confirmed() { … }
void SpriteFramesEditor::_animation_search_text_changed(const String &p_text) { … }
void SpriteFramesEditor::_animation_loop_changed() { … }
void SpriteFramesEditor::_animation_speed_changed(double p_value) { … }
void SpriteFramesEditor::_frame_list_gui_input(const Ref<InputEvent> &p_event) { … }
void SpriteFramesEditor::_frame_list_item_selected(int p_index, bool p_selected) { … }
void SpriteFramesEditor::_frame_duration_changed(double p_value) { … }
void SpriteFramesEditor::_zoom_in() { … }
void SpriteFramesEditor::_zoom_out() { … }
void SpriteFramesEditor::_zoom_reset() { … }
void SpriteFramesEditor::_update_library(bool p_skip_selector) { … }
void SpriteFramesEditor::_update_library_impl() { … }
void SpriteFramesEditor::_edit() { … }
void SpriteFramesEditor::edit(Ref<SpriteFrames> p_frames) { … }
Ref<SpriteFrames> SpriteFramesEditor::get_sprite_frames() const { … }
Variant SpriteFramesEditor::get_drag_data_fw(const Point2 &p_point, Control *p_from) { … }
bool SpriteFramesEditor::can_drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) const { … }
void SpriteFramesEditor::drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) { … }
void SpriteFramesEditor::_update_stop_icon() { … }
void SpriteFramesEditor::_remove_sprite_node() { … }
void SpriteFramesEditor::_fetch_sprite_node() { … }
void SpriteFramesEditor::_play_pressed() { … }
void SpriteFramesEditor::_play_from_pressed() { … }
void SpriteFramesEditor::_play_bw_pressed() { … }
void SpriteFramesEditor::_play_bw_from_pressed() { … }
void SpriteFramesEditor::_stop_pressed() { … }
void SpriteFramesEditor::_autoplay_pressed() { … }
void SpriteFramesEditor::_bind_methods() { … }
void SpriteFramesEditor::_node_removed(Node *p_node) { … }
SpriteFramesEditor::SpriteFramesEditor() { … }
void SpriteFramesEditorPlugin::edit(Object *p_object) { … }
bool SpriteFramesEditorPlugin::handles(Object *p_object) const { … }
void SpriteFramesEditorPlugin::make_visible(bool p_visible) { … }
SpriteFramesEditorPlugin::SpriteFramesEditorPlugin() { … }
SpriteFramesEditorPlugin::~SpriteFramesEditorPlugin() { … }