Comparison between monotouch.dll and monotouch.dll

Namespace: MonoTouch

Type Changed: MonoTouch.Constants

Removed:

 	public const string Version = "3.99.11";

Added:

 	public const string Version = "3.99.12";

Namespace: MonoTouch.AVFoundation

Type Changed: MonoTouch.AVFoundation.AVAssetReaderVideoCompositionOutput

Removed:

 	public virtual AVAssetReaderVideoCompositionOutput FromTracks (AVAssetTrack[] videoTracks, MonoTouch.Foundation.NSDictionary videoSettings);
 	public virtual MonoTouch.Foundation.NSDictionary VideoSettings {

Added:

 	public AVAssetReaderVideoCompositionOutput (AVAssetTrack[] videoTracks, AVVideoSettings videoSettings);
 	public AVAssetReaderVideoCompositionOutput FromTracks (AVAssetTrack[] videoTracks, AVVideoSettings videoSettings);
 	public virtual AVAssetReaderVideoCompositionOutput WeakFromTracks (AVAssetTrack[] videoTracks, MonoTouch.Foundation.NSDictionary videoSettings);
 	public AVVideoSettings VideoSettings {
 	public virtual MonoTouch.Foundation.NSDictionary WeakVideoSettings {
 		get;
 	}

Type Changed: MonoTouch.AVFoundation.AVCaptureDeviceInput

Removed:

 	public AVCaptureDeviceInput (AVCaptureDevice device, IntPtr ptrToHandleToError);
 	public static AVCaptureDeviceInput FromDevice (AVCaptureDevice device, IntPtr ptrToHandleToError);

Added:

 	public AVCaptureDeviceInput (AVCaptureDevice device, IntPtr handle);
 	public AVCaptureDeviceInput (AVCaptureDevice device, out MonoTouch.Foundation.NSError error);
 	public static AVCaptureDeviceInput FromDevice (AVCaptureDevice device);
 	public static AVCaptureDeviceInput FromDevice (AVCaptureDevice device, IntPtr handle);
 	public static AVCaptureDeviceInput FromDevice (AVCaptureDevice device, out MonoTouch.Foundation.NSError error);

Type Changed: MonoTouch.AVFoundation.AVCaptureSession

Removed:

 	public virtual bool CanSetSessionPreset (string preset);
 	public virtual string SessionPreset {

Added:

 	public virtual bool CanSetSessionPreset (MonoTouch.Foundation.NSString preset);
 	public static MonoTouch.Foundation.NSString DidStartRunningNotification {
 		get;
 	}
 	public static MonoTouch.Foundation.NSString DidStopRunningNotification {
 		get;
 	}
 	public static MonoTouch.Foundation.NSString ErrorKey {
 		get;
 	}
 	public static MonoTouch.Foundation.NSString InterruptionEndedNotification {
 		get;
 	}
 	public static MonoTouch.Foundation.NSString Preset1280x720 {
 		get;
 	}
 	public static MonoTouch.Foundation.NSString Preset640x480 {
 		get;
 	}
 	public static MonoTouch.Foundation.NSString PresetHigh {
 		get;
 	}
 	public static MonoTouch.Foundation.NSString PresetLow {
 		get;
 	}
 	public static MonoTouch.Foundation.NSString PresetMedium {
 		get;
 	}
 	public static MonoTouch.Foundation.NSString PresetPhoto {
 		get;
 	}
 	public static MonoTouch.Foundation.NSString RuntimeErrorNotification {
 		get;
 	}
 	public static MonoTouch.Foundation.NSString WasInterruptedNotification {
 		get;
 	}
 	public virtual MonoTouch.Foundation.NSString SessionPreset {

Type Changed: MonoTouch.AVFoundation.AVCaptureVideoDataOutput

Removed:

 	public virtual IntPtr SampleBufferCallbackQueue {
 	public virtual MonoTouch.Foundation.NSDictionary VideoSettings {

Added:

 	public void SetSampleBufferDelegateAndQueue (AVCaptureVideoDataOutputSampleBufferDelegate sampleBufferDelegate, MonoTouch.CoreFoundation.DispatchQueue queue);
 	public virtual MonoTouch.CoreFoundation.DispatchQueue SampleBufferCallbackQueue {
 	public AVVideoSettings VideoSettings {
 		get;
 		set;
 	}
 	public virtual MonoTouch.Foundation.NSDictionary WeakVideoSettings {

Type Changed: MonoTouch.AVFoundation.AVVideoSettings

Removed:

 Could not find MonoTouch.AVFoundation.AVVideoSettings

Added:

 public class AVVideoSettings {
 	
 	public AVVideoSettings ();
 	public AVVideoSettings (MonoTouch.CoreVideo.CVPixelFormatType formatType);
 	
 	public MonoTouch.Foundation.NSDictionary ToDictionary ();
 	
 	public System.Nullable<MonoTouch.CoreVideo.CVPixelFormatType> PixelFormat {
 		get;
 		set;
 	}
 }

Namespace: MonoTouch.AddressBook

Namespace: MonoTouch.AddressBookUI

Namespace: MonoTouch.AssetsLibrary

Namespace: MonoTouch.AudioToolbox

Namespace: MonoTouch.AudioUnit

Namespace: MonoTouch.AudioUnitWrapper

Namespace: MonoTouch.CoreAnimation

Type Changed: MonoTouch.CoreAnimation.CAShapeLayer

Removed:

 	public static MonoTouch.Foundation.NSString FilLRuleEvenOdd {

Added:

 	public static MonoTouch.Foundation.NSString FillRuleEvenOdd {

Namespace: MonoTouch.CoreData

Namespace: MonoTouch.CoreFoundation

Namespace: MonoTouch.CoreGraphics

Type Changed: MonoTouch.CoreGraphics.CGBitmapContext

Added:

 	public CGBitmapContext (IntPtr data, int width, int height, int bitsPerComponent, int bytesPerRow, CGColorSpace colorSpace, CGBitmapFlags bitmapInfo);
 	public CGBitmapContext (byte [] data, int width, int height, int bitsPerComponent, int bytesPerRow, CGColorSpace colorSpace, CGBitmapFlags bitmapInfo);

Type Changed: MonoTouch.CoreGraphics.CGGradient

Added:

 	public CGGradient (CGColorSpace colorspace, float [] components);

Namespace: MonoTouch.CoreLocation

Namespace: MonoTouch.CoreMedia

Type Changed: MonoTouch.CoreMedia.CMSampleBuffer

Added:

 	public MonoTouch.CoreVideo.CVImageBuffer GetImageBuffer ();

Type Changed: MonoTouch.CoreMedia.CMTime

Removed:

 	public int TimeFlags;

Added:

 	public CMTime (long value, int timescale);
 	
 	public bool IsIndefinite {
 		get;
 	}
 	public bool IsInvalid {
 		get;
 	}
 	public bool IsNegativeInfinity {
 		get;
 	}
 	public bool IsPositiveInfinity {
 		get;
 	}
 	
 	public const int MaxTimeScale = 2147483647;
 	public static CMTime Invalid;
 	public static CMTime Indefinite;
 	public static CMTime PositiveInfinity;
 	public static CMTime NegativeInfinity;
 	public static CMTime Zero;
 	public Flags TimeFlags;
 	
 	[Serializable]
 	[Flags]
 	public enum Flags {
 		Valid,
 		HasBeenRounded,
 		PositiveInfinity,
 		NegativeInfinity,
 		Indefinite,
 		ImpliedValueFlagsMask
 	}

Namespace: MonoTouch.CoreMotion

Namespace: MonoTouch.CoreTelephony

Namespace: MonoTouch.CoreText

Namespace: MonoTouch.CoreVideo

Type Changed: MonoTouch.CoreVideo.CVImageBuffer

Removed:

 	public void Dispose ();
 	protected override void Dispose (bool disposing);
 	public IntPtr Handle {
 		get;
 	}

Type Changed: MonoTouch.CoreVideo.CVPixelBuffer

Removed:

 public class CVPixelBuffer : CVBuffer {
 	public void Dispose ();
 	protected virtual void Dispose (bool disposing);
 	protected override void Finalize ();
 	public IntPtr Handle {
 		get;
 	}

Added:

 public class CVPixelBuffer : CVImageBuffer {
 	public static readonly int CVImageBufferType;

Namespace: MonoTouch.EventKit

Namespace: MonoTouch.EventKitUI

Namespace: MonoTouch.ExternalAccessory

Namespace: MonoTouch.Foundation

New Type: MonoTouch.Foundation.NSCalculationError

[Serializable]
public enum NSCalculationError {
	None,
	PrecisionLoss,
	Underflow,
	Overflow,
	DivideByZero
}

New Type: MonoTouch.Foundation.NSDecimal

public struct NSDecimal {
	
	public static NSCalculationError Add (out NSDecimal result, ref NSDecimal left, ref NSDecimal right, NSRoundingMode mode);
	public static NSComparisonResult Compare (ref NSDecimal left, ref NSDecimal right);
	public static NSCalculationError Divide (out NSDecimal result, ref NSDecimal left, ref NSDecimal right, NSRoundingMode mode);
	public static NSCalculationError Multiply (out NSDecimal result, ref NSDecimal left, ref NSDecimal right, NSRoundingMode mode);
	public static NSComparisonResult MultiplyByPowerOf10 (out NSDecimal result, ref NSDecimal number, short power10, NSRoundingMode mode);
	public static NSCalculationError Normalize (ref NSDecimal number1, ref NSDecimal number2);
	public static NSComparisonResult Power (out NSDecimal result, ref NSDecimal number, int power, NSRoundingMode mode);
	public static void Round (out NSDecimal result, ref NSDecimal number, int scale, NSRoundingMode mode);
	public static NSCalculationError Subtract (out NSDecimal result, ref NSDecimal left, ref NSDecimal right, NSRoundingMode mode);
	public override string ToString ();
	
	public static NSDecimal operator + (NSDecimal left, NSDecimal right);
	public static NSDecimal operator - (NSDecimal left, NSDecimal right);
	public static NSDecimal operator * (NSDecimal left, NSDecimal right);
	public static NSDecimal operator / (NSDecimal left, NSDecimal right);
	public static bool operator == (NSDecimal left, NSDecimal right);
	public static bool operator != (NSDecimal left, NSDecimal right);
	public static implicit operator NSDecimal (int value);
	public static explicit operator int (NSDecimal value);
	
	public int fields;
	public short m1;
	public short m2;
	public short m3;
	public short m4;
	public short m5;
	public short m6;
	public short m7;
	public short m8;
}

Type Changed: MonoTouch.Foundation.NSDecimalNumber

Added:

 	public NSDecimalNumber (NSDecimal dec);
 	public virtual NSDecimal NSDecimalValue {
 		get;
 	}

New Type: MonoTouch.Foundation.NSDirectoryEnumerationOptions

[Serializable]
[Flags]
public enum NSDirectoryEnumerationOptions {
	SkipsNone,
	SkipsSubdirectoryDescendants,
	SkipsPackageDescendants,
	SkipsHiddenFiles
}

Type Changed: MonoTouch.Foundation.NSFileManager

Added:

 	public virtual bool Copy (NSUrl srcUrl, NSUrl dstUrl, out NSError error);
 	public virtual NSUrl[] GetDirectoryContent (NSUrl url, NSArray properties, NSDirectoryEnumerationOptions options, out NSError error);
 	public virtual NSDirectoryEnumerator GetEnumerator (NSUrl url, NSArray properties, NSDirectoryEnumerationOptions options, out NSError error);
 	public virtual NSUrl[] GetMountedVolumes (NSArray properties, NSVolumeEnumerationOptions options);
 	public virtual NSUrl GetUrl (NSSearchPathDirectory directory, NSSearchPathDomain domain, NSUrl url, bool shouldCreate, out NSError error);
 	public virtual NSUrl[] GetUrls (NSSearchPathDirectory directory, NSSearchPathDomain domains);
 	public virtual bool Link (NSUrl srcUrl, NSUrl dstUrl, out NSError error);
 	public virtual bool Move (NSUrl srcUrl, NSUrl dstUrl, out NSError error);
 	public virtual bool Remove (NSUrl url, out NSError error);
 	public virtual bool Replace (NSUrl originalItem, NSUrl newItem, string backupItemName, NSFileManagerItemReplacementOptions options, out NSUrl resultingURL, out NSError error);

Type Changed: MonoTouch.Foundation.NSFileManagerItemReplacementOptions

Removed:

 Could not find MonoTouch.Foundation.NSFileManagerItemReplacementOptions

Added:

 [Serializable]
 [Flags]
 public enum NSFileManagerItemReplacementOptions {
 	None,
 	UsingNewMetadataOnly,
 	WithoutDeletingBackupItem
 }

Type Changed: MonoTouch.Foundation.NSNumber

Added:

 	public virtual NSDecimal NSDecimalValue {
 		get;
 	}

Type Changed: MonoTouch.Foundation.NSObject

Added:

 	public void SetValueForKeyPath (IntPtr handle, NSString keyPath);

New Type: MonoTouch.Foundation.NSRoundingMode

[Serializable]
public enum NSRoundingMode {
	Plain,
	Down,
	Up,
	Bankers
}

New Type: MonoTouch.Foundation.NSSearchPathDirectory

[Serializable]
public enum NSSearchPathDirectory {
	ApplicationDirectory,
	DemoApplicationDirectory,
	DeveloperApplicationDirectory,
	AdminApplicationDirectory,
	LibraryDirectory,
	DeveloperDirectory,
	UserDirectory,
	DocumentationDirectory,
	DocumentDirectory,
	CoreServiceDirectory,
	AutosavedInformationDirectory,
	DesktopDirectory,
	CachesDirectory,
	ApplicationSupportDirectory,
	DownloadsDirectory,
	InputMethodsDirectory,
	MoviesDirectory,
	MusicDirectory,
	PicturesDirectory,
	PrinterDescriptionDirectory,
	SharedPublicDirectory,
	PreferencePanesDirectory,
	ItemReplacementDirectory,
	AllApplicationsDirectory,
	AllLibrariesDirectory
}

New Type: MonoTouch.Foundation.NSSearchPathDomain

[Serializable]
[Flags]
public enum NSSearchPathDomain {
	None,
	User,
	Local,
	Network,
	System,
	All
}

Type Changed: MonoTouch.Foundation.NSStringDrawingOptions

Removed:

 Could not find MonoTouch.Foundation.NSStringDrawingOptions

Added:

 [Serializable]
 public enum NSStringDrawingOptions : uint {
 	UsesLineFragmentOrigin,
 	UsesFontLeading,
 	DisableScreenFontSubstitution,
 	UsesDeviceMetrics,
 	OneShot,
 	TruncatesLastVisibleLine
 }

New Type: MonoTouch.Foundation.NSVolumeEnumerationOptions

[Serializable]
[Flags]
public enum NSVolumeEnumerationOptions {
	None,
	SkipHiddenVolumes,
	ProduceFileReferenceUrls
}

Namespace: MonoTouch.GameKit

Namespace: MonoTouch.ImageIO

Namespace: MonoTouch.MapKit

Namespace: MonoTouch.MediaPlayer

Type Changed: MonoTouch.MediaPlayer.MPMediaItemArtwork

Removed:

 	public virtual MonoTouch.UIKit.UIImage ImageWithSize (System.Drawing.RectangleF size);

Added:

 	public virtual MonoTouch.UIKit.UIImage ImageWithSize (System.Drawing.SizeF size);

Namespace: MonoTouch.MessageUI

Namespace: MonoTouch.ObjCRuntime

Type Changed: MonoTouch.ObjCRuntime.Messaging

Added:

 	public static bool bool_objc_msgSend_IntPtr_IntPtr_IntPtr_int_IntPtr_IntPtr (IntPtr receiver, IntPtr selector, IntPtr arg1, IntPtr arg2, IntPtr arg3, int arg4, IntPtr arg5, IntPtr arg6);
 	public static bool bool_objc_msgSendSuper_IntPtr_IntPtr_IntPtr_int_IntPtr_IntPtr (IntPtr receiver, IntPtr selector, IntPtr arg1, IntPtr arg2, IntPtr arg3, int arg4, IntPtr arg5, IntPtr arg6);
 	public static IntPtr IntPtr_objc_msgSend_int_int_IntPtr_bool_IntPtr (IntPtr receiver, IntPtr selector, int arg1, int arg2, IntPtr arg3, bool arg4, IntPtr arg5);
 	public static IntPtr IntPtr_objc_msgSend_NSDecimal (IntPtr receiver, IntPtr selector, MonoTouch.Foundation.NSDecimal arg1);
 	public static IntPtr IntPtr_objc_msgSendSuper_int_int_IntPtr_bool_IntPtr (IntPtr receiver, IntPtr selector, int arg1, int arg2, IntPtr arg3, bool arg4, IntPtr arg5);
 	public static IntPtr IntPtr_objc_msgSendSuper_NSDecimal (IntPtr receiver, IntPtr selector, MonoTouch.Foundation.NSDecimal arg1);
 	public static void NSDecimal_objc_msgSend_stret (out MonoTouch.Foundation.NSDecimal retval, IntPtr receiver, IntPtr selector);
 	public static void NSDecimal_objc_msgSendSuper_stret (out MonoTouch.Foundation.NSDecimal retval, IntPtr receiver, IntPtr selector);

Namespace: MonoTouch.OpenGLES

Namespace: MonoTouch.QuickLook

Namespace: MonoTouch.Security

Namespace: MonoTouch.StoreKit

Namespace: MonoTouch.SystemConfiguration

Namespace: MonoTouch.UIKit

Namespace: MonoTouch.iAd

Namespace: System.Drawing

Xamarin Workbook

If it's not already installed, install the Xamarin Workbooks app first. The workbook file should download automatically, but if it doesn't, just click to start the workbook download manually.