1
0
Fork 0
mirror of https://github.com/Orama-Interactive/Pixelorama.git synced 2025-01-31 15:39:49 +00:00
Commit graph

484 commits

Author SHA1 Message Date
Emmanouil Papadeas 2d28136449
Implement indexed mode (#1136)
* Create a custom PixeloramaImage class, initial support for indexed mode

* Convert opened projects and images to indexed mode

* Use shaders for RGB to Indexed conversion and vice versa

* Add `is_indexed` variable in PixeloramaImage

* Basic undo/redo support for indexed mode when drawing

* Make image effects respect indexed mode

* Move code from image effects to ShaderImageEffect instead

* Bucket tool works with indexed mode

* Move and selection tools works with indexed mode

* Brushes respect indexed mode

* Add color_mode variable and some helper methods in Project

Replace hard-coded cases of Image.FORMAT_RGBA8 with `Project.get_image_format()` just in case we want to add more formats in the future

* Add a helper new_empty_image() method to Project

* Set new images to indexed if the project is indexed

* Change color modes from the Image menu

* Fix open image to replace cel

* Load/save indices in pxo files

* Merging layers works with indexed mode

* Layer effects respect indexed mode

* Add an `other_image` parameter to `PixeloramaImage.add_data_to_dictionary()`

* Scale image works with indexed mode

* Resizing works with indexed mode

* Fix non-shader rotation not working with indexed mode

* Minor refactor of PixeloramaImage's set_pixelv_custom()

* Make the text tool work with indexed mode

* Remove print from PixeloramaImage

* Rename "PixeloramaImage" to "ImageExtended"

* Add docstrings in ImageExtended

* Set color mode from the create new image dialog

* Update Translations.pot

* Show the color mode in the project properties dialog
2024-11-20 14:41:37 +02:00
Emmanouil Papadeas e2b6262560 Update translators in AboutDialog 2024-11-18 17:50:19 +02:00
Emmanouil Papadeas 763783f2f1 Improve the UI of the tile mode offsets dialog and add an Isometric button 2024-11-15 17:59:57 +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 638130c5c8 [skip ci] Update AboutDialog.gd 2024-10-25 12:02:26 +03:00
Emmanouil Papadeas 2d7d7e7c06 Allow greater values in the resize slider of the export dialog 2024-10-23 12:02:19 +03:00
Emmanouil Papadeas dd8d217dc3 Changes in formatting due to gdtoolkit's new update
https://github.com/Scony/godot-gdscript-toolkit/releases/tag/4.3.2
2024-10-22 15:54:59 +03:00
Emmanouil Papadeas 370ae7525a Fix formatting and make unused docstrings to comments of the previous commit 2024-10-18 00:01:27 +03:00
Variable 2cb29ab274
somewhat fix transparency for floating window (#1116)
* somewhat fix transparency

* some formatting
2024-10-17 19:51:45 +03:00
Emmanouil Papadeas b52cdc6e7b Fix some text in the About dialog not having the text color of the theme 2024-10-12 15:44:06 +03:00
Emmanouil Papadeas be7d45205e Remove Roboto-Italic
Pixelorama now takes ~100KB less space
2024-10-12 15:36:46 +03:00
Emmanouil Papadeas bd68f3d20b [skip ci] Add some strings to Translations.pot 2024-10-11 13:08:29 +03:00
Variable b350f436c6
Allow clipping to selection during export (#1113)
* Allow clipping to selection during export

* linting

* removed shader
2024-10-01 20:18:58 +03:00
Variable b5ded76654
Stretch mode and expand mode fixes (#1103)
* Set dynamics dialog to correct size after something is made visible or hidden

* fixed aspects of brush buttons

* Fixed wrong stretch mode

* improved rotation brush UI

* Update PaintSelect.tscn

* formatting

* fix all stretch modes

* fix export expand mode

* Fix more Stretch modes

* Fixed Resize canvas transparent checker

* removed an addition

The change: 625fe4cdd1
is moved over to a new pr

* moved some changes to another pr

* Moved some more changes to another pr
2024-09-17 21:38:21 +03:00
Emmanouil Papadeas 8c7594a1c8 Add a failsafe to the previous commit's solution 2024-09-13 01:05:53 +03:00
Emmanouil Papadeas 1e2e5dc431 Fix wrong preview in the gradient dialog when editing the gradient and dithering is enabled 2024-09-13 01:02:48 +03:00
Emmanouil Papadeas 6ad23f8485 Second attempt to fix a visual bug with resize canvas' dialog preview 2024-09-12 21:08:32 +03:00
Emmanouil Papadeas 462a95a5ae Fix visual bug with the preview of the resize canvas dialog 2024-09-12 20:23:18 +03:00
Emmanouil Papadeas 8f6eba3f84 Make the Gaussian blur dialog invisible 2024-09-11 17:01:25 +03:00
Emmanouil Papadeas b962b31568 Make some method names in ExportDialog lowercase
They were named this way due to the naming conventions of Godot 3, but Godot 4 automatically makes these method names be all lowercase. Eventually we should replace all methods in the codebase to be all lowercase.
2024-09-11 16:59:53 +03:00
Emmanouil Papadeas 54068895bc Rename "trim sprite" to "trim images" and add the related strings to Translations.pot
"Trim images" should be a more fitting name for this option, as it's quite common to export multiple images and the use of plural makes it more clear that this option applies to all exported images.
2024-09-11 16:45:16 +03:00
Emmanouil Papadeas f9dd09dc2c Update AboutDialog.gd 2024-09-09 00:52:20 +03:00
Emmanouil Papadeas 321102e8fe Add Gaussian Blur as an image effect 2024-09-08 03:13:55 +03:00
Emmanouil Papadeas a0c7dd4527 Optimize the export dialog by caching all of the blended frames
No more slowness when changing the export settings. The only setting that causes the frames to be blended again is changing the layers.
2024-09-05 04:50:36 +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
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 9be3ba290c Update AboutDialog.gd 2024-08-21 14:30:47 +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 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 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
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 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 f299cf1339 Update AboutDialog.gd 2024-08-05 13:13:16 +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 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 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 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
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
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 40fb5894b0 Update AboutDialog.gd 2024-07-26 18:19:52 +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 d58da13493 Bump version to v1.0-rc1 2024-07-22 01:00:25 +03:00
Emmanouil Papadeas b8af094529 Add the 1.0 splash screen artworks 2024-07-21 03:23:25 +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 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 919d0117ca Update AboutDialog.gd 2024-07-14 01:30:56 +03:00