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

179 commits

Author SHA1 Message Date
OverloadedOrama 1e5c674673 Fixed spacing between some comments 2020-03-09 02:17:49 +02:00
OverloadedOrama 6b73c59a8f Removed some commented code 2020-03-08 22:12:18 +02:00
OverloadedOrama b9b0d3e1b3 Small UI improvement - The visibility icon will remain in a fixed place no matter how long the layer name is. 2020-03-08 21:57:22 +02:00
OverloadedOrama 0619d0e1ad Opening and saving .pxo file should now work
This should be all of the functionality restored. This commit makes the branch stable, in theory.
2020-03-07 16:43:28 +02:00
OverloadedOrama 4969978f46 Fix issue with frame moving and current_frame not changing
This bug actually originates from before the timeline remake and can be found in v0.6.2 and potentially earlier versions.
2020-03-07 16:43:27 +02:00
OverloadedOrama 2a5dfa7ea2 The selected cel (?) is now pressed, based on current layer and frame
All the other buttons are pressed = false. Also removed some legacy code.
2020-03-07 16:43:26 +02:00
OverloadedOrama 87629fdf2f The selected layer's buttons are now pressed
The unselected layers's buttons are pressed = false
2020-03-07 16:43:26 +02:00
OverloadedOrama 120e47d0f9 Add/remove/move frames should now work
With Undo/Redo. Cloning frames doesn't work yet, will fix shortly.
2020-03-07 16:43:25 +02:00
OverloadedOrama 98e6b0f56b Fix move up/down and merge layers not de-activating when there's only one layer left 2020-03-07 16:43:25 +02:00
OverloadedOrama 4e31c1ed4b Changing layer order works again
Started using a setter method for Global.current_layer
2020-03-07 16:43:24 +02:00
OverloadedOrama 0945a558d2 Fix layer name change
Name change is now saved only if the user presses Enter
2020-03-07 16:43:22 +02:00
OverloadedOrama 60aed9efba Use setter method for layers to update the UI
Instead of updating it in undo and redo methods
2020-03-07 16:43:22 +02:00
OverloadedOrama 2bfae68755 Implemented Remove Layer - Doesn't work properly yet 2020-03-07 16:43:21 +02:00
OverloadedOrama a2893e1c1c Store layer visibility on Global.layers instead
This way, toggling visibility in a layers works for all frames in that layer.
2020-03-07 16:43:19 +02:00
OverloadedOrama 3df9853dda Update the button textures accordingly
Every button will have a texture based on its frame AND its layer. Which means, if the button is on layer 2 and frame 1, its texture will be the contents of frame 1's layer 2 contents.
2020-03-07 16:43:18 +02:00
OverloadedOrama 7d7eccb03f Fixed issues with scrolling
No longer using a GridContainer for the layer and frames.
2020-03-07 16:43:17 +02:00
OverloadedOrama 953d002d91 [EXPERIMENTAL] Re-making the timeline
Trying to merge layers into the timeline, and eventually add more features like "share layer with all frames", among others. THIS IS NOT FINISHED, IT WILL *NOT* WORK PROPERLY. Once it is finished, this branch will be merged onto master.

So far only add layer and add frame work, and even they may have some issues. Undoing also does not work properly yet.

The UI is also not finished, as it currently has problems with the scroll containers.
2020-03-07 16:43:17 +02:00
OverloadedOrama b3a8eb6d84 Notification theme is now the same as the selected theme
This makes the letters black on the light and gold themes, and fixes the characters not being rendered issue in Chinese.
2020-03-01 17:56:34 +02:00
OverloadedOrama 40d1da66c8 Add "(*)" to the window title when file is not saved 2020-02-22 17:32:16 +02:00
OverloadedOrama eab3669eb2 Use new window_title variable to change window's title
Will be used later to get the current window title. Godot doesn't seem to have a built-in way to get the window's title.
2020-02-22 17:21:52 +02:00
OverloadedOrama 52fa460876 Saved is false after any action and is true at the beginning
Also hide QuitDialog after saving
2020-02-22 17:14:32 +02:00
Schweini07 3ea3bd7b40
Ask for Confirmation when Pixelorama is about to quit and the Sprite is unsaved (#165) 2020-02-22 17:02:56 +02:00
Michael Alexsander 0a9da7422d Add option to hide the animation timeline 2020-02-14 22:30:40 -03:00
OverloadedOrama 543e9d9008 Hide pressure sensitivity settings
Due to complications and priority shifts, tablet pen pressure sensitivity will not be included in v0.6.2
2020-02-14 18:26:03 +02:00
OverloadedOrama f3759d677e Load the image of the cursor once
This should fix some rare crashes as well
2020-02-12 00:38:35 +02:00
OverloadedOrama 8ff917111c Changes to better follow GDScript style guide
Nothing new is being added in this commit, just code re-ordering & re-naming to better follow the recommended GDScript style guide.
http://docs.godotengine.org/en/3.2/getting_started/scripting/gdscript/gdscript_styleguide.html

And

https://www.gdquest.com/docs/guidelines/best-practices/godot-gdscript/
2020-02-11 00:06:24 +02:00
OverloadedOrama a6d129526c Fixed issue where Brushes and Palettes wouldn't load if you opened Pixelorama from a file
It now uses "OS.get_executable_path().get_base_dir()" to find the root directory of Pixelorama, instead of just "."
2020-02-10 01:23:33 +02:00
OverloadedOrama 9e7a3059f2 Opening .pxo files directly with Pixelorama is now also supported
Also added "-> void" to the methods that did not already have it
2020-02-09 18:06:03 +02:00
OverloadedOrama f28a3a4405 Basic tablet pen pressure sensitivity, brush alpha now gets blended
Instead of replacing the pixels with the new color's alpha value, the alpha values of the selected color and the current pixel color get blended together. This means that, if you have a pixel with 50% alpha and you draw a color over it with 25% alpha, the final result will have 75% alpha, instead of 25% as it used to be.

The pressure sensitivity is still experimental and may not work properly. Works only with Godot 3.2 and above.

draw_pixel() has also been renamed to draw_brush()
2020-02-09 01:34:37 +02:00
OverloadedOrama e677824f48 Added smooth zooming
Camera zooming with the help of a Tween node, toggle-able in the Preferences
2020-02-07 03:27:11 +02:00
OverloadedOrama 155b77b514 Moved Rotate Image selection up, fixed some warnings
And minor UI changes, like changing default cursor shape to pointing hand when hovering on some UI elements in RotateImage.tscn
2020-02-04 18:29:34 +02:00
azagaya a9a647a7ee Fixed bugs detected by overloaded
One bug was that rotxel was used at the end, no matter what algorithm was chosen.
The other was that rotxel was taking into account a image of width x width dimensions.
2020-02-04 12:59:06 -03:00
azagaya d1ef71ceee Added nearest neighbour rotation 2020-02-03 13:55:55 -03:00
azagaya 8fd8a9db08 Added functions to rotate image, and added gui for the same purpose 2020-01-26 19:50:40 -03:00
OverloadedOrama 1353db92d1 Don't execute Canvas' _input() method if it's not the selected frame
Canvas.gd's _input() method returns when the canvas' frame is not the currently selected frame. Saves a little bit of performance and fixes some issues like the line angles of ALL frames being drawn, and might fix some crashes I had with motion drawing and undo/redoing.
2020-01-15 22:47:56 +02:00
OverloadedOrama 7a3f3eb4f9 Made AnimationTimeline a scene of its own 2020-01-15 22:01:43 +02:00
OverloadedOrama 24480ede6f Made the cursor tool icons visible by default 2020-01-13 13:26:06 +02:00
henlo-birb 6fa41000ed added option to hide tool icons next to cursor 2020-01-12 20:41:17 -05:00
OverloadedOrama 50fa262a75 Put default image width and height to 64, made minor changes in the About dialog and in the Chinese translation 2020-01-11 00:29:29 +02:00
Manolis Papadeas 8b4c42a576
Merge pull request #118 from Gaarco/master
Add preference options for the Image: default width, default height, default fill color and their translation strings
2020-01-11 00:21:35 +02:00
OverloadedOrama 5cce9d3180 Changes to the tool options UI
New option for the color picker tool (closes #115 - also includes new translatable strings), VSplitContainer for the tools and their options and a ScrollContainer for the tool options.
2020-01-10 22:44:29 +02:00
Marco 5e49c3eae8 Fix 2020-01-10 20:32:31 +01:00
Marco 7b0251fdfa Image preferences and its translations 2020-01-10 20:24:07 +01:00
Marco cd3814736d Image preferences 2020-01-10 09:06:03 +01:00
OverloadedOrama f57ea4d64f Made "TimelineSeconds" update when FPS value changes
Also made it a bit smaller
2020-01-04 04:16:50 +02:00
OverloadedOrama d42648efe1 Added a Splash Screen popup window
Re-organized transparent backgrounds, removed the Timer from Canvas nodes.
2019-12-31 18:04:00 +02:00
OverloadedOrama ff47ae26c0 Small UI changes 2019-12-31 03:02:53 +02:00
OverloadedOrama 9ba5f6b023 Removed the Remove Palette button
Users can now just delete the .json files if they want to remove a palette.
2019-12-30 20:29:46 +02:00
OverloadedOrama d1e5b23f0b Importing spritesheets is now possible
Moved the import png code from Main.gd to a new ImportSprites.gd script, and made ImportSprites a scene of its own.
2019-12-28 18:35:53 +02:00
OverloadedOrama 87d6d6140b When exporting a png, "Export PNG..." becomes "Export (filename)"
Also updated the translations to simply translate "export". Feel free to fix anything I may did wrong.
2019-12-28 03:07:48 +02:00
OverloadedOrama 5ea4835bb2 Canvas update() is called when undoing and redoing
Also changed "Black & White" to "Desaturation"
2019-12-28 00:57:28 +02:00
OverloadedOrama d6a199c53f Added a new brush type - Filled Circle
Filled Circle brush is just like the Circle brush, but filled. Issue is, when drawing while moving the mouse, some pixels remain unfilled.

Also added some more file brushes.
2019-12-27 22:02:47 +02:00
OverloadedOrama f81ef37e92 Added guide color in Preferences 2019-12-27 02:28:36 +02:00
OverloadedOrama 0c664a34be Fixes #51 2019-12-27 00:04:58 +02:00
OverloadedOrama 3a20b3e073 Added a new brush type - Random Brushes
They're like File brushes, but each time you draw, expect to see something different!

To make a random brush, just put the images you want in the same folder (under the main Brushes folder of course), and make sure their filename starts with "%".

I also changed _process() to _input() in Canvas.gd, so there may be some unexpected behavior.
2019-12-26 21:36:56 +02:00
OverloadedOrama 4a2c0eb291 Added sliders next to spinboxes for the brush color from & LightenDarken amount 2019-12-25 21:42:01 +02:00
OverloadedOrama d4b42534bb Added sliders for brush size & 2 new custom brushes
Also, in Canvas.gd's _draw() method, draw_set_transform() is called again after the circle brush drawings, to reset the transform to its default state.
2019-12-25 21:17:29 +02:00
OverloadedOrama 06e0d74c14 Added proper circle brush - Bresenham's Circle Algorithm
The circle's radius is the brush's size. Respects image/selection boundaries, works with mirror. A special plot_circle() method is found on Global, to calculate the rectangles used by the mouse cursor/position indicator.
2019-12-25 20:27:25 +02:00
Martin Zabinski 7d93e4c076
Fix wrong type to run with Godot 3.2 beta 2019-12-25 03:22:15 +01:00
OverloadedOrama ba4ee3418d Enchanced Layer Opacity UI- Added Spinbox next to Slider 2019-12-25 00:23:45 +02:00
OverloadedOrama ed2e757c11 Layer Opacity - Change alpha of each layer
Added a slider under the layer add/remove/etc buttons that changes the currently selected layer's transparency. It gets saved in .png and .pxo files, while respecting non-opaque pixels in the image too. Which means, their alpha values aren't being overwritten.
2019-12-24 23:51:08 +02:00
OverloadedOrama ea97ec85f8 Added outline generation, under new "Image" menu
You can currently change outline color & thickness
2019-12-24 16:48:07 +02:00
OverloadedOrama 1f2d8406c2 Text under frames and TimelineSeconds color change on different themes 2019-12-24 04:37:17 +02:00
OverloadedOrama bfd64a6b84 Re-organized the right panel, fixed spaces in palette buttons, made AddPalette a TextureButton 2019-12-24 04:28:45 +02:00
OverloadedOrama f4a62f227f Changed transparent background and default clear color for Godot's theme 2019-12-21 05:03:57 +02:00
OverloadedOrama c6ded721d1 Canvas transparent background changes on dark & gold themes
It's also in Global.gd instead of Canvas.gd
2019-12-21 04:56:48 +02:00
OverloadedOrama 8058cf2f55 Button textures change based on their filename and not their node name
Restored layer nodes back to their previous names
2019-12-21 03:27:11 +02:00
OverloadedOrama 23b83c8864 Asset re-organization, added light theme button textures
Most haven't been implemented yet, this commit just adds files
2019-12-21 03:17:37 +02:00
OverloadedOrama f08d6c8708 Layer buttons change depending on theme
2 theme types, dark and light. 2 types of graphics for the layer buttons for each theme type.
2019-12-21 03:02:57 +02:00
OverloadedOrama c3e75496d6 Theme preferences now get saved in the config_cache file 2019-12-20 16:36:23 +02:00
OverloadedOrama 3cf44a6d55 Created basic theme changing under Preferences
Also fixed bug where Global.can_draw wasn't being set to true after PreferencesDialog was hidden
2019-12-19 01:18:57 +02:00
OverloadedOrama 432c9690ff PreferencesDialog is now a scene of its own
We should change the organization of the project, and use multiple saved scenes instead of everything being on Main.tscn.
Also restored "X" as a shortcut for color switch, because that somehow got lost.
2019-12-18 18:12:44 +02:00
CheetoHead 9a65960994 Import palette file dialog added 2019-12-18 09:43:11 -05:00
CheetoHead 18b9480a00 Merge branch 'master' into palette_updates 2019-12-17 19:49:28 -05:00
CheetoHead 3191e3f8c8 Add new palette updates 1 2019-12-17 19:49:20 -05:00
OverloadedOrama 6220ad82bc Frame number labels change color when selected 2019-12-18 00:53:06 +02:00
Overloaded 329099fed4
Merge branch 'master' into palette_updates 2019-12-17 04:07:44 +02:00
OverloadedOrama c9071f30eb Changed brush color interpolation and LightenDarken amount's range from 0-100, instead of 0-1 2019-12-17 04:01:38 +02:00
CheetoHead b094c6595f Added edit palette menu and custom file saving 2019-12-16 20:23:18 -05:00
OverloadedOrama 6c14a7d5e2 Fixed issue where the brush type select popup window chose brush type for the right tool instead of the left 2019-12-16 02:02:49 +02:00
OverloadedOrama f3ab5960ba Imported German translation in the Project Settings 2019-12-15 13:44:53 +02:00
CheetoHead 51e26f6efa Loading palettes from json file in user folder 2019-12-14 22:11:32 -05:00
OverloadedOrama a4b7fe2205 Implemented a fix for UndoRedo leak (#34) - Thanks to qarmin! 2019-12-13 00:19:28 +02:00
OverloadedOrama 1bd8ec4ae0 Added 2 small sprites below the cursor for the selected tools
Instead of having a tool icon as a cursor for the left tool only
2019-12-10 19:56:16 +02:00
OverloadedOrama bf4052ad84 Full Greek support and minor UI changes
Everything should now be translated in Greek. Will update if I have forgotten anything. Also made some changes to the layer and frame button colors and layer position.
2019-12-08 03:12:34 +02:00
OverloadedOrama d81d7ee5ef Grid size and color in preferences, update_texture optimization
- Added grid size and color in preferences
- Canvas' update_texture() updates the frame button's texture only when the user releases a mouse button. This should optimize drawing in large images.
- Cursor is no longer invisible inside the canvas
- Minor UI changes
- Added some more translations. This is going to be a common thing in commits from now on.
2019-12-07 19:34:54 +02:00
OverloadedOrama 5613c3d7ef Overall code re-organizing & layer renaming changes
- When renaming a layer, the line edit grabs the focus. If enter is pressed, it gets invisible. Also fixed positioning and size
- Re-organized the variables in Global, now they are less messy and randomly placed
- Layer, frame & brush textures stretch mode has been changed to Keep Aspect Centered
2019-12-06 01:48:29 +02:00
OverloadedOrama 340af88eb4 Added a mini-canvas preview window 2019-12-05 16:49:27 +02:00
OverloadedOrama 5f72e970c6 Added a custom color picker tool, which allows you to select a color from the canvas 2019-12-04 17:22:21 +02:00
OverloadedOrama dd60f0fc7e Added lighten/darken option and amount for the LightenDarken tool
You don't use Ctrl anymore to switch between Lighten and Darken
2019-12-04 01:01:37 +02:00
OverloadedOrama 700f287edc Added fill area option for the bucket tool - this restores the old "paint all pixels of the same color" tool's functionality 2019-12-04 00:14:14 +02:00
OverloadedOrama 9102614a0c Tool options now hide and appear depending on selected tool
More tool options for the other tools, like bucket, should come soon. The PaintAllPixelsSameColor tool has been removed, as it will be implemented as an option for the bucket tool.
2019-12-03 18:36:28 +02:00
OverloadedOrama 70bd1dde43 Added show rulers & guides in the View menu 2019-12-03 02:30:38 +02:00
OverloadedOrama 5ffd0ecf6a "Brush color from" now invisible when pixel brush is selected 2019-12-03 00:25:22 +02:00
OverloadedOrama a2fdf7c4a5 Changed split screen button icon 2019-12-02 02:04:46 +02:00
OverloadedOrama 3312b8064f Removed left and right brush arrows
- Removed left and right brush arrow indicators completely.
- Fixed bug when removing custom project brushes.
2019-11-30 02:45:45 +02:00
OverloadedOrama 4721a01f2e More UI changes
- Left tool options is now on top of the right tool options.
- Brushes have been removed from the right panel, and have instead become a popup that appears when you press one of the brush type buttons, to choose a brush. The indicators will be removed.
2019-11-30 00:41:34 +02:00
OverloadedOrama 8132c8dcc5 Added hint_tooltip to file brushes
- File brushes now have their file name as their hint_tooltip.
- Changed horizontal & vertical ruler minor_subdivision to 4.
2019-11-25 18:56:53 +02:00
OverloadedOrama e940029979 Fixed crash when choosing "no loop" after looping with 1 frame
Before this commit, if you had one frame in the timeline and clicked the loop button until it went back to no loop WHILE the animation was playing, Pixelorama would crash. Now, if you're left with only one frame, Pixelorama will stop animating. Also updated the loop button's hint tooltip.
2019-11-24 00:52:17 +02:00
OverloadedOrama 224316256c Added guides
- Added horizontal & vertical guides which can be dragged from their respective rulers
- Fixed bug when opening and importing files
2019-11-21 00:11:21 +02:00