summaryrefslogtreecommitdiff
path: root/common/quicktime_win32/HIMovieView.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/quicktime_win32/HIMovieView.h')
-rw-r--r--common/quicktime_win32/HIMovieView.h385
1 files changed, 385 insertions, 0 deletions
diff --git a/common/quicktime_win32/HIMovieView.h b/common/quicktime_win32/HIMovieView.h
new file mode 100644
index 0000000..e5c7673
--- /dev/null
+++ b/common/quicktime_win32/HIMovieView.h
@@ -0,0 +1,385 @@
+/*
+ File: HIMovieView.h
+
+ Contains: HIView-based movie playback
+
+ Version: QuickTime 7.3
+
+ Copyright: (c) 2007 (c) 2004-2007 by Apple Inc., all rights reserved.
+
+ Bugs?: For bug reports, consult the following page on
+ the World Wide Web:
+
+ http://developer.apple.com/bugreporter/
+
+*/
+#ifndef __HIMOVIEVIEW__
+#define __HIMOVIEVIEW__
+
+#ifndef __HIVIEW__
+#include <HIView.h>
+#endif
+
+#ifndef __MOVIES__
+#include <Movies.h>
+#endif
+
+
+
+
+#if PRAGMA_ONCE
+#pragma once
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#if PRAGMA_IMPORT
+#pragma import on
+#endif
+
+#if PRAGMA_STRUCT_ALIGN
+ #pragma options align=mac68k
+#elif PRAGMA_STRUCT_PACKPUSH
+ #pragma pack(push, 2)
+#elif PRAGMA_STRUCT_PACK
+ #pragma pack(2)
+#endif
+
+/* QuickTime is not available to 64-bit clients */
+
+#if !__LP64__
+
+#if TARGET_OS_MAC
+
+/*
+ * kHIMovieViewClassID
+ *
+ * Summary:
+ * Class ID for HIMovieView
+ */
+#define kHIMovieViewClassID CFSTR("com.apple.quicktime.HIMovieView")
+
+/*
+ * Summary:
+ * HIMovieView Event class
+ */
+enum {
+
+ /*
+ * Events related to movie views.
+ */
+ kEventClassMovieView = FOUR_CHAR_CODE('moov')
+};
+
+
+/*
+ * kEventClassMovieView / kEventMovieViewOptimalBoundsChanged
+ *
+ * Summary:
+ * Sent when the movie size changes.
+ *
+ * Parameters:
+ *
+ * --> kEventParamDirectObject (in, typeControlRef)
+ * The movie view whose size is changing.
+ *
+ * --> kEventParamControlOptimalBounds (in, typeHIRect)
+ * The new optimal bounds.
+ *
+ * Availability:
+ * Non-Carbon CFM: not available
+ * CarbonLib: not available
+ */
+enum {
+ kEventMovieViewOptimalBoundsChanged = 1
+};
+
+
+
+/*
+ * Summary:
+ * HIMovieView attributes
+ */
+enum {
+
+ /*
+ * No attributes
+ */
+ kHIMovieViewNoAttributes = 0L,
+
+ /*
+ * Movie controller bar is visible below visual content
+ */
+ kHIMovieViewControllerVisibleAttribute = (1L << 0),
+
+ /*
+ * Automatically call MCIdle() at appropriate times
+ */
+ kHIMovieViewAutoIdlingAttribute = (1L << 1),
+
+ /*
+ * Accepts keyboard focus
+ */
+ kHIMovieViewAcceptsFocusAttribute = (1L << 2),
+
+ /*
+ * Movie editing enabled
+ */
+ kHIMovieViewEditableAttribute = (1L << 3),
+
+ /*
+ * Handles editing HI commands such as cut, copy and paste
+ */
+ kHIMovieViewHandleEditingHIAttribute = (1L << 4),
+
+ /*
+ * Combination of kHIMovieViewControllerVisibleAttribute,
+ * kHIMovieViewAutoIdlingAttribute, and
+ * kHIMovieViewAcceptsFocusAttribute
+ */
+ kHIMovieViewStandardAttributes = (kHIMovieViewControllerVisibleAttribute | kHIMovieViewAutoIdlingAttribute | kHIMovieViewAcceptsFocusAttribute)
+};
+
+/*
+ * HIMovieViewCreate()
+ *
+ * Summary:
+ * Creates an HIMovieView object
+ *
+ * Discussion:
+ * If successful, the created view will have a single retain count.
+ *
+ * Parameters:
+ *
+ * inMovie:
+ * [in] Initial movie to view, may be NULL
+ *
+ * inAttributes:
+ * [in] Initial HIMovieView attributes
+ *
+ * outMovieView:
+ * [out] Points to variable to receive new HIMovieView
+ *
+ * Availability:
+ * Non-Carbon CFM: not available
+ * CarbonLib: not available
+ * Mac OS X: in version 10.4 (or QuickTime 7.0) and later
+ */
+EXTERN_API_C( OSStatus )
+HIMovieViewCreate(
+ Movie inMovie,
+ OptionBits inAttributes,
+ HIViewRef * outMovieView);
+
+
+/*
+ * HIMovieViewGetMovie()
+ *
+ * Summary:
+ * Returns the view's current movie.
+ *
+ * Parameters:
+ *
+ * inView:
+ * [in] The HIMovieView
+ *
+ * Availability:
+ * Non-Carbon CFM: not available
+ * CarbonLib: not available
+ * Mac OS X: in version 10.4 (or QuickTime 7.0) and later
+ */
+EXTERN_API_C( Movie )
+HIMovieViewGetMovie(HIViewRef inView);
+
+
+/*
+ * HIMovieViewSetMovie()
+ *
+ * Summary:
+ * Sets the view's current movie.
+ *
+ * Parameters:
+ *
+ * inView:
+ * [in] The HIMovieView
+ *
+ * inMovie:
+ * [in] The new movie to display
+ *
+ * Availability:
+ * Non-Carbon CFM: not available
+ * CarbonLib: not available
+ * Mac OS X: in version 10.4 (or QuickTime 7.0) and later
+ */
+EXTERN_API_C( OSStatus )
+HIMovieViewSetMovie(
+ HIViewRef inView,
+ Movie inMovie);
+
+
+/*
+ * HIMovieViewGetAttributes()
+ *
+ * Summary:
+ * Returns the view's current attributes.
+ *
+ * Parameters:
+ *
+ * inView:
+ * [in] The HIMovieView
+ *
+ * Availability:
+ * Non-Carbon CFM: not available
+ * CarbonLib: not available
+ * Mac OS X: in version 10.4 (or QuickTime 7.0) and later
+ */
+EXTERN_API_C( OptionBits )
+HIMovieViewGetAttributes(HIViewRef inView);
+
+
+/*
+ * HIMovieViewChangeAttributes()
+ *
+ * Summary:
+ * Changes the views attributes.
+ *
+ * Discussion:
+ * Setting an attribute takes precedence over clearing the attribute.
+ *
+ * Parameters:
+ *
+ * inView:
+ * [in] The HIMovieView
+ *
+ * inAttributesToSet:
+ * [in] Attributes to set
+ *
+ * inAttributesToClear:
+ * [in] Attributes to clear
+ *
+ * Availability:
+ * Non-Carbon CFM: not available
+ * CarbonLib: not available
+ * Mac OS X: in version 10.4 (or QuickTime 7.0) and later
+ */
+EXTERN_API_C( OSStatus )
+HIMovieViewChangeAttributes(
+ HIViewRef inView,
+ OptionBits inAttributesToSet,
+ OptionBits inAttributesToClear);
+
+
+/*
+ * HIMovieViewGetMovieController()
+ *
+ * Summary:
+ * Returns the view's current movie controller.
+ *
+ * Parameters:
+ *
+ * inView:
+ * [in] The HIMovieView
+ *
+ * Availability:
+ * Non-Carbon CFM: not available
+ * CarbonLib: not available
+ * Mac OS X: in version 10.4 (or QuickTime 7.0) and later
+ */
+EXTERN_API_C( MovieController )
+HIMovieViewGetMovieController(HIViewRef inView);
+
+
+/*
+ * HIMovieViewGetControllerBarSize()
+ *
+ * Summary:
+ * Returns the size of the visible movie controller bar.
+ *
+ * Parameters:
+ *
+ * inView:
+ * [in] The HIMovieView
+ *
+ * Availability:
+ * Non-Carbon CFM: not available
+ * CarbonLib: not available
+ * Mac OS X: in version 10.4 (or QuickTime 7.0) and later
+ */
+EXTERN_API_C( HISize )
+HIMovieViewGetControllerBarSize(HIViewRef inView);
+
+
+/*
+ * HIMovieViewPlay()
+ *
+ * Summary:
+ * Convenience routine to play the view's current movie.
+ *
+ * Discussion:
+ * If the movie is already playing, this function does nothing.
+ *
+ * Parameters:
+ *
+ * movieView:
+ * [in] The movie view.
+ *
+ * Availability:
+ * Non-Carbon CFM: not available
+ * CarbonLib: not available
+ * Mac OS X: in version 10.4 (or QuickTime 7.0) and later
+ */
+EXTERN_API_C( OSStatus )
+HIMovieViewPlay(HIViewRef movieView);
+
+
+/*
+ * HIMovieViewPause()
+ *
+ * Summary:
+ * Convenience routine to pause the view's current movie.
+ *
+ * Discussion:
+ * If the movie is already paused, this function does nothing.
+ *
+ * Parameters:
+ *
+ * movieView:
+ * [in] The movie view.
+ *
+ * Availability:
+ * Non-Carbon CFM: not available
+ * CarbonLib: not available
+ * Mac OS X: in version 10.4 (or QuickTime 7.0) and later
+ */
+EXTERN_API_C( OSStatus )
+HIMovieViewPause(HIViewRef movieView);
+
+
+#endif /* TARGET_OS_MAC */
+
+
+#endif // !__LP64__
+
+
+#if PRAGMA_STRUCT_ALIGN
+ #pragma options align=reset
+#elif PRAGMA_STRUCT_PACKPUSH
+ #pragma pack(pop)
+#elif PRAGMA_STRUCT_PACK
+ #pragma pack()
+#endif
+
+#ifdef PRAGMA_IMPORT_OFF
+#pragma import off
+#elif PRAGMA_IMPORT
+#pragma import reset
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __HIMOVIEVIEW__ */
+