Full Screen Functionality
A Window
is said to be "full screened" if it is directly associated with a Monitor
. If a Window
is not full screened, then it is "windowed."
full_screen?
You can check to see if a Window
is full screened by calling the full_screen?
method:
window = Window.new
window.full_screen? # => false
monitor = Monitor.primary
window = Window.new(monitor: monitor)
window.full_screen? # => true
full_screen?
must be called from within a run
block definition.
monitor
If a Window
is full screened, you can retrieve the monitor on which it is displayed:
if window.full_screen?
window.monitor # => `CrystGLFW::Monitor`
end
If the window is not full screened when you attempt to retrieve its monitor, a CrystGLFW::Error::NotFullScreen
will be raised.
monitor
must be called from within a run
block definition.
set_monitor
and monitor=
To make a Window
full screened on a given Monitor
, use the set_monitor
method:
window = Window.new
window.set_monitor(Monitor.primary)
The current VideoMode
of the Monitor
is used upon a Window
being full screened.
Alternatively, you can use monitor=
to achieve the same thing:
window = Window.new
window.monitor = Monitor.primary
Both set_monitor
and monitor=
must be called from within a run
block definition.
exit_full_screen
To make a full screened Window
run in windowed mode, use the exit_full_screen
method:
window = Window.new(monitor: Monitor.primary)
window.exit_full_screen(100, 100, 640, 480)
exit_full_screen
accepts the following arguments:
- x, the x-coordinate of the newly-windowed window. (Default: 100)
- y, the y-coordinate of the newly-windowed window. (Default: 100)
- width, the width of the newly-windowed window. (Default: 640)
- height, the height of the newly-windowed window. ( Default: 480)
# location: (100, 100), size: 640x480
window.exit_full_screen(100, 100, 640, 480)
# location: (100, 100), size: 640x480
window.exit_full_screen
# location: (250, 50), size: 1024x576
window.exit_full_screen(250, 50, 1024, 576)
Of course, you can also use keyword arguments:
# location: (250, 50), size: 1024x576
window.exit_full_screen(x: 250, y: 50, width: 1024, height: 576)
exit_full_screen
must be called from within a run
block definition.