Fixed up file tree.

CQTexperiment
vspader 2009-03-07 13:31:44 -08:00
parent 404e309160
commit b79346e3b1
17 changed files with 704 additions and 915 deletions

View File

@ -26,8 +26,6 @@
17342A9A0D5FD20B00E8D854 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 17342A980D5FD20B00E8D854 /* MainMenu.xib */; };
17342ABF0D5FD36400E8D854 /* OpenURLPanel.xib in Resources */ = {isa = PBXBuildFile; fileRef = 17342ABD0D5FD36400E8D854 /* OpenURLPanel.xib */; };
173855FF0E0CC81F00488CD4 /* FileTreeOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = 173855FE0E0CC81F00488CD4 /* FileTreeOutlineView.m */; };
1738589B0E0D92DD00488CD4 /* SideBarController.m in Sources */ = {isa = PBXBuildFile; fileRef = 173858950E0D92DD00488CD4 /* SideBarController.m */; };
1738589D0E0D92DD00488CD4 /* SideWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 173858990E0D92DD00488CD4 /* SideWindowController.m */; };
173A43A10F3FD26500676A7B /* ToolTipWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 173A43A00F3FD26500676A7B /* ToolTipWindow.m */; };
1752C36C0F59E00100F85F28 /* PlaybackButtons.m in Sources */ = {isa = PBXBuildFile; fileRef = 1752C36B0F59E00100F85F28 /* PlaybackButtons.m */; };
1755E1F90BA0D2B600CA3560 /* PlaylistLoader.m in Sources */ = {isa = PBXBuildFile; fileRef = 1755E1F70BA0D2B600CA3560 /* PlaylistLoader.m */; };
@ -60,6 +58,8 @@
17818A990C0B27AC001C4916 /* shn.icns in Resources */ = {isa = PBXBuildFile; fileRef = 17818A920C0B27AC001C4916 /* shn.icns */; };
17818A9A0C0B27AC001C4916 /* wav.icns in Resources */ = {isa = PBXBuildFile; fileRef = 17818A930C0B27AC001C4916 /* wav.icns */; };
17818A9B0C0B27AC001C4916 /* wv.icns in Resources */ = {isa = PBXBuildFile; fileRef = 17818A940C0B27AC001C4916 /* wv.icns */; };
1784560F0F631E24007E8021 /* FileTreeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1784560E0F631E24007E8021 /* FileTreeViewController.m */; };
178456120F631E31007E8021 /* SideViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 178456110F631E31007E8021 /* SideViewController.m */; };
178BAB990CD4E1B700B33D47 /* GCOneShotEffectTimer.m in Sources */ = {isa = PBXBuildFile; fileRef = 178BAB940CD4E1B700B33D47 /* GCOneShotEffectTimer.m */; };
178BAB9A0CD4E1B700B33D47 /* GCWindowMenu.m in Sources */ = {isa = PBXBuildFile; fileRef = 178BAB960CD4E1B700B33D47 /* GCWindowMenu.m */; };
178BAB9B0CD4E1B700B33D47 /* PopupButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 178BAB980CD4E1B700B33D47 /* PopupButton.m */; };
@ -67,15 +67,13 @@
1791005F0CB44D6D0070BC5C /* Cog.scriptTerminology in Resources */ = {isa = PBXBuildFile; fileRef = 1791005D0CB44D6D0070BC5C /* Cog.scriptTerminology */; };
1791FF900CB43A2C0070BC5C /* MediaKeysApplication.m in Sources */ = {isa = PBXBuildFile; fileRef = 1791FF8E0CB43A2C0070BC5C /* MediaKeysApplication.m */; };
179790E10C087AB7001D6996 /* OpenURLPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = 179790DF0C087AB7001D6996 /* OpenURLPanel.m */; };
179D02EE0E0CB0B00064A77A /* SideView.m in Sources */ = {isa = PBXBuildFile; fileRef = 179D02EB0E0CB0B00064A77A /* SideView.m */; };
179D02EF0E0CB0B00064A77A /* SideViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 179D02ED0E0CB0B00064A77A /* SideViewController.m */; };
179D031E0E0CB2500064A77A /* ContainedNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 179D03090E0CB2500064A77A /* ContainedNode.m */; };
179D031F0E0CB2500064A77A /* ContainerNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 179D030B0E0CB2500064A77A /* ContainerNode.m */; };
179D03200E0CB2500064A77A /* DirectoryNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 179D030D0E0CB2500064A77A /* DirectoryNode.m */; };
179D03210E0CB2500064A77A /* FileIconCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 179D030F0E0CB2500064A77A /* FileIconCell.m */; };
179D03220E0CB2500064A77A /* FileNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 179D03110E0CB2500064A77A /* FileNode.m */; };
179D03230E0CB2500064A77A /* FileTreeDataSource.m in Sources */ = {isa = PBXBuildFile; fileRef = 179D03130E0CB2500064A77A /* FileTreeDataSource.m */; };
179D03240E0CB2500064A77A /* FileTreeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 179D03150E0CB2500064A77A /* FileTreeViewController.m */; };
179D03240E0CB2500064A77A /* FileTreeController.m in Sources */ = {isa = PBXBuildFile; fileRef = 179D03150E0CB2500064A77A /* FileTreeController.m */; };
179D03260E0CB2500064A77A /* PathNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 179D03190E0CB2500064A77A /* PathNode.m */; };
179D03270E0CB2500064A77A /* PathWatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 179D031B0E0CB2500064A77A /* PathWatcher.m */; };
179D03280E0CB2500064A77A /* SmartFolderNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 179D031D0E0CB2500064A77A /* SmartFolderNode.m */; };
@ -551,10 +549,6 @@
17342ABE0D5FD36400E8D854 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/OpenURLPanel.xib; sourceTree = "<group>"; };
173855FD0E0CC81F00488CD4 /* FileTreeOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FileTreeOutlineView.h; path = FileTree/FileTreeOutlineView.h; sourceTree = "<group>"; };
173855FE0E0CC81F00488CD4 /* FileTreeOutlineView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = FileTreeOutlineView.m; path = FileTree/FileTreeOutlineView.m; sourceTree = "<group>"; };
173858940E0D92DD00488CD4 /* SideBarController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SideBarController.h; path = SideView/SideBarController.h; sourceTree = "<group>"; };
173858950E0D92DD00488CD4 /* SideBarController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SideBarController.m; path = SideView/SideBarController.m; sourceTree = "<group>"; };
173858980E0D92DD00488CD4 /* SideWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SideWindowController.h; path = SideView/SideWindowController.h; sourceTree = "<group>"; };
173858990E0D92DD00488CD4 /* SideWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SideWindowController.m; path = SideView/SideWindowController.m; sourceTree = "<group>"; };
173A439F0F3FD26500676A7B /* ToolTipWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ToolTipWindow.h; path = ToolTip/ToolTipWindow.h; sourceTree = "<group>"; };
173A43A00F3FD26500676A7B /* ToolTipWindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ToolTipWindow.m; path = ToolTip/ToolTipWindow.m; sourceTree = "<group>"; };
1752C36A0F59E00100F85F28 /* PlaybackButtons.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PlaybackButtons.h; path = Window/PlaybackButtons.h; sourceTree = "<group>"; };
@ -600,6 +594,10 @@
17818A920C0B27AC001C4916 /* shn.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = shn.icns; sourceTree = "<group>"; };
17818A930C0B27AC001C4916 /* wav.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = wav.icns; sourceTree = "<group>"; };
17818A940C0B27AC001C4916 /* wv.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = wv.icns; sourceTree = "<group>"; };
1784560D0F631E24007E8021 /* FileTreeViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FileTreeViewController.h; path = FileTree/FileTreeViewController.h; sourceTree = "<group>"; };
1784560E0F631E24007E8021 /* FileTreeViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = FileTreeViewController.m; path = FileTree/FileTreeViewController.m; sourceTree = "<group>"; };
178456100F631E31007E8021 /* SideViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SideViewController.h; sourceTree = "<group>"; };
178456110F631E31007E8021 /* SideViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SideViewController.m; sourceTree = "<group>"; };
178BAB930CD4E1B700B33D47 /* GCOneShotEffectTimer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GCOneShotEffectTimer.h; sourceTree = "<group>"; };
178BAB940CD4E1B700B33D47 /* GCOneShotEffectTimer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GCOneShotEffectTimer.m; sourceTree = "<group>"; };
178BAB950CD4E1B700B33D47 /* GCWindowMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GCWindowMenu.h; sourceTree = "<group>"; };
@ -612,10 +610,6 @@
1791FF8E0CB43A2C0070BC5C /* MediaKeysApplication.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MediaKeysApplication.m; sourceTree = "<group>"; };
179790DE0C087AB7001D6996 /* OpenURLPanel.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = OpenURLPanel.h; sourceTree = "<group>"; };
179790DF0C087AB7001D6996 /* OpenURLPanel.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = OpenURLPanel.m; sourceTree = "<group>"; };
179D02EA0E0CB0B00064A77A /* SideView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SideView.h; path = SideView/SideView.h; sourceTree = "<group>"; };
179D02EB0E0CB0B00064A77A /* SideView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SideView.m; path = SideView/SideView.m; sourceTree = "<group>"; };
179D02EC0E0CB0B00064A77A /* SideViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SideViewController.h; path = SideView/SideViewController.h; sourceTree = "<group>"; };
179D02ED0E0CB0B00064A77A /* SideViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SideViewController.m; path = SideView/SideViewController.m; sourceTree = "<group>"; };
179D03080E0CB2500064A77A /* ContainedNode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ContainedNode.h; path = FileTree/ContainedNode.h; sourceTree = "<group>"; };
179D03090E0CB2500064A77A /* ContainedNode.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ContainedNode.m; path = FileTree/ContainedNode.m; sourceTree = "<group>"; };
179D030A0E0CB2500064A77A /* ContainerNode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ContainerNode.h; path = FileTree/ContainerNode.h; sourceTree = "<group>"; };
@ -628,8 +622,8 @@
179D03110E0CB2500064A77A /* FileNode.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = FileNode.m; path = FileTree/FileNode.m; sourceTree = "<group>"; };
179D03120E0CB2500064A77A /* FileTreeDataSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FileTreeDataSource.h; path = FileTree/FileTreeDataSource.h; sourceTree = "<group>"; };
179D03130E0CB2500064A77A /* FileTreeDataSource.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = FileTreeDataSource.m; path = FileTree/FileTreeDataSource.m; sourceTree = "<group>"; };
179D03140E0CB2500064A77A /* FileTreeViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FileTreeViewController.h; path = FileTree/FileTreeViewController.h; sourceTree = "<group>"; };
179D03150E0CB2500064A77A /* FileTreeViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = FileTreeViewController.m; path = FileTree/FileTreeViewController.m; sourceTree = "<group>"; };
179D03140E0CB2500064A77A /* FileTreeController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FileTreeController.h; path = FileTree/FileTreeController.h; sourceTree = "<group>"; };
179D03150E0CB2500064A77A /* FileTreeController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = FileTreeController.m; path = FileTree/FileTreeController.m; sourceTree = "<group>"; };
179D03180E0CB2500064A77A /* PathNode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PathNode.h; path = FileTree/PathNode.h; sourceTree = "<group>"; };
179D03190E0CB2500064A77A /* PathNode.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = PathNode.m; path = FileTree/PathNode.m; sourceTree = "<group>"; };
179D031A0E0CB2500064A77A /* PathWatcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PathWatcher.h; path = FileTree/PathWatcher.h; sourceTree = "<group>"; };
@ -792,7 +786,6 @@
17E0D5D20F520E75005B6FED /* Window */,
8E75752A09F31D5A0080F1EE /* Playlist */,
8E07AAEA0AAC90DC00A4B32F /* Preferences */,
179DFCDF0E0C5A130064A77A /* SideView */,
17DDF6400E0CB6F100A2E4AD /* FileTree */,
8E75752309F31D5A0080F1EE /* Feedback */,
569C52C50D5F2BD500BDBDC9 /* Spotlight */,
@ -913,12 +906,14 @@
177EC0110B8BC2CF0000BC8C /* Utils */ = {
isa = PBXGroup;
children = (
172A12A70F59AF8A0078EF0C /* NSString+CogSort.h */,
172A12A80F59AF8A0078EF0C /* NSString+CogSort.m */,
177EC01A0B8BC2CF0000BC8C /* TrackingCell.h */,
177EC01B0B8BC2CF0000BC8C /* TrackingCell.m */,
177EC01C0B8BC2CF0000BC8C /* TrackingSlider.h */,
177EC01D0B8BC2CF0000BC8C /* TrackingSlider.m */,
178456100F631E31007E8021 /* SideViewController.h */,
178456110F631E31007E8021 /* SideViewController.m */,
172A12A70F59AF8A0078EF0C /* NSString+CogSort.h */,
172A12A80F59AF8A0078EF0C /* NSString+CogSort.m */,
8E9A30130BA792DC0091081B /* NSFileHandle+CreateFile.h */,
8E9A30140BA792DC0091081B /* NSFileHandle+CreateFile.m */,
07E18DF10D62B38400BB0E11 /* NSArray+ShuffleUtils.h */,
@ -976,21 +971,6 @@
path = OpenURLPanel;
sourceTree = "<group>";
};
179DFCDF0E0C5A130064A77A /* SideView */ = {
isa = PBXGroup;
children = (
173858940E0D92DD00488CD4 /* SideBarController.h */,
173858950E0D92DD00488CD4 /* SideBarController.m */,
173858980E0D92DD00488CD4 /* SideWindowController.h */,
173858990E0D92DD00488CD4 /* SideWindowController.m */,
179D02EC0E0CB0B00064A77A /* SideViewController.h */,
179D02ED0E0CB0B00064A77A /* SideViewController.m */,
179D02EA0E0CB0B00064A77A /* SideView.h */,
179D02EB0E0CB0B00064A77A /* SideView.m */,
);
name = SideView;
sourceTree = "<group>";
};
17B619FF0B909ED400BC003F /* PlugIns */ = {
isa = PBXGroup;
children = (
@ -1140,10 +1120,12 @@
17DDF6400E0CB6F100A2E4AD /* FileTree */ = {
isa = PBXGroup;
children = (
1784560D0F631E24007E8021 /* FileTreeViewController.h */,
1784560E0F631E24007E8021 /* FileTreeViewController.m */,
179D03140E0CB2500064A77A /* FileTreeController.h */,
179D03150E0CB2500064A77A /* FileTreeController.m */,
173855FD0E0CC81F00488CD4 /* FileTreeOutlineView.h */,
173855FE0E0CC81F00488CD4 /* FileTreeOutlineView.m */,
179D03140E0CB2500064A77A /* FileTreeViewController.h */,
179D03150E0CB2500064A77A /* FileTreeViewController.m */,
179D03120E0CB2500064A77A /* FileTreeDataSource.h */,
179D03130E0CB2500064A77A /* FileTreeDataSource.m */,
179D03080E0CB2500064A77A /* ContainedNode.h */,
@ -1868,21 +1850,17 @@
17B7DD7D0D7CD10D00320E70 /* BlankZeroFormatter.m in Sources */,
17249F0F0D82E17700F33392 /* ToggleQueueTitleTransformer.m in Sources */,
17A140E90D88B954004852F9 /* FilePlaylistEntry.m in Sources */,
179D02EE0E0CB0B00064A77A /* SideView.m in Sources */,
179D02EF0E0CB0B00064A77A /* SideViewController.m in Sources */,
179D031E0E0CB2500064A77A /* ContainedNode.m in Sources */,
179D031F0E0CB2500064A77A /* ContainerNode.m in Sources */,
179D03200E0CB2500064A77A /* DirectoryNode.m in Sources */,
179D03210E0CB2500064A77A /* FileIconCell.m in Sources */,
179D03220E0CB2500064A77A /* FileNode.m in Sources */,
179D03230E0CB2500064A77A /* FileTreeDataSource.m in Sources */,
179D03240E0CB2500064A77A /* FileTreeViewController.m in Sources */,
179D03240E0CB2500064A77A /* FileTreeController.m in Sources */,
179D03260E0CB2500064A77A /* PathNode.m in Sources */,
179D03270E0CB2500064A77A /* PathWatcher.m in Sources */,
179D03280E0CB2500064A77A /* SmartFolderNode.m in Sources */,
173855FF0E0CC81F00488CD4 /* FileTreeOutlineView.m in Sources */,
1738589B0E0D92DD00488CD4 /* SideBarController.m in Sources */,
1738589D0E0D92DD00488CD4 /* SideWindowController.m in Sources */,
07D971E60ED1DAA800E7602E /* TagEditorController.m in Sources */,
173A43A10F3FD26500676A7B /* ToolTipWindow.m in Sources */,
17E0D5E90F520F02005B6FED /* DualWindow.m in Sources */,
@ -1900,6 +1878,8 @@
1752C36C0F59E00100F85F28 /* PlaybackButtons.m in Sources */,
171EFE8C0F59FEAE000ADC42 /* DockIconController.m in Sources */,
17F6C8070F603701000D9DA9 /* PlaybackEventController.m in Sources */,
1784560F0F631E24007E8021 /* FileTreeViewController.m in Sources */,
178456120F631E31007E8021 /* SideViewController.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};

View File

@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.02">
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.03">
<data>
<int key="IBDocument.SystemTarget">1050</int>
<string key="IBDocument.SystemVersion">9D34</string>
<string key="IBDocument.InterfaceBuilderVersion">667</string>
<string key="IBDocument.AppKitVersion">949.33</string>
<string key="IBDocument.HIToolboxVersion">352.00</string>
<string key="IBDocument.SystemVersion">9G55</string>
<string key="IBDocument.InterfaceBuilderVersion">677</string>
<string key="IBDocument.AppKitVersion">949.43</string>
<string key="IBDocument.HIToolboxVersion">353.00</string>
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
<bool key="EncodedWithXMLCoder">YES</bool>
<integer value="55"/>
@ -14,10 +14,19 @@
<bool key="EncodedWithXMLCoder">YES</bool>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
</object>
<object class="NSMutableDictionary" key="IBDocument.Metadata">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
</object>
<object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSCustomObject" id="1001">
<string key="NSClassName">SideView</string>
<string key="NSClassName">FileTreeViewController</string>
</object>
<object class="NSCustomObject" id="1003">
<string key="NSClassName">FirstResponder</string>
@ -222,7 +231,7 @@
<string key="NSClassName">NSView</string>
</object>
<object class="NSCustomObject" id="787785768">
<string key="NSClassName">FileTreeViewController</string>
<string key="NSClassName">FileTreeController</string>
</object>
</object>
<object class="IBObjectContainer" key="IBDocument.Objects">
@ -244,14 +253,6 @@
</object>
<int key="connectionID">34</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">view</string>
<reference key="source" ref="1001"/>
<reference key="destination" ref="904413865"/>
</object>
<int key="connectionID">72</int>
</object>
<object class="IBConnectionRecord">
<object class="IBBindingConnection" key="connection">
<string key="label">rowHeight: values.fontSize</string>
@ -332,14 +333,6 @@
</object>
<int key="connectionID">95</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">controller</string>
<reference key="source" ref="787785768"/>
<reference key="destination" ref="1001"/>
</object>
<int key="connectionID">96</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">delegate</string>
@ -348,21 +341,37 @@
</object>
<int key="connectionID">98</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">view</string>
<reference key="source" ref="1001"/>
<reference key="destination" ref="904413865"/>
</object>
<int key="connectionID">103</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">nextKeyView</string>
<reference key="source" ref="801512230"/>
<reference key="destination" ref="299841028"/>
<reference key="destination" ref="357233152"/>
</object>
<int key="connectionID">99</int>
<int key="connectionID">104</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">firstResponder</string>
<reference key="source" ref="1001"/>
<reference key="destination" ref="357233152"/>
<reference key="destination" ref="801512230"/>
</object>
<int key="connectionID">102</int>
<int key="connectionID">105</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">controller</string>
<reference key="source" ref="787785768"/>
<reference key="destination" ref="1001"/>
</object>
<int key="connectionID">106</int>
</object>
</object>
<object class="IBMutableOrderedSet" key="objectRecords">
@ -493,6 +502,7 @@
<string>-1.IBPluginDependency</string>
<string>-2.IBPluginDependency</string>
<string>-3.IBPluginDependency</string>
<string>27.IBPluginDependency</string>
<string>31.IBPluginDependency</string>
<string>55.IBEditorWindowLastContentRect</string>
<string>55.IBPluginDependency</string>
@ -522,6 +532,7 @@
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>{{554, 263}, {307, 399}}</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
@ -565,11 +576,31 @@
</object>
</object>
<nil key="sourceID"/>
<int key="maxID">102</int>
<int key="maxID">106</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="IBPartialClassDescription">
<string key="className">DNDArrayController</string>
<string key="superclassName">NSArrayController</string>
<object class="NSMutableDictionary" key="outlets">
<string key="NS.key.0">tableView</string>
<string key="NS.object.0">NSTableView</string>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">Playlist/DNDArrayController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">EntriesController</string>
<string key="superclassName">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">Playlist/EntriesController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">FileIconCell</string>
<string key="superclassName">ImageTextCell</string>
@ -578,6 +609,31 @@
<string key="minorKey">FileTree/FileIconCell.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">FileTreeController</string>
<string key="superclassName">NSObject</string>
<object class="NSMutableDictionary" key="actions">
<string key="NS.key.0">addToPlaylist:</string>
<string key="NS.object.0">id</string>
</object>
<object class="NSMutableDictionary" key="outlets">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>controller</string>
<string>outlineView</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>SideViewController</string>
<string>NSOutlineView</string>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">FileTree/FileTreeController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">FileTreeDataSource</string>
<string key="superclassName">NSObject</string>
@ -617,23 +673,10 @@
</object>
<object class="IBPartialClassDescription">
<string key="className">FileTreeViewController</string>
<string key="superclassName">NSObject</string>
<object class="NSMutableDictionary" key="actions">
<string key="NS.key.0">addToPlaylist:</string>
<string key="NS.object.0">id</string>
</object>
<string key="superclassName">SideViewController</string>
<object class="NSMutableDictionary" key="outlets">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>controller</string>
<string>outlineView</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>SideView</string>
<string>NSOutlineView</string>
</object>
<string key="NS.key.0">playlistLoader</string>
<string key="NS.object.0">PlaylistLoader</string>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
@ -682,24 +725,249 @@
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">SideView</string>
<string key="className">PlaybackController</string>
<string key="superclassName">NSObject</string>
<object class="NSMutableDictionary" key="actions">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>changeVolume:</string>
<string>eventSeekBackward:</string>
<string>eventSeekForward:</string>
<string>fade:</string>
<string>next:</string>
<string>pause:</string>
<string>pauseResume:</string>
<string>play:</string>
<string>playPauseResume:</string>
<string>prev:</string>
<string>resume:</string>
<string>seek:</string>
<string>skipToNextAlbum:</string>
<string>skipToPreviousAlbum:</string>
<string>stop:</string>
<string>volumeDown:</string>
<string>volumeUp:</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
</object>
</object>
<object class="NSMutableDictionary" key="outlets">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>outputDevices</string>
<string>playlistController</string>
<string>playlistView</string>
<string>volumeSlider</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>NSArrayController</string>
<string>PlaylistController</string>
<string>PlaylistView</string>
<string>NSSlider</string>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">Application/PlaybackController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">PlaylistController</string>
<string key="superclassName">DNDArrayController</string>
<object class="NSMutableDictionary" key="actions">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>clear:</string>
<string>clearFilterPredicate:</string>
<string>emptyQueueList:</string>
<string>searchByAlbum:</string>
<string>searchByArtist:</string>
<string>showEntryInFinder:</string>
<string>stopAfterCurrent:</string>
<string>toggleQueued:</string>
<string>toggleRepeat:</string>
<string>toggleShuffle:</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
</object>
</object>
<object class="NSMutableDictionary" key="outlets">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>entriesController</string>
<string>playbackController</string>
<string>playlistLoader</string>
<string>spotlightWindowController</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>EntriesController</string>
<string>PlaybackController</string>
<string>PlaylistLoader</string>
<string>SpotlightWindowController</string>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">Playlist/PlaylistController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">PlaylistLoader</string>
<string key="superclassName">NSObject</string>
<object class="NSMutableDictionary" key="outlets">
<string key="NS.key.0">playlistController</string>
<string key="NS.object.0">PlaylistController</string>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">Playlist/PlaylistLoader.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">PlaylistView</string>
<string key="superclassName">NSTableView</string>
<object class="NSMutableDictionary" key="actions">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>scrollToCurrentEntry:</string>
<string>shufflePlaylist:</string>
<string>sortByPath:</string>
<string>toggleColumn:</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
</object>
</object>
<object class="NSMutableDictionary" key="outlets">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>playbackController</string>
<string>playlistController</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>PlaybackController</string>
<string>PlaylistController</string>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">Playlist/PlaylistView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">SideViewController</string>
<string key="superclassName">NSViewController</string>
<object class="NSMutableDictionary" key="actions">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>toggleSideView:</string>
<string>toggleVertical:</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>id</string>
<string>id</string>
</object>
</object>
<object class="NSMutableDictionary" key="outlets">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>firstResponder</string>
<string>view</string>
<string>mainView</string>
<string>splitView</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>NSResponder</string>
<string>NSView</string>
<string>NSView</string>
<string>NSSplitView</string>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">SideView/SideView.h</string>
<string key="minorKey">Utils/SideViewController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">SpotlightWindowController</string>
<string key="superclassName">NSWindowController</string>
<object class="NSMutableDictionary" key="actions">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>addToPlaylist:</string>
<string>toggleWindow:</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>id</string>
<string>id</string>
</object>
</object>
<object class="NSMutableDictionary" key="outlets">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>pathControl</string>
<string>playlistController</string>
<string>playlistLoader</string>
<string>searchField</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>NSPathControl</string>
<string>NSArrayController</string>
<string>PlaylistLoader</string>
<string>NSSearchField</string>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">Spotlight/SpotlightWindowController.h</string>
</object>
</object>
</object>

View File

@ -9,8 +9,8 @@
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
<bool key="EncodedWithXMLCoder">YES</bool>
<integer value="21"/>
<integer value="882"/>
<integer value="2234"/>
<integer value="1849"/>
</object>
<object class="NSArray" key="IBDocument.PluginDependencies">
<bool key="EncodedWithXMLCoder">YES</bool>
@ -2089,7 +2089,7 @@ OQA</bytes>
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMenuItem" id="593372690">
<reference key="NSMenu" ref="130084864"/>
<string key="NSTitle">Show Info Drawer</string>
<string key="NSTitle">Show Info Inspector</string>
<string key="NSKeyEquiv">i</string>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
@ -2105,6 +2105,15 @@ OQA</bytes>
<reference key="NSOnImage" ref="80764106"/>
<reference key="NSMixedImage" ref="510491962"/>
</object>
<object class="NSMenuItem" id="871728494">
<reference key="NSMenu" ref="130084864"/>
<string key="NSTitle">Show File Tree</string>
<string key="NSKeyEquiv">d</string>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="80764106"/>
<reference key="NSMixedImage" ref="510491962"/>
</object>
<object class="NSMenuItem" id="529654213">
<reference key="NSMenu" ref="130084864"/>
<bool key="NSIsDisabled">YES</bool>
@ -2116,54 +2125,14 @@ OQA</bytes>
<reference key="NSOnImage" ref="80764106"/>
<reference key="NSMixedImage" ref="510491962"/>
</object>
<object class="NSMenuItem" id="702725944">
<reference key="NSMenu" ref="130084864"/>
<string key="NSTitle">Sidebar</string>
<string key="NSKeyEquiv"/>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="80764106"/>
<reference key="NSMixedImage" ref="510491962"/>
<string key="NSAction">submenuAction:</string>
<object class="NSMenu" key="NSSubmenu" id="188765993">
<string key="NSTitle">Sidebar</string>
<object class="NSMutableArray" key="NSMenuItems">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
<bool key="NSNoAutoenable">YES</bool>
</object>
</object>
<object class="NSMenuItem" id="157922357">
<reference key="NSMenu" ref="130084864"/>
<string key="NSTitle">Window</string>
<string key="NSKeyEquiv"/>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="80764106"/>
<reference key="NSMixedImage" ref="510491962"/>
<string key="NSAction">submenuAction:</string>
<object class="NSMenu" key="NSSubmenu" id="121209843">
<string key="NSTitle">Window</string>
<object class="NSMutableArray" key="NSMenuItems">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
</object>
</object>
<object class="NSMenuItem" id="665562447">
<reference key="NSMenu" ref="130084864"/>
<string key="NSTitle">Toggle Sidebar Orientation</string>
<string key="NSTitle">Toggle File Tree Orientation</string>
<string key="NSKeyEquiv"/>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="80764106"/>
<reference key="NSMixedImage" ref="510491962"/>
</object>
<object class="NSMenuItem" id="268734593">
<reference key="NSMenu" ref="130084864"/>
<string key="NSTitle">Show/Hide Sidebar</string>
<string key="NSKeyEquiv">d</string>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="80764106"/>
<reference key="NSMixedImage" ref="510491962"/>
</object>
<object class="NSMenuItem" id="775965595">
<reference key="NSMenu" ref="130084864"/>
<bool key="NSIsDisabled">YES</bool>
@ -2174,25 +2143,6 @@ OQA</bytes>
<reference key="NSOnImage" ref="80764106"/>
<reference key="NSMixedImage" ref="510491962"/>
</object>
<object class="NSMenuItem" id="261953318">
<reference key="NSMenu" ref="130084864"/>
<bool key="NSIsDisabled">YES</bool>
<bool key="NSIsSeparator">YES</bool>
<string key="NSTitle"/>
<string key="NSKeyEquiv"/>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="80764106"/>
<reference key="NSMixedImage" ref="510491962"/>
</object>
<object class="NSMenuItem" id="517860479">
<reference key="NSMenu" ref="130084864"/>
<string key="NSTitle">Hide Playlist</string>
<string key="NSKeyEquiv"/>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="80764106"/>
<reference key="NSMixedImage" ref="510491962"/>
</object>
<object class="NSMenuItem" id="540406405">
<reference key="NSMenu" ref="130084864"/>
<string key="NSTitle">Customize Toolbar...</string>
@ -3797,10 +3747,7 @@ OQA</bytes>
<bool key="NSFilterRestrictsInsertion">YES</bool>
</object>
<object class="NSCustomObject" id="366497202">
<string key="NSClassName">SideBarController</string>
</object>
<object class="NSCustomObject" id="597913418">
<string key="NSClassName">SideWindowController</string>
<string key="NSClassName">FileTreeViewController</string>
</object>
<object class="NSCustomObject" id="743678208">
<string key="NSClassName">TagEditorController</string>
@ -6433,22 +6380,6 @@ OQA</bytes>
</object>
<int key="connectionID">2121</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">sideViewMenu</string>
<reference key="source" ref="597913418"/>
<reference key="destination" ref="121209843"/>
</object>
<int key="connectionID">2174</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">sideViewMenu</string>
<reference key="source" ref="366497202"/>
<reference key="destination" ref="188765993"/>
</object>
<int key="connectionID">2175</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">toggleVertical:</string>
@ -6457,22 +6388,6 @@ OQA</bytes>
</object>
<int key="connectionID">2176</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">toggleSideBar:</string>
<reference key="source" ref="366497202"/>
<reference key="destination" ref="268734593"/>
</object>
<int key="connectionID">2177</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">playlistLoader</string>
<reference key="source" ref="597913418"/>
<reference key="destination" ref="362908833"/>
</object>
<int key="connectionID">2178</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">playlistLoader</string>
@ -6481,14 +6396,6 @@ OQA</bytes>
</object>
<int key="connectionID">2179</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">playlistView</string>
<reference key="source" ref="366497202"/>
<reference key="destination" ref="381323260"/>
</object>
<int key="connectionID">2180</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">splitView</string>
@ -6537,30 +6444,6 @@ OQA</bytes>
</object>
<int key="connectionID">2220</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">playbackController</string>
<reference key="source" ref="805617126"/>
<reference key="destination" ref="936098491"/>
</object>
<int key="connectionID">2221</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">mainToolbar</string>
<reference key="source" ref="459383411"/>
<reference key="destination" ref="420567122"/>
</object>
<int key="connectionID">2230</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">miniToolbar</string>
<reference key="source" ref="459383411"/>
<reference key="destination" ref="387608983"/>
</object>
<int key="connectionID">2231</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">otherWindow</string>
@ -6850,14 +6733,6 @@ OQA</bytes>
</object>
<int key="connectionID">2404</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">playbackController</string>
<reference key="source" ref="424025370"/>
<reference key="destination" ref="936098491"/>
</object>
<int key="connectionID">2406</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">playlistLoader</string>
@ -6926,6 +6801,22 @@ OQA</bytes>
</object>
<int key="connectionID">2415</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">toggleSideView:</string>
<reference key="source" ref="366497202"/>
<reference key="destination" ref="871728494"/>
</object>
<int key="connectionID">2419</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">mainView</string>
<reference key="source" ref="366497202"/>
<reference key="destination" ref="381323260"/>
</object>
<int key="connectionID">2421</int>
</object>
</object>
<object class="IBMutableOrderedSet" key="objectRecords">
<object class="NSArray" key="orderedObjects">
@ -8177,7 +8068,6 @@ OQA</bytes>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="529654213"/>
<reference ref="517860479"/>
<reference ref="453870370"/>
<reference ref="799423223"/>
<reference ref="157940034"/>
@ -8185,11 +8075,8 @@ OQA</bytes>
<reference ref="1070603681"/>
<reference ref="593372690"/>
<reference ref="775965595"/>
<reference ref="702725944"/>
<reference ref="665562447"/>
<reference ref="268734593"/>
<reference ref="261953318"/>
<reference ref="157922357"/>
<reference ref="871728494"/>
</object>
<reference key="parent" ref="313099820"/>
</object>
@ -8198,11 +8085,6 @@ OQA</bytes>
<reference key="object" ref="529654213"/>
<reference key="parent" ref="130084864"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">1855</int>
<reference key="object" ref="517860479"/>
<reference key="parent" ref="130084864"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">1856</int>
<reference key="object" ref="540406405"/>
@ -8559,65 +8441,16 @@ OQA</bytes>
<reference key="object" ref="775965595"/>
<reference key="parent" ref="130084864"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2156</int>
<reference key="object" ref="702725944"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="188765993"/>
</object>
<reference key="parent" ref="130084864"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2157</int>
<reference key="object" ref="188765993"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
<reference key="parent" ref="702725944"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2160</int>
<reference key="object" ref="665562447"/>
<reference key="parent" ref="130084864"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2165</int>
<reference key="object" ref="268734593"/>
<reference key="parent" ref="130084864"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2168</int>
<reference key="object" ref="261953318"/>
<reference key="parent" ref="130084864"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2169</int>
<reference key="object" ref="157922357"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="121209843"/>
</object>
<reference key="parent" ref="130084864"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2170</int>
<reference key="object" ref="121209843"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
<reference key="parent" ref="157922357"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2172</int>
<reference key="object" ref="366497202"/>
<reference key="parent" ref="293114310"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2173</int>
<reference key="object" ref="597913418"/>
<reference key="parent" ref="293114310"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2187</int>
<reference key="object" ref="168658818"/>
@ -9248,6 +9081,11 @@ OQA</bytes>
<reference key="object" ref="424025370"/>
<reference key="parent" ref="293114310"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2417</int>
<reference key="object" ref="871728494"/>
<reference key="parent" ref="130084864"/>
</object>
</object>
</object>
<object class="NSMutableDictionary" key="flattenedProperties">
@ -9558,7 +9396,6 @@ OQA</bytes>
<string>1851.ImportedFromIB2</string>
<string>1853.IBPluginDependency</string>
<string>1854.IBPluginDependency</string>
<string>1855.IBPluginDependency</string>
<string>1856.IBPluginDependency</string>
<string>1856.ImportedFromIB2</string>
<string>1857.IBPluginDependency</string>
@ -9612,17 +9449,8 @@ OQA</bytes>
<string>21.windowTemplate.maxSize</string>
<string>2123.IBPluginDependency</string>
<string>2155.IBPluginDependency</string>
<string>2156.IBPluginDependency</string>
<string>2157.IBEditorWindowLastContentRect</string>
<string>2157.IBPluginDependency</string>
<string>2160.IBPluginDependency</string>
<string>2165.IBPluginDependency</string>
<string>2168.IBPluginDependency</string>
<string>2169.IBPluginDependency</string>
<string>2170.IBEditorWindowLastContentRect</string>
<string>2170.IBPluginDependency</string>
<string>2172.IBPluginDependency</string>
<string>2173.IBPluginDependency</string>
<string>218.CustomClassName</string>
<string>218.IBPluginDependency</string>
<string>218.ImportedFromIB2</string>
@ -9712,6 +9540,7 @@ OQA</bytes>
<string>24.editorWindowContentRectSynchronizationRect</string>
<string>2403.IBPluginDependency</string>
<string>2405.IBPluginDependency</string>
<string>2417.IBPluginDependency</string>
<string>268.IBEditorWindowLastContentRect</string>
<string>268.IBWindowTemplateEditedContentRect</string>
<string>268.ImportedFromIB2</string>
@ -10143,7 +9972,7 @@ OQA</bytes>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>{{282, 543}, {252, 183}}</string>
<string>{{282, 552}, {252, 183}}</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="9"/>
<string>{{213, 653}, {252, 183}}</string>
@ -10175,7 +10004,7 @@ OQA</bytes>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>{{326, 483}, {277, 243}}</string>
<string>{{721, 674}, {285, 173}}</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>{{257, 573}, {237, 163}}</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
@ -10183,7 +10012,6 @@ OQA</bytes>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
@ -10227,8 +10055,8 @@ OQA</bytes>
<reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="9"/>
<string>{{334, 92}, {691, 397}}</string>
<string>{{334, 92}, {691, 397}}</string>
<string>{{347, 94}, {691, 397}}</string>
<string>{{347, 94}, {691, 397}}</string>
<reference ref="9"/>
<reference ref="6"/>
<string>{{25, 14}, {683, 396}}</string>
@ -10237,15 +10065,6 @@ OQA</bytes>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>{{603, 670}, {64, 6}}</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>{{619, 900}, {64, 6}}</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>PlaylistController</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
@ -10330,12 +10149,13 @@ OQA</bytes>
<reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="9"/>
<string>{{511, 623}, {197, 103}}</string>
<string>{{511, 632}, {197, 103}}</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="9"/>
<string>{{442, 733}, {197, 103}}</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>{{314, 416}, {480, 376}}</string>
<string>{{314, 416}, {480, 376}}</string>
<reference ref="9"/>
@ -10381,7 +10201,7 @@ OQA</bytes>
<reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="9"/>
<string>{{181, 735}, {462, 20}}</string>
<string>{{576, 847}, {462, 20}}</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="9"/>
<string>{{112, 736}, {462, 20}}</string>
@ -10521,7 +10341,7 @@ OQA</bytes>
</object>
</object>
<nil key="sourceID"/>
<int key="maxID">2415</int>
<int key="maxID">2421</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
@ -10764,6 +10584,18 @@ OQA</bytes>
<string key="minorKey"/>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">FileTreeViewController</string>
<string key="superclassName">SideViewController</string>
<object class="NSMutableDictionary" key="outlets">
<string key="NS.key.0">playlistLoader</string>
<string key="NS.object.0">PlaylistLoader</string>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">FileTree/FileTreeViewController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">FirstResponder</string>
<string key="superclassName">NSObject</string>
@ -11137,13 +10969,13 @@ OQA</bytes>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">SideBarController</string>
<string key="superclassName">SideViewController</string>
<string key="className">SideViewController</string>
<string key="superclassName">NSViewController</string>
<object class="NSMutableDictionary" key="actions">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>toggleSideBar:</string>
<string>toggleSideView:</string>
<string>toggleVertical:</string>
</object>
<object class="NSMutableArray" key="dict.values">
@ -11156,47 +10988,20 @@ OQA</bytes>
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>playlistView</string>
<string>firstResponder</string>
<string>mainView</string>
<string>splitView</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>NSView</string>
<string>NSView</string>
<string>NSSplitView</string>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">SideView/SideBarController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">SideViewController</string>
<string key="superclassName">NSObject</string>
<object class="NSMutableDictionary" key="outlets">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>playlistLoader</string>
<string>sideViewMenu</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>PlaylistLoader</string>
<string>NSMenu</string>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">SideView/SideViewController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">SideWindowController</string>
<string key="superclassName">SideViewController</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">SideView/SideWindowController.h</string>
<string key="minorKey">Utils/SideViewController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">

View File

@ -0,0 +1,19 @@
//
// FileTreeController.h
// Cog
//
// Created by Vincent Spader on 2/17/08.
// Copyright 2008 __MyCompanyName__. All rights reserved.
//
#import <Cocoa/Cocoa.h>
@class SideViewController;
@interface FileTreeController : NSObject {
IBOutlet SideViewController *controller;
IBOutlet NSOutlineView *outlineView;
}
- (IBAction)addToPlaylist:(id)sender;
@end

View File

@ -0,0 +1,32 @@
//
// FileTreeController.m
// Cog
//
// Created by Vincent Spader on 2/17/08.
// Copyright 2008 __MyCompanyName__. All rights reserved.
//
#import "PlaylistController.h"
#import "FileTreeController.h"
@implementation FileTreeController
- (IBAction)addToPlaylist:(id)sender
{
unsigned int index;
NSIndexSet *selectedIndexes = [outlineView selectedRowIndexes];
NSMutableArray *urls = [[NSMutableArray alloc] init];
for (index = [selectedIndexes firstIndex];
index != NSNotFound; index = [selectedIndexes indexGreaterThanIndex: index])
{
[urls addObject:[[outlineView itemAtRow:index] URL]];
}
[controller addToPlaylist:urls];
[urls release];
}
@end

View File

@ -1,22 +1,17 @@
//
// FileTreeController.h
// SideBarController.h
// Cog
//
// Created by Vincent Spader on 2/17/08.
// Created by Vincent Spader on 6/21/08.
// Copyright 2008 __MyCompanyName__. All rights reserved.
//
#import <Cocoa/Cocoa.h>
#import "PlaylistLoader.h"
#import "SideViewController.h"
@class PlaylistLoader;
@class SideView;
@interface FileTreeViewController : NSObject {
IBOutlet SideView *controller;
IBOutlet NSOutlineView *outlineView;
@interface FileTreeViewController : SideViewController {
IBOutlet PlaylistLoader *playlistLoader;
}
- (IBAction)addToPlaylist:(id)sender;
@end

View File

@ -1,31 +1,26 @@
//
// FileTreeController.m
// SplitViewController.m
// Cog
//
// Created by Vincent Spader on 2/17/08.
// Created by Vincent Spader on 6/20/08.
// Copyright 2008 __MyCompanyName__. All rights reserved.
//
#import "PlaylistController.h"
#import "FileTreeViewController.h"
#import "PlaylistLoader.h"
@implementation FileTreeViewController
- (IBAction)addToPlaylist:(id)sender
- (id)init
{
unsigned int index;
NSIndexSet *selectedIndexes = [outlineView selectedRowIndexes];
NSMutableArray *urls = [[NSMutableArray alloc] init];
return [super initWithNibName:@"FileTree" bundle:[NSBundle mainBundle]];
}
for (index = [selectedIndexes firstIndex];
index != NSNotFound; index = [selectedIndexes indexGreaterThanIndex: index])
{
[urls addObject:[[outlineView itemAtRow:index] URL]];
}
[controller addToPlaylist:urls];
[urls release];
- (void)addToPlaylist:(NSArray *)urls
{
[playlistLoader willInsertURLs:urls origin:URLOriginExternal];
[playlistLoader didInsertURLs:[playlistLoader addURLs:urls sort:YES] origin:URLOriginExternal];
}

View File

@ -1,34 +0,0 @@
//
// SideBarController.h
// Cog
//
// Created by Vincent Spader on 6/21/08.
// Copyright 2008 __MyCompanyName__. All rights reserved.
//
#import <Cocoa/Cocoa.h>
#import "SideViewController.h"
@class SideView;
@interface SideBarController : SideViewController {
IBOutlet NSSplitView *splitView;
IBOutlet NSView *playlistView;
SideView *sideView;
}
- (IBAction)toggleSideBar:(id)sender;
- (IBAction)toggleVertical:(id)sender;
- (void)showSideBar;
- (void)hideSideBar;
- (BOOL)sideBarIsHidden;
- (void)setDividerPosition:(float)position;
- (float)dividerPosition;
- (SideView *)sideView;
- (void)setSideView:(SideView *)sideView;
@end

View File

@ -1,260 +0,0 @@
//
// SplitViewController.m
// Cog
//
// Created by Vincent Spader on 6/20/08.
// Copyright 2008 __MyCompanyName__. All rights reserved.
//
#import "SideBarController.h"
#import "SideView.h"
@implementation SideBarController
+ (void)initialize
{
NSMutableDictionary *userDefaultsValuesDict = [NSMutableDictionary dictionary];
[userDefaultsValuesDict setObject:[NSNumber numberWithBool:YES] forKey:@"sideBarVertical"];
[userDefaultsValuesDict setObject:[NSNumber numberWithBool:NO] forKey:@"showSideBar"];
[userDefaultsValuesDict setObject:[NSNumber numberWithFloat:100.0] forKey:@"sideBarDividerPosition"];
[userDefaultsValuesDict setObject:@"File Tree" forKey:@"lastSideBar"];
[[NSUserDefaults standardUserDefaults] registerDefaults:userDefaultsValuesDict];
}
- (id)init
{
self = [super init];
if (self)
{
[sideViewNibs setObject:@"FileTree" forKey:@"File Tree"];
sideView = nil;
}
return self;
}
- (void)dealloc
{
[sideView release];
[super dealloc];
}
- (void)awakeFromNib
{
[super awakeFromNib];
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"showSideBar"])
{
[self showSideBar];
}
if (![[NSUserDefaults standardUserDefaults] boolForKey:@"sideBarVertical"])
{
[self toggleVertical:self];
}
}
- (void)selectSideViewWithTitle:(NSString *)title
{
SideView *newSideView = [self sideViewForTitle:title];
[[NSUserDefaults standardUserDefaults] setObject:title forKey:@"lastSideBar"];
if (newSideView == [self sideView])
{
[self toggleSideBar:self];
}
else
{
[self setSideView: newSideView];
[self showSideBar];
}
[splitView adjustSubviews];
}
- (IBAction)toggleSideBar:(id)sender
{
//Show/hide current
if ([self sideBarIsHidden])
{
[self showSideBar];
}
else
{
[self hideSideBar];
}
[splitView adjustSubviews];
}
- (IBAction)toggleVertical:(id)sender
{
[splitView setVertical:![splitView isVertical]];
if (![self sideBarIsHidden])
{
[self setSideView:[self sideView]];
[self showSideBar];
}
[splitView adjustSubviews];
[[NSUserDefaults standardUserDefaults] setBool:[splitView isVertical] forKey:@"sideBarVertical"];
}
- (SideView *)sideView
{
if (sideView == nil)
{
[self setSideView:[self sideViewForTitle:[[NSUserDefaults standardUserDefaults] objectForKey:@"lastSideBar"]]];
}
return sideView;
}
- (void)setSideView:(SideView *)newSideView
{
[newSideView retain];
sideView = newSideView;
[sideView release];
}
- (void)showSideBar
{
if ([splitView isVertical]) {
[splitView setSubviews:[NSArray arrayWithObjects:[[self sideView] view], playlistView, nil]];
}
else {
[splitView setSubviews:[NSArray arrayWithObjects:playlistView, [[self sideView] view], nil]];
}
[self setDividerPosition: [[NSUserDefaults standardUserDefaults] floatForKey:@"sideBarDividerPosition"]];
[[[sideView view] window] makeFirstResponder:[sideView firstResponder]];
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"showSideBar"];
}
- (void)hideSideBar
{
[splitView setSubviews:[NSArray arrayWithObject:playlistView]];
[[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"showSideBar"];
[[playlistView window] makeFirstResponder:playlistView];
}
- (BOOL)sideBarIsHidden
{
return ([[splitView subviews] count] == 1);
}
- (BOOL)splitView:(NSSplitView *)aSplitView canCollapseSubview:(NSView *)subview
{
return (subview != playlistView);
}
- (BOOL)splitView:(NSSplitView *)aSplitView shouldCollapseSubview:(NSView *)subview forDoubleClickOnDividerAtIndex:(NSInteger)dividerIndex
{
return (subview != playlistView);
}
- (void)splitViewDidResizeSubviews:(NSNotification *)aNotification
{
//Update default
if (![self sideBarIsHidden])
{
[[NSUserDefaults standardUserDefaults] setFloat:[self dividerPosition] forKey:@"sideBarDividerPosition"];
NSLog(@"DIVIDER POSITION: %f", [self dividerPosition]);
}
}
- (void)splitView:(NSSplitView *)sender resizeSubviewsWithOldSize: (NSSize)oldSize
{
if ([self sideBarIsHidden])
{
[splitView adjustSubviews];
}
else
{
CGFloat dividerThickness = [splitView dividerThickness];
NSRect sideRect = [[sideView view] frame];
NSRect playlistRect = [playlistView frame];
NSRect newFrame = [splitView frame];
if ([splitView isVertical])
{
NSLog(@"VERTICAL");
sideRect.size.width = [[NSUserDefaults standardUserDefaults] floatForKey:@"sideBarDividerPosition"];
sideRect.size.height = newFrame.size.height;
sideRect.origin = NSMakePoint(0, 0);
playlistRect.size.width = newFrame.size.width - sideRect.size.width - dividerThickness;
playlistRect.size.height = newFrame.size.height;
playlistRect.origin.x = sideRect.size.width + dividerThickness;
}
else
{
NSLog(@"NOT VERTICAL");
sideRect.size.height = [[NSUserDefaults standardUserDefaults] floatForKey:@"sideBarDividerPosition"];
sideRect.size.width = newFrame.size.width;
playlistRect.origin = NSMakePoint(0, 0);
playlistRect.size.width = newFrame.size.width;
playlistRect.size.height = newFrame.size.height - sideRect.size.height - dividerThickness;
sideRect.origin.y = playlistRect.size.height + dividerThickness;
}
NSLog(@"SIDE: %f,%f %fx%f", sideRect.origin.x, sideRect.origin.y, sideRect.size.width, sideRect.size.height);
NSLog(@"Playlist: %f,%f %fx%f", playlistRect.origin.x, playlistRect.origin.y, playlistRect.size.width, playlistRect.size.height);
[[sideView view] setFrame:sideRect];
[playlistView setFrame:playlistRect];
}
}
- (float)dividerPosition
{
if ([splitView isVertical])
{
return [[sideView view] frame].size.width;
}
return [[sideView view] frame].size.height;
}
- (void)setDividerPosition:(float)position
{
float actualPosition = position;
if (![splitView isVertical])
{
actualPosition = ([splitView frame].size.height - position);
}
[splitView adjustSubviews];
[splitView setPosition:actualPosition ofDividerAtIndex:0];
[[NSUserDefaults standardUserDefaults] setFloat:position forKey:@"sideBarDividerPosition"];
NSLog(@"SETTING POSITION: %f (%f) == %f?", actualPosition, position, [self dividerPosition]);
NSRect sideRect = [[sideView view] frame];
NSRect playlistRect = [playlistView frame];
NSLog(@"SIDE: %f,%f %fx%f", sideRect.origin.x, sideRect.origin.y, sideRect.size.width, sideRect.size.height);
NSLog(@"Playlist: %f,%f %fx%f", playlistRect.origin.x, playlistRect.origin.y, playlistRect.size.width, playlistRect.size.height);
}
@end

View File

@ -1,26 +0,0 @@
//
// HelperController.h
// Cog
//
// Created by Vincent Spader on 6/20/08.
// Copyright 2008 __MyCompanyName__. All rights reserved.
//
#import <Cocoa/Cocoa.h>
@class SideViewController;
@interface SideView : NSObject {
IBOutlet NSView *view;
IBOutlet NSResponder *firstResponder;
SideViewController *controller;
}
- (id)initWithNibNamed:(NSString *)nibName controller:(SideViewController *)c;
- (NSView *)view;
- (NSResponder *)firstResponder;
- (void) addToPlaylist:(NSArray *)urls;
@end

View File

@ -1,42 +0,0 @@
//
// HelperController.m
// Cog
//
// Created by Vincent Spader on 6/20/08.
// Copyright 2008 __MyCompanyName__. All rights reserved.
//
#import "SideView.h"
@implementation SideView
- (id)initWithNibNamed:(NSString *)nibName controller:(SideViewController *)c
{
self = [super init];
if (self)
{
controller = c;
[NSBundle loadNibNamed:nibName owner:self];
}
return self;
}
- (NSView *)view
{
return view;
}
- (NSResponder *)firstResponder
{
return firstResponder;
}
- (void) addToPlaylist:(NSArray *)urls
{
[controller addToPlaylist:urls];
}
@end

View File

@ -1,28 +0,0 @@
//
// SplitViewController.h
// Cog
//
// Created by Vincent Spader on 6/20/08.
// Copyright 2008 __MyCompanyName__. All rights reserved.
//
#import <Cocoa/Cocoa.h>
@class SideView;
@class PlaylistLoader;
@interface SideViewController : NSObject {
IBOutlet NSMenu *sideViewMenu;
IBOutlet PlaylistLoader *playlistLoader;
NSMutableDictionary *sideViewNibs;
NSMutableDictionary *sideViews;
}
- (SideView *)sideViewForTitle:(NSString *)title;
- (void)selectSideViewWithTitle:(NSString *)title; //To be overridden by subclass
//Helper for adding files to the playlist
- (void) addToPlaylist:(NSArray *)urls;
@end

View File

@ -1,83 +0,0 @@
//
// SplitViewController.m
// Cog
//
// Created by Vincent Spader on 6/20/08.
// Copyright 2008 __MyCompanyName__. All rights reserved.
//
#import "SideViewController.h"
#import "PlaylistLoader.h"
#import "SideView.h"
@implementation SideViewController
- (id)init
{
self = [super init];
if (self)
{
sideViewNibs = [[NSMutableDictionary alloc] init];
sideViews = [[NSMutableDictionary alloc] init];
}
return self;
}
- (void)dealloc
{
[sideViews release];
[sideViewNibs release];
[super dealloc];
}
- (void)awakeFromNib
{
for (NSString *title in sideViewNibs)
{
//Create menu item
NSMenuItem *item = [[NSMenuItem alloc] initWithTitle:title action:@selector(selectSideView:) keyEquivalent:@""];
[item setTarget:self];
[item setRepresentedObject:title];
[sideViewMenu addItem:item];
}
}
- (SideView *)sideViewForTitle:(NSString *)title
{
SideView *newSideView = [sideViews objectForKey:title];
if (newSideView == nil)
{
NSString *nibName = [sideViewNibs objectForKey:title];
newSideView = [[SideView alloc] initWithNibNamed:nibName controller:self];
[sideViews setObject:newSideView forKey:title];
[newSideView release];
}
return newSideView;
}
- (IBAction)selectSideView:(id)sender
{
NSString *title = [sender representedObject];
[self selectSideViewWithTitle:title];
}
- (void)selectSideViewWithTitle:(NSString *)title
{
//To be overridden
}
- (void) addToPlaylist:(NSArray *)urls
{
[playlistLoader willInsertURLs:urls origin:URLOriginExternal];
[playlistLoader didInsertURLs:[playlistLoader addURLs:urls sort:YES] origin:URLOriginExternal];
}
@end

View File

@ -1,17 +0,0 @@
//
// SideWindowController.h
// Cog
//
// Created by Vincent Spader on 6/21/08.
// Copyright 2008 __MyCompanyName__. All rights reserved.
//
#import <Cocoa/Cocoa.h>
#import "SideViewController.h"
@interface SideWindowController : SideViewController {
NSMutableDictionary *windows;
}
@end

View File

@ -1,53 +0,0 @@
//
// SideWindowController.m
// Cog
//
// Created by Vincent Spader on 6/21/08.
// Copyright 2008 __MyCompanyName__. All rights reserved.
//
#import "SideWindowController.h"
@implementation SideWindowController
- (id)init
{
self = [super init];
if (self)
{
[sideViewNibs setObject:@"FileTree" forKey:@"File Tree"];
windows = [[NSMutableDictionary alloc] init];
}
return self;
}
- (void)dealloc
{
[windows release];
[super dealloc];
}
- (void)selectSideViewWithTitle:(NSString *)title
{
NSPanel *window = [windows objectForKey:title];
if (window == nil)
{
SideView *newSideView = [self sideViewForTitle:title];
NSUInteger styleMask = (NSClosableWindowMask|NSMiniaturizableWindowMask|NSResizableWindowMask|NSTitledWindowMask|NSUtilityWindowMask);
window = [[NSPanel alloc] initWithContentRect:[[newSideView view] frame] styleMask:styleMask backing:NSBackingStoreBuffered defer:NO];
[window setContentView:[newSideView view]];
[windows setObject:window forKey:title];
}
[window makeKeyAndOrderFront:self];
}
@end

View File

@ -0,0 +1,27 @@
//
// SideBarController.h
// Cog
//
// Created by Vincent Spader on 6/21/08.
// Copyright 2008 __MyCompanyName__. All rights reserved.
//
#import <Cocoa/Cocoa.h>
@interface SideViewController : NSViewController {
IBOutlet NSSplitView *splitView;
IBOutlet NSView *mainView;
IBOutlet NSView *firstResponder;
}
- (IBAction)toggleSideView:(id)sender;
- (IBAction)toggleVertical:(id)sender;
- (void)showSideView;
- (void)hideSideView;
- (BOOL)sideViewIsHidden;
- (void)setDividerPosition:(float)position;
- (float)dividerPosition;
@end

211
Utils/SideViewController.m Normal file
View File

@ -0,0 +1,211 @@
//
// SplitViewController.m
// Cog
//
// Created by Vincent Spader on 6/20/08.
// Copyright 2008 __MyCompanyName__. All rights reserved.
//
#import "SideViewController.h"
@implementation SideViewController
- (NSString *)showSideViewDefaultsKey
{
return [NSString stringWithFormat:@"%@ShowSideView", [self nibName]];
}
- (NSString *)sideViewVerticalDefaultsKey
{
return [NSString stringWithFormat:@"%@SideViewVertical", [self nibName]];
}
- (NSString *)sideViewDividerPositionDefaultsKey
{
return [NSString stringWithFormat:@"%@SideViewDividerPosition", [self nibName]];
}
- (void)registerDefaults
{
NSMutableDictionary *userDefaultsValuesDict = [NSMutableDictionary dictionary];
[userDefaultsValuesDict setObject:[NSNumber numberWithBool:YES] forKey:@"sideViewVertical"];
[userDefaultsValuesDict setObject:[NSNumber numberWithBool:NO] forKey:@"showSideView"];
[userDefaultsValuesDict setObject:[NSNumber numberWithFloat:100.0] forKey:@"sideViewDividerPosition"];
[[NSUserDefaults standardUserDefaults] registerDefaults:userDefaultsValuesDict];
}
- (id)initWithNibName:(NSString *)nib bundle:(NSBundle *)bundle
{
self = [super initWithNibName:nib bundle:bundle];
if (self)
{
[self registerDefaults];
}
return self;
}
- (void)awakeFromNib
{
if ([[NSUserDefaults standardUserDefaults] boolForKey:[self showSideViewDefaultsKey]])
{
[self showSideView];
}
if (![[NSUserDefaults standardUserDefaults] boolForKey:[self sideViewVerticalDefaultsKey]])
{
[self toggleVertical:self];
}
}
- (IBAction)toggleSideView:(id)sender
{
//Show/hide current
if ([self sideViewIsHidden])
{
[self showSideView];
}
else
{
[self hideSideView];
}
[splitView adjustSubviews];
}
- (IBAction)toggleVertical:(id)sender
{
[splitView setVertical:![splitView isVertical]];
if (![self sideViewIsHidden])
{
[self showSideView];
}
[splitView adjustSubviews];
[[NSUserDefaults standardUserDefaults] setBool:[splitView isVertical] forKey:[self sideViewVerticalDefaultsKey]];
}
- (void)showSideView
{
if ([splitView isVertical]) {
[splitView setSubviews:[NSArray arrayWithObjects:[self view], mainView, nil]];
}
else {
[splitView setSubviews:[NSArray arrayWithObjects:mainView, [self view], nil]];
}
[self setDividerPosition: [[NSUserDefaults standardUserDefaults] floatForKey:[self sideViewDividerPositionDefaultsKey]]];
[[[self view] window] makeFirstResponder:firstResponder];
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:[self showSideViewDefaultsKey]];
}
- (void)hideSideView
{
[splitView setSubviews:[NSArray arrayWithObject:mainView]];
[[NSUserDefaults standardUserDefaults] setBool:NO forKey:[self showSideViewDefaultsKey]];
[[mainView window] makeFirstResponder:mainView];
}
- (BOOL)sideViewIsHidden
{
return ([[splitView subviews] count] == 1);
}
- (BOOL)splitView:(NSSplitView *)aSplitView canCollapseSubview:(NSView *)subview
{
return (subview != mainView);
}
- (BOOL)splitView:(NSSplitView *)aSplitView shouldCollapseSubview:(NSView *)subview forDoubleClickOnDividerAtIndex:(NSInteger)dividerIndex
{
return (subview != mainView);
}
- (void)splitViewDidResizeSubviews:(NSNotification *)aNotification
{
//Update default
if (![self sideViewIsHidden])
{
[[NSUserDefaults standardUserDefaults] setFloat:[self dividerPosition] forKey:[self sideViewDividerPositionDefaultsKey]];
NSLog(@"DIVIDER POSITION: %f", [self dividerPosition]);
}
}
- (void)splitView:(NSSplitView *)sender resizeSubviewsWithOldSize: (NSSize)oldSize
{
if ([self sideViewIsHidden])
{
[splitView adjustSubviews];
}
else
{
CGFloat dividerThickness = [splitView dividerThickness];
NSRect sideRect = [[self view] frame];
NSRect mainRect = [mainView frame];
NSRect newFrame = [splitView frame];
if ([splitView isVertical])
{
sideRect.size.width = [[NSUserDefaults standardUserDefaults] floatForKey:[self sideViewDividerPositionDefaultsKey]];
sideRect.size.height = newFrame.size.height;
sideRect.origin = NSMakePoint(0, 0);
mainRect.size.width = newFrame.size.width - sideRect.size.width - dividerThickness;
mainRect.size.height = newFrame.size.height;
mainRect.origin.x = sideRect.size.width + dividerThickness;
}
else
{
sideRect.size.height = [[NSUserDefaults standardUserDefaults] floatForKey:[self sideViewDividerPositionDefaultsKey]];
sideRect.size.width = newFrame.size.width;
mainRect.origin = NSMakePoint(0, 0);
mainRect.size.width = newFrame.size.width;
mainRect.size.height = newFrame.size.height - sideRect.size.height - dividerThickness;
sideRect.origin.y = mainRect.size.height + dividerThickness;
}
[[self view] setFrame:sideRect];
[mainView setFrame:mainRect];
}
}
- (float)dividerPosition
{
if ([splitView isVertical])
{
return [[self view] frame].size.width;
}
return [[self view] frame].size.height;
}
- (void)setDividerPosition:(float)position
{
float actualPosition = position;
if (![splitView isVertical])
{
actualPosition = ([splitView frame].size.height - position);
}
[splitView adjustSubviews];
[splitView setPosition:actualPosition ofDividerAtIndex:0];
[[NSUserDefaults standardUserDefaults] setFloat:position forKey:[self sideViewDividerPositionDefaultsKey]];
}
@end