annotate examples/iAudioDB/AppController.h @ 687:e2f4924130ef

* Query parameters added (multi, length, etc) * Tweaks to status bar for more detailed info
author mas01mj
date Thu, 11 Mar 2010 17:19:15 +0000
parents e78e5a80b73d
children 8bc10774e56b
rev   line source
mas01mj@669 1 //
mas01mj@669 2 // AppController.h
mas01mj@669 3 // iAudioDB
mas01mj@669 4 //
mas01mj@669 5 // Created by Mike Jewell on 27/01/2010.
mas01mj@669 6 // Copyright 2010 __MyCompanyName__. All rights reserved.
mas01mj@669 7 //
mas01mj@669 8
mas01mj@669 9 #import <Cocoa/Cocoa.h>
mas01mj@669 10 #include <audioDB_API.h>
mas01mj@669 11
mas01mj@682 12
mas01mj@669 13 @interface AppController : NSObject {
mas01mj@682 14 adb_t *db;
mas01mj@669 15 NSModalSession session;
mas01mj@669 16
mas01mj@669 17 NSString* dbName;
mas01mj@669 18 NSString* dbFilename;
mas01mj@669 19 NSString* plistFilename;
mas01mj@669 20 NSString* selectedKey;
mas01mj@669 21 NSString* selectedFilename;
mas01mj@669 22
mas01mj@669 23 IBOutlet NSTextField *statusField;
mas01mj@669 24 IBOutlet NSTableView *tracksView;
mas01mj@669 25 IBOutlet id mainWindow;
mas01mj@669 26
mas01mj@687 27 // Query Customizing
mas01mj@687 28
mas01mj@687 29 IBOutlet NSButton* multipleCheckBox;
mas01mj@687 30 IBOutlet NSButton* resetButton;
mas01mj@687 31 IBOutlet NSTextField* queryLengthVectors;
mas01mj@687 32 IBOutlet NSTextField* queryLengthSeconds;
mas01mj@687 33 IBOutlet NSTextField* queryPath;
mas01mj@687 34
mas01mj@687 35 // Main window buttons/fields.
mas01mj@687 36
mas01mj@687 37 IBOutlet NSButton* performQueryButton;
mas01mj@669 38 IBOutlet NSButton* playBothButton;
mas01mj@669 39 IBOutlet NSButton* playResultButton;
mas01mj@669 40 IBOutlet NSButton* stopButton;
mas01mj@687 41 IBOutlet NSTextField* queryKey;
mas01mj@669 42
mas01mj@687 43 NSSound* queryTrack;
mas01mj@687 44 NSSound* resultTrack;
mas01mj@685 45
mas01mj@685 46 // Creating
mas01mj@685 47 IBOutlet id createSheet;
mas01mj@687 48 IBOutlet id querySheet;
mas01mj@687 49
mas01mj@685 50 IBOutlet NSMatrix* extractorOptions;
mas01mj@685 51 IBOutlet NSTextField* windowSizeField;
mas01mj@685 52 IBOutlet NSTextField* hopSizeField;
mas01mj@685 53 IBOutlet NSTextField* maxTracksField;
mas01mj@685 54 IBOutlet NSTextField* maxLengthField;
mas01mj@669 55
mas01mj@669 56 // Extracting
mas01mj@669 57 IBOutlet id importSheet;
mas01mj@669 58 IBOutlet NSProgressIndicator* indicator;
mas01mj@669 59
mas01mj@687 60 NSMutableArray* results;
mas01mj@687 61 NSDictionary* trackMap;
mas01mj@687 62 NSDictionary* dbState;
mas01mj@669 63
mas01mj@685 64
mas01mj@685 65
mas01mj@669 66 // Query param fields
mas01mj@669 67
mas01mj@669 68 /* To Come
mas01mj@669 69 IBOutlet id queryType;
mas01mj@669 70 IBOutlet NSTextField* queryStartField;
mas01mj@669 71 IBOutlet id queryTypeOptions;
mas01mj@669 72 IBOutlet NSTextField* queryLengthField;
mas01mj@669 73 IBOutlet NSTextField* queryRadiusField;
mas01mj@669 74 IBOutlet NSButtonCell* exhaustiveField;*/
mas01mj@669 75 }
mas01mj@669 76
mas01mj@669 77 // Menus
mas01mj@669 78 -(IBAction)newDatabase:(id)sender;
mas01mj@669 79 -(IBAction)openDatabase:(id)sender;
mas01mj@669 80
mas01mj@669 81 // Import
mas01mj@669 82 -(IBAction)importAudio:(id)sender;
mas01mj@685 83 // -(IBAction)cancelImport:(id)sender;
mas01mj@685 84
mas01mj@685 85 // Create
mas01mj@685 86 -(IBAction)cancelCreate:(id)sender;
mas01mj@685 87 -(IBAction)createDatabase:(id)sender;
mas01mj@669 88
mas01mj@687 89 // Query
mas01mj@687 90 -(IBAction)pathAction:(id)sender;
mas01mj@687 91 -(IBAction)cancelQuery:(id)sender;
mas01mj@687 92 -(IBAction)performQuery:(id)sender;
mas01mj@687 93 -(IBAction)selectQueryFile:(id)sender;
mas01mj@687 94 -(IBAction)resetLengths:(id)sender;
mas01mj@687 95
mas01mj@669 96 // Buttons
mas01mj@669 97 -(IBAction)playBoth:(id)sender;
mas01mj@669 98 -(IBAction)playResult:(id)sender;
mas01mj@669 99 -(IBAction)stopPlay:(id)sender;
mas01mj@669 100 -(IBAction)chooseQuery:(id)sender;
mas01mj@669 101 -(IBAction)selectedChanged:(id)sender;
mas01mj@684 102 -(IBAction)tableDoubleClick:(id)sender;
mas01mj@669 103
mas01mj@687 104 -(void)reset;
mas01mj@669 105 -(void)updateStatus;
mas01mj@669 106 - (BOOL)validateUserInterfaceItem:(id <NSValidatedUserInterfaceItem>)anItem;
mas01mj@669 107 - (void)sound:(NSSound *)sound didFinishPlaying:(BOOL)playbackSuccessful;
mas01mj@669 108
mas01mj@669 109 @end