diff dstep/appkit/NSDocumentController.d @ 16:19885b43130e

Huge update, the bridge actually works now
author Jacob Carlborg <doob@me.com>
date Sun, 03 Jan 2010 22:06:11 +0100
parents
children f8a3b67adfcb
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dstep/appkit/NSDocumentController.d	Sun Jan 03 22:06:11 2010 +0100
@@ -0,0 +1,322 @@
+/**
+ * Copyright: Copyright (c) 2009 Jacob Carlborg.
+ * Authors: Jacob Carlborg
+ * Version: Initial created: Sep 24, 2009 
+ * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0)
+ */
+module dstep.appkit.NSDocumentController;
+
+import dstep.foundation.NSArray;
+import dstep.appkit.NSDocument;
+import dstep.appkit.NSMenuItem;
+import dstep.appkit.NSNibDeclarations;
+import dstep.appkit.NSOpenPanel;
+import dstep.appkit.NSUserInterfaceValidation;
+import dstep.appkit.NSWindow;
+import dstep.foundation.NSCoder;
+import dstep.foundation.NSDate;
+import dstep.foundation.NSError;
+import dstep.foundation.NSObjCRuntime;
+import dstep.foundation.NSObject;
+import dstep.foundation.NSString;
+import dstep.foundation.NSURL;
+import dstep.foundation.NSZone;
+import dstep.objc.bridge.Bridge;
+import dstep.objc.objc;
+
+class NSDocumentController : NSObject, INSCoding, INSUserInterfaceValidations
+{
+	mixin (ObjcWrap);
+	
+	this (NSCoder aDecoder)
+	{
+		super(typeof(this).alloc.initWithCoder(aDecoder).objcObject);
+	}
+	
+	void encodeWithCoder (NSCoder aCoder)
+	{
+		return invokeObjcSelf!(void, "encodeWithCoder:", NSCoder)(aCoder);
+	}
+	
+	typeof(this) initWithCoder (NSCoder aDecoder)
+	{
+		return invokeObjcSelf!(typeof(this), "initWithCoder:", NSCoder)(aDecoder);
+	}
+
+	static Object sharedDocumentController ()
+	{
+		return invokeObjcSelfClass!(Object, "sharedDocumentController");
+	}
+
+	NSDocumentController init ()
+	{
+		id result = invokeObjcSelf!(id, "init");
+		return result is this.objcObject ? this : (result !is null ? new NSDocumentController(result) : null);
+	}
+
+	this ()
+	{
+		super(NSDocumentController.alloc.init.objcObject);
+	}
+
+	NSArray documents ()
+	{
+		return invokeObjcSelf!(NSArray, "documents");
+	}
+
+	Object currentDocument ()
+	{
+		return invokeObjcSelf!(Object, "currentDocument");
+	}
+
+	NSString currentDirectory ()
+	{
+		return invokeObjcSelf!(NSString, "currentDirectory");
+	}
+
+	Object documentForURL (NSURL absoluteURL)
+	{
+		return invokeObjcSelf!(Object, "documentForURL:", NSURL)(absoluteURL);
+	}
+
+	Object documentForWindow (NSWindow window)
+	{
+		return invokeObjcSelf!(Object, "documentForWindow:", NSWindow)(window);
+	}
+
+	void addDocument (NSDocument document)
+	{
+		return invokeObjcSelf!(void, "addDocument:", NSDocument)(document);
+	}
+
+	void removeDocument (NSDocument document)
+	{
+		return invokeObjcSelf!(void, "removeDocument:", NSDocument)(document);
+	}
+
+	void newDocument (Object sender)
+	{
+		return invokeObjcSelf!(void, "newDocument:", Object)(sender);
+	}
+
+	Object openUntitledDocumentAndDisplay (bool displayDocument, ref NSError outError)
+	{
+		id error;
+		
+		if (outError)
+			error = new objc_object;
+		
+		Object result = invokeObjcSelf!(Object, "openUntitledDocumentAndDisplay:error:", bool, id*)(displayDocument, &error);
+		
+		if (error)
+			outError = new NSError(error);
+		
+		return result;
+	}
+
+	Object makeUntitledDocumentOfType (NSString typeName, ref NSError outError)
+	{
+		id error;
+		
+		if (outError)
+			error = new objc_object;
+		
+		Object result = invokeObjcSelf!(Object, "makeUntitledDocumentOfType:error:", NSString, id*)(typeName, &error);
+		
+		if (error)
+			outError = new NSError(error);
+		
+		return result;
+	}
+
+	void openDocument (Object sender)
+	{
+		return invokeObjcSelf!(void, "openDocument:", Object)(sender);
+	}
+
+	NSArray URLsFromRunningOpenPanel ()
+	{
+		return invokeObjcSelf!(NSArray, "URLsFromRunningOpenPanel");
+	}
+
+	NSInteger runModalOpenPanel (NSOpenPanel openPanel, NSArray types)
+	{
+		return invokeObjcSelf!(NSInteger, "runModalOpenPanel:forTypes:", NSOpenPanel, NSArray)(openPanel, types);
+	}
+
+	Object openDocumentWithContentsOfURL (NSURL absoluteURL, bool displayDocument, ref NSError outError)
+	{
+		id error;
+		
+		if (outError)
+			error = new objc_object;
+		
+		Object result = invokeObjcSelf!(Object, "openDocumentWithContentsOfURL:display:error:", NSURL, bool, id*)(absoluteURL, displayDocument, &error);
+		
+		if (error)
+			outError = new NSError(error);
+		
+		return result;
+	}
+
+	Object makeDocumentWithContentsOfURL (NSURL absoluteURL, NSString typeName, ref NSError outError)
+	{
+		id error;
+		
+		if (outError)
+			error = new objc_object;
+		
+		Object result = invokeObjcSelf!(Object, "makeDocumentWithContentsOfURL:ofType:error:", NSURL, NSString, id*)(absoluteURL, typeName, &error);
+		
+		if (error)
+			outError = new NSError(error);
+		
+		return result;
+	}
+
+	bool reopenDocumentForURL (NSURL absoluteDocumentURL, NSURL absoluteDocumentContentsURL, ref NSError outError)
+	{
+		id error;
+		
+		if (outError)
+			error = new objc_object;
+		
+		bool result = invokeObjcSelf!(bool, "reopenDocumentForURL:withContentsOfURL:error:", NSURL, NSURL, id*)(absoluteDocumentURL, absoluteDocumentContentsURL, &error);
+		
+		if (error)
+			outError = new NSError(error);
+		
+		return result;
+	}
+
+	Object makeDocumentForURL (NSURL absoluteDocumentURL, NSURL absoluteDocumentContentsURL, NSString typeName, ref NSError outError)
+	{
+		id error;
+		
+		if (outError)
+			error = new objc_object;
+		
+		Object result = invokeObjcSelf!(Object, "makeDocumentForURL:withContentsOfURL:ofType:error:", NSURL, NSURL, NSString, id*)(absoluteDocumentURL, absoluteDocumentContentsURL, typeName, &error);
+		
+		if (error)
+			outError = new NSError(error);
+		
+		return result;
+	}
+
+	void setAutosavingDelay (double autosavingDelay)
+	{
+		return invokeObjcSelf!(void, "setAutosavingDelay:", double)(autosavingDelay);
+	}
+
+	double autosavingDelay ()
+	{
+		return invokeObjcSelf!(double, "autosavingDelay");
+	}
+
+	void saveAllDocuments (Object sender)
+	{
+		return invokeObjcSelf!(void, "saveAllDocuments:", Object)(sender);
+	}
+
+	bool hasEditedDocuments ()
+	{
+		return invokeObjcSelf!(bool, "hasEditedDocuments");
+	}
+
+	void reviewUnsavedDocumentsWithAlertTitle (NSString title, bool cancellable, Object delegate_, SEL didReviewAllSelector, void* contextInfo)
+	{
+		return invokeObjcSelf!(void, "reviewUnsavedDocumentsWithAlertTitle:cancellable:delegate:didReviewAllSelector:contextInfo:", NSString, bool, Object, SEL, void*)(title, cancellable, delegate_, didReviewAllSelector, contextInfo);
+	}
+
+	void closeAllDocumentsWithDelegate (Object delegate_, SEL didCloseAllSelector, void* contextInfo)
+	{
+		return invokeObjcSelf!(void, "closeAllDocumentsWithDelegate:didCloseAllSelector:contextInfo:", Object, SEL, void*)(delegate_, didCloseAllSelector, contextInfo);
+	}
+
+	void presentError (NSError error, NSWindow window, Object delegate_, SEL didPresentSelector, void* contextInfo)
+	{
+		return invokeObjcSelf!(void, "presentError:modalForWindow:delegate:didPresentSelector:contextInfo:", NSError, NSWindow, Object, SEL, void*)(error, window, delegate_, didPresentSelector, contextInfo);
+	}
+
+	bool presentError (NSError error)
+	{
+		return invokeObjcSelf!(bool, "presentError:", NSError)(error);
+	}
+
+	NSError willPresentError (NSError error)
+	{
+		return invokeObjcSelf!(NSError, "willPresentError:", NSError)(error);
+	}
+
+	NSUInteger maximumRecentDocumentCount ()
+	{
+		return invokeObjcSelf!(NSUInteger, "maximumRecentDocumentCount");
+	}
+
+	void clearRecentDocuments (Object sender)
+	{
+		return invokeObjcSelf!(void, "clearRecentDocuments:", Object)(sender);
+	}
+
+	void noteNewRecentDocument (NSDocument document)
+	{
+		return invokeObjcSelf!(void, "noteNewRecentDocument:", NSDocument)(document);
+	}
+
+	void noteNewRecentDocumentURL (NSURL absoluteURL)
+	{
+		return invokeObjcSelf!(void, "noteNewRecentDocumentURL:", NSURL)(absoluteURL);
+	}
+
+	NSArray recentDocumentURLs ()
+	{
+		return invokeObjcSelf!(NSArray, "recentDocumentURLs");
+	}
+
+	NSString defaultType ()
+	{
+		return invokeObjcSelf!(NSString, "defaultType");
+	}
+
+	NSString typeForContentsOfURL (NSURL inAbsoluteURL, ref NSError outError)
+	{
+		id error;
+		
+		if (outError)
+			error = new objc_object;
+		
+		NSString result = invokeObjcSelf!(NSString, "typeForContentsOfURL:error:", NSURL, id*)(inAbsoluteURL, &error);
+		
+		if (error)
+			outError = new NSError(error);
+		
+		return result;
+	}
+
+	NSArray documentClassNames ()
+	{
+		return invokeObjcSelf!(NSArray, "documentClassNames");
+	}
+
+	Class documentClassForType (NSString typeName)
+	{
+		return invokeObjcSelf!(Class, "documentClassForType:", NSString)(typeName);
+	}
+
+	NSString displayNameForType (NSString typeName)
+	{
+		return invokeObjcSelf!(NSString, "displayNameForType:", NSString)(typeName);
+	}
+
+	bool validateUserInterfaceItem (INSValidatedUserInterfaceItem anItem)
+	{
+		return invokeObjcSelf!(bool, "validateUserInterfaceItem:", INSValidatedUserInterfaceItem)(anItem);
+	}
+
+	bool validateUserInterfaceItem (INSValidatedUserInterfaceItem anItem)
+	{
+		return invokeObjcSelf!(bool, "validateUserInterfaceItem:", INSValidatedUserInterfaceItem)(anItem);
+	}
+}
+