Class: AppDelegate
- Inherits:
-
Object
- Object
- AppDelegate
- Defined in:
- app/osx/menu.rb,
app/ios/app_delegate.rb,
app/osx/app_delegate.rb
Instance Method Summary collapse
- #application(application, didFinishLaunchingWithOptions: launchOptions) ⇒ Object
- #applicationDidBecomeActive(app) ⇒ Object
- #applicationDidEnterBackground(app) ⇒ Object
- #applicationDidFinishLaunching(notification) ⇒ Object
- #applicationDidReceiveMemoryWarning(app) ⇒ Object
- #applicationSignificantTimeChange(app) ⇒ Object
- #applicationWillEnterForeground(app) ⇒ Object
- #applicationWillResignActive(app) ⇒ Object
- #applicationWillTerminate(app) ⇒ Object
- #buildMenu ⇒ Object
- #buildWindow ⇒ Object
Instance Method Details
#application(application, didFinishLaunchingWithOptions: launchOptions) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'app/ios/app_delegate.rb', line 3 def application(application, didFinishLaunchingWithOptions:launchOptions) @director = Joybox::Configuration.setup do director display_stats: true debug repl: true, physics: [:shapes, :aabb] end = .alloc.initWithRootViewController(@director) . = true @window = UIWindow.alloc.initWithFrame(UIScreen.mainScreen.bounds) @window.setRootViewController() @window.makeKeyAndVisible true end |
#applicationDidBecomeActive(app) ⇒ Object
25 26 27 |
# File 'app/ios/app_delegate.rb', line 25 def applicationDidBecomeActive(app) @director.resume if .visibleViewController == @director end |
#applicationDidEnterBackground(app) ⇒ Object
29 30 31 |
# File 'app/ios/app_delegate.rb', line 29 def applicationDidEnterBackground(app) @director.stop_animation if .visibleViewController == @director end |
#applicationDidFinishLaunching(notification) ⇒ Object
3 4 5 6 |
# File 'app/osx/app_delegate.rb', line 3 def applicationDidFinishLaunching(notification) buildMenu buildWindow end |
#applicationDidReceiveMemoryWarning(app) ⇒ Object
41 42 43 |
# File 'app/ios/app_delegate.rb', line 41 def applicationDidReceiveMemoryWarning(app) @director.purge_cached_data end |
#applicationSignificantTimeChange(app) ⇒ Object
45 46 47 |
# File 'app/ios/app_delegate.rb', line 45 def applicationSignificantTimeChange(app) @director.set_next_delta_time_zero true end |
#applicationWillEnterForeground(app) ⇒ Object
33 34 35 |
# File 'app/ios/app_delegate.rb', line 33 def applicationWillEnterForeground(app) @director.start_animation if .visibleViewController == @director end |
#applicationWillResignActive(app) ⇒ Object
21 22 23 |
# File 'app/ios/app_delegate.rb', line 21 def applicationWillResignActive(app) @director.pause if .visibleViewController == @director end |
#applicationWillTerminate(app) ⇒ Object
37 38 39 |
# File 'app/ios/app_delegate.rb', line 37 def applicationWillTerminate(app) @director.end end |
#buildMenu ⇒ Object
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'app/osx/menu.rb', line 2 def buildMenu @mainMenu = NSMenu.new appName = NSBundle.mainBundle.infoDictionary['CFBundleName'] addMenu(appName) do addItemWithTitle("About #{appName}", action: 'orderFrontStandardAboutPanel:', keyEquivalent: '') addItem(NSMenuItem.separatorItem) addItemWithTitle('Preferences', action: 'openPreferences:', keyEquivalent: ',') addItem(NSMenuItem.separatorItem) servicesItem = addItemWithTitle('Services', action: nil, keyEquivalent: '') NSApp.servicesMenu = servicesItem. = NSMenu.new addItem(NSMenuItem.separatorItem) addItemWithTitle("Hide #{appName}", action: 'hide:', keyEquivalent: 'h') item = addItemWithTitle('Hide Others', action: 'hideOtherApplications:', keyEquivalent: 'H') item.keyEquivalentModifierMask = NSCommandKeyMask|NSAlternateKeyMask addItemWithTitle('Show All', action: 'unhideAllApplications:', keyEquivalent: '') addItem(NSMenuItem.separatorItem) addItemWithTitle("Quit #{appName}", action: 'terminate:', keyEquivalent: 'q') end NSApp.windowsMenu = addMenu('Window') do addItemWithTitle('Minimize', action: 'performMiniaturize:', keyEquivalent: 'm') addItemWithTitle('Zoom', action: 'performZoom:', keyEquivalent: '') addItem(NSMenuItem.separatorItem) addItemWithTitle('Bring All To Front', action: 'arrangeInFront:', keyEquivalent: '') end. NSApp.helpMenu = addMenu('Help') do addItemWithTitle("#{appName} Help", action: 'showHelp:', keyEquivalent: '?') end. NSApp.mainMenu = @mainMenu end |
#buildWindow ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'app/osx/app_delegate.rb', line 8 def buildWindow @director = Joybox::Configuration.setup do director display_stats: true debug repl:true, physics: [:shapes, :aabb, :center_of_mass] end @main_window = NSWindow.alloc.initWithContentRect([[240, 180], [480, 320]], styleMask: NSTitledWindowMask|NSClosableWindowMask|NSMiniaturizableWindowMask|NSResizableWindowMask, backing: NSBackingStoreBuffered, defer: false) @main_window.title = NSBundle.mainBundle.infoDictionary['CFBundleName'] @main_window.contentView.addSubview(@director.view) @main_window.orderFrontRegardless @director.run_with_scene(GameLayer.scene) end |