2006-10-28 09:18:55 +00:00
|
|
|
|
//
|
2007-04-27 06:41:34 +00:00
|
|
|
|
// File: VLSheetWindow.h - Control lead sheet editing window
|
2006-10-28 09:18:55 +00:00
|
|
|
|
//
|
2007-04-27 06:41:34 +00:00
|
|
|
|
// Author(s):
|
|
|
|
|
//
|
|
|
|
|
// (MN) Matthias Neeracher
|
|
|
|
|
//
|
2011-08-29 00:01:49 +00:00
|
|
|
|
// Copyright <20> 2005-2011 Matthias Neeracher
|
2006-10-28 09:18:55 +00:00
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
#import <Cocoa/Cocoa.h>
|
2008-05-29 18:54:30 +00:00
|
|
|
|
#import <AudioToolbox/AudioToolbox.h>
|
2011-09-10 23:15:21 +00:00
|
|
|
|
#import "VLSheetView.h"
|
2006-10-28 09:18:55 +00:00
|
|
|
|
|
|
|
|
|
@interface VLEditable : NSObject
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
- (NSString *) stringValue;
|
|
|
|
|
- (void) setStringValue:(NSString*)val;
|
|
|
|
|
- (BOOL) validValue:(NSString*)val;
|
|
|
|
|
- (void) moveToNext;
|
|
|
|
|
- (void) moveToPrev;
|
|
|
|
|
- (void) highlightCursor;
|
2011-09-10 23:15:21 +00:00
|
|
|
|
- (BOOL) canExtendSelection:(VLRegion)region;
|
2011-09-11 02:03:22 +00:00
|
|
|
|
- (void) extendSelection:(VLLocation)at;
|
2011-09-10 23:54:34 +00:00
|
|
|
|
- (BOOL) hidden;
|
2006-10-28 09:18:55 +00:00
|
|
|
|
|
|
|
|
|
@end
|
|
|
|
|
|
2011-08-29 00:01:49 +00:00
|
|
|
|
@class VLSheetView;
|
2011-09-04 01:00:38 +00:00
|
|
|
|
@class VLLogWindow;
|
|
|
|
|
@class VLPDFWindow;
|
2011-08-29 00:01:49 +00:00
|
|
|
|
|
2011-09-06 01:15:51 +00:00
|
|
|
|
@interface VLSheetWindow : NSWindowController <NSToolbarDelegate,NSWindowDelegate> {
|
2011-08-29 00:01:49 +00:00
|
|
|
|
IBOutlet VLSheetView * sheetView;
|
|
|
|
|
IBOutlet NSProgressIndicator * progressIndicator;
|
2011-09-04 01:00:38 +00:00
|
|
|
|
IBOutlet VLLogWindow * logWin;
|
|
|
|
|
IBOutlet VLPDFWindow * pdfWin;
|
2011-09-06 01:15:51 +00:00
|
|
|
|
IBOutlet NSWindow * displaySheet;
|
2011-09-04 19:48:57 +00:00
|
|
|
|
id soundStartObserver;
|
|
|
|
|
id soundStopObserver;
|
2011-09-04 01:00:38 +00:00
|
|
|
|
|
2011-08-29 00:01:49 +00:00
|
|
|
|
|
|
|
|
|
VLEditable * editTarget;
|
2008-01-29 03:02:25 +00:00
|
|
|
|
|
2007-04-21 07:09:52 +00:00
|
|
|
|
int editNumTopLedgers;
|
|
|
|
|
int editNumBotLedgers;
|
|
|
|
|
int editNumStanzas;
|
2006-10-28 09:18:55 +00:00
|
|
|
|
}
|
|
|
|
|
|
2011-09-04 01:00:38 +00:00
|
|
|
|
@property (nonatomic,readonly) VLLogWindow * logWin;
|
|
|
|
|
|
|
|
|
|
- (IBAction) togglePlayElements:(id)sender;
|
|
|
|
|
- (IBAction) showOutput:(id)sender;
|
2011-09-04 19:48:57 +00:00
|
|
|
|
- (IBAction) stop:(id)sender;
|
|
|
|
|
- (IBAction) playStop:(id)sender;
|
|
|
|
|
- (IBAction) playMusic:(id)sender;
|
|
|
|
|
- (IBAction) adjustTempo:(id)sender;
|
2011-09-06 01:15:51 +00:00
|
|
|
|
- (IBAction) zoomIn: (id) sender;
|
|
|
|
|
- (IBAction) zoomOut: (id) sender;
|
2011-09-04 01:00:38 +00:00
|
|
|
|
|
2006-10-28 09:18:55 +00:00
|
|
|
|
- (VLEditable *) editTarget;
|
|
|
|
|
- (void) setEditTarget:(VLEditable *)editable;
|
2007-04-18 07:05:04 +00:00
|
|
|
|
- (void) startAnimation;
|
|
|
|
|
- (void) stopAnimation;
|
2011-09-11 21:27:53 +00:00
|
|
|
|
- (void (^)()) willPlaySequence:(MusicSequence)music;
|
2011-09-04 01:00:38 +00:00
|
|
|
|
- (void) showLogAndBeep;
|
2006-10-28 09:18:55 +00:00
|
|
|
|
|
|
|
|
|
@end
|