From 5e45de0e835fc8cac89a95a1f596ad0b4d370cfd Mon Sep 17 00:00:00 2001 From: Brian Olsen Date: Sun, 15 Nov 2009 20:36:41 +0100 Subject: [PATCH] - Finished implementing presets - Made relase compile with fewer warnings - Moved localized strings for video type to its own file - Removed pause button from main window and queue window - Made extension to NSXMLNode that makes getting a string from an XPath easier --- App/English.lproj/Localizable.strings | Bin 1366 -> 5916 bytes App/English.lproj/MainMenu.xib | 126 +-- App/English.lproj/PresetsPanel.xib | 1428 ++++++++++++++++++++++++ App/English.lproj/Queue.xib | 1082 ++++++++++++++---- App/English.lproj/VideoType.strings | Bin 0 -> 718 bytes App/src/AppController.h | 2 + App/src/AppController.m | 31 +- App/src/FilesTableView.m | 4 +- App/src/MGCollectionViewOrig.m | 22 +- App/src/MZMetaLoader.m | 16 +- App/src/MZPresets.h | 7 +- App/src/MZPresets.m | 38 + App/src/PresetsWindowController.h | 12 + App/src/PresetsWindowController.m | 129 +++ App/src/QueueController.h | 5 - App/src/QueueController.m | 29 - App/src/QueueWindowController.h | 2 - App/src/QueueWindowController.m | 16 - Framework/src/MZConstants.h | 2 + Framework/src/MZRemoteData.m | 2 + Framework/src/MZTag.m | 16 +- Framework/src/MetaEdits.m | 1 + Framework/src/MetaZKit.h | 1 + Framework/src/NSArray-Mapping.m | 2 +- Framework/src/NSXMLNode-MZExtensions.h | 16 + Framework/src/NSXMLNode-MZExtensions.m | 24 + MetaZ.xcodeproj/project.pbxproj | 38 +- Plugins/TagChimp/src/TCSearch.m | 49 +- 28 files changed, 2678 insertions(+), 422 deletions(-) create mode 100644 App/English.lproj/PresetsPanel.xib create mode 100644 App/English.lproj/VideoType.strings create mode 100644 Framework/src/NSXMLNode-MZExtensions.h create mode 100644 Framework/src/NSXMLNode-MZExtensions.m diff --git a/App/English.lproj/Localizable.strings b/App/English.lproj/Localizable.strings index 9f5561f2491f94944d0b38aadc5beecbc875197d..d4328229e23bfd21c8a4e57d2ffc1dce8f1c138d 100644 GIT binary patch literal 5916 zcmc&&+invv5S{0Kg;l8%@X`-J2ud#^>V-l}1&EhTNoho~Nt5)(#{=isab~>PO*flT z6eZcU$1`W{w*UOzlo#S;TLzNLg>+>keaU2kCyqEgb>t4e4s@HcChM{#LwtI2?`H@2 z&G6R4jFVURE~0n|4r|~;nOl%`E|-vWgKsWBFxJ7?2$Dy5R(bPu17LMPF~W*5z7za9 zjAh`|!~6FHO|$ini}gybfs0=UjI?UM5$1Y)EcUmMI>9ISGg@^Uw#s4uPU5+A)N(n% z`V4lZZJk&YeT2e17v{#07-J~P+yM`VxETPElUt8~kwt9I`?5Ec!m&$m>tp=2 z@nv%kR+l}GAorRaLdpb4K0{J5o|uA%+_9YVdf*p!={w}_fsNO^0Xmdm#DR`%lTXP%Cbu^K&T-Hx%d z2Z|6)-%xos(jwznO7uf@HR)n}PiR)dFfuh>ny*dOG+=CM+hXJE_FD8_VjH4L^BS7A^Z zi@}aAgW)IYNC#D@O6UFQyvouME9U^VtG5HIj*%DqX1Y_vIN@J;!{@XZ{zUx<+g{u@y0%1fEKswG;K>Ng(vbbXVtqIYX7Vz48ce zx4>`XRee!DYvr9{eK;Y-u2a9GGap!4dFBec=TK!8OAf1RA3gH)tr@+=NltdgVhrn) zYdkM$?w6gs9$HnDUd?}9ESeKoOm_@JJae~Se){EQ*NAD6ITdB58;yqGaYGqdP~WFmf`)HFt-c&7?i;?6GGMIjQ2A-cqILtEsF8 zX-|k!-pjt}pyAD~I`GJ7J)Ysi>7P+?jY>mZ+IX5j!5+^j6saAv5>i~Ob7{uXX0cb> z-Aq-@{+Q60RlaJ9WpRZwPj%0vq)4NdNJp(qMxo{sYhe!iaz~-3!|1t`mUiR)(Aaph zn!?H~^Du7+h=Y+;?%|Ueh3aL;>PQ&)&Rfl&^C|Z*VtF^M3#Z1Si}F$B*I!}r*;8_v z7eD!~7jr+{whVnvIiGFZnX$`h8SJtDdXqUMmT!qKK z!F>hq)W0oUjK3Z)tH&9lfj52JQSj_M#BE}H}_}UXU5EEdnuF~ P>kMNuJ$*fmv|x+Bs6)1S delta 145 zcmbQEca4kb|G&x0xD6)jF>6gez@#;K1(V<818kEvui@5UoZKL&GMPs(Z}I}Zw26yk zCTB4gO+Fx^0HpOM9}^9jd`d{fwS*xb2y+;c7!nzZ7!-hXDMJYm<}>6m6a)EM4EhXQ f3`z_EKsAXBl|YsPgDnsvi&#(oDWp1imw*}oT#G00 diff --git a/App/English.lproj/MainMenu.xib b/App/English.lproj/MainMenu.xib index 6f93af3b..afe54c42 100644 --- a/App/English.lproj/MainMenu.xib +++ b/App/English.lproj/MainMenu.xib @@ -2,18 +2,18 @@ 1050 - 10B504 + 10C540 732 - 1038.2 - 437.00 + 1038.25 + 458.00 com.apple.InterfaceBuilder.CocoaPlugin 732 YES - + YES @@ -798,7 +798,6 @@ 52DC7AAF-0F1F-43FD-AC51-0E2213DDEE30 6E446216-6FCF-46AD-8DEA-F8112ED75427 858F849C-EE95-45C7-990F-6A44F26F96F9 - C6892E37-C894-464E-B7F8-7A4A4FF6A8DC EF60F3A4-7601-417E-B211-1878771A915A NSToolbarCustomizeToolbarItem NSToolbarFlexibleSpaceItem @@ -815,7 +814,10 @@ Presets Presets - + + NSImage + presets + {0, 0} @@ -892,28 +894,6 @@ YES 0 - - - C6892E37-C894-464E-B7F8-7A4A4FF6A8DC - - Pause - Pause/Resume - - - - NSImage - Pause - - - - {0, 0} - {0, 0} - YES - YES - -1 - YES - 0 - EF60F3A4-7601-417E-B211-1878771A915A @@ -1044,18 +1024,16 @@ - + - YES - @@ -4460,7 +4438,10 @@ 3 2 - + + 1 + MSAxIDEAA + 17 -876609536 @@ -4478,10 +4459,7 @@ - - 1 - MSAxIDEAA - + 4 @@ -5370,14 +5348,6 @@ - - - Reload - - 2147483647 - - - @@ -7520,22 +7490,6 @@ 1325 - - - enabled: started - - - - - - enabled: started - enabled - started - 2 - - - 1339 - startStopEncoding: @@ -7544,14 +7498,6 @@ 1341 - - - pauseResumeEncoding: - - - - 1342 - showQueue: @@ -7608,14 +7554,6 @@ 1354 - - - pauseBtn - - - - 1355 - playBtn @@ -8453,6 +8391,14 @@ 1752 + + + showPresets: + + + + 1754 + @@ -8979,7 +8925,6 @@ - @@ -11112,11 +11057,6 @@ - - 1335 - - - 1336 @@ -11813,7 +11753,6 @@ YES - @@ -11827,11 +11766,6 @@ - - 1731 - - - 1734 @@ -11888,7 +11822,6 @@ 1326.IBPluginDependency 1327.IBPluginDependency 1334.IBPluginDependency - 1335.IBPluginDependency 1336.IBPluginDependency 1337.IBPluginDependency 134.IBPluginDependency @@ -12026,11 +11959,9 @@ 1723.IBPluginDependency 1724.IBPluginDependency 1725.IBPluginDependency - 1731.IBPluginDependency 1734.IBPluginDependency 1735.IBPluginDependency 1736.IBPluginDependency - 1753.IBPluginDependency 19.IBPluginDependency 19.ImportedFromIB2 195.IBPluginDependency @@ -12463,7 +12394,6 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -12594,9 +12524,7 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{83, 759}, {149, 63}} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin + {{83, 779}, {149, 43}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -13039,7 +12967,7 @@ - 1753 + 1754 @@ -13062,6 +12990,7 @@ showImageEditor: showInfoTab: showPreferences: + showPresets: showSortTab: showVideoTab: startSearch: @@ -13082,6 +13011,7 @@ id id id + id @@ -13352,7 +13282,6 @@ YES addToQueue: - pauseResumeEncoding: showQueue: startStopEncoding: @@ -13361,7 +13290,6 @@ id id id - id @@ -13370,7 +13298,6 @@ YES filesController mainWindow - pauseBtn playBtn @@ -13378,7 +13305,6 @@ NSArrayController NSWindow NSToolbarItem - NSToolbarItem diff --git a/App/English.lproj/PresetsPanel.xib b/App/English.lproj/PresetsPanel.xib new file mode 100644 index 00000000..cf6a0eb7 --- /dev/null +++ b/App/English.lproj/PresetsPanel.xib @@ -0,0 +1,1428 @@ + + + + 1050 + 10C540 + 732 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 732 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + PresetsWindowController + + + FirstResponder + + + NSApplication + + + 31 + 2 + {{162, 215}, {363, 264}} + -1535639552 + Presets + NSPanel + + {1.79769e+308, 1.79769e+308} + + + 256 + + YES + + + 274 + + YES + + + 2304 + + YES + + + 256 + {339, 193} + + YES + + + 256 + {339, 17} + + + + + + -2147483392 + {{325, 0}, {16, 17}} + + + + YES + + name + 336 + 40 + 1000 + + 75628096 + 2048 + Name + + LucidaGrande + 11 + 3100 + + + 3 + MC4zMzMzMzI5ODU2AA + + + 6 + System + headerTextColor + + 3 + MAA + + + + + 337772096 + 2048 + Text Cell + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlBackgroundColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + + + 1 + YES + YES + + + name + YES + compare: + + + + 3 + 2 + + 3 + MQA + + + 6 + System + gridColor + + 3 + MC41AA + + + 17 + -2084569088 + + + presets + + YES + + name + YES + compare: + + + 5 + 15 + 0 + YES + 0 + + + {{1, 17}, {339, 193}} + + + + + 4 + + + + -2147483392 + {{325, 17}, {15, 178}} + + + _doScroller: + 0.99476439790575921 + + + + -2147483392 + {{1, 195}, {324, 15}} + + 1 + + _doScroller: + 0.99678456591639875 + + + + 2304 + + YES + + + {{1, 0}, {339, 17}} + + + + + 4 + + + + {{11, 42}, {341, 211}} + + + 562 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 292 + {{11, 10}, {80, 25}} + + YES + + 67239424 + 0 + + + + YES + + 24 + + NSImage + NSAddTemplate + + Create a new preset using selected tags + 0 + + + 24 + + NSImage + NSRemoveTemplate + + Remove the selected preset + 1 + 0 + + + 24 + + NSImage + NSActionTemplate + + Apply preset to selected files + 0 + + + 1 + 2 + 2 + + + + {363, 264} + + + {{0, 0}, {1440, 878}} + {1.79769e+308, 1.79769e+308} + + + + MZPresets + + + + YES + name + + YES + + YES + YES + YES + YES + YES + + + + + YES + + + value: arrangedObjects.name + + + + + + value: arrangedObjects.name + value + arrangedObjects.name + + NSAllowsEditingMultipleValuesSelection + + + 2 + + + 20 + + + + contentArray: presets + + + + + + contentArray: presets + contentArray + presets + 2 + + + 22 + + + + window + + + + 24 + + + + presetsController + + + + 25 + + + + segmentClicked: + + + + 26 + + + + presetsView + + + + 27 + + + + segmentedControl + + + + 28 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 3 + + + YES + + + + + + 4 + + + YES + + + + + + + 5 + + + YES + + + + + + + + + 6 + + + + + 7 + + + + + 8 + + + YES + + + + + + 10 + + + YES + + + + + + 13 + + + + + 14 + + + YES + + + + + + 15 + + + + + 16 + + + + + 17 + + + + + 29 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 10.IBPluginDependency + 13.IBPluginDependency + 14.IBPluginDependency + 14.IBSegmentedControlTracker.RoundRobinState + 14.IBSegmentedControlTracker.WasGrowing + 15.IBPluginDependency + 15.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 16.IBPluginDependency + 17.IBPluginDependency + 3.IBEditorWindowLastContentRect + 3.IBPluginDependency + 3.IBWindowTemplateEditedContentRect + 3.NSWindowTemplate.visibleAtLaunch + 4.IBPluginDependency + 4.IBUserGuides + 5.IBPluginDependency + 6.IBPluginDependency + 7.IBPluginDependency + 8.CustomClassName + 8.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{125, 518}, {363, 264}} + com.apple.InterfaceBuilder.CocoaPlugin + {{125, 518}, {363, 264}} + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + UndoTableView + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 37 + + + + YES + + MZPresets + NSObject + + IBProjectSource + App/src/MZPresets.h + + + + NSObject + + IBProjectSource + Framework/src/MetaData.h + + + + NSObject + + IBProjectSource + Framework/src/NSObject-ProtectedKeyValue.h + + + + PresetsWindowController + NSWindowController + + YES + + YES + addPreset: + applyPreset: + removePreset: + segmentClicked: + + + YES + id + id + id + id + + + + YES + + YES + filesController + presetsController + presetsView + segmentedControl + + + YES + NSArrayController + NSArrayController + NSTableView + NSSegmentedControl + + + + IBProjectSource + App/src/PresetsWindowController.h + + + + UndoTableView + NSTableView + + IBProjectSource + App/src/UndoTableView.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSArrayController + NSObjectController + + IBFrameworkSource + AppKit.framework/Headers/NSArrayController.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSManagedObjectContext + NSObject + + IBFrameworkSource + CoreData.framework/Headers/NSManagedObjectContext.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAlert.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAnimation.h + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSBrowser.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSComboBox.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSComboBoxCell.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDatePickerCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDrawer.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSImage.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSRuleEditor.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSound.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSpeechRecognizer.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSpeechSynthesizer.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSplitView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTabView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSText.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTextStorage.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTextView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTokenField.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTokenFieldCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbar.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSWindow.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSMetadata.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSNetServices.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPort.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSSpellServer.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSStream.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSXMLParser.h + + + + NSObject + + IBFrameworkSource + ImageKit.framework/Headers/IKImageBrowserView.h + + + + NSObject + + IBFrameworkSource + ImageKit.framework/Headers/ImageKitDeprecated.h + + + + NSObject + + IBFrameworkSource + PDFKit.framework/Headers/PDFDocument.h + + + + NSObject + + IBFrameworkSource + PDFKit.framework/Headers/PDFView.h + + + + NSObject + + IBFrameworkSource + QuartzComposer.framework/Headers/QCCompositionParameterView.h + + + + NSObject + + IBFrameworkSource + QuartzComposer.framework/Headers/QCCompositionPickerView.h + + + + NSObject + + IBFrameworkSource + QuartzFilters.framework/Headers/QuartzFilterManager.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUAppcast.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUUpdater.h + + + + NSObjectController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSObjectController.h + + + + NSPanel + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSPanel.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSScrollView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSScrollView.h + + + + NSScroller + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSScroller.h + + + + NSSegmentedCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTableColumn + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableColumn.h + + + + NSTableHeaderView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSTableHeaderView.h + + + + NSTableView + NSControl + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + NSWindow + + + + NSWindow + NSResponder + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSWindowScripting.h + + + + NSWindowController + NSResponder + + showWindow: + id + + + IBFrameworkSource + AppKit.framework/Headers/NSWindowController.h + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + ../../MetaZ.xcodeproj + 3 + + diff --git a/App/English.lproj/Queue.xib b/App/English.lproj/Queue.xib index 942694c7..2fa945bb 100644 --- a/App/English.lproj/Queue.xib +++ b/App/English.lproj/Queue.xib @@ -1,26 +1,29 @@ - + 1050 - 9L31a - 677 - 949.54 - 353.00 + 10C540 + 732 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 732 + YES + + - - YES - com.apple.InterfaceBuilderKit com.apple.InterfaceBuilder.CocoaPlugin YES - + YES @@ -58,9 +61,8 @@ 1 YES - + YES - 2831508A-6473-49FA-A425-AD7A2A95932F ADFAD099-D745-4D4D-AA0F-B8F4296A6882 NSToolbarCustomizeToolbarItem NSToolbarFlexibleSpaceItem @@ -69,28 +71,6 @@ YES - - - 2831508A-6473-49FA-A425-AD7A2A95932F - - Pause - Pause/Resume - - - - NSImage - Pause - - - - {0, 0} - {0, 0} - YES - YES - -1 - YES - 0 - ADFAD099-D745-4D4D-AA0F-B8F4296A6882 @@ -119,96 +99,9 @@ Customize Customize Toolbar - - 683671552 - {32, 32} - - YES - - YES - - - - TU0AKgAAEAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAICAgbAAAABAAAAAAEBAQIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAQEBAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAENDQ0dJSUlW11dXbBpaWnDb29vzyAgIGUPDw8xAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAABsbGyUoKChIHh4ePSkpKUonJycsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDCEJCQoWvr6/i9fX1/fX19f7h4eH82dnZ+YODg9sYGBg8 -AAAAAAAAAAAAAAAAAAAAAAAAAAJFRUV6ZGRkvf39/f/+/v7//////0NDQ7QAAAAEAAAAAAAAAAAAAAAA -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 -AAAACQAAABAAAAAYAAAAIAAAACoAAAAxAAAANgAAADkAAAA4AQEBOQAAAC8AAAAnAAAAHQAAABUAAAAO -AAAACgAAAAsAAAAPAAAAFwAAACAAAAAqAAAAMQAAADQAAAAzAAAALQAAACQAAAAbAAAAEgAAAAsAAAAA -AAAAAAAAAAQAAAAJAAAAEAAAABgAAAAgAAAAKgAAADEAAAA2AAAAOQAAADgAAAA1AAAALwAAACcAAAAd -AAAAFQAAAA4AAAAKAAAACwAAAA8AAAAXAAAAIAAAACoAAAAxAAAANAAAADMAAAAtAAAAJAAAABsAAAAS -AAAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0BAAADAAAAAQAgAAABAQADAAAAAQAgAAABAgADAAAABAAA -EKoBAwADAAAAAQABAAABBgADAAAAAQACAAABEQAEAAAAAQAAAAgBEgADAAAAAQABAAABFQADAAAAAQAE -AAABFgADAAAAAQD8AAABFwAEAAAAAQAAEAABHAADAAAAAQABAAABUgADAAAAAQABAAABUwADAAAABAAA -ELIAAAAAAAgACAAIAAgAAQABAAEAAQ - - - - - - 3 - MCAwAA - + + NSImage + NSToolbarCustomizeToolbarItemImage runToolbarCustomizationPalette: @@ -316,12 +209,10 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ - YES - @@ -331,7 +222,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ YES - {3.40282e+38, 3.40282e+38} + {1.79769e+308, 1.79769e+308} 256 @@ -365,7 +256,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ controlColor 3 - MC42NjY2NjY2OQA + MC42NjY2NjY2NjY3AA 4 @@ -377,8 +268,8 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ _doScroller: - 1.000000e+00 - 9.636363e-01 + 1 + 0.9636363 @@ -388,7 +279,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ 1 _doScroller: - 5.060241e-01 + 0.50602409999999998 {{-1, 20}, {485, 280}} @@ -411,7 +302,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ Clear LucidaGrande - 1.100000e+01 + 11 3100 @@ -428,7 +319,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ {{0, 0}, {1680, 1028}} - {3.40282e+38, 3.40282e+38} + {1.79769e+308, 1.79769e+308} queuewindow @@ -467,7 +358,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ mbdump.tar.bz2 LucidaGrande - 1.100000e+01 + 11 16 @@ -495,7 +386,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ 503 of 575 MB - stopped LucidaGrande - 9.000000e+00 + 9 16 @@ -506,7 +397,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ controlShadowColor 3 - MC4zMzMzMzMzNAA + MC4zMzMzMzMzMzMzAA @@ -597,7 +488,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ {{0, 7}, {233, 12}} 16648 - 1.000000e+02 + 100 @@ -668,7 +559,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ LucidaGrande - 1.300000e+01 + 13 1044 6 @@ -908,7 +799,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ {{0, 17}, {235, 12}} 16648 - 1.000000e+02 + 100 @@ -946,14 +837,6 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ 13 - - - pauseResumeEncoding: - - - - 14 - window @@ -1050,14 +933,6 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ 252 - - - pauseBtn - - - - 253 - value: representedObject.edits.fileName @@ -1071,15 +946,15 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ representedObject.edits.fileName YES - + YES NSConditionallySetsHidden NSContinuouslyUpdatesValue YES - - + + 2 @@ -1100,15 +975,15 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ representedObject.edits.fileName YES - + YES NSConditionallySetsHidden NSContinuouslyUpdatesValue YES - - + + 2 @@ -1250,28 +1125,26 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ YES 0 - - YES - + -2 - - RmlsZSdzIE93bmVyA + + File's Owner -1 - + First Responder -3 - + Application @@ -1282,7 +1155,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ - + 2 @@ -1304,7 +1177,6 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ - @@ -1333,20 +1205,15 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ - - 12 - - - 89 - + 93 - + 66 @@ -1358,7 +1225,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ - + Pending view @@ -1372,7 +1239,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ - + Action view @@ -1521,7 +1388,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ 195 - + 199 @@ -1531,7 +1398,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ - + Muha File view box @@ -1736,10 +1603,8 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ YES - + YES - -1.IBPluginDependency - -2.IBPluginDependency -3.IBPluginDependency 1.IBEditorWindowLastContentRect 1.IBPluginDependency @@ -1749,18 +1614,19 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ 1.editorWindowContentRectSynchronizationRect 10.IBPluginDependency 11.IBPluginDependency - 12.IBPluginDependency 186.IBPluginDependency 187.IBPluginDependency 188.IBPluginDependency 189.IBPluginDependency - 195.IBPluginDependency 199.CustomClassName 199.IBEditorWindowLastContentRect 199.IBPluginDependency 2.IBPluginDependency 200.IBPluginDependency 201.IBPluginDependency + 202.IBPluginDependency + 203.IBPluginDependency + 204.IBPluginDependency 205.IBPluginDependency 206.IBPluginDependency 207.IBPluginDependency @@ -1769,6 +1635,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ 210.IBPluginDependency 211.IBPluginDependency 212.IBPluginDependency + 213.IBPluginDependency 214.IBPluginDependency 215.IBPluginDependency 216.IBPluginDependency @@ -1789,7 +1656,6 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ 57.IBPluginDependency 58.IBPluginDependency 59.IBPluginDependency - 6.IBPluginDependency 60.IBPluginDependency 61.IBPluginDependency 62.IBPluginDependency @@ -1805,20 +1671,15 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ 73.IBPluginDependency 74.IBPluginDependency 75.IBPluginDependency - 8.IBPluginDependency 89.IBPluginDependency - 9.IBPluginDependency - 93.IBPluginDependency YES com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilderKit - com.apple.InterfaceBuilderKit {{231, 302}, {483, 299}} com.apple.InterfaceBuilder.CocoaPlugin {{231, 302}, {483, 299}} - + {196, 240} {{202, 428}, {480, 270}} com.apple.InterfaceBuilder.CocoaPlugin @@ -1827,8 +1688,6 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin FileViewBox {{107, 714}, {314, 43}} com.apple.InterfaceBuilder.CocoaPlugin @@ -1855,13 +1714,13 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{164, 601}, {617, 0}} com.apple.InterfaceBuilder.CocoaPlugin - {{706, 544}, {285, 51}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + {{164, 601}, {617, 0}} com.apple.InterfaceBuilder.CocoaPlugin + {{706, 544}, {285, 51}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -1869,10 +1728,10 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{751, 717}, {284, 41}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + {{751, 717}, {284, 41}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -1887,9 +1746,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ YES - - YES - + YES @@ -1897,9 +1754,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ YES - - YES - + YES @@ -1915,7 +1770,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ NSBox YES - + YES removeItem: revealItem: @@ -1930,7 +1785,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ YES - + YES disclosure label @@ -1965,6 +1820,13 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ NSViewController + + MZWriteQueue + + IBProjectSource + App/src/MZWriteQueue-Private.h + + MZWriteQueue NSObject @@ -1996,12 +1858,19 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ Framework/src/MetaData.h + + NSObject + + IBProjectSource + Framework/src/NSObject-ProtectedKeyValue.h + + QueueWindowController NSWindowController YES - + YES pauseResumeEncoding: startStopEncoding: @@ -2014,7 +1883,7 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ YES - + YES collectionView pauseBtn @@ -2033,8 +1902,803 @@ ELIAAAAAAAgACAAIAAgAAQABAAEAAQ - - 0 + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSArrayController + NSObjectController + + IBFrameworkSource + AppKit.framework/Headers/NSArrayController.h + + + + NSBox + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSBox.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSManagedObjectContext + NSObject + + IBFrameworkSource + CoreData.framework/Headers/NSManagedObjectContext.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAlert.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAnimation.h + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSBrowser.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSComboBox.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSComboBoxCell.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDatePickerCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDrawer.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSImage.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSRuleEditor.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSound.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSpeechRecognizer.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSpeechSynthesizer.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSplitView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTabView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSText.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTextStorage.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTextView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTokenField.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTokenFieldCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbar.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSWindow.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSMetadata.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSNetServices.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPort.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSSpellServer.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSStream.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSXMLParser.h + + + + NSObject + + IBFrameworkSource + ImageKit.framework/Headers/IKImageBrowserView.h + + + + NSObject + + IBFrameworkSource + ImageKit.framework/Headers/ImageKitDeprecated.h + + + + NSObject + + IBFrameworkSource + PDFKit.framework/Headers/PDFDocument.h + + + + NSObject + + IBFrameworkSource + PDFKit.framework/Headers/PDFView.h + + + + NSObject + + IBFrameworkSource + QuartzComposer.framework/Headers/QCCompositionParameterView.h + + + + NSObject + + IBFrameworkSource + QuartzComposer.framework/Headers/QCCompositionPickerView.h + + + + NSObject + + IBFrameworkSource + QuartzFilters.framework/Headers/QuartzFilterManager.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUAppcast.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUUpdater.h + + + + NSObjectController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSObjectController.h + + + + NSProgressIndicator + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSProgressIndicator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSScrollView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSScrollView.h + + + + NSScroller + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSScroller.h + + + + NSTabView + NSView + + + + NSTabViewItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTabViewItem.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSToolbar + NSObject + + + + NSToolbarItem + NSObject + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + NSViewController + NSResponder + + view + NSView + + + IBFrameworkSource + AppKit.framework/Headers/NSViewController.h + + + + NSWindow + + + + NSWindow + NSResponder + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSWindowScripting.h + + + + NSWindowController + NSResponder + + showWindow: + id + + + IBFrameworkSource + AppKit.framework/Headers/NSWindowController.h + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES ../../MetaZ.xcodeproj 3 diff --git a/App/English.lproj/VideoType.strings b/App/English.lproj/VideoType.strings new file mode 100644 index 0000000000000000000000000000000000000000..400130c620a0724051fa31b227aa3ebcd3c272f4 GIT binary patch literal 718 zcmb7?u?~VT7=&-;DH=x?9>6&0;D(C^XA}|%7z~2OmsdYULm?#8p-FQ`zyEsW`S3NB zQK(e05*6$#-F0SfaC~{1XrUT6#oeA*ePe%hM{v@+zoPgs++)Jc(YD{WVGr)_ln@GA1I$elxO(+<1t^er72 hHI$ph?d$Hu9eE?#&3LOA_V3N#eUzPlZ2Ze+>I { @@ -31,6 +32,7 @@ NSImageView* imageView; ImageWindowController* imageEditController; PreferencesWindowController* prefController; + PresetsWindowController* presetsController; NSProgressIndicator* searchIndicator; NSArrayController* searchController; NSSearchField* searchField; diff --git a/App/src/AppController.m b/App/src/AppController.m index 9d684f2c..2ef92256 100644 --- a/App/src/AppController.m +++ b/App/src/AppController.m @@ -166,6 +166,7 @@ -(void)dealloc { [imageView release]; [imageEditController release]; [prefController release]; + [presetsController release]; [searchIndicator release]; [searchController release]; [searchField release]; @@ -484,7 +485,24 @@ - (IBAction)openDocument:(id)sender { - (IBAction)showPresets:(id)sender { - + if(!presetsController) + { + presetsController = [[PresetsWindowController alloc] initWithController:filesController]; + [[NSNotificationCenter defaultCenter] + addObserver:self + selector:@selector(presetsDidClose:) + name:NSWindowWillCloseNotification + object:[presetsController window]]; + [[presetsController window] setFrameUsingName:@"presetsPanel"]; + [presetsController showWindow:self]; + } + else + { + [presetsController retain]; + [presetsController close]; + [presetsController release]; + } + } #pragma mark - user interface validation @@ -561,6 +579,17 @@ - (void)preferencesDidClose:(NSNotification *)note prefController = nil; } +- (void)presetsDidClose:(NSNotification *)note +{ + [[note object] saveFrameUsingName:@"presetsPanel"]; + [[NSNotificationCenter defaultCenter] + removeObserver:self + name:NSWindowWillCloseNotification + object:[note object]]; + [presetsController release]; + presetsController = nil; +} + - (void)openPanelDidEnd:(NSOpenPanel *)oPanel returnCode:(int)returnCode contextInfo:(void *)contextInfo { if (returnCode == NSOKButton) [[MZMetaLoader sharedLoader] loadFromFiles: [oPanel filenames]]; diff --git a/App/src/FilesTableView.m b/App/src/FilesTableView.m index 7afc9cf4..02520a2a 100644 --- a/App/src/FilesTableView.m +++ b/App/src/FilesTableView.m @@ -242,7 +242,7 @@ - (BOOL)tableView:(NSTableView *)tv writeRowsWithIndexes:(NSIndexSet *)rowIndexe - (NSDragOperation)tableView:(NSTableView*)tv validateDrop:(id )info - proposedRow:(int)row + proposedRow:(NSInteger)row proposedDropOperation:(NSTableViewDropOperation)op { if(op==NSTableViewDropOn) @@ -285,7 +285,7 @@ - (NSDragOperation)tableView:(NSTableView*)tv } - (BOOL)tableView:(NSTableView *)aTableView acceptDrop:(id )info - row:(int)row dropOperation:(NSTableViewDropOperation)operation + row:(NSInteger)row dropOperation:(NSTableViewDropOperation)operation { NSPasteboard* pboard = [info draggingPasteboard]; NSArray *types = [NSArray arrayWithObjects:MZFilesTableRows, diff --git a/App/src/MGCollectionViewOrig.m b/App/src/MGCollectionViewOrig.m index d07371d4..d51fec77 100644 --- a/App/src/MGCollectionViewOrig.m +++ b/App/src/MGCollectionViewOrig.m @@ -55,14 +55,14 @@ - (void)moveSelection: (BOOL)moveUp - (void)scrollToItem: (MGCollectionViewOrigItem *)item; - (void)maintainNonEmptySelection: (NSUInteger)index; - (void)removeItemsAtIndexes:(NSIndexSet *)indexes; -- (int)indexFromDragTarget: (NSView *)targetView +- (NSInteger)indexFromDragTarget: (NSView *)targetView draggingInfo: (id)draggingInfo; - (void)setDragTarget: (NSView *)targetView draggingInfo: (id)draggingInfo; -- (void)setIndex: (int)index +- (void)setIndex: (NSInteger)index isDragTarget: (BOOL)isDragTarget; - (id)target; -- (int)dragTargetIndex; +- (NSInteger)dragTargetIndex; - (void)maximizeViewWidth: (id)sender; - (void)onKeyWindowChanged:(NSNotification *)notification; - (void)onKeyWindowUpdated:(NSNotification *)notification; @@ -717,7 +717,7 @@ - (BOOL)prepareForDragOperation: (id)sender - (BOOL)performDragOperation: (id)sender { - int destIndex = [self dragTargetIndex]; + NSInteger destIndex = [self dragTargetIndex]; ASSERT(destIndex != NSNotFound); [self setDragTarget:nil draggingInfo:sender]; @@ -781,10 +781,10 @@ - (NSDragOperation)draggingSourceOperationMaskForLocal: (BOOL)isLocal } -- (int)indexFromDragTarget: (NSView *)targetView +- (NSInteger)indexFromDragTarget: (NSView *)targetView draggingInfo: (id)draggingInfo { - int index = NSNotFound; + NSInteger index = NSNotFound; if (targetView && [targetView isKindOfClass:[MGCollectionViewOrigItem class]]) { index = [items indexOfObject:targetView]; @@ -818,13 +818,13 @@ - (void)setDragTarget: (NSView *)targetView } -- (void)setIndex: (int)index +- (void)setIndex: (NSInteger)index isDragTarget: (BOOL)isDragTarget { if (index != NSNotFound) { DragTargetType dragTargetType = isDragTarget ? DragTargetType_Top : DragTargetType_None; - int actualIndex = index; + NSInteger actualIndex = index; if (actualIndex == [items count]) { actualIndex = [items count] - 1; if (isDragTarget) { @@ -842,10 +842,10 @@ - (void)setIndex: (int)index } -- (int)dragTargetIndex +- (NSInteger)dragTargetIndex { - int count = [items count]; - int i; + NSInteger count = [items count]; + NSInteger i; for (i = 0; i < count; i++) { MGCollectionViewOrigItem *item = [items objectAtIndex:i]; if ([item dragTargetType] == DragTargetType_Top) { diff --git a/App/src/MZMetaLoader.m b/App/src/MZMetaLoader.m index 25509841..5378847c 100644 --- a/App/src/MZMetaLoader.m +++ b/App/src/MZMetaLoader.m @@ -211,14 +211,14 @@ - (BOOL)loadFromFiles:(NSArray *)fileNames toIndexes:(NSIndexSet*)indexes initWithFrame:NSMakeRect(0, 0, 145, 25) pullsDown:NO]; - [sel addItemWithTitle:NSLocalizedString(@"Movie", @"Video type")]; - [sel addItemWithTitle:NSLocalizedString(@"Normal", @"Video type")]; - [sel addItemWithTitle:NSLocalizedString(@"Audiobook", @"Video type")]; - [sel addItemWithTitle:NSLocalizedString(@"Whacked Bookmark", @"Video type")]; - [sel addItemWithTitle:NSLocalizedString(@"Music Video", @"Video type")]; - [sel addItemWithTitle:NSLocalizedString(@"Short Film", @"Video type")]; - [sel addItemWithTitle:NSLocalizedString(@"TV Show", @"Video type")]; - [sel addItemWithTitle:NSLocalizedString(@"Booklet", @"Video type")]; + [sel addItemWithTitle:NSLocalizedStringFromTable(@"Movie", @"VideoType", @"Video type")]; + [sel addItemWithTitle:NSLocalizedStringFromTable(@"Normal", @"VideoType", @"Video type")]; + [sel addItemWithTitle:NSLocalizedStringFromTable(@"Audiobook", @"VideoType", @"Video type")]; + [sel addItemWithTitle:NSLocalizedStringFromTable(@"Whacked Bookmark", @"VideoType", @"Video type")]; + [sel addItemWithTitle:NSLocalizedStringFromTable(@"Music Video", @"VideoType", @"Video type")]; + [sel addItemWithTitle:NSLocalizedStringFromTable(@"Short Film", @"VideoType", @"Video type")]; + [sel addItemWithTitle:NSLocalizedStringFromTable(@"TV Show", @"VideoType", @"Video type")]; + [sel addItemWithTitle:NSLocalizedStringFromTable(@"Booklet", @"VideoType", @"Video type")]; if(lastSelection>=0) [sel selectItemAtIndex:lastSelection]; diff --git a/App/src/MZPresets.h b/App/src/MZPresets.h index bef52830..48872f00 100644 --- a/App/src/MZPresets.h +++ b/App/src/MZPresets.h @@ -14,9 +14,10 @@ NSDictionary* values; } ++ (id)presetWithName:(NSString *)name values:(NSDictionary *)values; - (id)initWithName:(NSString *)name values:(NSDictionary *)values; -@property (readonly, retain) NSString* name; +@property (retain) NSString* name; @property (readonly, retain) NSDictionary* values; - (void)applyToObject:(id)object withPrefix:(NSString *)prefix; @@ -33,6 +34,10 @@ @property (readonly,retain) NSArray* presets; +- (void)removeObjectFromPresetsAtIndex:(NSUInteger)index; +- (void)insertObject:(MZPreset *)aPreset inPresetsAtIndex:(NSUInteger)index; + +- (void)addObject:(MZPreset *)preset; - (NSArray *)loadFromMetaXWithError:(NSError **)error; - (BOOL)loadWithError:(NSError **)error; - (BOOL)saveWithError:(NSError **)error; diff --git a/App/src/MZPresets.m b/App/src/MZPresets.m index 26430413..2e4e8242 100644 --- a/App/src/MZPresets.m +++ b/App/src/MZPresets.m @@ -11,6 +11,11 @@ @implementation MZPreset ++ (id)presetWithName:(NSString *)name values:(NSDictionary *)values +{ + return [[[self alloc] initWithName:name values:values] autorelease]; +} + - (id)initWithName:(NSString *)theName values:(NSDictionary *)theValues { self = [super init]; @@ -32,6 +37,13 @@ - (void)dealloc @synthesize name; @synthesize values; +- (void)setName:(NSString *)newName +{ + [name release]; + name = [newName retain]; + [[MZPresets sharedPresets] saveWithError:NULL]; +} + - (void)applyToObject:(id)object withPrefix:(NSString *)prefix { for(NSString* key in [values allKeys]) @@ -39,6 +51,8 @@ - (void)applyToObject:(id)object withPrefix:(NSString *)prefix MZTag* tag = [MZTag tagForIdentifier:key]; id value = [values objectForKey:key]; value = [tag convertObjectForRetrival:value]; + NSString* keyPath = [prefix stringByAppendingString:key]; + [object setValue:value forKeyPath:keyPath]; } } @@ -140,6 +154,30 @@ -(void)dealloc @synthesize presets; +- (void)removeObjectFromPresetsAtIndex:(NSUInteger)index +{ + [self willChangeValueForKey:@"presets"]; + [presets removeObjectAtIndex:index]; + [self saveWithError:NULL]; + [self didChangeValueForKey:@"presets"]; +} + +- (void)insertObject:(MZPreset *)aPreset inPresetsAtIndex:(NSUInteger)index +{ + [self willChangeValueForKey:@"presets"]; + [presets insertObject:aPreset atIndex:index]; + [self saveWithError:NULL]; + [self didChangeValueForKey:@"presets"]; +} + +- (void)addObject:(MZPreset *)preset +{ + [self willChangeValueForKey:@"presets"]; + [presets addObject:preset]; + [self saveWithError:NULL]; + [self didChangeValueForKey:@"presets"]; +} + - (BOOL)loadWithError:(NSError **)error { NSFileManager *mgr = [NSFileManager defaultManager]; diff --git a/App/src/PresetsWindowController.h b/App/src/PresetsWindowController.h index 79d26d4a..044af97e 100644 --- a/App/src/PresetsWindowController.h +++ b/App/src/PresetsWindowController.h @@ -13,9 +13,21 @@ { NSArrayController* filesController; NSArrayController* presetsController; + NSTableView* presetsView; + NSSegmentedControl* segmentedControl; } +- (id)initWithController:(NSArrayController*)controller; +@property (nonatomic, retain) IBOutlet NSArrayController* filesController; +@property (nonatomic, retain) IBOutlet NSArrayController* presetsController; +@property (nonatomic, retain) IBOutlet NSTableView* presetsView; +@property (nonatomic, retain) IBOutlet NSSegmentedControl* segmentedControl; + +- (void)checkSegmentEnabled; + +- (IBAction)segmentClicked:(id)sender; - (IBAction)applyPreset:(id)sender; - (IBAction)addPreset:(id)sender; +- (IBAction)removePreset:(id)sender; @end diff --git a/App/src/PresetsWindowController.m b/App/src/PresetsWindowController.m index 9a3cbe0e..8e9bdf71 100644 --- a/App/src/PresetsWindowController.m +++ b/App/src/PresetsWindowController.m @@ -11,6 +11,99 @@ @implementation PresetsWindowController +- (id)initWithController:(NSArrayController*)controller +{ + self = [super initWithWindowNibName:@"PresetsPanel"]; + if(self) + filesController = [controller retain]; + return self; +} + + +- (void)dealloc +{ + [filesController removeObserver:self forKeyPath:@"selection.providedTags"]; + [presetsController removeObserver:self forKeyPath:@"selection.name"]; + [presetsController release]; + [filesController release]; + [presetsView release]; + [super dealloc]; +} + +- (void)awakeFromNib +{ + NSArray* sorters = [presetsController sortDescriptors]; + if(sorters == nil || [sorters count] == 0) + { + NSTableColumn* column = [[presetsView tableColumns] objectAtIndex:0]; + [presetsController setSortDescriptors:[NSArray arrayWithObject:[column sortDescriptorPrototype]]]; + } + [filesController addObserver:self + forKeyPath:@"selection.providedTags" + options:0 + context:nil]; + [presetsController addObserver:self + forKeyPath:@"selection.name" + options:0 + context:nil]; + [self checkSegmentEnabled]; +} + +@synthesize presetsController; +@synthesize filesController; +@synthesize presetsView; +@synthesize segmentedControl; + +- (void)checkSegmentEnabled +{ + NSArray* tags = [filesController protectedValueForKeyPath:@"selection.providedTags"]; + id value = [presetsController protectedValueForKeyPath:@"selection.name"]; + + if(!tags || tags == NSNoSelectionMarker || tags == NSMultipleValuesMarker || tags == NSNotApplicableMarker) + { + [segmentedControl setEnabled:NO forSegment:0]; + [segmentedControl setEnabled:NO forSegment:2]; + } + else + { + [segmentedControl setEnabled:YES forSegment:0]; + if(value == NSNoSelectionMarker) + [segmentedControl setEnabled:NO forSegment:2]; + else + [segmentedControl setEnabled:YES forSegment:2]; + } + + if(value == NSNoSelectionMarker) + [segmentedControl setEnabled:NO forSegment:1]; + else + [segmentedControl setEnabled:YES forSegment:1]; +} + +#pragma mark - as observer + +- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context +{ + if(([keyPath isEqual:@"selection.providedTags"] && object == filesController) || + ([keyPath isEqual:@"selection.name"] && object == presetsController)) + { + [self checkSegmentEnabled]; + } + +} + +#pragma mark - actions + +- (IBAction)segmentClicked:(id)sender +{ + int clickedSegment = [sender selectedSegment]; + if(clickedSegment == 0) + [self addPreset:sender]; + else if(clickedSegment == 1) + [self removePreset:sender]; + else if(clickedSegment == 2) + [self applyPreset:sender]; +} + - (IBAction)applyPreset:(id)sender { MZPreset* preset = [presetsController valueForKeyPath:@"selection.self"]; @@ -20,6 +113,42 @@ - (IBAction)applyPreset:(id)sender - (IBAction)addPreset:(id)sender { + NSArray* tags = [filesController protectedValueForKeyPath:@"selection.providedTags"]; + if(!tags || tags == NSNoSelectionMarker || tags == NSMultipleValuesMarker || tags == NSNotApplicableMarker) + return; + NSMutableDictionary* values = [NSMutableDictionary dictionaryWithCapacity:[tags count]]; + for(MZTag* tag in tags) + { + NSString* aKey = [@"selection." stringByAppendingString:[tag identifier]]; + NSString* changedKey = [aKey stringByAppendingString:@"Changed"]; + id changed = [filesController protectedValueForKeyPath:changedKey]; + if([changed isKindOfClass:[NSNumber class]] && [changed boolValue]) + { + id value = [filesController valueForKeyPath:aKey]; + if(!(value == NSMultipleValuesMarker || + value == NSNoSelectionMarker || + value == NSNotApplicableMarker)) + { + [values setObject:[tag convertObjectForStorage:value] forKey:[tag identifier]]; + } + } + } + MZPreset* preset = [MZPreset + presetWithName:NSLocalizedString(@"New preset", @"Default preset name") + values:values]; + //[presetsController setSortDescriptors:nil]; + [presetsController addObject:preset]; + //[presetsController rearrangeObjects]; + //[[MZPresets sharedPresets] addObject:preset]; + NSInteger idx = [[presetsController arrangedObjects] indexOfObject:preset]; + //NSInteger rows = [presetsView numberOfRows]; + [presetsView selectRowIndexes:[NSIndexSet indexSetWithIndex:idx] byExtendingSelection:NO]; + [presetsView editColumn:0 row:idx withEvent:nil select:YES]; +} + +- (IBAction)removePreset:(id)sender +{ + [presetsController remove:sender]; } @end diff --git a/App/src/QueueController.h b/App/src/QueueController.h index 338a59eb..3fbdf2f0 100644 --- a/App/src/QueueController.h +++ b/App/src/QueueController.h @@ -15,21 +15,16 @@ NSWindowController* controller; MZWriteQueue* writeQueue; NSToolbarItem* playBtn; - NSToolbarItem* pauseBtn; NSToolbarItem* playBtn2; - NSToolbarItem* pauseBtn2; } @property (nonatomic, retain) IBOutlet NSArrayController* filesController; @property (nonatomic, retain) IBOutlet NSWindow* mainWindow; @property (nonatomic, retain) IBOutlet NSToolbarItem* playBtn; -@property (nonatomic, retain) IBOutlet NSToolbarItem* pauseBtn; @property (nonatomic, retain) NSToolbarItem* playBtn2; -@property (nonatomic, retain) NSToolbarItem* pauseBtn2; - (IBAction)addToQueue:(id)sender; - (IBAction)showQueue:(id)sender; - (IBAction)startStopEncoding:(id)sender; -- (IBAction)pauseResumeEncoding:(id)sender; - (void)updateButtons; diff --git a/App/src/QueueController.m b/App/src/QueueController.m index 355f6f2f..0551881c 100644 --- a/App/src/QueueController.m +++ b/App/src/QueueController.m @@ -20,9 +20,7 @@ @implementation QueueController @synthesize filesController; @synthesize mainWindow; @synthesize playBtn; -@synthesize pauseBtn; @synthesize playBtn2; -@synthesize pauseBtn2; -(id)init { @@ -41,10 +39,8 @@ -(void)dealloc [self unregisterAsObserver]; [writeQueue release]; [playBtn2 release]; - [pauseBtn2 release]; [controller release]; [playBtn release]; - [pauseBtn release]; [filesController release]; [super dealloc]; } @@ -66,44 +62,29 @@ - (void)updateButtons { RunStatus status = [writeQueue status]; NSString* playLabel; - NSString* pauseLabel; NSString* playImage; - NSString* pauseImage; switch (status) { case QueueStopped: playLabel = NSLocalizedString(@"Start", @"Label for start button"); - pauseLabel = NSLocalizedString(@"Pause", @"Label for pause button"); playImage = @"Play"; - pauseImage = @"Pause"; break; case QueueRunning: playLabel = NSLocalizedString(@"Stop", @"Label for stop button"); - pauseLabel = NSLocalizedString(@"Pause", @"Label for pause button"); playImage = @"Stop"; - pauseImage = @"Pause"; break; case QueuePaused: playLabel = NSLocalizedString(@"Stop", @"Label for stop button"); - pauseLabel = NSLocalizedString(@"Start", @"Label for start button"); playImage = @"Stop"; - pauseImage = @"Play"; break; } [playBtn setImage:[NSImage imageNamed:playImage]]; [playBtn setLabel:playLabel]; - [pauseBtn setImage:[NSImage imageNamed:pauseImage]]; - [pauseBtn setLabel:pauseLabel]; if(playBtn2) { [playBtn2 setImage:[NSImage imageNamed:playImage]]; [playBtn2 setLabel:playLabel]; } - if(pauseBtn2) - { - [pauseBtn2 setImage:[NSImage imageNamed:pauseImage]]; - [pauseBtn setLabel:pauseLabel]; - } } #pragma mark - observation callbacks @@ -171,8 +152,6 @@ - (void)windowDidClose:(NSNotification *)note object:[note object]]; [playBtn2 release]; playBtn2 = nil; - [pauseBtn2 release]; - pauseBtn2 = nil; [controller release]; controller = nil; } @@ -243,12 +222,4 @@ - (IBAction)startStopEncoding:(id)sender } } -- (IBAction)pauseResumeEncoding:(id)sender -{ - if([writeQueue paused]) - [writeQueue resume]; - else - [writeQueue pause]; -} - @end diff --git a/App/src/QueueWindowController.h b/App/src/QueueWindowController.h index 59d58b5b..5e5473b5 100644 --- a/App/src/QueueWindowController.h +++ b/App/src/QueueWindowController.h @@ -17,10 +17,8 @@ @property (readonly) QueueController* controller; @property (nonatomic, retain) IBOutlet MGCollectionView* collectionView; @property (nonatomic, retain) IBOutlet NSToolbarItem* playBtn; -@property (nonatomic, retain) IBOutlet NSToolbarItem* pauseBtn; - (IBAction)startStopEncoding:(id)sender; -- (IBAction)pauseResumeEncoding:(id)sender; - (void)tabView:(NSTabView *)tabView didSelectTabViewItem:(NSTabViewItem *)tabViewItem; @end diff --git a/App/src/QueueWindowController.m b/App/src/QueueWindowController.m index 96f7db03..7259b625 100644 --- a/App/src/QueueWindowController.m +++ b/App/src/QueueWindowController.m @@ -41,17 +41,6 @@ - (void)setPlayBtn:(NSToolbarItem *)newBtn [controller updateButtons]; } -- (NSToolbarItem *)pauseBtn -{ - return [controller pauseBtn2]; -} - -- (void)setPauseBtn:(NSToolbarItem *)newBtn -{ - [controller setPauseBtn2:newBtn]; - [controller updateButtons]; -} - - (BOOL)validateUserInterfaceItem:(id < NSValidatedUserInterfaceItem >)anItem { return [controller validateUserInterfaceItem:anItem]; @@ -62,11 +51,6 @@ - (IBAction)startStopEncoding:(id)sender [controller startStopEncoding:sender]; } -- (IBAction)pauseResumeEncoding:(id)sender -{ - [controller pauseResumeEncoding:sender]; -} - - (void)tabView:(NSTabView *)aTabView didSelectTabViewItem:(NSTabViewItem *)tabViewItem { NSView* box = [[aTabView superview] superview]; diff --git a/Framework/src/MZConstants.h b/Framework/src/MZConstants.h index 1f14c95e..2e757c8e 100644 --- a/Framework/src/MZConstants.h +++ b/Framework/src/MZConstants.h @@ -129,6 +129,8 @@ typedef enum MZ_PGR_Rating, MZ_AO_Rating, MZ_Unrated_NZTV_Rating, + + MZRatingNotFound = NSNotFound } MZRating; // Info diff --git a/Framework/src/MZRemoteData.m b/Framework/src/MZRemoteData.m index 4c276a86..636b05f2 100644 --- a/Framework/src/MZRemoteData.m +++ b/Framework/src/MZRemoteData.m @@ -184,8 +184,10 @@ - (void)main NSImage* image = [[NSImage alloc] initWithContentsOfURL:owner.url]; if(!image) { + /* NSString* str = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease]; + */ NSLog(@"Bad image url: %@", [owner.url absoluteString]);//, str); } [owner loadedData:data]; diff --git a/Framework/src/MZTag.m b/Framework/src/MZTag.m index 28708fe9..4a0939be 100644 --- a/Framework/src/MZTag.m +++ b/Framework/src/MZTag.m @@ -524,14 +524,14 @@ - (id)init - (NSCell *)editorCell { NSPopUpButtonCell* cell = [[[NSPopUpButtonCell alloc] initTextCell:@"" pullsDown:NO] autorelease]; - [cell addItemWithTitle:NSLocalizedString(@"Movie", @"Video type") tag:MZMovieVideoType]; - [cell addItemWithTitle:NSLocalizedString(@"Normal", @"Video type") tag:MZNormalVideoType]; - [cell addItemWithTitle:NSLocalizedString(@"Audiobook", @"Video type") tag:MZAudiobookVideoType]; - [cell addItemWithTitle:NSLocalizedString(@"Whacked Bookmark", @"Video type") tag:MZWhackedBookmarkVideoType]; - [cell addItemWithTitle:NSLocalizedString(@"Music Video", @"Video type") tag:MZMusicVideoType]; - [cell addItemWithTitle:NSLocalizedString(@"Short Film", @"Video type") tag:MZShortFilmVideoType]; - [cell addItemWithTitle:NSLocalizedString(@"TV Show", @"Video type") tag:MZTVShowVideoType]; - [cell addItemWithTitle:NSLocalizedString(@"Booklet", @"Video type") tag:MZBookletVideoType]; + [cell addItemWithTitle:NSLocalizedStringFromTable(@"Movie", @"VideoType", @"Video type") tag:MZMovieVideoType]; + [cell addItemWithTitle:NSLocalizedStringFromTable(@"Normal", @"VideoType", @"Video type") tag:MZNormalVideoType]; + [cell addItemWithTitle:NSLocalizedStringFromTable(@"Audiobook", @"VideoType", @"Video type") tag:MZAudiobookVideoType]; + [cell addItemWithTitle:NSLocalizedStringFromTable(@"Whacked Bookmark", @"VideoType", @"Video type") tag:MZWhackedBookmarkVideoType]; + [cell addItemWithTitle:NSLocalizedStringFromTable(@"Music Video", @"VideoType", @"Video type") tag:MZMusicVideoType]; + [cell addItemWithTitle:NSLocalizedStringFromTable(@"Short Film", @"VideoType", @"Video type") tag:MZShortFilmVideoType]; + [cell addItemWithTitle:NSLocalizedStringFromTable(@"TV Show", @"VideoType", @"Video type") tag:MZTVShowVideoType]; + [cell addItemWithTitle:NSLocalizedStringFromTable(@"Booklet", @"VideoType", @"Video type") tag:MZBookletVideoType]; return cell; } diff --git a/Framework/src/MetaEdits.m b/Framework/src/MetaEdits.m index c4ede44e..b10b45c5 100644 --- a/Framework/src/MetaEdits.m +++ b/Framework/src/MetaEdits.m @@ -197,6 +197,7 @@ -(void)setterChanged:(BOOL)aValue forKey:(NSString *)aKey NSString* actionKey = [tag localizedName]; if(!actionKey) actionKey = aKey; + [[self undoManager] setActionName: [NSString stringWithFormat: NSLocalizedString(@"Set %@", @"Undo set action"), diff --git a/Framework/src/MetaZKit.h b/Framework/src/MetaZKit.h index 0fbcd584..9973eb77 100644 --- a/Framework/src/MetaZKit.h +++ b/Framework/src/MetaZKit.h @@ -27,3 +27,4 @@ #import #import #import +#import \ No newline at end of file diff --git a/Framework/src/NSArray-Mapping.m b/Framework/src/NSArray-Mapping.m index 7eeefd0d..638053e8 100644 --- a/Framework/src/NSArray-Mapping.m +++ b/Framework/src/NSArray-Mapping.m @@ -77,7 +77,7 @@ - (NSArray *)arrayByPerformingProtectedKey:(NSString *)key return [NSArray arrayWithArray:ret]; } -- (NSArray *)arrayByPerformingKeyProtectedPath:(NSString *)keyPath +- (NSArray *)arrayByPerformingProtectedKeyPath:(NSString *)keyPath { NSMutableArray* ret = [NSMutableArray arrayWithCapacity:[self count]]; for(id obj in self) diff --git a/Framework/src/NSXMLNode-MZExtensions.h b/Framework/src/NSXMLNode-MZExtensions.h new file mode 100644 index 00000000..c3bc4b29 --- /dev/null +++ b/Framework/src/NSXMLNode-MZExtensions.h @@ -0,0 +1,16 @@ +// +// NSXMLNode-Accessors.h +// MetaZ +// +// Created by Brian Olsen on 12/11/09. +// Copyright 2009 Maven-Group. All rights reserved. +// + +#import + + +@interface NSXMLNode (MZExtensions) + +- (NSString *)stringForXPath:(NSString *)xpath error:(NSError **)error; + +@end diff --git a/Framework/src/NSXMLNode-MZExtensions.m b/Framework/src/NSXMLNode-MZExtensions.m new file mode 100644 index 00000000..b04bd08f --- /dev/null +++ b/Framework/src/NSXMLNode-MZExtensions.m @@ -0,0 +1,24 @@ +// +// NSXMLNode-Accessors.m +// MetaZ +// +// Created by Brian Olsen on 12/11/09. +// Copyright 2009 Maven-Group. All rights reserved. +// + +#import "NSXMLNode-MZExtensions.h" +#import "NSArray-Mapping.h" + +@implementation NSXMLNode (MZExtensions) + +- (NSString *)stringForXPath:(NSString *)xpath error:(NSError **)error +{ + NSArray* nodes = [self nodesForXPath:xpath error:error]; + if(!nodes) + return nil; + return [[nodes arrayByPerformingSelector:@selector(stringValue)] + componentsJoinedByString:@", "]; + +} + +@end diff --git a/MetaZ.xcodeproj/project.pbxproj b/MetaZ.xcodeproj/project.pbxproj index a42c3e76..40ac22a4 100644 --- a/MetaZ.xcodeproj/project.pbxproj +++ b/MetaZ.xcodeproj/project.pbxproj @@ -56,6 +56,8 @@ 1B92BFBB1089F9060057EFD7 /* SearchMeta.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B92BFBA1089F9060057EFD7 /* SearchMeta.m */; }; 1B92C0A3108A23BA0057EFD7 /* NSUserDefaults-KeyPath.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B92C0A2108A23BA0057EFD7 /* NSUserDefaults-KeyPath.m */; }; 1B92C0EB108A31680057EFD7 /* SearchTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B92C0EA108A31680057EFD7 /* SearchTableView.m */; }; + 1B99355010AC818300E78D2D /* NSXMLNode-MZExtensions.h in Headers */ = {isa = PBXBuildFile; fileRef = 1B99354E10AC818300E78D2D /* NSXMLNode-MZExtensions.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 1B99355110AC818300E78D2D /* NSXMLNode-MZExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B99354F10AC818300E78D2D /* NSXMLNode-MZExtensions.m */; }; 1B9B393F106C0FA200928C83 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1B9B393D106C0FA200928C83 /* Localizable.strings */; }; 1BA325CD10545BBB00276F57 /* MetaZKit.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 1BA325C410545ACA00276F57 /* MetaZKit.framework */; }; 1BA325E110545CD900276F57 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; @@ -70,6 +72,9 @@ 1BB6C11F1052B1C1001D3D1D /* Sparkle.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 1BB6C10A1052B154001D3D1D /* Sparkle.framework */; }; 1BBB39A91087083600C9E17F /* MZPriorObserverFix.h in Headers */ = {isa = PBXBuildFile; fileRef = 1BBB39A71087083600C9E17F /* MZPriorObserverFix.h */; settings = {ATTRIBUTES = (Public, ); }; }; 1BBB39AA1087083600C9E17F /* MZPriorObserverFix.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BBB39A81087083600C9E17F /* MZPriorObserverFix.m */; }; + 1BC0661910AE223A005C2A9F /* PresetsPanel.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1BC0661710AE223A005C2A9F /* PresetsPanel.xib */; }; + 1BC0665A10AE2E65005C2A9F /* VideoType.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1BC0665810AE2E65005C2A9F /* VideoType.strings */; }; + 1BC0671410AE44CA005C2A9F /* presets.png in Resources */ = {isa = PBXBuildFile; fileRef = 1BC0671310AE44CA005C2A9F /* presets.png */; }; 1BCC97021076B73C007EFF57 /* NSInvocation-Wrapping.h in Headers */ = {isa = PBXBuildFile; fileRef = 1BCC97001076B73C007EFF57 /* NSInvocation-Wrapping.h */; settings = {ATTRIBUTES = (Public, ); }; }; 1BCC97031076B73C007EFF57 /* NSInvocation-Wrapping.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BCC97011076B73C007EFF57 /* NSInvocation-Wrapping.m */; }; 1BCC98261076D1A3007EFF57 /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1BB6C10A1052B154001D3D1D /* Sparkle.framework */; }; @@ -285,6 +290,8 @@ 1B92C0A2108A23BA0057EFD7 /* NSUserDefaults-KeyPath.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSUserDefaults-KeyPath.m"; sourceTree = ""; }; 1B92C0E9108A31680057EFD7 /* SearchTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SearchTableView.h; sourceTree = ""; }; 1B92C0EA108A31680057EFD7 /* SearchTableView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SearchTableView.m; sourceTree = ""; }; + 1B99354E10AC818300E78D2D /* NSXMLNode-MZExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSXMLNode-MZExtensions.h"; sourceTree = ""; }; + 1B99354F10AC818300E78D2D /* NSXMLNode-MZExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSXMLNode-MZExtensions.m"; sourceTree = ""; }; 1B9B393E106C0FA200928C83 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = App/English.lproj/Localizable.strings; sourceTree = ""; }; 1B9B3AB4106CC14B00928C83 /* MetaZKit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MetaZKit.h; sourceTree = ""; }; 1BA325C410545ACA00276F57 /* MetaZKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaZKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -308,6 +315,9 @@ 1BB6C10A1052B154001D3D1D /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Sparkle.framework; sourceTree = SOURCE_ROOT; }; 1BBB39A71087083600C9E17F /* MZPriorObserverFix.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MZPriorObserverFix.h; sourceTree = ""; }; 1BBB39A81087083600C9E17F /* MZPriorObserverFix.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MZPriorObserverFix.m; sourceTree = ""; }; + 1BC0661810AE223A005C2A9F /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = App/English.lproj/PresetsPanel.xib; sourceTree = ""; }; + 1BC0665910AE2E65005C2A9F /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = App/English.lproj/VideoType.strings; sourceTree = ""; }; + 1BC0671310AE44CA005C2A9F /* presets.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = presets.png; path = App/resources/presets.png; sourceTree = ""; }; 1BCC97001076B73C007EFF57 /* NSInvocation-Wrapping.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSInvocation-Wrapping.h"; sourceTree = ""; }; 1BCC97011076B73C007EFF57 /* NSInvocation-Wrapping.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSInvocation-Wrapping.m"; sourceTree = ""; }; 1BCC990610771262007EFF57 /* FactorySettings.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = FactorySettings.plist; path = App/resources/FactorySettings.plist; sourceTree = ""; }; @@ -462,6 +472,8 @@ 1BEA718E10712A17004B1A7F /* NSArray-Mapping.m */, 1B92BC55108890090057EFD7 /* NSObject-ProtectedKeyValue.h */, 1B92BC56108890090057EFD7 /* NSObject-ProtectedKeyValue.m */, + 1B99354E10AC818300E78D2D /* NSXMLNode-MZExtensions.h */, + 1B99354F10AC818300E78D2D /* NSXMLNode-MZExtensions.m */, ); name = Classes; path = Framework/src; @@ -728,6 +740,8 @@ 29B97317FDCFA39411CA2CEA /* Resources */ = { isa = PBXGroup; children = ( + 1BC0671310AE44CA005C2A9F /* presets.png */, + 1BC0665810AE2E65005C2A9F /* VideoType.strings */, 1BD3D3FB108E694100BE6943 /* faded_cow_error.png */, 1BD3D3FC108E694100BE6943 /* faded_cow_fatal.png */, 1BD3D3FD108E694100BE6943 /* faded_cow_multiple.png */, @@ -753,6 +767,7 @@ 1BA3269E10546F4600276F57 /* MainMenu.xib */, 1BB6BF331050E5E2001D3D1D /* sparkle_public.pem */, 1BCC990610771262007EFF57 /* FactorySettings.plist */, + 1BC0661710AE223A005C2A9F /* PresetsPanel.xib */, ); name = Resources; sourceTree = ""; @@ -797,6 +812,7 @@ 1B92BB1C10876FBA0057EFD7 /* PureMetaEdits.h in Headers */, 1B92BC57108890090057EFD7 /* NSObject-ProtectedKeyValue.h in Headers */, 1BD3D2BB108CC5D700BE6943 /* MZRemoteData.h in Headers */, + 1B99355010AC818300E78D2D /* NSXMLNode-MZExtensions.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -958,6 +974,9 @@ 1BD3D3FE108E694100BE6943 /* faded_cow_error.png in Resources */, 1BD3D3FF108E694100BE6943 /* faded_cow_fatal.png in Resources */, 1BD3D400108E694100BE6943 /* faded_cow_multiple.png in Resources */, + 1BC0661910AE223A005C2A9F /* PresetsPanel.xib in Resources */, + 1BC0665A10AE2E65005C2A9F /* VideoType.strings in Resources */, + 1BC0671410AE44CA005C2A9F /* presets.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -976,7 +995,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/bash; - shellScript = "set -o errexit\n\nexport GITV=`/opt/local/bin/git log -n1 --pretty=oneline --format=%h`\ndefaults write \"$BUILT_PRODUCTS_DIR/$PROJECT_NAME.app/Contents/Info\" CFBundleVersion \"${GITV}\"\n\nif [ \"${CONFIGURATION}\" != \"Release\" ]; then exit; fi\n\nVERSION=$(defaults read \"$BUILT_PRODUCTS_DIR/$PROJECT_NAME.app/Contents/Info\" CFBundleShortVersionString)\nDOWNLOAD_BASE_URL=\"http://cloud.github.com/downloads/griff/metaz\"\nRELEASENOTES_URL=\"http://griff.github.com/metaz/release-notes.html#version-$VERSION\"\n\nARCHIVE_FILENAME=\"$PROJECT_NAME-$VERSION.zip\"\nDOWNLOAD_URL=\"$DOWNLOAD_BASE_URL/$ARCHIVE_FILENAME\"\nKEYCHAIN_PRIVKEY_NAME=\"MetaZ Sparkle Private\"\n\nWD=$PWD\ncd \"$BUILT_PRODUCTS_DIR\"\nrm -f \"$PROJECT_NAME\"*.zip\nditto -ck --keepParent \"$PROJECT_NAME.app\" \"$ARCHIVE_FILENAME\"\n\nditto -ck --keepParent \"$PROJECT_NAME.app.dSYM\" \"$PROJECT_NAME-$VERSION-$GITV+dYSM.zip\"\n\nSIZE=$(stat -f %z \"$ARCHIVE_FILENAME\")\nPUBDATE=$(date +\"%a, %d %b %G %T %z\")\nSIGNATURE=$(\n\topenssl dgst -sha1 -binary < \"$ARCHIVE_FILENAME\" \\\n\t| openssl dgst -dss1 -sign <(security find-generic-password -g -s \"$KEYCHAIN_PRIVKEY_NAME\" 2>&1 1>/dev/null | perl -pe '($_) = /\"(.+)\"/; s/\\\\012/\\n/g') \\\n\t| openssl enc -base64\n)\n\n[ $SIGNATURE ] || { echo Unable to load signing private key with name \"'$KEYCHAIN_PRIVKEY_NAME'\" from keychain; false; }\n\ncat > \"$PROJECT_NAME-$VERSION.xml\" <\n\t\t\tVersion $VERSION\n\t\t\t$RELEASENOTES_URL\n\t\t\t$PUBDATE\n\t\t\t\n\t\t\nEOF\n\necho scp \"'$HOME/svn/my-cool-app/build/Release/$ARCHIVE_FILENAME'\" www.example.com:download/\necho scp \"'$WD/appcast.xml'\" www.example.com:web/software/my-cool-app/appcast.xml\n"; + shellScript = "set -o errexit\n\nexport GITV=`/opt/local/bin/git log -n1 --pretty=oneline --format=%h`\nexport DATEV=`date +%y.%m.%d.%H`\ndefaults write \"$BUILT_PRODUCTS_DIR/$PROJECT_NAME.app/Contents/Info\" CFBundleVersion \"${DATEV}\"\ndefaults write \"$BUILT_PRODUCTS_DIR/$PROJECT_NAME.app/Contents/Info\" GitVersion \"${GITV}\"\n\nif [ \"${CONFIGURATION}\" != \"Release\" ]; then exit; fi\n\nVERSION=$(defaults read \"$BUILT_PRODUCTS_DIR/$PROJECT_NAME.app/Contents/Info\" CFBundleShortVersionString)\nDOWNLOAD_BASE_URL=\"http://cloud.github.com/downloads/griff/metaz\"\nRELEASENOTES_URL=\"http://griff.github.com/metaz/release-notes.html#version-$VERSION\"\n\nARCHIVE_FILENAME=\"$PROJECT_NAME-$VERSION.zip\"\nDOWNLOAD_URL=\"$DOWNLOAD_BASE_URL/$ARCHIVE_FILENAME\"\nKEYCHAIN_PRIVKEY_NAME=\"MetaZ Sparkle Private\"\n\nWD=$PWD\ncd \"$BUILT_PRODUCTS_DIR\"\nrm -f \"$PROJECT_NAME\"*.zip\nditto -ck --keepParent \"$PROJECT_NAME.app\" \"$ARCHIVE_FILENAME\"\n\nditto -ck --keepParent \"$PROJECT_NAME.app.dSYM\" \"$PROJECT_NAME-$VERSION-$DATEV+dYSM.zip\"\n\nSIZE=$(stat -f %z \"$ARCHIVE_FILENAME\")\nPUBDATE=$(date +\"%a, %d %b %G %T %z\")\nSIGNATURE=$(\n\topenssl dgst -sha1 -binary < \"$ARCHIVE_FILENAME\" \\\n\t| openssl dgst -dss1 -sign <(security find-generic-password -g -s \"$KEYCHAIN_PRIVKEY_NAME\" 2>&1 1>/dev/null | perl -pe '($_) = /\"(.+)\"/; s/\\\\012/\\n/g') \\\n\t| openssl enc -base64\n)\n\n[ $SIGNATURE ] || { echo Unable to load signing private key with name \"'$KEYCHAIN_PRIVKEY_NAME'\" from keychain; false; }\n\ncat > \"$PROJECT_NAME-$VERSION.xml\" <\n\t\t\tVersion $VERSION\n\t\t\t$RELEASENOTES_URL\n\t\t\t$PUBDATE\n\t\t\t\n\t\t\nEOF\n\necho scp \"'$HOME/svn/my-cool-app/build/Release/$ARCHIVE_FILENAME'\" www.example.com:download/\necho scp \"'$WD/appcast.xml'\" www.example.com:web/software/my-cool-app/appcast.xml\n"; showEnvVarsInLog = 0; }; 1BEA6D70106EA6D1004B1A7F /* Build Documentation */ = { @@ -1033,6 +1052,7 @@ 1B92BB1D10876FBA0057EFD7 /* PureMetaEdits.m in Sources */, 1B92BC58108890090057EFD7 /* NSObject-ProtectedKeyValue.m in Sources */, 1BD3D2BC108CC5D700BE6943 /* MZRemoteData.m in Sources */, + 1B99355110AC818300E78D2D /* NSXMLNode-MZExtensions.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1158,6 +1178,22 @@ name = MZTags.strings; sourceTree = ""; }; + 1BC0661710AE223A005C2A9F /* PresetsPanel.xib */ = { + isa = PBXVariantGroup; + children = ( + 1BC0661810AE223A005C2A9F /* English */, + ); + name = PresetsPanel.xib; + sourceTree = ""; + }; + 1BC0665810AE2E65005C2A9F /* VideoType.strings */ = { + isa = PBXVariantGroup; + children = ( + 1BC0665910AE2E65005C2A9F /* English */, + ); + name = VideoType.strings; + sourceTree = ""; + }; 1BD6E7A6105DC4D000E40151 /* Queue.xib */ = { isa = PBXVariantGroup; children = ( diff --git a/Plugins/TagChimp/src/TCSearch.m b/Plugins/TagChimp/src/TCSearch.m index 7a29ffc1..0fc1f559 100644 --- a/Plugins/TagChimp/src/TCSearch.m +++ b/Plugins/TagChimp/src/TCSearch.m @@ -171,9 +171,7 @@ - (void)wrapper:(MZRESTWrapper *)theWrapper didRetrieveData:(NSData *)data //NSLog(@"Got response:\n%@", [theWrapper responseAsText]); NSXMLDocument* doc = [theWrapper responseAsXml]; - NSString* errorMessage = [[[doc nodesForXPath:@"/items/message/error" error:NULL] - arrayByPerformingSelector:@selector(stringValue)] - componentsJoinedByString:@", "]; + NSString* errorMessage = [doc stringForXPath:@"/items/message/error" error:NULL]; if(![errorMessage isEqual:@""]) NSLog(@"TagChimp error: %@", errorMessage); NSArray* items = [doc nodesForXPath:@"/items/movie" error:NULL]; @@ -186,9 +184,7 @@ - (void)wrapper:(MZRESTWrapper *)theWrapper didRetrieveData:(NSData *)data { NSString* tagId = [mapping objectForKey:xpath]; MZTag* tag = [MZTag tagForIdentifier:tagId]; - NSArray* nodes = [item nodesForXPath:xpath error:NULL]; - NSString* value = [[nodes arrayByPerformingSelector:@selector(stringValue)] - componentsJoinedByString:@", "]; + NSString* value = [item stringForXPath:xpath error:NULL]; id obj = [tag objectFromString:value]; if(obj) [dict setObject:obj forKey:tagId]; @@ -196,9 +192,7 @@ - (void)wrapper:(MZRESTWrapper *)theWrapper didRetrieveData:(NSData *)data NSString* tagChimpId = [dict objectForKey:TagChimpIdTagIdent]; - NSString* videoKind = [[[item nodesForXPath:@"movieTags/info/kind" error:NULL] - arrayByPerformingSelector:@selector(stringValue)] - componentsJoinedByString:@", "]; + NSString* videoKind = [item stringForXPath:@"movieTags/info/kind" error:NULL]; if([videoKind length] > 0) { MZTag* tag = [MZTag tagForIdentifier:MZVideoTypeTagIdent]; @@ -218,9 +212,7 @@ - (void)wrapper:(MZRESTWrapper *)theWrapper didRetrieveData:(NSData *)data } MZTag* ratingTag = [MZTag tagForIdentifier:MZRatingTagIdent]; - NSString* rating = [[[item nodesForXPath:@"movieTags/info/rating" error:NULL] - arrayByPerformingSelector:@selector(stringValue)] - componentsJoinedByString:@", "]; + NSString* rating = [item stringForXPath:@"movieTags/info/rating" error:NULL]; NSNumber* ratingNr = [ratingTag objectFromString:rating]; if([ratingNr intValue] != MZNoRating) [dict setObject:ratingNr forKey:MZRatingTagIdent]; @@ -232,27 +224,30 @@ - (void)wrapper:(MZRESTWrapper *)theWrapper didRetrieveData:(NSData *)data } */ - NSString* episodeId = [[[item nodesForXPath:@"movieTags/television/productionCode" error:NULL] - arrayByPerformingSelector:@selector(stringValue)] - componentsJoinedByString:@", "]; - if([episodeId length] == 0) + NSString* releaseYear = [item stringForXPath:@"movieTags/info/releaseDateY" error:NULL]; + if([releaseYear length] > 0) + { + NSString* releaseMonth = [item stringForXPath:@"movieTags/info/releaseDateM" error:NULL]; + NSString* releaseDay = [item stringForXPath:@"movieTags/info/releaseDateD" error:NULL]; + } + else { - episodeId = [[[item nodesForXPath:@"movieTags/television/episodeID" error:NULL] - arrayByPerformingSelector:@selector(stringValue)] - componentsJoinedByString:@", "]; + NSString* release = [item stringForXPath:@"movieTags/info/releaseDate" error:NULL]; } + + NSString* episodeId = [item stringForXPath:@"movieTags/television/productionCode" error:NULL]; + if([episodeId length] == 0) + episodeId = [item stringForXPath:@"movieTags/television/episodeID" error:NULL]; if([episodeId length] > 0) { MZTag* tag = [MZTag tagForIdentifier:MZTVEpisodeIDTagIdent]; [dict setObject:[tag objectFromString:episodeId] forKey:MZTVEpisodeIDTagIdent]; } - NSString* coverArtLarge = [[[item nodesForXPath:@"movieTags/coverArtLarge" error:NULL] - arrayByPerformingSelector:@selector(stringValue)] - componentsJoinedByString:@", "]; - NSString* coverArtSmall = [[[item nodesForXPath:@"movieTags/coverArtSmall" error:NULL] - arrayByPerformingSelector:@selector(stringValue)] - componentsJoinedByString:@", "]; + NSString* coverArtLarge = [item stringForXPath:@"movieTags/coverArtLarge" error:NULL]; + /* + NSString* coverArtSmall = [item stringForXPath:@"movieTags/coverArtSmall" error:NULL]; + */ if([coverArtLarge length] > 0) { /* @@ -270,9 +265,7 @@ - (void)wrapper:(MZRESTWrapper *)theWrapper didRetrieveData:(NSData *)data [data loadData]; } - NSInteger totalChapters = [[[[item nodesForXPath:@"movieChapters/totalChapters" error:NULL] - arrayByPerformingSelector:@selector(stringValue)] - componentsJoinedByString:@", "] integerValue]; + NSInteger totalChapters = [[item stringForXPath:@"movieChapters/totalChapters" error:NULL] integerValue]; if(totalChapters>0) { NSArray* numbers = [[item nodesForXPath:@"movieChapters/chapter/chapterNumber" error:NULL]