68 lines
2 KiB
GDScript
68 lines
2 KiB
GDScript
extends Control
|
|
|
|
var following = false
|
|
var dragging_start_position : Vector2i = Vector2i()
|
|
@export var options_menu : PopupMenu
|
|
|
|
func _on_TitleBar_gui_input(event):
|
|
if event is InputEventMouseButton:
|
|
#print(event)
|
|
if event.get_button_index() == 1:
|
|
following = !following
|
|
dragging_start_position = get_local_mouse_position()
|
|
if event.get_button_index() == 2:
|
|
open_menu()
|
|
|
|
func _process(_delta):
|
|
if following:
|
|
get_window().position = get_window().position + Vector2i(get_global_mouse_position()) - dragging_start_position
|
|
#OS.set_window_position(OS.window_position + get_global_mouse_position() - dragging_start_position)
|
|
#if (Input.is_action_just_pressed("ui_up")):
|
|
#get_window().size += Vector2i(100,90)
|
|
#print(DisplayServer.window_get_mode())
|
|
if(DisplayServer.window_get_mode() == 1): #prevent program from being minimised
|
|
#print("T_T")
|
|
DisplayServer.window_set_mode(0)
|
|
#get_window().request_attention()
|
|
get_window().grab_focus()
|
|
|
|
|
|
func open_menu():
|
|
options_menu.show()
|
|
|
|
#
|
|
#func _on_CloseButton_pressed():
|
|
#get_tree().quit()
|
|
|
|
|
|
#func _on_MinimizeButton_pressed():
|
|
|
|
|
|
|
|
|
|
|
|
func _on_popup_menu_id_pressed(id: int) -> void:
|
|
if id == 2:
|
|
get_window().size = Vector2i(200,180)
|
|
options_menu.set_item_checked(2, false)
|
|
options_menu.set_item_checked(3, true)
|
|
options_menu.set_item_checked(4, false)
|
|
options_menu.set_item_checked(5, false)
|
|
elif id == 3:
|
|
get_window().size = Vector2i(300,270)
|
|
options_menu.set_item_checked(2, false)
|
|
options_menu.set_item_checked(3, false)
|
|
options_menu.set_item_checked(4, true)
|
|
options_menu.set_item_checked(5, false)
|
|
elif id == 4:
|
|
get_window().size = Vector2i(400,360)
|
|
options_menu.set_item_checked(2, false)
|
|
options_menu.set_item_checked(3, false)
|
|
options_menu.set_item_checked(4, false)
|
|
options_menu.set_item_checked(5, true)
|
|
elif id == 5:
|
|
get_window().size = Vector2i(150,135)
|
|
options_menu.set_item_checked(2, true)
|
|
options_menu.set_item_checked(3, false)
|
|
options_menu.set_item_checked(4, false)
|
|
options_menu.set_item_checked(5, false)
|