1
0
Fork 0
mirror of https://github.com/Orama-Interactive/Pixelorama.git synced 2025-01-18 17:19:50 +00:00
Commit graph

158 commits

Author SHA1 Message Date
Manolis Papadeas 64e9d14a0e Use Texture resources instead of Image for tool cursor icons 2021-05-31 21:39:33 +03:00
Manolis Papadeas 531fad8217 Remove unused themes 2021-05-28 19:42:59 +03:00
Manolis Papadeas bd84fbbe39 Rename the Lighten/Darken tool to Shading tool 2021-05-26 02:17:49 +03:00
Xenofon Konitsas 0b1f0358b1
Create installer (#486)
* Fixed a lot of installer stuff

Fixed NSIS localization scripts, app version and added file association creation on installation

* Fixed even more installer stuff

Finalized installer and NSIS localization scripts, added pxo document icon

* Update release.yml

Added installer build and upload to release workflow
2021-05-21 10:36:16 -07:00
Manolis Papadeas 5b6f4ebe3e Added Polygon selection tool
Cursor icon is temporary. It works by clicking multiple times on the places you want to create edges, and to complete the polygon you either have to click at the first edge (if you hover the mouse, a circle appears in that position), or you can auto-fill by double clicking.
2021-05-18 01:56:55 +03:00
Manolis Papadeas b8d055fe01 Added lasso / free select tool
Temporary icon, probably. Should work without problems, but more testing would be nice.
2021-05-16 03:52:13 +03:00
Manolis Papadeas d13c5c1063 Added ellipse selection tool
Icons most likely temporary. A bit problematic when the selection is in negative coords and the preview does not work well with mirroring and mirror view. Same is true for the shape tools.
2021-05-14 03:48:33 +03:00
Manolis Papadeas 99ce07b3ab Added a new line tool
One of the most requested tools has finally been added!
2021-05-12 04:35:20 +03:00
Manolis Papadeas 64cb2bfbff Update the tool icons 2021-04-22 20:52:22 +03:00
Manolis Papadeas d70c6a22c4 New tool: Magic Wand (temporary icon) 2021-04-20 15:53:16 +03:00
Manolis Papadeas fccd37360a New tool: Select by Color (temporary icon)
When the user clicks on a pixel, all pixels of the same color are being selected. Shift adds to the selection, Ctrl subtracts. The icon and the hint tooltip are temporary.
2021-04-19 18:50:43 +03:00
Manolis Papadeas baba43d274 Change the way of how tool icon blue-orange backgrounds work
Instead of having a gazillion icons for each tool and its blue-orange variations, which led us to create 4 different textures for each tool, now we only need one texture for each tool and each theme. The blue-orange background has been made into a different TextureRect for each button.

This makes it easier for people to create new tools. Now, each new tool requires 3 textures (to cover every theme), instead of 12(!). I'm hoping to bring the number down to 1 in a future commit, by automating the theme color converting process.
2021-04-18 15:36:08 +03:00
Martin Novák 42696e7b37
Replace old palette system with a new one (#447)
* Replace old palette system with a new one

* Replace default json palettes with new resource versions

* Add missing translation strings

* Fix Erevoid's issues 2, 3 and 4

* Rewrite palette grid to improve performance
Add middle click scrolling

* Fix index conversion functions

* Fix palettes editing by copying them to XDG user write path

* Add Windows specific fixes

* Add import support for old json palette format

* Add create/edit palette settings check.
Hide add/delete color buttons when no palette is displayed.
2021-04-16 11:09:03 -07:00
DragonOfWar 943a69c0e3
Add Rectangle and Ellipse tools (#456)
* Add Shapes Tool (WIP)

* Add Alt button + Fill shape + Other stuff

* Add blue theme button textures

* Fix tool not previewing on right button

* Add config functions

* Fix ellipse bug

* Correctly added thickness

* Keep preview with CTRL

* Fix weird PoolVector behaviour

* Make preview follow mouse when pressing CTRL

* Moved shapes class to a separate script

* Update tooltip

* Enable mirrors

* Separate tools + jittery preview fix + more

* Add missing translation

* Add missing icons and keybindings

* Changed shape draw function buttons

Co-authored-by: DragonOfWar <47753585+KawanWeege@users.noreply.github.com>
2021-03-30 10:07:13 -07:00
Manolis Papadeas b26be782c1 Made the splash screen fully opaque again 2021-03-17 19:17:26 +02:00
Manolis Papadeas 4db21dae95 ScaleImage dialog improvements
It now automatically sets the size to the current project's size, has a button to lock aspect ratio, and resizing based on percentage. Some UI changes to CreateNewImage too.
2021-01-27 00:45:12 +02:00
Manolis Papadeas 93bbfabb99 Refactored CreateNewImage dialog and added portrait & landscape buttons from #402
The lock aspect ratio button has been changed from a checkbox to a texture button and the template code has been refactored to use a Template class instead of enums. Only dark icons have been added for now.
2021-01-25 22:07:02 +02:00
Manolis Papadeas 9f8c9807e7 Replaced pan tool icons
The previous icons made by Schweini in #399 will be used for the new move tool.
2021-01-17 21:46:15 +02:00
Manolis Papadeas bc4d5fa51f Added pan tool icon for blue theme 2021-01-04 02:00:41 +02:00
Laurenz Reinthaler 2a7e668976
Add Pan Tool (#399) 2020-12-23 10:41:42 -08:00
Manolis Papadeas 0d5b4416a4 Changed CJK font and fixed some character issues
- The CJK font (for Chinese & Korean) was changed to DroidSansFallback from NotoSansCJKtc. This results in a much smaller exported `.pck` (over 10MB less)

- Fixed Chinese and Korean characters not displaying properly in the Splash dialog and the About dialog.
2020-10-29 00:45:23 +02:00
Manolis Papadeas ab6bebd6d4 When there are errors in opening and saving files, the errors appear in the form of a popup dialog, instead of a notification or an OS alert. 2020-10-25 18:02:51 +02:00
OverloadedOrama fbbdcdaa57 Made the frame move buttons get disabled when you can't move frames 2020-10-05 02:37:55 +03:00
Laurenz Reinthaler 0f8a04193f
Add buttons for moving the current frame left or right (#344)
Add dark theme sprite

Add light theme sprite

Co-authored-by: Laurenz Reinthaler <reinthalerlaurenz@gmail.com>
2020-10-03 22:46:24 +03:00
Erevos 41a9107c45
Theme edits (#342)
* Theme edits

Changed all the themes to be more consistent, buttons and panel containers have rounded edges. Note that the spacings have been switched too, so it needs subtle remakes in the placing of each element. Especially the tool buttons. Also check the themes on preferences (need better spacing) and rulers are not included.

* Some UI fixes

* Reduced size of themes

* Fixed more spacing issues and replaced timeline grabber icon

* Removed old theme icons

* Change purple and light rulers

* Fix purple top menu & caramel rulers

Co-authored-by: Erevoid <Erevoid@users.noreply.github.com>
Co-authored-by: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com>
2020-09-29 18:00:43 +03:00
OverloadedOrama 10b082434b Removed brush_button.png - May solve #339 2020-09-27 20:35:46 +03:00
imgbot[bot] 5cdd49d358
[ImgBot] Optimize images (#334)
*Total -- 103.99kb -> 70.91kb (31.81%)

/assets/graphics/splash_screen/artworks/wishdream.png -- 34.35kb -> 22.75kb (33.78%)
/assets/graphics/splash_screen/artworks/jessmpz.png -- 35.23kb -> 24.12kb (31.54%)
/assets/graphics/splash_screen/artworks/roroto.png -- 34.40kb -> 24.05kb (30.11%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>

Co-authored-by: ImgBotApp <ImgBotHelp@gmail.com>
2020-09-23 16:10:41 +03:00
OverloadedOrama c0db420f73 Update splash screen with 3 new artworks
Also change copyright notice in splash screen & about dialog
2020-09-23 15:28:03 +03:00
OverloadedOrama f91cb41049 Fixed zoom issues with SymmetryGuide 2020-09-08 00:12:09 +03:00
OverloadedOrama aabb08f468 Small tab theme fixes 2020-09-02 01:04:26 +03:00
OverloadedOrama 0fbc2987ca Generate theme buttons via code
Instead of having hardcoded nodes. This makes implementing new themes a bit easier.
2020-08-15 00:10:34 +03:00
OverloadedOrama 79bd015c19 Put top menu & ruler styles inside the themes
Instead of using stylebox files.
2020-08-14 00:22:49 +03:00
OverloadedOrama 65828b328a Change window titles in image effect dialogs 2020-08-04 19:10:50 +03:00
OverloadedOrama db606a5051 Added a dark texture for the restore to default button
For light & caramel themes
2020-07-29 03:36:19 +03:00
OverloadedOrama 051f3df147 Buttons to reset preferences to default
Similar functionality with Godot's default buttons. The buttons currently aren't visible with the gold & light themes.
2020-07-29 03:16:02 +03:00
OverloadedOrama f88d201e1a Organized Preferences better
As a result, "General" no longer exists.
2020-07-29 01:54:15 +03:00
OverloadedOrama 740d7e237d Made Symmetry Guides have dotted lines
Just to make them different from regular Guides
2020-07-16 05:35:31 +03:00
OverloadedOrama 83916f8913 Fixed json crash and text issue in EditPalettePopup
Importing a non-palette json file no longer crashes the app. Enabled autowrap for a label in EditPalettePopup because some translated text were pushing the boundaries of the dialog window.
2020-06-05 01:40:21 +03:00
Manolis Papadeas 881e53dadc
Bring refactoring changes to master (#253)
* Refactoring image_menu_id_pressed method in Main.gd (#243)

* Refactoring image_menu_id_pressed method in Main.gd

I've moved the code from each "match" case into a seperate method to make it more readable.

Co-authored-by: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com>

* Refactoring Main.gd. Mostly cutting big methods into smaller ones. (#244)

* Refactoring Main.gd. Mostly cutting big methods into smaller one.

- Reduced size of _ready method in Main.gd
- Moved code from certain parts of old _ready method into seperate methods
- Fixed the translation bug related to CurrentFrame node in TopMenuContainer scene. The CurrentFrame node wasn't updating the language when I was changing language. I've also changed the translation file for this.
- Fixed Global.palette_option_button.selected related warning. Because of some unknown reasons, git didn't push completed line there.
- Moved code from file_menu_id_pressed and view_menu_id_pressed method in Main.gd to separate methods to make it more readable.

* Removed window_title changes from Main.tscn

Co-authored-by: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com>

* Fixed TextureRect images of the circle brushes in BrushesPopup

They all had the pixel brush image in their TextureRect

* Split code from PreferencesDialog.gd to HandleLanguages.gd

Also moved PreferencesDialog script & scene to src/Preferences. More Preferences code splitting will follow.

* Split theme related code from PreferencesDialog into HandleThemes.gd

* Moved shortcuts code from PreferencesDialog

* Created DrawingAlgos.gd and moved a lot of drawing code there

Moved code from Global.gd and Canvas.gd to DrawingAlgos.gd. Will also move the fill_gaps and draw_brush methods of Canvas.gd next. Maybe even refactor the inside of them a bit to make them easier to read.

* Connected "files_dropped" signal to a method

This lets the user drag and drop files into Pixelorama, while it runs, to open them. This doesn't work properly and will crash when it can't open the files. It will get merged into master soon.

* Renamed handle_running_pixelorama_with_arguments() to handle_loading_files()

handle_loading_files() is also used for _on_files_dropped()

* Moved draw_brush() and fill_gaps() from Canvas.gd to DrawingAlgos.gd

draw_brush() is currently very ugly and probably needs inside refactoring

* Removed coord clamping from fill_gaps()

This should make line making behave as expected when the mouse is outside of canvas boundaries

* Drawing is no longer limited by the canvas boundaries

his means that, if you have a brush largen than 1px, you can draw on the edges of the canvas. All pixels that are being drawn outside of the canvas will still have no effect.

* Use enums instead of strings for tools

This could be a slight increase in performance

* Fixed line making with Shift and don't let color picker pick colors outside of canvas

* Changed Global node variables to arrays for left/right

Instead of having 2 variables for left & right nodes, use an array instead. This will help with better looking code, automation and less repetitive code, as seen in ToolButtons.gd. Move related refactoring will follow.

* More Global left/right variables became Arrays

Global.update_left_custom_brush() and its right counterpart have also now become Global.update_custom_brush(mouse_button : int)

* Use Global.Mouse_Button instead of strings for comparison

This should be a slight increase in performance

* Refactoring perferences dialog (#251)

* Added ItemList to themes

* Language and theme checkboxes are now radio buttons

* Even more Global left/right variables became arrays

ColorAndToolOptions has now the same code for left and right tool options, with more similar refactoring coming soon to places like Canvas and DrawingAlgos

* Refactored Canvas.gd

* Refactored DrawingAlgos.draw_brush(), made draw_pixel() method

This also fixes alpha blending and lighting/darkening issues when drawing pixels with mirroring.

* Remove draw_pixel(), use draw_pixel_blended() instead

* Ignore warnings

I don't know what else to do about them, they seem trivial anyway

* Use enum instead of strings for Global.theme_type

Another potential small performance boost when changing themes.

* Use a new Layer class to handle layer information

This replaces the old Global.layers nested array mess, and makes the code easier to read and to understand.

* Fixed linked cel crash and layer naming

* Created a new Cel class, to handle cel information

Like the Layer class, it is used in place of Canvas.layers nested array mess. It hasn't been tested thoroughly yet, so there may be crashes.

* Fixed issue where if you moved a frame to the start (move left), it was invisible

* Added AnimationTag class

Replaces nested Global.animation_tags arrays. Also replaced array.duplicate(true) with looping through the array and creating a new class for each array element, because duplicate(true) does not create new classes, unfortunately, which was causing issues with undo/redo.

Co-authored-by: Igor Santarek <jegor377@gmail.com>
Co-authored-by: Kinwailo <lokinwai@gmail.com>
2020-06-02 20:00:18 +03:00
imgbot[bot] 9c7d5a148b
[ImgBot] Optimize images (#241)
*Total -- 89.49kb -> 57.70kb (35.52%)

/assets/graphics/icons/icon.png -- 1.00kb -> 0.44kb (55.7%)
/pixelorama/Brushes/Star/%star2.png -- 0.50kb -> 0.23kb (52.66%)
/pixelorama/Brushes/Star/%star4.png -- 0.50kb -> 0.24kb (52.16%)
/pixelorama/Brushes/Star/%star3.png -- 0.50kb -> 0.24kb (52.15%)
/pixelorama/Brushes/Star/%star1.png -- 0.50kb -> 0.24kb (52.05%)
/pixelorama/Brushes/Star/%star6.png -- 0.50kb -> 0.24kb (51.65%)
/pixelorama/Brushes/Star/%star5.png -- 0.50kb -> 0.24kb (51.55%)
/assets/graphics/brush_button.png -- 0.53kb -> 0.27kb (49.08%)
/assets/graphics/splash_screen/github_32px.png -- 1.53kb -> 0.78kb (48.95%)
/assets/graphics/dark_themes/misc/color_defaults.png -- 0.52kb -> 0.27kb (48.87%)
/assets/graphics/light_themes/misc/color_defaults.png -- 0.52kb -> 0.27kb (48.87%)
/assets/graphics/cursor_icons/rectselect_cursor.png -- 0.53kb -> 0.27kb (48.35%)
/assets/graphics/cursor_icons/cursor.png -- 0.53kb -> 0.28kb (47.53%)
/assets/graphics/light_themes/misc/color_switch.png -- 0.52kb -> 0.28kb (46.72%)
/assets/graphics/dark_themes/misc/color_switch.png -- 0.52kb -> 0.28kb (46.53%)
/assets/graphics/cursor_icons/eraser_cursor.png -- 0.55kb -> 0.31kb (44.52%)
/assets/graphics/cursor_icons/pencil_cursor.png -- 0.55kb -> 0.31kb (44.17%)
/pixelorama/Patterns/Light_Blue_Texture.png -- 7.77kb -> 4.41kb (43.25%)
/assets/graphics/cursor_icons/colorpicker_cursor.png -- 0.57kb -> 0.33kb (42.69%)
/assets/graphics/cursor_icons/lightendarken_cursor.png -- 0.57kb -> 0.33kb (42.37%)
/assets/graphics/cursor_icons/bucket_cursor.png -- 0.59kb -> 0.34kb (42.26%)
/pixelorama/Patterns/Ground_leaves.png -- 8.25kb -> 4.82kb (41.55%)
/pixelorama/Patterns/Purple_Texture.png -- 8.25kb -> 4.82kb (41.55%)
/pixelorama/Patterns/small_stonebricks.png -- 1.00kb -> 0.63kb (37.1%)
/assets/graphics/splash_screen/splash_screen_image_v0.7.png -- 31.99kb -> 21.32kb (33.36%)
/pixelorama/Patterns/wooden_planks_2.png -- 7.24kb -> 5.01kb (30.78%)
/pixelorama/Patterns/Brick.png -- 0.89kb -> 0.64kb (28.62%)
/pixelorama/Patterns/Wooden_planks_1.png -- 6.08kb -> 4.43kb (27.09%)
/pixelorama/Patterns/White_Marble.png -- 0.78kb -> 0.62kb (20.75%)
/assets/graphics/splash_screen/orama_64x64.png -- 0.75kb -> 0.60kb (20.05%)
/pixelorama/Patterns/Metro_tile.png -- 2.22kb -> 2.11kb (5.14%)
/pixelorama/Patterns/Yellow_Marble.png -- 2.22kb -> 2.11kb (5.14%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>

Co-authored-by: ImgBotApp <ImgBotHelp@gmail.com>
2020-05-21 23:18:09 +03:00
Igor Santarek eb47d24df3
New remove current palette feature (#239)
* New remove current palette feature

This commit adds new feature to Pixelorama that will allow user to remove the current selected palette.

* Fixed grammar and added focus_mode = 0 on the remove palette button

Co-authored-by: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com>
2020-05-20 00:35:48 +03:00
OverloadedOrama d0825495d1 v0.7 - The Timeline Update! 2020-05-16 14:48:13 +03:00
OverloadedOrama 528b444101 Changed icon 2020-05-15 22:07:07 +03:00
OverloadedOrama ea52b7b129 Updated changelog link in Main.gd 2020-05-15 20:49:48 +03:00
OverloadedOrama a3ec615b0a Updated splash screen - Added Wishdream's art
Congratulations to Wishdream for being the winner of the first splash screen art contest in our Discord server.
2020-05-15 16:20:23 +03:00
OverloadedOrama 7361e01b1d Added forgotten translations, bumped version to rc3 and small dialog UI changes 2020-05-11 20:07:16 +03:00
OverloadedOrama 4a0a4617ff Changed dark theme's hbox separation to 4
That should make the timeline have consistent spacings across all themes
2020-05-08 18:46:57 +03:00
OverloadedOrama 1873945e9f Renamed Gold theme to Caramel 2020-05-06 22:01:58 +03:00
OverloadedOrama 79bcb01787 Added a spinbox updown icon for the dark, gray, light and gold themes 2020-05-06 21:54:08 +03:00
OverloadedOrama 03683cc157 Changed PopupMenu accel font color for gold theme, separation for light & blue themes 2020-05-06 19:04:10 +03:00
Erevos 5645b2591e
Some final theme fixes (#229)
Co-authored-by: Erevoid <Erevoid@users.noreply.github.com>
2020-05-06 18:34:57 +03:00
OverloadedOrama 85ffd389be Renamed "Godot" theme to Blue 2020-05-06 16:16:39 +03:00
OverloadedOrama 748171d4f2 Added tool textures for the blue theme 2020-05-06 15:56:44 +03:00
OverloadedOrama 9ce7bae2f9 Updated changelog in SplashDialog and made it a bit bigger 2020-05-06 02:21:42 +03:00
OverloadedOrama 3c39e28d72 Change selected frame label color based on theme 2020-05-06 01:36:14 +03:00
OverloadedOrama f99b486919 Made the fake grabber change texture based on theme & other small UI changes 2020-05-06 01:19:09 +03:00
OverloadedOrama c1602ad26a Big UI overhaul - added PanelContainers to group similar elements
Removed separators entirely. Also made the AnimationTimeline have a StyleBoxFlat of its own, which we use to expand its margin top to cover the little space left because of the VSplitContainer. We also use a TextureRect as a fake VSplitContainer grabber.
2020-05-06 00:55:17 +03:00
Manolis Papadeas 1ad1ecb960
Asset renaming (#225)
* Renamed the Asset folder and subfolders to lowercase

* Fixed font loading issue

Co-authored-by: OverloadedOrama <manoschool@yahoo.com>
2020-05-05 03:53:58 +03:00