This only works for frames at the moment, not layers and cels. Layers may be harder to support because they also have children. Supports both the "move left/right" options and drag and dropping. Frame swapping (with control) only works when one frame is selected, because I am unsure how they should be handled, especially when the selected frames are not continuous.
Didn't encounter any issues on my testing, but more testing is always welcome.
Pixelize makes the image pixelated, and Palettize maps the color of the input to the nearest color in the selected palette. Useful for limiting color in pixel art and for artistic effects.
Probably temporary, it might be a good idea to add a third "Data" tab in the export dialog, if we add stuff like exporting to Godot resources, such as AnimatedSprite, AnimationPlayer etc.
Allows users to change project name and add custom user data. I was not sure where to put this, so I put it under the Edit menu. It might be a good idea to add a new "Project" menu in the future, and perhaps Scale Image, Resize Canvas and Crop to Content/Selection could be placed there, as they always affect the entire project.
* experimental refactor
* some fixes, some improvements
* some formatting and add check for invalid argument
* formatting
* added similarity option
* linting
Supports exporting images & spritesheets with frame, direction, scale and output file name specification. Also added some informative arguments that simply print out some data.
This only happens when the pxo file contains the final blended images (happens when "include blended" is enabled when saving), project has been saved, it hasn't been changed and "Visible layers" is selected.
Only meant to prevent crashes when trying to export from headless mode. This blending logic does not support blend modes, clipping masks, and layer effects.
Speeds up the initial loading time of Pixelorama. It's now almost as fast as 0.x on my computer (a bit more than 2 seconds). Lazy loading the preferences dialog also drastically reduces memory usage and node count (when preferences have not been opened), from 150MB, 13634 objects and 3680 nodes, to 94MB, 8207 objects and 1823 nodes. This essentially cuts the initial node count to half!
The preferences code only handles the UI related stuff, while the Themes autoload is now solely responsible for theme adding, removing and changing. This makes it possible to handle themes without having the preferences dialog be in the middle.