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

81 commits

Author SHA1 Message Date
Emmanouil Papadeas
dd8bf5cc1b Release v1.0.5 2024-11-18 17:53:53 +02:00
Emmanouil Papadeas
0d6b140dea Add border selection, fix some missing translation strings 2024-11-15 01:41:44 +02:00
Emmanouil Papadeas
dec698024c Implement selection expanding and shrinking via the Select menu 2024-11-14 17:59:53 +02:00
Emmanouil Papadeas
d2892358e3 Add a set_display_scale() method to Main to avoid duplicate code 2024-11-04 18:47:29 +02:00
Emmanouil Papadeas
6863adf957 Implement support for mouse buttons to be used as menu shortcuts - fixes #1070
Also maps the mouse thumb button 1 to undo, and the mouse thumb button 2 to redo.
2024-10-30 14:25:34 +02:00
Emmanouil Papadeas
6c31708e35 Release v1.0.4 2024-10-25 15:48:59 +03:00
Emmanouil Papadeas
120bd9a7df Use American English spelling for "Center Canvas" to make it more consistent with the rest of the application 2024-10-17 13:46:18 +03:00
Variable
d894e9db86
Added Centre Canvas Option (#1123)
* add a centre frame option

* moved code to view menu

* restore left over stuff

* fix typo
2024-10-16 16:30:30 +03:00
Emmanouil Papadeas
dcd93b4366 Remove Global.open_sprites_dialog and Global.save_sprites_dialog. 2024-10-11 17:12:55 +03:00
Emmanouil Papadeas
dddcfed3c4 Add a new "CanvasRulers" node group for the canvas rulers 2024-10-11 16:31:18 +03:00
Emmanouil Papadeas
52e45b158b Release v1.0.3 2024-09-13 17:02:35 +03:00
Emmanouil Papadeas
321102e8fe Add Gaussian Blur as an image effect 2024-09-08 03:13:55 +03:00
Variable
4a7f7cbde5
Added a way to modify shader textures (#1096)
* experimental support for texture changes

* fix some typos

* formatting + some improvements

* Some final touches, i think it's ready now

* moved a function to the shaderloader

* formatting

* add a void
2024-09-03 03:38:56 +03:00
Emmanouil Papadeas
d70ddd72db Release v1.0.2 2024-08-21 16:11:38 +03:00
Emmanouil Papadeas
19e4c94fe3 Add a resized signal to Project, remove the Global.tile_mode_offset_dialog variable
Continue to slowly remove nodes from `Global`.
2024-08-10 22:47:06 +03:00
Emmanouil Papadeas
e83d560741 Release v1.0.1 2024-08-05 22:16:25 +03:00
Emmanouil Papadeas
699c9cda87 Fix the name of the new image effect 2024-08-05 13:18:12 +03:00
Emmanouil Papadeas
0ea0406233 Add an adjust brightness/contrast image effect
Thanks to https://godotshaders.com/shader/color-manipulator/

The shader has more options than just brightness and contrast though, but I didn't know how else to name the effect. "Adjust Brightness/Contrast" makes it immediately obvious as to what the effect is about.
2024-08-01 21:21:45 +03:00
Emmanouil Papadeas
94abe80295 Update changelog url 2024-07-27 13:20:18 +03:00
nicejammer
9196995697
Fix certain strings not updating when language changes (#1043)
A few buttons and labels in Pixelorama weren't getting updated when changing languages, they'd just remain at the language the program started up with or only update when changing projects.

This fixes that and ensures they get updated as soon as the user changes languages.
2024-07-26 16:10:56 +03:00
Emmanouil Papadeas
f84f15b8ae Experiment with Steam achievements, using a new SteamManager class
This has no effect on non-Steam builds. Steam achievements are mostly for fun, but can also be educational because they can let users know of certain features and functionalities. It's using the GodotSteam GDExtension, but because I do not want to bloat the GitHub repository with things that are not needed for most builds, I decided not to include the GDExtension files, and instead check if the `Steam` class exists in `ClassDB`. The new SteamManager class pretty much does nothing on non-Steam builds, so do not worry about bloat.

In the future we could even take advantage of more of Steam's features, such as Cloud storage for pxo files.
2024-07-22 03:11:29 +03:00
Emmanouil Papadeas
774786ab44 Remove unused variables 2024-07-21 21:17:18 +03:00
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
0601a4481a Make Voxelorama work 2024-07-01 17:22:32 +03:00
Emmanouil Papadeas
d73ab82e04 Remember display layer effects and snap settings between sessions 2024-06-15 15:58:10 +03:00
Emmanouil Papadeas
0b96e3aa6f Make zoom slider slightly bigger to prevent the percentage from overlapping with the buttons 2024-06-03 19:15:58 +03:00
Emmanouil Papadeas
cabe6234b1 Set the menu's MarginContainer horizontal grow direction to right 2024-05-07 00:41:51 +03:00
Emmanouil Papadeas
645e09701e Add snap step to the zoom and rotation canvas sliders 2024-05-05 18:13:50 +03:00
Emmanouil Papadeas
4e8a02c1a4 Fix issue with the TopMenuContainer where menu options weren't clickable in some languages 2024-04-10 16:42:23 +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
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
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
6d2d09d222 More static typing improvements 2024-03-23 04:36:26 +02:00
Emmanouil Papadeas
acce1dda2e Move even more code away from Project.change_project()
Making Pixelorama more modular by relying more on signals
2024-03-23 02:12:28 +02:00
Emmanouil Papadeas
48145b7f61 Use signals to move some code away from Project.change_project()
WIP, more code can be moved
2024-03-22 21:05:00 +02:00
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
491d81f393 Minor config file section key re-organization 2024-03-21 01:51:19 +02:00
Emmanouil Papadeas
c45ac70d2b Lazy load the splash dialog 2024-03-20 20:20:47 +02:00
Emmanouil Papadeas
66ea1fcfe9 Update the DockableContainer plugin 2024-02-18 19:47:21 +02:00
Emmanouil Papadeas
8d8a147142 Lazy load the window opacity dialog 2024-02-11 16:20:04 +02:00
Emmanouil Papadeas
c4a4bd4602 Implement lazy loading for some dialogs to make the initial loading of Pixelorama faster
Only load dialogs when they are needed and not at the start of the program. Right now only the new image, about, manage layouts and image effects dialogs are being loaded on demand, but more dialogs can be handled this way in future commits.
2024-02-11 16:01:59 +02:00
Emmanouil Papadeas
8448dbd4ba Various theme improvements 2024-02-10 15:11:53 +02:00
Emmanouil Papadeas
4c39e29b67 Fix UI not staying dimmed after opening a native file dialog 2024-02-03 13:55:17 +02:00
Emmanouil Papadeas
534a7fd356 Change the selected UI layout every time it changes
This way, Pixelorama remembers the changes users make to the UI, without them having to go to Window, Manage Layouts and clicking on Edit, which was an unintuitive and slow way. Needs testing because bugs may linger.

This commit also adds a new `save_on_change` variable and a `save` method on layout.gd of the dockable_container plugin. Perhaps I should also add this upstream as well.

I also need to add a way to create new layouts based off the default ones (which are permanently stored within Pixelorama's pck file and cannot be modified), so users will always have the option to resort to the default layouts.
2024-02-02 02:31:29 +02:00
Emmanouil Papadeas
da0066259e [WIP] Copy default layouts to the layout directory so they can be modified
Moved some logic away from TopMenuContainer to Main.gd and the layout array to Global.gd.
2024-02-02 01:42:29 +02:00
Emmanouil Papadeas
ed072de84e Change the layouts array in TopMenuContainer to only contain DockableLayouts instead of being an array of arrays 2024-02-01 22:10:18 +02:00
Emmanouil Papadeas
606ce965f6 Remove unneeded layout code from TopMenuContainer 2024-02-01 21:41:32 +02:00
Emmanouil Papadeas
276a872f73 Rename "ui" variable to "main_ui" in Main.gd and TopMenuContainer.gd 2024-02-01 20:53:52 +02:00
Emmanouil Papadeas
d9c0cd7546 Remove Global.can_draw conditions from TopMenuContainer
These were needed with Godot 3 to ensure that you couldn't open any other dialog when a dialog is already open, by using keyboard shortcuts. This no longer seems to be required in Godot 4.
2024-01-24 02:37:28 +02:00