1
0
Fork 0
mirror of https://github.com/Orama-Interactive/Pixelorama.git synced 2025-02-13 17:23:08 +00:00

Compare commits

...

3 commits

Author SHA1 Message Date
Variable 4561c1fee4
improved rotate/flip brush UI (#1105)
* Update BaseDraw.tscn

* Update BaseDraw.gd

* Implemented proposed changed, Also added a VFlowContainer for Rotate options
2024-10-14 16:08:10 +03:00
Emmanouil Papadeas fe5ced8085 Set the backup confirmation dialog's popup_window to false 2024-10-14 15:55:48 +03:00
Emmanouil Papadeas 37f48e3372 [skip ci] Update CHANGELOG.md 2024-10-14 12:42:41 +03:00
4 changed files with 58 additions and 30 deletions

View file

@ -11,13 +11,23 @@ Fayez Akhtar ([@Variable-ind](https://github.com/Variable-ind))
Built using Godot 4.3
### Added
- It is now possible to make panels into floating windows. This allows for any panel in the user interface to be its own window, and if single window mode is disabled, you can move these windows anywhere you want. This is especially useful for multi-monitor setups.
- Added a new "color replace" mode to the Shading tool, that uses the colors of the palette to apply shading. [#1107](https://github.com/Orama-Interactive/Pixelorama/pull/1107)
- Added a new Erase blend mode. [#1117](https://github.com/Orama-Interactive/Pixelorama/pull/1117)
- It is now possible to change the font, depth and line spacing of 3D text.
- Clipping to selecting during export is now possible. [#1113](https://github.com/Orama-Interactive/Pixelorama/pull/1113)
- Added hotkeys to switch between tabs. [#1109](https://github.com/Orama-Interactive/Pixelorama/pull/1109)
- Added hotkeys to switch between tabs. <kbd>Control+Tab</kbd> to go to the next project tab, and <kbd>Control+Shift+Tab</kbd> to go to the previous. [#1109](https://github.com/Orama-Interactive/Pixelorama/pull/1109)
- Added menus next to each of the two mirroring buttons in the Global Tool Options, that allow users to automatically move the symmetry guides to the center of the canvas, or the view center.
- A new Reset category has been added to the Preferences that lets users easily restore certain options.
### Fixed
- The move tool preview is now properly aligned to the pixel grid.
- Camera zoom is now being preserved when switching between projects.
- Projects are no longer being saved with the wrong name in the Web version.
- Fixed 3D Shape Edit tool option values not updating when switching between 3D objects.
- Tool previews are now being properly cleared when switching to other tools before finishing the action being performed by the previous tool.
- Fixed icons not being set to the correct color when launching Pixelorama with the dark theme.
- Fixed some text in the About dialog not having the text color of the theme.
- The dynamics dialog is now set to its correct size when something is made visible or invisible. [#1104](https://github.com/Orama-Interactive/Pixelorama/pull/1104)
- The color picker values no longer change when using RAW mode. [#1108](https://github.com/Orama-Interactive/Pixelorama/pull/1108)
- Fixed some icon stretch and expand modes in the UI. [#1103](https://github.com/Orama-Interactive/Pixelorama/pull/1103)

View file

@ -74,7 +74,6 @@ dialog_text = "This is an error message!"
[node name="BackupConfirmation" type="ConfirmationDialog" parent="Dialogs"]
size = Vector2i(320, 200)
popup_window = true
dialog_text = "Autosaved project(s) from a crashed session were found.
Do you want to recover the data?"
dialog_autowrap = true

View file

@ -130,11 +130,11 @@ func set_config(config: Dictionary) -> void:
func update_config() -> void:
$Brush/BrushSize.value = _brush_size
$ColorInterpolation.value = _brush_interpolate
$RotationOptions/Flip/FlipX.button_pressed = _brush_flip_x
$RotationOptions/Flip/FlipY.button_pressed = _brush_flip_y
$RotationOptions/Rotate/Rotate90.button_pressed = _brush_rotate_90
$RotationOptions/Rotate/Rotate180.button_pressed = _brush_rotate_180
$RotationOptions/Rotate/Rotate270.button_pressed = _brush_rotate_270
%FlipX.button_pressed = _brush_flip_x
%FlipY.button_pressed = _brush_flip_y
%Rotate90.button_pressed = _brush_rotate_90
%Rotate180.button_pressed = _brush_rotate_180
%Rotate270.button_pressed = _brush_rotate_270
update_brush()

View file

@ -9,7 +9,7 @@
resource_name = "rotate"
allow_unpress = true
[sub_resource type="StyleBoxFlat" id="1"]
[sub_resource type="StyleBoxFlat" id="2"]
bg_color = Color(1, 1, 1, 1)
border_color = Color(1, 1, 1, 1)
corner_radius_top_left = 5
@ -18,7 +18,7 @@ corner_radius_bottom_right = 5
corner_radius_bottom_left = 5
anti_aliasing = false
[sub_resource type="StyleBoxFlat" id="2"]
[sub_resource type="StyleBoxFlat" id="1"]
bg_color = Color(1, 1, 1, 1)
border_color = Color(1, 1, 1, 1)
corner_radius_top_left = 5
@ -38,44 +38,63 @@ script = ExtResource("3_76bek")
text = "Rotation options"
flat = true
[node name="Flip" type="HBoxContainer" parent="RotationOptions" index="1"]
[node name="GridContainer" type="GridContainer" parent="RotationOptions" index="1"]
visible = false
layout_mode = 2
columns = 2
[node name="FlipX" type="CheckBox" parent="RotationOptions/Flip" index="0"]
[node name="FlipLabel" type="Label" parent="RotationOptions/GridContainer" index="0"]
layout_mode = 2
text = "Flip:"
[node name="Flip" type="HBoxContainer" parent="RotationOptions/GridContainer" index="1"]
layout_mode = 2
size_flags_horizontal = 3
[node name="FlipX" type="CheckBox" parent="RotationOptions/GridContainer/Flip" index="0"]
unique_name_in_owner = true
layout_mode = 2
mouse_default_cursor_shape = 2
text = "Flip X"
text = "X"
[node name="FlipY" type="CheckBox" parent="RotationOptions/Flip" index="1"]
[node name="FlipY" type="CheckBox" parent="RotationOptions/GridContainer/Flip" index="1"]
unique_name_in_owner = true
layout_mode = 2
mouse_default_cursor_shape = 2
text = "Flip Y"
text = "Y"
[node name="Rotate" type="HBoxContainer" parent="RotationOptions" index="2"]
visible = false
[node name="RotateLabel" type="Label" parent="RotationOptions/GridContainer" index="2"]
layout_mode = 2
size_flags_vertical = 0
text = "Rotate:"
[node name="Rotate90" type="CheckBox" parent="RotationOptions/Rotate" index="0"]
[node name="Rotate" type="HFlowContainer" parent="RotationOptions/GridContainer" index="3"]
layout_mode = 2
size_flags_horizontal = 3
[node name="Rotate90" type="CheckBox" parent="RotationOptions/GridContainer/Rotate" index="0"]
unique_name_in_owner = true
layout_mode = 2
tooltip_text = "rotate the brush 90 degrees"
mouse_default_cursor_shape = 2
button_group = SubResource("ButtonGroup_7u3x0")
text = "R 90"
text = "90°"
[node name="Rotate180" type="CheckBox" parent="RotationOptions/Rotate" index="1"]
[node name="Rotate180" type="CheckBox" parent="RotationOptions/GridContainer/Rotate" index="1"]
unique_name_in_owner = true
layout_mode = 2
tooltip_text = "rotate the brush 180 degrees"
mouse_default_cursor_shape = 2
button_group = SubResource("ButtonGroup_7u3x0")
text = "R 180"
text = "180°"
[node name="Rotate270" type="CheckBox" parent="RotationOptions/Rotate" index="2"]
[node name="Rotate270" type="CheckBox" parent="RotationOptions/GridContainer/Rotate" index="2"]
unique_name_in_owner = true
layout_mode = 2
tooltip_text = "rotate the brush 270 degrees"
mouse_default_cursor_shape = 2
button_group = SubResource("ButtonGroup_7u3x0")
text = "R 270"
text = "270°"
[node name="Brush" type="HBoxContainer" parent="." index="3"]
layout_mode = 2
@ -87,11 +106,11 @@ layout_mode = 2
size_flags_horizontal = 0
tooltip_text = "Select a brush"
mouse_default_cursor_shape = 2
theme_override_styles/normal = SubResource("1")
theme_override_styles/focus = SubResource("2")
theme_override_styles/disabled = SubResource("2")
theme_override_styles/hover = SubResource("1")
theme_override_styles/pressed = SubResource("1")
theme_override_styles/disabled = SubResource("2")
theme_override_styles/focus = SubResource("2")
theme_override_styles/normal = SubResource("1")
[node name="Texture" type="TextureRect" parent="Brush/Type" index="0"]
layout_mode = 0
@ -117,11 +136,11 @@ layout_mode = 2
tooltip_text = "0: Color from the brush itself, 100: the currently selected color"
prefix = "Brush color from:"
[connection signal="toggled" from="RotationOptions/Flip/FlipX" to="." method="_on_flip_x_toggled"]
[connection signal="toggled" from="RotationOptions/Flip/FlipY" to="." method="_on_flip_y_toggled"]
[connection signal="toggled" from="RotationOptions/Rotate/Rotate90" to="." method="_on_rotate_90_toggled"]
[connection signal="toggled" from="RotationOptions/Rotate/Rotate180" to="." method="_on_rotate_180_toggled"]
[connection signal="toggled" from="RotationOptions/Rotate/Rotate270" to="." method="_on_rotate_270_toggled"]
[connection signal="toggled" from="RotationOptions/GridContainer/Flip/FlipX" to="." method="_on_flip_x_toggled"]
[connection signal="toggled" from="RotationOptions/GridContainer/Flip/FlipY" to="." method="_on_flip_y_toggled"]
[connection signal="toggled" from="RotationOptions/GridContainer/Rotate/Rotate90" to="." method="_on_rotate_90_toggled"]
[connection signal="toggled" from="RotationOptions/GridContainer/Rotate/Rotate180" to="." method="_on_rotate_180_toggled"]
[connection signal="toggled" from="RotationOptions/GridContainer/Rotate/Rotate270" to="." method="_on_rotate_270_toggled"]
[connection signal="pressed" from="Brush/Type" to="." method="_on_BrushType_pressed"]
[connection signal="value_changed" from="Brush/BrushSize" to="." method="_on_BrushSize_value_changed"]
[connection signal="value_changed" from="ColorInterpolation" to="." method="_on_InterpolateFactor_value_changed"]