4 * Core Cocoa-based user interface
6 * Copyright (c) 2008 Nathan Keynes.
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
19 #ifndef lxdream_cocoaui_H
20 #define lxdream_cocoaui_H
22 #import <AppKit/AppKit.h>
30 #define NS_(x) [NSString stringWithUTF8String: _(x)]
33 #define TEXT_HEIGHT 22
34 #define LABEL_HEIGHT 17
37 NSWindow *cocoa_gui_create_main_window();
38 NSMenu *cocoa_gdrom_menu_new();
39 NSView *video_osx_create_drawable();
40 void cocoa_gui_show_preferences();
42 @interface LxdreamMainWindow : NSWindow
48 - (id)initWithContentRect:(NSRect)contentRect;
49 - (void)setStatusText:(const gchar *)text;
50 - (void)setRunning:(BOOL)isRunning;
52 - (void)setIsGrabbed:(BOOL)grab;
55 @interface LxdreamPrefsPane : NSView
59 - (id)initWithFrame: (NSRect)frameRect title:(NSString *)title;
61 * Create a text label and add it to the pane
63 - (NSTextField *)addLabel: (NSString *)text withFrame: (NSRect)frame;
67 @interface LxdreamPrefsPanel : NSPanel
70 NSArray *toolbar_defaults;
71 NSDictionary *toolbar_items;
72 NSView *path_pane, *ctrl_pane;
74 - (id)initWithContentRect:(NSRect)contentRect;
77 @interface LxdreamPrefsPathPane: LxdreamPrefsPane
80 + (LxdreamPrefsPathPane *)new;
83 @interface LxdreamPrefsControllerPane: LxdreamPrefsPane
85 struct maple_device *save_controller[4];
87 + (LxdreamPrefsControllerPane *)new;
94 #endif /* lxdream_cocoaui_H */
.