Emmanouil Papadeas
46b0b124f4
I forgot to include Export.gd in the previous commit
...
Oops
2024-09-01 03:25:26 +03:00
Emmanouil Papadeas
69ce932f1c
Add a quality slider to the export dialog when exporting jpeg files
2024-09-01 02:49:13 +03:00
alikin12
1460ba2e89
Set timeline layer and frame header to be fixed on top ( #1095 )
2024-09-01 02:30:36 +03:00
Variable
a7f1486ec3
Index Map ( #1093 )
...
* Index Map
* Formatting
* improve description a bit.
2024-08-31 02:53:27 +03:00
Donte
4fa8981590
Add onion skinning opacity adjustment ( #1091 )
...
Co-authored-by: Emmanouil Papadeas <35376950+OverloadedOrama@users.noreply.github.com>
2024-08-30 22:58:28 +03:00
Vaibhav Kubre
613dd5d7f6
feat: Added option to trim sprites empty area while exporting ( #1088 )
...
* feat: Added trim sprite option works like charm
* fix: format issue
* ran working gdformat
2024-08-29 19:07:48 +03:00
Emmanouil Papadeas
702197c639
Fix issue where the '\n` escape character got inserted inside the palette name, causing it to fail to be saved
2024-08-28 18:17:30 +03:00
Emmanouil Papadeas
ab6c54ecb1
If a palette fails to save, show an error popup with an error code and message
...
Instead of just a notification, which can easily be missed and it doesn't explain the cause of the error
2024-08-28 17:40:48 +03:00
alikin12
987366fa8f
Add global layer buttons ( #1085 )
2024-08-28 02:53:05 +03:00
Emmanouil Papadeas
d70ddd72db
Release v1.0.2
2024-08-21 16:11:38 +03:00
Emmanouil Papadeas
9be3ba290c
Update AboutDialog.gd
2024-08-21 14:30:47 +03:00
Emmanouil Papadeas
bdef545727
Fix issue when merging two layers, where if the bottom layer had layer/cel transparency, the transparency would be applied in the content destructively
2024-08-17 02:38:27 +03:00
Emmanouil Papadeas
29f9601d8a
Revert "Fix cursor blinking at the edge of canvas ( #1075 )"
...
This reverts commit 77f6860f7a
.
2024-08-17 00:59:48 +03:00
Emmanouil Papadeas
410f06435c
Fix issue where color sliders wouldn't be visible during startup, if the color options button was expanded
2024-08-16 19:29:32 +03:00
Emmanouil Papadeas
d531e9ace8
Create a new ShaderLoader class to move some code away from Global
2024-08-16 18:43:25 +03:00
Emmanouil Papadeas
c58ce49ec1
Fix typo
2024-08-16 14:29:02 +03:00
Emmanouil Papadeas
b0aabe4e8a
Add a preference to change max undo steps
2024-08-16 14:28:54 +03:00
Emmanouil Papadeas
19574bca7d
Implement the ability to save with blended images with native file dialogs
...
Fixes #1058
2024-08-16 13:59:14 +03:00
Emmanouil Papadeas
c1fb706a33
Remove unnecessary variable from change_layer_automaticaly()
2024-08-16 13:57:51 +03:00
Emmanouil Papadeas
cfbe851da5
Add a convolution matrix layer effect
...
Still WIP, could use some extra parameters such as RGBA channel, and I should also implement it as an image effect.
2024-08-16 04:24:43 +03:00
Emmanouil Papadeas
2e3f0a2696
Add <kbd>Control+Shift+Alt</kbd> as a shortcut that automatically selects a layer directly from the canvas when using tools
2024-08-15 20:16:43 +03:00
Emmanouil Papadeas
077c57c53a
Implement support for group layer blending ( #1077 )
...
* Blend group layers on `DrawingAlgos.blend_layers()`
* Support group layer blending on the canvas
* Allow editing of group layer properties
* Fix issues with group layer blending in canvas, and unite common code
* Group layers can now be used as clipping masks
* Make move tool preview work on child layers
* Change OffsetImage's `blend_layers()` to support group layer blending
* Support group layer blending in the canvas preview
* Fix layer blending mode, clipping mask opacity and cel opacity not being updated automatically if the layer/cel changed is not selected
* Add a pass through blending mode to layer groups
Fingers crossed that no bugs were introduced
* Fix issue with layers that belong to pass through groups not updating their textures on the canvas automatically on undo
2024-08-15 15:52:55 +03:00
alikin12
f6f40e03e5
Fix Orama-Interactive#958 (reset custom brush when switch another tool) ( #1078 )
2024-08-15 15:42:01 +03:00
Emmanouil Papadeas
04a5292672
Use exact match for the draw_color_picker
shortcut
2024-08-15 04:36:33 +03:00
Emmanouil Papadeas
1d5de2ed86
Implement the ability to move all selected cels on between different frames, but on the same layer
...
You currently cannot move multiple cels on different layers, they still act as swapping. Eventually I'd also like to implement moving cels between different layers, but they would also have to be on the same frame. I don't think moving cels between different layers and frames at the same time is possible.
2024-08-13 23:25:29 +03:00
Emmanouil Papadeas
1a99d524d1
Fix some buttons not being affected by the custom icon color on startup
2024-08-13 04:23:56 +03:00
Emmanouil Papadeas
8163015c02
Change blend modes of multiple selected layers from the timeline
...
And also add undo/redo when changing the blend mode from the layer properties dialog. Not sure why I had made their behaviors so inconsistent.
2024-08-13 00:53:37 +03:00
Hamster
77f6860f7a
Fix cursor blinking at the edge of canvas ( #1075 )
...
* fix: mouse blinking at the edge of painting canvas
* format: reformat src/UI/ViewportContainer.gd
* format: reformat according to gdlint
* refactor: removed unused code comments
2024-08-12 19:44:48 +03:00
Emmanouil Papadeas
15c186d8a1
Re-introduce #729 to fix an issue where the bucket tool filled with a slightly wrong color
...
We should probably keep this issue in mind though in case we find a better solution, but this seems to be working for now.
2024-08-12 16:36:20 +03:00
Emmanouil Papadeas
6e360505e3
Silence already connected signal errors in the tile mode offsets dialog
2024-08-12 02:36:45 +03:00
Emmanouil Papadeas
c4beee6f41
Fix crash when importing brushes and palettes
2024-08-12 02:34:51 +03:00
Emmanouil Papadeas
68be6ac106
Allow editing of non-pixel cel properties
2024-08-11 15:03:33 +03:00
Emmanouil Papadeas
3113459224
Fix #1074
2024-08-11 11:05:02 +03:00
Emmanouil Papadeas
9c170ee5a0
Fix group layer children blending not working with nested group layers and with layer effects
2024-08-11 01:38:18 +03:00
Emmanouil Papadeas
f3ee00a944
Fix crashes when attempting to export specific layers or tags that have been deleted
2024-08-11 01:00:10 +03:00
Emmanouil Papadeas
363c764fc1
Use the blend layers shader to blend the children of group layers
2024-08-11 00:51:31 +03:00
Emmanouil Papadeas
bdc1b5af11
Add a blend_layers_headless
method to DrawingAlgos
2024-08-11 00:35:16 +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
1678738d75
Add tolerance to the magic wand, rename "similarity" to "tolerance" in the select by color tool and make it work the inverse way
...
Continuation of b0a284583b
for the selection tools.
2024-08-10 18:43:04 +03:00
Emmanouil Papadeas
b0a284583b
Add tolerance to the bucket's "similar area" mode, rename "similarity" to "tolerance" and make it work the inverse way
...
A slightly breaking change for a minor update, but one that needed to be done. The bucket tool's "similarity" (now renamed to "tolerance") used to work the opposite way from all other software, the maximum value meant exact color match and 0 meant no color match. Now it works the inverse way to make it be consistent with other software, and the range is now 0-255 instead of 0-100. 0 means exact color match, 255 means no color match. And tolerance also now works for the "similar area" mode as well.
2024-08-10 18:20:42 +03:00
kleonc
92d7bbf539
Fix isometric grid calculations using ints instead of floats ( #1069 )
2024-08-09 15:33:45 +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
f299cf1339
Update AboutDialog.gd
2024-08-05 13:13:16 +03:00
Emmanouil Papadeas
fbe2952346
Make shape previews look like they did in v1.0
...
The AutoInvertColors shader has been updated to make shapes hollow, similar to how the marching ants outline works.
2024-08-04 22:12:57 +03:00
Emmanouil Papadeas
a3d7725a44
Fix popups appearing in wrong places when single window mode is disabled
2024-08-03 22:36:05 +03:00
Emmanouil Papadeas
95d96b9b00
Manually write lines in the override.cfg file instead of using ProjectSettings.save_custom()
2024-08-03 22:04:32 +03:00
Emmanouil Papadeas
17ad9eb8b5
Fix issue with popups being unclickable disabled single window mode
...
Should fix #1054
2024-08-03 21:27:39 +03:00
Emmanouil Papadeas
8c6bf08aef
[skip ci] Fix typo in ExtensionsAPI
2024-08-02 21:43:57 +03:00
Emmanouil Papadeas
b6583e4133
Fix two bugs with palettes, see description
...
1) `Palettes`'s `reindex_colors_on_width_increase()` was not changing the `index` of `PaletteColors`, thus resulting in the opened palette itself and the saved file having different indices, which could've caused conflicts with multiple colors sharing the same index, if the user re-arranged the palette after resizing it.
2) If the width was increased but the height increased, the positions of the colors remained the same, which resulted in the colors being in the columns that were removed, to be removed themselves. Now, the colors are taking advantage of the empty space, in order to remove as less as colors as possible. No colors will be removed if the width times the height is equal to or greater than it was before.
2024-08-02 21:32:53 +03:00
Emmanouil Papadeas
f7296efbc5
Enable exclusive and disable popup_window flags in the palette dialogs
2024-08-02 20:59:59 +03:00
Emmanouil Papadeas
c0c391674d
[skip ci] Change instances of "yield" to "await" in comments
2024-08-02 00:42:14 +03:00
Emmanouil Papadeas
1ad4c2357f
In the Canvas scene, make Previews and PreviewsSprite nodes share the same material
2024-08-02 00:03:45 +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
4d26a6dd55
Fix warnings in some shaders
2024-08-01 15:51:46 +03:00
Emmanouil Papadeas
68b4047e72
Enable exclusive and disable popup_window flags in some more dialogs
...
I forgot to include these changes in 95b5102394
2024-08-01 01:23:33 +03:00
Emmanouil Papadeas
6e41496ec9
[skip ci] Update translations
2024-08-01 00:24:25 +03:00
Emmanouil Papadeas
95b5102394
Enable exclusive and disable popup_window flags of all the dialogs
...
Closes #1061 , fixes issue where when Pixelorama's window loses focus, the dialogs disappeared, but the dialogs can no longer close when pressing outside of them.
2024-07-31 22:49:30 +03:00
Emmanouil Papadeas
8ba2b62921
Mirror the previews of the shape tools
...
Now they are consistent with the selection tools
2024-07-31 22:23:50 +03:00
Emmanouil Papadeas
8e90271a64
Disable show hidden files by default in the export dialog
...
Maybe that is what caused #1060 ?
2024-07-31 21:41:18 +03:00
Emmanouil Papadeas
3011d8469f
Mirror the preview of the elliptical selection tool
2024-07-31 21:29:05 +03:00
Emmanouil Papadeas
6c016697d9
Fix a crash when selecting an imported model in a 3D cel
2024-07-31 20:55:19 +03:00
Emmanouil Papadeas
af81154cbf
Fix a crash with Godot 4.3
2024-07-31 20:55:02 +03:00
Emmanouil Papadeas
7063af098f
Optimize the previews of the lasso, paint and polygon select tools
...
Continuation from the previous commit
2024-07-31 18:19:10 +03:00
Emmanouil Papadeas
9c7effdba3
Optimize previews of the ellipse selection and the shape tools
...
Before this commit, when these tools were being used on large areas, the software would start being very slow due to the polyline drawing. Now it simply draws an image.
TODO:
- Optimize the lasso, pixel and polygon select tools
- Mirror the previews of ellipse selection and shape tools, for consistency with the lasso, pixel and polygon select tools
- Perhaps somehow remove Previews.gd since its work is even more limited now.
2024-07-31 18:05:22 +03:00
Emmanouil Papadeas
cd269c9a4e
Slightly optimize line and curve tool drawing
2024-07-31 14:28:30 +03:00
Emmanouil Papadeas
df139ed645
Fix warnings in MarchingAntsOutline.gdshader
2024-07-31 05:06:18 +03:00
Emmanouil Papadeas
e686f114a8
Optimize Steam achievement requesting
2024-07-31 05:06:02 +03:00
Emmanouil Papadeas
fdc8c05f07
Optimize shape drawing
...
Shape previews also need to be optimized somehow, including some of the selection tool's previews
2024-07-31 03:52:30 +03:00
Emmanouil Papadeas
c2fc70e436
Fix bug when selecting multiple layers and their opacity changes immediately by the opacity slider
2024-07-30 21:25:15 +03:00
Emmanouil Papadeas
b2bdfbeb06
Fix a signal warning in import tag dialog
2024-07-30 20:27:15 +03:00
Variable
9ba556282a
Import Animation dialogue improvements ( #1041 )
...
* splash ambient
* change fill to radial
* make import tag work with frame button
* hide Import tag dialog when clicking outside
* Icon shows the first frame of a tag
* formatting
2024-07-30 20:22:22 +03:00
Emmanouil Papadeas
cdf50ce00d
Fix zoom tool mode doing the opposite of what it says
2024-07-30 19:43:19 +03:00
Variable
1d82bd95e5
Make clipping masks work with Move tool and offset image dialog ( #1057 )
...
* made clipping masks work with offset image dialog
* move tool now works with clipping masks
2024-07-30 19:29:55 +03:00
Kiisu_Master
f27d152cb3
Add setting for Godots low processor usage mode ( #1056 )
...
* Add setting for Godots low processor usage mode
* Update name and description of low processor usage mode setting in preferences
* Fix a tiny mistake
2024-07-30 19:02:10 +03:00
Emmanouil Papadeas
7d30aed62d
Fix some image effects resulting in wrong colors when the image has non-opaque pixels
2024-07-30 18:29:01 +03:00
nicejammer
ce6a48a020
Add missing translation strings and fix broken ones ( #1051 )
...
Added missing strings to Translations.pot and fixed a few ones that were broken either because of missing periods, differences in capitalization or because of trailing newlines (the latter seems to get automatically trimmed in tooltips during runtime)
2024-07-29 02:26:51 +03:00
Emmanouil Papadeas
52501cdca3
Fix errors with the bucket tool when it's outside of bounds
2024-07-28 17:05:47 +03:00
Emmanouil Papadeas
41e21cd9b0
[skip ci] Delete extension_repository.md
2024-07-28 02:29:48 +03:00
Variable
76ffe7bb41
add more info to references pannel ( #1049 )
2024-07-28 02:23:30 +03:00
Variable
7c2d237792
fix some things in ExtensionExplorer ( #1047 )
...
* fix some things
* treat any string as a comment (unless it starts with a link)
2024-07-27 17:52:37 +03:00
Emmanouil Papadeas
94abe80295
Update changelog url
2024-07-27 13:20:18 +03:00
Emmanouil Papadeas
5eaf81aeae
[skip ci] Add a Steam achievement for creating a 3D layer
2024-07-27 13:00:16 +03:00
Emmanouil Papadeas
40fb5894b0
Update AboutDialog.gd
2024-07-26 18:19:52 +03:00
Variable
50858be854
Add readme button to extensions (if they posess one) ( #1045 )
2024-07-26 17:00:21 +03:00
Variable
bd42a0cba6
added palette docs, allow more than one dimentional ValueSlider, add … ( #1044 )
...
* added palette docs, allow more than one dimentional ValueSlider, add more error messages
* split into 3 functions
2024-07-26 16:27:54 +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
40be1a9559
Some minor optimizations in BlendLayer.gdshader
2024-07-24 00:48:16 +03:00
Emmanouil Papadeas
96a1d2770d
Call Global.dialog_open()
on the tag properties popup
2024-07-23 22:27:29 +03:00
Emmanouil Papadeas
30dfb6aa58
Try to fix issue when certain languages are set to the OS system locale and some GUI elements are not being translated during startup
...
Only confirmed with Brazilian Portuguese at the moment
2024-07-23 19:34:49 +03:00
Emmanouil Papadeas
ab9a5aa0fd
Fix bug where the ValueSlider text color wasn't getting updated when its enabled parameter was toggled
2024-07-23 18:40:35 +03:00
Emmanouil Papadeas
785f0eccd4
Fix issue where the minimum size of the color shapes of the color picker panel gets reset when the theme changes
2024-07-23 18:31:24 +03:00
Emmanouil Papadeas
e485633cb9
Make the color picker panel have slightly less empty space on the bottom
2024-07-23 18:22:47 +03:00
Emmanouil Papadeas
899fa521eb
Fix crash when adding a new layer to a collapsed group layer
2024-07-23 17:58:19 +03:00
Emmanouil Papadeas
c6d24d458e
Replace some Vector2s with Vector2is
2024-07-23 13:51:02 +03:00
Variable
75bdc6d9be
Added some ambience to Splash backgrounds ( #1039 )
...
* splash ambient
* change fill to radial
2024-07-22 14:56:03 +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
d58da13493
Bump version to v1.0-rc1
2024-07-22 01:00:25 +03:00
Emmanouil Papadeas
d82a40f9f9
Remove Global.main_window
variable
2024-07-21 21:25:03 +03:00
Emmanouil Papadeas
774786ab44
Remove unused variables
2024-07-21 21:17:18 +03:00
Emmanouil Papadeas
b8af094529
Add the 1.0 splash screen artworks
2024-07-21 03:23:25 +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
6b23c51e12
Fix some typos
2024-07-19 19:41:31 +03:00
Emmanouil Papadeas
64ced35bac
Move the dynamics-related code into a new script
...
This also fixes the dynamics previews not working, as `_input()` is now handled locally in the dynamics popup panel.
2024-07-19 19:39:13 +03:00
Emmanouil Papadeas
506004b2a3
Fix checker background not appearing in the drop shadow dialog
2024-07-19 19:23:46 +03:00
Emmanouil Papadeas
b3133130ad
Include tag name even if we're exporting a single file
2024-07-19 17:24:58 +03:00
Variable
237eeef4d1
show extension info on hover ( #1037 )
...
* show extension info on hover
* formatting
2024-07-19 00:48:23 +03:00
Emmanouil Papadeas
4bc4ed1299
Change the extension repository link
2024-07-16 17:33:31 +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
5d06af39b2
Fix rulers being incorrect at the start
2024-07-14 16:02:16 +03:00
Emmanouil Papadeas
919d0117ca
Update AboutDialog.gd
2024-07-14 01:30:56 +03:00
Emmanouil Papadeas
3358d59f6f
Implement filling while moving the mouse in the bucket tool
...
Probably the last new feature for version 1.0
2024-07-14 00:15:38 +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
Variable
e1649a064e
Fixes to perspective editor ( #1034 )
...
* removed some redundant code
(not sure how it got there), made tracker toggle obey the variable
* Changed perspective editor from Control to PanelContainer to avoid some UI issues
2024-07-13 20:52:32 +03:00
Emmanouil Papadeas
b4384f4085
When using the canvas, release focus of other GUI elements of the application
2024-07-13 20:38:29 +03:00
Emmanouil Papadeas
d685177918
Restore diagonal movement of selections with arrow keys
2024-07-13 20:38:04 +03:00
Emmanouil Papadeas
d50ae3b00e
Fix canvas no longer remaining in the drag state even when the mouse is outside of it
2024-07-12 14:49:11 +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
fae89ed2a1
Increase the slider bounds of the crop tool and the scale slider max value of the 3DShapeEdit tool
2024-07-12 12:53:37 +03:00
Emmanouil Papadeas
547f307b53
Fix crash on Godot 4.3 when the mouse is inside the window when Pixelorama is starting
2024-07-09 15:04:16 +03:00
Emmanouil Papadeas
158e0fa18b
Validate the extension file SHA-256 hash when downloading for security purposes
...
This is just an added step for security. Now, if an extension file gets compromised, Pixelorama can detect the mismatch between the file's SHA256 and the SHA256 from the extension repository, and refuse to install the extension.
For example, someone with malicious intent could gain access in the repository where the extension file is hosted, and replace it with a different file. Before this commit, the malicious file would be downloaded normally, but now, since the file will change, so will its SHA-256 hash, so Pixelorama will be able detect the mismatch and recognize that it is potentially malicious.
2024-07-07 18:29:10 +03:00
Emmanouil Papadeas
b04c502470
Fix bug in import preview dialog of the apply all button being unpressed when the import options change
...
Most likely caused by #957 . The line `setup_smart_slice(false)` was caused the bug, hopefully I'm not breaking anything by removing it.
2024-07-07 16:26:23 +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
dd6332b75a
[skip ci] Fix Voxelorama link
2024-07-01 18:03:40 +03:00
Emmanouil Papadeas
6601f83332
Rename store_info.md to extension_repository.md, add Voxelorama and remove other store links
...
The reason for removing the other store link is because I am worried that adding more links by default, can make it easier to compromise security. Extensions can be dangerous, and even if one link gets injected by malware, users are in danger, so I think it's better to keep the extensions is one, centralized place. I included all of the extensions listed in Variable's store link in this file.
I also renamed it from store to repository, as I think it's a more fitting name.
2024-07-01 17:49:59 +03:00
Emmanouil Papadeas
0601a4481a
Make Voxelorama work
2024-07-01 17:22:32 +03:00
Emmanouil Papadeas
896d714a9e
Make "similar colors" mode in the Bucket tool change the same color in all selected cels
2024-06-30 13:27:15 +03:00
Emmanouil Papadeas
7a13e4c3eb
Refactor SplashDialog.gd to make a class for the artworks, update the version text in the splash screen
2024-06-29 20:41:56 +03:00
Emmanouil Papadeas
b146c88a5e
Fix shape tools indicator being reset after drawing
2024-06-27 01:25:17 +03:00
Emmanouil Papadeas
d73ab82e04
Remember display layer effects and snap settings between sessions
2024-06-15 15:58:10 +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
fc10d600a5
Remove Crop tool's apply button shortcut
...
The issue is that by default it's mapped to Enter, which is also used to confirm editing of a slider. If we want to keep the shortcut, we need to check if something else does not have focus first.
2024-06-14 16:33:52 +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
8ec5653d67
Make the backup confirmation dialog slightly bigger
2024-06-08 23:29:05 +03:00
Emmanouil Papadeas
f79ae7e333
Fix canvas not updating when switching between projects that have the same size and amount of cels
...
Also fixes issue with tile mode not being updated properly when switching project
2024-06-07 14:49:08 +03:00
Emmanouil Papadeas
1a0f82753e
Actually fix pixel perfect and alpha lock buttons having different shortcuts
2024-06-04 00:41:42 +03:00
Emmanouil Papadeas
556fc4b467
Remove unused "manage_frame_tags" shortcut
2024-06-04 00:41:27 +03:00
Emmanouil Papadeas
aa2a2bdce8
Immediately disable the delete layer button when locking a layer
2024-06-03 20:41:48 +03:00
Emmanouil Papadeas
14e73ae33b
Fix palette swatch white border being shown on non-selected swatches, if the user has scrolled down
2024-06-03 20:36:39 +03:00
Emmanouil Papadeas
8c073dbe63
Fix the palette swatch white border not being shown when selecting a color that exists in the active palette
2024-06-03 19:18:25 +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
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
429d3469fd
Fix issue with layers on the timeline having the wrong size on Greek
2024-06-01 18:29:38 +03:00
Emmanouil Papadeas
26da9070f8
Make the create new image a bit taller
2024-06-01 18:28:16 +03:00
Emmanouil Papadeas
770e04c550
Fix issue where Pixelorama was quitting on save, if the user attempted to save on exit before and cancelled the save file dialog
...
And replace instances of `Global.save_sprites_dialog` with a local `save_sprite_dialog` variable
2024-06-01 17:56:50 +03:00
Emmanouil Papadeas
b7a77a2ceb
Clear polygon select tool when switching projects
2024-06-01 16:03:39 +03:00
Emmanouil Papadeas
006be19464
Switch Square and Circle patterns in the outline effect
...
Not sure how they got out of order in the first place, they were fine in v0.11.4
2024-06-01 13:09:55 +03:00
Emmanouil Papadeas
260c906d92
Update docstring of ExtensionsAPI's add_export_option()
method
2024-06-01 13:01:30 +03:00
Emmanouil Papadeas
2afb087b7a
When switching projects and the curve tool is active, clear it
...
Instead of applying it. This also fixes a crash when the curve tool is active and the current project closes
2024-06-01 12:59:22 +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
6c8e058164
Fix recorder mode button do the opposite from what it suggests
2024-05-31 14:40:05 +03:00
Emmanouil Papadeas
10d3eac253
Add a confirmation dialog to confirm whether a user wants to enable an extension
...
For security purposes. Extensions can be dangerous, the user must know what they are doing. Better safe than sorry.
2024-05-29 03:27:54 +03:00
Kiisu_Master
2613e02cd2
Fix ruler text not getting clipped ( #1023 )
2024-05-28 00:38:35 +03:00
Emmanouil Papadeas
d070f8c5f5
Put the effects menu shortcuts under an "Effects" group
2024-05-27 15:32:01 +03:00
Emmanouil Papadeas
b9c289e742
[Curve tool] Don't draw a circle when hovering over the first point, if there is only one point in the curve
2024-05-26 14:27:02 +03:00
Emmanouil Papadeas
7b17262c85
Show a confirmation dialog when attempting to drag and drop an image from a browser, for security purposes
2024-05-25 16:16:32 +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
Emmanouil Papadeas
b25ae8b4cc
Fix curve being immediately applied if the user presses and releases immediately
2024-05-25 00:42:34 +03:00
Emmanouil Papadeas
72a2c59986
Fix codespell errors
2024-05-25 00:41:57 +03:00
Emmanouil Papadeas
dc94f76d6a
Update the ratio of the AspectRatioContainer in the Import Preview dialog, plus some code cleaning
2024-05-23 01:29:16 +03:00
Emmanouil Papadeas
0a38345376
[Curve tool] Only control the out control point when holding Shift
...
Needed to make curves with sharp edges. Inspired by Krita's Bezier curve tool
2024-05-21 19:37:47 +03:00
Emmanouil Papadeas
e5d0a661f7
Properly fix polygon select tool circle radius not scaling properly with zoom
...
For real this time
2024-05-21 03:01:23 +03:00
Emmanouil Papadeas
3f8799f25a
When hovering above the first position when using the curve tool, apply the curve shape
2024-05-21 02:59:37 +03:00
Emmanouil Papadeas
318b381938
Add a fill shape checkbox in the curve tool options
...
Now the curve tool can also be used as a polygon tool
2024-05-21 02:28:40 +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
fe4fc8b0a2
[skip ci] Set a default name for the CollapsibleContainers, if they have none
...
Mostly useful for debugging CollapsibleContainers made with code
2024-05-19 23:35:27 +03:00
Emmanouil Papadeas
0fc60168e8
Fix polygon select tool circle radius not scaling properly with zoom
2024-05-18 15:01:21 +03:00
Emmanouil Papadeas
7cc820fcf4
Change the accent color of the dark theme to a lighter gray
2024-05-17 02:11:17 +03:00
Emmanouil Papadeas
a8440b80cc
Rename config file from cache.ini to config.ini
2024-05-16 00:07:38 +03:00
Emmanouil Papadeas
3a4517abf4
[skip ci] Update the Lospec Palette Importer extension version
2024-05-13 19:32:31 +03:00
Emmanouil Papadeas
0fb89bf888
[skip ci] Minor static typing and docstring improvements
2024-05-11 17:02:33 +03:00
Emmanouil Papadeas
6b1329ff1f
Set color picker's expand button focus mode to none
2024-05-09 02:45:48 +03:00
Emmanouil Papadeas
4ec7259c63
Optimize non-shader rotation by clearing non-selected pixels with masking
2024-05-09 01:36:11 +03:00
Emmanouil Papadeas
e15b207993
Pass a transformation matrix in CommonRotation shaders instead of an angle
...
This will allow us to implement shearing more easily. Also, for the non-SmearRotxel shaders, normalize their pivot in GDScript, before passing it to the script. Should probably be faster this way
2024-05-09 00:44:52 +03:00
Emmanouil Papadeas
25f7192573
Pass angles in radians in SmearRotxel
...
Should be a slight optimization, since angles are being converted to radians only once, and that calculation is done in the CPU
2024-05-08 23:31:03 +03:00
Emmanouil Papadeas
fe54f943e9
Change the color picker panel's expand button to be bigger and have text
2024-05-08 16:32:51 +03:00
Emmanouil Papadeas
a2539c34f8
Add a minimum size to the Color Picker panel
2024-05-08 15:46:08 +03:00
Emmanouil Papadeas
e3ee931059
Move and resize tags by dragging their edges
2024-05-08 03:44:26 +03:00
Emmanouil Papadeas
5a64dde3e5
Remove frame tag button & make onion skinning settings into general timeline settings
...
The "Animation plays only on frames of the same tag" button has been moved to the general timeline settings, along with a new slider that resizes the cel buttons in the timeline.
2024-05-08 01:09:20 +03:00
Emmanouil Papadeas
ecb1890024
Change AnimationTagUI to be a Control instead of a VBoxContainer
2024-05-07 23:20:15 +03:00
Emmanouil Papadeas
592260ef93
Minor tag code improvements
2024-05-07 17:38:45 +03:00
Emmanouil Papadeas
e60ec8528b
Fix issue with the export dialog closing when the path dialog closes and native file dialogs are enabled
2024-05-07 01:27:51 +03:00
Emmanouil Papadeas
7b7da476b6
Various small translation-related fixes
2024-05-07 01:09:26 +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
002d5cae86
Add a "New Tag" option in the frame menu to easily create new tags
2024-05-06 20:50:12 +03:00
Emmanouil Papadeas
c6e9b1621d
Implement the ability to edit a tag by clicking on it from the timeline
...
Editing tags now is faster! Just click on it from the timeline to bring out the edit dialog.
2024-05-06 20:29:37 +03:00
Emmanouil Papadeas
02f85ade06
Make TagOptions its own scene
2024-05-06 20:13:09 +03:00
Emmanouil Papadeas
d8704fdf5d
Change tag color, text and size in AnimationTagUI.gd
2024-05-06 16:30:10 +03:00
Emmanouil Papadeas
8414f3deaf
Fix integer camera zoom going smaller than 100%
2024-05-05 18:14:17 +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
d734ae24a5
Allow negative values in shading as requested in #1015
2024-05-04 15:08:21 +03:00
Emmanouil Papadeas
b1857fea7c
Update names of donors, contributors & translators
2024-05-01 15:52:02 +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
489344866b
Hide some preferences in non-desktop versions
...
Properties such as FFMPEG, native file dialog & single window don't make sense to exist in Web & potentially mobile platforms.
2024-04-30 01:57:20 +03:00
OverloadedOrama
05d08c661f
Enable aspect ratio in scale image dialog by default
2024-04-25 19:44:11 +03:00
Emmanouil Papadeas
324fdc9fc8
Hide Split Layers checkbox on the Export dialog when the Spritesheet tab is selected
...
Spritesheet exporting does not currently support layer splitting
2024-04-22 17:15:25 +03:00
Emmanouil Papadeas
074fed10bf
[skip ci] Fix typos and replace tabs with a single space in store_info.md
2024-04-21 15:04:37 +03:00
Emmanouil Papadeas
1d89064efb
[skip ci] Fix wrong tag in store_info.md
2024-04-20 20:02:21 +03:00
Emmanouil Papadeas
b3ef4f1ff3
Add OpenDyslexicFont to the Extensions explorer
2024-04-20 19:57:15 +03:00
Emmanouil Papadeas
d75c2be6c5
[skip ci] Update store_info.md
2024-04-19 21:06:16 +03:00
Emmanouil Papadeas
d0c58e249a
Add LospecPaletteImporter extension in store_info.md
2024-04-19 21:00:58 +03:00
Emmanouil Papadeas
85d73bdb5d
Allow extensions to create new palettes
2024-04-19 18:50:27 +03:00
Emmanouil Papadeas
9fa9c01a93
Fix extensions not being listed in the Preferences
2024-04-19 16:08:13 +03:00
Emmanouil Papadeas
6c002756c7
Move all selected layers with drag & drop
...
Similar to 7507206726
but for layers. Layer swapping (with control) only works when one layer is selected. The move up/down buttons in the timeline only work with one layer as of this commit.
2024-04-15 02:10:52 +03:00
Emmanouil Papadeas
4ddcf37d0b
Fix crash when dropping frames to re-arrange them
...
Also don't allow dropping on a selected frame
2024-04-14 16:03:22 +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
dc6efe02bb
Fix issue where shader-based effects were not respecting the selection bounds, when the selection was out of the canvas
2024-04-13 19:51:12 +03:00
Emmanouil Papadeas
c3bb85f6c9
Fix dimension label showing fractions in the final image size in the Export dialog
2024-04-13 19:15:37 +03:00
Emmanouil Papadeas
9a1464f73b
Move selection offset code inside SelectionMap.is_pixel_selected()
2024-04-13 17:57:51 +03:00
Emmanouil Papadeas
9184b25c01
Fix Lasso Vector2 appending to array of type Vector2i error
2024-04-13 15:39:42 +03:00
Emmanouil Papadeas
1e83173697
Fix regression where interecting selections was not working
2024-04-13 15:34:36 +03:00
Emmanouil Papadeas
79b18fc242
Fix brushes being able to get drawn outside of the selection, if the selection is outside the canvas
2024-04-13 14:31:48 +03:00
Emmanouil Papadeas
edf7b1f5e5
Set the selection texture's filter to nearest in shaders
2024-04-12 01:26:46 +03:00
Emmanouil Papadeas
7507206726
Move all selected frames - implements #743
...
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.
2024-04-11 18:03:43 +03:00
Emmanouil Papadeas
529962f91f
Layer effect UI improvements & implement dragging to re-arrange
2024-04-11 00:31:50 +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
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
64b2b7b9af
Make 3D rotation gizmos lines a bit thinner
2024-04-10 02:24:21 +03:00
Emmanouil Papadeas
97a1de6db2
Fix bug where images with width or height 1 are unable to be exported/affected by image effects
...
For some reason, ShaderImageEffect does not like images with width/height of 1.
2024-04-10 02:15:11 +03:00
Emmanouil Papadeas
018f95158e
If there's already a 3D object with the same name in the 3DShapeEdit selected object OptionButton, add a number next to it
2024-04-10 02:09:18 +03:00
Emmanouil Papadeas
a4f06d8cbe
Fix 3D layer buttons not having the same offset as the other layer type buttons
2024-04-10 01:25:57 +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
dbfd4d8412
When merging layers, automatically make the bottom layer visible
...
If the bottom layer is invisible, it becomes visible now. Consistent with behavior seen in Krita and Photopea.
2024-04-09 02:30:50 +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
25a69a99d6
Fix texture loading in LayerEffectsSettings
2024-04-08 02:43:01 +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
8c0a194468
Update camera when the viewport size changes
2024-04-06 00:09:58 +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
c5c421bd28
Add layer properties
2024-04-04 03:21:07 +03:00
Emmanouil Papadeas
2cdd426a45
Update Translations and minor UI improvement in cel, frame and tag properties
2024-04-04 02:46:50 +03:00
Emmanouil Papadeas
14a13a2161
Add user data for cels, frames and tags
...
Projects and layers are next, once I add project and layer setting dialogs respectively.
2024-04-04 01:27:50 +03:00
Emmanouil Papadeas
bc4b4dff0f
Fix CLI exporting even though an unknown option has been provided
...
Allowing exporting even if an unknown option has been provided could lead to unexpected results
2024-04-04 00:27:20 +03:00
Variable
04caa5f7f5
Experimental refactor of the CLI ( #1006 )
...
* experimental refactor
* some fixes, some improvements
* some formatting and add check for invalid argument
* formatting
* added similarity option
* linting
2024-04-04 00:22:05 +03:00
Emmanouil Papadeas
1c8d81d1b7
[CLI] Make arguments case sensitive, add support for OS.get_cmdline_user_args()
, add short form flags as alternatives for the long form arguments
2024-04-03 16:25:34 +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