[gd_scene load_steps=5 format=3 uid="uid://bvr6j8sohxob3"]

[ext_resource type="Script" path="res://src/UI/Dialogs/ImageEffects/RotateImage.gd" id="1"]
[ext_resource type="PackedScene" uid="uid://bybqhhayl5ay5" path="res://src/UI/Dialogs/ImageEffects/ImageEffectParent.tscn" id="2"]
[ext_resource type="PackedScene" uid="uid://yjhp0ssng2mp" path="res://src/UI/Nodes/Sliders/ValueSlider.tscn" id="3"]
[ext_resource type="PackedScene" uid="uid://bbnqcxa20a5a5" path="res://src/UI/Nodes/Sliders/ValueSliderV2.tscn" id="4"]

[node name="RotateImage" instance=ExtResource("2")]
title = "Rotate Image"
size = Vector2i(362, 535)
script = ExtResource("1")

[node name="VBoxContainer" parent="." index="3"]
offset_bottom = 486.0

[node name="Indicator" type="Control" parent="VBoxContainer/AspectRatioContainer" index="1"]
layout_mode = 2
mouse_default_cursor_shape = 2

[node name="LiveSettings" parent="VBoxContainer" index="2"]
visible = true

[node name="HBoxContainer2" type="HBoxContainer" parent="VBoxContainer" index="3"]
layout_mode = 2

[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer2" index="0"]
layout_mode = 2
text = "Type:"

[node name="TypeOptionButton" type="OptionButton" parent="VBoxContainer/HBoxContainer2" index="1"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
mouse_default_cursor_shape = 2

[node name="HSeparator" type="HSeparator" parent="VBoxContainer" index="4"]
layout_mode = 2

[node name="PivotOptions" type="HBoxContainer" parent="VBoxContainer" index="5"]
layout_mode = 2

[node name="Pivot" parent="VBoxContainer/PivotOptions" index="0" instance=ExtResource("4")]
layout_mode = 2
size_flags_horizontal = 3
step = 0.5
allow_greater = true
allow_lesser = true
grid_columns = 2
prefix_x = "Pivot x:"
prefix_y = "Pivot y:"

[node name="Centre" type="Button" parent="VBoxContainer/PivotOptions" index="1"]
layout_mode = 2
tooltip_text = "Places the pivot at the center of the image, or at the center of the selection, if it is present."
mouse_default_cursor_shape = 2
text = "Center"

[node name="HSeparator2" type="HSeparator" parent="VBoxContainer" index="6"]
layout_mode = 2

[node name="AngleSlider" parent="VBoxContainer" index="7" instance=ExtResource("3")]
layout_mode = 2
max_value = 359.0
prefix = "Angle:"
suffix = "°"
snap_step = 45.0

[node name="QuickRotations" type="HBoxContainer" parent="VBoxContainer" index="8"]
layout_mode = 2
alignment = 1

[node name="Deduct90" type="Button" parent="VBoxContainer/QuickRotations" index="0"]
layout_mode = 2
size_flags_horizontal = 3
mouse_default_cursor_shape = 2
text = "-90"

[node name="Deduct45" type="Button" parent="VBoxContainer/QuickRotations" index="1"]
layout_mode = 2
size_flags_horizontal = 3
mouse_default_cursor_shape = 2
text = "-45"

[node name="Zero" type="Button" parent="VBoxContainer/QuickRotations" index="2"]
layout_mode = 2
size_flags_horizontal = 3
mouse_default_cursor_shape = 2
text = "0"

[node name="Add45" type="Button" parent="VBoxContainer/QuickRotations" index="3"]
layout_mode = 2
size_flags_horizontal = 3
mouse_default_cursor_shape = 2
text = "+45"

[node name="Add90" type="Button" parent="VBoxContainer/QuickRotations" index="4"]
layout_mode = 2
size_flags_horizontal = 3
mouse_default_cursor_shape = 2
text = "+90"

[node name="SmearOptions" type="VBoxContainer" parent="VBoxContainer" index="9"]
visible = false
layout_mode = 2

[node name="HSeparator" type="HSeparator" parent="VBoxContainer/SmearOptions" index="0"]
layout_mode = 2

[node name="Label" type="Label" parent="VBoxContainer/SmearOptions" index="1"]
layout_mode = 2
text = "Smear options:"

[node name="ToleranceSlider" parent="VBoxContainer/SmearOptions" index="2" instance=ExtResource("3")]
layout_mode = 2
max_value = 255.0
value = 100.0
prefix = "Tolerance:"

[node name="InitialAngleSlider" parent="VBoxContainer/SmearOptions" index="3" instance=ExtResource("3")]
layout_mode = 2
max_value = 359.0
value = 359.0
prefix = "Initial angle:"
suffix = "°"
snap_step = 45.0

[node name="HSeparator3" type="HSeparator" parent="VBoxContainer" index="10"]
layout_mode = 2

[connection signal="draw" from="VBoxContainer/AspectRatioContainer/Indicator" to="." method="_on_Indicator_draw"]
[connection signal="gui_input" from="VBoxContainer/AspectRatioContainer/Indicator" to="." method="_on_Indicator_gui_input"]
[connection signal="item_selected" from="VBoxContainer/HBoxContainer2/TypeOptionButton" to="." method="_on_TypeOptionButton_item_selected"]
[connection signal="value_changed" from="VBoxContainer/PivotOptions/Pivot" to="." method="_on_Pivot_value_changed"]
[connection signal="pressed" from="VBoxContainer/PivotOptions/Centre" to="." method="_on_Centre_pressed"]
[connection signal="value_changed" from="VBoxContainer/AngleSlider" to="." method="_on_AngleSlider_value_changed"]
[connection signal="pressed" from="VBoxContainer/QuickRotations/Deduct90" to="." method="_on_quick_change_angle_pressed" binds= [-90]]
[connection signal="pressed" from="VBoxContainer/QuickRotations/Deduct45" to="." method="_on_quick_change_angle_pressed" binds= [-45]]
[connection signal="pressed" from="VBoxContainer/QuickRotations/Zero" to="." method="_on_quick_change_angle_pressed" binds= [0]]
[connection signal="pressed" from="VBoxContainer/QuickRotations/Add45" to="." method="_on_quick_change_angle_pressed" binds= [45]]
[connection signal="pressed" from="VBoxContainer/QuickRotations/Add90" to="." method="_on_quick_change_angle_pressed" binds= [90]]
[connection signal="value_changed" from="VBoxContainer/SmearOptions/ToleranceSlider" to="." method="_on_ToleranceSlider_value_changed"]
[connection signal="value_changed" from="VBoxContainer/SmearOptions/InitialAngleSlider" to="." method="_on_InitialAngleSlider_value_changed"]
