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

439 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
74d95c2424
[skip ci] Update Translations.pot 2024-11-19 16:00:28 +02:00
Emmanouil Papadeas
f4f7da7605 [skip ci] Update Translations.pot 2024-11-19 01:32:21 +02:00
Emmanouil Papadeas
b548ad2337
New Crowdin updates (#1127) 2024-11-18 17:47:27 +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
94735fc08b [skip ci] Update Translations.pot 2024-11-15 02:08:30 +02:00
Emmanouil Papadeas
0d6b140dea Add border selection, fix some missing translation strings 2024-11-15 01:41:44 +02:00
Emmanouil Papadeas
36329efaf6 Add density to the square & circle brushes
00% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
2024-11-14 01:02:51 +02:00
Emmanouil Papadeas
9338b2e6bb
New Crowdin updates (#1106) 2024-10-25 11:46:29 +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
Emmanouil Papadeas
263e19f17a Add a tooltip of the "Share options between the left and the right tools" preference 2024-10-17 13:06:53 +03:00
Variable
3863cbaee7
Add a preference to share options between tools (#1120)
* Add share config button

* fill parameter now saves with curve tool

* rename _fill to _fill_inside for sync consistency (fill in pencil and shape tools basically represent the same thing)

* add icon

* Move the option to the preferences

* Add string to Translations.pot

* Re-introduce `is_syncing`

---------

Co-authored-by: Emmanouil Papadeas <35376950+OverloadedOrama@users.noreply.github.com>
2024-10-16 16:00:20 +03:00
Emmanouil Papadeas
1ed52903b3 Implement the ability to change the font of a 3D text
This code will also be useful for the text tool
2024-10-12 16:30:16 +03:00
Emmanouil Papadeas
9fcb06aa72 Add a 3D text line spacing option 2024-10-12 14:31:15 +03:00
Emmanouil Papadeas
bbf0ae8040 Add a 3D text depth option 2024-10-12 01:14:37 +03:00
Emmanouil Papadeas
bd68f3d20b [skip ci] Add some strings to Translations.pot 2024-10-11 13:08:29 +03:00
Emmanouil Papadeas
ffc98a4b7f Remove confusing text from the tooltips of the play animation buttons
Addresses #1114
2024-10-10 16:33:50 +03:00
Emmanouil Papadeas
39afb5e15b Add buttons with menus that move the symmetry guides to the center of the canvas, or the view center 2024-10-10 15:27:06 +03:00
Emmanouil Papadeas
7eeb0b0cba Add a clear recently open file list option 2024-10-10 00:42:40 +03:00
Emmanouil Papadeas
2f24508dea Add a new Reset category in the Preferences 2024-10-09 21:20:17 +03:00
Emmanouil Papadeas
21a035b269
New Crowdin updates (#1083) 2024-09-13 13:46:48 +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
321102e8fe Add Gaussian Blur as an image effect 2024-09-08 03:13:55 +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
Emmanouil Papadeas
88282ec848
New Crowdin updates (#1068) 2024-08-21 14:17:17 +03:00
Emmanouil Papadeas
81889ff5d0 [skip ci] Add context to some image effect strings 2024-08-18 16:49:39 +03:00
Emmanouil Papadeas
b0aabe4e8a Add a preference to change max undo steps 2024-08-16 14:28:54 +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
478508be05
New Crowdin updates (#1052) 2024-08-05 13:13:40 +03:00
Emmanouil Papadeas
99982b50bb [skip ci] Update Translations.pot 2024-08-02 00:03: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
f15e8fb8f2 [skip ci] Update translation mistake 2024-08-01 01:41:33 +03:00
Emmanouil Papadeas
6e41496ec9 [skip ci] Update translations 2024-08-01 00:24:25 +03:00
Emmanouil Papadeas
da3ca662ee
New Crowdin updates (#1050) 2024-07-29 17:36:27 +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
6feb8b6ba1
New Crowdin updates (#1040) 2024-07-26 17:00:58 +03:00
Emmanouil Papadeas
7e2fad6b38
New Crowdin updates (#1033) 2024-07-22 14:56:22 +03:00
Emmanouil Papadeas
db8aa7ba8a [skip ci] Update Translations.pot 2024-07-21 00:37:26 +03:00
Emmanouil Papadeas
4537727344
New Crowdin updates (#1031)
* New translations translations.pot (Portuguese, Brazilian)

* New translations translations.pot (Portuguese, Brazilian)
2024-07-04 22:54:50 +03:00
Emmanouil Papadeas
8bc5a8847c
New translations translations.pot (Indonesian) (#1027) 2024-06-23 03:38:13 +03:00
Emmanouil Papadeas
3a57092792
New Crowdin updates (#1024)
* New translations translations.pot (Russian)

* New translations translations.pot (Russian)

* New translations translations.pot (Chinese Simplified)
2024-06-12 22:01:32 +03:00
Emmanouil Papadeas
bf6fcda3dc
New Crowdin updates (#1016) 2024-05-31 02:01:09 +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
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
a54e37ac2a [skip ci] Fix curve tool description translation string 2024-05-21 19:42:57 +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
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
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
7b7da476b6 Various small translation-related fixes 2024-05-07 01:09:26 +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