39 lines
1.6 KiB
GDScript
39 lines
1.6 KiB
GDScript
@tool
|
||
extends Window
|
||
|
||
var preview:TextureRect
|
||
|
||
var main:EditorPlugin
|
||
|
||
func start():
|
||
if not Engine.is_editor_hint(): queue_free(); return
|
||
$"VBoxContainer/HBoxContainer/VBoxContainer/image picker".pressed.connect(_image_picker)
|
||
$"VBoxContainer/HBoxContainer/VBoxContainer/stretch mode".item_selected.connect(main.change_setting.bind("stretch"))
|
||
$"VBoxContainer/HBoxContainer/VBoxContainer/filter mode".item_selected.connect(main.change_setting.bind("filter"))
|
||
#$HBoxContainer/VBoxContainer2/ui_alpha.value_changed.connect(main.change_setting.bind("ui_alpha")) # too laggy
|
||
$VBoxContainer/HBoxContainer/VBoxContainer2/ui_color.popup_closed.connect(main.change_setting.bind(null, "ui_color"))
|
||
$VBoxContainer/HBoxContainer/VBoxContainer2/bg_modulate.color_changed.connect(main.change_setting.bind("bg_modulate"))
|
||
$VBoxContainer/edit_transparency.toggled.connect(main.change_setting.bind("edit_transparency"))
|
||
close_requested.connect(close)
|
||
preview = $VBoxContainer/PanelContainer/TextureRect # thank you onready
|
||
main.load_settings()
|
||
|
||
func _input(event):
|
||
if event.is_action_pressed("ui_cancel"):
|
||
close()
|
||
|
||
func close():
|
||
main.save_settings()
|
||
queue_free()
|
||
|
||
func _image_picker():
|
||
var picker := EditorFileDialog.new()
|
||
picker.close_requested.connect(queue_free)
|
||
picker.file_selected.connect(main.change_setting.bind("image"))
|
||
picker.size = Vector2(700, 500)
|
||
picker.access = EditorFileDialog.ACCESS_FILESYSTEM
|
||
picker.file_mode = EditorFileDialog.FILE_MODE_OPEN_FILE
|
||
picker.filters = ["*.bmp, *.dds, *.exr, *.hdr, *.jpg, *.jpeg, *.png, *.tga, *.svg, *.svgz, *.webp; Supported Images"]
|
||
add_child(picker)
|
||
picker.popup_centered()
|