]> git.sesse.net Git - vlc/blobdiff - modules/gui/macosx/MainWindowTitle.h
Consistent strings to avoid duplications
[vlc] / modules / gui / macosx / MainWindowTitle.h
index 6720f10912493721dec15c93225b8d05ebb36a90..201572f877f1eb3b38969c08c1c6b43a5de134b1 100644 (file)
@@ -1,7 +1,7 @@
 /*****************************************************************************
  * MainWindowTitle.h: MacOS X interface module
  *****************************************************************************
- * Copyright (C) 2011 Felix Paul Kühne
+ * Copyright (C) 2011-2012 Felix Paul Kühne
  * $Id$
  *
  * Authors: Felix Paul Kühne <fkuehne -at- videolan -dot- org>
  *****************************************************************************/
 
 #import <Cocoa/Cocoa.h>
+#import "misc.h"
 
 /*****************************************************************************
  * VLCMainWindowTitleView
  *****************************************************************************/
 
-@interface VLCMainWindowTitleView : NSImageView
+@interface VLCMainWindowTitleView : VLCThreePartImageView
 {
+    NSImage * o_red_img;
+    NSImage * o_red_over_img;
+    NSImage * o_red_on_img;
+    NSImage * o_yellow_img;
+    NSImage * o_yellow_over_img;
+    NSImage * o_yellow_on_img;
+    NSImage * o_green_img;
+    NSImage * o_green_over_img;
+    NSImage * o_green_on_img;
+    // yosemite fullscreen images
+    NSImage * o_fullscreen_img;
+    NSImage * o_fullscreen_over_img;
+    NSImage * o_fullscreen_on_img;
+    // old native fullscreen images
+    NSImage * o_old_fullscreen_img;
+    NSImage * o_old_fullscreen_over_img;
+    NSImage * o_old_fullscreen_on_img;
+
+    NSShadow * o_window_title_shadow;
+    NSDictionary * o_window_title_attributes_dict;
+
     IBOutlet id o_red_btn;
     IBOutlet id o_yellow_btn;
     IBOutlet id o_green_btn;
     IBOutlet id o_fullscreen_btn;
     IBOutlet id o_title_lbl;
+
+    BOOL b_nativeFullscreenMode;
+
+    // state to determine correct image for green bubble
+    BOOL b_alt_pressed;
+    BOOL b_mouse_over;
 }
+@property (readonly) NSButton * closeButton;
+@property (readonly) NSButton * minimizeButton;
+@property (readonly) NSButton * zoomButton;
 
+- (void)informModifierPressed:(BOOL)b_is_altkey;
+- (void)loadButtonIcons;
 - (IBAction)buttonAction:(id)sender;
 - (void)setWindowTitle:(NSString *)title;
-- (void)setFullscreenButtonHidden:(BOOL)b_value;
 - (void)setWindowButtonOver:(BOOL)b_value;
+- (void)setWindowFullscreenButtonOver:(BOOL)b_value;
 
 @end
 
 @interface VLCWindowButtonCell : NSButtonCell
+
+@end
+
+@interface VLCResizeControl : NSImageView
+
+@end
+
+@interface VLCColorView : NSView
+
+@end
+
+@interface VLCCustomWindowButtonPrototype: NSButton
+- (NSArray*)extendedAccessibilityAttributeNames: (NSArray*)theAttributeNames;
+- (id)extendedAccessibilityAttributeValue: (NSString*)theAttributeName;
+- (NSNumber*)extendedAccessibilityIsAttributeSettable: (NSString*)theAttributeName;
+
+@end
+
+@interface VLCCustomWindowCloseButton: VLCCustomWindowButtonPrototype
+
+@end
+
+
+@interface VLCCustomWindowMinimizeButton: VLCCustomWindowButtonPrototype
+
+@end
+
+
+@interface VLCCustomWindowZoomButton: VLCCustomWindowButtonPrototype
+
+@end
+
+@interface VLCCustomWindowFullscreenButton : VLCCustomWindowButtonPrototype
+
+@end
+
+@interface VLCWindowTitleTextField : NSTextField
 {
+    NSMenu * contextMenu;
 }
+
 @end