Emmanouil Papadeas
647ec29ab0
The crop tool can now be applied by pressing enter
2024-02-03 15:16:21 +02:00
Emmanouil Papadeas
85f2f22be7
[DockableContainer change] Don't set layout's resource_name
if it already has a value
...
Another change that might be worth adding to upstream.
2024-02-03 13:58:16 +02:00
Emmanouil Papadeas
978ddf3b45
Fix 3DShapeEdit import object not using native dialog
2024-02-03 13:57:05 +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
9a842ad33e
Sort layouts alphabetically when adding a new one so that Pixelorama will remember the correct last used layout when opening again
2024-02-02 03:50:28 +02:00
Emmanouil Papadeas
5824d2a0eb
Choose which layout to copy from when adding a new layout
2024-02-02 02:59:07 +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
ffd729486f
Expose window transparency as an option in the preferences, keep it disabled by default
...
I had to disable it, because for some reason having it be enabled by default does not seem to be working. This may be a good idea anyway, as many people will not need this feature, and having this enabled affects performance.
This commit also allows for changing project setting related options in the preferences to also work when running Pixelorama inside Godot.
2024-02-02 00:19:53 +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
2e8cf6a30a
Minor code improvements in WindowOpacityDialog.gd
2024-02-01 20:51:26 +02:00
Emmanouil Papadeas
ac950dafae
[skip ci] Update CHANGELOG.md
2024-01-31 02:53:16 +02:00
Emmanouil Papadeas
e648d0d612
Some code improvements in DrawingAlgos
...
Should also result in minor optimizations
2024-01-31 02:26:49 +02:00
Emmanouil Papadeas
399fc8dfbd
Make similar_colors() in DrawingAlgos faster
...
We finally found some use for Godot 4's new Vector4, let Godot's built-in functions handle the math, since they run in native C++.
2024-01-31 01:41:58 +02:00
Emmanouil Papadeas
63691cacaf
Load pxo files from the Web version - Fixes #820
2024-01-30 21:17:31 +02:00
Emmanouil Papadeas
1dce3ebe22
Change get_tree().get_root() to get_window() in TransparentChecker.gd
2024-01-29 16:37:56 +02:00
Emmanouil Papadeas
5bd3cab196
Add override.cfg to .gitignore
2024-01-29 16:36:05 +02:00
Emmanouil Papadeas
6345c52b5f
Fix override.cfg being created in the wrong location if Pixelorama is launched through a launcher or a shortcut
2024-01-29 16:35:23 +02:00
OverloadedOrama
a7cf93d1e5
Fix not being able to draw when closing the splash screen
...
Regression from b08420d0
2024-01-26 04:05:37 +02:00
Emmanouil Papadeas
508f8f0d15
Minor simplifications of some parts in Selection.gd
2024-01-26 02:31:38 +02:00
Emmanouil Papadeas
b126e95b64
Almost made selection rotation with gizmos functional
...
Not exposed yet
2024-01-25 02:33:41 +02:00
Emmanouil Papadeas
3d04a8d276
Selection rotation with gizmos works on selections without content now
...
Still not ready and thus not exposed
2024-01-25 01:35:42 +02:00
Emmanouil Papadeas
964e9fbd26
Don't set the selection_map of the project to the original_bitmap, if the latter is empty
...
Shouldn't happen, but best to check in case it does. Setting empty data to the selection_map breaks selections.
2024-01-25 01:06:30 +02:00
Emmanouil Papadeas
de5db85345
When resizing a selection with gizmos or from the tool options, only set the original_bitmap when we're not already transforming content
2024-01-25 00:59:53 +02:00
Emmanouil Papadeas
f8b32762a1
Fix canceling selection content resizing breaking the selection
2024-01-25 00:45:49 +02:00
Emmanouil Papadeas
56fe1840e0
Make selections scale properly even if they don't transform any image content
...
Fixes #774 .
2024-01-25 00:40:53 +02:00
Emmanouil Papadeas
3a0977ce21
Some code cleanup in Selection.gd
2024-01-25 00:11:19 +02:00
Emmanouil Papadeas
ce7a5e77ba
Add a single window mode setting in the preferences
...
True by default, when set to false the UI uses multiple windows
2024-01-24 18:31:22 +02:00
Emmanouil Papadeas
f0a5637d8a
Some recorder UI improvements
...
Removed the fps option completely as it doesn't have any effects to exported static images. Should be re-introduced once we add video exporting with ffmpeg though.
2024-01-24 14:41:15 +02:00
Emmanouil Papadeas
5297fe6a80
Forgot to format the previous commit :(
2024-01-24 04:22:45 +02:00
Emmanouil Papadeas
d640b6a979
Add a setting to allow usage of native file dialogs in the preferences
...
Closes #274 and implements #568 , at long last! Some issues remain:
- The native save pxo dialog doesn't have an "Include blended images" option. This will be fixed once https://github.com/godotengine/godot/pull/83480 is merged.
- When a native file dialog closes, the interface still remains dimmed.
- In the export dialog, the "Browse" file dialog will also close the export dialog itself when it closes, when it's native.
2024-01-24 04:20:46 +02:00
Emmanouil Papadeas
4bc0fba941
Add a variable in Global for setting file dialogs as native, and add a "FileDialogs" node group
...
This settings is not exposed in the preferences in this commit
2024-01-24 03:57:40 +02:00
Emmanouil Papadeas
b08420d09d
Don't change the value of can_draw in Global.dialog_open()
...
In Godot 4 dialogs seem to be blocking the input to the rest of the UI, so this may not be needed
2024-01-24 03:19:57 +02:00
Emmanouil Papadeas
4e9b657077
Remove Global.has_focus completely
...
Might be a risky change, but I haven't noticed any bugs so far
2024-01-24 03:14:11 +02:00
Emmanouil Papadeas
42de5ccb29
Remove unneeded has_focus checks
2024-01-24 03:06:09 +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
Emmanouil Papadeas
3a852e44ff
Add a popup_error() method in Global
...
Just to reduce code duplication and make error appearing easier
2024-01-24 02:27:57 +02:00
Emmanouil Papadeas
43d241a5c2
Video exporting by calling FFMPEG externally ( #980 )
...
* Basic mp4 exporting, needs ffmpeg
* Add avi, ogv and mkv file exporting
* Add webm exporting
* Set ffmpeg path in the preferences
* Show an error message if the video fails to export
* Make sure to delete the temp files even if video exporting fails
2024-01-24 02:00:17 +02:00
Emmanouil Papadeas
204eff8184
Fix selection being incorrect when the image is being scaled (mostly when being made smaller).
2024-01-23 19:38:21 +02:00
Emmanouil Papadeas
e7a469fa4d
Refactor scale methods of DrawingAlgos
2024-01-23 19:25:32 +02:00
Emmanouil Papadeas
6448b7ee7c
Remove unnecessary Array casting in DrawingAlgos
2024-01-23 19:07:35 +02:00
Emmanouil Papadeas
519fa77791
Add a recent colors section to the color picker
...
Sort-of implements #859
2024-01-23 03:57:31 +02:00
Variable
f43f80cee0
Integrate Extension Explorer ( #910 )
...
* Integration of ExtensionExplorer
---------
Co-authored-by: Emmanouil Papadeas <35376950+OverloadedOrama@users.noreply.github.com>
Co-authored-by: Emmanouil Papadeas <manoschool@yahoo.gr>
2024-01-23 03:25:37 +02:00
Variable
ddce0393dd
Fixed some issues with perspective lines and removed unneeded code from the rotate image dialog ( #979 )
...
* fix drag gizmo of perspectice lines
* fix more stuff
2024-01-22 00:09:57 +02:00
Emmanouil Papadeas
bec7ceb974
Fix Global.can_draw being set to true all the time
...
Note for the future, perhaps using _unhandled_input() might remove the need of this variable.
2024-01-21 19:46:01 +02:00
Variable
561a374cc0
Fixed rotation gixmo ( #976 )
2024-01-20 02:06:44 +02:00
Emmanouil Papadeas
bc8fadb67c
Fix cel button image texture breaking when the image gets resized
2024-01-19 18:25:50 +02:00
Emmanouil Papadeas
73e40ed127
Add a ShaderInclude file for common shader rotation code
2024-01-18 00:19:30 +02:00