1903 lines
59 KiB
C#
1903 lines
59 KiB
C#
using CPF.Mac.CoreGraphics;
|
|
using CPF.Mac.Foundation;
|
|
using CPF.Mac.ObjCRuntime;
|
|
using System;
|
|
using System.ComponentModel;
|
|
using System.IO;
|
|
|
|
namespace CPF.Mac.AppKit
|
|
{
|
|
[Register("NSImage", true)]
|
|
public class NSImage : NSObject
|
|
{
|
|
[Register]
|
|
private sealed class _NSImageDelegate : NSImageDelegate
|
|
{
|
|
internal NSImageRect imageDidNotDraw;
|
|
|
|
internal EventHandler<NSImageLoadEventArgs> willLoadRepresentation;
|
|
|
|
internal EventHandler<NSImageLoadEventArgs> didLoadRepresentationHeader;
|
|
|
|
internal EventHandler<NSImagePartialEventArgs> didLoadPartOfRepresentation;
|
|
|
|
internal EventHandler<NSImageLoadRepresentationEventArgs> didLoadRepresentation;
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override NSImage ImageDidNotDraw(NSObject sender, CGRect aRect)
|
|
{
|
|
return imageDidNotDraw?.Invoke(sender, aRect);
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void WillLoadRepresentation(NSImage image, NSImageRep rep)
|
|
{
|
|
EventHandler<NSImageLoadEventArgs> eventHandler = willLoadRepresentation;
|
|
if (eventHandler != null)
|
|
{
|
|
NSImageLoadEventArgs e = new NSImageLoadEventArgs(rep);
|
|
eventHandler(image, e);
|
|
}
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void DidLoadRepresentationHeader(NSImage image, NSImageRep rep)
|
|
{
|
|
EventHandler<NSImageLoadEventArgs> eventHandler = didLoadRepresentationHeader;
|
|
if (eventHandler != null)
|
|
{
|
|
NSImageLoadEventArgs e = new NSImageLoadEventArgs(rep);
|
|
eventHandler(image, e);
|
|
}
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void DidLoadPartOfRepresentation(NSImage image, NSImageRep rep, long rows)
|
|
{
|
|
EventHandler<NSImagePartialEventArgs> eventHandler = didLoadPartOfRepresentation;
|
|
if (eventHandler != null)
|
|
{
|
|
NSImagePartialEventArgs e = new NSImagePartialEventArgs(rep, rows);
|
|
eventHandler(image, e);
|
|
}
|
|
}
|
|
|
|
[Preserve(Conditional = true)]
|
|
public override void DidLoadRepresentation(NSImage image, NSImageRep rep, NSImageLoadStatus status)
|
|
{
|
|
EventHandler<NSImageLoadRepresentationEventArgs> eventHandler = didLoadRepresentation;
|
|
if (eventHandler != null)
|
|
{
|
|
NSImageLoadRepresentationEventArgs e = new NSImageLoadRepresentationEventArgs(rep, status);
|
|
eventHandler(image, e);
|
|
}
|
|
}
|
|
}
|
|
|
|
private object __mt_reps_var;
|
|
|
|
private static readonly IntPtr selIsValidHandle = Selector.GetHandle("isValid");
|
|
|
|
private static readonly IntPtr selImageFileTypesHandle = Selector.GetHandle("imageFileTypes");
|
|
|
|
private static readonly IntPtr selImagePasteboardTypesHandle = Selector.GetHandle("imagePasteboardTypes");
|
|
|
|
private static readonly IntPtr selImageTypesHandle = Selector.GetHandle("imageTypes");
|
|
|
|
private static readonly IntPtr selImageUnfilteredTypesHandle = Selector.GetHandle("imageUnfilteredTypes");
|
|
|
|
private static readonly IntPtr selAccessibilityDescriptionHandle = Selector.GetHandle("accessibilityDescription");
|
|
|
|
private static readonly IntPtr selSetAccessibilityDescription_Handle = Selector.GetHandle("setAccessibilityDescription:");
|
|
|
|
private static readonly IntPtr selSizeHandle = Selector.GetHandle("size");
|
|
|
|
private static readonly IntPtr selSetSize_Handle = Selector.GetHandle("setSize:");
|
|
|
|
private static readonly IntPtr selBackgroundColorHandle = Selector.GetHandle("backgroundColor");
|
|
|
|
private static readonly IntPtr selSetBackgroundColor_Handle = Selector.GetHandle("setBackgroundColor:");
|
|
|
|
private static readonly IntPtr selUsesEPSOnResolutionMismatchHandle = Selector.GetHandle("usesEPSOnResolutionMismatch");
|
|
|
|
private static readonly IntPtr selSetUsesEPSOnResolutionMismatch_Handle = Selector.GetHandle("setUsesEPSOnResolutionMismatch:");
|
|
|
|
private static readonly IntPtr selPrefersColorMatchHandle = Selector.GetHandle("prefersColorMatch");
|
|
|
|
private static readonly IntPtr selSetPrefersColorMatch_Handle = Selector.GetHandle("setPrefersColorMatch:");
|
|
|
|
private static readonly IntPtr selMatchesOnMultipleResolutionHandle = Selector.GetHandle("matchesOnMultipleResolution");
|
|
|
|
private static readonly IntPtr selSetMatchesOnMultipleResolution_Handle = Selector.GetHandle("setMatchesOnMultipleResolution:");
|
|
|
|
private static readonly IntPtr selDelegateHandle = Selector.GetHandle("delegate");
|
|
|
|
private static readonly IntPtr selSetDelegate_Handle = Selector.GetHandle("setDelegate:");
|
|
|
|
private static readonly IntPtr selCacheModeHandle = Selector.GetHandle("cacheMode");
|
|
|
|
private static readonly IntPtr selSetCacheMode_Handle = Selector.GetHandle("setCacheMode:");
|
|
|
|
private static readonly IntPtr selAlignmentRectHandle = Selector.GetHandle("alignmentRect");
|
|
|
|
private static readonly IntPtr selSetAlignmentRect_Handle = Selector.GetHandle("setAlignmentRect:");
|
|
|
|
private static readonly IntPtr selIsTemplateHandle = Selector.GetHandle("isTemplate");
|
|
|
|
private static readonly IntPtr selSetTemplate_Handle = Selector.GetHandle("setTemplate:");
|
|
|
|
private static readonly IntPtr selIsFlippedHandle = Selector.GetHandle("isFlipped");
|
|
|
|
private static readonly IntPtr selSetFlipped_Handle = Selector.GetHandle("setFlipped:");
|
|
|
|
private static readonly IntPtr selImageNamed_Handle = Selector.GetHandle("imageNamed:");
|
|
|
|
private static readonly IntPtr selInitWithSize_Handle = Selector.GetHandle("initWithSize:");
|
|
|
|
private static readonly IntPtr selInitWithData_Handle = Selector.GetHandle("initWithData:");
|
|
|
|
private static readonly IntPtr selInitWithContentsOfFile_Handle = Selector.GetHandle("initWithContentsOfFile:");
|
|
|
|
private static readonly IntPtr selInitWithContentsOfURL_Handle = Selector.GetHandle("initWithContentsOfURL:");
|
|
|
|
private static readonly IntPtr selInitWithPasteboard_Handle = Selector.GetHandle("initWithPasteboard:");
|
|
|
|
private static readonly IntPtr selDrawAtPointFromRectOperationFraction_Handle = Selector.GetHandle("drawAtPoint:fromRect:operation:fraction:");
|
|
|
|
private static readonly IntPtr selDrawInRectFromRectOperationFraction_Handle = Selector.GetHandle("drawInRect:fromRect:operation:fraction:");
|
|
|
|
private static readonly IntPtr selDrawInRectFromRectOperationFractionRespectFlippedHints_Handle = Selector.GetHandle("drawInRect:fromRect:operation:fraction:respectFlipped:hints:");
|
|
|
|
private static readonly IntPtr selDrawRepresentationInRect_Handle = Selector.GetHandle("drawRepresentation:inRect:");
|
|
|
|
private static readonly IntPtr selRecacheHandle = Selector.GetHandle("recache");
|
|
|
|
private static readonly IntPtr selTIFFRepresentationHandle = Selector.GetHandle("TIFFRepresentation");
|
|
|
|
private static readonly IntPtr selTIFFRepresentationUsingCompressionFactor_Handle = Selector.GetHandle("TIFFRepresentationUsingCompression:factor:");
|
|
|
|
private static readonly IntPtr selRepresentationsHandle = Selector.GetHandle("representations");
|
|
|
|
private static readonly IntPtr selAddRepresentations_Handle = Selector.GetHandle("addRepresentations:");
|
|
|
|
private static readonly IntPtr selAddRepresentation_Handle = Selector.GetHandle("addRepresentation:");
|
|
|
|
private static readonly IntPtr selRemoveRepresentation_Handle = Selector.GetHandle("removeRepresentation:");
|
|
|
|
private static readonly IntPtr selLockFocusHandle = Selector.GetHandle("lockFocus");
|
|
|
|
private static readonly IntPtr selLockFocusFlipped_Handle = Selector.GetHandle("lockFocusFlipped:");
|
|
|
|
private static readonly IntPtr selUnlockFocusHandle = Selector.GetHandle("unlockFocus");
|
|
|
|
private static readonly IntPtr selBestRepresentationForDevice_Handle = Selector.GetHandle("bestRepresentationForDevice:");
|
|
|
|
private static readonly IntPtr selImageUnfilteredFileTypesHandle = Selector.GetHandle("imageUnfilteredFileTypes");
|
|
|
|
private static readonly IntPtr selImageUnfilteredPasteboardTypesHandle = Selector.GetHandle("imageUnfilteredPasteboardTypes");
|
|
|
|
private static readonly IntPtr selCanInitWithPasteboard_Handle = Selector.GetHandle("canInitWithPasteboard:");
|
|
|
|
private static readonly IntPtr selCancelIncrementalLoadHandle = Selector.GetHandle("cancelIncrementalLoad");
|
|
|
|
private static readonly IntPtr selInitWithCGImageSize_Handle = Selector.GetHandle("initWithCGImage:size:");
|
|
|
|
private static readonly IntPtr selCGImageForProposedRectContextHints_Handle = Selector.GetHandle("CGImageForProposedRect:context:hints:");
|
|
|
|
private static readonly IntPtr selBestRepresentationForRectContextHints_Handle = Selector.GetHandle("bestRepresentationForRect:context:hints:");
|
|
|
|
private static readonly IntPtr selHitTestRectWithImageDestinationRectContextHintsFlipped_Handle = Selector.GetHandle("hitTestRect:withImageDestinationRect:context:hints:flipped:");
|
|
|
|
private static readonly IntPtr selNameHandle = Selector.GetHandle("name");
|
|
|
|
private static readonly IntPtr selSetName_Handle = Selector.GetHandle("setName:");
|
|
|
|
private static readonly IntPtr selSizeWithAttributes_Handle = Selector.GetHandle("sizeWithAttributes:");
|
|
|
|
private static readonly IntPtr selDrawInRectWithAttributes_Handle = Selector.GetHandle("drawInRect:withAttributes:");
|
|
|
|
private static readonly IntPtr class_ptr = Class.GetHandle("NSImage");
|
|
|
|
private object __mt_BackgroundColor_var;
|
|
|
|
private object __mt_WeakDelegate_var;
|
|
|
|
private static NSString _NSImageNameQuickLookTemplate;
|
|
|
|
private static NSString _NSImageNameBluetoothTemplate;
|
|
|
|
private static NSString _NSImageNameIChatTheaterTemplate;
|
|
|
|
private static NSString _NSImageNameSlideshowTemplate;
|
|
|
|
private static NSString _NSImageNameActionTemplate;
|
|
|
|
private static NSString _NSImageNameSmartBadgeTemplate;
|
|
|
|
private static NSString _NSImageNamePathTemplate;
|
|
|
|
private static NSString _NSImageNameInvalidDataFreestandingTemplate;
|
|
|
|
private static NSString _NSImageNameLockLockedTemplate;
|
|
|
|
private static NSString _NSImageNameLockUnlockedTemplate;
|
|
|
|
private static NSString _NSImageNameGoRightTemplate;
|
|
|
|
private static NSString _NSImageNameGoLeftTemplate;
|
|
|
|
private static NSString _NSImageNameRightFacingTriangleTemplate;
|
|
|
|
private static NSString _NSImageNameLeftFacingTriangleTemplate;
|
|
|
|
private static NSString _NSImageNameAddTemplate;
|
|
|
|
private static NSString _NSImageNameRemoveTemplate;
|
|
|
|
private static NSString _NSImageNameRevealFreestandingTemplate;
|
|
|
|
private static NSString _NSImageNameFollowLinkFreestandingTemplate;
|
|
|
|
private static NSString _NSImageNameEnterFullScreenTemplate;
|
|
|
|
private static NSString _NSImageNameExitFullScreenTemplate;
|
|
|
|
private static NSString _NSImageNameStopProgressTemplate;
|
|
|
|
private static NSString _NSImageNameStopProgressFreestandingTemplate;
|
|
|
|
private static NSString _NSImageNameRefreshTemplate;
|
|
|
|
private static NSString _NSImageNameRefreshFreestandingTemplate;
|
|
|
|
private static NSString _NSImageNameFolder;
|
|
|
|
private static NSString _NSImageNameTrashEmpty;
|
|
|
|
private static NSString _NSImageNameTrashFull;
|
|
|
|
private static NSString _NSImageNameHomeTemplate;
|
|
|
|
private static NSString _NSImageNameBookmarksTemplate;
|
|
|
|
private static NSString _NSImageNameCaution;
|
|
|
|
private static NSString _NSImageNameStatusAvailable;
|
|
|
|
private static NSString _NSImageNameStatusPartiallyAvailable;
|
|
|
|
private static NSString _NSImageNameStatusUnavailable;
|
|
|
|
private static NSString _NSImageNameStatusNone;
|
|
|
|
private static NSString _NSImageNameApplicationIcon;
|
|
|
|
private static NSString _NSImageNameMenuOnStateTemplate;
|
|
|
|
private static NSString _NSImageNameMenuMixedStateTemplate;
|
|
|
|
private static NSString _NSImageNameUserGuest;
|
|
|
|
private static NSString _NSImageNameMobileMe;
|
|
|
|
public CGImage CGImage
|
|
{
|
|
get
|
|
{
|
|
CGRect proposedDestRect = CGRect.Empty;
|
|
return AsCGImage(ref proposedDestRect, null, null);
|
|
}
|
|
}
|
|
|
|
public string Name
|
|
{
|
|
get
|
|
{
|
|
return GetName();
|
|
}
|
|
set
|
|
{
|
|
SetName(value);
|
|
}
|
|
}
|
|
|
|
public override IntPtr ClassHandle => class_ptr;
|
|
|
|
public virtual bool IsValid
|
|
{
|
|
[Export("isValid")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend(base.Handle, selIsValidHandle);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper(base.SuperHandle, selIsValidHandle);
|
|
}
|
|
}
|
|
|
|
public static string[] ImageFileTypes
|
|
{
|
|
[Export("imageFileTypes")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
return NSArray.StringArrayFromHandle(Messaging.IntPtr_objc_msgSend(class_ptr, selImageFileTypesHandle));
|
|
}
|
|
}
|
|
|
|
public static string[] ImagePasteboardTypes
|
|
{
|
|
[Export("imagePasteboardTypes")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
return NSArray.StringArrayFromHandle(Messaging.IntPtr_objc_msgSend(class_ptr, selImagePasteboardTypesHandle));
|
|
}
|
|
}
|
|
|
|
public static string[] ImageTypes
|
|
{
|
|
[Export("imageTypes")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
return NSArray.StringArrayFromHandle(Messaging.IntPtr_objc_msgSend(class_ptr, selImageTypesHandle));
|
|
}
|
|
}
|
|
|
|
public static string[] ImageUnfilteredTypes
|
|
{
|
|
[Export("imageUnfilteredTypes")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
return NSArray.StringArrayFromHandle(Messaging.IntPtr_objc_msgSend(class_ptr, selImageUnfilteredTypesHandle));
|
|
}
|
|
}
|
|
|
|
public virtual string AccessibilityDescription
|
|
{
|
|
[Export("accessibilityDescription")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return NSString.FromHandle(Messaging.IntPtr_objc_msgSend(base.Handle, selAccessibilityDescriptionHandle));
|
|
}
|
|
return NSString.FromHandle(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selAccessibilityDescriptionHandle));
|
|
}
|
|
[Export("setAccessibilityDescription:")]
|
|
set
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (value == null)
|
|
{
|
|
throw new ArgumentNullException("value");
|
|
}
|
|
IntPtr intPtr = NSString.CreateNative(value);
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selSetAccessibilityDescription_Handle, intPtr);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selSetAccessibilityDescription_Handle, intPtr);
|
|
}
|
|
NSString.ReleaseNative(intPtr);
|
|
}
|
|
}
|
|
|
|
public virtual CGSize Size
|
|
{
|
|
[Export("size")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.CGSize_objc_msgSend(base.Handle, selSizeHandle);
|
|
}
|
|
return Messaging.CGSize_objc_msgSendSuper(base.SuperHandle, selSizeHandle);
|
|
}
|
|
[Export("setSize:")]
|
|
set
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_CGSize(base.Handle, selSetSize_Handle, value);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_CGSize(base.SuperHandle, selSetSize_Handle, value);
|
|
}
|
|
}
|
|
}
|
|
|
|
public virtual NSColor BackgroundColor
|
|
{
|
|
[Export("backgroundColor")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
return (NSColor)(__mt_BackgroundColor_var = ((!IsDirectBinding) ? ((NSColor)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selBackgroundColorHandle))) : ((NSColor)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selBackgroundColorHandle)))));
|
|
}
|
|
[Export("setBackgroundColor:")]
|
|
set
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (value == null)
|
|
{
|
|
throw new ArgumentNullException("value");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selSetBackgroundColor_Handle, value.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selSetBackgroundColor_Handle, value.Handle);
|
|
}
|
|
__mt_BackgroundColor_var = value;
|
|
}
|
|
}
|
|
|
|
public virtual bool UsesEpsOnResolutionMismatch
|
|
{
|
|
[Export("usesEPSOnResolutionMismatch")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend(base.Handle, selUsesEPSOnResolutionMismatchHandle);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper(base.SuperHandle, selUsesEPSOnResolutionMismatchHandle);
|
|
}
|
|
[Export("setUsesEPSOnResolutionMismatch:")]
|
|
set
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_bool(base.Handle, selSetUsesEPSOnResolutionMismatch_Handle, value);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_bool(base.SuperHandle, selSetUsesEPSOnResolutionMismatch_Handle, value);
|
|
}
|
|
}
|
|
}
|
|
|
|
public virtual bool PrefersColorMatch
|
|
{
|
|
[Export("prefersColorMatch")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend(base.Handle, selPrefersColorMatchHandle);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper(base.SuperHandle, selPrefersColorMatchHandle);
|
|
}
|
|
[Export("setPrefersColorMatch:")]
|
|
set
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_bool(base.Handle, selSetPrefersColorMatch_Handle, value);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_bool(base.SuperHandle, selSetPrefersColorMatch_Handle, value);
|
|
}
|
|
}
|
|
}
|
|
|
|
public virtual bool MatchesOnMultipleResolution
|
|
{
|
|
[Export("matchesOnMultipleResolution")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend(base.Handle, selMatchesOnMultipleResolutionHandle);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper(base.SuperHandle, selMatchesOnMultipleResolutionHandle);
|
|
}
|
|
[Export("setMatchesOnMultipleResolution:")]
|
|
set
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_bool(base.Handle, selSetMatchesOnMultipleResolution_Handle, value);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_bool(base.SuperHandle, selSetMatchesOnMultipleResolution_Handle, value);
|
|
}
|
|
}
|
|
}
|
|
|
|
public virtual NSObject WeakDelegate
|
|
{
|
|
[Export("delegate")]
|
|
get
|
|
{
|
|
NSApplication.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:")]
|
|
set
|
|
{
|
|
NSApplication.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 NSImageDelegate Delegate
|
|
{
|
|
get
|
|
{
|
|
return WeakDelegate as NSImageDelegate;
|
|
}
|
|
set
|
|
{
|
|
WeakDelegate = value;
|
|
}
|
|
}
|
|
|
|
public virtual NSImageCacheMode CacheMode
|
|
{
|
|
[Export("cacheMode")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return (NSImageCacheMode)Messaging.UInt64_objc_msgSend(base.Handle, selCacheModeHandle);
|
|
}
|
|
return (NSImageCacheMode)Messaging.UInt64_objc_msgSendSuper(base.SuperHandle, selCacheModeHandle);
|
|
}
|
|
[Export("setCacheMode:")]
|
|
set
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_UInt64(base.Handle, selSetCacheMode_Handle, (ulong)value);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_UInt64(base.SuperHandle, selSetCacheMode_Handle, (ulong)value);
|
|
}
|
|
}
|
|
}
|
|
|
|
public virtual CGRect AlignmentRect
|
|
{
|
|
[Export("alignmentRect")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
CGRect retval;
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.CGRect_objc_msgSend_stret(out retval, base.Handle, selAlignmentRectHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.CGRect_objc_msgSendSuper_stret(out retval, base.SuperHandle, selAlignmentRectHandle);
|
|
}
|
|
return retval;
|
|
}
|
|
[Export("setAlignmentRect:")]
|
|
set
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_CGRect(base.Handle, selSetAlignmentRect_Handle, value);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_CGRect(base.SuperHandle, selSetAlignmentRect_Handle, value);
|
|
}
|
|
}
|
|
}
|
|
|
|
public virtual bool Template
|
|
{
|
|
[Export("isTemplate")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend(base.Handle, selIsTemplateHandle);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper(base.SuperHandle, selIsTemplateHandle);
|
|
}
|
|
[Export("setTemplate:")]
|
|
set
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_bool(base.Handle, selSetTemplate_Handle, value);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_bool(base.SuperHandle, selSetTemplate_Handle, value);
|
|
}
|
|
}
|
|
}
|
|
|
|
[Obsolete("On 10.6 and newer use DrawInRect with respectContextIsFlipped instead", false)]
|
|
public virtual bool Flipped
|
|
{
|
|
[Export("isFlipped")]
|
|
get
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend(base.Handle, selIsFlippedHandle);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper(base.SuperHandle, selIsFlippedHandle);
|
|
}
|
|
[Export("setFlipped:")]
|
|
set
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_bool(base.Handle, selSetFlipped_Handle, value);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_bool(base.SuperHandle, selSetFlipped_Handle, value);
|
|
}
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameQuickLookTemplate", "AppKit")]
|
|
internal static NSString NSImageNameQuickLookTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameQuickLookTemplate == null)
|
|
{
|
|
_NSImageNameQuickLookTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameQuickLookTemplate");
|
|
}
|
|
return _NSImageNameQuickLookTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameBluetoothTemplate", "AppKit")]
|
|
internal static NSString NSImageNameBluetoothTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameBluetoothTemplate == null)
|
|
{
|
|
_NSImageNameBluetoothTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameBluetoothTemplate");
|
|
}
|
|
return _NSImageNameBluetoothTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameIChatTheaterTemplate", "AppKit")]
|
|
internal static NSString NSImageNameIChatTheaterTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameIChatTheaterTemplate == null)
|
|
{
|
|
_NSImageNameIChatTheaterTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameIChatTheaterTemplate");
|
|
}
|
|
return _NSImageNameIChatTheaterTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameSlideshowTemplate", "AppKit")]
|
|
internal static NSString NSImageNameSlideshowTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameSlideshowTemplate == null)
|
|
{
|
|
_NSImageNameSlideshowTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameSlideshowTemplate");
|
|
}
|
|
return _NSImageNameSlideshowTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameActionTemplate", "AppKit")]
|
|
internal static NSString NSImageNameActionTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameActionTemplate == null)
|
|
{
|
|
_NSImageNameActionTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameActionTemplate");
|
|
}
|
|
return _NSImageNameActionTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameSmartBadgeTemplate", "AppKit")]
|
|
internal static NSString NSImageNameSmartBadgeTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameSmartBadgeTemplate == null)
|
|
{
|
|
_NSImageNameSmartBadgeTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameSmartBadgeTemplate");
|
|
}
|
|
return _NSImageNameSmartBadgeTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNamePathTemplate", "AppKit")]
|
|
internal static NSString NSImageNamePathTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNamePathTemplate == null)
|
|
{
|
|
_NSImageNamePathTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNamePathTemplate");
|
|
}
|
|
return _NSImageNamePathTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameInvalidDataFreestandingTemplate", "AppKit")]
|
|
internal static NSString NSImageNameInvalidDataFreestandingTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameInvalidDataFreestandingTemplate == null)
|
|
{
|
|
_NSImageNameInvalidDataFreestandingTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameInvalidDataFreestandingTemplate");
|
|
}
|
|
return _NSImageNameInvalidDataFreestandingTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameLockLockedTemplate", "AppKit")]
|
|
internal static NSString NSImageNameLockLockedTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameLockLockedTemplate == null)
|
|
{
|
|
_NSImageNameLockLockedTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameLockLockedTemplate");
|
|
}
|
|
return _NSImageNameLockLockedTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameLockUnlockedTemplate", "AppKit")]
|
|
internal static NSString NSImageNameLockUnlockedTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameLockUnlockedTemplate == null)
|
|
{
|
|
_NSImageNameLockUnlockedTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameLockUnlockedTemplate");
|
|
}
|
|
return _NSImageNameLockUnlockedTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameGoRightTemplate", "AppKit")]
|
|
internal static NSString NSImageNameGoRightTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameGoRightTemplate == null)
|
|
{
|
|
_NSImageNameGoRightTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameGoRightTemplate");
|
|
}
|
|
return _NSImageNameGoRightTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameGoLeftTemplate", "AppKit")]
|
|
internal static NSString NSImageNameGoLeftTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameGoLeftTemplate == null)
|
|
{
|
|
_NSImageNameGoLeftTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameGoLeftTemplate");
|
|
}
|
|
return _NSImageNameGoLeftTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameRightFacingTriangleTemplate", "AppKit")]
|
|
internal static NSString NSImageNameRightFacingTriangleTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameRightFacingTriangleTemplate == null)
|
|
{
|
|
_NSImageNameRightFacingTriangleTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameRightFacingTriangleTemplate");
|
|
}
|
|
return _NSImageNameRightFacingTriangleTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameLeftFacingTriangleTemplate", "AppKit")]
|
|
internal static NSString NSImageNameLeftFacingTriangleTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameLeftFacingTriangleTemplate == null)
|
|
{
|
|
_NSImageNameLeftFacingTriangleTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameLeftFacingTriangleTemplate");
|
|
}
|
|
return _NSImageNameLeftFacingTriangleTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameAddTemplate", "AppKit")]
|
|
internal static NSString NSImageNameAddTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameAddTemplate == null)
|
|
{
|
|
_NSImageNameAddTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameAddTemplate");
|
|
}
|
|
return _NSImageNameAddTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameRemoveTemplate", "AppKit")]
|
|
internal static NSString NSImageNameRemoveTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameRemoveTemplate == null)
|
|
{
|
|
_NSImageNameRemoveTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameRemoveTemplate");
|
|
}
|
|
return _NSImageNameRemoveTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameRevealFreestandingTemplate", "AppKit")]
|
|
internal static NSString NSImageNameRevealFreestandingTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameRevealFreestandingTemplate == null)
|
|
{
|
|
_NSImageNameRevealFreestandingTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameRevealFreestandingTemplate");
|
|
}
|
|
return _NSImageNameRevealFreestandingTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameFollowLinkFreestandingTemplate", "AppKit")]
|
|
internal static NSString NSImageNameFollowLinkFreestandingTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameFollowLinkFreestandingTemplate == null)
|
|
{
|
|
_NSImageNameFollowLinkFreestandingTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameFollowLinkFreestandingTemplate");
|
|
}
|
|
return _NSImageNameFollowLinkFreestandingTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameEnterFullScreenTemplate", "AppKit")]
|
|
internal static NSString NSImageNameEnterFullScreenTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameEnterFullScreenTemplate == null)
|
|
{
|
|
_NSImageNameEnterFullScreenTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameEnterFullScreenTemplate");
|
|
}
|
|
return _NSImageNameEnterFullScreenTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameExitFullScreenTemplate", "AppKit")]
|
|
internal static NSString NSImageNameExitFullScreenTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameExitFullScreenTemplate == null)
|
|
{
|
|
_NSImageNameExitFullScreenTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameExitFullScreenTemplate");
|
|
}
|
|
return _NSImageNameExitFullScreenTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameStopProgressTemplate", "AppKit")]
|
|
internal static NSString NSImageNameStopProgressTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameStopProgressTemplate == null)
|
|
{
|
|
_NSImageNameStopProgressTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameStopProgressTemplate");
|
|
}
|
|
return _NSImageNameStopProgressTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameStopProgressFreestandingTemplate", "AppKit")]
|
|
internal static NSString NSImageNameStopProgressFreestandingTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameStopProgressFreestandingTemplate == null)
|
|
{
|
|
_NSImageNameStopProgressFreestandingTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameStopProgressFreestandingTemplate");
|
|
}
|
|
return _NSImageNameStopProgressFreestandingTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameRefreshTemplate", "AppKit")]
|
|
internal static NSString NSImageNameRefreshTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameRefreshTemplate == null)
|
|
{
|
|
_NSImageNameRefreshTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameRefreshTemplate");
|
|
}
|
|
return _NSImageNameRefreshTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameRefreshFreestandingTemplate", "AppKit")]
|
|
internal static NSString NSImageNameRefreshFreestandingTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameRefreshFreestandingTemplate == null)
|
|
{
|
|
_NSImageNameRefreshFreestandingTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameRefreshFreestandingTemplate");
|
|
}
|
|
return _NSImageNameRefreshFreestandingTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameFolder", "AppKit")]
|
|
internal static NSString NSImageNameFolder
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameFolder == null)
|
|
{
|
|
_NSImageNameFolder = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameFolder");
|
|
}
|
|
return _NSImageNameFolder;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameTrashEmpty", "AppKit")]
|
|
internal static NSString NSImageNameTrashEmpty
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameTrashEmpty == null)
|
|
{
|
|
_NSImageNameTrashEmpty = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameTrashEmpty");
|
|
}
|
|
return _NSImageNameTrashEmpty;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameTrashFull", "AppKit")]
|
|
internal static NSString NSImageNameTrashFull
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameTrashFull == null)
|
|
{
|
|
_NSImageNameTrashFull = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameTrashFull");
|
|
}
|
|
return _NSImageNameTrashFull;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameHomeTemplate", "AppKit")]
|
|
internal static NSString NSImageNameHomeTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameHomeTemplate == null)
|
|
{
|
|
_NSImageNameHomeTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameHomeTemplate");
|
|
}
|
|
return _NSImageNameHomeTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameBookmarksTemplate", "AppKit")]
|
|
internal static NSString NSImageNameBookmarksTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameBookmarksTemplate == null)
|
|
{
|
|
_NSImageNameBookmarksTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameBookmarksTemplate");
|
|
}
|
|
return _NSImageNameBookmarksTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameCaution", "AppKit")]
|
|
internal static NSString NSImageNameCaution
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameCaution == null)
|
|
{
|
|
_NSImageNameCaution = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameCaution");
|
|
}
|
|
return _NSImageNameCaution;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameStatusAvailable", "AppKit")]
|
|
internal static NSString NSImageNameStatusAvailable
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameStatusAvailable == null)
|
|
{
|
|
_NSImageNameStatusAvailable = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameStatusAvailable");
|
|
}
|
|
return _NSImageNameStatusAvailable;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameStatusPartiallyAvailable", "AppKit")]
|
|
internal static NSString NSImageNameStatusPartiallyAvailable
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameStatusPartiallyAvailable == null)
|
|
{
|
|
_NSImageNameStatusPartiallyAvailable = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameStatusPartiallyAvailable");
|
|
}
|
|
return _NSImageNameStatusPartiallyAvailable;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameStatusUnavailable", "AppKit")]
|
|
internal static NSString NSImageNameStatusUnavailable
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameStatusUnavailable == null)
|
|
{
|
|
_NSImageNameStatusUnavailable = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameStatusUnavailable");
|
|
}
|
|
return _NSImageNameStatusUnavailable;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameStatusNone", "AppKit")]
|
|
internal static NSString NSImageNameStatusNone
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameStatusNone == null)
|
|
{
|
|
_NSImageNameStatusNone = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameStatusNone");
|
|
}
|
|
return _NSImageNameStatusNone;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameApplicationIcon", "AppKit")]
|
|
internal static NSString NSImageNameApplicationIcon
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameApplicationIcon == null)
|
|
{
|
|
_NSImageNameApplicationIcon = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameApplicationIcon");
|
|
}
|
|
return _NSImageNameApplicationIcon;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameMenuOnStateTemplate", "AppKit")]
|
|
internal static NSString NSImageNameMenuOnStateTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameMenuOnStateTemplate == null)
|
|
{
|
|
_NSImageNameMenuOnStateTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameMenuOnStateTemplate");
|
|
}
|
|
return _NSImageNameMenuOnStateTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameMenuMixedStateTemplate", "AppKit")]
|
|
internal static NSString NSImageNameMenuMixedStateTemplate
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameMenuMixedStateTemplate == null)
|
|
{
|
|
_NSImageNameMenuMixedStateTemplate = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameMenuMixedStateTemplate");
|
|
}
|
|
return _NSImageNameMenuMixedStateTemplate;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameUserGuest", "AppKit")]
|
|
internal static NSString NSImageNameUserGuest
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameUserGuest == null)
|
|
{
|
|
_NSImageNameUserGuest = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameUserGuest");
|
|
}
|
|
return _NSImageNameUserGuest;
|
|
}
|
|
}
|
|
|
|
[Field("NSImageNameMobileMe", "AppKit")]
|
|
internal static NSString NSImageNameMobileMe
|
|
{
|
|
get
|
|
{
|
|
if (_NSImageNameMobileMe == null)
|
|
{
|
|
_NSImageNameMobileMe = Dlfcn.GetStringConstant(Libraries.AppKit.Handle, "NSImageNameMobileMe");
|
|
}
|
|
return _NSImageNameMobileMe;
|
|
}
|
|
}
|
|
|
|
public NSImageRect ImageDidNotDraw
|
|
{
|
|
get
|
|
{
|
|
return EnsureNSImageDelegate().imageDidNotDraw;
|
|
}
|
|
set
|
|
{
|
|
EnsureNSImageDelegate().imageDidNotDraw = value;
|
|
}
|
|
}
|
|
|
|
public event EventHandler<NSImageLoadEventArgs> WillLoadRepresentation
|
|
{
|
|
add
|
|
{
|
|
_NSImageDelegate nSImageDelegate = EnsureNSImageDelegate();
|
|
nSImageDelegate.willLoadRepresentation = (EventHandler<NSImageLoadEventArgs>)System.Delegate.Combine(nSImageDelegate.willLoadRepresentation, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSImageDelegate nSImageDelegate = EnsureNSImageDelegate();
|
|
nSImageDelegate.willLoadRepresentation = (EventHandler<NSImageLoadEventArgs>)System.Delegate.Remove(nSImageDelegate.willLoadRepresentation, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler<NSImageLoadEventArgs> DidLoadRepresentationHeader
|
|
{
|
|
add
|
|
{
|
|
_NSImageDelegate nSImageDelegate = EnsureNSImageDelegate();
|
|
nSImageDelegate.didLoadRepresentationHeader = (EventHandler<NSImageLoadEventArgs>)System.Delegate.Combine(nSImageDelegate.didLoadRepresentationHeader, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSImageDelegate nSImageDelegate = EnsureNSImageDelegate();
|
|
nSImageDelegate.didLoadRepresentationHeader = (EventHandler<NSImageLoadEventArgs>)System.Delegate.Remove(nSImageDelegate.didLoadRepresentationHeader, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler<NSImagePartialEventArgs> DidLoadPartOfRepresentation
|
|
{
|
|
add
|
|
{
|
|
_NSImageDelegate nSImageDelegate = EnsureNSImageDelegate();
|
|
nSImageDelegate.didLoadPartOfRepresentation = (EventHandler<NSImagePartialEventArgs>)System.Delegate.Combine(nSImageDelegate.didLoadPartOfRepresentation, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSImageDelegate nSImageDelegate = EnsureNSImageDelegate();
|
|
nSImageDelegate.didLoadPartOfRepresentation = (EventHandler<NSImagePartialEventArgs>)System.Delegate.Remove(nSImageDelegate.didLoadPartOfRepresentation, value);
|
|
}
|
|
}
|
|
|
|
public event EventHandler<NSImageLoadRepresentationEventArgs> DidLoadRepresentation
|
|
{
|
|
add
|
|
{
|
|
_NSImageDelegate nSImageDelegate = EnsureNSImageDelegate();
|
|
nSImageDelegate.didLoadRepresentation = (EventHandler<NSImageLoadRepresentationEventArgs>)System.Delegate.Combine(nSImageDelegate.didLoadRepresentation, value);
|
|
}
|
|
remove
|
|
{
|
|
_NSImageDelegate nSImageDelegate = EnsureNSImageDelegate();
|
|
nSImageDelegate.didLoadRepresentation = (EventHandler<NSImageLoadRepresentationEventArgs>)System.Delegate.Remove(nSImageDelegate.didLoadRepresentation, value);
|
|
}
|
|
}
|
|
|
|
public static NSImage FromStream(Stream stream)
|
|
{
|
|
using (NSData data = NSData.FromStream(stream))
|
|
{
|
|
return new NSImage(data);
|
|
}
|
|
}
|
|
|
|
public static NSImage ImageNamed(NSImageName name)
|
|
{
|
|
switch (name)
|
|
{
|
|
case NSImageName.QuickLookTemplate:
|
|
return ImageNamed(NSImageNameQuickLookTemplate);
|
|
case NSImageName.BluetoothTemplate:
|
|
return ImageNamed(NSImageNameBluetoothTemplate);
|
|
case NSImageName.IChatTheaterTemplate:
|
|
return ImageNamed(NSImageNameIChatTheaterTemplate);
|
|
case NSImageName.SlideshowTemplate:
|
|
return ImageNamed(NSImageNameSlideshowTemplate);
|
|
case NSImageName.ActionTemplate:
|
|
return ImageNamed(NSImageNameActionTemplate);
|
|
case NSImageName.SmartBadgeTemplate:
|
|
return ImageNamed(NSImageNameSmartBadgeTemplate);
|
|
case NSImageName.PathTemplate:
|
|
return ImageNamed(NSImageNamePathTemplate);
|
|
case NSImageName.InvalidDataFreestandingTemplate:
|
|
return ImageNamed(NSImageNameInvalidDataFreestandingTemplate);
|
|
case NSImageName.LockLockedTemplate:
|
|
return ImageNamed(NSImageNameLockLockedTemplate);
|
|
case NSImageName.LockUnlockedTemplate:
|
|
return ImageNamed(NSImageNameLockUnlockedTemplate);
|
|
case NSImageName.GoRightTemplate:
|
|
return ImageNamed(NSImageNameGoRightTemplate);
|
|
case NSImageName.GoLeftTemplate:
|
|
return ImageNamed(NSImageNameGoLeftTemplate);
|
|
case NSImageName.RightFacingTriangleTemplate:
|
|
return ImageNamed(NSImageNameRightFacingTriangleTemplate);
|
|
case NSImageName.LeftFacingTriangleTemplate:
|
|
return ImageNamed(NSImageNameLeftFacingTriangleTemplate);
|
|
case NSImageName.AddTemplate:
|
|
return ImageNamed(NSImageNameAddTemplate);
|
|
case NSImageName.RemoveTemplate:
|
|
return ImageNamed(NSImageNameRemoveTemplate);
|
|
case NSImageName.RevealFreestandingTemplate:
|
|
return ImageNamed(NSImageNameRevealFreestandingTemplate);
|
|
case NSImageName.FollowLinkFreestandingTemplate:
|
|
return ImageNamed(NSImageNameFollowLinkFreestandingTemplate);
|
|
case NSImageName.EnterFullScreenTemplate:
|
|
return ImageNamed(NSImageNameEnterFullScreenTemplate);
|
|
case NSImageName.ExitFullScreenTemplate:
|
|
return ImageNamed(NSImageNameExitFullScreenTemplate);
|
|
case NSImageName.StopProgressTemplate:
|
|
return ImageNamed(NSImageNameStopProgressTemplate);
|
|
case NSImageName.StopProgressFreestandingTemplate:
|
|
return ImageNamed(NSImageNameStopProgressFreestandingTemplate);
|
|
case NSImageName.RefreshTemplate:
|
|
return ImageNamed(NSImageNameRefreshTemplate);
|
|
case NSImageName.RefreshFreestandingTemplate:
|
|
return ImageNamed(NSImageNameRefreshFreestandingTemplate);
|
|
case NSImageName.Folder:
|
|
return ImageNamed(NSImageNameFolder);
|
|
case NSImageName.TrashEmpty:
|
|
return ImageNamed(NSImageNameTrashEmpty);
|
|
case NSImageName.TrashFull:
|
|
return ImageNamed(NSImageNameTrashFull);
|
|
case NSImageName.HomeTemplate:
|
|
return ImageNamed(NSImageNameHomeTemplate);
|
|
case NSImageName.BookmarksTemplate:
|
|
return ImageNamed(NSImageNameBookmarksTemplate);
|
|
case NSImageName.Caution:
|
|
return ImageNamed(NSImageNameCaution);
|
|
case NSImageName.StatusAvailable:
|
|
return ImageNamed(NSImageNameStatusAvailable);
|
|
case NSImageName.StatusPartiallyAvailable:
|
|
return ImageNamed(NSImageNameStatusPartiallyAvailable);
|
|
case NSImageName.StatusUnavailable:
|
|
return ImageNamed(NSImageNameStatusUnavailable);
|
|
case NSImageName.StatusNone:
|
|
return ImageNamed(NSImageNameStatusNone);
|
|
case NSImageName.ApplicationIcon:
|
|
return ImageNamed(NSImageNameApplicationIcon);
|
|
case NSImageName.MenuOnStateTemplate:
|
|
return ImageNamed(NSImageNameMenuOnStateTemplate);
|
|
case NSImageName.MenuMixedStateTemplate:
|
|
return ImageNamed(NSImageNameMenuMixedStateTemplate);
|
|
case NSImageName.UserGuest:
|
|
return ImageNamed(NSImageNameUserGuest);
|
|
case NSImageName.MobileMe:
|
|
return ImageNamed(NSImageNameMobileMe);
|
|
default:
|
|
throw new ArgumentException("Invalid enum value", "name");
|
|
}
|
|
}
|
|
|
|
[EditorBrowsable(EditorBrowsableState.Advanced)]
|
|
[Export("init")]
|
|
public NSImage()
|
|
: base(NSObjectFlag.Empty)
|
|
{
|
|
if (IsDirectBinding)
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSend(base.Handle, Selector.Init);
|
|
}
|
|
else
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, Selector.Init);
|
|
}
|
|
}
|
|
|
|
[EditorBrowsable(EditorBrowsableState.Advanced)]
|
|
[Export("initWithCoder:")]
|
|
public NSImage(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 NSImage(NSObjectFlag t)
|
|
: base(t)
|
|
{
|
|
}
|
|
|
|
[EditorBrowsable(EditorBrowsableState.Advanced)]
|
|
public NSImage(IntPtr handle)
|
|
: base(handle)
|
|
{
|
|
}
|
|
|
|
[Export("imageNamed:")]
|
|
public static NSImage ImageNamed(string name)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (name == null)
|
|
{
|
|
throw new ArgumentNullException("name");
|
|
}
|
|
IntPtr intPtr = NSString.CreateNative(name);
|
|
NSImage result = (NSImage)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend_IntPtr(class_ptr, selImageNamed_Handle, intPtr));
|
|
NSString.ReleaseNative(intPtr);
|
|
return result;
|
|
}
|
|
|
|
[Export("initWithSize:")]
|
|
public NSImage(CGSize aSize)
|
|
: base(NSObjectFlag.Empty)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSend_CGSize(base.Handle, selInitWithSize_Handle, aSize);
|
|
}
|
|
else
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSendSuper_CGSize(base.SuperHandle, selInitWithSize_Handle, aSize);
|
|
}
|
|
}
|
|
|
|
[Export("initWithData:")]
|
|
public NSImage(NSData data)
|
|
: base(NSObjectFlag.Empty)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (data == null)
|
|
{
|
|
throw new ArgumentNullException("data");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSend_IntPtr(base.Handle, selInitWithData_Handle, data.Handle);
|
|
}
|
|
else
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSendSuper_IntPtr(base.SuperHandle, selInitWithData_Handle, data.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("initWithContentsOfFile:")]
|
|
public NSImage(string fileName)
|
|
: base(NSObjectFlag.Empty)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (fileName == null)
|
|
{
|
|
throw new ArgumentNullException("fileName");
|
|
}
|
|
IntPtr intPtr = NSString.CreateNative(fileName);
|
|
if (IsDirectBinding)
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSend_IntPtr(base.Handle, selInitWithContentsOfFile_Handle, intPtr);
|
|
}
|
|
else
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSendSuper_IntPtr(base.SuperHandle, selInitWithContentsOfFile_Handle, intPtr);
|
|
}
|
|
NSString.ReleaseNative(intPtr);
|
|
}
|
|
|
|
[Export("initWithContentsOfURL:")]
|
|
public NSImage(NSUrl url)
|
|
: base(NSObjectFlag.Empty)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (url == null)
|
|
{
|
|
throw new ArgumentNullException("url");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSend_IntPtr(base.Handle, selInitWithContentsOfURL_Handle, url.Handle);
|
|
}
|
|
else
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSendSuper_IntPtr(base.SuperHandle, selInitWithContentsOfURL_Handle, url.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("initWithPasteboard:")]
|
|
public NSImage(NSPasteboard pasteboard)
|
|
: base(NSObjectFlag.Empty)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (pasteboard == null)
|
|
{
|
|
throw new ArgumentNullException("pasteboard");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSend_IntPtr(base.Handle, selInitWithPasteboard_Handle, pasteboard.Handle);
|
|
}
|
|
else
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSendSuper_IntPtr(base.SuperHandle, selInitWithPasteboard_Handle, pasteboard.Handle);
|
|
}
|
|
}
|
|
|
|
[Export("drawAtPoint:fromRect:operation:fraction:")]
|
|
public virtual void Draw(CGPoint point, CGRect fromRect, NSCompositingOperation op, double delta)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_CGPoint_CGRect_UInt64_Double(base.Handle, selDrawAtPointFromRectOperationFraction_Handle, point, fromRect, (ulong)op, delta);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_CGPoint_CGRect_UInt64_Double(base.SuperHandle, selDrawAtPointFromRectOperationFraction_Handle, point, fromRect, (ulong)op, delta);
|
|
}
|
|
}
|
|
|
|
[Export("drawInRect:fromRect:operation:fraction:")]
|
|
public virtual void Draw(CGRect rect, CGRect fromRect, NSCompositingOperation op, double delta)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_CGRect_CGRect_UInt64_Double(base.Handle, selDrawInRectFromRectOperationFraction_Handle, rect, fromRect, (ulong)op, delta);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_CGRect_CGRect_UInt64_Double(base.SuperHandle, selDrawInRectFromRectOperationFraction_Handle, rect, fromRect, (ulong)op, delta);
|
|
}
|
|
}
|
|
|
|
[Export("drawInRect:fromRect:operation:fraction:respectFlipped:hints:")]
|
|
public virtual void Draw(CGRect dstSpacePortionRect, CGRect srcSpacePortionRect, NSCompositingOperation op, double requestedAlpha, bool respectContextIsFlipped, NSDictionary hints)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_CGRect_CGRect_UInt64_Double_bool_IntPtr(base.Handle, selDrawInRectFromRectOperationFractionRespectFlippedHints_Handle, dstSpacePortionRect, srcSpacePortionRect, (ulong)op, requestedAlpha, respectContextIsFlipped, hints?.Handle ?? IntPtr.Zero);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_CGRect_CGRect_UInt64_Double_bool_IntPtr(base.SuperHandle, selDrawInRectFromRectOperationFractionRespectFlippedHints_Handle, dstSpacePortionRect, srcSpacePortionRect, (ulong)op, requestedAlpha, respectContextIsFlipped, hints?.Handle ?? IntPtr.Zero);
|
|
}
|
|
}
|
|
|
|
[Export("drawRepresentation:inRect:")]
|
|
public virtual bool Draw(NSImageRep imageRep, CGRect rect)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (imageRep == null)
|
|
{
|
|
throw new ArgumentNullException("imageRep");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend_IntPtr_CGRect(base.Handle, selDrawRepresentationInRect_Handle, imageRep.Handle, rect);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper_IntPtr_CGRect(base.SuperHandle, selDrawRepresentationInRect_Handle, imageRep.Handle, rect);
|
|
}
|
|
|
|
[Export("recache")]
|
|
public virtual void Recache()
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selRecacheHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selRecacheHandle);
|
|
}
|
|
}
|
|
|
|
[Export("TIFFRepresentation")]
|
|
public virtual NSData AsTiff()
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return (NSData)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend(base.Handle, selTIFFRepresentationHandle));
|
|
}
|
|
return (NSData)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selTIFFRepresentationHandle));
|
|
}
|
|
|
|
[Export("TIFFRepresentationUsingCompression:factor:")]
|
|
public virtual NSData AsTiff(NSTiffCompression comp, double aFloat)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return (NSData)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend_UInt64_Double(base.Handle, selTIFFRepresentationUsingCompressionFactor_Handle, (ulong)comp, aFloat));
|
|
}
|
|
return (NSData)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper_UInt64_Double(base.SuperHandle, selTIFFRepresentationUsingCompressionFactor_Handle, (ulong)comp, aFloat));
|
|
}
|
|
|
|
[Export("representations")]
|
|
public virtual NSImageRep[] Representations()
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return NSArray.ArrayFromHandle<NSImageRep>(Messaging.IntPtr_objc_msgSend(base.Handle, selRepresentationsHandle));
|
|
}
|
|
return NSArray.ArrayFromHandle<NSImageRep>(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selRepresentationsHandle));
|
|
}
|
|
|
|
[Export("addRepresentations:")]
|
|
public virtual void AddRepresentations(NSImageRep[] imageReps)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (imageReps == null)
|
|
{
|
|
throw new ArgumentNullException("imageReps");
|
|
}
|
|
NSArray nSArray = NSArray.FromNSObjects(imageReps);
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selAddRepresentations_Handle, nSArray.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selAddRepresentations_Handle, nSArray.Handle);
|
|
}
|
|
__mt_reps_var = Representations();
|
|
nSArray.Dispose();
|
|
}
|
|
|
|
[Export("addRepresentation:")]
|
|
public virtual void AddRepresentation(NSImageRep imageRep)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (imageRep == null)
|
|
{
|
|
throw new ArgumentNullException("imageRep");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selAddRepresentation_Handle, imageRep.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selAddRepresentation_Handle, imageRep.Handle);
|
|
}
|
|
__mt_reps_var = Representations();
|
|
}
|
|
|
|
[Export("removeRepresentation:")]
|
|
public virtual void RemoveRepresentation(NSImageRep imageRep)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (imageRep == null)
|
|
{
|
|
throw new ArgumentNullException("imageRep");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_IntPtr(base.Handle, selRemoveRepresentation_Handle, imageRep.Handle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_IntPtr(base.SuperHandle, selRemoveRepresentation_Handle, imageRep.Handle);
|
|
}
|
|
__mt_reps_var = Representations();
|
|
}
|
|
|
|
[Export("lockFocus")]
|
|
public virtual void LockFocus()
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selLockFocusHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selLockFocusHandle);
|
|
}
|
|
}
|
|
|
|
[Export("lockFocusFlipped:")]
|
|
public virtual void LockFocusFlipped(bool flipped)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_bool(base.Handle, selLockFocusFlipped_Handle, flipped);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_bool(base.SuperHandle, selLockFocusFlipped_Handle, flipped);
|
|
}
|
|
}
|
|
|
|
[Export("unlockFocus")]
|
|
public virtual void UnlockFocus()
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selUnlockFocusHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selUnlockFocusHandle);
|
|
}
|
|
}
|
|
|
|
[Export("bestRepresentationForDevice:")]
|
|
public virtual NSImageRep BestRepresentationForDevice(NSDictionary deviceDescription)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return (NSImageRep)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend_IntPtr(base.Handle, selBestRepresentationForDevice_Handle, deviceDescription?.Handle ?? IntPtr.Zero));
|
|
}
|
|
return (NSImageRep)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper_IntPtr(base.SuperHandle, selBestRepresentationForDevice_Handle, deviceDescription?.Handle ?? IntPtr.Zero));
|
|
}
|
|
|
|
[Export("imageUnfilteredFileTypes")]
|
|
public static NSObject[] ImageUnfilteredFileTypes()
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
return NSArray.ArrayFromHandle<NSObject>(Messaging.IntPtr_objc_msgSend(class_ptr, selImageUnfilteredFileTypesHandle));
|
|
}
|
|
|
|
[Export("imageUnfilteredPasteboardTypes")]
|
|
public static string[] ImageUnfilteredPasteboardTypes()
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
return NSArray.StringArrayFromHandle(Messaging.IntPtr_objc_msgSend(class_ptr, selImageUnfilteredPasteboardTypesHandle));
|
|
}
|
|
|
|
[Export("canInitWithPasteboard:")]
|
|
public static bool CanInitWithPasteboard(NSPasteboard pasteboard)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (pasteboard == null)
|
|
{
|
|
throw new ArgumentNullException("pasteboard");
|
|
}
|
|
return Messaging.bool_objc_msgSend_IntPtr(class_ptr, selCanInitWithPasteboard_Handle, pasteboard.Handle);
|
|
}
|
|
|
|
[Export("cancelIncrementalLoad")]
|
|
public virtual void CancelIncrementalLoad()
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend(base.Handle, selCancelIncrementalLoadHandle);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper(base.SuperHandle, selCancelIncrementalLoadHandle);
|
|
}
|
|
}
|
|
|
|
[Export("initWithCGImage:size:")]
|
|
public NSImage(CGImage cgImage, CGSize size)
|
|
: base(NSObjectFlag.Empty)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSend_IntPtr_CGSize(base.Handle, selInitWithCGImageSize_Handle, cgImage.Handle, size);
|
|
}
|
|
else
|
|
{
|
|
base.Handle = Messaging.IntPtr_objc_msgSendSuper_IntPtr_CGSize(base.SuperHandle, selInitWithCGImageSize_Handle, cgImage.Handle, size);
|
|
}
|
|
}
|
|
|
|
[Export("CGImageForProposedRect:context:hints:")]
|
|
public virtual CGImage AsCGImage(ref CGRect proposedDestRect, NSGraphicsContext referenceContext, NSDictionary hints)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return new CGImage(Messaging.IntPtr_objc_msgSend_out_CGRect_IntPtr_IntPtr(base.Handle, selCGImageForProposedRectContextHints_Handle, out proposedDestRect, referenceContext?.Handle ?? IntPtr.Zero, hints?.Handle ?? IntPtr.Zero));
|
|
}
|
|
return new CGImage(Messaging.IntPtr_objc_msgSendSuper_out_CGRect_IntPtr_IntPtr(base.SuperHandle, selCGImageForProposedRectContextHints_Handle, out proposedDestRect, referenceContext?.Handle ?? IntPtr.Zero, hints?.Handle ?? IntPtr.Zero));
|
|
}
|
|
|
|
[Export("bestRepresentationForRect:context:hints:")]
|
|
public virtual NSImageRep BestRepresentation(CGRect rect, NSGraphicsContext referenceContext, NSDictionary hints)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return (NSImageRep)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSend_CGRect_IntPtr_IntPtr(base.Handle, selBestRepresentationForRectContextHints_Handle, rect, referenceContext?.Handle ?? IntPtr.Zero, hints?.Handle ?? IntPtr.Zero));
|
|
}
|
|
return (NSImageRep)Runtime.GetNSObject(Messaging.IntPtr_objc_msgSendSuper_CGRect_IntPtr_IntPtr(base.SuperHandle, selBestRepresentationForRectContextHints_Handle, rect, referenceContext?.Handle ?? IntPtr.Zero, hints?.Handle ?? IntPtr.Zero));
|
|
}
|
|
|
|
[Export("hitTestRect:withImageDestinationRect:context:hints:flipped:")]
|
|
public virtual bool HitTestRect(CGRect testRectDestSpace, CGRect imageRectDestSpace, NSGraphicsContext context, NSDictionary hints, bool flipped)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (context == null)
|
|
{
|
|
throw new ArgumentNullException("context");
|
|
}
|
|
if (hints == null)
|
|
{
|
|
throw new ArgumentNullException("hints");
|
|
}
|
|
if (IsDirectBinding)
|
|
{
|
|
return Messaging.bool_objc_msgSend_CGRect_CGRect_IntPtr_IntPtr_bool(base.Handle, selHitTestRectWithImageDestinationRectContextHintsFlipped_Handle, testRectDestSpace, imageRectDestSpace, context.Handle, hints.Handle, flipped);
|
|
}
|
|
return Messaging.bool_objc_msgSendSuper_CGRect_CGRect_IntPtr_IntPtr_bool(base.SuperHandle, selHitTestRectWithImageDestinationRectContextHintsFlipped_Handle, testRectDestSpace, imageRectDestSpace, context.Handle, hints.Handle, flipped);
|
|
}
|
|
|
|
[Export("name")]
|
|
internal virtual string GetName()
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
return NSString.FromHandle(Messaging.IntPtr_objc_msgSend(base.Handle, selNameHandle));
|
|
}
|
|
return NSString.FromHandle(Messaging.IntPtr_objc_msgSendSuper(base.SuperHandle, selNameHandle));
|
|
}
|
|
|
|
[Export("setName:")]
|
|
internal virtual bool SetName(string aString)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (aString == null)
|
|
{
|
|
throw new ArgumentNullException("aString");
|
|
}
|
|
IntPtr intPtr = NSString.CreateNative(aString);
|
|
bool result = (!IsDirectBinding) ? Messaging.bool_objc_msgSendSuper_IntPtr(base.SuperHandle, selSetName_Handle, intPtr) : Messaging.bool_objc_msgSend_IntPtr(base.Handle, selSetName_Handle, intPtr);
|
|
NSString.ReleaseNative(intPtr);
|
|
return result;
|
|
}
|
|
|
|
public CGSize StringSize(string str, NSDictionary attributes)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (str == null)
|
|
{
|
|
throw new ArgumentNullException("str");
|
|
}
|
|
if (attributes == null)
|
|
{
|
|
throw new ArgumentNullException("attributes");
|
|
}
|
|
IntPtr intPtr = NSString.CreateNative(str);
|
|
CGSize result = Messaging.CGSize_objc_msgSend_IntPtr(intPtr, selSizeWithAttributes_Handle, attributes.Handle);
|
|
NSString.ReleaseNative(intPtr);
|
|
return result;
|
|
}
|
|
|
|
public void DrawInRect(string str, CGRect rect, NSDictionary attributes)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (str == null)
|
|
{
|
|
throw new ArgumentNullException("str");
|
|
}
|
|
if (attributes == null)
|
|
{
|
|
throw new ArgumentNullException("attributes");
|
|
}
|
|
IntPtr intPtr = NSString.CreateNative(str);
|
|
Messaging.void_objc_msgSend_CGRect_IntPtr(intPtr, selDrawInRectWithAttributes_Handle, rect, attributes.Handle);
|
|
NSString.ReleaseNative(intPtr);
|
|
}
|
|
|
|
[Export("drawInRect:fromRect:operation:fraction:")]
|
|
public virtual void DrawInRect(CGRect dstRect, CGRect srcRect, NSCompositingOperation operation, double delta)
|
|
{
|
|
NSApplication.EnsureUIThread();
|
|
if (IsDirectBinding)
|
|
{
|
|
Messaging.void_objc_msgSend_CGRect_CGRect_UInt64_Double(base.Handle, selDrawInRectFromRectOperationFraction_Handle, dstRect, srcRect, (ulong)operation, delta);
|
|
}
|
|
else
|
|
{
|
|
Messaging.void_objc_msgSendSuper_CGRect_CGRect_UInt64_Double(base.SuperHandle, selDrawInRectFromRectOperationFraction_Handle, dstRect, srcRect, (ulong)operation, delta);
|
|
}
|
|
}
|
|
|
|
private _NSImageDelegate EnsureNSImageDelegate()
|
|
{
|
|
NSObject nSObject = WeakDelegate;
|
|
if (nSObject == null || !(nSObject is _NSImageDelegate))
|
|
{
|
|
nSObject = (WeakDelegate = new _NSImageDelegate());
|
|
}
|
|
return (_NSImageDelegate)nSObject;
|
|
}
|
|
|
|
protected override void Dispose(bool disposing)
|
|
{
|
|
__mt_reps_var = null;
|
|
base.Dispose(disposing);
|
|
if (base.Handle == IntPtr.Zero)
|
|
{
|
|
__mt_BackgroundColor_var = null;
|
|
__mt_WeakDelegate_var = null;
|
|
}
|
|
}
|
|
}
|
|
}
|