Emmanouil Papadeas
66857f5e62
Make background around canvas configurable - implements #586
2022-09-10 02:58:13 +03:00
Emmanouil Papadeas
d34e69579f
Make circle brushes scale properly, with support for even-numebered diameters
...
Also reverts commit 488cf0cc93
2022-09-09 00:10:34 +03:00
Emmanouil Papadeas
dee49b61bf
Move get_ellipse_points() to DrawingAlgos
...
The same ellipse algorithm will be used for the circular brushes, as I can't seem to make the current circle algorithm work with even-numbered diameters.
2022-09-08 17:35:00 +03:00
Emmanouil Papadeas
cd0c7ccdb0
Remove duplicate circle code from Draw.gd
2022-09-08 14:02:33 +03:00
Emmanouil Papadeas
e7678ef5cc
Move _fill_bitmap_with_points() to BaseTool.gd
2022-09-08 13:42:03 +03:00
Emmanouil Papadeas
ffd6c8c88d
Remove unused methods in Draw.gd
2022-09-08 13:32:03 +03:00
Emmanouil Papadeas
edbbec1d55
Copy, cut & delete now affect the entire cel if there is no selection
...
Also fixed issue with delete deleting content from locked/invisible layers.
2022-09-08 01:10:23 +03:00
Emmanouil Papadeas
c22633901d
[skip ci] Fix typo
2022-09-05 18:17:20 +03:00
Manolis Papadeas
d564139f98
Some more static typing
...
Apologies for the pointless-ish commits but I'm on vacation and time is limited :(
2022-09-03 00:58:29 +03:00
Manolis Papadeas
3bfbf07d58
Don't move selection if there's a dialog open
2022-09-01 00:21:18 +03:00
Manolis Papadeas
eef722946c
Change into forbidden cursor in the canvas if the layer is unavailable
...
Unavailable means either locked or invisible, or both.
2022-08-31 00:36:41 +03:00
Manolis Papadeas
488cf0cc93
Pixel perfect only affects the square brush
2022-08-30 20:11:01 +03:00
Manolis Papadeas
47ba050ad4
Some formatting changes
2022-08-29 22:15:43 +03:00
Manolis Papadeas
01f8273e4b
Add some missing static typing
2022-08-29 21:11:43 +03:00
Emmanouil Papadeas
1c2f4c5350
Bump version to v0.10.3-dev
2022-08-27 23:52:23 +03:00
Emmanouil Papadeas
1f828981d8
Enable hiDPI
2022-08-26 16:40:38 +03:00
Emmanouil Papadeas
500fc5ac47
Change SplashDialog from WindowDialog to AcceptDialog
...
This eliminates the need of the dialog having a rect_min_size, which lets users resize it to make it even smaller. The OK button is being hidden at the start, so visually it should look almost the same.
2022-08-26 03:25:22 +03:00
Emmanouil Papadeas
7bfcabc466
Close project tabs with middle mouse click
2022-08-25 01:47:05 +03:00
Emmanouil Papadeas
b9f0f0a647
Move left and right cursor sprite nodes to Main.gd
2022-08-24 14:22:40 +03:00
Emmanouil Papadeas
615491052a
Minor code cleanup to reduce lines of code
2022-08-21 00:18:33 +03:00
Emmanouil Papadeas
70cb9b6b1b
Release v0.10.2-stable
2022-08-18 15:39:50 +03:00
Emmanouil Papadeas
9279cdef07
New Crowdin updates ( #736 )
...
* New translations Translations.pot (Polish)
* New translations Translations.pot (Polish)
* New translations Translations.pot (Italian)
* New translations Translations.pot (Chinese Simplified)
* New translations Translations.pot (Malayalam)
* New translations Translations.pot (Korean)
* New translations Translations.pot (Greek)
* New translations Translations.pot (Danish)
* New translations Translations.pot (Polish)
* New translations Translations.pot (Portuguese, Brazilian)
2022-08-18 15:38:31 +03:00
Emmanouil Papadeas
27a23f5e37
Update contributors, translators and changelog URL
2022-08-18 02:04:08 +03:00
Emmanouil Papadeas
a387491f78
[skip ci] Update CHANGELOG.md
2022-08-16 16:40:18 +03:00
Emmanouil Papadeas
e495f1f260
Add Danish language
2022-08-14 16:06:46 +03:00
Emmanouil Papadeas
6faf3baa20
Update version to v0.10.2-rc1
2022-08-12 18:40:23 +03:00
Emmanouil Papadeas
f9e96db04c
New Crowdin updates ( #706 )
...
* New translations Translations.pot (Arabic)
* New translations Translations.pot (Russian)
* New translations Translations.pot (Indonesian)
* New translations Translations.pot (Romanian)
* New translations Translations.pot (French)
* New translations Translations.pot (Spanish)
* New translations Translations.pot (Afrikaans)
* New translations Translations.pot (Catalan)
* New translations Translations.pot (Italian)
* New translations Translations.pot (Czech)
* New translations Translations.pot (Danish)
* New translations Translations.pot (German)
* New translations Translations.pot (Finnish)
* New translations Translations.pot (Hebrew)
* New translations Translations.pot (Hungarian)
* New translations Translations.pot (Norwegian Bokmal)
* New translations Translations.pot (Japanese)
* New translations Translations.pot (Italian)
* New translations Translations.pot (Romanian)
* New translations Translations.pot (German)
* New translations Translations.pot (Russian)
* New translations Translations.pot (Greek)
* New translations Translations.pot (Turkish)
* New translations Translations.pot (Portuguese, Brazilian)
* New translations Translations.pot (Ukrainian)
* New translations Translations.pot (Ukrainian)
* New translations Translations.pot (Greek)
* New translations Translations.pot (Chinese Traditional)
* New translations Translations.pot (Portuguese)
* New translations Translations.pot (Serbian (Cyrillic))
* New translations Translations.pot (Swedish)
* New translations Translations.pot (Turkish)
* New translations Translations.pot (Ukrainian)
* New translations Translations.pot (Chinese Simplified)
* New translations Translations.pot (Vietnamese)
* New translations Translations.pot (Dutch)
* New translations Translations.pot (Portuguese, Brazilian)
* New translations Translations.pot (Latvian)
* New translations Translations.pot (Hindi)
* New translations Translations.pot (Esperanto)
* New translations Translations.pot (Malayalam)
* New translations Translations.pot (Sinhala)
* New translations Translations.pot (Polish)
* New translations Translations.pot (Japanese)
* New translations Translations.pot (Korean)
* New translations Translations.pot (Arabic)
* New translations Translations.pot (Russian)
* New translations Translations.pot (Indonesian)
* New translations Translations.pot (Romanian)
* New translations Translations.pot (French)
* New translations Translations.pot (Spanish)
* New translations Translations.pot (Afrikaans)
* New translations Translations.pot (Catalan)
* New translations Translations.pot (Italian)
* New translations Translations.pot (Czech)
* New translations Translations.pot (Danish)
* New translations Translations.pot (German)
* New translations Translations.pot (Finnish)
* New translations Translations.pot (Hebrew)
* New translations Translations.pot (Hungarian)
* New translations Translations.pot (Norwegian Bokmal)
* New translations Translations.pot (Ukrainian)
* New translations Translations.pot (Japanese)
* New translations Translations.pot (German)
* New translations Translations.pot (Italian)
* New translations Translations.pot (Portuguese, Brazilian)
* New translations Translations.pot (Romanian)
* New translations Translations.pot (Polish)
* New translations Translations.pot (Polish)
* New translations Translations.pot (Russian)
* New translations Translations.pot (Indonesian)
* New translations Translations.pot (Indonesian)
* New translations Translations.pot (Indonesian)
* New translations Translations.pot (Indonesian)
* New translations Translations.pot (Indonesian)
* New translations Translations.pot (Chinese Traditional)
* New translations Translations.pot (Russian)
* New translations Translations.pot (Serbian (Cyrillic))
* New translations Translations.pot (Swedish)
* New translations Translations.pot (Turkish)
* New translations Translations.pot (Ukrainian)
* New translations Translations.pot (Chinese Simplified)
* New translations Translations.pot (Vietnamese)
* New translations Translations.pot (Polish)
* New translations Translations.pot (Portuguese, Brazilian)
* New translations Translations.pot (Latvian)
* New translations Translations.pot (Hindi)
* New translations Translations.pot (Esperanto)
* New translations Translations.pot (Malayalam)
* New translations Translations.pot (Sinhala)
* New translations Translations.pot (Portuguese)
* New translations Translations.pot (Dutch)
* New translations Translations.pot (Romanian)
* New translations Translations.pot (Danish)
* New translations Translations.pot (French)
* New translations Translations.pot (Spanish)
* New translations Translations.pot (Afrikaans)
* New translations Translations.pot (Arabic)
* New translations Translations.pot (Catalan)
* New translations Translations.pot (Czech)
* New translations Translations.pot (German)
* New translations Translations.pot (Korean)
* New translations Translations.pot (Greek)
* New translations Translations.pot (Finnish)
* New translations Translations.pot (Hebrew)
* New translations Translations.pot (Hungarian)
* New translations Translations.pot (Italian)
* New translations Translations.pot (Japanese)
* New translations Translations.pot (Norwegian Bokmal)
* New translations Translations.pot (Italian)
* New translations Translations.pot (Chinese Simplified)
* New translations Translations.pot (Romanian)
* New translations Translations.pot (Japanese)
* New translations Translations.pot (Portuguese, Brazilian)
* New translations Translations.pot (German)
* New translations Translations.pot (Russian)
* New translations Translations.pot (Ukrainian)
* New translations Translations.pot (Korean)
* New translations Translations.pot (Indonesian)
* New translations Translations.pot (Chinese Simplified)
* New translations Translations.pot (Chinese Simplified)
* New translations Translations.pot (Polish)
* New translations Translations.pot (Danish)
* New translations Translations.pot (Danish)
* New translations Translations.pot (Korean)
* New translations Translations.pot (Danish)
* New translations Translations.pot (Danish)
* New translations Translations.pot (Spanish)
* New translations Translations.pot (Spanish)
* New translations Translations.pot (Indonesian)
* New translations Translations.pot (Chinese Traditional)
* New translations Translations.pot (Russian)
* New translations Translations.pot (Serbian (Cyrillic))
* New translations Translations.pot (Swedish)
* New translations Translations.pot (Romanian)
* New translations Translations.pot (Hebrew)
* New translations Translations.pot (Portuguese)
* New translations Translations.pot (Polish)
* New translations Translations.pot (Dutch)
* New translations Translations.pot (French)
* New translations Translations.pot (Japanese)
* New translations Translations.pot (Italian)
* New translations Translations.pot (Hungarian)
* New translations Translations.pot (Korean)
* New translations Translations.pot (Finnish)
* New translations Translations.pot (German)
* New translations Translations.pot (Danish)
* New translations Translations.pot (Czech)
* New translations Translations.pot (Catalan)
* New translations Translations.pot (Arabic)
* New translations Translations.pot (Afrikaans)
* New translations Translations.pot (Spanish)
* New translations Translations.pot (Greek)
* New translations Translations.pot (Hindi)
* New translations Translations.pot (Sinhala)
* New translations Translations.pot (Malayalam)
* New translations Translations.pot (Esperanto)
* New translations Translations.pot (Ukrainian)
* New translations Translations.pot (Latvian)
* New translations Translations.pot (Portuguese, Brazilian)
* New translations Translations.pot (Vietnamese)
* New translations Translations.pot (Chinese Simplified)
* New translations Translations.pot (Turkish)
* New translations Translations.pot (Norwegian Bokmal)
* New translations Translations.pot (Greek)
* New translations Translations.pot (Japanese)
* New translations Translations.pot (Romanian)
* New translations Translations.pot (German)
* New translations Translations.pot (Portuguese, Brazilian)
* New translations Translations.pot (Romanian)
* New translations Translations.pot (Esperanto)
* New translations Translations.pot (Ukrainian)
* New translations Translations.pot (Chinese Simplified)
* New translations Translations.pot (Vietnamese)
* New translations Translations.pot (Portuguese, Brazilian)
* New translations Translations.pot (Latvian)
* New translations Translations.pot (Hindi)
* New translations Translations.pot (Malayalam)
* New translations Translations.pot (Portuguese)
* New translations Translations.pot (Sinhala)
* New translations Translations.pot (Norwegian Bokmal)
* New translations Translations.pot (Russian)
* New translations Translations.pot (Serbian (Cyrillic))
* New translations Translations.pot (Swedish)
* New translations Translations.pot (Chinese Traditional)
* New translations Translations.pot (Turkish)
* New translations Translations.pot (Polish)
* New translations Translations.pot (French)
* New translations Translations.pot (German)
* New translations Translations.pot (Spanish)
* New translations Translations.pot (Afrikaans)
* New translations Translations.pot (Arabic)
* New translations Translations.pot (Catalan)
* New translations Translations.pot (Czech)
* New translations Translations.pot (Danish)
* New translations Translations.pot (Greek)
* New translations Translations.pot (Dutch)
* New translations Translations.pot (Finnish)
* New translations Translations.pot (Hebrew)
* New translations Translations.pot (Hungarian)
* New translations Translations.pot (Italian)
* New translations Translations.pot (Japanese)
* New translations Translations.pot (Korean)
* New translations Translations.pot (Indonesian)
* New translations Translations.pot (Romanian)
* New translations Translations.pot (Sinhala)
* New translations Translations.pot (Norwegian Bokmal)
* New translations Translations.pot (Russian)
* New translations Translations.pot (Serbian (Cyrillic))
* New translations Translations.pot (Swedish)
* New translations Translations.pot (Chinese Traditional)
* New translations Translations.pot (Indonesian)
* New translations Translations.pot (Esperanto)
* New translations Translations.pot (Malayalam)
* New translations Translations.pot (Hindi)
* New translations Translations.pot (French)
* New translations Translations.pot (Hungarian)
* New translations Translations.pot (Spanish)
* New translations Translations.pot (Afrikaans)
* New translations Translations.pot (Arabic)
* New translations Translations.pot (Catalan)
* New translations Translations.pot (Czech)
* New translations Translations.pot (Danish)
* New translations Translations.pot (German)
* New translations Translations.pot (Greek)
* New translations Translations.pot (Finnish)
* New translations Translations.pot (Hebrew)
* New translations Translations.pot (Italian)
* New translations Translations.pot (Latvian)
* New translations Translations.pot (Japanese)
* New translations Translations.pot (Korean)
* New translations Translations.pot (Dutch)
* New translations Translations.pot (Polish)
* New translations Translations.pot (Portuguese)
* New translations Translations.pot (Turkish)
* New translations Translations.pot (Ukrainian)
* New translations Translations.pot (Chinese Simplified)
* New translations Translations.pot (Vietnamese)
* New translations Translations.pot (Portuguese, Brazilian)
* New translations Translations.pot (Greek)
* New translations Translations.pot (Indonesian)
* New translations Translations.pot (Indonesian)
* New translations Translations.pot (Japanese)
* New translations Translations.pot (Japanese)
* New translations Translations.pot (Romanian)
* New translations Translations.pot (Ukrainian)
* New translations Translations.pot (Romanian)
* New translations Translations.pot (German)
* New translations Translations.pot (German)
* New translations Translations.pot (Portuguese, Brazilian)
2022-08-11 17:10:20 +03:00
Emmanouil Papadeas
92fcf8faca
Update translations, rename "New tab" to "New project"
...
Addresses the first half of #735 .
2022-08-11 01:44:45 +03:00
Emmanouil Papadeas
469f9bf4d3
Use theme type variations for RulerButtons and TopMenuContainer
2022-08-09 04:18:11 +03:00
Emmanouil Papadeas
8a8e6929b9
Replace Tweens with SceneTreeTweens
...
Futureproofing for easier porting to Godot 4.0, and reducing lines of code in the process ;)
2022-08-09 03:57:14 +03:00
Emmanouil Papadeas
d989af77f9
[skip ci] Update CHANGELOG.md
2022-08-09 02:18:01 +03:00
Emmanouil Papadeas
c66cac2fd8
Add an interpolation OptionButton to GradientEdit
2022-08-09 02:02:46 +03:00
Emmanouil Papadeas
494397502a
Enable low processor mode on Android
...
It should no longer have issues with Godot 3.5
2022-08-09 00:53:47 +03:00
Emmanouil Papadeas
8b70b56a5e
Fix current frame button not being pressed when changing project
2022-08-08 21:37:00 +03:00
Emmanouil Papadeas
c7ee96591c
Some theme changes made automatically by Godot 3.5
2022-08-08 21:33:38 +03:00
Emmanouil Papadeas
a9e624e319
Greatly optimize selection content deletion
...
New speeds with this commit (approximately)
64x64: 0-1ms
1024x1024: 27ms
2048x2048: 73ms
4096x4096: 261ms
Old speeds before this commit (approximately)
64x64: 42ms
1024x1024: 5204ms
2048x2048: 20988ms
4096x4096: 83973ms
2022-08-08 19:07:17 +03:00
Variable
8a6e393d69
New theme-related methods to ExtensionsAPI ( #733 )
...
* hide accidentally visible dialog
* added new theme methods
* Wait for themes to add from api
* remove `find_theme`
* revert last commit
* Formatting
* Some code changes
* update to godot 3.5
2022-08-08 16:20:42 +03:00
Emmanouil Papadeas
afe5a90722
Use a HFlowContainer for the Tools
...
This commit requires Godot 3.5 and Pixelorama will no longer run in older Godot versions
2022-08-08 04:17:34 +03:00
Variable
ef0adf55b1
Make changing window transparency only affect the main canvas' transparency ( #734 )
...
* Only change opacity of TabContainer of MainCanvas
* fix typo
2022-08-08 03:21:08 +03:00
Emmanouil Papadeas
41ccc704c2
Refactor the selection system to use an Image instead of a BitMap ( #710 )
...
* Use Image instead of BitMap for selection
Not complete and Pixelorama is currently broken
* Add a SelectionMap class
* Make the changes in Selection.gd
* Remove selection_bitmap
* Replace duplicate() with copy_from()
* Fix selection
Intersection and transforming are not working
* Fix wrong pixel color values
* Fix selection transforming
* Call selection_bitmap_changed() on scale
* Fix clipboard
* Remove bitmap_to_image()
* Rename selection_image to selection_map
* No errors in Magic Wand
* Rename selection_bitmap_changed() to selection_map_changed()
* Format
* Fix selection resizing
* Remove a line from image effects
* Fast selection inverting using shader
* Update SelectionMap.gd
* Format
* Convert SelectionMap back to LA8 after inverting
* Minor refactor in RectSelect.gd
* Fix intersections
* Use shader for ColorSelect and add color similarity option
* Update RotateImage.gd
2022-08-08 03:03:17 +03:00
Emmanouil Papadeas
b4a5bf4dd0
Update web workflows deploy step, second attempt
...
This is where the fun begins
2022-08-07 19:22:31 +03:00
Emmanouil Papadeas
a329298fc5
Update web workflows deploy step
...
I suppose this counts as a second attempt to update to Godot 3.5? Only Web builds failed in the last commit, and I'm not sure if this will fix anything
2022-08-07 19:19:33 +03:00
Emmanouil Papadeas
c4c1bfda35
Update workflows to Godot 3.5, first attempt
...
First and hopefully final attempt, but I'm almost sure I have done something stupid
2022-08-07 19:09:37 +03:00
Emmanouil Papadeas
7165f352b0
Make GradientEdit's color picker popup not get in the way of the preview
2022-08-04 17:14:43 +03:00
Variable
57387f3530
Change tilemask loading ( #731 )
...
* Load tilemask from current frame...
...instead of selecting from FileDialog
* Delete the FileDialog
* Added the reset button
every good loader needs a reset button, Cheers!!!
2022-08-03 00:42:54 +03:00
Variable
8803acd105
Tile mode fixes (Heavy testing required) ( #723 )
...
* Hide/Show options based on current tile option
* Changed a condition for tile mode
* Simplified tile detection code
* Priortize main tile as nearest if mouse is in it
* make tile mode draw behind canvas
* Changed a condition
* Tiles on top gets detected first...
...in case of overlap
* Only display relavant options
according to current mode
* Update preview according to..
..current mode
* removed print()
* Added tile masking
* Added tile masking
* Compare mask with project size
only masks with same size as project are accepted
* Formatting
* Added the suggestions
* Some minor modifications
* detect if a mask is loaded or not
* Added tile_mask to project
* Cosmetics
* added path detection
* added option to emit signal instead of loading...
... image directly through OpenSave
* Added a way to load mask for HTML5
* formatting
* formatting
* Formatting
* set proper way for saving tile_mask
* Formatting
* removed whitespace
2022-08-02 18:57:06 +03:00
Emmanouil Papadeas
b7e6a183a6
Add dockable container methods to ExtensionsAPI
2022-07-31 16:06:26 +03:00
Emmanouil Papadeas
273f7f2569
Update AboutDialog.gd
2022-07-30 22:11:29 +03:00
Emmanouil Papadeas
c5e2e1ce4c
Change badly named variable in ExtensionsAPI
2022-07-29 20:51:45 +03:00
Emmanouil Papadeas
acebbdf031
Update ExtensionsAPI.gd
2022-07-29 20:41:39 +03:00