comparison examples/iAudioDB/AppController.h @ 692:02756c5ca15a

* Added interface elements for query start selection * Added logic for sec/vector conversion.
author mas01mj
date Thu, 22 Apr 2010 15:43:26 +0000
parents f3268055df0a
children 9a7d829bc492
comparison
equal deleted inserted replaced
691:203181f7d804 692:02756c5ca15a
7 // 7 //
8 8
9 #import <Cocoa/Cocoa.h> 9 #import <Cocoa/Cocoa.h>
10 #include <audioDB_API.h> 10 #include <audioDB_API.h>
11 11
12
13 @interface AppController : NSObject { 12 @interface AppController : NSObject {
14 adb_t *db; 13 adb_ptr db;
15 NSModalSession session; 14 NSModalSession session;
16 15
17 NSString* dbName; 16 NSString* dbName;
18 NSString* dbFilename; 17 NSString* dbFilename;
19 NSString* plistFilename; 18 NSString* plistFilename;
20 NSString* selectedKey; 19 NSString* selectedKey;
21 NSString* selectedFilename; 20 NSString* selectedFilename;
22 21
23 IBOutlet NSTextField *statusField; 22 IBOutlet NSTextField *statusField;
24 IBOutlet NSTableView* tracksView; 23 IBOutlet NSTableView *tracksView;
25 IBOutlet id mainWindow; 24 IBOutlet id mainWindow;
26 25
27 // Query Customizing 26 // Querying
27 IBOutlet NSTextField* queryKey;
28 IBOutlet NSButton* playBothButton;
29 IBOutlet NSButton* playResultButton;
30 IBOutlet NSButton* stopButton;
31 IBOutlet NSButton* chooseButton;
28 32
29 IBOutlet NSButton* multipleCheckBox; 33 NSMutableArray* results;
30 IBOutlet NSButton* resetButton; 34 NSDictionary* trackMap;
31 IBOutlet NSTextField* queryLengthVectors;
32 IBOutlet NSTextField* queryLengthSeconds;
33 IBOutlet NSTextField* queryPath;
34 IBOutlet NSButton* queryButton;
35
36 // Main window buttons/fields.
37
38 IBOutlet NSToolbarItem* importAudioButton;
39 IBOutlet NSToolbarItem* performQueryButton;
40 IBOutlet NSToolbarItem* playBothButton;
41 IBOutlet NSToolbarItem* playResultButton;
42 IBOutlet NSToolbarItem* stopButton;
43 IBOutlet NSTextField* queryKey;
44
45 NSSound* queryTrack;
46 NSSound* resultTrack;
47
48 // Creating
49 IBOutlet id createSheet;
50 IBOutlet id querySheet;
51
52 IBOutlet NSMatrix* extractorOptions;
53 IBOutlet NSTextField* windowSizeField;
54 IBOutlet NSTextField* hopSizeField;
55 IBOutlet NSTextField* maxTracksField;
56 IBOutlet NSTextField* maxLengthField;
57 35
58 // Extracting 36 // Extracting
59 IBOutlet id importSheet; 37 IBOutlet id importSheet;
38 IBOutlet NSBox* extractingBox;
39 IBOutlet NSMatrix* extractorOptions;
60 IBOutlet NSProgressIndicator* indicator; 40 IBOutlet NSProgressIndicator* indicator;
61 41
62 NSMutableArray* results; 42 // Playback
63 NSDictionary* trackMap; 43 NSSound* queryTrack;
64 NSDictionary* dbState; 44 NSSound* resultTrack;
65 45
66 // Query param fields 46 // Query param fields
67 47
68 /* To Come 48 /* To Come
69 IBOutlet id queryType; 49 IBOutlet id queryType;
70 IBOutlet NSTextField* queryStartField; 50 IBOutlet NSTextField* queryStartField;
71 IBOutlet id queryTypeOptions; 51 IBOutlet id queryTypeOptions;
72 IBOutlet NSTextField* queryLengthField; 52 IBOutlet NSTextField* queryLengthField;
73 IBOutlet NSTextField* queryRadiusField; 53 IBOutlet NSTextField* queryRadiusField;
74 IBOutlet NSButtonCell* exhaustiveField;*/ 54 IBOutlet NSButtonCell* exhaustiveField;*/
55
75 } 56 }
76 57
77 // Menus 58 // Menus
78 -(IBAction)newDatabase:(id)sender; 59 -(IBAction)newDatabase:(id)sender;
79 -(IBAction)openDatabase:(id)sender; 60 -(IBAction)openDatabase:(id)sender;
61 -(IBAction)selectFiles:(id)sender;
80 62
81 // Import 63 // Import
82 -(IBAction)importAudio:(id)sender; 64 -(IBAction)importAudio:(id)sender;
83 // -(IBAction)cancelImport:(id)sender; 65 -(IBAction)cancelImport:(id)sender;
84
85 // Create
86 -(IBAction)cancelCreate:(id)sender;
87 -(IBAction)createDatabase:(id)sender;
88
89 // Query
90 -(IBAction)pathAction:(id)sender;
91 -(IBAction)cancelQuery:(id)sender;
92 -(IBAction)performQuery:(id)sender;
93 -(IBAction)selectQueryFile:(id)sender;
94 -(IBAction)resetLengths:(id)sender;
95 66
96 // Buttons 67 // Buttons
97 -(IBAction)playBoth:(id)sender; 68 -(IBAction)playBoth:(id)sender;
98 -(IBAction)playResult:(id)sender; 69 -(IBAction)playResult:(id)sender;
99 -(IBAction)stopPlay:(id)sender; 70 -(IBAction)stopPlay:(id)sender;
100 -(IBAction)chooseQuery:(id)sender; 71 -(IBAction)chooseQuery:(id)sender;
101 -(IBAction)selectedChanged:(id)sender; 72 -(IBAction)selectedChanged:(id)sender;
102 -(IBAction)tableDoubleClick:(id)sender;
103 73
104 -(void)reset; 74
75 -(void)performQuery;
105 -(void)updateStatus; 76 -(void)updateStatus;
106 - (BOOL)validateUserInterfaceItem:(id <NSValidatedUserInterfaceItem>)anItem; 77 - (BOOL)validateUserInterfaceItem:(id <NSValidatedUserInterfaceItem>)anItem;
107 - (void)sound:(NSSound *)sound didFinishPlaying:(BOOL)playbackSuccessful; 78 - (void)sound:(NSSound *)sound didFinishPlaying:(BOOL)playbackSuccessful;
108 79
109 @end 80 @end