diff dstep/appkit/NSMovieView.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 b9de51448c6b
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dstep/appkit/NSMovieView.d	Sun Jan 03 22:06:11 2010 +0100
@@ -0,0 +1,228 @@
+/**
+ * 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.NSMovieView;
+
+import dstep.appkit.NSMovie;
+import dstep.appkit.NSUserInterfaceValidation;
+import dstep.appkit.NSView;
+import dstep.applicationservices.coregraphics.CGBase;
+import dstep.foundation.NSGeometry;
+import dstep.foundation.NSObjCRuntime;
+import dstep.internal.Version;
+import dstep.objc.bridge.Bridge;
+import dstep.objc.objc;
+
+static if (!D_LP64):
+	
+enum : NSUInteger
+{
+    NSQTMovieNormalPlayback,
+    NSQTMovieLoopingPlayback,
+    NSQTMovieLoopingBackAndForthPlayback
+}
+
+typedef NSUInteger NSQTMovieLoopMode;
+
+struct _MVFlags
+{
+    uint editable;// :1;
+	NSQTMovieLoopMode loopMode; //:3;
+	uint playsEveryFrame; //:1;
+	uint playsSelectionOnly; //:1;
+	uint controllerVisible; //:1;
+	uint reserved; //:25;
+}
+
+class NSMovieView : NSView, INSUserInterfaceValidations
+{
+	mixin (ObjcWrap);
+	
+	bool validateUserInterfaceItem (INSValidatedUserInterfaceItem anItem)
+	{
+		return invokeObjcSelf!(bool, "validateUserInterfaceItem:", INSValidatedUserInterfaceItem)(anItem);
+	}
+	
+	void setMovie (NSMovie movie)
+	{
+		return invokeObjcSelf!(void, "setMovie:", NSMovie)(movie);
+	}
+	
+	NSMovie movie ()
+	{
+		return invokeObjcSelf!(NSMovie, "movie");
+	}
+	
+	void* movieController ()
+	{
+		return invokeObjcSelf!(void*, "movieController");
+	}
+	
+	NSRect movieRect ()
+	{
+		return invokeObjcSelf!(NSRect, "movieRect");
+	}
+	
+	void start (Object sender)
+	{
+		return invokeObjcSelf!(void, "start:", Object)(sender);
+	}
+	
+	void stop (Object sender)
+	{
+		return invokeObjcSelf!(void, "stop:", Object)(sender);
+	}
+	
+	bool isPlaying ()
+	{
+		return invokeObjcSelf!(bool, "isPlaying");
+	}
+	
+	void gotoPosterFrame (Object sender)
+	{
+		return invokeObjcSelf!(void, "gotoPosterFrame:", Object)(sender);
+	}
+	
+	void gotoBeginning (Object sender)
+	{
+		return invokeObjcSelf!(void, "gotoBeginning:", Object)(sender);
+	}
+	
+	void gotoEnd (Object sender)
+	{
+		return invokeObjcSelf!(void, "gotoEnd:", Object)(sender);
+	}
+	
+	void stepForward (Object sender)
+	{
+		return invokeObjcSelf!(void, "stepForward:", Object)(sender);
+	}
+	
+	void stepBack (Object sender)
+	{
+		return invokeObjcSelf!(void, "stepBack:", Object)(sender);
+	}
+	
+	void setRate (float rate)
+	{
+		return invokeObjcSelf!(void, "setRate:", float)(rate);
+	}
+	
+	float rate ()
+	{
+		return invokeObjcSelf!(float, "rate");
+	}
+	
+	void setVolume (float volume)
+	{
+		return invokeObjcSelf!(void, "setVolume:", float)(volume);
+	}
+	
+	float volume ()
+	{
+		return invokeObjcSelf!(float, "volume");
+	}
+	
+	void setMuted (bool mute)
+	{
+		return invokeObjcSelf!(void, "setMuted:", bool)(mute);
+	}
+	
+	bool isMuted ()
+	{
+		return invokeObjcSelf!(bool, "isMuted");
+	}
+	
+	void setLoopMode (NSQTMovieLoopMode mode)
+	{
+		return invokeObjcSelf!(void, "setLoopMode:", NSQTMovieLoopMode)(mode);
+	}
+	
+	NSQTMovieLoopMode loopMode ()
+	{
+		return invokeObjcSelf!(NSQTMovieLoopMode, "loopMode");
+	}
+	
+	void setPlaysSelectionOnly (bool flag)
+	{
+		return invokeObjcSelf!(void, "setPlaysSelectionOnly:", bool)(flag);
+	}
+	
+	bool playsSelectionOnly ()
+	{
+		return invokeObjcSelf!(bool, "playsSelectionOnly");
+	}
+	
+	void setPlaysEveryFrame (bool flag)
+	{
+		return invokeObjcSelf!(void, "setPlaysEveryFrame:", bool)(flag);
+	}
+	
+	bool playsEveryFrame ()
+	{
+		return invokeObjcSelf!(bool, "playsEveryFrame");
+	}
+	
+	void showController (bool show, bool adjustingSize)
+	{
+		return invokeObjcSelf!(void, "showController:adjustingSize:", bool, bool)(show, adjustingSize);
+	}
+	
+	bool isControllerVisible ()
+	{
+		return invokeObjcSelf!(bool, "isControllerVisible");
+	}
+	
+	void resizeWithMagnification (CGFloat magnification)
+	{
+		return invokeObjcSelf!(void, "resizeWithMagnification:", CGFloat)(magnification);
+	}
+	
+	NSSize sizeForMagnification (CGFloat magnification)
+	{
+		return invokeObjcSelf!(NSSize, "sizeForMagnification:", CGFloat)(magnification);
+	}
+	
+	void setEditable (bool editable)
+	{
+		return invokeObjcSelf!(void, "setEditable:", bool)(editable);
+	}
+	
+	bool isEditable ()
+	{
+		return invokeObjcSelf!(bool, "isEditable");
+	}
+	
+	void cut (Object sender)
+	{
+		return invokeObjcSelf!(void, "cut:", Object)(sender);
+	}
+	
+	void copy (Object sender)
+	{
+		return invokeObjcSelf!(void, "copy:", Object)(sender);
+	}
+	
+	void paste (Object sender)
+	{
+		return invokeObjcSelf!(void, "paste:", Object)(sender);
+	}
+	
+	void delete_ (Object sender)
+	{
+		return invokeObjcSelf!(void, "delete:", Object)(sender);
+	}
+	
+	void selectAll (Object sender)
+	{
+		return invokeObjcSelf!(void, "selectAll:", Object)(sender);
+	}
+	
+	void clear (Object sender)
+	{
+		return invokeObjcSelf!(void, "clear:", Object)(sender);
+	}
+}
\ No newline at end of file