diff --git a/English.lproj/VLDocument.nib/classes.nib b/English.lproj/VLDocument.nib/classes.nib index 96a02e2..0f561ee 100644 --- a/English.lproj/VLDocument.nib/classes.nib +++ b/English.lproj/VLDocument.nib/classes.nib @@ -4,10 +4,10 @@ {CLASS = MyDocument; LANGUAGE = ObjC; SUPERCLASS = NSDocument; }, {CLASS = VLDocument; LANGUAGE = ObjC; SUPERCLASS = NSDocument; }, { - ACTIONS = {scroll = id; setDivisions = id; setKey = id; setTime = id; }; + ACTIONS = {hideFieldEditor = id; setDivisions = id; setKey = id; setTime = id; }; CLASS = VLSheetView; LANGUAGE = ObjC; - OUTLETS = {chords = id; }; + OUTLETS = {chords = id; fieldEditor = id; }; SUPERCLASS = NSView; } ); diff --git a/English.lproj/VLDocument.nib/info.nib b/English.lproj/VLDocument.nib/info.nib index 646f180..b2f609d 100644 --- a/English.lproj/VLDocument.nib/info.nib +++ b/English.lproj/VLDocument.nib/info.nib @@ -3,14 +3,14 @@ IBDocumentLocation - 41 30 356 240 0 0 1024 746 + 44 14 356 240 0 0 1024 746 IBFramework Version - 437.0 + 451.0 IBOpenObjects 5 IBSystem Version - 8F46 + 9A255 diff --git a/English.lproj/VLDocument.nib/keyedobjects.nib b/English.lproj/VLDocument.nib/keyedobjects.nib index 7803d4c..a512b0d 100644 Binary files a/English.lproj/VLDocument.nib/keyedobjects.nib and b/English.lproj/VLDocument.nib/keyedobjects.nib differ diff --git a/Sources/VLModel.cpp b/Sources/VLModel.cpp index e6d9210..1bd377d 100644 --- a/Sources/VLModel.cpp +++ b/Sources/VLModel.cpp @@ -135,6 +135,7 @@ static const VLChordModifier kModifiers[] = { {"11", VLChord::kmMin7th | VLChord::kmMaj9th | VLChord::km11th, 0}, {"#9", VLChord::kmMin7th | VLChord::kmAug9th, VLChord::kmMaj9th}, {"b9", VLChord::kmMin7th | VLChord::kmMin9th, VLChord::kmMaj9th}, + {"69", VLChord::kmDim7th | VLChord::kmMaj9th, 0}, {"9", VLChord::kmMin7th | VLChord::kmMaj9th, 0}, {"7", VLChord::kmMin7th, 0}, {"maj", VLChord::kmMaj7th, VLChord::kmMin7th}, @@ -152,7 +153,7 @@ static const VLChordModifier kModifiers[] = { }; static const char * kStepNames[] = { - "", "", "sus2", "", "", "sus", "♭5", "", "+", "♭7", "7", "♯7", "", + "", "", "sus2", "", "", "sus", "♭5", "", "+", "6", "7", "♯7", "", "♭9", "9", "♯9", "", "11", "♯11", "", "♭9", "13" }; @@ -204,6 +205,7 @@ VLChord::VLChord(std::string name) } else name.erase(root, 2); } + // // Apply modifiers // @@ -261,6 +263,13 @@ void VLChord::Name(std::string & base, std::string & ext, std::string & root, bo steps&= ~kmMaj7th; } // + // 6/9 + // + if ((steps & (kmDim7th|kmMaj9th)) == (kmDim7th|kmMaj9th)) { + ext += "69"; + steps&= ~(kmDim7th|kmMaj9th); + } + // // Other extensions. Only the highest unaltered extension is listed. // if (uint32_t unaltered = steps & (kmMin7th | kmMaj9th | km11th | kmMaj13th)) { diff --git a/Sources/VLModel.h b/Sources/VLModel.h index 5e1cf94..5a47496 100644 --- a/Sources/VLModel.h +++ b/Sources/VLModel.h @@ -151,7 +151,7 @@ struct VLChord : VLNote { kmDim5th = (1 << kDim5th), km5th = (1 << k5th), kmAug5th = (1 << kAug5th), - kmDim7th = (1 << kDim7th), + kmDim7th = (1 << kDim7th), kmMin7th = (1 << kMin7th), kmMaj7th = (1 << kMaj7th), kmOctave = (1 << kOctave), diff --git a/Sources/VLSheetView.h b/Sources/VLSheetView.h index a28b233..fd29a9b 100644 --- a/Sources/VLSheetView.h +++ b/Sources/VLSheetView.h @@ -35,6 +35,7 @@ enum VLMusicElement { @interface VLSheetView : NSView { BOOL needsRecalc; + BOOL showFieldEditor; float clefKeyW; float measureW; int groups; @@ -51,13 +52,17 @@ enum VLMusicElement { int noteCursorMeasure; VLFract noteCursorAt; int noteCursorPitch; + id fieldBeingEdited; - IBOutlet id chords; + IBOutlet id chords; + IBOutlet id fieldEditor; } - (IBAction) setKey:(id)sender; - (IBAction) setTime:(id)sender; - (IBAction) setDivisions:(id)sender; +- (IBAction) showFieldEditor:(id)sender withAction:(SEL)selector; +- (IBAction) hideFieldEditor:(id)sender; - (void) setFirstMeasure: (NSNumber *)measure; diff --git a/Sources/VLSheetView.mm b/Sources/VLSheetView.mm index 5dd2de3..25b70c7 100644 --- a/Sources/VLSheetView.mm +++ b/Sources/VLSheetView.mm @@ -79,6 +79,7 @@ static float sFlatPos[] = { } } needsRecalc = YES; + showFieldEditor = NO; firstMeasure = 0; noteRectTracker = 0; noteCursorCache = nil; @@ -311,4 +312,20 @@ static float sFlatPos[] = { [self setNeedsDisplay: YES]; } +- (IBAction)showFieldEditor:(id)sender withAction:(SEL)selector +{ + fieldBeingEdited = sender; + [fieldEditor setObjectValue:[sender title]]; + [fieldEditor setAction:selector]; + [self setValue: [NSNumber numberWithBool:YES] + forKey: @"showFieldEditor"]; +} + +- (IBAction)hideFieldEditor:(id)sender +{ + [fieldEditor setAction:nil]; + [self setValue: [NSNumber numberWithBool:NO] + forKey: @"showFieldEditor"]; +} + @end diff --git a/Sources/VLSheetViewChords.h b/Sources/VLSheetViewChords.h index 480215e..5e18fbe 100644 --- a/Sources/VLSheetViewChords.h +++ b/Sources/VLSheetViewChords.h @@ -9,6 +9,7 @@ @interface VLSheetView (Chords) - (IBAction) editChord:(id)sender; +- (IBAction) doneEditingChord:(id)sender; - (void) setupChords; diff --git a/Sources/VLSheetViewChords.mm b/Sources/VLSheetViewChords.mm index cefa951..660c8e8 100644 --- a/Sources/VLSheetViewChords.mm +++ b/Sources/VLSheetViewChords.mm @@ -83,7 +83,6 @@ // // Build new list // - NSView * prevKeyView = nil; NSFont * chordFont = [NSFont controlContentFontOfSize: 14]; int beatsPerGroup = quarterBeats / groups; for (int m = 0; mfDuration; if (cCur != cEnd && at == VLFraction(beat, 4) && cCur->fPitch != VLNote::kNoPitch) - [chord setAttributedStringValue: [self stringWithChord:*cCur]]; + [chord setTitle: [self stringWithChord:*cCur]]; [chord release]; } } [chords setNeedsDisplay: YES]; } - - (IBAction) editChord:(id)sender +{ + [self showFieldEditor:sender withAction:@selector(doneEditingChord:)]; +} + +- (IBAction) doneEditingChord:(id)sender { VLSong * song = [self song]; @@ -163,12 +162,10 @@ } else { NSAttributedString * s = [self stringWithChord:chord]; [sender setAttributedStringValue: s]; + [fieldBeingEdited setTitle: s]; [sender setTextColor: [NSColor blackColor]]; - NSSize sz = [sender frame].size; - sz.width = [s size].width+10.0; - [sender setFrameSize: sz]; VLSoundOut::Instance()->PlayChord(chord); - int tag = [sender tag]; + int tag = [fieldBeingEdited tag]; song->AddChord(chord, tag >> 8, VLFraction(tag & 0xFF, 4)); } } diff --git a/Vocalese.xcodeproj/neeri.mode1v3 b/Vocalese.xcodeproj/neeri.mode1v3 index 20003d8..a281dd8 100644 --- a/Vocalese.xcodeproj/neeri.mode1v3 +++ b/Vocalese.xcodeproj/neeri.mode1v3 @@ -200,11 +200,29 @@ Content PBXProjectModuleGUID - 95FA70960AB3370800B2D764 + 95D1F8310AB694EC00EE6AC8 PBXProjectModuleLabel - <No Editor> + VLSheetView.mm PBXSplitModuleInNavigatorKey - + + Split0 + + PBXProjectModuleGUID + 95D1F8320AB694EC00EE6AC8 + PBXProjectModuleLabel + VLSheetView.mm + _historyCapacity + 0 + bookmark + 95D1F8BD0AB69F2F00EE6AC8 + history + + 95D1F82B0AB693AE00EE6AC8 + + + SplitCount + 1 + StatusBarVisibility @@ -215,14 +233,141 @@ PBXModuleWindowStatusBarHidden2 RubberWindowFrame - 203 96 763 593 0 0 1024 746 + 164 91 763 593 0 0 1024 746 Content PBXProjectModuleGUID - 956999A10AB370CD0033F43C + 95D1F8130AB6908400EE6AC8 + PBXProjectModuleLabel + VLSheetViewChords.h + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 95D1F8140AB6908400EE6AC8 + PBXProjectModuleLabel + VLSheetViewChords.h + _historyCapacity + 0 + bookmark + 95D1F8BE0AB69F2F00EE6AC8 + history + + 95D1F86A0AB6970400EE6AC8 + + + SplitCount + 1 + + StatusBarVisibility + + + Geometry + + Frame + {{0, 20}, {763, 552}} + PBXModuleWindowStatusBarHidden2 + + RubberWindowFrame + 186 75 763 593 0 0 1024 746 + + + + Content + + PBXProjectModuleGUID + 95D1F82E0AB694EC00EE6AC8 + PBXProjectModuleLabel + VLSheetView.mm + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 95D1F82F0AB694EC00EE6AC8 + PBXProjectModuleLabel + VLSheetView.mm + _historyCapacity + 0 + bookmark + 95D1F8BF0AB69F2F00EE6AC8 + history + + 95D1F8530AB6967E00EE6AC8 + 95D1F8540AB6967E00EE6AC8 + + prevStack + + 95D1F84C0AB6960700EE6AC8 + 95D1F8550AB6967E00EE6AC8 + 95D1F8560AB6967E00EE6AC8 + + + SplitCount + 1 + + StatusBarVisibility + + + Geometry + + Frame + {{0, 20}, {763, 552}} + PBXModuleWindowStatusBarHidden2 + + RubberWindowFrame + 15 148 763 593 0 0 1024 746 + + + + Content + + PBXProjectModuleGUID + 95D1F7FE0AB68C8C00EE6AC8 + PBXProjectModuleLabel + VLSheetView.h + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 95D1F7FF0AB68C8C00EE6AC8 + PBXProjectModuleLabel + VLSheetView.h + _historyCapacity + 0 + bookmark + 95D1F8C00AB69F2F00EE6AC8 + history + + 95D1F80B0AB68D3B00EE6AC8 + + + SplitCount + 1 + + StatusBarVisibility + + + Geometry + + Frame + {{0, 20}, {763, 552}} + PBXModuleWindowStatusBarHidden2 + + RubberWindowFrame + 242 153 763 593 0 0 1024 746 + + + + Content + + PBXProjectModuleGUID + 95D1F8660AB6970400EE6AC8 PBXProjectModuleLabel <No Editor> PBXSplitModuleInNavigatorKey @@ -237,7 +382,29 @@ PBXModuleWindowStatusBarHidden2 RubberWindowFrame - 38 127 763 593 0 0 1024 746 + 15 148 763 593 0 0 1024 746 + + + + Content + + PBXProjectModuleGUID + 95D1F8850AB69B6700EE6AC8 + PBXProjectModuleLabel + <No Editor> + PBXSplitModuleInNavigatorKey + + StatusBarVisibility + + + Geometry + + Frame + {{0, 20}, {763, 552}} + PBXModuleWindowStatusBarHidden2 + + RubberWindowFrame + 168 116 763 593 0 0 1024 746 @@ -312,19 +479,22 @@ PBXSmartGroupTreeModuleOutlineStateExpansionKey 2A37F4AAFDCFA73011CA2CEA + 2A37F4ABFDCFA73011CA2CEA + 955E59560957C0C50045FDA5 2A37F4B8FDCFA73011CA2CEA + 1C37FBAC04509CD000000102 1C37FABC05509CD000000102 PBXSmartGroupTreeModuleOutlineStateSelectionKey - 9 - 4 + 6 + 1 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey - {{0, 0}, {186, 338}} + {{0, 5}, {186, 338}} PBXTopSmartGroupGIDs @@ -424,9 +594,9 @@ TableOfContents - 956999870AB36FA30033F43C + 95D1F7F00AB6821400EE6AC8 1CE0B1FE06471DED0097A5F4 - 956999880AB36FA30033F43C + 95D1F7F10AB6821400EE6AC8 1CE0B20306471E060097A5F4 1CE0B20506471E060097A5F4 @@ -560,14 +730,18 @@ 5 WindowOrderList - 956999A10AB370CD0033F43C - 956999940AB36FA30033F43C - 956999950AB36FA30033F43C - 956999960AB36FA30033F43C + 95D1F8850AB69B6700EE6AC8 + 95D1F8660AB6970400EE6AC8 + 95D1F8240AB6930D00EE6AC8 + 95D1F8250AB6930D00EE6AC8 + 95D1F8260AB6930D00EE6AC8 95D7BFC80AA6C1A500D5E02C 95D7BFC00AA6C1A500D5E02C - 95FA70960AB3370800B2D764 1CD10A99069EF8BA00B06720 + 95D1F7FE0AB68C8C00EE6AC8 + 95D1F82E0AB694EC00EE6AC8 + 95D1F8130AB6908400EE6AC8 + 95D1F8310AB694EC00EE6AC8 /Users/neeri/Development/Vocalese/Vocalese.xcodeproj WindowString @@ -592,7 +766,7 @@ PBXProjectModuleGUID 1CD0528F0623707200166675 PBXProjectModuleLabel - + VLSheetViewChords.mm StatusBarVisibility @@ -609,6 +783,8 @@ 293pt + BecomeActive + ContentConfiguration PBXProjectModuleGUID @@ -648,7 +824,7 @@ TableOfContents 95D7BFC00AA6C1A500D5E02C - 9569998C0AB36FA30033F43C + 95D1F8220AB6930D00EE6AC8 1CD0528F0623707200166675 XCMainBuildResultsModuleGUID @@ -690,8 +866,8 @@ yes sizes - {{0, 0}, {310, 200}} - {{310, 0}, {384, 200}} + {{0, 0}, {308, 200}} + {{308, 0}, {386, 200}} VerticalSplitView @@ -737,10 +913,10 @@ Value 85 Summary - 154 + 156 Frame - {{310, 0}, {384, 200}} + {{308, 0}, {386, 200}} RubberWindowFrame 254 208 694 422 0 0 1024 746 @@ -768,13 +944,13 @@ TableOfContents 1CD10A99069EF8BA00B06720 - 9569998D0AB36FA30033F43C + 95D1F7F20AB6821400EE6AC8 1C162984064C10D400B95A72 - 9569998E0AB36FA30033F43C - 9569998F0AB36FA30033F43C - 956999900AB36FA30033F43C - 956999910AB36FA30033F43C - 956999920AB36FA30033F43C + 95D1F7F30AB6821400EE6AC8 + 95D1F7F40AB6821400EE6AC8 + 95D1F7F50AB6821400EE6AC8 + 95D1F7F60AB6821400EE6AC8 + 95D1F7F70AB6821400EE6AC8 ToolbarConfiguration xcode.toolbar.config.debugV3 @@ -783,7 +959,7 @@ WindowToolGUID 1CD10A99069EF8BA00B06720 WindowToolIsVisible - + Identifier @@ -936,7 +1112,7 @@ TableOfContents 95D7BFC80AA6C1A500D5E02C - 956999930AB36FA30033F43C + 95D1F8230AB6930D00EE6AC8 1C78EAAC065D492600B07095 WindowString diff --git a/Vocalese.xcodeproj/neeri.pbxuser b/Vocalese.xcodeproj/neeri.pbxuser index 87e6b5c..62b256e 100644 --- a/Vocalese.xcodeproj/neeri.pbxuser +++ b/Vocalese.xcodeproj/neeri.pbxuser @@ -45,8 +45,8 @@ PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; PBXFileTableDataSourceColumnWidthsKey = ( 20, - 200, - 63, + 203, + 60, 20, 48, 43, @@ -62,8 +62,22 @@ PBXFileDataSource_Warnings_ColumnID, ); }; - PBXPerProjectTemplateStateSaveDate = 179531674; - PBXWorkspaceStateSaveDate = 179531674; + PBXPerProjectTemplateStateSaveDate = 179733005; + PBXWorkspaceStateSaveDate = 179733005; + }; + perUserProjectItems = { + 95D1F80B0AB68D3B00EE6AC8 /* PBXTextBookmark */ = 95D1F80B0AB68D3B00EE6AC8 /* PBXTextBookmark */; + 95D1F82B0AB693AE00EE6AC8 /* PBXBookmark */ = 95D1F82B0AB693AE00EE6AC8 /* PBXBookmark */; + 95D1F84C0AB6960700EE6AC8 /* PBXTextBookmark */ = 95D1F84C0AB6960700EE6AC8 /* PBXTextBookmark */; + 95D1F8530AB6967E00EE6AC8 /* PBXTextBookmark */ = 95D1F8530AB6967E00EE6AC8 /* PBXTextBookmark */; + 95D1F8540AB6967E00EE6AC8 /* PBXTextBookmark */ = 95D1F8540AB6967E00EE6AC8 /* PBXTextBookmark */; + 95D1F8550AB6967E00EE6AC8 /* PBXTextBookmark */ = 95D1F8550AB6967E00EE6AC8 /* PBXTextBookmark */; + 95D1F8560AB6967E00EE6AC8 /* PBXTextBookmark */ = 95D1F8560AB6967E00EE6AC8 /* PBXTextBookmark */; + 95D1F86A0AB6970400EE6AC8 /* PBXTextBookmark */ = 95D1F86A0AB6970400EE6AC8 /* PBXTextBookmark */; + 95D1F8BD0AB69F2F00EE6AC8 /* PBXTextBookmark */ = 95D1F8BD0AB69F2F00EE6AC8 /* PBXTextBookmark */; + 95D1F8BE0AB69F2F00EE6AC8 /* PBXTextBookmark */ = 95D1F8BE0AB69F2F00EE6AC8 /* PBXTextBookmark */; + 95D1F8BF0AB69F2F00EE6AC8 /* PBXTextBookmark */ = 95D1F8BF0AB69F2F00EE6AC8 /* PBXTextBookmark */; + 95D1F8C00AB69F2F00EE6AC8 /* PBXTextBookmark */ = 95D1F8C00AB69F2F00EE6AC8 /* PBXTextBookmark */; }; sourceControlManager = 954D7413095406B2007D9571 /* Source Control */; userBuildSettings = { @@ -147,9 +161,17 @@ }; 952DCD76096BBB11001C2316 /* VLSheetViewChords.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {724, 520}}"; - sepNavSelRange = "{150, 0}"; - sepNavVisRect = "{{0, 0}, {724, 520}}"; + sepNavIntBoundsRect = "{{0, 0}, {704, 520}}"; + sepNavSelRange = "{184, 35}"; + sepNavVisRect = "{{0, 0}, {704, 520}}"; + sepNavWindowFrame = "{{186, 19}, {763, 649}}"; + }; + }; + 952DCD77096BBB11001C2316 /* VLSheetViewChords.mm */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {703, 2100}}"; + sepNavSelRange = "{4592, 34}"; + sepNavVisRect = "{{0, 1837}, {703, 261}}"; sepNavWindowFrame = "{{15, 92}, {763, 649}}"; }; }; @@ -197,16 +219,16 @@ 955E58E3095658AB0045FDA5 /* VLModel.h */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {704, 3080}}"; - sepNavSelRange = "{2267, 0}"; - sepNavVisRect = "{{0, 558}, {704, 497}}"; + sepNavSelRange = "{2773, 0}"; + sepNavVisRect = "{{0, 1807}, {704, 497}}"; sepNavWindowFrame = "{{203, 40}, {763, 649}}"; }; }; 955E58E4095658AB0045FDA5 /* VLModel.cpp */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {704, 4564}}"; - sepNavSelRange = "{9472, 29}"; - sepNavVisRect = "{{0, 2375}, {704, 497}}"; + sepNavIntBoundsRect = "{{0, 0}, {704, 3976}}"; + sepNavSelRange = "{4436, 0}"; + sepNavVisRect = "{{0, 2758}, {704, 497}}"; sepNavWindowFrame = "{{256, 62}, {763, 649}}"; }; }; @@ -242,9 +264,9 @@ }; 955E59600957C1400045FDA5 /* TVLChord.cpp */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {724, 520}}"; + sepNavIntBoundsRect = "{{0, 0}, {704, 497}}"; sepNavSelRange = "{557, 0}"; - sepNavVisRect = "{{0, 0}, {724, 520}}"; + sepNavVisRect = "{{0, 0}, {704, 497}}"; sepNavWindowFrame = "{{84, 29}, {763, 649}}"; }; }; @@ -324,23 +346,134 @@ hitCount = 0; ignoreCount = 0; lineNumber = 21; - modificationTime = 179531977.512253; + modificationTime = 179740227.391068; state = 2; }; 95BDA15709540BF1009F9D65 /* VLSheetView.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {704, 1064}}"; - sepNavSelRange = "{890, 0}"; - sepNavVisRect = "{{0, 434}, {704, 497}}"; + sepNavIntBoundsRect = "{{0, 0}, {704, 1134}}"; + sepNavSelRange = "{1065, 16}"; + sepNavVisRect = "{{0, 472}, {704, 520}}"; sepNavWindowFrame = "{{242, 97}, {763, 649}}"; }; }; 95BDA15809540BF1009F9D65 /* VLSheetView.mm */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {704, 4410}}"; - sepNavSelRange = "{3053, 0}"; - sepNavVisRect = "{{0, 0}, {704, 497}}"; + sepNavIntBoundsRect = "{{0, 0}, {704, 3626}}"; + sepNavSelRange = "{7591, 0}"; + sepNavVisRect = "{{0, 3106}, {704, 520}}"; sepNavWindowFrame = "{{164, 35}, {763, 649}}"; }; }; + 95D1F80B0AB68D3B00EE6AC8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 95BDA15709540BF1009F9D65 /* VLSheetView.h */; + name = "VLSheetView.h: 57"; + rLen = 0; + rLoc = 1134; + rType = 0; + vrLen = 829; + vrLoc = 672; + }; + 95D1F82B0AB693AE00EE6AC8 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 95BDA15809540BF1009F9D65 /* VLSheetView.mm */; + }; + 95D1F84C0AB6960700EE6AC8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 952DCD77096BBB11001C2316 /* VLSheetViewChords.mm */; + name = "VLSheetViewChords.mm: 164"; + rLen = 0; + rLoc = 4620; + rType = 0; + vrLen = 839; + vrLoc = 3237; + }; + 95D1F8530AB6967E00EE6AC8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 952DCD77096BBB11001C2316 /* VLSheetViewChords.mm */; + name = "VLSheetViewChords.mm: 116"; + rLen = 0; + rLoc = 3410; + rType = 0; + vrLen = 971; + vrLoc = 2859; + }; + 95D1F8540AB6967E00EE6AC8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 95BDA15809540BF1009F9D65 /* VLSheetView.mm */; + rLen = 0; + rLoc = 326; + rType = 1; + }; + 95D1F8550AB6967E00EE6AC8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 95BDA15809540BF1009F9D65 /* VLSheetView.mm */; + name = "VLSheetView.mm: 317"; + rLen = 0; + rLoc = 7520; + rType = 0; + vrLen = 758; + vrLoc = 7108; + }; + 95D1F8560AB6967E00EE6AC8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 952DCD77096BBB11001C2316 /* VLSheetViewChords.mm */; + name = "VLSheetViewChords.mm: 116"; + rLen = 0; + rLoc = 3410; + rType = 0; + vrLen = 971; + vrLoc = 2859; + }; + 95D1F86A0AB6970400EE6AC8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 952DCD76096BBB11001C2316 /* VLSheetViewChords.h */; + name = "VLSheetViewChords.h: 11"; + rLen = 35; + rLoc = 184; + rType = 0; + vrLen = 290; + vrLoc = 0; + }; + 95D1F8BD0AB69F2F00EE6AC8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 95BDA15809540BF1009F9D65 /* VLSheetView.mm */; + name = "VLSheetView.mm: 318"; + rLen = 0; + rLoc = 7591; + rType = 0; + vrLen = 766; + vrLoc = 7108; + }; + 95D1F8BE0AB69F2F00EE6AC8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 952DCD76096BBB11001C2316 /* VLSheetViewChords.h */; + name = "VLSheetViewChords.h: 11"; + rLen = 35; + rLoc = 184; + rType = 0; + vrLen = 290; + vrLoc = 0; + }; + 95D1F8BF0AB69F2F00EE6AC8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 95BDA15809540BF1009F9D65 /* VLSheetView.mm */; + name = "VLSheetView.mm: 327"; + rLen = 0; + rLoc = 7785; + rType = 0; + vrLen = 786; + vrLoc = 7088; + }; + 95D1F8C00AB69F2F00EE6AC8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 95BDA15709540BF1009F9D65 /* VLSheetView.h */; + name = "VLSheetView.h: 55"; + rLen = 16; + rLoc = 1065; + rType = 0; + vrLen = 925; + vrLoc = 566; + }; } diff --git a/Vocalese.xcodeproj/project.pbxproj b/Vocalese.xcodeproj/project.pbxproj index 9a97642..5e156f6 100644 --- a/Vocalese.xcodeproj/project.pbxproj +++ b/Vocalese.xcodeproj/project.pbxproj @@ -428,7 +428,7 @@ GCC_PREFIX_HEADER = Sources/Vocalese_Prefix.pch; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = Info.plist; + INFOPLIST_FILE = Resources/Info.plist; INSTALL_PATH = "$(HOME)/Applications"; PREBINDING = NO; PRODUCT_NAME = Vocalese;