summaryrefslogtreecommitdiff
path: root/src/main.mm
diff options
context:
space:
mode:
authorHannes Schulze <haschu0103@outlook.de>2025-01-13 22:03:10 +0100
committerHannes Schulze <haschu0103@outlook.de>2025-01-13 22:03:10 +0100
commit02f963a4bab95b3a328b6a792c9a7e027ade0e26 (patch)
tree70b73691547e756e77eb30f29d7ea16811bae1e3 /src/main.mm
parent4366e924e44d4294b9791533486f3ab81317ec71 (diff)
implement display
Diffstat (limited to 'src/main.mm')
-rw-r--r--src/main.mm28
1 files changed, 20 insertions, 8 deletions
diff --git a/src/main.mm b/src/main.mm
index a526e66..5207e62 100644
--- a/src/main.mm
+++ b/src/main.mm
@@ -1,36 +1,48 @@
+#import "scene.hh"
+
#import <Cocoa/Cocoa.h>
-#import "view-controller.hh"
+#import <SpriteKit/SpriteKit.h>
int main(int argc, char** argv)
{
NSApplication* app = [NSApplication sharedApplication];
[app setActivationPolicy:NSApplicationActivationPolicyRegular];
- NSMenuItem *quitItem = [[NSMenuItem alloc] init];
+ NSMenuItem* quitItem = [[NSMenuItem alloc] init];
[quitItem setTitle:@"Quit NES"];
[quitItem setKeyEquivalent:@"q"];
[quitItem setKeyEquivalentModifierMask:NSEventModifierFlagCommand];
[quitItem setTarget:app];
[quitItem setAction:@selector(terminate:)];
- NSMenu *menu = [[NSMenu alloc] init];
+ NSMenu* menu = [[NSMenu alloc] init];
[menu addItem:quitItem];
- NSMenuItem *item = [[NSMenuItem alloc] init];
+ NSMenuItem* item = [[NSMenuItem alloc] init];
[item setSubmenu:menu];
- NSMenu *mainMenu = [[NSMenu alloc] init];
+ NSMenu* mainMenu = [[NSMenu alloc] init];
[mainMenu addItem:item];
[app setMainMenu:mainMenu];
- NSWindow *window = [[NSWindow alloc] initWithContentRect:NSMakeRect(0., 0., 640., 480.)
+ Scene* scene = [[Scene alloc] init];
+ CGSize minSize = [scene size];
+
+
+ SKView* view = [[SKView alloc] init];
+ [view setIgnoresSiblingOrder:YES];
+ [view setShowsFPS:YES];
+ [view presentScene:scene];
+
+ NSWindow* window = [[NSWindow alloc] initWithContentRect:NSMakeRect(0., 0., minSize.width * 2, minSize.height * 2)
styleMask:(NSWindowStyleMaskTitled | NSWindowStyleMaskClosable |
NSWindowMiniaturizeButton | NSWindowStyleMaskResizable)
backing:NSBackingStoreBuffered
defer:false];
[window setTitle:@"NES"];
- [window setContentViewController:[[ViewController alloc] init]];
- [window setContentSize:NSMakeSize(640., 480.)];
+ [window setContentAspectRatio:minSize];
+ [window setContentMinSize:minSize];
+ [window setContentView:view];
[window makeKeyAndOrderFront:nil];
[app activateIgnoringOtherApps:YES];