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

Updated remove button to be disabled for default palettes

This commit is contained in:
CheetoHead 2019-12-16 10:48:23 -05:00
parent 5ba89fddbd
commit 388352467b
3 changed files with 32 additions and 46 deletions

File diff suppressed because one or more lines are too long

View file

@ -21,15 +21,22 @@ func on_palette_select(palette_name : String) -> void:
_clear_swatches() _clear_swatches()
if Global.palettes.has(palette_name): #Palette exists in memory if Global.palettes.has(palette_name): #Palette exists in memory
current_palette = palette_name current_palette = palette_name
_display_palette(Global.palettes[palette_name]) var palette : Dictionary = Global.palettes[palette_name]
Global.remove_palette_button.disabled = true # Cannot remove by default
if(palette.has("editable")):
if(palette.editable):
Global.remove_palette_button.disabled = false # Can remove if custom palette
_display_palette(palette)
else: #Use default on fail else: #Use default on fail
current_palette = "Default" current_palette = "Default"
_display_palette(Global.palettes["Default"]) _display_palette(Global.palettes["Default"])
func _display_palette(palette : Array) -> void: func _display_palette(palette : Dictionary) -> void:
var index := 0 var index := 0
for color_data in palette: for color_data in palette.colors:
var color = Color(color_data.data) var color = Color(color_data.data)
var new_button = palette_button.instance() var new_button = palette_button.instance()
@ -41,7 +48,7 @@ func _display_palette(palette : Array) -> void:
index += 1 index += 1
func on_color_select(index : int) -> void: func on_color_select(index : int) -> void:
var color = Color(Global.palettes[current_palette][index].data) var color = Color(Global.palettes[current_palette].colors[index].data)
if Input.is_action_just_released("left_mouse"): if Input.is_action_just_released("left_mouse"):
Global.left_color_picker.color = color Global.left_color_picker.color = color
@ -104,22 +111,17 @@ func load_palette(path : String) -> String:
var data = result_json.result var data = result_json.result
if data.has("name"): #If data is 'valid' palette file if data.has("name"): #If data is 'valid' palette file
palette_name = data.name palette_name = data.name
Global.palettes[data.name] = data.colors Global.palettes[data.name] = data
file.close() file.close()
return palette_name return palette_name
func _save_palette(palette : Array, name : String, path : String) -> void: func _save_palette(palette : Dictionary, name : String, path : String) -> void:
# Open file for writing # Open file for writing
var file := File.new() var file := File.new()
file.open(path, File.WRITE) file.open(path, File.WRITE)
# Create palette data
var data := {}
data.name = name
data.colors = palette
# Write palette data to file # Write palette data to file
file.store_string(JSON.print(data)) file.store_string(JSON.print(palette))
file.close() file.close()

View file

@ -33,7 +33,6 @@ _global_script_class_icons={
[application] [application]
config/name="Pixelorama" config/name="Pixelorama"
config/description="A free & open-source 2D sprite editor"
run/main_scene="res://Main.tscn" run/main_scene="res://Main.tscn"
boot_splash/image="res://splash.png" boot_splash/image="res://splash.png"
boot_splash/bg_color=Color( 0.145098, 0.145098, 0.164706, 1 ) boot_splash/bg_color=Color( 0.145098, 0.145098, 0.164706, 1 )
@ -188,7 +187,7 @@ shift={
[locale] [locale]
translations=PoolStringArray( "res://Translations/#Translations.en.translation", "res://Translations/#Translations.el.translation", "res://Translations/#Translations.fr.translation", "res://Translations/#Translations.de.translation", "res://Translations/#Translations.pl.translation" ) translations=PoolStringArray( "res://Translations/#Translations.en.translation", "res://Translations/#Translations.el.translation", "res://Translations/#Translations.fr.translation", "res://Translations/#Translations.de.translation" )
locale_filter=[ 0, [ ] ] locale_filter=[ 0, [ ] ]
[rendering] [rendering]