1
0
Fork 0
mirror of https://github.com/Orama-Interactive/Pixelorama.git synced 2025-02-15 18:13:15 +00:00
Commit graph

627 commits

Author SHA1 Message Date
Variable
3df7a67b9b
fix some stuff in extension explorer, and changed (open logs folder) to (open editor data folder) (#1038) 2024-07-20 23:09:38 +03:00
Emmanouil Papadeas
b3133130ad Include tag name even if we're exporting a single file 2024-07-19 17:24:58 +03:00
Emmanouil Papadeas
3ea0ef0b5a Make the size of the text of rulers and guides be affected by the font size 2024-07-15 00:31:52 +03:00
Emmanouil Papadeas
bcbd0ea7da Fix crash when the theme has no default font, by using Godot's fallback font instead 2024-07-14 16:08:18 +03:00
Emmanouil Papadeas
b4e54afa76 Fix bug where the exported files had the wrong tag name, if "Include frame tags in the file name" is enabled 2024-07-14 00:15:03 +03:00
Emmanouil Papadeas
f4f0e4047e Fix gradient map layer effect being purple when it's first created 2024-07-12 14:45:24 +03:00
Emmanouil Papadeas
e0a6727223 If the OS is sandboxed, set Global.use_native_file_dialogs to true and remove the option entirely from the Preferences 2024-07-03 20:53:01 +03:00
Emmanouil Papadeas
0601a4481a Make Voxelorama work 2024-07-01 17:22:32 +03:00
Emmanouil Papadeas
bc26557219 Remove Renderer from the Preferences
Not currently needed, as it's not possible to change between OpenGL and Vulkan drivers. We could implement this is https://github.com/godotengine/godot/issues/80565 is fixed.
2024-06-14 17:00:26 +03:00
Emmanouil Papadeas
f3823ef6dd Replace strings with StringNames in initialize_keychain() 2024-06-11 00:15:36 +03:00
Anaminus
f69e2d06eb
Implement Columns field of imported .gpl palettes. (#1025)
* Implement Columns field of imported .gpl palettes.

- Fixes Columns field being ignored when imported.
- _fill_imported_palette_with_colors is modified to accept an optional
   width parameter, which defaults to Palette.DEFAULT_WIDTH instead of
   a hard-coded 8.
- A maximum of width of 16384 is enforced to mitigate maliciously large
  values.

* Run gdformat.

* Run gdlint.

* Consume all whitespace between field and value.
2024-06-09 14:19:06 +03:00
Emmanouil Papadeas
556fc4b467 Remove unused "manage_frame_tags" shortcut 2024-06-04 00:41:27 +03:00
Emmanouil Papadeas
debbbf34d1 Try to fix Pixelorama's locale not loading when the OS locale is not set to English 2024-06-03 15:23:33 +03:00
Emmanouil Papadeas
1c3780c94c Change the locale by finding the nearest loaded locale instead of looking for a hard match
Should fix issues where the OS was returning, for example, "fr" for the system locale, and it was not mapped to "fr_FR".
2024-06-01 23:21:23 +03:00
Emmanouil Papadeas
fecb9b5803 Fix changing the tablet driver on Windows
Plus, it should also no longer require a restart
2024-06-01 23:13:50 +03:00
Emmanouil Papadeas
260c906d92 Update docstring of ExtensionsAPI's add_export_option() method 2024-06-01 13:01:30 +03:00
Emmanouil Papadeas
e1a53ed905 Fix alpha lock having the same shortcut as pixel perfect 2024-06-01 00:49:01 +03:00
Emmanouil Papadeas
d8a17abd1d Use the default Godot 4 version property in project.godot
The custom one we used was because Godot 3 has no version property, but this is no longer the case.
2024-05-31 16:01:36 +03:00
Emmanouil Papadeas
d070f8c5f5 Put the effects menu shortcuts under an "Effects" group 2024-05-27 15:32:01 +03:00
Emmanouil Papadeas
8c5aba0083 Implement dragging and dropping images directly from the browser to download them and import them 2024-05-25 15:02:13 +03:00
Variable
601c25f2dd
Curve tool implementation (#1019)
* curve tool

* formatting

* formatting

* saving my progress

* update to kirita mode

* Formatting

* fixes for mirror mode

* added way to remove point, added tool shortcut

* Add translation strings

* Use Curve2D instead of a control_points array

---------

Co-authored-by: Emmanouil Papadeas <35376950+OverloadedOrama@users.noreply.github.com>
2024-05-20 03:46:40 +03:00
Emmanouil Papadeas
a8440b80cc Rename config file from cache.ini to config.ini 2024-05-16 00:07:38 +03:00
Emmanouil Papadeas
aa47a47b3c Make patterns not be copied on the main directory - Fixes #1010 2024-05-01 03:04:02 +03:00
Ivan Kruger
8e9ba696f1
Make default palettes available for clean installs on MacOS (#1008)
* resolved issue where pixelorama_data folder is to registered on MacOS builds

* Reverted changes to workflows and added Mac Resource directory to search path for palettes

* format Global.gd with gdtoolkit
2024-04-30 14:21:19 +03:00
Emmanouil Papadeas
85d73bdb5d Allow extensions to create new palettes 2024-04-19 18:50:27 +03:00
Emmanouil Papadeas
0d375631b8 Better static typing in the timeline related methods in Project 2024-04-14 00:57:53 +03:00
Emmanouil Papadeas
92e8666da2 Change layers with Control + Up/Down arrow keys
We already have Control + Left/Right for changing frames, so it makes sense to have Up/Down for layers
2024-04-10 16:58:04 +03:00
Emmanouil Papadeas
1c9c8bf4e3 Add Palettize and Pixelize effects
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.
2024-04-10 01:20:28 +03:00
Emmanouil Papadeas
8f395b2be7 Create a new Effects menu and move all of the cel-specific effects there, away from the Image menu
Also moves Project properties into Image
2024-04-09 01:52:12 +03:00
Emmanouil Papadeas
785701b093 Add an option to export a JSON file with the project data
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.
2024-04-06 03:30:50 +03:00
Emmanouil Papadeas
971fb67db1 When running in headless mode, don't set a custom cursor and don't save window data on exit 2024-04-05 20:36:03 +03:00
Emmanouil Papadeas
1062f88e4c Automatically load an image as a new project, when there is only one empty project
This is also useful for the CLI
2024-04-05 20:16:54 +03:00
Emmanouil Papadeas
0ac7789bf9 Store image data in undo/redo of the move tool, reverts 4f5f37a522
This fixes an issue where, if the user moves pixels outside the canvas and then undos, those cut pixels will not be restored.
2024-04-05 18:02:46 +03:00
Emmanouil Papadeas
596c174c92 Add a project properties dialog
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.
2024-04-05 02:24:47 +03:00
Emmanouil Papadeas
af01234470 Implement a basic CLI
Supports exporting images & spritesheets with frame, direction, scale and output file name specification. Also added some informative arguments that simply print out some data.
2024-04-02 00:36:33 +03:00
Emmanouil Papadeas
183bee6a0f Load preferences from the config file before waiting for process_frame 2024-04-02 00:02:20 +03:00
Emmanouil Papadeas
53e4ebc668 Fix spritesheet exporting from bug introduced in 6fa4a27589 2024-04-01 23:50:50 +03:00
Emmanouil Papadeas
ea8748ca55 Use a dictionary in Export to group FileFormat enums and their respective file extensions and descriptions 2024-04-01 23:16:12 +03:00
Emmanouil Papadeas
473dabf004 Replace "{name}" with the project name when exporting 2024-04-01 21:45:39 +03:00
Emmanouil Papadeas
bf14ac1565 Add an ExportFrames enum in Export to make code clearer 2024-04-01 21:45:11 +03:00
Emmanouil Papadeas
1d262c62f7 Don't include the ".pxo" extension in the project's name, when opening or saving 2024-04-01 20:11:27 +03:00
Emmanouil Papadeas
6fa4a27589 Directly export the final blended images from the pxo, if they exist
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.
2024-04-01 19:39:10 +03:00
Emmanouil Papadeas
77bea9a6e3 Re-add old layer blending logic from 0.x, if running on headless mode
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.
2024-04-01 17:31:10 +03:00
Emmanouil Papadeas
1cb4d22233 Fix the same frames being exported multiple times when "Selected frames" is selected, and multiple cels of the same frames are currently selected on the timeline - Fixes #1001 2024-03-31 00:55:55 +02:00
Emmanouil Papadeas
11a1428eef Add an Apply button to the font size slider in the Preferences, fix display scale not being applied on startup 2024-03-30 01:25:01 +02:00
Emmanouil Papadeas
94fdfd8f02 Hide and show dynamics properties when dynamics are enabled 2024-03-24 15:35:40 +02:00
Emmanouil Papadeas
b620cf2a9e Lazy load the preferences dialog
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!
2024-03-24 02:46:57 +02:00
Emmanouil Papadeas
8c9a01feae Move theme handling code in a new Themes autoload
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.
2024-03-24 02:08:54 +02:00
Emmanouil Papadeas
11fb2c2b65 Move language handling code in Global, remove HandleLanguages.gd
This makes it possible to handle language without having the preferences dialog be in the middle.
2024-03-24 01:41:19 +02:00
Emmanouil Papadeas
f3ca6d1c33 Separate extension handling code from the Preferences UI
The preferences code only handles the UI related stuff, while HandleExtensions is now solely responsible for extension enabling, loading and uninstalling. This makes it possible to handle extensions without having the preferences dialog be in the middle.
2024-03-24 01:20:51 +02:00