Mercurial > projects > dstep
view dstep/appkit/NSApplication.d @ 22:f8a3b67adfcb
Removed duplicated methods
author | Jacob Carlborg <doob@me.com> |
---|---|
date | Tue, 09 Feb 2010 18:02:03 +0100 |
parents | 19885b43130e |
children | b9de51448c6b |
line wrap: on
line source
/** * Copyright: Copyright (c) 2009 Jacob Carlborg. * Authors: Jacob Carlborg * Version: Initial created: Sep 24, 2009 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) */ module dstep.appkit.NSApplication; import dstep.appkit.AppKitDefines; import dstep.appkit.NSColorPanel; import dstep.appkit.NSDockTile; import dstep.appkit.NSEvent; import dstep.appkit.NSGraphicsContext; import dstep.appkit.NSHelpManager; import dstep.appkit.NSImage; import dstep.appkit.NSMenu; import dstep.appkit.NSPageLayout; import dstep.appkit.NSPasteboard; import dstep.appkit.NSResponder; import dstep.appkit.NSUserInterfaceValidation; import dstep.appkit.NSWindow; import dstep.foundation.NSArray; import dstep.foundation.NSDate; import dstep.foundation.NSDictionary; import dstep.foundation.NSError; import dstep.foundation.NSException; import dstep.foundation.NSNotification; import dstep.foundation.NSObjCRuntime; import dstep.foundation.NSString; import dstep.internal.String; import dstep.objc.bridge.Bridge; import dstep.objc.objc; import bindings = dstep.appkit.NSApplication_bindings; struct _NSModalSession; struct NSThreadPrivate; alias _NSModalSession* NSModalSession; alias NSThreadPrivate _NSThreadPrivate; alias NSUInteger NSRequestUserAttentionType; alias NSUInteger NSApplicationDelegateReply; alias NSUInteger NSApplicationTerminateReply; alias NSUInteger NSApplicationPrintReply; extern (C) { extern { const double NSAppKitVersionNumber; } } private { NSString NSModalPanelRunLoopMode_; NSString NSEventTrackingRunLoopMode_; NSApplication NSApp_; NSString NSApplicationDidBecomeActiveNotification_; NSString NSApplicationDidHideNotification_; NSString NSApplicationDidFinishLaunchingNotification_; NSString NSApplicationDidResignActiveNotification_; NSString NSApplicationDidUnhideNotification_; NSString NSApplicationDidUpdateNotification_; NSString NSApplicationWillBecomeActiveNotification_; NSString NSApplicationWillHideNotification_; NSString NSApplicationWillFinishLaunchingNotification_; NSString NSApplicationWillResignActiveNotification_; NSString NSApplicationWillUnhideNotification_; NSString NSApplicationWillUpdateNotification_; NSString NSApplicationWillTerminateNotification_; NSString NSApplicationDidChangeScreenParametersNotification_; } NSString NSModalPanelRunLoopMode () { if (NSModalPanelRunLoopMode_) return NSModalPanelRunLoopMode_; return NSModalPanelRunLoopMode_ = new NSString(bindings.NSModalPanelRunLoopMode); } NSString NSEventTrackingRunLoopMode () { if (NSEventTrackingRunLoopMode_) return NSEventTrackingRunLoopMode_; return NSEventTrackingRunLoopMode_ = new NSString(bindings.NSEventTrackingRunLoopMode); } NSApplication NSApp () { if (NSApp_) return NSApp_; return NSApp_ = new NSApplication(bindings.NSApp); } NSString NSApplicationDidBecomeActiveNotification () { if (NSApplicationDidBecomeActiveNotification_) return NSApplicationDidBecomeActiveNotification_; return NSApplicationDidBecomeActiveNotification_ = new NSString(bindings.NSApplicationDidBecomeActiveNotification); } NSString NSApplicationDidHideNotification () { if (NSApplicationDidHideNotification_) return NSApplicationDidHideNotification_; return NSApplicationDidHideNotification_ = new NSString(bindings.NSApplicationDidHideNotification); } NSString NSApplicationDidFinishLaunchingNotification () { if (NSApplicationDidFinishLaunchingNotification_) return NSApplicationDidFinishLaunchingNotification_; return NSApplicationDidFinishLaunchingNotification_ = new NSString(bindings.NSApplicationDidFinishLaunchingNotification); } NSString NSApplicationDidResignActiveNotification () { if (NSApplicationDidResignActiveNotification_) return NSApplicationDidResignActiveNotification_; return NSApplicationDidResignActiveNotification_ = new NSString(bindings.NSApplicationDidResignActiveNotification); } NSString NSApplicationDidUnhideNotification () { if (NSApplicationDidUnhideNotification_) return NSApplicationDidUnhideNotification_; return NSApplicationDidUnhideNotification_ = new NSString(bindings.NSApplicationDidUnhideNotification); } NSString NSApplicationDidUpdateNotification () { if (NSApplicationDidUpdateNotification_) return NSApplicationDidUpdateNotification_; return NSApplicationDidUpdateNotification_ = new NSString(bindings.NSApplicationDidUpdateNotification); } NSString NSApplicationWillBecomeActiveNotification () { if (NSApplicationWillBecomeActiveNotification_) return NSApplicationWillBecomeActiveNotification_; return NSApplicationWillBecomeActiveNotification_ = new NSString(bindings.NSApplicationWillBecomeActiveNotification); } NSString NSApplicationWillHideNotification () { if (NSApplicationWillHideNotification_) return NSApplicationWillHideNotification_; return NSApplicationWillHideNotification_ = new NSString(bindings.NSApplicationWillHideNotification); } NSString NSApplicationWillFinishLaunchingNotification () { if (NSApplicationWillFinishLaunchingNotification_) return NSApplicationWillFinishLaunchingNotification_; return NSApplicationWillFinishLaunchingNotification_ = new NSString(bindings.NSApplicationWillFinishLaunchingNotification); } NSString NSApplicationWillResignActiveNotification () { if (NSApplicationWillResignActiveNotification_) return NSApplicationWillResignActiveNotification_; return NSApplicationWillResignActiveNotification_ = new NSString(bindings.NSApplicationWillResignActiveNotification); } NSString NSApplicationWillUnhideNotification () { if (NSApplicationWillUnhideNotification_) return NSApplicationWillUnhideNotification_; return NSApplicationWillUnhideNotification_ = new NSString(bindings.NSApplicationWillUnhideNotification); } NSString NSApplicationWillUpdateNotification () { if (NSApplicationWillUpdateNotification_) return NSApplicationWillUpdateNotification_; return NSApplicationWillUpdateNotification_ = new NSString(bindings.NSApplicationWillUpdateNotification); } NSString NSApplicationWillTerminateNotification () { if (NSApplicationWillTerminateNotification_) return NSApplicationWillTerminateNotification_; return NSApplicationWillTerminateNotification_ = new NSString(bindings.NSApplicationWillTerminateNotification); } NSString NSApplicationDidChangeScreenParametersNotification () { if (NSApplicationDidChangeScreenParametersNotification_) return NSApplicationDidChangeScreenParametersNotification_; return NSApplicationDidChangeScreenParametersNotification_ = new NSString(bindings.NSApplicationDidChangeScreenParametersNotification); } enum { NSRunStoppedResponse = (-1000), NSRunAbortedResponse = (-1001), NSRunContinuesResponse = (-1002) } enum { NSUpdateWindowsRunLoopOrdering = 500000 } enum { NSCriticalRequest = 0, NSInformationalRequest = 10 } enum { NSApplicationDelegateReplySuccess = 0, NSApplicationDelegateReplyCancel = 1, NSApplicationDelegateReplyFailure = 2 } enum { NSTerminateCancel = 0, NSTerminateNow = 1, NSTerminateLater = 2 } enum { NSPrintingCancelled = 0, NSPrintingSuccess = 1, NSPrintingFailure = 3, NSPrintingReplyLater = 2 } const TNSServicesMenu = ` void setServicesMenu (NSMenu aMenu) { return invokeObjcSelf!(void, "setServicesMenu:", NSMenu)(aMenu); } NSMenu servicesMenu () { return invokeObjcSelf!(NSMenu, "servicesMenu"); } void registerServicesMenuSendTypes (NSArray sendTypes, NSArray returnTypes) { return invokeObjcSelf!(void, "registerServicesMenuSendTypes:returnTypes:", NSArray, NSArray)(sendTypes, returnTypes); } //mixin ObjcBindMethod!(setServicesMenu, "setServicesMenu:"); //mixin ObjcBindMethod!(servicesMenu, "servicesMenu"); //mixin ObjcBindMethod!(registerServicesMenuSendTypes, "registerServicesMenuSendTypes:returnTypes:"); `; const TNSServicesRequests = ` bool writeSelectionToPasteboard (NSPasteboard pboard, NSArray types) { return invokeObjcSelf!(bool, "writeSelectionToPasteboard:types:", NSPasteboard, NSArray)(pboard, types); } bool readSelectionFromPasteboard (NSPasteboard pboard) { return invokeObjcSelf!(bool, "readSelectionFromPasteboard:", NSPasteboard)(pboard); } //mixin ObjcBindMethod!(writeSelectionToPasteboard, "writeSelectionToPasteboard:types:"); //mixin ObjcBindMethod!(readSelectionFromPasteboard, "readSelectionFromPasteboard:"); `; const TNSStandardAboutPanel = ` void orderFrontStandardAboutPanel (Object sender) { return invokeObjcSelf!(void, "orderFrontStandardAboutPanel:", Object)(sender); } void orderFrontStandardAboutPanelWithOptions (NSDictionary optionsDictionary) { return invokeObjcSelf!(void, "orderFrontStandardAboutPanelWithOptions:", NSDictionary)(optionsDictionary); } //mixin ObjcBindMethod!(orderFrontStandardAboutPanel, "orderFrontStandardAboutPanel:"); //mixin ObjcBindMethod!(orderFrontStandardAboutPanelWithOptions, "orderFrontStandardAboutPanelWithOptions:"); `; const TNSWindowsMenu = ` void setWindowsMenu (NSMenu aMenu) { return invokeObjcSelf!(void, "setWindowsMenu:", NSMenu)(aMenu); } NSMenu windowsMenu () { return invokeObjcSelf!(NSMenu, "windowsMenu"); } void arrangeInFront (Object sender) { return invokeObjcSelf!(void, "arrangeInFront:", Object)(sender); } void removeWindowsItem (NSWindow win) { return invokeObjcSelf!(void, "removeWindowsItem:", NSWindow)(win); } void addWindowsItem (NSWindow win, NSString aString, bool isFilename) { return invokeObjcSelf!(void, "addWindowsItem:title:filename:", NSWindow, NSString, bool)(win, aString, isFilename); } void changeWindowsItem (NSWindow win, NSString aString, bool isFilename) { return invokeObjcSelf!(void, "changeWindowsItem:title:filename:", NSWindow, NSString, bool)(win, aString, isFilename); } void updateWindowsItem (NSWindow win) { return invokeObjcSelf!(void, "updateWindowsItem:", NSWindow)(win); } void miniaturizeAll (Object sender) { return invokeObjcSelf!(void, "miniaturizeAll:", Object)(sender); } //mixin ObjcBindMethod!(setWindowsMenu, "setWindowsMenu:"); //mixin ObjcBindMethod!(windowsMenu, "windowsMenu"); //mixin ObjcBindMethod!(arrangeInFront, "arrangeInFront:"); //mixin ObjcBindMethod!(removeWindowsItem, "removeWindowsItem:"); //mixin ObjcBindMethod!(addWindowsItem, "addWindowsItem:title:filename:"); //mixin ObjcBindMethod!(changeWindowsItem, "changeWindowsItem:title:filename:"); //mixin ObjcBindMethod!(updateWindowsItem, "updateWindowsItem:"); //mixin ObjcBindMethod!(miniaturizeAll, "miniaturizeAll:"); `; const TNSApplicationDelegate = ` uint applicationShouldTerminate (NSApplication sender) { return invokeObjcSelf!(uint, "applicationShouldTerminate:", NSApplication)(sender); } bool application (NSApplication sender, NSString filename) { return invokeObjcSelf!(bool, "application:openFile:", NSApplication, NSString)(sender, filename); } void application (NSApplication sender, NSArray filenames) { return invokeObjcSelf!(void, "application:openFiles:", NSApplication, NSArray)(sender, filenames); } bool application (NSApplication sender, NSString filename) { return invokeObjcSelf!(bool, "application:openTempFile:", NSApplication, NSString)(sender, filename); } bool applicationShouldOpenUntitledFile (NSApplication sender) { return invokeObjcSelf!(bool, "applicationShouldOpenUntitledFile:", NSApplication)(sender); } bool applicationOpenUntitledFile (NSApplication sender) { return invokeObjcSelf!(bool, "applicationOpenUntitledFile:", NSApplication)(sender); } bool application (Object sender, NSString filename) { return invokeObjcSelf!(bool, "application:openFileWithoutUI:", Object, NSString)(sender, filename); } bool application (NSApplication sender, NSString filename) { return invokeObjcSelf!(bool, "application:printFile:", NSApplication, NSString)(sender, filename); } uint application (NSApplication application, NSArray fileNames, NSDictionary printSettings, bool showPrintPanels) { return invokeObjcSelf!(uint, "application:printFiles:withSettings:showPrintPanels:", NSApplication, NSArray, NSDictionary, bool)(application, fileNames, printSettings, showPrintPanels); } void application (NSApplication sender, NSArray filenames) { return invokeObjcSelf!(void, "application:printFiles:", NSApplication, NSArray)(sender, filenames); } bool applicationShouldTerminateAfterLastWindowClosed (NSApplication sender) { return invokeObjcSelf!(bool, "applicationShouldTerminateAfterLastWindowClosed:", NSApplication)(sender); } bool applicationShouldHandleReopen (NSApplication sender, bool flag) { return invokeObjcSelf!(bool, "applicationShouldHandleReopen:hasVisibleWindows:", NSApplication, bool)(sender, flag); } NSMenu applicationDockMenu (NSApplication sender) { return invokeObjcSelf!(NSMenu, "applicationDockMenu:", NSApplication)(sender); } NSError application (NSApplication application, NSError error) { return invokeObjcSelf!(NSError, "application:willPresentError:", NSApplication, NSError)(application, error); } //mixin ObjcBindMethod!(applicationShouldTerminate, "applicationShouldTerminate:"); //mixin ObjcBindMethod!(application, "application:openFile:"); //mixin ObjcBindMethod!(application, "application:openFiles:"); //mixin ObjcBindMethod!(application, "application:openTempFile:"); //mixin ObjcBindMethod!(applicationShouldOpenUntitledFile, "applicationShouldOpenUntitledFile:"); //mixin ObjcBindMethod!(applicationOpenUntitledFile, "applicationOpenUntitledFile:"); //mixin ObjcBindMethod!(application, "application:openFileWithoutUI:"); //mixin ObjcBindMethod!(application, "application:printFile:"); //mixin ObjcBindMethod!(application, "application:printFiles:withSettings:showPrintPanels:"); //mixin ObjcBindMethod!(application, "application:printFiles:"); //mixin ObjcBindMethod!(applicationShouldTerminateAfterLastWindowClosed, "applicationShouldTerminateAfterLastWindowClosed:"); //mixin ObjcBindMethod!(applicationShouldHandleReopen, "applicationShouldHandleReopen:hasVisibleWindows:"); //mixin ObjcBindMethod!(applicationDockMenu, "applicationDockMenu:"); //mixin ObjcBindMethod!(application, "application:willPresentError:"); `; const TNSApplicationNotifications = ` void applicationWillFinishLaunching (NSNotification notification) { return invokeObjcSelf!(void, "applicationWillFinishLaunching:", NSNotification)(notification); } void applicationDidFinishLaunching (NSNotification notification) { return invokeObjcSelf!(void, "applicationDidFinishLaunching:", NSNotification)(notification); } void applicationWillHide (NSNotification notification) { return invokeObjcSelf!(void, "applicationWillHide:", NSNotification)(notification); } void applicationDidHide (NSNotification notification) { return invokeObjcSelf!(void, "applicationDidHide:", NSNotification)(notification); } void applicationWillUnhide (NSNotification notification) { return invokeObjcSelf!(void, "applicationWillUnhide:", NSNotification)(notification); } void applicationDidUnhide (NSNotification notification) { return invokeObjcSelf!(void, "applicationDidUnhide:", NSNotification)(notification); } void applicationWillBecomeActive (NSNotification notification) { return invokeObjcSelf!(void, "applicationWillBecomeActive:", NSNotification)(notification); } void applicationDidBecomeActive (NSNotification notification) { return invokeObjcSelf!(void, "applicationDidBecomeActive:", NSNotification)(notification); } void applicationWillResignActive (NSNotification notification) { return invokeObjcSelf!(void, "applicationWillResignActive:", NSNotification)(notification); } void applicationDidResignActive (NSNotification notification) { return invokeObjcSelf!(void, "applicationDidResignActive:", NSNotification)(notification); } void applicationWillUpdate (NSNotification notification) { return invokeObjcSelf!(void, "applicationWillUpdate:", NSNotification)(notification); } void applicationDidUpdate (NSNotification notification) { return invokeObjcSelf!(void, "applicationDidUpdate:", NSNotification)(notification); } void applicationWillTerminate (NSNotification notification) { return invokeObjcSelf!(void, "applicationWillTerminate:", NSNotification)(notification); } void applicationDidChangeScreenParameters (NSNotification notification) { return invokeObjcSelf!(void, "applicationDidChangeScreenParameters:", NSNotification)(notification); } //mixin ObjcBindMethod!(applicationWillFinishLaunching, "applicationWillFinishLaunching:"); //mixin ObjcBindMethod!(applicationDidFinishLaunching, "applicationDidFinishLaunching:"); //mixin ObjcBindMethod!(applicationWillHide, "applicationWillHide:"); //mixin ObjcBindMethod!(applicationDidHide, "applicationDidHide:"); //mixin ObjcBindMethod!(applicationWillUnhide, "applicationWillUnhide:"); //mixin ObjcBindMethod!(applicationDidUnhide, "applicationDidUnhide:"); //mixin ObjcBindMethod!(applicationWillBecomeActive, "applicationWillBecomeActive:"); //mixin ObjcBindMethod!(applicationDidBecomeActive, "applicationDidBecomeActive:"); //mixin ObjcBindMethod!(applicationWillResignActive, "applicationWillResignActive:"); //mixin ObjcBindMethod!(applicationDidResignActive, "applicationDidResignActive:"); //mixin ObjcBindMethod!(applicationWillUpdate, "applicationWillUpdate:"); //mixin ObjcBindMethod!(applicationDidUpdate, "applicationDidUpdate:"); //mixin ObjcBindMethod!(applicationWillTerminate, "applicationWillTerminate:"); //mixin ObjcBindMethod!(applicationDidChangeScreenParameters, "applicationDidChangeScreenParameters:"); `; const TNSServicesHandling = ` void setServicesProvider (Object provider) { return invokeObjcSelf!(void, "setServicesProvider:", Object)(provider); } Object servicesProvider () { return invokeObjcSelf!(Object, "servicesProvider"); } //mixin ObjcBindMethod!(setServicesProvider, "setServicesProvider:"); //mixin ObjcBindMethod!(servicesProvider, "servicesProvider"); `; class NSApplication : NSResponder, INSUserInterfaceValidations { mixin (ObjcWrap); static NSApplication sharedApplication () { return invokeObjcSelfClass!(NSApplication, "sharedApplication"); } void setDelegate (Object anObject) { return invokeObjcSelf!(void, "setDelegate:", Object)(anObject); } Object delegate_ () { return invokeObjcSelf!(Object, "delegate"); } NSGraphicsContext context () { return invokeObjcSelf!(NSGraphicsContext, "context"); } void hide (Object sender) { return invokeObjcSelf!(void, "hide:", Object)(sender); } void unhide (Object sender) { return invokeObjcSelf!(void, "unhide:", Object)(sender); } void unhideWithoutActivation () { return invokeObjcSelf!(void, "unhideWithoutActivation"); } NSWindow windowWithWindowNumber (NSInteger windowNum) { return invokeObjcSelf!(NSWindow, "windowWithWindowNumber:", NSInteger)(windowNum); } NSWindow mainWindow () { return invokeObjcSelf!(NSWindow, "mainWindow"); } NSWindow keyWindow () { return invokeObjcSelf!(NSWindow, "keyWindow"); } bool isActive () { return invokeObjcSelf!(bool, "isActive"); } bool isHidden () { return invokeObjcSelf!(bool, "isHidden"); } bool isRunning () { return invokeObjcSelf!(bool, "isRunning"); } void deactivate () { return invokeObjcSelf!(void, "deactivate"); } void activateIgnoringOtherApps (bool flag) { return invokeObjcSelf!(void, "activateIgnoringOtherApps:", bool)(flag); } void hideOtherApplications (Object sender) { return invokeObjcSelf!(void, "hideOtherApplications:", Object)(sender); } void unhideAllApplications (Object sender) { return invokeObjcSelf!(void, "unhideAllApplications:", Object)(sender); } void finishLaunching () { return invokeObjcSelf!(void, "finishLaunching"); } void run () { return invokeObjcSelf!(void, "run"); } NSInteger runModalForWindow (NSWindow theWindow) { return invokeObjcSelf!(NSInteger, "runModalForWindow:", NSWindow)(theWindow); } void stop (Object sender) { return invokeObjcSelf!(void, "stop:", Object)(sender); } void stopModal () { return invokeObjcSelf!(void, "stopModal"); } void stopModalWithCode (NSInteger returnCode) { return invokeObjcSelf!(void, "stopModalWithCode:", NSInteger)(returnCode); } void abortModal () { return invokeObjcSelf!(void, "abortModal"); } NSWindow modalWindow () { return invokeObjcSelf!(NSWindow, "modalWindow"); } NSModalSession beginModalSessionForWindow (NSWindow theWindow) { return invokeObjcSelf!(NSModalSession, "beginModalSessionForWindow:", NSWindow)(theWindow); } NSInteger runModalSession (NSModalSession session) { return invokeObjcSelf!(NSInteger, "runModalSession:", NSModalSession)(session); } void endModalSession (NSModalSession session) { return invokeObjcSelf!(void, "endModalSession:", NSModalSession)(session); } void terminate (Object sender) { return invokeObjcSelf!(void, "terminate:", Object)(sender); } NSInteger requestUserAttention (uint requestType) { return invokeObjcSelf!(NSInteger, "requestUserAttention:", uint)(requestType); } void cancelUserAttentionRequest (NSInteger request) { return invokeObjcSelf!(void, "cancelUserAttentionRequest:", NSInteger)(request); } void beginSheet (NSWindow sheet, NSWindow docWindow, Object modalDelegate, SEL didEndSelector, void* contextInfo) { return invokeObjcSelf!(void, "beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:", NSWindow, NSWindow, Object, SEL, void*)(sheet, docWindow, modalDelegate, didEndSelector, contextInfo); } void endSheet (NSWindow sheet) { return invokeObjcSelf!(void, "endSheet:", NSWindow)(sheet); } void endSheet (NSWindow sheet, NSInteger returnCode) { return invokeObjcSelf!(void, "endSheet:returnCode:", NSWindow, NSInteger)(sheet, returnCode); } NSInteger runModalForWindow (NSWindow theWindow, NSWindow docWindow) { return invokeObjcSelf!(NSInteger, "runModalForWindow:relativeToWindow:", NSWindow, NSWindow)(theWindow, docWindow); } NSModalSession beginModalSessionForWindow (NSWindow theWindow, NSWindow docWindow) { return invokeObjcSelf!(NSModalSession, "beginModalSessionForWindow:relativeToWindow:", NSWindow, NSWindow)(theWindow, docWindow); } NSEvent nextEventMatchingMask (NSUInteger mask, NSDate expiration, NSString mode, bool deqFlag) { return invokeObjcSelf!(NSEvent, "nextEventMatchingMask:untilDate:inMode:dequeue:", NSUInteger, NSDate, NSString, bool)(mask, expiration, mode, deqFlag); } void discardEventsMatchingMask (NSUInteger mask, NSEvent lastEvent) { return invokeObjcSelf!(void, "discardEventsMatchingMask:beforeEvent:", NSUInteger, NSEvent)(mask, lastEvent); } void postEvent (NSEvent event, bool flag) { return invokeObjcSelf!(void, "postEvent:atStart:", NSEvent, bool)(event, flag); } NSEvent currentEvent () { return invokeObjcSelf!(NSEvent, "currentEvent"); } void sendEvent (NSEvent theEvent) { return invokeObjcSelf!(void, "sendEvent:", NSEvent)(theEvent); } void preventWindowOrdering () { return invokeObjcSelf!(void, "preventWindowOrdering"); } NSWindow makeWindowsPerform (SEL aSelector, bool flag) { return invokeObjcSelf!(NSWindow, "makeWindowsPerform:inOrder:", SEL, bool)(aSelector, flag); } NSArray windows () { return invokeObjcSelf!(NSArray, "windows"); } void setWindowsNeedUpdate (bool needUpdate) { return invokeObjcSelf!(void, "setWindowsNeedUpdate:", bool)(needUpdate); } void updateWindows () { return invokeObjcSelf!(void, "updateWindows"); } void setMainMenu (NSMenu aMenu) { return invokeObjcSelf!(void, "setMainMenu:", NSMenu)(aMenu); } NSMenu mainMenu () { return invokeObjcSelf!(NSMenu, "mainMenu"); } void setApplicationIconImage (NSImage image) { return invokeObjcSelf!(void, "setApplicationIconImage:", NSImage)(image); } NSImage applicationIconImage () { return invokeObjcSelf!(NSImage, "applicationIconImage"); } NSDockTile dockTile () { return invokeObjcSelf!(NSDockTile, "dockTile"); } bool sendAction (SEL theAction, Object theTarget, Object sender) { return invokeObjcSelf!(bool, "sendAction:to:from:", SEL, Object, Object)(theAction, theTarget, sender); } Object targetForAction (SEL theAction) { return invokeObjcSelf!(Object, "targetForAction:", SEL)(theAction); } Object targetForAction (SEL theAction, Object theTarget, Object sender) { return invokeObjcSelf!(Object, "targetForAction:to:from:", SEL, Object, Object)(theAction, theTarget, sender); } bool tryToPerform (SEL anAction, Object anObject) { return invokeObjcSelf!(bool, "tryToPerform:with:", SEL, Object)(anAction, anObject); } Object validRequestorForSendType (NSString sendType, NSString returnType) { return invokeObjcSelf!(Object, "validRequestorForSendType:returnType:", NSString, NSString)(sendType, returnType); } void reportException (NSException theException) { return invokeObjcSelf!(void, "reportException:", NSException)(theException); } static void detachDrawingThread (SEL selector, Object target, Object argument) { return invokeObjcSelfClass!(void, "detachDrawingThread:toTarget:withObject:", SEL, Object, Object)(selector, target, argument); } void replyToApplicationShouldTerminate (bool shouldTerminate) { return invokeObjcSelf!(void, "replyToApplicationShouldTerminate:", bool)(shouldTerminate); } void replyToOpenOrPrint (uint reply) { return invokeObjcSelf!(void, "replyToOpenOrPrint:", uint)(reply); } void orderFrontCharacterPalette (Object sender) { return invokeObjcSelf!(void, "orderFrontCharacterPalette:", Object)(sender); } bool validateUserInterfaceItem (INSValidatedUserInterfaceItem anItem) { return invokeObjcSelf!(bool, "validateUserInterfaceItem:", INSValidatedUserInterfaceItem)(anItem); } // NSServicesMenu void setServicesMenu (NSMenu aMenu) { return invokeObjcSelf!(void, "setServicesMenu:", NSMenu)(aMenu); } NSMenu servicesMenu () { return invokeObjcSelf!(NSMenu, "servicesMenu"); } void registerServicesMenuSendTypes (NSArray sendTypes, NSArray returnTypes) { return invokeObjcSelf!(void, "registerServicesMenuSendTypes:returnTypes:", NSArray, NSArray)(sendTypes, returnTypes); } // NSApplicationHelpExtension void activateContextHelpMode (Object sender) { return invokeObjcSelf!(void, "activateContextHelpMode:", Object)(sender); } void showHelp (Object sender) { return invokeObjcSelf!(void, "showHelp:", Object)(sender); } // NSStandardAboutPanel void orderFrontStandardAboutPanel (Object sender) { return invokeObjcSelf!(void, "orderFrontStandardAboutPanel:", Object)(sender); } void orderFrontStandardAboutPanelWithOptions (NSDictionary optionsDictionary) { return invokeObjcSelf!(void, "orderFrontStandardAboutPanelWithOptions:", NSDictionary)(optionsDictionary); } // NSWindowsMenu void setWindowsMenu (NSMenu aMenu) { return invokeObjcSelf!(void, "setWindowsMenu:", NSMenu)(aMenu); } NSMenu windowsMenu () { return invokeObjcSelf!(NSMenu, "windowsMenu"); } void arrangeInFront (Object sender) { return invokeObjcSelf!(void, "arrangeInFront:", Object)(sender); } void removeWindowsItem (NSWindow win) { return invokeObjcSelf!(void, "removeWindowsItem:", NSWindow)(win); } void addWindowsItem (NSWindow win, NSString aString, bool isFilename) { return invokeObjcSelf!(void, "addWindowsItem:title:filename:", NSWindow, NSString, bool)(win, aString, isFilename); } void changeWindowsItem (NSWindow win, NSString aString, bool isFilename) { return invokeObjcSelf!(void, "changeWindowsItem:title:filename:", NSWindow, NSString, bool)(win, aString, isFilename); } void updateWindowsItem (NSWindow win) { return invokeObjcSelf!(void, "updateWindowsItem:", NSWindow)(win); } void miniaturizeAll (Object sender) { return invokeObjcSelf!(void, "miniaturizeAll:", Object)(sender); } // NSPageLayoutPanel void runPageLayout (Object sender) { return invokeObjcSelf!(void, "runPageLayout:", Object)(sender); } // NSServicesHandling void setServicesProvider (Object provider) { return invokeObjcSelf!(void, "setServicesProvider:", Object)(provider); } Object servicesProvider () { return invokeObjcSelf!(Object, "servicesProvider"); } // NSColorPanel void orderFrontColorPanel (Object sender) { return invokeObjcSelf!(void, "orderFrontColorPanel:", Object)(sender); } } bool NSShowsServicesMenuItem (NSString itemName) { return Bridge.invokeObjcFunction!(bool, bindings.NSShowsServicesMenuItem, NSString)(itemName); } NSInteger NSSetShowsServicesMenuItem (NSString itemName, bool enabled) { return Bridge.invokeObjcFunction!(NSInteger, bindings.NSSetShowsServicesMenuItem, NSString, bool)(itemName, enabled); } bool NSPerformService (NSString itemName, NSPasteboard pboard) { return Bridge.invokeObjcFunction!(bool, bindings.NSPerformService, NSString, NSPasteboard)(itemName, pboard); } void NSRegisterServicesProvider (Object provider, NSString name) { return Bridge.invokeObjcFunction!(void, bindings.NSRegisterServicesProvider, Object, NSString)(provider, name); } void NSUnregisterServicesProvider (NSString name) { return Bridge.invokeObjcFunction!(void, bindings.NSUnregisterServicesProvider, NSString)(name); } int NSApplicationMain (string[] args) { if (args.length == 0) return NSApplicationMain(0, null); char*[] cArgs; cArgs.reserve(args.length); foreach (str ; args) cArgs ~= (str ~ '\0').ptr; return NSApplicationMain(cArgs.length, cArgs.ptr); } int NSApplicationMain () { return NSApplicationMain(0, null); } extern (C) { int NSApplicationMain (int argc, char** argv); bool NSApplicationLoad (); void NSUpdateDynamicServices (); }