mirror of
https://github.com/Orama-Interactive/Pixelorama.git
synced 2025-02-22 05:23:14 +00:00
New image now creates a new tab/project
This commit is contained in:
parent
ae381a8714
commit
60126e46d3
2 changed files with 10 additions and 26 deletions
18
src/Main.gd
18
src/Main.gd
|
@ -4,7 +4,6 @@ var opensprite_file_selected := false
|
||||||
var file_menu : PopupMenu
|
var file_menu : PopupMenu
|
||||||
var view_menu : PopupMenu
|
var view_menu : PopupMenu
|
||||||
var redone := false
|
var redone := false
|
||||||
var unsaved_canvas_state := 0
|
|
||||||
var is_quitting_on_save := false
|
var is_quitting_on_save := false
|
||||||
|
|
||||||
|
|
||||||
|
@ -241,11 +240,7 @@ func _on_files_dropped(_files : PoolStringArray, _screen : int) -> void:
|
||||||
handle_loading_files(_files)
|
handle_loading_files(_files)
|
||||||
|
|
||||||
|
|
||||||
func on_new_project_file_menu_option_pressed(id : int) -> void:
|
func on_new_project_file_menu_option_pressed() -> void:
|
||||||
if Global.current_project.has_changed:
|
|
||||||
unsaved_canvas_state = id
|
|
||||||
$UnsavedCanvasDialog.popup_centered()
|
|
||||||
else:
|
|
||||||
$CreateNewImage.popup_centered()
|
$CreateNewImage.popup_centered()
|
||||||
Global.dialog_open(true)
|
Global.dialog_open(true)
|
||||||
|
|
||||||
|
@ -256,11 +251,10 @@ func open_project_file() -> void:
|
||||||
opensprite_file_selected = false
|
opensprite_file_selected = false
|
||||||
|
|
||||||
|
|
||||||
func on_open_last_project_file_menu_option_pressed(id : int) -> void:
|
func on_open_last_project_file_menu_option_pressed() -> void:
|
||||||
# Check if last project path is set and if yes then open
|
# Check if last project path is set and if yes then open
|
||||||
if Global.config_cache.has_section_key("preferences", "last_project_path"):
|
if Global.config_cache.has_section_key("preferences", "last_project_path"):
|
||||||
if Global.current_project.has_changed:
|
if Global.current_project.has_changed:
|
||||||
unsaved_canvas_state = id
|
|
||||||
$UnsavedCanvasDialog.popup_centered()
|
$UnsavedCanvasDialog.popup_centered()
|
||||||
Global.dialog_open(true)
|
Global.dialog_open(true)
|
||||||
else:
|
else:
|
||||||
|
@ -303,11 +297,11 @@ func export_file() -> void:
|
||||||
func file_menu_id_pressed(id : int) -> void:
|
func file_menu_id_pressed(id : int) -> void:
|
||||||
match id:
|
match id:
|
||||||
0: # New
|
0: # New
|
||||||
on_new_project_file_menu_option_pressed(id)
|
on_new_project_file_menu_option_pressed()
|
||||||
1: # Open
|
1: # Open
|
||||||
open_project_file()
|
open_project_file()
|
||||||
2: # Open last project
|
2: # Open last project
|
||||||
on_open_last_project_file_menu_option_pressed(id)
|
on_open_last_project_file_menu_option_pressed()
|
||||||
3: # Save
|
3: # Save
|
||||||
save_project_file()
|
save_project_file()
|
||||||
4: # Save as
|
4: # Save as
|
||||||
|
@ -555,10 +549,6 @@ func load_last_project() -> void:
|
||||||
|
|
||||||
|
|
||||||
func _on_UnsavedCanvasDialog_confirmed() -> void:
|
func _on_UnsavedCanvasDialog_confirmed() -> void:
|
||||||
if unsaved_canvas_state == 0: # New image
|
|
||||||
$CreateNewImage.popup_centered()
|
|
||||||
Global.dialog_open(true)
|
|
||||||
elif unsaved_canvas_state == 2: # Open last project
|
|
||||||
load_last_project()
|
load_last_project()
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -73,20 +73,14 @@ func _on_CreateNewImage_confirmed() -> void:
|
||||||
var width : int = width_value.value
|
var width : int = width_value.value
|
||||||
var height : int = height_value.value
|
var height : int = height_value.value
|
||||||
var fill_color : Color = fill_color_node.color
|
var fill_color : Color = fill_color_node.color
|
||||||
Global.clear_frames()
|
|
||||||
Global.current_project.layers.clear()
|
var frame : Frame = Global.canvas.new_empty_frame()
|
||||||
Global.current_project.layers.append(Layer.new())
|
Global.projects.append(Project.new([frame]))
|
||||||
|
Global.tabs.current_tab = Global.tabs.get_tab_count() - 1
|
||||||
Global.current_project.size = Vector2(width, height).floor()
|
Global.current_project.size = Vector2(width, height).floor()
|
||||||
Global.canvas.fill_color = fill_color
|
Global.canvas.fill_color = fill_color
|
||||||
var frame : Frame = Global.canvas.new_empty_frame()
|
|
||||||
Global.canvas.camera_zoom()
|
Global.canvas.camera_zoom()
|
||||||
Global.current_project.frames.append(frame)
|
|
||||||
|
|
||||||
Global.current_project.current_layer = 0
|
|
||||||
Global.current_project.frames = Global.current_project.frames # To trigger Global.frames_changed()
|
|
||||||
Global.current_project.current_frame = 0
|
|
||||||
Global.current_project.layers = Global.current_project.layers # To trigger Global.layers_changed()
|
|
||||||
Global.current_project.has_changed = false
|
|
||||||
if fill_color.a > 0:
|
if fill_color.a > 0:
|
||||||
Global.current_project.frames[0].cels[0].image.fill(fill_color)
|
Global.current_project.frames[0].cels[0].image.fill(fill_color)
|
||||||
Global.current_project.frames[0].cels[0].image.lock()
|
Global.current_project.frames[0].cels[0].image.lock()
|
||||||
|
|
Loading…
Add table
Reference in a new issue