class GlimmerTetris::View::AppView
Attributes
game[R]
Public Instance Methods
show_about_dialog()
click to toggle source
# File app/glimmer_tetris/view/app_view.rb, line 140 def show_about_dialog message_box { text 'Glimmer Tetris' message "Glimmer Tetris\n\nGlimmer DSL for SWT Sample\n\nCopyright (c) 2021 Andy Maleh" }.open end
show_high_score_dialog()
click to toggle source
# File app/glimmer_tetris/view/app_view.rb, line 134 def show_high_score_dialog return if @high_score_dialog&.visible? @high_score_dialog = high_score_dialog(parent_shell: body_root, game: @game) if @high_score_dialog.nil? || @high_score_dialog.disposed? @high_score_dialog.show end
start_moving_tetrominos_down()
click to toggle source
# File app/glimmer_tetris/view/app_view.rb, line 118 def start_moving_tetrominos_down Thread.new do @mutex.synchronize do loop do time = Time.now sleep @game.delay break if @game.game_over? || body_root.disposed? # ensure entire game tetromino down movement happens as one GUI update event with sync_exec (to avoid flicker/stutter) sync_exec { @game.down! unless @game.paused? } end end end end