Class: LiteRGSS::DisplayWindow

Inherits:
Object
  • Object
show all
Defined in:
LiteRGSS.rb.yard.rb

Overview

Class that describe a Window holding the OpenGL context & all drawable

Constant Summary collapse

MAX_TEXTURE_SIZE =

Maximum size of the texture for the device the OpenGL context are currently running over

1024

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#heightInteger (readonly)

Returns get the height of the window.

Returns:

  • (Integer)

    get the height of the window



1001
1002
1003
# File 'LiteRGSS.rb.yard.rb', line 1001

def height
  @height
end

#icon=(value) ⇒ Image (writeonly)

Returns Set the icon of the window.

Returns:

  • (Image)

    Set the icon of the window



1015
1016
1017
# File 'LiteRGSS.rb.yard.rb', line 1015

def icon=(value)
  @icon = value
end

#openGL_versionArray<Integer> (readonly)

Returns Major & Minor version number of the currently running OpenGL version.

Returns:

  • (Array<Integer>)

    Major & Minor version number of the currently running OpenGL version



1030
1031
1032
# File 'LiteRGSS.rb.yard.rb', line 1030

def openGL_version
  @openGL_version
end

#settingsArray(title, width, height, scale, bpp, fps, vsync, fullscreen, visible_mouse)

Returns:

  • (Array(title, width, height, scale, bpp, fps, vsync, fullscreen, visible_mouse))


1024
1025
1026
# File 'LiteRGSS.rb.yard.rb', line 1024

def settings
  @settings
end

#shaderShader

Returns Set the global shader applied to the final content of the window (shader is applied with total pixel size and not native pixel size).

Returns:

  • (Shader)

    Set the global shader applied to the final content of the window (shader is applied with total pixel size and not native pixel size)



1013
1014
1015
# File 'LiteRGSS.rb.yard.rb', line 1013

def shader
  @shader
end

#widthInteger (readonly)

Returns get the width of the window.

Returns:

  • (Integer)

    get the width of the window



999
1000
1001
# File 'LiteRGSS.rb.yard.rb', line 999

def width
  @width
end

#xInteger

Returns X coordinate of the window on the desktop.

Returns:

  • (Integer)

    X coordinate of the window on the desktop



1026
1027
1028
# File 'LiteRGSS.rb.yard.rb', line 1026

def x
  @x
end

#yInteger

Returns Y coordinate of the window on the desktop.

Returns:

  • (Integer)

    Y coordinate of the window on the desktop



1028
1029
1030
# File 'LiteRGSS.rb.yard.rb', line 1028

def y
  @y
end

Class Method Details

.desktop_heightInteger

Get the desktop height

Returns:



1217
1218
1219
# File 'LiteRGSS.rb.yard.rb', line 1217

def self.desktop_height

end

.desktop_widthInteger

Get the desktop width

Returns:



1212
1213
1214
# File 'LiteRGSS.rb.yard.rb', line 1212

def self.desktop_width

end

.list_resolutionsArray

List all the resolution available on the current device

Returns:

  • (Array)
    [width1, height1], [width2, height2], …


1207
1208
1209
# File 'LiteRGSS.rb.yard.rb', line 1207

def self.list_resolutions

end

.new(title, width, height, scale, bpp = 32, frame_rate = 60, vsync = false, fullscreen = false, mouse_visible = false)

Create a new DisplayWindow

Parameters:

  • title (String)

    title of the window

  • width (Integer)

    width of the window content

  • height (Integer)

    height of the window content

  • scale (Float)

    scale of the window content (if width = 320 & scale = 2, window final width is 640 + frame)

  • bpp (Integer) (defaults to: 32)

    number of bit per pixels

  • frame_rate (Integer) (defaults to: 60)

    locked framerate of the window, 0 = unlimited fps

  • vsync (Boolean) (defaults to: false)

    if vsync is on or off

  • fullscreen (Boolean) (defaults to: false)

    if window should be in fullscreen mode

  • mouse_visible (Boolean) (defaults to: false)

    if the mouse should be visible inside the window



976
977
978
# File 'LiteRGSS.rb.yard.rb', line 976

def self.new(title, width, height, scale, bpp = 32, frame_rate = 60, vsync = false, fullscreen = false, mouse_visible = false)

end

Instance Method Details

#dispose

Dispose the window and forcefully close it



980
981
982
# File 'LiteRGSS.rb.yard.rb', line 980

def dispose

end

#on_closed=(proc)

Define the event called when the on close event is detected

Examples:

Prevent the user from closing the window if $no_close is true

win.on_close = proc do
  next false if $no_close


1035
1036
1037
# File 'LiteRGSS.rb.yard.rb', line 1035

def on_closed=(proc)

end

#on_gained_focus=(proc)

Define the event called when the window gains focus

Examples:

Detect that the window gained focus

win.on_gained_focus = proc do
  puts "Focus gained"
end


1062
1063
1064
# File 'LiteRGSS.rb.yard.rb', line 1062

def on_gained_focus=(proc)

end

#on_joystick_button_pressed=(proc)

Define the event called when a button is pressed on a joystick

Examples:

Detect the button press of a joystick

win.on_joystick_button_pressed = proc do |joy_id, button|
  puts "Joystick button ##{button} on stick ##{joy_id} was pressed"
end


1138
1139
1140
# File 'LiteRGSS.rb.yard.rb', line 1138

def on_joystick_button_pressed=(proc)

end

#on_joystick_button_released=(proc)

Define the event called when a button is released on a joystick

Examples:

Detect a button release of a joystick

win.on_joystick_button_released = proc do |joy_id, button|
  puts "Joystick button ##{button} on stick ##{joy_id} was released"
end


1146
1147
1148
# File 'LiteRGSS.rb.yard.rb', line 1146

def on_joystick_button_released=(proc)

end

#on_joystick_connected=(proc)

Define the event called when a joystick gets plugged in

Examples:

Detect a joystick connection

win.on_joystick_connected = proc do |joy_id|
  puts "Joystick #{joy_id} connected!"
end


1162
1163
1164
# File 'LiteRGSS.rb.yard.rb', line 1162

def on_joystick_connected=(proc)

end

#on_joystick_disconnected=(proc)

Define the event called when a joystick gets unplugged

Examples:

Detect a joystick disconnection

win.on_joystick_disconnected = proc do |joy_id|
  puts "Joystick #{joy_id} disconnected!"
end


1170
1171
1172
# File 'LiteRGSS.rb.yard.rb', line 1170

def on_joystick_disconnected=(proc)

end

#on_joystick_moved=(proc)

Define the event called when a joystick axis is moved

Examples:

Detect a joystick axis movement

win.on_joystick_moved = proc do |joy_id, axis, position|
  puts "Axis #{axis} of joystick ##{joy_id} moved to #{position}"
end


1154
1155
1156
# File 'LiteRGSS.rb.yard.rb', line 1154

def on_joystick_moved=(proc)

end

#on_key_pressed=(proc)

Define the event called when a key is pressed

Examples:

Detect the key press

win.on_key_pressed = proc do |key, alt, control, shift, system|
  puts "User pressed #{key} with following state: a:#{alt}, c:#{control}, s:#{shift}, sys:#{system}"
end


1078
1079
1080
# File 'LiteRGSS.rb.yard.rb', line 1078

def on_key_pressed=(proc)

end

#on_key_released=(proc)

Define the event called when a key is released

Examples:

Detect the key release

win.on_key_released = proc do |key|
  puts "User released #{key}"
end


1086
1087
1088
# File 'LiteRGSS.rb.yard.rb', line 1086

def on_key_released=(proc)

end

#on_lost_focus=(proc)

Define the event called when the window lost focus

Examples:

Detect that the window lost focus

win.on_lost_focus = proc do
  puts "Lost focus"
end


1054
1055
1056
# File 'LiteRGSS.rb.yard.rb', line 1054

def on_lost_focus=(proc)

end

#on_mouse_button_pressed=(proc)

Define the event called when a mouse key is pressed

Examples:

Detect a mouse press event

win.on_mouse_button_pressed = proc do |button|
  puts "Mouse button pressed: #{button}"
end


1102
1103
1104
# File 'LiteRGSS.rb.yard.rb', line 1102

def on_mouse_button_pressed=(proc)

end

#on_mouse_button_released=(proc)

Define the event called when a mouse key is released

Examples:

Detect a mouse key released event

win.on_mouse_button_released = proc do |button|
  puts "Mouse button released: #{button}"
end


1110
1111
1112
# File 'LiteRGSS.rb.yard.rb', line 1110

def on_mouse_button_released=(proc)

end

#on_mouse_entered=(proc)

Define the event called when the mouse enters the window

Examples:

Detect a mouse enter event

win.on_mouse_entered = proc { puts "Mouse entered the screen" }


1124
1125
1126
# File 'LiteRGSS.rb.yard.rb', line 1124

def on_mouse_entered=(proc)

end

#on_mouse_left=(proc)

Define the event called when the mouse leaves the window

Examples:

Detect a move left event

win.on_mouse_left = proc { puts "Mouse left the screen" }


1130
1131
1132
# File 'LiteRGSS.rb.yard.rb', line 1130

def on_mouse_left=(proc)

end

#on_mouse_moved=(proc)

Define the event called when the mouse moves

Examples:

Detect a mouse moved event

win.on_mouse_moved = proc|x, y|
  puts "Mouse moved to: (#{x}, #{y})"
end


1118
1119
1120
# File 'LiteRGSS.rb.yard.rb', line 1118

def on_mouse_moved=(proc)

end

#on_mouse_wheel_scrolled=(proc)

Define the event called when the mouse wheel is scrolled

Examples:

Detect a mouse wheel event

win.on_mouse_wheel_scrolled = proc do |wheel, delta|
  puts "Mouse wheel ##{wheel} scrolled #{delta}"
end


1094
1095
1096
# File 'LiteRGSS.rb.yard.rb', line 1094

def on_mouse_wheel_scrolled=(proc)

end

#on_resized=(proc)

next true

end

Define the event called when the resize event is detected

Examples:

Detect that the window was resize

win.on_resized = proc do |width, height|
  puts "Resized to : (#{width}, #{height})"
end


1046
1047
1048
# File 'LiteRGSS.rb.yard.rb', line 1046

def on_resized=(proc)

end

#on_sensor_changed=(proc)

Define the event called when a sensor event was triggered

Examples:

Detect a sensor change

win.on_sensor_changed = proc do |sensor_type, x, y, z|
  puts "Sensor #{sensor_type} changed to: (#{x}, #{y}, #{z})"
end


1202
1203
1204
# File 'LiteRGSS.rb.yard.rb', line 1202

def on_sensor_changed=(proc)

end

#on_text_entered=(proc)

Define the event called when a text entry is detected on the window (usally a character representing the UTF-8 pressed key)

Examples:

Detect the text entered

win.on_text_entered = proc do |text|
  puts "User entered : #{text}"
end


1070
1071
1072
# File 'LiteRGSS.rb.yard.rb', line 1070

def on_text_entered=(proc)

end

#on_touch_began=(proc)

Define the event called when a touch event has begun

Examples:

Detect a touch event that begins

win.on_touch_began = proc do |finger_id, x, y|
  puts "Touch ##{finger_id} started on: (#{x}, #{y})"
end


1178
1179
1180
# File 'LiteRGSS.rb.yard.rb', line 1178

def on_touch_began=(proc)

end

#on_touch_ended=(proc)

Define the event called when the touche ended

Examples:

Detect a touch end event

win.on_touch_ended = proc do |finger_id, x, y|
  puts "Touch ##{finger_id} ended on: (#{x}, #{y})"
end


1194
1195
1196
# File 'LiteRGSS.rb.yard.rb', line 1194

def on_touch_ended=(proc)

end

#on_touch_moved=(proc)

Define the event called when the touch moved

Examples:

Detect a touch moved example

win.on_touch_moved = proc do |finger_id, x, y|
  puts "Touch ##{finger_id} moved to: (#{x}, #{y})"
end


1186
1187
1188
# File 'LiteRGSS.rb.yard.rb', line 1186

def on_touch_moved=(proc)

end

#resize_screen(width, height) ⇒ self

Change the window screen size but keep every other parameter in the same settings

Parameters:

Returns:

  • (self)


1020
1021
1022
# File 'LiteRGSS.rb.yard.rb', line 1020

def resize_screen(width, height)

end

#snap_to_bitmapBitmap

Take a snapshot of the window content

Returns:



995
996
997
# File 'LiteRGSS.rb.yard.rb', line 995

def snap_to_bitmap

end

#sort_zself

Update window internal order according to z of each entities

Returns:

  • (self)


990
991
992
# File 'LiteRGSS.rb.yard.rb', line 990

def sort_z

end

#updateself

Update window content & events. This method might wait for vsync before updating events

Returns:

  • (self)


985
986
987
# File 'LiteRGSS.rb.yard.rb', line 985

def update

end

#update_no_inputself

Update the window content. This method might wait for vsync before returning

Returns:

  • (self)


1004
1005
1006
# File 'LiteRGSS.rb.yard.rb', line 1004

def update_no_input

end

#update_only_inputself

Update the window event without drawing anything.

Returns:

  • (self)


1009
1010
1011
# File 'LiteRGSS.rb.yard.rb', line 1009

def update_only_input

end