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; };