]> git.sesse.net Git - vlc/blob - modules/gui/macosx/MainWindowTitle.h
macosx/open: added missing sanity checks
[vlc] / modules / gui / macosx / MainWindowTitle.h
1 /*****************************************************************************
2  * MainWindowTitle.h: MacOS X interface module
3  *****************************************************************************
4  * Copyright (C) 2011-2012 Felix Paul Kühne
5  * $Id$
6  *
7  * Authors: Felix Paul Kühne <fkuehne -at- videolan -dot- org>
8  *
9  * This program is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License as published by
11  * the Free Software Foundation; either version 2 of the License, or
12  * (at your option) any later version.
13  *
14  * This program is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17  * GNU General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with this program; if not, write to the Free Software
21  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
22  *****************************************************************************/
23
24 #import <Cocoa/Cocoa.h>
25 #import "misc.h"
26
27 /*****************************************************************************
28  * VLCMainWindowTitleView
29  *****************************************************************************/
30
31 @interface VLCMainWindowTitleView : VLCThreePartImageView
32 {
33     NSImage * o_red_img;
34     NSImage * o_red_over_img;
35     NSImage * o_red_on_img;
36     NSImage * o_yellow_img;
37     NSImage * o_yellow_over_img;
38     NSImage * o_yellow_on_img;
39     NSImage * o_green_img;
40     NSImage * o_green_over_img;
41     NSImage * o_green_on_img;
42     NSShadow * o_window_title_shadow;
43     NSDictionary * o_window_title_attributes_dict;
44
45     IBOutlet id o_red_btn;
46     IBOutlet id o_yellow_btn;
47     IBOutlet id o_green_btn;
48     IBOutlet id o_fullscreen_btn;
49     IBOutlet id o_title_lbl;
50 }
51
52 - (void)loadButtonIcons;
53 - (IBAction)buttonAction:(id)sender;
54 - (void)setWindowTitle:(NSString *)title;
55 - (void)setFullscreenButtonHidden:(BOOL)b_value;
56 - (void)setWindowButtonOver:(BOOL)b_value;
57 - (void)setWindowFullscreenButtonOver:(BOOL)b_value;
58
59 - (NSButton*)closeButton;
60 - (NSButton*)minimizeButton;
61 - (NSButton*)zoomButton;
62
63 @end
64
65 @interface VLCWindowButtonCell : NSButtonCell
66 {
67 }
68 @end
69
70 @interface VLCResizeControl : NSImageView
71 {
72 }
73 @end
74
75 @interface VLCColorView : NSView
76 {
77 }
78 @end
79
80 @interface VLCCustomWindowButtonPrototype: NSButton
81 {
82 }
83 - (NSArray*)extendedAccessibilityAttributeNames: (NSArray*)theAttributeNames;
84 - (id)extendedAccessibilityAttributeValue: (NSString*)theAttributeName;
85 - (NSNumber*)extendedAccessibilityIsAttributeSettable: (NSString*)theAttributeName;
86
87 @end
88
89 @interface VLCCustomWindowCloseButton: VLCCustomWindowButtonPrototype
90 {
91 }
92 @end
93
94
95 @interface VLCCustomWindowMinimizeButton: VLCCustomWindowButtonPrototype
96 {
97 }
98 @end
99
100
101 @interface VLCCustomWindowZoomButton: VLCCustomWindowButtonPrototype
102 {
103 }
104 @end
105
106 @interface VLCCustomWindowFullscreenButton : VLCCustomWindowButtonPrototype
107 {
108 }
109 @end
110
111 @interface VLCWindowTitleTextField : NSTextField
112 {
113     NSMenu * contextMenu;
114 }
115
116 @end