* Add Flip X, Flip Y, Rotate 90, Rotate 180, Rotate 270
* node placement
* flip_rotate for BrushButton
* flip corrected for BrushButton (x, y was reversed)
* code changed for github static checks
* github static checks
* github static checks 2
* remove " _ " before my variable name
hope this was the problem
* var brush_texture_rotation
* Hide Flip/Rotate buttons where it is unnecessary
* btns flip/rotate hide when a non-image brush is selected
* rotate ButtonGroup (radio btn)
* expand button for flip/rotate
* radio btn grp 2
* expand button (forgot to add the tscn )
* cursor shape to pointing hand
* tooltip R90 R180 R270
i dont add txt to the Translations.pot bc not sure to understand and dont want to make mistake
* shading.tscn (nodes placement debreaking)
back as before
* Revert "expand button (forgot to add the tscn )"
This reverts commit 3062afe73f.
* Revert "expand button for flip/rotate"
This reverts commit 51189ac793.
* Collapsible Container
change "expend buton" to the pixelorama custum node "CollapsibleContainer"
* remove thick white outline when CollapseContainer is pressed and focus
* styleboxflat when CollapseContainer is pressed and empty for checkbox
* Revert "styleboxflat when CollapseContainer is pressed and empty for checkbox"
This reverts commit 0af0e1f427.
* StyleboxEmpty for normal / keep hover unchanged
* Revert "StyleboxEmpty for normal / keep hover unchanged"
This reverts commit 14b3745053.
* Revert "remove thick white outline when CollapseContainer is pressed and focus"
This reverts commit b80ab1ad5c.
* "flip_rotateD" + "Flat CollapsibleContainer'"
* conflicts Resolved
signal color_changed(color: Color, button: int)
---------
Co-authored-by: Emmanouil Papadeas <35376950+OverloadedOrama@users.noreply.github.com>
The previous backup code was unnecessarily complicated, hard to read/understand and prone to errors. The new system simply stores the save and backup paths in the `Project` class, and stores the backup files inside `user://backups`, instead of having their file paths be in `cache.ini`.
A very simple implementation, not as complex as something like #768 yet, but it can be done in the future.
The main current limitation is that it doesn't work with group layers as of right now.
Godot 4 has changed how ImageTexture works, as now it doesn't work when the Image is empty. Thus, we need to add Images to PixelCels right when they are created, before the linked cel logic is being handled.
Haven't tried large videos, but I imagine Pixelorama would run out of memory quickly. Maybe we should safeguard against that somehow. We also need to get the fps from the imported video and use it in the new project.
Enabled by default, every time you sort a palette it creates a copy of the original palette and it sorts that, instead of sorting the original palette directly. This reduces the risk of destructive change, as the palette system does not have undo/redo support. If disabled, sorting affects the original palette directly, without creating a new one.
I had to disable it, because for some reason having it be enabled by default does not seem to be working. This may be a good idea anyway, as many people will not need this feature, and having this enabled affects performance.
This commit also allows for changing project setting related options in the preferences to also work when running Pixelorama inside Godot.