3022 lines
117 KiB
C#
3022 lines
117 KiB
C#
using CPF.Mac.Foundation;
|
|
using CPF.Mac.ObjCRuntime;
|
|
using System;
|
|
using System.ComponentModel;
|
|
using System.Reflection;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Runtime.InteropServices;
|
|
using System.Threading;
|
|
|
|
namespace CPF.Mac.AppKit
|
|
{
|
|
[Register("NSApplication", true)]
|
|
public class NSApplication : NSResponder
|
|
{
|
|
[Register]
|
|
private sealed class _NSApplicationDelegate : NSApplicationDelegate
|
|
{
|
|
internal NSApplicationTermination applicationShouldTerminate;
|
|
|
|
internal NSApplicationFile openFile;
|
|
|
|
internal EventHandler<NSApplicationFilesEventArgs> openFiles;
|
|
|
|
internal NSApplicationFile openTempFile;
|
|
|
|
internal NSApplicationPredicate applicationShouldOpenUntitledFile;
|
|
|
|
internal NSApplicationPredicate applicationOpenUntitledFile;
|
|
|
|
internal NSApplicationFileCommand openFileWithoutUI;
|
|
|
|
internal NSApplicationFile printFile;
|
|
|
|
internal NSApplicationPrint printFiles;
|
|
|
|
internal NSApplicationPredicate applicationShouldTerminateAfterLastWindowClosed;
|
|
|
|
internal NSApplicationReopen applicationShouldHandleReopen;
|
|
|
|
internal NSApplicationMenu applicationDockMenu;
|
|
|
|
internal NSApplicationError willPresentError;
|
|
|
|
internal EventHandler willFinishLaunching;
|
|
|
|
internal EventHandler didFinishLaunching;
|
|
|
|
internal EventHandler willHide;
|
|
|
|
internal EventHandler didHide;
|
|
|
|
internal EventHandler willUnhide;
|
|
|
|
internal EventHandler didUnhide;
|
|
|
|
internal EventHandler willBecomeActive;
|
|
|
|
internal EventHandler didBecomeActive;
|
|
|
|
internal EventHandler willResignActive;
|
|
|
|
internal EventHandler didResignActive;
|
|
|
|
internal EventHandler willUpdate;
|
|
|
|
internal EventHandler didUpdate;
|
|
|
|
internal EventHandler willTerminate;
|
|
|
|
internal EventHandler screenParametersChanged;
|
|
|
|
internal EventHandler<NSApplicationRegisterEventArgs> registerServicesMenu;
|
|
|
|
internal NSApplicationSelection writeSelectionToPasteboard;
|
|
|
|
internal NSPasteboardPredicate readSelectionFromPasteboard;
|
|
|
|
internal EventHandler orderFrontStandardAboutPanel;
|
|
|
|
internal EventHandler orderFrontStandardAboutPanelWithOptions;
|
|
|
|
internal EventHandler<NSDataEventArgs> registeredForRemoteNotifications;
|
|
|
|
internal EventHandler<NSErrorEventArgs> failedToRegisterForRemoteNotifications;
|
|
|
|
internal EventHandler<NSDictionaryEventArgs> receivedRemoteNotification;
|
|
|
|
internal EventHandler<NSCoderEventArgs> willEncodeRestorableState;
|
|
|
|
internal EventHandler<NSCoderEventArgs> decodedRestorableState;
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override NSApplicationTerminateReply ApplicationShouldTerminate(NSApplication sender)
|
|
{
|
|
return applicationShouldTerminate?.Invoke(sender) ?? NSApplicationTerminateReply.Now;
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override bool OpenFile(NSApplication sender, string filename)
|
|
{
|
|
return openFile?.Invoke(sender, filename) ?? false;
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void OpenFiles(NSApplication sender, string[] filenames)
|
|
{
|
|
EventHandler<NSApplicationFilesEventArgs> eventHandler = openFiles;
|
|
if (eventHandler != null)
|
|
{
|
|
NSApplicationFilesEventArgs e = new NSApplicationFilesEventArgs(filenames);
|
|
eventHandler(sender, e);
|
|
}
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override bool OpenTempFile(NSApplication sender, string filename)
|
|
{
|
|
return openTempFile?.Invoke(sender, filename) ?? false;
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override bool ApplicationShouldOpenUntitledFile(NSApplication sender)
|
|
{
|
|
return applicationShouldOpenUntitledFile?.Invoke(sender) ?? false;
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override bool ApplicationOpenUntitledFile(NSApplication sender)
|
|
{
|
|
return applicationOpenUntitledFile?.Invoke(sender) ?? false;
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override bool OpenFileWithoutUI(NSObject sender, string filename)
|
|
{
|
|
return openFileWithoutUI?.Invoke(sender, filename) ?? false;
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override bool PrintFile(NSApplication sender, string filename)
|
|
{
|
|
return printFile?.Invoke(sender, filename) ?? false;
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override NSApplicationPrintReply PrintFiles(NSApplication application, string[] fileNames, NSDictionary printSettings, bool showPrintPanels)
|
|
{
|
|
return printFiles?.Invoke(application, fileNames, printSettings, showPrintPanels) ?? NSApplicationPrintReply.Failure;
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override bool ApplicationShouldTerminateAfterLastWindowClosed(NSApplication sender)
|
|
{
|
|
return applicationShouldTerminateAfterLastWindowClosed?.Invoke(sender) ?? false;
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override bool ApplicationShouldHandleReopen(NSApplication sender, bool hasVisibleWindows)
|
|
{
|
|
return applicationShouldHandleReopen?.Invoke(sender, hasVisibleWindows) ?? false;
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override NSMenu ApplicationDockMenu(NSApplication sender)
|
|
{
|
|
return applicationDockMenu?.Invoke(sender);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override NSError WillPresentError(NSApplication application, NSError error)
|
|
{
|
|
return willPresentError?.Invoke(application, error);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void WillFinishLaunching(NSNotification notification)
|
|
{
|
|
willFinishLaunching?.Invoke(notification, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void DidFinishLaunching(NSNotification notification)
|
|
{
|
|
didFinishLaunching?.Invoke(notification, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void WillHide(NSNotification notification)
|
|
{
|
|
willHide?.Invoke(notification, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void DidHide(NSNotification notification)
|
|
{
|
|
didHide?.Invoke(notification, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void WillUnhide(NSNotification notification)
|
|
{
|
|
willUnhide?.Invoke(notification, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void DidUnhide(NSNotification notification)
|
|
{
|
|
didUnhide?.Invoke(notification, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void WillBecomeActive(NSNotification notification)
|
|
{
|
|
willBecomeActive?.Invoke(notification, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void DidBecomeActive(NSNotification notification)
|
|
{
|
|
didBecomeActive?.Invoke(notification, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void WillResignActive(NSNotification notification)
|
|
{
|
|
willResignActive?.Invoke(notification, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void DidResignActive(NSNotification notification)
|
|
{
|
|
didResignActive?.Invoke(notification, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void WillUpdate(NSNotification notification)
|
|
{
|
|
willUpdate?.Invoke(notification, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void DidUpdate(NSNotification notification)
|
|
{
|
|
didUpdate?.Invoke(notification, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void WillTerminate(NSNotification notification)
|
|
{
|
|
willTerminate?.Invoke(notification, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void ScreenParametersChanged(NSNotification notification)
|
|
{
|
|
screenParametersChanged?.Invoke(notification, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void RegisterServicesMenu(string[] sendTypes, string[] returnTypes)
|
|
{
|
|
EventHandler<NSApplicationRegisterEventArgs> eventHandler = registerServicesMenu;
|
|
if (eventHandler != null)
|
|
{
|
|
NSApplicationRegisterEventArgs e = new NSApplicationRegisterEventArgs(returnTypes);
|
|
eventHandler(sendTypes, e);
|
|
}
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override bool WriteSelectionToPasteboard(NSPasteboard board, string[] types)
|
|
{
|
|
return writeSelectionToPasteboard?.Invoke(board, types) ?? false;
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override bool ReadSelectionFromPasteboard(NSPasteboard pboard)
|
|
{
|
|
return readSelectionFromPasteboard?.Invoke(pboard) ?? false;
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void OrderFrontStandardAboutPanel(NSObject sender)
|
|
{
|
|
orderFrontStandardAboutPanel?.Invoke(sender, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void OrderFrontStandardAboutPanelWithOptions(NSDictionary optionsDictionary)
|
|
{
|
|
orderFrontStandardAboutPanelWithOptions?.Invoke(optionsDictionary, EventArgs.Empty);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void RegisteredForRemoteNotifications(NSApplication application, NSData deviceToken)
|
|
{
|
|
EventHandler<NSDataEventArgs> eventHandler = registeredForRemoteNotifications;
|
|
if (eventHandler != null)
|
|
{
|
|
NSDataEventArgs e = new NSDataEventArgs(deviceToken);
|
|
eventHandler(application, e);
|
|
}
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void FailedToRegisterForRemoteNotifications(NSApplication application, NSError error)
|
|
{
|
|
EventHandler<NSErrorEventArgs> eventHandler = failedToRegisterForRemoteNotifications;
|
|
if (eventHandler != null)
|
|
{
|
|
NSErrorEventArgs e = new NSErrorEventArgs(error);
|
|
eventHandler(application, e);
|
|
}
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void ReceivedRemoteNotification(NSApplication application, NSDictionary userInfo)
|
|
{
|
|
EventHandler<NSDictionaryEventArgs> eventHandler = receivedRemoteNotification;
|
|
if (eventHandler != null)
|
|
{
|
|
NSDictionaryEventArgs e = new NSDictionaryEventArgs(userInfo);
|
|
eventHandler(application, e);
|
|
}
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void WillEncodeRestorableState(NSApplication app, NSCoder encoder)
|
|
{
|
|
EventHandler<NSCoderEventArgs> eventHandler = willEncodeRestorableState;
|
|
if (eventHandler != null)
|
|
{
|
|
NSCoderEventArgs e = new NSCoderEventArgs(encoder);
|
|
eventHandler(app, e);
|
|
}
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void DecodedRestorableState(NSApplication app, NSCoder state)
|
|
{
|
|
EventHandler<NSCoderEventArgs> eventHandler = decodedRestorableState;
|
|
if (eventHandler != null)
|
|
{
|
|
NSCoderEventArgs e = new NSCoderEventArgs(state);
|
|
eventHandler(app, e);
|
|
}
|
|
}
|
|
}
|
|
|
|
public static class Notifications
|
|
{
|
|
public static NSObject ObserveDidBecomeActive(EventHandler<NSNotificationEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(DidBecomeActiveNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSNotificationEventArgs(notification));
|
|
});
|
|
}
|
|
|
|
public static NSObject ObserveDidHide(EventHandler<NSNotificationEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(DidHideNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSNotificationEventArgs(notification));
|
|
});
|
|
}
|
|
|
|
public static NSObject ObserveDidFinishLaunching(EventHandler<NSApplicationDidFinishLaunchingEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(DidFinishLaunchingNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSApplicationDidFinishLaunchingEventArgs(notification));
|
|
});
|
|
}
|
|
|
|
public static NSObject ObserveDidResignActive(EventHandler<NSNotificationEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(DidResignActiveNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSNotificationEventArgs(notification));
|
|
});
|
|
}
|
|
|
|
public static NSObject ObserveDidUnhide(EventHandler<NSNotificationEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(DidUnhideNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSNotificationEventArgs(notification));
|
|
});
|
|
}
|
|
|
|
public static NSObject ObserveDidUpdate(EventHandler<NSNotificationEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(DidUpdateNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSNotificationEventArgs(notification));
|
|
});
|
|
}
|
|
|
|
public static NSObject ObserveWillBecomeActive(EventHandler<NSNotificationEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(WillBecomeActiveNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSNotificationEventArgs(notification));
|
|
});
|
|
}
|
|
|
|
public static NSObject ObserveWillHide(EventHandler<NSNotificationEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(WillHideNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSNotificationEventArgs(notification));
|
|
});
|
|
}
|
|
|
|
public static NSObject ObserveWillFinishLaunching(EventHandler<NSNotificationEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(WillFinishLaunchingNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSNotificationEventArgs(notification));
|
|
});
|
|
}
|
|
|
|
public static NSObject ObserveWillResignActive(EventHandler<NSNotificationEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(WillResignActiveNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSNotificationEventArgs(notification));
|
|
});
|
|
}
|
|
|
|
public static NSObject ObserveWillUnhide(EventHandler<NSNotificationEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(WillUnhideNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSNotificationEventArgs(notification));
|
|
});
|
|
}
|
|
|
|
public static NSObject ObserveWillUpdate(EventHandler<NSNotificationEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(WillUpdateNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSNotificationEventArgs(notification));
|
|
});
|
|
}
|
|
|
|
public static NSObject ObserveWillTerminate(EventHandler<NSNotificationEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(WillTerminateNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSNotificationEventArgs(notification));
|
|
});
|
|
}
|
|
|
|
public static NSObject ObserveDidChangeScreenParameters(EventHandler<NSNotificationEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(DidChangeScreenParametersNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSNotificationEventArgs(notification));
|
|
});
|
|
}
|
|
|
|
public static NSObject ObserveDidFinishRestoringWindows(EventHandler<NSNotificationEventArgs> handler)
|
|
{
|
|
return NSNotificationCenter.DefaultCenter.AddObserver(DidFinishRestoringWindowsNotification, delegate (NSNotification notification)
|
|
{
|
|
handler(null, new NSNotificationEventArgs(notification));
|
|
});
|
|
}
|
|
}
|
|
|
|
public static bool CheckForIllegalCrossThreadCalls;
|
|
|
|
private static Thread mainThread;
|
|
|
|
private static bool initialized;
|
|
|
|
private static readonly IntPtr selSharedApplicationHandle;
|
|
|
|
private static readonly IntPtr selDelegateHandle;
|
|
|
|
private static readonly IntPtr selSetDelegate_Handle;
|
|
|
|
private static readonly IntPtr selContextHandle;
|
|
|
|
private static readonly IntPtr selMainWindowHandle;
|
|
|
|
private static readonly IntPtr selKeyWindowHandle;
|
|
|
|
private static readonly IntPtr selIsActiveHandle;
|
|
|
|
private static readonly IntPtr selIsHiddenHandle;
|
|
|
|
private static readonly IntPtr selIsRunningHandle;
|
|
|
|
private static readonly IntPtr selModalWindowHandle;
|
|
|
|
private static readonly IntPtr selCurrentEventHandle;
|
|
|
|
private static readonly IntPtr selWindowsHandle;
|
|
|
|
private static readonly IntPtr selMainMenuHandle;
|
|
|
|
private static readonly IntPtr selSetMainMenu_Handle;
|
|
|
|
private static readonly IntPtr selHelpMenuHandle;
|
|
|
|
private static readonly IntPtr selSetHelpMenu_Handle;
|
|
|
|
private static readonly IntPtr selApplicationIconImageHandle;
|
|
|
|
private static readonly IntPtr selSetApplicationIconImage_Handle;
|
|
|
|
private static readonly IntPtr selDockTileHandle;
|
|
|
|
private static readonly IntPtr selPresentationOptionsHandle;
|
|
|
|
private static readonly IntPtr selSetPresentationOptions_Handle;
|
|
|
|
private static readonly IntPtr selCurrentSystemPresentationOptionsHandle;
|
|
|
|
private static readonly IntPtr selWindowsMenuHandle;
|
|
|
|
private static readonly IntPtr selSetWindowsMenu_Handle;
|
|
|
|
private static readonly IntPtr selIsFullKeyboardAccessEnabledHandle;
|
|
|
|
private static readonly IntPtr selServicesProviderHandle;
|
|
|
|
private static readonly IntPtr selSetServicesProvider_Handle;
|
|
|
|
private static readonly IntPtr selUserInterfaceLayoutDirectionHandle;
|
|
|
|
private static readonly IntPtr selServicesMenuHandle;
|
|
|
|
private static readonly IntPtr selSetServicesMenu_Handle;
|
|
|
|
private static readonly IntPtr selHide_Handle;
|
|
|
|
private static readonly IntPtr selUnhide_Handle;
|
|
|
|
private static readonly IntPtr selUnhideWithoutActivationHandle;
|
|
|
|
private static readonly IntPtr selWindowWithWindowNumber_Handle;
|
|
|
|
private static readonly IntPtr selDeactivateHandle;
|
|
|
|
private static readonly IntPtr selActivateIgnoringOtherApps_Handle;
|
|
|
|
private static readonly IntPtr selHideOtherApplications_Handle;
|
|
|
|
private static readonly IntPtr selUnhideAllApplications_Handle;
|
|
|
|
private static readonly IntPtr selFinishLaunchingHandle;
|
|
|
|
private static readonly IntPtr selRunHandle;
|
|
|
|
private static readonly IntPtr selRunModalForWindow_Handle;
|
|
|
|
private static readonly IntPtr selStop_Handle;
|
|
|
|
private static readonly IntPtr selStopModalHandle;
|
|
|
|
private static readonly IntPtr selStopModalWithCode_Handle;
|
|
|
|
private static readonly IntPtr selAbortModalHandle;
|
|
|
|
private static readonly IntPtr selBeginModalSessionForWindow_Handle;
|
|
|
|
private static readonly IntPtr selRunModalSession_Handle;
|
|
|
|
private static readonly IntPtr selEndModalSession_Handle;
|
|
|
|
private static readonly IntPtr selTerminate_Handle;
|
|
|
|
private static readonly IntPtr selRequestUserAttention_Handle;
|
|
|
|
private static readonly IntPtr selCancelUserAttentionRequest_Handle;
|
|
|
|
private static readonly IntPtr selBeginSheetModalForWindowModalDelegateDidEndSelectorContextInfo_Handle;
|
|
|
|
private static readonly IntPtr selEndSheet_Handle;
|
|
|
|
private static readonly IntPtr selEndSheetReturnCode_Handle;
|
|
|
|
private static readonly IntPtr selNextEventMatchingMaskUntilDateInModeDequeue_Handle;
|
|
|
|
private static readonly IntPtr selDiscardEventsMatchingMaskBeforeEvent_Handle;
|
|
|
|
private static readonly IntPtr selPostEventAtStart_Handle;
|
|
|
|
private static readonly IntPtr selSendEvent_Handle;
|
|
|
|
private static readonly IntPtr selPreventWindowOrderingHandle;
|
|
|
|
private static readonly IntPtr selMakeWindowsPerformInOrder_Handle;
|
|
|
|
private static readonly IntPtr selSetWindowsNeedUpdate_Handle;
|
|
|
|
private static readonly IntPtr selUpdateWindowsHandle;
|
|
|
|
private static readonly IntPtr selActivationPolicyHandle;
|
|
|
|
private static readonly IntPtr selSetActivationPolicy_Handle;
|
|
|
|
private static readonly IntPtr selSendActionToFrom_Handle;
|
|
|
|
private static readonly IntPtr selTargetForAction_Handle;
|
|
|
|
private static readonly IntPtr selTargetForActionToFrom_Handle;
|
|
|
|
private static readonly IntPtr selTryToPerformWith_Handle;
|
|
|
|
private static readonly IntPtr selValidRequestorForSendTypeReturnType_Handle;
|
|
|
|
private static readonly IntPtr selReportException_Handle;
|
|
|
|
private static readonly IntPtr selDetachDrawingThreadToTargetWithObject_Handle;
|
|
|
|
private static readonly IntPtr selReplyToApplicationShouldTerminate_Handle;
|
|
|
|
private static readonly IntPtr selReplyToOpenOrPrint_Handle;
|
|
|
|
private static readonly IntPtr selOrderFrontCharacterPalette_Handle;
|
|
|
|
private static readonly IntPtr selArrangeInFront_Handle;
|
|
|
|
private static readonly IntPtr selRemoveWindowsItem_Handle;
|
|
|
|
private static readonly IntPtr selAddWindowsItemTitleFilename_Handle;
|
|
|
|
private static readonly IntPtr selChangeWindowsItemTitleFilename_Handle;
|
|
|
|
private static readonly IntPtr selUpdateWindowsItem_Handle;
|
|
|
|
private static readonly IntPtr selMiniaturizeAll_Handle;
|
|
|
|
private static readonly IntPtr selOrderFrontColorPanel_Handle;
|
|
|
|
private static readonly IntPtr selDisableRelaunchOnLoginHandle;
|
|
|
|
private static readonly IntPtr selEnableRelaunchOnLoginHandle;
|
|
|
|
private static readonly IntPtr selEnabledRemoteNotificationTypesHandle;
|
|
|
|
private static readonly IntPtr selRegisterForRemoteNotificationTypes_Handle;
|
|
|
|
private static readonly IntPtr selUnregisterForRemoteNotificationsHandle;
|
|
|
|
private static readonly IntPtr selRestoreWindowWithIdentifierStateCompletionHandler_Handle;
|
|
|
|
private static readonly IntPtr class_ptr;
|
|
|
|
private static object __mt_SharedApplication_var_static;
|
|
|
|
private object __mt_WeakDelegate_var;
|
|
|
|
private object __mt_Context_var;
|
|
|
|
private object __mt_MainWindow_var;
|
|
|
|
private object __mt_KeyWindow_var;
|
|
|
|
private object __mt_ModalWindow_var;
|
|
|
|
private object __mt_CurrentEvent_var;
|
|
|
|
private object __mt_Windows_var;
|
|
|
|
private object __mt_MainMenu_var;
|
|
|
|
private object __mt_HelpMenu_var;
|
|
|
|
private object __mt_ApplicationIconImage_var;
|
|
|
|
private object __mt_DockTile_var;
|
|
|
|
private object __mt_WindowsMenu_var;
|
|
|
|
private object __mt_ServicesProvider_var;
|
|
|
|
private object __mt_ServicesMenu_var;
|
|
|
|
private static NSString _DidBecomeActiveNotification;
|
|
|
|
private static NSString _DidHideNotification;
|
|
|
|
private static NSString _DidFinishLaunchingNotification;
|
|
|
|
private static NSString _DidResignActiveNotification;
|
|
|
|
private static NSString _DidUnhideNotification;
|
|
|
|
private static NSString _DidUpdateNotification;
|
|
|
|
private static NSString _WillBecomeActiveNotification;
|
|
|
|
private static NSString _WillHideNotification;
|
|
|
|
private static NSString _WillFinishLaunchingNotification;
|
|
|
|
private static NSString _WillResignActiveNotification;
|
|
|
|
private static NSString _WillUnhideNotification;
|
|
|
|
private static NSString _WillUpdateNotification;
|
|
|
|
private static NSString _WillTerminateNotification;
|
|
|
|
private static NSString _DidChangeScreenParametersNotification;
|
|
|
|
private static NSString _LaunchIsDefaultLaunchKey;
|
|
|
|
private static NSString _LaunchRemoteNotificationKey;
|
|
|
|
private static NSString _DidFinishRestoringWindowsNotification;
|
|
|
|
public NSApplicationActivationPolicy ActivationPolicy
|
|
{
|
|
get
|
|
{
|
|
return GetActivationPolicy();
|
|
}
|
|
set
|
|
{
|
|
SetActivationPolicy(value);
|
|
}
|
|
}
|
|
|
|
public override IntPtr ClassHandle => class_ptr;
|
|
|
|
[ThreadSafe]
|
|
public static NSApplication SharedApplication
|
|
{
|
|
[Export("sharedApplication")]
|
|
get
|
|
{
|
|
return (NSApplication)(__mt_SharedApplication_var_static = (NSApplication)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(class_ptr, selSharedApplicationHandle)));
|
|
}
|
|
}
|
|
|
|
public virtual NSObject WeakDelegate
|
|
{
|
|
[Export("delegate", ArgumentSemantic.Assign)]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
return (NSObject)(__mt_WeakDelegate_var = ((!IsDirectBinding) ? Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selDelegateHandle)) : Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selDelegateHandle))));
|
|
}
|
|
[Export("setDelegate:", ArgumentSemantic.Assign)]
|
|
set
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selSetDelegate_Handle, value?.Handle ?? IntPtr.Zero);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selSetDelegate_Handle, value?.Handle ?? IntPtr.Zero);
|
|
}
|
|
__mt_WeakDelegate_var = value;
|
|
}
|
|
}
|
|
|
|
public NSApplicationDelegate Delegate
|
|
{
|
|
get
|
|
{
|
|
return WeakDelegate as NSApplicationDelegate;
|
|
}
|
|
set
|
|
{
|
|
WeakDelegate = value;
|
|
}
|
|
}
|
|
|
|
public virtual NSGraphicsContext Context
|
|
{
|
|
[Export("context")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
return (NSGraphicsContext)(__mt_Context_var = ((!IsDirectBinding) ? ((NSGraphicsContext)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selContextHandle))) : ((NSGraphicsContext)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selContextHandle)))));
|
|
}
|
|
}
|
|
|
|
public virtual NSWindow MainWindow
|
|
{
|
|
[Export("mainWindow")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
return (NSWindow)(__mt_MainWindow_var = ((!IsDirectBinding) ? ((NSWindow)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selMainWindowHandle))) : ((NSWindow)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selMainWindowHandle)))));
|
|
}
|
|
}
|
|
|
|
public virtual NSWindow KeyWindow
|
|
{
|
|
[Export("keyWindow")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
return (NSWindow)(__mt_KeyWindow_var = ((!IsDirectBinding) ? ((NSWindow)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selKeyWindowHandle))) : ((NSWindow)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selKeyWindowHandle)))));
|
|
}
|
|
}
|
|
|
|
public virtual bool Active
|
|
{
|
|
[Export("isActive")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend(base.Handle, selIsActiveHandle);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper(base.SuperHandle, selIsActiveHandle);
|
|
}
|
|
}
|
|
|
|
public virtual bool Hidden
|
|
{
|
|
[Export("isHidden")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend(base.Handle, selIsHiddenHandle);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper(base.SuperHandle, selIsHiddenHandle);
|
|
}
|
|
}
|
|
|
|
public virtual bool Running
|
|
{
|
|
[Export("isRunning")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend(base.Handle, selIsRunningHandle);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper(base.SuperHandle, selIsRunningHandle);
|
|
}
|
|
}
|
|
|
|
public virtual NSWindow ModalWindow
|
|
{
|
|
[Export("modalWindow")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
return (NSWindow)(__mt_ModalWindow_var = ((!IsDirectBinding) ? ((NSWindow)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selModalWindowHandle))) : ((NSWindow)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selModalWindowHandle)))));
|
|
}
|
|
}
|
|
|
|
public virtual NSEvent CurrentEvent
|
|
{
|
|
[Export("currentEvent")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
return (NSEvent)(__mt_CurrentEvent_var = ((!IsDirectBinding) ? ((NSEvent)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selCurrentEventHandle))) : ((NSEvent)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selCurrentEventHandle)))));
|
|
}
|
|
}
|
|
|
|
public virtual NSWindow[] Windows
|
|
{
|
|
[Export("windows")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
return (NSWindow[])(__mt_Windows_var = ((!IsDirectBinding) ? NSArray.ArrayFromHandle<NSWindow>(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selWindowsHandle)) : NSArray.ArrayFromHandle<NSWindow>(Messaging.IntPtr_objc_msgSend(base.Handle, selWindowsHandle))));
|
|
}
|
|
}
|
|
|
|
public virtual NSMenu MainMenu
|
|
{
|
|
[Export("mainMenu")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
return (NSMenu)(__mt_MainMenu_var = ((!IsDirectBinding) ? ((NSMenu)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selMainMenuHandle))) : ((NSMenu)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selMainMenuHandle)))));
|
|
}
|
|
[Export("setMainMenu:")]
|
|
set
|
|
{
|
|
EnsureUIThread();
|
|
if (value == null)
|
|
{
|
|
throw new ArgumentNullException("value");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selSetMainMenu_Handle, value.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selSetMainMenu_Handle, value.Handle);
|
|
}
|
|
__mt_MainMenu_var = value;
|
|
}
|
|
}
|
|
|
|
public virtual NSMenu HelpMenu
|
|
{
|
|
[Export("helpMenu")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
return (NSMenu)(__mt_HelpMenu_var = ((!IsDirectBinding) ? ((NSMenu)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selHelpMenuHandle))) : ((NSMenu)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selHelpMenuHandle)))));
|
|
}
|
|
[Export("setHelpMenu:")]
|
|
set
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selSetHelpMenu_Handle, value?.Handle ?? IntPtr.Zero);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selSetHelpMenu_Handle, value?.Handle ?? IntPtr.Zero);
|
|
}
|
|
__mt_HelpMenu_var = value;
|
|
}
|
|
}
|
|
|
|
public virtual NSImage ApplicationIconImage
|
|
{
|
|
[Export("applicationIconImage")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
return (NSImage)(__mt_ApplicationIconImage_var = ((!IsDirectBinding) ? ((NSImage)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selApplicationIconImageHandle))) : ((NSImage)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selApplicationIconImageHandle)))));
|
|
}
|
|
[Export("setApplicationIconImage:")]
|
|
set
|
|
{
|
|
EnsureUIThread();
|
|
if (value == null)
|
|
{
|
|
throw new ArgumentNullException("value");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selSetApplicationIconImage_Handle, value.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selSetApplicationIconImage_Handle, value.Handle);
|
|
}
|
|
__mt_ApplicationIconImage_var = value;
|
|
}
|
|
}
|
|
|
|
public virtual NSDockTile DockTile
|
|
{
|
|
[Export("dockTile")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
return (NSDockTile)(__mt_DockTile_var = ((!IsDirectBinding) ? ((NSDockTile)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selDockTileHandle))) : ((NSDockTile)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selDockTileHandle)))));
|
|
}
|
|
}
|
|
|
|
public virtual NSApplicationPresentationOptions PresentationOptions
|
|
{
|
|
[Export("presentationOptions")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return (NSApplicationPresentationOptions)Messaging.UInt64_objc_msgSend(base.Handle, selPresentationOptionsHandle);
|
|
}
|
|
return (NSApplicationPresentationOptions)Messaging.UInt64_objc_msgSendSuper(base.SuperHandle, selPresentationOptionsHandle);
|
|
}
|
|
[Export("setPresentationOptions:")]
|
|
set
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_UInt64(base.Handle, selSetPresentationOptions_Handle, (ulong)value);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_UInt64(base.SuperHandle, selSetPresentationOptions_Handle, (ulong)value);
|
|
}
|
|
}
|
|
}
|
|
|
|
public virtual NSApplicationPresentationOptions CurrentSystemPresentationOptions
|
|
{
|
|
[Export("currentSystemPresentationOptions")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return (NSApplicationPresentationOptions)Messaging.UInt64_objc_msgSend(base.Handle, selCurrentSystemPresentationOptionsHandle);
|
|
}
|
|
return (NSApplicationPresentationOptions)Messaging.UInt64_objc_msgSendSuper(base.SuperHandle, selCurrentSystemPresentationOptionsHandle);
|
|
}
|
|
}
|
|
|
|
public virtual NSMenu WindowsMenu
|
|
{
|
|
[Export("windowsMenu")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
return (NSMenu)(__mt_WindowsMenu_var = ((!IsDirectBinding) ? ((NSMenu)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selWindowsMenuHandle))) : ((NSMenu)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selWindowsMenuHandle)))));
|
|
}
|
|
[Export("setWindowsMenu:")]
|
|
set
|
|
{
|
|
EnsureUIThread();
|
|
if (value == null)
|
|
{
|
|
throw new ArgumentNullException("value");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selSetWindowsMenu_Handle, value.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selSetWindowsMenu_Handle, value.Handle);
|
|
}
|
|
__mt_WindowsMenu_var = value;
|
|
}
|
|
}
|
|
|
|
public virtual bool FullKeyboardAccessEnabled
|
|
{
|
|
[Export("isFullKeyboardAccessEnabled")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend(base.Handle, selIsFullKeyboardAccessEnabledHandle);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper(base.SuperHandle, selIsFullKeyboardAccessEnabledHandle);
|
|
}
|
|
}
|
|
|
|
public virtual NSObject ServicesProvider
|
|
{
|
|
[Export("servicesProvider")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
return (NSObject)(__mt_ServicesProvider_var = ((!IsDirectBinding) ? Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selServicesProviderHandle)) : Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selServicesProviderHandle))));
|
|
}
|
|
[Export("setServicesProvider:")]
|
|
set
|
|
{
|
|
EnsureUIThread();
|
|
if (value == null)
|
|
{
|
|
throw new ArgumentNullException("value");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selSetServicesProvider_Handle, value.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selSetServicesProvider_Handle, value.Handle);
|
|
}
|
|
__mt_ServicesProvider_var = value;
|
|
}
|
|
}
|
|
|
|
public virtual NSApplicationLayoutDirection UserInterfaceLayoutDirection
|
|
{
|
|
[Export("userInterfaceLayoutDirection")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return (NSApplicationLayoutDirection)Messaging.Int64_objc_msgSend(base.Handle, selUserInterfaceLayoutDirectionHandle);
|
|
}
|
|
return (NSApplicationLayoutDirection)Messaging.Int64_objc_msgSendSuper(base.SuperHandle, selUserInterfaceLayoutDirectionHandle);
|
|
}
|
|
}
|
|
|
|
public virtual NSMenu ServicesMenu
|
|
{
|
|
[Export("servicesMenu")]
|
|
get
|
|
{
|
|
EnsureUIThread();
|
|
return (NSMenu)(__mt_ServicesMenu_var = ((!IsDirectBinding) ? ((NSMenu)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selServicesMenuHandle))) : ((NSMenu)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selServicesMenuHandle)))));
|
|
}
|
|
[Export("setServicesMenu:")]
|
|
set
|
|
{
|
|
EnsureUIThread();
|
|
if (value == null)
|
|
{
|
|
throw new ArgumentNullException("value");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selSetServicesMenu_Handle, value.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selSetServicesMenu_Handle, value.Handle);
|
|
}
|
|
__mt_ServicesMenu_var = value;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationDidBecomeActiveNotification", "AppKit")]
|
|
public static NSString DidBecomeActiveNotification
|
|
{
|
|
get
|
|
{
|
|
if (_DidBecomeActiveNotification == null)
|
|
{
|
|
_DidBecomeActiveNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationDidBecomeActiveNotification");
|
|
}
|
|
return _DidBecomeActiveNotification;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationDidHideNotification", "AppKit")]
|
|
public static NSString DidHideNotification
|
|
{
|
|
get
|
|
{
|
|
if (_DidHideNotification == null)
|
|
{
|
|
_DidHideNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationDidHideNotification");
|
|
}
|
|
return _DidHideNotification;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationDidFinishLaunchingNotification", "AppKit")]
|
|
public static NSString DidFinishLaunchingNotification
|
|
{
|
|
get
|
|
{
|
|
if (_DidFinishLaunchingNotification == null)
|
|
{
|
|
_DidFinishLaunchingNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationDidFinishLaunchingNotification");
|
|
}
|
|
return _DidFinishLaunchingNotification;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationDidResignActiveNotification", "AppKit")]
|
|
public static NSString DidResignActiveNotification
|
|
{
|
|
get
|
|
{
|
|
if (_DidResignActiveNotification == null)
|
|
{
|
|
_DidResignActiveNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationDidResignActiveNotification");
|
|
}
|
|
return _DidResignActiveNotification;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationDidUnhideNotification", "AppKit")]
|
|
public static NSString DidUnhideNotification
|
|
{
|
|
get
|
|
{
|
|
if (_DidUnhideNotification == null)
|
|
{
|
|
_DidUnhideNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationDidUnhideNotification");
|
|
}
|
|
return _DidUnhideNotification;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationDidUpdateNotification", "AppKit")]
|
|
public static NSString DidUpdateNotification
|
|
{
|
|
get
|
|
{
|
|
if (_DidUpdateNotification == null)
|
|
{
|
|
_DidUpdateNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationDidUpdateNotification");
|
|
}
|
|
return _DidUpdateNotification;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationWillBecomeActiveNotification", "AppKit")]
|
|
public static NSString WillBecomeActiveNotification
|
|
{
|
|
get
|
|
{
|
|
if (_WillBecomeActiveNotification == null)
|
|
{
|
|
_WillBecomeActiveNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationWillBecomeActiveNotification");
|
|
}
|
|
return _WillBecomeActiveNotification;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationWillHideNotification", "AppKit")]
|
|
public static NSString WillHideNotification
|
|
{
|
|
get
|
|
{
|
|
if (_WillHideNotification == null)
|
|
{
|
|
_WillHideNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationWillHideNotification");
|
|
}
|
|
return _WillHideNotification;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationWillFinishLaunchingNotification", "AppKit")]
|
|
public static NSString WillFinishLaunchingNotification
|
|
{
|
|
get
|
|
{
|
|
if (_WillFinishLaunchingNotification == null)
|
|
{
|
|
_WillFinishLaunchingNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationWillFinishLaunchingNotification");
|
|
}
|
|
return _WillFinishLaunchingNotification;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationWillResignActiveNotification", "AppKit")]
|
|
public static NSString WillResignActiveNotification
|
|
{
|
|
get
|
|
{
|
|
if (_WillResignActiveNotification == null)
|
|
{
|
|
_WillResignActiveNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationWillResignActiveNotification");
|
|
}
|
|
return _WillResignActiveNotification;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationWillUnhideNotification", "AppKit")]
|
|
public static NSString WillUnhideNotification
|
|
{
|
|
get
|
|
{
|
|
if (_WillUnhideNotification == null)
|
|
{
|
|
_WillUnhideNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationWillUnhideNotification");
|
|
}
|
|
return _WillUnhideNotification;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationWillUpdateNotification", "AppKit")]
|
|
public static NSString WillUpdateNotification
|
|
{
|
|
get
|
|
{
|
|
if (_WillUpdateNotification == null)
|
|
{
|
|
_WillUpdateNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationWillUpdateNotification");
|
|
}
|
|
return _WillUpdateNotification;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationWillTerminateNotification", "AppKit")]
|
|
public static NSString WillTerminateNotification
|
|
{
|
|
get
|
|
{
|
|
if (_WillTerminateNotification == null)
|
|
{
|
|
_WillTerminateNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationWillTerminateNotification");
|
|
}
|
|
return _WillTerminateNotification;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationDidChangeScreenParametersNotification", "AppKit")]
|
|
public static NSString DidChangeScreenParametersNotification
|
|
{
|
|
get
|
|
{
|
|
if (_DidChangeScreenParametersNotification == null)
|
|
{
|
|
_DidChangeScreenParametersNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationDidChangeScreenParametersNotification");
|
|
}
|
|
return _DidChangeScreenParametersNotification;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationLaunchIsDefaultLaunchKey", "AppKit")]
|
|
public static NSString LaunchIsDefaultLaunchKey
|
|
{
|
|
get
|
|
{
|
|
if (_LaunchIsDefaultLaunchKey == null)
|
|
{
|
|
_LaunchIsDefaultLaunchKey = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationLaunchIsDefaultLaunchKey");
|
|
}
|
|
return _LaunchIsDefaultLaunchKey;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationLaunchRemoteNotificationKey", "AppKit")]
|
|
public static NSString LaunchRemoteNotificationKey
|
|
{
|
|
get
|
|
{
|
|
if (_LaunchRemoteNotificationKey == null)
|
|
{
|
|
_LaunchRemoteNotificationKey = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationLaunchRemoteNotificationKey");
|
|
}
|
|
return _LaunchRemoteNotificationKey;
|
|
}
|
|
}
|
|
|
|
[Field("NSApplicationDidFinishRestoringWindowsNotification", "AppKit")]
|
|
public static NSString DidFinishRestoringWindowsNotification
|
|
{
|
|
get
|
|
{
|
|
if (_DidFinishRestoringWindowsNotification == null)
|
|
{
|
|
_DidFinishRestoringWindowsNotification = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSApplicationDidFinishRestoringWindowsNotification");
|
|
}
|
|
return _DidFinishRestoringWindowsNotification;
|
|
}
|
|
}
|
|
|
|
public NSApplicationTermination ApplicationShouldTerminate
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSApplicationDelegate().applicationShouldTerminate;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSApplicationDelegate().applicationShouldTerminate = value;
|
|
}
|
|
}
|
|
|
|
public NSApplicationFile OpenFile
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSApplicationDelegate().openFile;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSApplicationDelegate().openFile = value;
|
|
}
|
|
}
|
|
|
|
public NSApplicationFile OpenTempFile
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSApplicationDelegate().openTempFile;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSApplicationDelegate().openTempFile = value;
|
|
}
|
|
}
|
|
|
|
public NSApplicationPredicate ApplicationShouldOpenUntitledFile
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSApplicationDelegate().applicationShouldOpenUntitledFile;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSApplicationDelegate().applicationShouldOpenUntitledFile = value;
|
|
}
|
|
}
|
|
|
|
public NSApplicationPredicate ApplicationOpenUntitledFile
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSApplicationDelegate().applicationOpenUntitledFile;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSApplicationDelegate().applicationOpenUntitledFile = value;
|
|
}
|
|
}
|
|
|
|
public NSApplicationFileCommand OpenFileWithoutUI
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSApplicationDelegate().openFileWithoutUI;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSApplicationDelegate().openFileWithoutUI = value;
|
|
}
|
|
}
|
|
|
|
public NSApplicationFile PrintFile
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSApplicationDelegate().printFile;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSApplicationDelegate().printFile = value;
|
|
}
|
|
}
|
|
|
|
public NSApplicationPrint PrintFiles
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSApplicationDelegate().printFiles;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSApplicationDelegate().printFiles = value;
|
|
}
|
|
}
|
|
|
|
public NSApplicationPredicate ApplicationShouldTerminateAfterLastWindowClosed
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSApplicationDelegate().applicationShouldTerminateAfterLastWindowClosed;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSApplicationDelegate().applicationShouldTerminateAfterLastWindowClosed = value;
|
|
}
|
|
}
|
|
|
|
public NSApplicationReopen ApplicationShouldHandleReopen
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSApplicationDelegate().applicationShouldHandleReopen;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSApplicationDelegate().applicationShouldHandleReopen = value;
|
|
}
|
|
}
|
|
|
|
public NSApplicationMenu ApplicationDockMenu
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSApplicationDelegate().applicationDockMenu;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSApplicationDelegate().applicationDockMenu = value;
|
|
}
|
|
}
|
|
|
|
public NSApplicationError WillPresentError
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSApplicationDelegate().willPresentError;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSApplicationDelegate().willPresentError = value;
|
|
}
|
|
}
|
|
|
|
public NSApplicationSelection WriteSelectionToPasteboard
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSApplicationDelegate().writeSelectionToPasteboard;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSApplicationDelegate().writeSelectionToPasteboard = value;
|
|
}
|
|
}
|
|
|
|
public NSPasteboardPredicate ReadSelectionFromPasteboard
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSApplicationDelegate().readSelectionFromPasteboard;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSApplicationDelegate().readSelectionFromPasteboard = value;
|
|
}
|
|
}
|
|
|
|
public event EventHandler<NSApplicationFilesEventArgs> OpenFiles
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.openFiles = (EventHandler<NSApplicationFilesEventArgs>)System.Delegate.Combine(nSApplicationDelegate.openFiles, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.openFiles = (EventHandler<NSApplicationFilesEventArgs>)System.Delegate.Remove(nSApplicationDelegate.openFiles, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler WillFinishLaunching
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willFinishLaunching = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.willFinishLaunching, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willFinishLaunching = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.willFinishLaunching, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler DidFinishLaunching
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.didFinishLaunching = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.didFinishLaunching, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.didFinishLaunching = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.didFinishLaunching, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler WillHide
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willHide = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.willHide, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willHide = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.willHide, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler DidHide
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.didHide = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.didHide, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.didHide = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.didHide, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler WillUnhide
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willUnhide = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.willUnhide, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willUnhide = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.willUnhide, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler DidUnhide
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.didUnhide = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.didUnhide, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.didUnhide = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.didUnhide, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler WillBecomeActive
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willBecomeActive = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.willBecomeActive, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willBecomeActive = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.willBecomeActive, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler DidBecomeActive
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.didBecomeActive = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.didBecomeActive, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.didBecomeActive = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.didBecomeActive, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler WillResignActive
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willResignActive = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.willResignActive, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willResignActive = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.willResignActive, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler DidResignActive
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.didResignActive = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.didResignActive, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.didResignActive = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.didResignActive, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler WillUpdate
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willUpdate = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.willUpdate, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willUpdate = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.willUpdate, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler DidUpdate
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.didUpdate = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.didUpdate, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.didUpdate = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.didUpdate, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler WillTerminate
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willTerminate = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.willTerminate, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willTerminate = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.willTerminate, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler ScreenParametersChanged
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.screenParametersChanged = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.screenParametersChanged, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.screenParametersChanged = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.screenParametersChanged, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler<NSApplicationRegisterEventArgs> RegisterServicesMenu
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.registerServicesMenu = (EventHandler<NSApplicationRegisterEventArgs>)System.Delegate.Combine(nSApplicationDelegate.registerServicesMenu, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.registerServicesMenu = (EventHandler<NSApplicationRegisterEventArgs>)System.Delegate.Remove(nSApplicationDelegate.registerServicesMenu, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler OrderFrontStandardAboutPanel
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.orderFrontStandardAboutPanel = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.orderFrontStandardAboutPanel, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.orderFrontStandardAboutPanel = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.orderFrontStandardAboutPanel, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler OrderFrontStandardAboutPanelWithOptions
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.orderFrontStandardAboutPanelWithOptions = (EventHandler)System.Delegate.Combine(nSApplicationDelegate.orderFrontStandardAboutPanelWithOptions, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.orderFrontStandardAboutPanelWithOptions = (EventHandler)System.Delegate.Remove(nSApplicationDelegate.orderFrontStandardAboutPanelWithOptions, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler<NSDataEventArgs> RegisteredForRemoteNotifications
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.registeredForRemoteNotifications = (EventHandler<NSDataEventArgs>)System.Delegate.Combine(nSApplicationDelegate.registeredForRemoteNotifications, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.registeredForRemoteNotifications = (EventHandler<NSDataEventArgs>)System.Delegate.Remove(nSApplicationDelegate.registeredForRemoteNotifications, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler<NSErrorEventArgs> FailedToRegisterForRemoteNotifications
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.failedToRegisterForRemoteNotifications = (EventHandler<NSErrorEventArgs>)System.Delegate.Combine(nSApplicationDelegate.failedToRegisterForRemoteNotifications, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.failedToRegisterForRemoteNotifications = (EventHandler<NSErrorEventArgs>)System.Delegate.Remove(nSApplicationDelegate.failedToRegisterForRemoteNotifications, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler<NSDictionaryEventArgs> ReceivedRemoteNotification
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.receivedRemoteNotification = (EventHandler<NSDictionaryEventArgs>)System.Delegate.Combine(nSApplicationDelegate.receivedRemoteNotification, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.receivedRemoteNotification = (EventHandler<NSDictionaryEventArgs>)System.Delegate.Remove(nSApplicationDelegate.receivedRemoteNotification, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler<NSCoderEventArgs> WillEncodeRestorableState
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willEncodeRestorableState = (EventHandler<NSCoderEventArgs>)System.Delegate.Combine(nSApplicationDelegate.willEncodeRestorableState, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.willEncodeRestorableState = (EventHandler<NSCoderEventArgs>)System.Delegate.Remove(nSApplicationDelegate.willEncodeRestorableState, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler<NSCoderEventArgs> DecodedRestorableState
|
|
{
|
|
add
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.decodedRestorableState = (EventHandler<NSCoderEventArgs>)System.Delegate.Combine(nSApplicationDelegate.decodedRestorableState, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSApplicationDelegate nSApplicationDelegate = EnsureNSApplicationDelegate();
|
|
nSApplicationDelegate.decodedRestorableState = (EventHandler<NSCoderEventArgs>)System.Delegate.Remove(nSApplicationDelegate.decodedRestorableState, value);
|
|
}
|
|
}
|
|
|
|
public void BeginSheet(NSWindow sheet, NSWindow docWindow)
|
|
{
|
|
BeginSheet(sheet, docWindow, null, null, IntPtr.Zero);
|
|
}
|
|
|
|
public void BeginSheet(NSWindow sheet, NSWindow docWindow, NSAction onEnded)
|
|
{
|
|
NSObject modalDelegate = OneShotTracker.Create(onEnded);
|
|
BeginSheet(sheet, docWindow, modalDelegate, NSActionDispatcher.Selector, IntPtr.Zero);
|
|
}
|
|
|
|
static NSApplication()
|
|
{
|
|
CheckForIllegalCrossThreadCalls = true;
|
|
selSharedApplicationHandle = Selector.GetHandle("sharedApplication");
|
|
selDelegateHandle = Selector.GetHandle("delegate");
|
|
selSetDelegate_Handle = Selector.GetHandle("setDelegate:");
|
|
selContextHandle = Selector.GetHandle("context");
|
|
selMainWindowHandle = Selector.GetHandle("mainWindow");
|
|
selKeyWindowHandle = Selector.GetHandle("keyWindow");
|
|
selIsActiveHandle = Selector.GetHandle("isActive");
|
|
selIsHiddenHandle = Selector.GetHandle("isHidden");
|
|
selIsRunningHandle = Selector.GetHandle("isRunning");
|
|
selModalWindowHandle = Selector.GetHandle("modalWindow");
|
|
selCurrentEventHandle = Selector.GetHandle("currentEvent");
|
|
selWindowsHandle = Selector.GetHandle("windows");
|
|
selMainMenuHandle = Selector.GetHandle("mainMenu");
|
|
selSetMainMenu_Handle = Selector.GetHandle("setMainMenu:");
|
|
selHelpMenuHandle = Selector.GetHandle("helpMenu");
|
|
selSetHelpMenu_Handle = Selector.GetHandle("setHelpMenu:");
|
|
selApplicationIconImageHandle = Selector.GetHandle("applicationIconImage");
|
|
selSetApplicationIconImage_Handle = Selector.GetHandle("setApplicationIconImage:");
|
|
selDockTileHandle = Selector.GetHandle("dockTile");
|
|
selPresentationOptionsHandle = Selector.GetHandle("presentationOptions");
|
|
selSetPresentationOptions_Handle = Selector.GetHandle("setPresentationOptions:");
|
|
selCurrentSystemPresentationOptionsHandle = Selector.GetHandle("currentSystemPresentationOptions");
|
|
selWindowsMenuHandle = Selector.GetHandle("windowsMenu");
|
|
selSetWindowsMenu_Handle = Selector.GetHandle("setWindowsMenu:");
|
|
selIsFullKeyboardAccessEnabledHandle = Selector.GetHandle("isFullKeyboardAccessEnabled");
|
|
selServicesProviderHandle = Selector.GetHandle("servicesProvider");
|
|
selSetServicesProvider_Handle = Selector.GetHandle("setServicesProvider:");
|
|
selUserInterfaceLayoutDirectionHandle = Selector.GetHandle("userInterfaceLayoutDirection");
|
|
selServicesMenuHandle = Selector.GetHandle("servicesMenu");
|
|
selSetServicesMenu_Handle = Selector.GetHandle("setServicesMenu:");
|
|
selHide_Handle = Selector.GetHandle("hide:");
|
|
selUnhide_Handle = Selector.GetHandle("unhide:");
|
|
selUnhideWithoutActivationHandle = Selector.GetHandle("unhideWithoutActivation");
|
|
selWindowWithWindowNumber_Handle = Selector.GetHandle("windowWithWindowNumber:");
|
|
selDeactivateHandle = Selector.GetHandle("deactivate");
|
|
selActivateIgnoringOtherApps_Handle = Selector.GetHandle("activateIgnoringOtherApps:");
|
|
selHideOtherApplications_Handle = Selector.GetHandle("hideOtherApplications:");
|
|
selUnhideAllApplications_Handle = Selector.GetHandle("unhideAllApplications:");
|
|
selFinishLaunchingHandle = Selector.GetHandle("finishLaunching");
|
|
selRunHandle = Selector.GetHandle("run");
|
|
selRunModalForWindow_Handle = Selector.GetHandle("runModalForWindow:");
|
|
selStop_Handle = Selector.GetHandle("stop:");
|
|
selStopModalHandle = Selector.GetHandle("stopModal");
|
|
selStopModalWithCode_Handle = Selector.GetHandle("stopModalWithCode:");
|
|
selAbortModalHandle = Selector.GetHandle("abortModal");
|
|
selBeginModalSessionForWindow_Handle = Selector.GetHandle("beginModalSessionForWindow:");
|
|
selRunModalSession_Handle = Selector.GetHandle("runModalSession:");
|
|
selEndModalSession_Handle = Selector.GetHandle("endModalSession:");
|
|
selTerminate_Handle = Selector.GetHandle("terminate:");
|
|
selRequestUserAttention_Handle = Selector.GetHandle("requestUserAttention:");
|
|
selCancelUserAttentionRequest_Handle = Selector.GetHandle("cancelUserAttentionRequest:");
|
|
selBeginSheetModalForWindowModalDelegateDidEndSelectorContextInfo_Handle = Selector.GetHandle("beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:");
|
|
selEndSheet_Handle = Selector.GetHandle("endSheet:");
|
|
selEndSheetReturnCode_Handle = Selector.GetHandle("endSheet:returnCode:");
|
|
selNextEventMatchingMaskUntilDateInModeDequeue_Handle = Selector.GetHandle("nextEventMatchingMask:untilDate:inMode:dequeue:");
|
|
selDiscardEventsMatchingMaskBeforeEvent_Handle = Selector.GetHandle("discardEventsMatchingMask:beforeEvent:");
|
|
selPostEventAtStart_Handle = Selector.GetHandle("postEvent:atStart:");
|
|
selSendEvent_Handle = Selector.GetHandle("sendEvent:");
|
|
selPreventWindowOrderingHandle = Selector.GetHandle("preventWindowOrdering");
|
|
selMakeWindowsPerformInOrder_Handle = Selector.GetHandle("makeWindowsPerform:inOrder:");
|
|
selSetWindowsNeedUpdate_Handle = Selector.GetHandle("setWindowsNeedUpdate:");
|
|
selUpdateWindowsHandle = Selector.GetHandle("updateWindows");
|
|
selActivationPolicyHandle = Selector.GetHandle("activationPolicy");
|
|
selSetActivationPolicy_Handle = Selector.GetHandle("setActivationPolicy:");
|
|
selSendActionToFrom_Handle = Selector.GetHandle("sendAction:to:from:");
|
|
selTargetForAction_Handle = Selector.GetHandle("targetForAction:");
|
|
selTargetForActionToFrom_Handle = Selector.GetHandle("targetForAction:to:from:");
|
|
selTryToPerformWith_Handle = Selector.GetHandle("tryToPerform:with:");
|
|
selValidRequestorForSendTypeReturnType_Handle = Selector.GetHandle("validRequestorForSendType:returnType:");
|
|
selReportException_Handle = Selector.GetHandle("reportException:");
|
|
selDetachDrawingThreadToTargetWithObject_Handle = Selector.GetHandle("detachDrawingThread:toTarget:withObject:");
|
|
selReplyToApplicationShouldTerminate_Handle = Selector.GetHandle("replyToApplicationShouldTerminate:");
|
|
selReplyToOpenOrPrint_Handle = Selector.GetHandle("replyToOpenOrPrint:");
|
|
selOrderFrontCharacterPalette_Handle = Selector.GetHandle("orderFrontCharacterPalette:");
|
|
selArrangeInFront_Handle = Selector.GetHandle("arrangeInFront:");
|
|
selRemoveWindowsItem_Handle = Selector.GetHandle("removeWindowsItem:");
|
|
selAddWindowsItemTitleFilename_Handle = Selector.GetHandle("addWindowsItem:title:filename:");
|
|
selChangeWindowsItemTitleFilename_Handle = Selector.GetHandle("changeWindowsItem:title:filename:");
|
|
selUpdateWindowsItem_Handle = Selector.GetHandle("updateWindowsItem:");
|
|
selMiniaturizeAll_Handle = Selector.GetHandle("miniaturizeAll:");
|
|
selOrderFrontColorPanel_Handle = Selector.GetHandle("orderFrontColorPanel:");
|
|
selDisableRelaunchOnLoginHandle = Selector.GetHandle("disableRelaunchOnLogin");
|
|
selEnableRelaunchOnLoginHandle = Selector.GetHandle("enableRelaunchOnLogin");
|
|
selEnabledRemoteNotificationTypesHandle = Selector.GetHandle("enabledRemoteNotificationTypes");
|
|
selRegisterForRemoteNotificationTypes_Handle = Selector.GetHandle("registerForRemoteNotificationTypes:");
|
|
selUnregisterForRemoteNotificationsHandle = Selector.GetHandle("unregisterForRemoteNotifications");
|
|
selRestoreWindowWithIdentifierStateCompletionHandler_Handle = Selector.GetHandle("restoreWindowWithIdentifier:state:completionHandler:");
|
|
class_ptr = Class.GetHandle("NSApplication");
|
|
RuntimeHelpers.RunClassConstructor(typeof(NSObject).TypeHandle);
|
|
class_ptr = Class.GetHandle("NSApplication");
|
|
}
|
|
|
|
[DllImport("/System/Library/Frameworks/AppKit.framework/AppKit")]
|
|
private static extern void NSApplicationMain(int argc, string[] argv);
|
|
|
|
public static void Init()
|
|
{
|
|
if (initialized)
|
|
{
|
|
throw new InvalidOperationException("Init has already be be invoked; it can only be invoke once");
|
|
}
|
|
initialized = true;
|
|
Assembly assembly = typeof(NSApplication).Assembly;
|
|
Runtime.RegisterAssembly(assembly);
|
|
AssemblyName name = assembly.GetName();
|
|
Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies();
|
|
foreach (Assembly assembly2 in assemblies)
|
|
{
|
|
AssemblyName[] referencedAssemblies = assembly2.GetReferencedAssemblies();
|
|
for (int j = 0; j < referencedAssemblies.Length; j++)
|
|
{
|
|
if (AssemblyName.ReferenceMatchesDefinition(referencedAssemblies[j], name))
|
|
{
|
|
Runtime.RegisterAssembly(assembly2);
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
if (SynchronizationContext.Current == null)
|
|
{
|
|
SynchronizationContext.SetSynchronizationContext(new AppKitSynchronizationContext());
|
|
}
|
|
mainThread = Thread.CurrentThread;
|
|
}
|
|
|
|
public static void InitDrawingBridge()
|
|
{
|
|
FieldInfo field = Type.GetType("System.Drawing.GDIPlus, System.Drawing").GetField("UseCocoaDrawable", BindingFlags.Static | BindingFlags.Public);
|
|
FieldInfo field2 = Type.GetType("System.Drawing.GDIPlus, System.Drawing").GetField("UseCarbonDrawable", BindingFlags.Static | BindingFlags.Public);
|
|
field.SetValue(null, true);
|
|
field2.SetValue(null, false);
|
|
}
|
|
|
|
public static void Main(string[] args)
|
|
{
|
|
if (SynchronizationContext.Current == null || !typeof(AppKitSynchronizationContext).IsAssignableFrom(SynchronizationContext.Current.GetType()))
|
|
{
|
|
SynchronizationContext.SetSynchronizationContext(new AppKitSynchronizationContext());
|
|
}
|
|
mainThread = Thread.CurrentThread;
|
|
NSApplicationMain(args.Length, args);
|
|
}
|
|
|
|
public static void EnsureUIThread()
|
|
{
|
|
if (CheckForIllegalCrossThreadCalls && mainThread != Thread.CurrentThread)
|
|
{
|
|
throw new AppKitThreadAccessException();
|
|
}
|
|
}
|
|
|
|
public NSEvent NextEvent(NSEventMask mask, NSDate expiration, string mode, bool deqFlag)
|
|
{
|
|
return NextEvent((uint)mask, expiration, mode, deqFlag);
|
|
}
|
|
|
|
public void DiscardEvents(NSEventMask mask, NSEvent lastEvent)
|
|
{
|
|
DiscardEvents((uint)mask, lastEvent);
|
|
}
|
|
|
|
[EditorBrowsable(EditorBrowsableState.Advanced)]
|
|
[Export("initWithCoder:")]
|
|
public NSApplication(NSCoder coder)
|
|
: base(NSObjectFlag.Empty)
|
|
{
|
|
if (IsDirectBinding)
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSend_IntPtr(base.Handle, Selector.InitWithCoder, coder.Handle);
|
|
}
|
|
else
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSendSuper_IntPtr(base.SuperHandle, Selector.InitWithCoder, coder.Handle);
|
|
}
|
|
}
|
|
|
|
[EditorBrowsable(EditorBrowsableState.Advanced)]
|
|
public NSApplication(NSObjectFlag t)
|
|
: base(t)
|
|
{
|
|
}
|
|
|
|
[EditorBrowsable(EditorBrowsableState.Advanced)]
|
|
public NSApplication(IntPtr handle)
|
|
: base(handle)
|
|
{
|
|
}
|
|
|
|
[Export("hide:")]
|
|
public virtual void Hide(NSObject sender)
|
|
{
|
|
EnsureUIThread();
|
|
if (sender == null)
|
|
{
|
|
throw new ArgumentNullException("sender");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selHide_Handle, sender.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selHide_Handle, sender.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("unhide:")]
|
|
public virtual void Unhide(NSObject sender)
|
|
{
|
|
EnsureUIThread();
|
|
if (sender == null)
|
|
{
|
|
throw new ArgumentNullException("sender");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selUnhide_Handle, sender.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selUnhide_Handle, sender.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("unhideWithoutActivation")]
|
|
public virtual void UnhideWithoutActivation()
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selUnhideWithoutActivationHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selUnhideWithoutActivationHandle);
|
|
}
|
|
}
|
|
|
|
[Export("windowWithWindowNumber:")]
|
|
public virtual NSWindow WindowWithWindowNumber(long windowNum)
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return (NSWindow)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend_Int64(base.Handle, selWindowWithWindowNumber_Handle, windowNum));
|
|
}
|
|
return (NSWindow)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper_Int64(base.SuperHandle, selWindowWithWindowNumber_Handle, windowNum));
|
|
}
|
|
|
|
[Export("deactivate")]
|
|
public virtual void Deactivate()
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selDeactivateHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selDeactivateHandle);
|
|
}
|
|
}
|
|
|
|
[Export("activateIgnoringOtherApps:")]
|
|
public virtual void ActivateIgnoringOtherApps(bool flag)
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_bool(base.Handle, selActivateIgnoringOtherApps_Handle, flag);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_bool(base.SuperHandle, selActivateIgnoringOtherApps_Handle, flag);
|
|
}
|
|
}
|
|
|
|
[Export("hideOtherApplications:")]
|
|
public virtual void HideOtherApplications(NSObject sender)
|
|
{
|
|
EnsureUIThread();
|
|
if (sender == null)
|
|
{
|
|
throw new ArgumentNullException("sender");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selHideOtherApplications_Handle, sender.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selHideOtherApplications_Handle, sender.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("unhideAllApplications:")]
|
|
public virtual void UnhideAllApplications(NSObject sender)
|
|
{
|
|
EnsureUIThread();
|
|
if (sender == null)
|
|
{
|
|
throw new ArgumentNullException("sender");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selUnhideAllApplications_Handle, sender.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selUnhideAllApplications_Handle, sender.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("finishLaunching")]
|
|
public virtual void FinishLaunching()
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selFinishLaunchingHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selFinishLaunchingHandle);
|
|
}
|
|
}
|
|
|
|
[Export("run")]
|
|
public virtual void Run()
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selRunHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selRunHandle);
|
|
}
|
|
}
|
|
|
|
[Export("runModalForWindow:")]
|
|
public virtual long RunModalForWindow(NSWindow theWindow)
|
|
{
|
|
EnsureUIThread();
|
|
if (theWindow == null)
|
|
{
|
|
throw new ArgumentNullException("theWindow");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.Int64_objc_msgSend_IntPtr(base.Handle, selRunModalForWindow_Handle, theWindow.Handle);
|
|
}
|
|
return Messaging.Int64_objc_msgSendSuper_IntPtr(base.SuperHandle, selRunModalForWindow_Handle, theWindow.Handle);
|
|
}
|
|
|
|
[Export("stop:")]
|
|
public virtual void Stop(NSObject sender)
|
|
{
|
|
EnsureUIThread();
|
|
if (sender == null)
|
|
{
|
|
throw new ArgumentNullException("sender");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selStop_Handle, sender.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selStop_Handle, sender.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("stopModal")]
|
|
public virtual void StopModal()
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selStopModalHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selStopModalHandle);
|
|
}
|
|
}
|
|
|
|
[Export("stopModalWithCode:")]
|
|
public virtual void StopModalWithCode(long returnCode)
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_Int64(base.Handle, selStopModalWithCode_Handle, returnCode);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_Int64(base.SuperHandle, selStopModalWithCode_Handle, returnCode);
|
|
}
|
|
}
|
|
|
|
[Export("abortModal")]
|
|
[ThreadSafe]
|
|
public virtual void AbortModal()
|
|
{
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selAbortModalHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selAbortModalHandle);
|
|
}
|
|
}
|
|
|
|
[Export("beginModalSessionForWindow:")]
|
|
public virtual IntPtr BeginModalSession(NSWindow theWindow)
|
|
{
|
|
EnsureUIThread();
|
|
if (theWindow == null)
|
|
{
|
|
throw new ArgumentNullException("theWindow");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.IntPtr_objc_msgSend_IntPtr(base.Handle, selBeginModalSessionForWindow_Handle, theWindow.Handle);
|
|
}
|
|
return Messaging.IntPtr_objc_msgSendSuper_IntPtr(base.SuperHandle, selBeginModalSessionForWindow_Handle, theWindow.Handle);
|
|
}
|
|
|
|
[Export("runModalSession:")]
|
|
public virtual long RunModalSession(IntPtr session)
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.Int64_objc_msgSend_IntPtr(base.Handle, selRunModalSession_Handle, session);
|
|
}
|
|
return Messaging.Int64_objc_msgSendSuper_IntPtr(base.SuperHandle, selRunModalSession_Handle, session);
|
|
}
|
|
|
|
[Export("endModalSession:")]
|
|
public virtual void EndModalSession(IntPtr session)
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selEndModalSession_Handle, session);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selEndModalSession_Handle, session);
|
|
}
|
|
}
|
|
|
|
[Export("terminate:")]
|
|
public virtual void Terminate(NSObject sender)
|
|
{
|
|
EnsureUIThread();
|
|
if (sender == null)
|
|
{
|
|
throw new ArgumentNullException("sender");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selTerminate_Handle, sender.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selTerminate_Handle, sender.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("requestUserAttention:")]
|
|
public virtual long RequestUserAttention(NSRequestUserAttentionType requestType)
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.Int64_objc_msgSend_UInt64(base.Handle, selRequestUserAttention_Handle, (ulong)requestType);
|
|
}
|
|
return Messaging.Int64_objc_msgSendSuper_UInt64(base.SuperHandle, selRequestUserAttention_Handle, (ulong)requestType);
|
|
}
|
|
|
|
[Export("cancelUserAttentionRequest:")]
|
|
public virtual void CancelUserAttentionRequest(long request)
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_Int64(base.Handle, selCancelUserAttentionRequest_Handle, request);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_Int64(base.SuperHandle, selCancelUserAttentionRequest_Handle, request);
|
|
}
|
|
}
|
|
|
|
[Export("beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:")]
|
|
public virtual void BeginSheet(NSWindow sheet, NSWindow docWindow, NSObject modalDelegate, Selector didEndSelector, IntPtr contextInfo)
|
|
{
|
|
EnsureUIThread();
|
|
if (sheet == null)
|
|
{
|
|
throw new ArgumentNullException("sheet");
|
|
}
|
|
if (docWindow == null)
|
|
{
|
|
throw new ArgumentNullException("docWindow");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr_IntPtr_IntPtr_IntPtr_IntPtr(base.Handle, selBeginSheetModalForWindowModalDelegateDidEndSelectorContextInfo_Handle, sheet.Handle, docWindow.Handle, modalDelegate?.Handle ?? IntPtr.Zero, (didEndSelector == null) ? IntPtr.Zero : didEndSelector.Handle, contextInfo);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr_IntPtr_IntPtr_IntPtr_IntPtr(base.SuperHandle, selBeginSheetModalForWindowModalDelegateDidEndSelectorContextInfo_Handle, sheet.Handle, docWindow.Handle, modalDelegate?.Handle ?? IntPtr.Zero, (didEndSelector == null) ? IntPtr.Zero : didEndSelector.Handle, contextInfo);
|
|
}
|
|
}
|
|
|
|
[Export("endSheet:")]
|
|
public virtual void EndSheet(NSWindow sheet)
|
|
{
|
|
EnsureUIThread();
|
|
if (sheet == null)
|
|
{
|
|
throw new ArgumentNullException("sheet");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selEndSheet_Handle, sheet.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selEndSheet_Handle, sheet.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("endSheet:returnCode:")]
|
|
public virtual void EndSheet(NSWindow sheet, long returnCode)
|
|
{
|
|
EnsureUIThread();
|
|
if (sheet == null)
|
|
{
|
|
throw new ArgumentNullException("sheet");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr_Int64(base.Handle, selEndSheetReturnCode_Handle, sheet.Handle, returnCode);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr_Int64(base.SuperHandle, selEndSheetReturnCode_Handle, sheet.Handle, returnCode);
|
|
}
|
|
}
|
|
|
|
[Export("nextEventMatchingMask:untilDate:inMode:dequeue:")]
|
|
protected virtual NSEvent NextEvent(ulong mask, NSDate expiration, string mode, bool deqFlag)
|
|
{
|
|
EnsureUIThread();
|
|
if (expiration == null)
|
|
{
|
|
throw new ArgumentNullException("expiration");
|
|
}
|
|
if (mode == null)
|
|
{
|
|
throw new ArgumentNullException("mode");
|
|
}
|
|
IntPtr intPtr = NSString.CreateNative(mode);
|
|
NSEvent result = (!IsDirectBinding) ? ((NSEvent)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper_UInt64_IntPtr_IntPtr_bool(base.SuperHandle, selNextEventMatchingMaskUntilDateInModeDequeue_Handle, mask, expiration.Handle, intPtr, deqFlag))) : ((NSEvent)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend_UInt64_IntPtr_IntPtr_bool(base.Handle, selNextEventMatchingMaskUntilDateInModeDequeue_Handle, mask, expiration.Handle, intPtr, deqFlag)));
|
|
NSString.ReleaseNative(intPtr);
|
|
return result;
|
|
}
|
|
|
|
[Export("discardEventsMatchingMask:beforeEvent:")]
|
|
protected virtual void DiscardEvents(ulong mask, NSEvent lastEvent)
|
|
{
|
|
EnsureUIThread();
|
|
if (lastEvent == null)
|
|
{
|
|
throw new ArgumentNullException("lastEvent");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_UInt64_IntPtr(base.Handle, selDiscardEventsMatchingMaskBeforeEvent_Handle, mask, lastEvent.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_UInt64_IntPtr(base.SuperHandle, selDiscardEventsMatchingMaskBeforeEvent_Handle, mask, lastEvent.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("postEvent:atStart:")]
|
|
[ThreadSafe]
|
|
public virtual void PostEvent(NSEvent theEvent, bool atStart)
|
|
{
|
|
if (theEvent == null)
|
|
{
|
|
throw new ArgumentNullException("theEvent");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr_bool(base.Handle, selPostEventAtStart_Handle, theEvent.Handle, atStart);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr_bool(base.SuperHandle, selPostEventAtStart_Handle, theEvent.Handle, atStart);
|
|
}
|
|
}
|
|
|
|
[Export("sendEvent:")]
|
|
public virtual void SendEvent(NSEvent theEvent)
|
|
{
|
|
EnsureUIThread();
|
|
if (theEvent == null)
|
|
{
|
|
throw new ArgumentNullException("theEvent");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selSendEvent_Handle, theEvent.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selSendEvent_Handle, theEvent.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("preventWindowOrdering")]
|
|
public virtual void PreventWindowOrdering()
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selPreventWindowOrderingHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selPreventWindowOrderingHandle);
|
|
}
|
|
}
|
|
|
|
[Export("makeWindowsPerform:inOrder:")]
|
|
public virtual NSWindow MakeWindowsPerform(Selector aSelector, bool inOrder)
|
|
{
|
|
EnsureUIThread();
|
|
if (aSelector == null)
|
|
{
|
|
throw new ArgumentNullException("aSelector");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
return (NSWindow)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend_IntPtr_bool(base.Handle, selMakeWindowsPerformInOrder_Handle, aSelector.Handle, inOrder));
|
|
}
|
|
return (NSWindow)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper_IntPtr_bool(base.SuperHandle, selMakeWindowsPerformInOrder_Handle, aSelector.Handle, inOrder));
|
|
}
|
|
|
|
[Export("setWindowsNeedUpdate:")]
|
|
public virtual void SetWindowsNeedUpdate(bool needUpdate)
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_bool(base.Handle, selSetWindowsNeedUpdate_Handle, needUpdate);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_bool(base.SuperHandle, selSetWindowsNeedUpdate_Handle, needUpdate);
|
|
}
|
|
}
|
|
|
|
[Export("updateWindows")]
|
|
public virtual void UpdateWindows()
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selUpdateWindowsHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selUpdateWindowsHandle);
|
|
}
|
|
}
|
|
|
|
[Export("setMainMenu:")]
|
|
[Obsolete("Use MainMenu property", false)]
|
|
public virtual void SetMainMenu(NSMenu aMenu)
|
|
{
|
|
EnsureUIThread();
|
|
if (aMenu == null)
|
|
{
|
|
throw new ArgumentNullException("aMenu");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selSetMainMenu_Handle, aMenu.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selSetMainMenu_Handle, aMenu.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("activationPolicy")]
|
|
protected virtual NSApplicationActivationPolicy GetActivationPolicy()
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return (NSApplicationActivationPolicy)Messaging.Int64_objc_msgSend(base.Handle, selActivationPolicyHandle);
|
|
}
|
|
return (NSApplicationActivationPolicy)Messaging.Int64_objc_msgSendSuper(base.SuperHandle, selActivationPolicyHandle);
|
|
}
|
|
|
|
[Export("setActivationPolicy:")]
|
|
protected virtual bool SetActivationPolicy(NSApplicationActivationPolicy activationPolicy)
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend_Int64(base.Handle, selSetActivationPolicy_Handle, (long)activationPolicy);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper_Int64(base.SuperHandle, selSetActivationPolicy_Handle, (long)activationPolicy);
|
|
}
|
|
|
|
[Export("sendAction:to:from:")]
|
|
public virtual bool SendAction(Selector theAction, NSObject theTarget, NSObject sender)
|
|
{
|
|
EnsureUIThread();
|
|
if (theAction == null)
|
|
{
|
|
throw new ArgumentNullException("theAction");
|
|
}
|
|
if (theTarget == null)
|
|
{
|
|
throw new ArgumentNullException("theTarget");
|
|
}
|
|
if (sender == null)
|
|
{
|
|
throw new ArgumentNullException("sender");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend_IntPtr_IntPtr_IntPtr(base.Handle, selSendActionToFrom_Handle, theAction.Handle, theTarget.Handle, sender.Handle);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper_IntPtr_IntPtr_IntPtr(base.SuperHandle, selSendActionToFrom_Handle, theAction.Handle, theTarget.Handle, sender.Handle);
|
|
}
|
|
|
|
[Export("targetForAction:")]
|
|
public virtual NSObject TargetForAction(Selector theAction)
|
|
{
|
|
EnsureUIThread();
|
|
if (theAction == null)
|
|
{
|
|
throw new ArgumentNullException("theAction");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
return Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend_IntPtr(base.Handle, selTargetForAction_Handle, theAction.Handle));
|
|
}
|
|
return Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper_IntPtr(base.SuperHandle, selTargetForAction_Handle, theAction.Handle));
|
|
}
|
|
|
|
[Export("targetForAction:to:from:")]
|
|
public virtual NSObject TargetForAction(Selector theAction, NSObject theTarget, NSObject sender)
|
|
{
|
|
EnsureUIThread();
|
|
if (theAction == null)
|
|
{
|
|
throw new ArgumentNullException("theAction");
|
|
}
|
|
if (theTarget == null)
|
|
{
|
|
throw new ArgumentNullException("theTarget");
|
|
}
|
|
if (sender == null)
|
|
{
|
|
throw new ArgumentNullException("sender");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
return Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend_IntPtr_IntPtr_IntPtr(base.Handle, selTargetForActionToFrom_Handle, theAction.Handle, theTarget.Handle, sender.Handle));
|
|
}
|
|
return Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper_IntPtr_IntPtr_IntPtr(base.SuperHandle, selTargetForActionToFrom_Handle, theAction.Handle, theTarget.Handle, sender.Handle));
|
|
}
|
|
|
|
[Export("tryToPerform:with:")]
|
|
public virtual bool TryToPerform(Selector anAction, NSObject target)
|
|
{
|
|
EnsureUIThread();
|
|
if (anAction == null)
|
|
{
|
|
throw new ArgumentNullException("anAction");
|
|
}
|
|
if (target == null)
|
|
{
|
|
throw new ArgumentNullException("target");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend_IntPtr_IntPtr(base.Handle, selTryToPerformWith_Handle, anAction.Handle, target.Handle);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper_IntPtr_IntPtr(base.SuperHandle, selTryToPerformWith_Handle, anAction.Handle, target.Handle);
|
|
}
|
|
|
|
[Export("validRequestorForSendType:returnType:")]
|
|
public virtual NSObject ValidRequestor(string sendType, string returnType)
|
|
{
|
|
EnsureUIThread();
|
|
if (sendType == null)
|
|
{
|
|
throw new ArgumentNullException("sendType");
|
|
}
|
|
if (returnType == null)
|
|
{
|
|
throw new ArgumentNullException("returnType");
|
|
}
|
|
IntPtr intPtr = NSString.CreateNative(sendType);
|
|
IntPtr intPtr2 = NSString.CreateNative(returnType);
|
|
NSObject result = (!IsDirectBinding) ? Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper_IntPtr_IntPtr(base.SuperHandle, selValidRequestorForSendTypeReturnType_Handle, intPtr, intPtr2)) : Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend_IntPtr_IntPtr(base.Handle, selValidRequestorForSendTypeReturnType_Handle, intPtr, intPtr2));
|
|
NSString.ReleaseNative(intPtr);
|
|
NSString.ReleaseNative(intPtr2);
|
|
return result;
|
|
}
|
|
|
|
[Export("reportException:")]
|
|
public virtual void ReportException(NSException theException)
|
|
{
|
|
EnsureUIThread();
|
|
if (theException == null)
|
|
{
|
|
throw new ArgumentNullException("theException");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selReportException_Handle, theException.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selReportException_Handle, theException.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("detachDrawingThread:toTarget:withObject:")]
|
|
public static void DetachDrawingThread(Selector selector, NSObject target, NSObject argument)
|
|
{
|
|
EnsureUIThread();
|
|
if (selector == null)
|
|
{
|
|
throw new ArgumentNullException("selector");
|
|
}
|
|
if (target == null)
|
|
{
|
|
throw new ArgumentNullException("target");
|
|
}
|
|
if (argument == null)
|
|
{
|
|
throw new ArgumentNullException("argument");
|
|
}
|
|
Messaging.void_objc_msgSend_IntPtr_IntPtr_IntPtr(class_ptr, selDetachDrawingThreadToTargetWithObject_Handle, selector.Handle, target.Handle, argument.Handle);
|
|
}
|
|
|
|
[Export("replyToApplicationShouldTerminate:")]
|
|
public virtual void ReplyToApplicationShouldTerminate(bool shouldTerminate)
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_bool(base.Handle, selReplyToApplicationShouldTerminate_Handle, shouldTerminate);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_bool(base.SuperHandle, selReplyToApplicationShouldTerminate_Handle, shouldTerminate);
|
|
}
|
|
}
|
|
|
|
[Export("replyToOpenOrPrint:")]
|
|
public virtual void ReplyToOpenOrPrint(NSApplicationDelegateReply reply)
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_UInt64(base.Handle, selReplyToOpenOrPrint_Handle, (ulong)reply);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_UInt64(base.SuperHandle, selReplyToOpenOrPrint_Handle, (ulong)reply);
|
|
}
|
|
}
|
|
|
|
[Export("orderFrontCharacterPalette:")]
|
|
public virtual void OrderFrontCharacterPalette(NSObject sender)
|
|
{
|
|
EnsureUIThread();
|
|
if (sender == null)
|
|
{
|
|
throw new ArgumentNullException("sender");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selOrderFrontCharacterPalette_Handle, sender.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selOrderFrontCharacterPalette_Handle, sender.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("arrangeInFront:")]
|
|
public virtual void ArrangeInFront(NSObject sender)
|
|
{
|
|
EnsureUIThread();
|
|
if (sender == null)
|
|
{
|
|
throw new ArgumentNullException("sender");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selArrangeInFront_Handle, sender.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selArrangeInFront_Handle, sender.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("removeWindowsItem:")]
|
|
public virtual void RemoveWindowsItem(NSWindow win)
|
|
{
|
|
EnsureUIThread();
|
|
if (win == null)
|
|
{
|
|
throw new ArgumentNullException("win");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selRemoveWindowsItem_Handle, win.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selRemoveWindowsItem_Handle, win.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("addWindowsItem:title:filename:")]
|
|
public virtual void AddWindowsItem(NSWindow win, string title, bool isFilename)
|
|
{
|
|
EnsureUIThread();
|
|
if (win == null)
|
|
{
|
|
throw new ArgumentNullException("win");
|
|
}
|
|
if (title == null)
|
|
{
|
|
throw new ArgumentNullException("title");
|
|
}
|
|
IntPtr intPtr = NSString.CreateNative(title);
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr_IntPtr_bool(base.Handle, selAddWindowsItemTitleFilename_Handle, win.Handle, intPtr, isFilename);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr_IntPtr_bool(base.SuperHandle, selAddWindowsItemTitleFilename_Handle, win.Handle, intPtr, isFilename);
|
|
}
|
|
NSString.ReleaseNative(intPtr);
|
|
}
|
|
|
|
[Export("changeWindowsItem:title:filename:")]
|
|
public virtual void ChangeWindowsItem(NSWindow win, string title, bool isFilename)
|
|
{
|
|
EnsureUIThread();
|
|
if (win == null)
|
|
{
|
|
throw new ArgumentNullException("win");
|
|
}
|
|
if (title == null)
|
|
{
|
|
throw new ArgumentNullException("title");
|
|
}
|
|
IntPtr intPtr = NSString.CreateNative(title);
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr_IntPtr_bool(base.Handle, selChangeWindowsItemTitleFilename_Handle, win.Handle, intPtr, isFilename);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr_IntPtr_bool(base.SuperHandle, selChangeWindowsItemTitleFilename_Handle, win.Handle, intPtr, isFilename);
|
|
}
|
|
NSString.ReleaseNative(intPtr);
|
|
}
|
|
|
|
[Export("updateWindowsItem:")]
|
|
public virtual void UpdateWindowsItem(NSWindow win)
|
|
{
|
|
EnsureUIThread();
|
|
if (win == null)
|
|
{
|
|
throw new ArgumentNullException("win");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selUpdateWindowsItem_Handle, win.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selUpdateWindowsItem_Handle, win.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("miniaturizeAll:")]
|
|
public virtual void MiniaturizeAll(NSObject sender)
|
|
{
|
|
EnsureUIThread();
|
|
if (sender == null)
|
|
{
|
|
throw new ArgumentNullException("sender");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selMiniaturizeAll_Handle, sender.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selMiniaturizeAll_Handle, sender.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("orderFrontColorPanel:")]
|
|
public virtual void OrderFrontColorPanel(NSObject sender)
|
|
{
|
|
EnsureUIThread();
|
|
if (sender == null)
|
|
{
|
|
throw new ArgumentNullException("sender");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selOrderFrontColorPanel_Handle, sender.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selOrderFrontColorPanel_Handle, sender.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("disableRelaunchOnLogin")]
|
|
[ThreadSafe]
|
|
public virtual void DisableRelaunchOnLogin()
|
|
{
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selDisableRelaunchOnLoginHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selDisableRelaunchOnLoginHandle);
|
|
}
|
|
}
|
|
|
|
[Export("enableRelaunchOnLogin")]
|
|
[ThreadSafe]
|
|
public virtual void EnableRelaunchOnLogin()
|
|
{
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selEnableRelaunchOnLoginHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selEnableRelaunchOnLoginHandle);
|
|
}
|
|
}
|
|
|
|
[Export("enabledRemoteNotificationTypes")]
|
|
public virtual NSRemoteNotificationType EnabledRemoteNotificationTypes()
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return (NSRemoteNotificationType)Messaging.UInt64_objc_msgSend(base.Handle, selEnabledRemoteNotificationTypesHandle);
|
|
}
|
|
return (NSRemoteNotificationType)Messaging.UInt64_objc_msgSendSuper(base.SuperHandle, selEnabledRemoteNotificationTypesHandle);
|
|
}
|
|
|
|
[Export("registerForRemoteNotificationTypes:")]
|
|
public virtual void RegisterForRemoteNotificationTypes(NSRemoteNotificationType types)
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_UInt64(base.Handle, selRegisterForRemoteNotificationTypes_Handle, (ulong)types);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_UInt64(base.SuperHandle, selRegisterForRemoteNotificationTypes_Handle, (ulong)types);
|
|
}
|
|
}
|
|
|
|
[Export("unregisterForRemoteNotifications")]
|
|
public virtual void UnregisterForRemoteNotifications()
|
|
{
|
|
EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selUnregisterForRemoteNotificationsHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selUnregisterForRemoteNotificationsHandle);
|
|
}
|
|
}
|
|
|
|
[Export("restoreWindowWithIdentifier:state:completionHandler:")]
|
|
public unsafe static void RestoreWindow(string identifier, NSCoder state, NSWindowCompletionHandler onCompletion)
|
|
{
|
|
EnsureUIThread();
|
|
if (identifier == null)
|
|
{
|
|
throw new ArgumentNullException("identifier");
|
|
}
|
|
if (state == null)
|
|
{
|
|
throw new ArgumentNullException("state");
|
|
}
|
|
if (onCompletion == null)
|
|
{
|
|
throw new ArgumentNullException("onCompletion");
|
|
}
|
|
IntPtr intPtr = NSString.CreateNative(identifier);
|
|
BlockLiteral blockLiteral = default(BlockLiteral);
|
|
BlockLiteral* ptr = &blockLiteral;
|
|
blockLiteral.SetupBlock(Trampolines.SDNSWindowCompletionHandler.Handler, onCompletion);
|
|
Messaging.void_objc_msgSend_IntPtr_IntPtr_IntPtr(class_ptr, selRestoreWindowWithIdentifierStateCompletionHandler_Handle, intPtr, state.Handle, (IntPtr)(void*)ptr);
|
|
NSString.ReleaseNative(intPtr);
|
|
ptr->CleanupBlock();
|
|
}
|
|
|
|
private _NSApplicationDelegate EnsureNSApplicationDelegate()
|
|
{
|
|
NSObject nSObject = WeakDelegate;
|
|
if (nSObject == null || !(nSObject is _NSApplicationDelegate))
|
|
{
|
|
nSObject = (WeakDelegate = new _NSApplicationDelegate());
|
|
}
|
|
return (_NSApplicationDelegate)nSObject;
|
|
}
|
|
|
|
protected override void Dispose(bool disposing)
|
|
{
|
|
base.Dispose(disposing);
|
|
if (base.Handle == IntPtr.Zero)
|
|
{
|
|
__mt_WeakDelegate_var = null;
|
|
__mt_Context_var = null;
|
|
__mt_MainWindow_var = null;
|
|
__mt_KeyWindow_var = null;
|
|
__mt_ModalWindow_var = null;
|
|
__mt_CurrentEvent_var = null;
|
|
__mt_Windows_var = null;
|
|
__mt_MainMenu_var = null;
|
|
__mt_HelpMenu_var = null;
|
|
__mt_ApplicationIconImage_var = null;
|
|
__mt_DockTile_var = null;
|
|
__mt_WindowsMenu_var = null;
|
|
__mt_ServicesProvider_var = null;
|
|
__mt_ServicesMenu_var = null;
|
|
}
|
|
}
|
|
}
|
|
}
|