Skip to content

Commit 4af3876

Browse files
authored
Merge pull request #740 from voylin/FixWindowManagement4.0
Fix window management demo for 4.0
2 parents c9193d1 + f3f0ac4 commit 4af3876

File tree

3 files changed

+228
-267
lines changed

3 files changed

+228
-267
lines changed

misc/window_management/control.gd

Lines changed: 66 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ func _ready():
1111

1212

1313
func _physics_process(_delta):
14-
var modetext = "Mode:\n"
14+
var modetext = "Mode: "
1515
if DisplayServer.window_get_mode() == DisplayServer.WINDOW_MODE_FULLSCREEN:
1616
modetext += "Fullscreen\n"
1717
else:
@@ -24,43 +24,43 @@ func _physics_process(_delta):
2424
modetext += "Maximized\n"
2525
if Input.get_mouse_mode() == Input.MOUSE_MODE_CAPTURED:
2626
modetext += "MouseGrab\n"
27-
$Label_MouseModeCaptured_KeyInfo.show()
27+
$Buttons/Label_MouseModeCaptured_KeyInfo.show()
2828
else:
29-
$Label_MouseModeCaptured_KeyInfo.hide()
30-
31-
$Label_Mode.text = modetext
32-
$Label_Position.text = str("Position:\n", DisplayServer.window_get_position())
33-
$Label_Size.text = str("Size:\n", DisplayServer.window_get_size())
34-
$Label_MousePosition.text = str("Mouse Position:\n", mousepos)
35-
$Label_Screen_Count.text = str("Screen_Count:\n", DisplayServer.get_screen_count())
36-
$Label_Screen_Current.text = str("Screen:\n", DisplayServer.window_get_current_screen())
37-
$Label_Screen0_Resolution.text = str("Screen0 Resolution:\n", DisplayServer.screen_get_size())
38-
$Label_Screen0_Position.text = str("Screen0 Position:\n", DisplayServer.screen_get_position())
39-
$Label_Screen0_DPI.text = str("Screen0 DPI:\n", DisplayServer.screen_get_dpi())
29+
$Buttons/Label_MouseModeCaptured_KeyInfo.hide()
30+
31+
$Labels/Label_Mode.text = modetext
32+
$Labels/Label_Position.text = str("Position: ", DisplayServer.window_get_position())
33+
$Labels/Label_Size.text = str("Size: ", DisplayServer.window_get_size())
34+
$Labels/Label_MousePosition.text = str("Mouse Position: ", mousepos)
35+
$Labels/Label_Screen_Count.text = str("Screen_Count: ", DisplayServer.get_screen_count())
36+
$Labels/Label_Screen_Current.text = str("Screen: ", DisplayServer.window_get_current_screen())
37+
$Labels/Label_Screen0_Resolution.text = str("Screen0 Resolution:\n", DisplayServer.screen_get_size())
38+
$Labels/Label_Screen0_Position.text = str("Screen0 Position:\n", DisplayServer.screen_get_position())
39+
$Labels/Label_Screen0_DPI.text = str("Screen0 DPI: ", DisplayServer.screen_get_dpi())
4040

4141
if DisplayServer.get_screen_count() > 1:
42-
$Button_Screen0.show()
43-
$Button_Screen1.show()
44-
$Label_Screen1_Resolution.show()
45-
$Label_Screen1_Position.show()
46-
$Label_Screen1_DPI.show()
47-
$Label_Screen1_Resolution.text = str("Screen1 Resolution:\n", DisplayServer.window_get_size(1))
48-
$Label_Screen1_Position.text = str("Screen1 Position:\n", DisplayServer.screen_get_position(1))
49-
$Label_Screen1_DPI.text = str("Screen1 DPI:\n", DisplayServer.screen_get_dpi(1))
42+
$Buttons/Button_Screen0.show()
43+
$Buttons/Button_Screen1.show()
44+
$Labels/Label_Screen1_Resolution.show()
45+
$Labels/Label_Screen1_Position.show()
46+
$Labels/Label_Screen1_DPI.show()
47+
$Labels/Label_Screen1_Resolution.text = str("Screen1 Resolution:\n", DisplayServer.window_get_size(1))
48+
$Labels/Label_Screen1_Position.text = str("Screen1 Position:\n", DisplayServer.screen_get_position(1))
49+
$Labels/Label_Screen1_DPI.text = str("Screen1 DPI: ", DisplayServer.screen_get_dpi(1))
5050
else:
51-
$Button_Screen0.hide()
52-
$Button_Screen1.hide()
53-
$Label_Screen1_Resolution.hide()
54-
$Label_Screen1_Position.hide()
55-
$Label_Screen1_DPI.hide()
51+
$Buttons/Button_Screen0.hide()
52+
$Buttons/Button_Screen1.hide()
53+
$Labels/Label_Screen1_Resolution.hide()
54+
$Labels/Label_Screen1_Position.hide()
55+
$Labels/Label_Screen1_DPI.hide()
5656

57-
$Button_Fullscreen.set_pressed(DisplayServer.window_get_mode() == DisplayServer.WINDOW_MODE_FULLSCREEN)
58-
$Button_FixedSize.set_pressed(DisplayServer.window_get_flag(DisplayServer.WINDOW_FLAG_RESIZE_DISABLED))
59-
$Button_Minimized.set_pressed(DisplayServer.window_get_mode() == DisplayServer.WINDOW_MODE_MINIMIZED)
60-
$Button_Maximized.set_pressed(DisplayServer.window_get_mode() == DisplayServer.WINDOW_MODE_MAXIMIZED)
61-
$Button_MouseModeVisible.set_pressed(Input.get_mouse_mode() == Input.MOUSE_MODE_VISIBLE)
62-
$Button_MouseModeHidden.set_pressed(Input.get_mouse_mode() == Input.MOUSE_MODE_HIDDEN)
63-
$Button_MouseModeCaptured.set_pressed(Input.get_mouse_mode() == Input.MOUSE_MODE_CAPTURED)
57+
$Buttons/Button_Fullscreen.set_pressed(DisplayServer.window_get_mode() == DisplayServer.WINDOW_MODE_FULLSCREEN)
58+
$Buttons/Button_FixedSize.set_pressed(DisplayServer.window_get_flag(DisplayServer.WINDOW_FLAG_RESIZE_DISABLED))
59+
$Buttons/Button_Minimized.set_pressed(DisplayServer.window_get_mode() == DisplayServer.WINDOW_MODE_MINIMIZED)
60+
$Buttons/Button_Maximized.set_pressed(DisplayServer.window_get_mode() == DisplayServer.WINDOW_MODE_MAXIMIZED)
61+
$Buttons/Button_MouseModeVisible.set_pressed(Input.get_mouse_mode() == Input.MOUSE_MODE_VISIBLE)
62+
$Buttons/Button_MouseModeHidden.set_pressed(Input.get_mouse_mode() == Input.MOUSE_MODE_HIDDEN)
63+
$Buttons/Button_MouseModeCaptured.set_pressed(Input.get_mouse_mode() == Input.MOUSE_MODE_CAPTURED)
6464

6565

6666
func _unhandled_input(event):
@@ -82,40 +82,41 @@ func _unhandled_input(event):
8282

8383
func check_wm_api():
8484
var s = ""
85-
if not OS.has_method("get_screen_count"):
85+
if not DisplayServer.has_method("get_screen_count"):
8686
s += " - get_screen_count()\n"
87-
if not OS.has_method("get_current_screen"):
88-
s += " - get_current_screen()\n"
89-
if not OS.has_method("set_current_screen"):
90-
s += " - set_current_screen()\n"
91-
if not OS.has_method("get_screen_position"):
92-
s += " - get_screen_position()\n"
93-
if not OS.has_method("get_screen_size"):
94-
s += " - get_screen_size()\n"
95-
if not OS.has_method("get_window_position"):
96-
s += " - get_window_position()\n"
97-
if not OS.has_method("set_window_position"):
98-
s += " - set_window_position()\n"
99-
if not OS.has_method("get_window_size"):
87+
if not DisplayServer.has_method("window_get_current_screen"):
88+
s += " - window_get_current_screen()\n"
89+
if not DisplayServer.has_method("window_set_current_screen"):
90+
s += " - window_set_current_screen()\n"
91+
if not DisplayServer.has_method("screen_get_position"):
92+
s += " - screen_get_position()\n"
93+
if not DisplayServer.has_method("window_get_size"):
94+
s += " - window_get_size()\n"
95+
if not DisplayServer.has_method("window_get_position"):
96+
s += " - window_get_position()\n"
97+
if not DisplayServer.has_method("window_set_position"):
98+
s += " - window_set_position()\n"
99+
if not DisplayServer.has_method("window_get_size"):
100100
s += " - get_window_size()\n"
101-
if not OS.has_method("set_window_size"):
102-
s += " - set_window_size()\n"
103-
if not OS.has_method("set_window_fullscreen"):
104-
s += " - set_window_fullscreen()\n"
105-
if not OS.has_method("is_window_fullscreen"):
106-
s += " - is_window_fullscreen()\n"
107-
if not OS.has_method("set_window_resizable"):
108-
s += " - set_window_resizable()\n"
109-
if not OS.has_method("is_window_resizable"):
110-
s += " - is_window_resizable()\n"
111-
if not OS.has_method("set_window_minimized"):
112-
s += " - set_window_minimized()\n"
113-
if not OS.has_method("is_window_minimized"):
114-
s += " - is_window_minimized()\n"
115-
if not OS.has_method("set_window_maximized"):
116-
s += " - set_window_maximized()\n"
117-
if not OS.has_method("is_window_maximized"):
118-
s += " - is_window_maximized()\n"
101+
if not DisplayServer.has_method("window_set_size"):
102+
s += " - window_set_size()\n"
103+
# These function are no longer and this is set through flags!
104+
# if not DisplayServer.has_method("set_window_fullscreen"):
105+
# s += " - set_window_fullscreen()\n"
106+
# if not DisplayServer.window_get_flag() OS.has_method("is_window_fullscreen"):
107+
# s += " - is_window_fullscreen()\n"
108+
# if not OS.has_method("set_window_resizable"):
109+
# s += " - set_window_resizable()\n"
110+
# if not OS.has_method("is_window_resizable"):
111+
# s += " - is_window_resizable()\n"
112+
# if not OS.has_method("set_window_minimized"):
113+
# s += " - set_window_minimized()\n"
114+
# if not OS.has_method("is_window_minimized"):
115+
# s += " - is_window_minimized()\n"
116+
# if not OS.has_method("set_window_maximized"):
117+
# s += " - set_window_maximized()\n"
118+
# if not OS.has_method("is_window_maximized"):
119+
# s += " - is_window_maximized()\n"
119120

120121
if s.length() == 0:
121122
return true

misc/window_management/project.godot

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ config/features=PackedStringArray("4.0")
1818

1919
[display]
2020

21-
window/stretch/mode="2d"
21+
window/stretch/mode="canvas_items"
2222
window/stretch/aspect="expand"
2323
window/size/width=800
2424
window/fullscreen=false

0 commit comments

Comments
 (0)