Added log and output windows

This commit is contained in:
Matthias Neeracher 2006-10-26 08:21:50 +00:00
parent 90f7099af9
commit 992ed818d6
20 changed files with 430 additions and 0 deletions

18
Resources/VLLogWindow.nib/classes.nib generated Normal file
View File

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

16
Resources/VLLogWindow.nib/info.nib generated Normal file
View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IBDocumentLocation</key>
<string>210 57 356 240 0 0 1024 746 </string>
<key>IBFramework Version</key>
<string>452.0</string>
<key>IBOpenObjects</key>
<array>
<integer>5</integer>
</array>
<key>IBSystem Version</key>
<string>9A283</string>
</dict>
</plist>

BIN
Resources/VLLogWindow.nib/keyedobjects.nib generated Normal file

Binary file not shown.

36
Resources/VLPDFWindow.nib/classes.nib generated Normal file
View File

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

16
Resources/VLPDFWindow.nib/info.nib generated Normal file
View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IBDocumentLocation</key>
<string>122 105 356 240 0 0 1024 746 </string>
<key>IBFramework Version</key>
<string>452.0</string>
<key>IBOpenObjects</key>
<array>
<integer>11</integer>
</array>
<key>IBSystem Version</key>
<string>9A283</string>
</dict>
</plist>

BIN
Resources/VLPDFWindow.nib/keyedobjects.nib generated Normal file

Binary file not shown.

BIN
Resources/console.icns Normal file

Binary file not shown.

BIN
Resources/music.tiff Normal file

Binary file not shown.

BIN
Resources/nextpage.tiff Normal file

Binary file not shown.

BIN
Resources/prevpage.tiff Normal file

Binary file not shown.

BIN
Resources/run.icns Normal file

Binary file not shown.

BIN
Resources/zoomin.tiff Normal file

Binary file not shown.

BIN
Resources/zoomout.tiff Normal file

Binary file not shown.

18
Sources/VLLogWindow.h Normal file
View File

@ -0,0 +1,18 @@
//
// VLLogWindow.h
// Vocalese
//
// Created by Matthias Neeracher on 5/29/05.
// Copyright 2005 __MyCompanyName__. All rights reserved.
//
#import <Cocoa/Cocoa.h>
@interface VLLogWindow : NSWindowController {
IBOutlet id log;
NSMutableString * logText;
}
- (void) logFromFileHandle:(NSFileHandle *) h;
@end

56
Sources/VLLogWindow.mm Normal file
View File

@ -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

15
Sources/VLPDFView.h Normal file
View File

@ -0,0 +1,15 @@
//
// VLPDFView.h
// Lilypond
//
// Created by Matthias Neeracher on 5/29/05.
// Copyright 2005 __MyCompanyName__. All rights reserved.
//
#import <Cocoa/Cocoa.h>
#import <Quartz/Quartz.h>
@interface VLPDFView : PDFView {
}
@end

38
Sources/VLPDFView.mm Normal file
View File

@ -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

21
Sources/VLPDFWindow.h Normal file
View File

@ -0,0 +1,21 @@
//
// VLPDFWindow.h
// Vocalese
//
// Created by Matthias Neeracher on 5/29/05.
// Copyright 2005 __MyCompanyName__. All rights reserved.
//
#import <Cocoa/Cocoa.h>
@interface VLPDFWindow : NSWindowController {
IBOutlet id pdfView;
IBOutlet id prevPageItem;
IBOutlet id nextPageItem;
IBOutlet id zoomInItem;
IBOutlet id zoomOutItem;
}
- (void)reloadPDF;
@end

142
Sources/VLPDFWindow.mm Normal file
View File

@ -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

View File

@ -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 = "<group>"; };
95F5F50E0ADCC433003980B2 /* VLXMLDocument.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = VLXMLDocument.mm; path = Sources/VLXMLDocument.mm; sourceTree = "<group>"; };
95F5F51E0ADCCFBB003980B2 /* DTD */ = {isa = PBXFileReference; lastKnownFileType = folder; name = DTD; path = Resources/DTD; sourceTree = "<group>"; };
95FC668D0AF0A08C003D9C11 /* VLLogWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = VLLogWindow.h; path = Sources/VLLogWindow.h; sourceTree = "<group>"; };
95FC668E0AF0A08C003D9C11 /* VLLogWindow.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; name = VLLogWindow.mm; path = Sources/VLLogWindow.mm; sourceTree = "<group>"; };
95FC66950AF0A112003D9C11 /* VLLogWindow.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = VLLogWindow.nib; path = Resources/VLLogWindow.nib; sourceTree = "<group>"; };
95FC66A40AF0A24C003D9C11 /* VLPDFWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = VLPDFWindow.h; path = Sources/VLPDFWindow.h; sourceTree = "<group>"; };
95FC66A50AF0A24C003D9C11 /* VLPDFWindow.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; name = VLPDFWindow.mm; path = Sources/VLPDFWindow.mm; sourceTree = "<group>"; };
95FC66B90AF0A3AD003D9C11 /* VLPDFWindow.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = VLPDFWindow.nib; path = Resources/VLPDFWindow.nib; sourceTree = "<group>"; };
95FC66BC0AF0A4D4003D9C11 /* console.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = console.icns; path = Resources/console.icns; sourceTree = "<group>"; };
95FC66BD0AF0A4D4003D9C11 /* music.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = music.tiff; path = Resources/music.tiff; sourceTree = "<group>"; };
95FC66BE0AF0A4D4003D9C11 /* nextpage.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = nextpage.tiff; path = Resources/nextpage.tiff; sourceTree = "<group>"; };
95FC66BF0AF0A4D4003D9C11 /* prevpage.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = prevpage.tiff; path = Resources/prevpage.tiff; sourceTree = "<group>"; };
95FC66C00AF0A4D4003D9C11 /* run.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = run.icns; path = Resources/run.icns; sourceTree = "<group>"; };
95FC66C10AF0A4D4003D9C11 /* zoomin.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = zoomin.tiff; path = Resources/zoomin.tiff; sourceTree = "<group>"; };
95FC66C20AF0A4D4003D9C11 /* zoomout.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = zoomout.tiff; path = Resources/zoomout.tiff; sourceTree = "<group>"; };
95FC66CC0AF0A591003D9C11 /* VLPDFView.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; name = VLPDFView.mm; path = Sources/VLPDFView.mm; sourceTree = "<group>"; };
95FC66CD0AF0A591003D9C11 /* VLPDFView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = VLPDFView.h; path = Sources/VLPDFView.h; sourceTree = "<group>"; };
/* 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;
};