diff --git a/Resources/VLLogWindow.nib/classes.nib b/Resources/VLLogWindow.nib/classes.nib
new file mode 100644
index 0000000..ef63bd5
--- /dev/null
+++ b/Resources/VLLogWindow.nib/classes.nib
@@ -0,0 +1,18 @@
+{
+ IBClasses = (
+ {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; },
+ {
+ CLASS = LilypondLogWin;
+ LANGUAGE = ObjC;
+ OUTLETS = {fLog = id; };
+ SUPERCLASS = NSWindowController;
+ },
+ {
+ CLASS = VLLogWindow;
+ LANGUAGE = ObjC;
+ OUTLETS = {log = id; };
+ SUPERCLASS = NSWindowController;
+ }
+ );
+ IBVersion = 1;
+}
\ No newline at end of file
diff --git a/Resources/VLLogWindow.nib/info.nib b/Resources/VLLogWindow.nib/info.nib
new file mode 100644
index 0000000..b61433b
--- /dev/null
+++ b/Resources/VLLogWindow.nib/info.nib
@@ -0,0 +1,16 @@
+
+
+
+
+ IBDocumentLocation
+ 210 57 356 240 0 0 1024 746
+ IBFramework Version
+ 452.0
+ IBOpenObjects
+
+ 5
+
+ IBSystem Version
+ 9A283
+
+
diff --git a/Resources/VLLogWindow.nib/keyedobjects.nib b/Resources/VLLogWindow.nib/keyedobjects.nib
new file mode 100644
index 0000000..7f1eb1c
Binary files /dev/null and b/Resources/VLLogWindow.nib/keyedobjects.nib differ
diff --git a/Resources/VLPDFWindow.nib/classes.nib b/Resources/VLPDFWindow.nib/classes.nib
new file mode 100644
index 0000000..905a33c
--- /dev/null
+++ b/Resources/VLPDFWindow.nib/classes.nib
@@ -0,0 +1,36 @@
+{
+ IBClasses = (
+ {
+ ACTIONS = {"" = id; };
+ CLASS = FirstResponder;
+ LANGUAGE = ObjC;
+ SUPERCLASS = NSObject;
+ },
+ {
+ CLASS = LilypondOutputWin;
+ LANGUAGE = ObjC;
+ OUTLETS = {
+ fNextPageItem = id;
+ fPDFView = id;
+ fPrevPageItem = id;
+ fZoomInItem = id;
+ fZoomOutItem = id;
+ };
+ SUPERCLASS = NSWindowController;
+ },
+ {CLASS = LilypondPDFView; LANGUAGE = ObjC; SUPERCLASS = PDFView; },
+ {
+ CLASS = VLPDFWindow;
+ LANGUAGE = ObjC;
+ OUTLETS = {
+ PDFView = id;
+ nextPageItem = id;
+ prevPageItem = id;
+ zoomInItem = id;
+ zoomOutItem = id;
+ };
+ SUPERCLASS = NSWindowController;
+ }
+ );
+ IBVersion = 1;
+}
\ No newline at end of file
diff --git a/Resources/VLPDFWindow.nib/info.nib b/Resources/VLPDFWindow.nib/info.nib
new file mode 100644
index 0000000..6d5ff79
--- /dev/null
+++ b/Resources/VLPDFWindow.nib/info.nib
@@ -0,0 +1,16 @@
+
+
+
+
+ IBDocumentLocation
+ 122 105 356 240 0 0 1024 746
+ IBFramework Version
+ 452.0
+ IBOpenObjects
+
+ 11
+
+ IBSystem Version
+ 9A283
+
+
diff --git a/Resources/VLPDFWindow.nib/keyedobjects.nib b/Resources/VLPDFWindow.nib/keyedobjects.nib
new file mode 100644
index 0000000..0a2a528
Binary files /dev/null and b/Resources/VLPDFWindow.nib/keyedobjects.nib differ
diff --git a/Resources/console.icns b/Resources/console.icns
new file mode 100644
index 0000000..b4f8bd6
Binary files /dev/null and b/Resources/console.icns differ
diff --git a/Resources/music.tiff b/Resources/music.tiff
new file mode 100644
index 0000000..ad38d20
Binary files /dev/null and b/Resources/music.tiff differ
diff --git a/Resources/nextpage.tiff b/Resources/nextpage.tiff
new file mode 100644
index 0000000..6110c4f
Binary files /dev/null and b/Resources/nextpage.tiff differ
diff --git a/Resources/prevpage.tiff b/Resources/prevpage.tiff
new file mode 100644
index 0000000..e34543b
Binary files /dev/null and b/Resources/prevpage.tiff differ
diff --git a/Resources/run.icns b/Resources/run.icns
new file mode 100644
index 0000000..931d4e4
Binary files /dev/null and b/Resources/run.icns differ
diff --git a/Resources/zoomin.tiff b/Resources/zoomin.tiff
new file mode 100644
index 0000000..9029b20
Binary files /dev/null and b/Resources/zoomin.tiff differ
diff --git a/Resources/zoomout.tiff b/Resources/zoomout.tiff
new file mode 100644
index 0000000..0dbe1a6
Binary files /dev/null and b/Resources/zoomout.tiff differ
diff --git a/Sources/VLLogWindow.h b/Sources/VLLogWindow.h
new file mode 100644
index 0000000..7998e49
--- /dev/null
+++ b/Sources/VLLogWindow.h
@@ -0,0 +1,18 @@
+//
+// VLLogWindow.h
+// Vocalese
+//
+// Created by Matthias Neeracher on 5/29/05.
+// Copyright 2005 __MyCompanyName__. All rights reserved.
+//
+
+#import
+
+@interface VLLogWindow : NSWindowController {
+ IBOutlet id log;
+ NSMutableString * logText;
+}
+
+- (void) logFromFileHandle:(NSFileHandle *) h;
+
+@end
diff --git a/Sources/VLLogWindow.mm b/Sources/VLLogWindow.mm
new file mode 100644
index 0000000..6ade5f1
--- /dev/null
+++ b/Sources/VLLogWindow.mm
@@ -0,0 +1,56 @@
+//
+// VLLogWindow.m
+// Lilypond
+//
+// Created by Matthias Neeracher on 5/29/05.
+// Copyright 2005 __MyCompanyName__. All rights reserved.
+//
+
+#import "VLLogWindow.h"
+
+@implementation VLLogWindow
+
+- (id)initWithWindow:(NSWindow *)window
+{
+ self = [super initWithWindow:window];
+ logText = [[NSMutableString alloc] initWithCapacity:1000];
+
+ return self;
+}
+
+- (void)dealloc
+{
+ [logText autorelease];
+ [super dealloc];
+}
+
+- (IBAction)printDocument:(id)sender
+{
+ [log print: sender];
+}
+
+- (NSString *)windowTitleForDocumentDisplayName:(NSString *)displayName
+{
+ return [displayName stringByAppendingString: @" - Log"];
+}
+
+- (void) logFromFileHandle:(NSFileHandle *) h
+{
+ NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
+ NSData * data;
+
+ [logText setString: @""];
+ [log setString: logText];
+ while ((data = [h availableData]) && [data length]) {
+ NSString * append = [[[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding] autorelease];
+ [logText appendString: append];
+ [log setString: logText];
+ [log scrollRangeToVisible: NSMakeRange([logText length], 0)];
+
+ [pool release];
+ pool = [[NSAutoreleasePool alloc] init];
+ }
+ [pool release];
+}
+
+@end
diff --git a/Sources/VLPDFView.h b/Sources/VLPDFView.h
new file mode 100644
index 0000000..c42a4d5
--- /dev/null
+++ b/Sources/VLPDFView.h
@@ -0,0 +1,15 @@
+//
+// VLPDFView.h
+// Lilypond
+//
+// Created by Matthias Neeracher on 5/29/05.
+// Copyright 2005 __MyCompanyName__. All rights reserved.
+//
+
+#import
+#import
+
+@interface VLPDFView : PDFView {
+}
+
+@end
diff --git a/Sources/VLPDFView.mm b/Sources/VLPDFView.mm
new file mode 100644
index 0000000..46b51c0
--- /dev/null
+++ b/Sources/VLPDFView.mm
@@ -0,0 +1,38 @@
+//
+// VLPDFView.m
+// Lilypond
+//
+// Created by Matthias Neeracher on 5/29/05.
+// Copyright 2005 __MyCompanyName__. All rights reserved.
+//
+
+#import "VLPDFView.h"
+
+@implementation VLPDFView
+
+- (BOOL)tryOpenURL:(NSURL *)url
+{
+ if ([[url scheme] isEqual: @"textedit"]) {
+ //
+ // Handle TextEdit links internally
+ //
+ NSString * path = [url path];
+ NSArray * components = [[path lastPathComponent] componentsSeparatedByString: @":"];
+ unsigned count = [components count];
+ if (count > 2) {
+ int line = [[components objectAtIndex: count-2] intValue];
+ int pos = [[components objectAtIndex: count-1] intValue];
+
+ [[[[self window] windowController] document] selectCharacter:pos inLine:line];
+ }
+ return YES;
+ } else
+ return [super tryOpenURL:url] != NULL;
+}
+
+- (BOOL) canBecomeKeyView
+{
+ return YES;
+}
+
+@end
diff --git a/Sources/VLPDFWindow.h b/Sources/VLPDFWindow.h
new file mode 100644
index 0000000..db1835b
--- /dev/null
+++ b/Sources/VLPDFWindow.h
@@ -0,0 +1,21 @@
+//
+// VLPDFWindow.h
+// Vocalese
+//
+// Created by Matthias Neeracher on 5/29/05.
+// Copyright 2005 __MyCompanyName__. All rights reserved.
+//
+
+#import
+
+@interface VLPDFWindow : NSWindowController {
+ IBOutlet id pdfView;
+ IBOutlet id prevPageItem;
+ IBOutlet id nextPageItem;
+ IBOutlet id zoomInItem;
+ IBOutlet id zoomOutItem;
+}
+
+- (void)reloadPDF;
+
+@end
diff --git a/Sources/VLPDFWindow.mm b/Sources/VLPDFWindow.mm
new file mode 100644
index 0000000..14499c8
--- /dev/null
+++ b/Sources/VLPDFWindow.mm
@@ -0,0 +1,142 @@
+//
+// VLPDFWindow.m
+// Lilypond
+//
+// Created by Matthias Neeracher on 5/29/05.
+// Copyright 2005 __MyCompanyName__. All rights reserved.
+//
+
+#import "VLPDFWindow.h"
+#import "VLPDFView.h"
+
+@implementation VLPDFWindow
+
+static NSString* sOutputToolbarIdentifier = @"Lilypond Output Toolbar Identifier";
+static NSString* sPrevPageToolbarItemIdentifier = @"Prev Page Toolbar Item Identifier";
+static NSString* sNextPageToolbarItemIdentifier = @"Next Page Toolbar Item Identifier";
+static NSString* sZoomInToolbarItemIdentifier = @"Zoom In Toolbar Item Identifier";
+static NSString* sZoomOutToolbarItemIdentifier = @"Zoom Out Toolbar Item Identifier";
+
+- (NSString *)windowTitleForDocumentDisplayName:(NSString *)displayName
+{
+ return [displayName stringByAppendingString: @" - Output"];
+}
+
+- (void)synchronizeWindowTitleWithDocumentName
+{
+ [super synchronizeWindowTitleWithDocumentName];
+ [self reloadPDF];
+}
+
+- (void)reloadPDF
+{
+ if (pdfView) {
+ NSString * inString = [[[self document] fileURL] path];
+ NSString * baseString = [inString stringByDeletingPathExtension];
+ NSString * outString = [baseString stringByAppendingPathExtension: @"pdf"];
+ NSURL * pdfURL = [NSURL fileURLWithPath: outString];
+ PDFDocument * pdfDoc = [[[PDFDocument alloc] initWithURL: pdfURL] autorelease];
+ [(PDFView *)pdfView setDocument: pdfDoc];
+ }
+}
+
+- (IBAction)printDocument:(id)sender
+{
+ [pdfView printWithInfo: [NSPrintInfo sharedPrintInfo] autoRotate: YES];
+}
+
+- (void)windowDidLoad
+{
+ // Create a new toolbar instance, and attach it to our document window
+ NSToolbar *toolbar = [[[NSToolbar alloc] initWithIdentifier: sOutputToolbarIdentifier] autorelease];
+
+ // Set up toolbar properties: Allow customization, give a default display mode, and remember state in user defaults
+ [toolbar setAllowsUserCustomization: YES];
+ [toolbar setAutosavesConfiguration: YES];
+
+ // We are the delegate
+ [toolbar setDelegate: self];
+
+ // Attach the toolbar to the document window
+ [[self window] setToolbar: toolbar];
+}
+
+
+- (NSToolbarItem *) toolbar: (NSToolbar *)toolbar itemForItemIdentifier: (NSString *) itemIdent willBeInsertedIntoToolbar:(BOOL) willBeInserted {
+ // Required delegate method: Given an item identifier, this method returns an item
+ // The toolbar will use this method to obtain toolbar items that can be displayed in the customization sheet, or in the toolbar itself
+ NSToolbarItem * toolbarItem = nil;
+ id prototype = nil;
+
+ if ([itemIdent isEqual: sPrevPageToolbarItemIdentifier])
+ prototype = prevPageItem;
+ else if ([itemIdent isEqual: sNextPageToolbarItemIdentifier])
+ prototype = nextPageItem;
+ else if ([itemIdent isEqual: sZoomInToolbarItemIdentifier])
+ prototype = zoomInItem;
+ else if ([itemIdent isEqual: sZoomOutToolbarItemIdentifier])
+ prototype = zoomOutItem;
+
+ if (prototype) {
+ toolbarItem = [[[NSToolbarItem alloc] initWithItemIdentifier: itemIdent] autorelease];
+
+ // Set the text label to be displayed in the toolbar and customization palette
+ [toolbarItem setLabel: [prototype title]];
+ [toolbarItem setPaletteLabel: [prototype alternateTitle]];
+
+ // Set up a reasonable tooltip, and image Note, these aren't localized, but you will likely want to localize many of the item's properties
+ [toolbarItem setToolTip: [prototype toolTip]];
+ [toolbarItem setImage: [prototype image]];
+
+ // Tell the item what message to send when it is clicked
+ [toolbarItem setTarget: [prototype target]];
+ [toolbarItem setAction: [prototype action]];
+ } else {
+ // itemIdent refered to a toolbar item that is not provide or supported by us or cocoa
+ // Returning nil will inform the toolbar this kind of item is not supported
+ toolbarItem = nil;
+ }
+ return toolbarItem;
+}
+
+- (NSArray *) toolbarDefaultItemIdentifiers: (NSToolbar *) toolbar {
+ // Required delegate method: Returns the ordered list of items to be shown in the toolbar by default
+ // If during the toolbar's initialization, no overriding values are found in the user defaults, or if the
+ // user chooses to revert to the default items this set will be used
+ return [NSArray arrayWithObjects: NSToolbarPrintItemIdentifier, NSToolbarSeparatorItemIdentifier,
+ sPrevPageToolbarItemIdentifier, sNextPageToolbarItemIdentifier, NSToolbarSeparatorItemIdentifier,
+ sZoomInToolbarItemIdentifier, sZoomOutToolbarItemIdentifier, nil];
+}
+
+- (NSArray *) toolbarAllowedItemIdentifiers: (NSToolbar *) toolbar {
+ // Required delegate method: Returns the list of all allowed items by identifier. By default, the toolbar
+ // does not assume any items are allowed, even the separator. So, every allowed item must be explicitly listed
+ // The set of allowed items is used to construct the customization palette
+ return [NSArray arrayWithObjects: sPrevPageToolbarItemIdentifier, sNextPageToolbarItemIdentifier,
+ sZoomInToolbarItemIdentifier, sZoomOutToolbarItemIdentifier,
+ NSToolbarPrintItemIdentifier, NSToolbarCustomizeToolbarItemIdentifier,
+ NSToolbarFlexibleSpaceItemIdentifier, NSToolbarSpaceItemIdentifier, NSToolbarSeparatorItemIdentifier, nil];
+}
+
+- (void) toolbarWillAddItem: (NSNotification *) notif {
+ // Optional delegate method: Before an new item is added to the toolbar, this notification is posted.
+ // This is the best place to notice a new item is going into the toolbar. For instance, if you need to
+ // cache a reference to the toolbar item or need to set up some initial state, this is the best place
+ // to do it. The notification object is the toolbar to which the item is being added. The item being
+ // added is found by referencing the @"item" key in the userInfo
+}
+
+- (void) toolbarDidRemoveItem: (NSNotification *) notif {
+ // Optional delegate method: After an item is removed from a toolbar, this notification is sent. This allows
+ // the chance to tear down information related to the item that may have been cached. The notification object
+ // is the toolbar from which the item is being removed. The item being added is found by referencing the @"item"
+ // key in the userInfo
+}
+
+- (BOOL) validateToolbarItem: (NSToolbarItem *) toolbarItem {
+ // Optional method: This message is sent to us since we are the target of some toolbar item actions
+ // (for example: of the save items action)
+ return YES;
+}
+
+@end
diff --git a/Vocalese.xcodeproj/project.pbxproj b/Vocalese.xcodeproj/project.pbxproj
index f6f3c1d..9db1099 100644
--- a/Vocalese.xcodeproj/project.pbxproj
+++ b/Vocalese.xcodeproj/project.pbxproj
@@ -46,6 +46,18 @@
95E04DCE0AEB4D9B006F30A0 /* Templates in Resources */ = {isa = PBXBuildFile; fileRef = 95E04DCA0AEB4D9B006F30A0 /* Templates */; };
95F5F50F0ADCC433003980B2 /* VLXMLDocument.mm in Sources */ = {isa = PBXBuildFile; fileRef = 95F5F50E0ADCC433003980B2 /* VLXMLDocument.mm */; };
95F5F5340ADCCFBB003980B2 /* DTD in Resources */ = {isa = PBXBuildFile; fileRef = 95F5F51E0ADCCFBB003980B2 /* DTD */; };
+ 95FC668F0AF0A08C003D9C11 /* VLLogWindow.mm in Sources */ = {isa = PBXBuildFile; fileRef = 95FC668E0AF0A08C003D9C11 /* VLLogWindow.mm */; };
+ 95FC66960AF0A112003D9C11 /* VLLogWindow.nib in Resources */ = {isa = PBXBuildFile; fileRef = 95FC66950AF0A112003D9C11 /* VLLogWindow.nib */; };
+ 95FC66A60AF0A24C003D9C11 /* VLPDFWindow.mm in Sources */ = {isa = PBXBuildFile; fileRef = 95FC66A50AF0A24C003D9C11 /* VLPDFWindow.mm */; };
+ 95FC66BA0AF0A3AD003D9C11 /* VLPDFWindow.nib in Resources */ = {isa = PBXBuildFile; fileRef = 95FC66B90AF0A3AD003D9C11 /* VLPDFWindow.nib */; };
+ 95FC66C30AF0A4D4003D9C11 /* console.icns in Resources */ = {isa = PBXBuildFile; fileRef = 95FC66BC0AF0A4D4003D9C11 /* console.icns */; };
+ 95FC66C40AF0A4D4003D9C11 /* music.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 95FC66BD0AF0A4D4003D9C11 /* music.tiff */; };
+ 95FC66C50AF0A4D5003D9C11 /* nextpage.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 95FC66BE0AF0A4D4003D9C11 /* nextpage.tiff */; };
+ 95FC66C60AF0A4D5003D9C11 /* prevpage.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 95FC66BF0AF0A4D4003D9C11 /* prevpage.tiff */; };
+ 95FC66C70AF0A4D5003D9C11 /* run.icns in Resources */ = {isa = PBXBuildFile; fileRef = 95FC66C00AF0A4D4003D9C11 /* run.icns */; };
+ 95FC66C80AF0A4D5003D9C11 /* zoomin.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 95FC66C10AF0A4D4003D9C11 /* zoomin.tiff */; };
+ 95FC66C90AF0A4D5003D9C11 /* zoomout.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 95FC66C20AF0A4D4003D9C11 /* zoomout.tiff */; };
+ 95FC66CE0AF0A591003D9C11 /* VLPDFView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 95FC66CC0AF0A591003D9C11 /* VLPDFView.mm */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
@@ -99,6 +111,21 @@
95F5F50D0ADCC433003980B2 /* VLXMLDocument.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = VLXMLDocument.h; path = Sources/VLXMLDocument.h; sourceTree = ""; };
95F5F50E0ADCC433003980B2 /* VLXMLDocument.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = VLXMLDocument.mm; path = Sources/VLXMLDocument.mm; sourceTree = ""; };
95F5F51E0ADCCFBB003980B2 /* DTD */ = {isa = PBXFileReference; lastKnownFileType = folder; name = DTD; path = Resources/DTD; sourceTree = ""; };
+ 95FC668D0AF0A08C003D9C11 /* VLLogWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = VLLogWindow.h; path = Sources/VLLogWindow.h; sourceTree = ""; };
+ 95FC668E0AF0A08C003D9C11 /* VLLogWindow.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; name = VLLogWindow.mm; path = Sources/VLLogWindow.mm; sourceTree = ""; };
+ 95FC66950AF0A112003D9C11 /* VLLogWindow.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = VLLogWindow.nib; path = Resources/VLLogWindow.nib; sourceTree = ""; };
+ 95FC66A40AF0A24C003D9C11 /* VLPDFWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = VLPDFWindow.h; path = Sources/VLPDFWindow.h; sourceTree = ""; };
+ 95FC66A50AF0A24C003D9C11 /* VLPDFWindow.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; name = VLPDFWindow.mm; path = Sources/VLPDFWindow.mm; sourceTree = ""; };
+ 95FC66B90AF0A3AD003D9C11 /* VLPDFWindow.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = VLPDFWindow.nib; path = Resources/VLPDFWindow.nib; sourceTree = ""; };
+ 95FC66BC0AF0A4D4003D9C11 /* console.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = console.icns; path = Resources/console.icns; sourceTree = ""; };
+ 95FC66BD0AF0A4D4003D9C11 /* music.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = music.tiff; path = Resources/music.tiff; sourceTree = ""; };
+ 95FC66BE0AF0A4D4003D9C11 /* nextpage.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = nextpage.tiff; path = Resources/nextpage.tiff; sourceTree = ""; };
+ 95FC66BF0AF0A4D4003D9C11 /* prevpage.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = prevpage.tiff; path = Resources/prevpage.tiff; sourceTree = ""; };
+ 95FC66C00AF0A4D4003D9C11 /* run.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = run.icns; path = Resources/run.icns; sourceTree = ""; };
+ 95FC66C10AF0A4D4003D9C11 /* zoomin.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = zoomin.tiff; path = Resources/zoomin.tiff; sourceTree = ""; };
+ 95FC66C20AF0A4D4003D9C11 /* zoomout.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = zoomout.tiff; path = Resources/zoomout.tiff; sourceTree = ""; };
+ 95FC66CC0AF0A591003D9C11 /* VLPDFView.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; name = VLPDFView.mm; path = Sources/VLPDFView.mm; sourceTree = ""; };
+ 95FC66CD0AF0A591003D9C11 /* VLPDFView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = VLPDFView.h; path = Sources/VLPDFView.h; sourceTree = ""; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@@ -194,6 +221,12 @@
2A37F4ABFDCFA73011CA2CEA /* Classes */ = {
isa = PBXGroup;
children = (
+ 95FC66CC0AF0A591003D9C11 /* VLPDFView.mm */,
+ 95FC66CD0AF0A591003D9C11 /* VLPDFView.h */,
+ 95FC66A40AF0A24C003D9C11 /* VLPDFWindow.h */,
+ 95FC66A50AF0A24C003D9C11 /* VLPDFWindow.mm */,
+ 95FC668D0AF0A08C003D9C11 /* VLLogWindow.h */,
+ 95FC668E0AF0A08C003D9C11 /* VLLogWindow.mm */,
95498DBB0AE3812F006B5F81 /* VLSoundSched.h */,
95498DBC0AE3812F006B5F81 /* VLSoundSched.mm */,
952CBB9A095FD1CA00434E43 /* VLSoundOut.cpp */,
@@ -233,6 +266,15 @@
2A37F4B8FDCFA73011CA2CEA /* Resources */ = {
isa = PBXGroup;
children = (
+ 95FC66BC0AF0A4D4003D9C11 /* console.icns */,
+ 95FC66BD0AF0A4D4003D9C11 /* music.tiff */,
+ 95FC66BE0AF0A4D4003D9C11 /* nextpage.tiff */,
+ 95FC66BF0AF0A4D4003D9C11 /* prevpage.tiff */,
+ 95FC66C00AF0A4D4003D9C11 /* run.icns */,
+ 95FC66C10AF0A4D4003D9C11 /* zoomin.tiff */,
+ 95FC66C20AF0A4D4003D9C11 /* zoomout.tiff */,
+ 95FC66B90AF0A3AD003D9C11 /* VLPDFWindow.nib */,
+ 95FC66950AF0A112003D9C11 /* VLLogWindow.nib */,
95E04DCA0AEB4D9B006F30A0 /* Templates */,
9593E4E60AE0ED1F00035816 /* vlsong.icns */,
9593E4E70AE0ED1F00035816 /* vocalese.icns */,
@@ -388,6 +430,15 @@
9593E4E80AE0ED1F00035816 /* vlsong.icns in Resources */,
9593E4E90AE0ED1F00035816 /* vocalese.icns in Resources */,
95E04DCE0AEB4D9B006F30A0 /* Templates in Resources */,
+ 95FC66960AF0A112003D9C11 /* VLLogWindow.nib in Resources */,
+ 95FC66BA0AF0A3AD003D9C11 /* VLPDFWindow.nib in Resources */,
+ 95FC66C30AF0A4D4003D9C11 /* console.icns in Resources */,
+ 95FC66C40AF0A4D4003D9C11 /* music.tiff in Resources */,
+ 95FC66C50AF0A4D5003D9C11 /* nextpage.tiff in Resources */,
+ 95FC66C60AF0A4D5003D9C11 /* prevpage.tiff in Resources */,
+ 95FC66C70AF0A4D5003D9C11 /* run.icns in Resources */,
+ 95FC66C80AF0A4D5003D9C11 /* zoomin.tiff in Resources */,
+ 95FC66C90AF0A4D5003D9C11 /* zoomout.tiff in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -410,6 +461,9 @@
953722670AE9F0E100B6E483 /* VLLilypondDocument.mm in Sources */,
954BBD860AEDDE5300BBFD5F /* VLAppController.mm in Sources */,
954BBD9A0AEDE81500BBFD5F /* VLPitchTransformer.mm in Sources */,
+ 95FC668F0AF0A08C003D9C11 /* VLLogWindow.mm in Sources */,
+ 95FC66A60AF0A24C003D9C11 /* VLPDFWindow.mm in Sources */,
+ 95FC66CE0AF0A591003D9C11 /* VLPDFView.mm in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};