* Some static typing and use notification to check if the theme has changed in swatches
* Use Vector2i for scrolling, hide scrollbars in the node properties
* More static typing improvements
* More static typing & docstring improvements, remove some methods from Palettes.gd
* [WIP] Go back to json for palettes instead of tres
* Revert back to using dictionaries for palette colors instead of array
Reverts part of the previous commit
* Read width & height from files, don't store the name
* Fix palette renaming
* Copy non-json palettes into json files
* Fix palette duplication
* Add a new _fill_imported_palette_with_colors() to avoid duplicate code in import file methods
* Fix palette file importing when not initialising
* Export palettes as images
* Replace "tres" with "json" filter in the open sprite dialog
* When exporting a palette as an image, automatically set the file name to the palette name
* Replace default palette files with json
* Remove the Global.palette_panel variable, use signals instead.
* Static typing in signals
* Fix warning in Palettes.gd
* Fix formatting
* Add missing comments to the palette files
* Update Palettes.gd
* A few more static typing improvements
* Save pxos as zip files in disguise
* Load pxo files as zip
* Add a checkbox in save dialog to let users include the final blended images in the pxo or not
* Initial work of a color picker that is always visible
* Make the new color picker fully functional
* Minor UI fixes
* Change the UI a bit so the color picker buttons look like they used to
To save horizontal space
* Add sliders as a separate panel and rename some file names
* Move the left/right color buttons next to the hex text edit
* Add color picker sliders to the same panel as the rest of the color picker, as an expandable/collapsible area
* Change default layout
* Some minor UI improvements
* Remove guides from ColorPicker.tscn
* Reduce the lines of code that calculate the average color
* Make Pixelorama remember if the color picker is expanded and its color mode
* Update tallscreen.tres
* Update tallscreen.tres
* Pixelorama now also remembers the last used picker shape
* Add some extra comments in the code
* Fix typo
* Add some translation strings
* Basic logic for layer effects
* Add an FX button and the ability to add effects, no way to remove or change properties of effects yet
* Basic and ugly UI for adding and removing effects, no property changing yet
* Swap effects
* Fix preload shader paths
* Change parameters for layer effects
* Change gradient parameter in layer effect shaders, and other fixes
* Use CollapsibleContainers for the shader properties
* Set the correct gradient interpolation mode and color space in the UI
* Make effects of group layers apply to children
* Change `apply_fx` to `apply_effects`, formatting, some extra doc comments
* Apply effects to other canvases, when merging layers and when exporting
* Display humanized names of the shader unifrms
* Some UI improvements to the LayerEffectsSettings
* Add an Enabled button in the layer effects window, and change checkboxes to checkbuttons
* Change BaseLayer.apply_effects() to take a cel as a parameter instead
* Make layer effect buttons be affected by the modulate icon color
* Add option in the View menu whether layer effects are displayed in the canvas or not
* Rename `apply_effects()` to `display_effects()`
* Add translation strings
* Add nearest filter to the gradient map
* Don't change Main.tscn
* Fix more translations
* Change the default cursor shape of the generated UI elements of the layer effects
* Add undo/redo and effect application (apply effect destructively)
There are some errors due to the usage of anonymous lambda methods in undo/redo, but it seems to be working well regardless.
* Make layer effect application work on all cels
Instead of storing copies of entire images. This is a bit slower on the CPU side, mostly on larger canvases, but it is a massive RAM optimization. Perhaps it could be move optimal to use a shader here.
* added some docs to global
* more docs
* completed preference docs
* removing typos
* added more docs
* some more docs
* some doc revisions
* typo
* removed typos
* added more docs
* completed global doc
* fix typos
* changed some stuff
* replaced (Preference Variable) with "Found in preferences"
* ExtensionsAPI.gd to ExtensionsApi.gd
* added docs to outer Api
* added empty line
* added docs to GeneralAPI
* added docs to MenuAPI
* added docs to DialogAPI
* added docs to PanelAPI
* added docs to ThemeAPI
* added docs to ToolAPI
* added docs to SelectionAPI
* added docs to the remaining APIs
* fix typo
* formatting
* linting
* linting
* documented AnimationTag class
* documented BaseCel class
* more accurate instructions to generate api
* improve/clean docs a bit
* documented BaseLayer class
* linting
* added some more docs
* Update BaseLayer.gd
* typo
* added some more info
* Preview blend modes
No support for exporting and layer merging yet. Also need to fix the move tool preview.
* Preview blend modes on tile mode
* Raise layer limit to 1024
* Export images with layer blending modes
* Save blend modes in pxo files
* Merge layers with blending modes
* Fix crash when adding a new layer
* Preview blending in the other canvases
* Update DrawingAlgos.gd
* Move tool preview
* Re-arrange blend menu and add lighten, darken, linear burn and exclusion
* Add divide blend mode
* Add hue, saturation, color & luminosity blend modes
* Undo/redo when changing blend modes
* move paletes to bin instead of deleting them permanently
* changed emit_signal to deleted.emit()
* allow user to choose between permanent and temporary deletion
* added translation for "Move to bin"
* changed delete dialog to a confirmation dialog
* added "Delete Permanently"