mirror of
https://github.com/cyberarm/w3d_hub_linux_launcher.git
synced 2026-05-06 09:28:18 +00:00
48 lines
1.5 KiB
Ruby
48 lines
1.5 KiB
Ruby
begin
|
|
require_relative "../cyberarm_engine/lib/cyberarm_engine"
|
|
rescue LoadError
|
|
require "cyberarm_engine"
|
|
end
|
|
|
|
require_relative "lib/version"
|
|
require_relative "lib/constants"
|
|
require_relative "lib/attribution"
|
|
require_relative "lib/gui_ext"
|
|
require_relative "lib/state"
|
|
require_relative "lib/dialog"
|
|
require_relative "lib/theme"
|
|
require_relative "lib/pages/games"
|
|
require_relative "lib/pages/server_browser"
|
|
require_relative "lib/pages/boot/terms"
|
|
require_relative "lib/pages/boot/initial_setup"
|
|
require_relative "lib/pages/boot/start_up"
|
|
require_relative "lib/dialogs/about"
|
|
require_relative "lib/states/boot"
|
|
require_relative "lib/states/interface"
|
|
require_relative "lib/window"
|
|
|
|
require_relative "lib/worker"
|
|
require_relative "lib/worker/api"
|
|
|
|
module W3DHubLauncher
|
|
WORKER = Ractor.new(name: "Parallel Worker") { W3DHubLauncher::Worker.new }
|
|
end
|
|
|
|
# Hello, I exist because there presently exists no way to ask if there are pending
|
|
# messages in our ractors mailbox without making a blocking call which is a big no no
|
|
# for a GUI application. :|
|
|
#
|
|
# Keep an eye on: https://bugs.ruby-lang.org/issues/21930: "Add Ractor#empty? method to check for pending messages without blocking"
|
|
#
|
|
# NOTE: May need to mangle Window#update to do ruby-land sleep so thread gets time to process :(
|
|
Thread.new do
|
|
loop do
|
|
message = Ractor.receive
|
|
pp message
|
|
end
|
|
end
|
|
|
|
window = W3DHubLauncher::Window.new(width: 1280, height: 800, resizable: true)
|
|
# window = W3DHubLauncher::Window.new(width: 1920, height: 1080, resizable: true)
|
|
window.show
|