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

95 commits

Author SHA1 Message Date
OverloadedOrama 6d87901056 Imported image files now open in an new tab
Keep in mind that opening an image file as a new frame might not work properly yet, if the target image has a different size.
2020-06-05 19:51:06 +03:00
OverloadedOrama b276999b12 Closing tabs is now possible 2020-06-05 17:50:52 +03:00
OverloadedOrama 60126e46d3 New image now creates a new tab/project 2020-06-05 04:30:50 +03:00
OverloadedOrama f9bd590d20 Moved size variable from Canvas.gd to Project.gd 2020-06-04 23:20:20 +03:00
OverloadedOrama 4e111a7ac0 Created a Projects class
A Project class contains project-specific data like name, undo_redo, frames, layers, tags and brushes. These variables have been moved from Global. This is the first step towards multiple tab support, where each tab will be a different Project.
2020-06-04 21:05:36 +03:00
OverloadedOrama 7371cd79e4 Fixed image effects
Also replaced flip_image_horizontal() and flip_image_vertical() with just flip_image()
2020-06-03 02:53:15 +03:00
OverloadedOrama 54b628f6cb Made a Frame class, no longer use multiple Canvases for multiple frames
The Canvas is now single node, instead of having multiple canvases for each frame. This should also be a performance optimization, since there are less canvas nodes, so there are less _input() calls. It should also fix a rare Undo/Redo issue with motion drawing and making lines. Could be unstable, needs more testing.

As a side effect, the guides are now the same for all frames, so this should also close #246.
2020-06-03 02:14:24 +03:00
Manolis Papadeas d8136a3e17
Merge branch 'master' into refactoring 2020-06-02 19:58:58 +03:00
OverloadedOrama df0032c515 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.
2020-06-01 18:50:31 +03:00
OverloadedOrama a9ca858303 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.
2020-06-01 16:42:53 +03:00
OverloadedOrama c538140de2 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.
2020-05-31 18:03:44 +03:00
OverloadedOrama 4fc2888b68 Removed coord clamping from fill_gaps()
This should make line making behave as expected when the mouse is outside of canvas boundaries
2020-05-31 00:42:35 +03:00
Hugo Locurcio 9a1f5bf5b8
Remove fallback for OS.min_window_size now that Godot 3.2 is out (#249)
The latest Pixelorama versions require Godot 3.2 to run.
2020-05-31 00:20:41 +03:00
OverloadedOrama c84c6a19d7 Renamed handle_running_pixelorama_with_arguments() to handle_loading_files()
handle_loading_files() is also used for _on_files_dropped()
2020-05-30 00:28:17 +03:00
OverloadedOrama ae89d3e291 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.
2020-05-29 20:19:22 +03:00
OverloadedOrama 379b574257 Split code from PreferencesDialog.gd to HandleLanguages.gd
Also moved PreferencesDialog script & scene to src/Preferences. More Preferences code splitting will follow.
2020-05-28 03:41:28 +03:00
Igor Santarek aae3ae0cf4
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>
2020-05-24 00:22:06 +03:00
Igor Santarek 852e249143
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>
2020-05-22 15:05:55 +03:00
OverloadedOrama 12c6118763 Created ToolButtons.gd, moved code from Main.gd there 2020-05-21 21:30:40 +03:00
OverloadedOrama d2539f44f0 Removed brush_selected signal 2020-05-21 20:33:00 +03:00
OverloadedOrama 55527501d0 Created TopMenuContainer.tscn and ViewportContainer.gd 2020-05-21 20:13:19 +03:00
OverloadedOrama 8e6516a4d4 Use error dialog for 2 more cases
NoProjectEditedOrCreatedAlertDialog and OpenLastProjectAlertDialog
2020-05-20 01:37:36 +03:00
OverloadedOrama 1e114d6f4f Created ColorAndToolOptions script and scene
Removed the tool option signals from Main.gd and put them to ColorAndToolOptions.gd. Instead of having 2 methods for left and right, they are now in one method, using a boolean to differentiate between left and right.
2020-05-20 00:57:07 +03:00
OverloadedOrama c1db72865f Revert c02cda6b10
Left tool shortcuts get ignored completely if we change is_action_pressed to is_action_released.
2020-05-20 00:51:41 +03:00
OverloadedOrama c02cda6b10 Made tool keyboard shortcuts fire on action release 2020-05-16 19:59:02 +03:00
OverloadedOrama ea52b7b129 Updated changelog link in Main.gd 2020-05-15 20:49:48 +03:00
OverloadedOrama 4a0ffd8cd4 Made "Crop Image" affect all frames 2020-05-11 18:41:41 +03:00
OverloadedOrama 358a95f709 Changed CameraMovement.fit_to_frame() to get a Vector2 as an argument for the canvas size
This fixes the issue when importing an image, not as a new frame, that did not get fitted to frame.
2020-05-11 16:33:44 +03:00
OverloadedOrama 62a695366a Toggled autosave on by default, and open last project off by default 2020-05-11 16:15:59 +03:00
OverloadedOrama b4ae097d14 Changed zoom fit to frame algorithm, again
Put the new code in a new fit_to_frame() method inside CameraMovement.gd. The old code did not work properly for images with width larger than their height.
2020-05-10 15:46:21 +03:00
OverloadedOrama 74c238b0f5 Added link to docs in the Help menu 2020-05-10 02:00:24 +03:00
OverloadedOrama 7484ce1b9e Added a Tween to make the background UI darker when a dialog is opened 2020-05-08 18:37:45 +03:00
OverloadedOrama 51b6aadbdd Makes the background UI darker when a dialog is being opened 2020-05-08 03:10:23 +03:00
OverloadedOrama 896d7e4aeb Updated changelog URL in Main.gd 2020-05-06 22:45:09 +03:00
OverloadedOrama 55e7178e1f Changing a button's texturerect child no longer requires the theme in its file path
Instead, it automatically finds its path, adds the new file name and loads the new texture.
2020-05-06 15:19:53 +03:00
OverloadedOrama 61fab1a7de [BREAKS COMPATIBILITY WITH GODOT <=3.1.1] Implemented Indonesian & Czech languages
Pixelorama now requires at least Godot 3.1.2 or 3.2.x to work, because TranslationServer.get_loaded_locales() was not included in older versions. If you're using an older version of Godot, please update. Godot 3.2.1 is the currently recommended version, until 3.2.2 is out.

Also updated the list of the translators.
2020-05-05 14:45:16 +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
OverloadedOrama 415db39e64 Changed tool TextureButtons into Buttons 2020-05-04 04:07:43 +03:00
OverloadedOrama a4014e5842 Pixelorama's version number now appears on the window title 2020-05-04 00:04:00 +03:00
OverloadedOrama 8b682570b2 If we have cmdline_args, ensure the images are opened last
This way, cmdline_args loading overwrites load_last_project()
2020-05-03 21:45:05 +03:00
OverloadedOrama 2ee4c541c9 Fixed tool texture loading 2020-05-03 13:39:20 +03:00
OverloadedOrama 9482b47825 Changed Palette and Layer TextureButtons into Buttons, massive asset renaming
Most asset filenames are now in snake_case
2020-05-03 03:13:08 +03:00
OverloadedOrama babd5759f8 Makes sure that BackupConfirmation dialog is properly centered
Moved yield(get_tree().create_timer(0.01), "timeout") in _ready() of Main.gd outside of the if, to affect the BackupConfirmation dialog too.
2020-05-02 18:10:01 +03:00
OverloadedOrama fe7e984432 Filenames of assets in "Tool Cursors" are now in snake_case 2020-05-02 01:41:50 +03:00
OverloadedOrama 646fc19a70 Merged "Scripts" and "Prefabs" folders into "src"
Made a new "src" folder that will contain the source code files, like all the GDScript and scene files. Please read this for more details: https://www.gdquest.com/docs/guidelines/best-practices/godot-gdscript/

It made no sense to keep scenes separate from their scripts. More file organizing will follow soon.
2020-05-01 22:17:05 +03:00
Renamed from Scripts/Main.gd (Browse further)