]> git.sesse.net Git - vlc/blobdiff - modules/gui/macosx/misc.h
ASF: help stupid compiler
[vlc] / modules / gui / macosx / misc.h
index a6d9f651f973d03122fd30bdd2ae512fe5ee10bd..a29b4dcf6a5b728a89858b28ce40597bc69faeec 100644 (file)
@@ -1,10 +1,11 @@
 /*****************************************************************************
  * misc.h: code not specific to vlc
  *****************************************************************************
- * Copyright (C) 2003 the VideoLAN team
+ * Copyright (C) 2003-2011 VLC authors and VideoLAN
  * $Id$
  *
  * Authors: Jon Lech Johansen <jon-vl@nanocrew.net>
+ *          Felix Paul Kühne <fkuehne at videolan dot org>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  *****************************************************************************/
 
+#import <Cocoa/Cocoa.h>
+#import <ApplicationServices/ApplicationServices.h>
+#import "CompatibilityFixes.h"
+
+/*****************************************************************************
+ * NSAnimation (VLCAddition)
+ *****************************************************************************/
+
+@interface NSAnimation (VLCAdditions)
+- (void)setUserInfo: (void *)userInfo;
+- (void *)userInfo;
+@end
+
+/*****************************************************************************
+ * NSScreen (VLCAdditions)
+ *
+ *  Missing extension to NSScreen
+ *****************************************************************************/
+
+@interface NSScreen (VLCAdditions)
+
++ (NSScreen *)screenWithDisplayID: (CGDirectDisplayID)displayID;
+- (BOOL)isMainScreen;
+- (BOOL)isScreen: (NSScreen*)screen;
+- (CGDirectDisplayID)displayID;
+- (void)blackoutOtherScreens;
++ (void)unblackoutScreens;
+@end
+
 /*****************************************************************************
  * VLCWindow
  *
  *  Missing extension to NSWindow
  *****************************************************************************/
 
-@interface VLCWindow : NSWindow
+@interface VLCWindow : NSWindow <NSWindowDelegate>
 {
     BOOL b_canBecomeKeyWindow;
     BOOL b_isset_canBecomeKeyWindow;
+    NSViewAnimation *animation;
 }
 
 - (void)setCanBecomeKeyWindow: (BOOL)canBecomeKey;
-@end
-
 
-/*****************************************************************************
- * VLCControllerWindow
- *****************************************************************************/
+/* animate mode is only supported in >=10.4 */
+- (void)orderFront: (id)sender animate: (BOOL)animate;
 
+/* animate mode is only supported in >=10.4 */
+- (void)orderOut: (id)sender animate: (BOOL)animate;
 
-@interface VLCControllerWindow : NSWindow
-{
-}
+/* animate mode is only supported in >=10.4 */
+- (void)orderOut: (id)sender animate: (BOOL)animate callback:(NSInvocation *)callback;
 
+/* animate mode is only supported in >=10.4 */
+- (void)closeAndAnimate: (BOOL)animate;
 @end
 
+
 /*****************************************************************************
  * VLCControllerView
  *****************************************************************************/
 @end
 
 /*****************************************************************************
- * ITSliderCell
+ * TimeLineSlider
  *****************************************************************************/
+
+@interface TimeLineSlider : NSSlider
+{
+}
+
+- (void)drawRect:(NSRect)rect;
+- (void)drawKnobInRect:(NSRect)knobRect;
+
+@end
+
+/*****************************************************************************
+ * ITSlider
+ *****************************************************************************/
+
 @interface ITSlider : NSSlider
 {
 }
 
+- (void)drawRect:(NSRect)rect;
+- (void)drawKnobInRect:(NSRect)knobRect;
+
+@end
+
+/*****************************************************************************
+ * VLCTimeField interface
+ *****************************************************************************
+ * we need the implementation to catch our click-event in the controller window
+ *****************************************************************************/
+
+@interface VLCTimeField : NSTextField
+{
+}
+- (BOOL)timeRemaining;
 @end
 
 /*****************************************************************************
- * ITSliderCell
+ * VLCMainWindowSplitView interface
  *****************************************************************************/
-@interface ITSliderCell : NSSliderCell
+@interface VLCMainWindowSplitView : NSSplitView
 {
-    NSImage *_knobOff;
-    NSImage *_knobOn;
-    BOOL b_mouse_down;
 }
 
 @end