[Obj-C++] 15 NSWindowの重複 : 解決手順1

[M1 Mac, Big Sur 11.6.5, clang 13.0.0, noXcode]

まずコードのメンテナンス性を高めてNSWindowを扱いやすくするため、mainクラスからAppDelegateクラスへNSWindowの起動時初期化を委譲しました。

次回は具体的なソースコードの内容について書きます。

#import "AppDelegate.h"

int main(int argc, const char * argv[]) {
    auto app = [NSApplication sharedApplication];
    app.delegate = [AppDelegate new];
    [app run];
}
#import "AppDelegate.h"
#import "ConvertorWindow.h"
#import "DragAndDropView.h"

@interface AppDelegate()
@end

@implementation AppDelegate

- (void)applicationWillFinishLaunching:(NSNotification*)notification {
    [[[[ConvertorWindow alloc] init] autorelease] makeMainWindow];
    NSLog(@"%s","applicationWillFinishLaunching");
    
}

- (void)applicationDidFinishLaunching:(NSNotification *)notification {
    NSLog(@"%s","applicationDidFinishLaunching");
}


- (void)applicationWillTerminate:(NSNotification *)notification {
}


- (BOOL)applicationSupportsSecureRestorableState:(NSApplication *)app {
    return YES;
}
@end