Emmanouil Papadeas
dd8145d369
Greatly simplify backup code, got rid of OpenSave's current_save_paths
and backup_save_paths
...
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`.
2024-03-22 18:24:41 +02:00
Emmanouil Papadeas
42bce917dc
Never change window title and save path when loading a backup
2024-03-22 15:54:00 +02:00
Emmanouil Papadeas
2c985027b9
Fix backup dialog not appearing
2024-03-22 15:30:28 +02:00
Emmanouil Papadeas
6e0d4eb660
Fix Project.export_directory_path
being set incorrectly in open_pxo_file()
2024-03-22 15:30:00 +02:00
Emmanouil Papadeas
4d077594ad
Remove old Ubuntu Touch code, as it's no longer supported
2024-03-22 15:14:58 +02:00
Emmanouil Papadeas
ad85c8dd3e
Minor open/save dialog path related code cleaning
2024-03-22 15:12:27 +02:00
Emmanouil Papadeas
60af6b27e3
Remove duplicate code in Main's load_last_project()
2024-03-22 14:44:11 +02:00
Emmanouil Papadeas
6c8b2ae36b
Rename Project.directory_path
to Project.export_directory_path
2024-03-22 14:42:47 +02:00
Emmanouil Papadeas
64983b0404
Some static typing improvements
2024-03-22 03:07:21 +02:00
Emmanouil Papadeas
8f8e6b7e32
Lazy load Recorder's FileDialog
2024-03-22 02:49:31 +02:00
Emmanouil Papadeas
fd4c7078b2
Lazy load create & edit palette dialogs
2024-03-21 17:29:00 +02:00
Emmanouil Papadeas
07fa1266d3
Remove three calls to Global.preferences_dialog
2024-03-21 03:00:21 +02:00
Emmanouil Papadeas
491d81f393
Minor config file section key re-organization
2024-03-21 01:51:19 +02:00
Emmanouil Papadeas
377c24c981
Make Pixelorama load slightly faster by not calling some setters of Global's variables if the value is the same
2024-03-21 00:02:54 +02:00
Emmanouil Papadeas
c45ac70d2b
Lazy load the splash dialog
2024-03-20 20:20:47 +02:00
Emmanouil Papadeas
722cb1a1e4
Lazy load the layer fx settings dialog
2024-03-20 19:03:46 +02:00
Emmanouil Papadeas
6f3796627f
Add a flat property to CollapsibleContainer
2024-03-20 15:49:53 +02:00
Emmanouil Papadeas
f1ef01bb87
Replace Camera2D with a custom CanvasCamera to reduce idle GPU usage
...
Necessary workaround because of https://github.com/godotengine/godot/issues/89514
2024-03-19 15:39:34 +02:00
Emmanouil Papadeas
63469e9c78
New Crowdin updates ( #987 )
2024-03-17 22:15:06 +02:00
Emmanouil Papadeas
9fa90ab3b1
Set license text in the About dialog to be uneditable
2024-03-16 22:49:22 +02:00
Emmanouil Papadeas
03b173b76e
Optimize cel switching by avoiding changing the stylebox of every CelButton
2024-03-15 01:31:12 +02:00
Emmanouil Papadeas
d3be746290
Change UI of layer buttons - bring the small buttons out of the main button
...
This makes the visible/lock/linked/expand buttons more clear that they are indeed buttons. This commit also slightly changes the look of child layers, as they only appear intended and they no longer change color.
2024-03-14 20:13:42 +02:00
Emmanouil Papadeas
c1b78e4c01
Implement basic clipping masks
...
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.
2024-03-14 01:08:57 +02:00
Emmanouil Papadeas
fdc92ccfc3
Fix group layer expand button not working
2024-03-13 01:22:46 +02:00
Emmanouil Papadeas
3c5c659f01
Disable 3D for the SubViewports
...
This doesn't affect 3D layers, as they are being rendered on another Viewport
2024-03-12 22:18:15 +02:00
Emmanouil Papadeas
6ea6df0e26
Fix size label not being updated on the Export dialog's spritesheet tab when the direction changes
2024-03-11 19:19:27 +02:00
Emmanouil Papadeas
3fb2877b73
Fix pattern sampler2D in shaders not repeating
...
When using the Bucket tool to fill with pattern in "Similar colors" and "Whole selection" modes, the pattern was not being repeated.
2024-03-10 14:59:55 +02:00
Emmanouil Papadeas
4614a648d1
Update hint tooltip of the alpha lock button
2024-03-09 02:51:29 +02:00
Emmanouil Papadeas
dc9ba6dd9c
Implement alpha lock as a global tool option
2024-03-09 02:47:13 +02:00
Emmanouil Papadeas
c225553042
Fix linked cels not working when importing a pxo file
...
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.
2024-03-08 02:15:58 +02:00
Emmanouil Papadeas
90f7df0f5d
Exporting each layer as a different file is now possible
2024-03-07 16:08:20 +02:00
Emmanouil Papadeas
cb58cf7163
Minor refactor of Export & ExportDialog to combine processed_images and durations into a single ProcessedImage class
2024-03-07 02:10:21 +02:00
Emmanouil Papadeas
cd2787b373
Set opacity of multiple layers at once
2024-03-07 01:16:43 +02:00
Emmanouil Papadeas
d17a151f8d
Delete and change properties of multiple cels at once
2024-03-07 01:06:46 +02:00
Emmanouil Papadeas
20fecc5a7a
Export spritesheets based on animation tags
2024-03-06 19:49:05 +02:00
Emmanouil Papadeas
55df23e400
Fix exporting not including the last frame of a tag and "Selected layers" not including the non-selected frames
2024-03-06 01:47:00 +02:00
Emmanouil Papadeas
36d4b0fa18
Fix crash when importing a corrupt pxo
2024-03-05 16:05:13 +02:00
Emmanouil Papadeas
e726dcfc09
Fix static typing
2024-03-04 18:27:58 +02:00
Emmanouil Papadeas
2e9c4eb1b9
Add a timeline_updated()
signal in Project
...
Used by https://github.com/Orama-Interactive/TeledrawingPixelorama extension
2024-03-04 18:25:03 +02:00
Emmanouil Papadeas
b0a8ad17d4
Revert using Image.rotate_90() from the previous commit
...
Image.rotate_90() is also changing the size of the image, which we don't want to, at least not yet
2024-03-02 18:03:06 +02:00
Emmanouil Papadeas
4a404b2883
Use Image.rotate_90() and Image.rotate_180() on CPU rotation algorithms when the angle is 90, 180 or 270 degrees
2024-03-01 20:25:37 +02:00
Emmanouil Papadeas
57856ed327
Update ExtensionsApi.gd
2024-02-29 23:54:19 +02:00
Emmanouil Papadeas
693ca36b26
New Crowdin updates ( #964 )
2024-02-27 17:26:55 +02:00
OverloadedOrama
b388b9328a
[skip ci] Update Translations.pot
2024-02-26 20:17:47 +02:00
Emmanouil Papadeas
9b439327b8
Fix ExtensionsAPI's new_project()
not working, and add a new new_empty_project()
method
2024-02-24 15:25:54 +02:00
Emmanouil Papadeas
03ce5d40a2
Set the window's minimum size only once in Main.gd
2024-02-23 20:24:37 +02:00
Emmanouil Papadeas
d3db8f5be7
Rename project_changed
to project_data_changed
signal, add a new method for this signal in ExtensionsAPI
2024-02-22 17:43:47 +02:00
Emmanouil Papadeas
a06d6a2909
Improve static typing in the ExtensionsAPI
2024-02-22 00:46:28 +02:00
Emmanouil Papadeas
d9bdcf53ec
[skip ci] Update CHANGELOG.md
2024-02-20 16:24:26 +02:00
Emmanouil Papadeas
22ddc96962
Use getters to lazy-load cleanEdge and OmniScale shaders
2024-02-19 02:09:35 +02:00