├── Browser.xib ├── Credits.html ├── CurrentSelection.scpt ├── EWSMacCompress.tar.gz ├── English.lproj ├── BrowserView.nib │ ├── designable.nib │ └── keyedobjects.nib ├── FVColorMenuView.nib │ ├── designable.nib │ └── keyedobjects.nib ├── FileManager.strings ├── Global.strings ├── InfoPlist.strings ├── Menus.strings ├── Preferences.nib │ ├── designable.nib │ └── keyedobjects.nib ├── Registration.strings ├── ResultsView.nib │ ├── designable.nib │ └── keyedobjects.nib ├── Sidebar.nib │ ├── classes.nib │ ├── info.nib │ └── keyedobjects.nib ├── TagManagementView.nib │ ├── designable.nib │ └── keyedobjects.nib ├── Tagger.nib │ ├── designable.nib │ └── keyedobjects.nib ├── Tags.strings ├── Toolbars.strings ├── UKCrashReporter.nib │ ├── classes.nib │ ├── info.nib │ └── keyedobjects.nib ├── UKCrashReporter.strings └── Urls.strings ├── FilenamesDropHandler-Info.plist ├── Frameworks ├── BGHUDAppKit.framework │ ├── BGHUDAppKit │ ├── Headers │ ├── Resources │ └── Versions │ │ ├── A │ │ ├── BGHUDAppKit │ │ ├── Headers │ │ │ ├── BGGradientTheme.h │ │ │ ├── BGHUDAppKit.h │ │ │ ├── BGHUDBox.h │ │ │ ├── BGHUDButtonCell.h │ │ │ ├── BGHUDColorWell.h │ │ │ ├── BGHUDComboBoxCell.h │ │ │ ├── BGHUDGeometry.h │ │ │ ├── BGHUDLabel.h │ │ │ ├── BGHUDOutlineView.h │ │ │ ├── BGHUDPopUpButtonCell.h │ │ │ ├── BGHUDProgressIndicator.h │ │ │ ├── BGHUDScrollView.h │ │ │ ├── BGHUDScroller.h │ │ │ ├── BGHUDSearchFieldCell.h │ │ │ ├── BGHUDSecureTextFieldCell.h │ │ │ ├── BGHUDSegmentedCell.h │ │ │ ├── BGHUDSliderCell.h │ │ │ ├── BGHUDStepperCell.h │ │ │ ├── BGHUDTabView.h │ │ │ ├── BGHUDTabViewItem.h │ │ │ ├── BGHUDTableCornerView.h │ │ │ ├── BGHUDTableView.h │ │ │ ├── BGHUDTableViewHeaderCell.h │ │ │ ├── BGHUDTextFieldCell.h │ │ │ ├── BGHUDTokenAttachmentCell.h │ │ │ ├── BGHUDTokenFieldCell.h │ │ │ ├── BGHUDView.h │ │ │ ├── BGTheme.h │ │ │ ├── BGThemeManager.h │ │ │ ├── NSTokenAttachment.h │ │ │ └── NSTokenAttachmentCell.h │ │ └── Resources │ │ │ ├── Info.plist │ │ │ └── README.textile │ │ └── Current ├── OpenMeta.framework │ ├── Headers │ ├── OpenMeta │ ├── Resources │ └── Versions │ │ ├── A │ │ ├── Headers │ │ │ ├── OpenMeta.h │ │ │ └── OpenMetaBackup.h │ │ ├── OpenMeta │ │ └── Resources │ │ │ └── Info.plist │ │ └── Current └── ShortcutRecorder.framework │ ├── Headers │ ├── Resources │ ├── ShortcutRecorder │ └── Versions │ ├── A │ ├── Headers │ │ ├── SRCommon.h │ │ ├── SRKeyCodeTransformer.h │ │ ├── SRRecorderCell.h │ │ ├── SRRecorderControl.h │ │ ├── SRValidator.h │ │ ├── SR_LeopardView.h │ │ └── ShortcutRecorder.h │ ├── Resources │ │ └── Info.plist │ └── ShortcutRecorder │ └── Current ├── German.lproj ├── FileManager.strings └── Global.strings ├── Info.plist ├── Installer.xib ├── LICENSE.txt ├── MDSimpleGrouping.plist ├── MainMenu.xib ├── NNFilterEngine-Info.plist ├── PADropHandler-Info.plist ├── PublicURLDropHandler-Info.plist ├── README.md ├── Release ├── AdiumApplescriptRunner ├── Artwork │ ├── AdiumdmgBackground.png │ ├── dmgBackground.png │ └── dmgBackground.psd ├── Makefile ├── Template.dmg ├── Template.scpt ├── Template_DSStore ├── dmg.scpt ├── jwz - setting view options on .dmg files.webloc ├── make-diskimage.sh └── sign_update.rb ├── Resources ├── BOOKMARKS.tif ├── BlueGradient24.png ├── CollapsedTriangleWhite.tiff ├── CollapsedTriangleWhite_Pressed.tiff ├── DIRECTORIES.tif ├── DOCUMENT.tif ├── DropBox.scpt ├── ExpandedTriangleWhite.tiff ├── ExpandedTriangleWhite_Pressed.tiff ├── Grouping_Off.tiff ├── Grouping_On.tiff ├── IMAGES.tif ├── MD0-0-Middle-1.tiff ├── MD0-1-Middle-1.tiff ├── MDIconViewOff-1.tiff ├── MDIconViewOffDisabled.tiff ├── MDIconViewOn-1.tiff ├── MDIconViewOnDisabled.tiff ├── MDIconViewPressed-1.tiff ├── MDListViewOff-1.tiff ├── MDListViewOffDisabled.tiff ├── MDListViewOn-1.tiff ├── MDListViewOnDisabled.tiff ├── MDListViewPressed-1.tiff ├── MOVIES.tif ├── MUSIC.tif ├── MenuBarIcon.tif ├── MenuBarIconAlt.tif ├── OpenMetaSpotlight.mdimporter │ └── Contents │ │ ├── Info.plist │ │ ├── MacOS │ │ └── OpenMetaSpotlight │ │ └── Resources │ │ ├── English.lproj │ │ ├── InfoPlist.strings │ │ └── schema.strings │ │ └── schema.xml ├── PDF.tif ├── Punakea.sdef ├── RemoveRound.tif ├── RemoveRoundPressed.tif ├── SLA.r ├── SnapBack.tif ├── SnapBackPressed.tif ├── Sort_Ascending.tiff ├── Sort_Descending.tiff ├── SourcePanelSelectionGradient.tif ├── TabActive.png ├── TabHover.png ├── TabSelected.png ├── TagFolder.icns ├── button-goto-on.tif ├── button-goto.tif ├── drop.png ├── drop_highlight.png ├── drop_tag.png ├── drop_tag_small.png ├── dummyThumbLarge.gif ├── dummyThumbSmall.gif ├── pane_key-favoriteIcon.tiff ├── sl-status_exclude.tiff ├── sl-status_stop-pressed.tiff ├── sl-status_stop-rollover.tiff ├── sl-status_stop.tiff ├── source-panel-manage-tags.tif ├── source-panel-shelf.tif ├── source-panel-tag-set.tif ├── source-panel-tag.tif ├── statusbar-button-gear.pdf ├── statusbar-button-info-on.tif ├── statusbar-button-info.png ├── statusbar-button-minus.pdf ├── statusbar-button-plus.pdf ├── statusbar-button-tags-on.tif ├── statusbar-button-tags.tif ├── statusbar-grip.tif ├── statusbar.tiff ├── stop.tif ├── stopPressed.tif ├── stopRollover.tif ├── tabpanel-header-grip.tif ├── tabpanel-header.tif ├── toolbar-manage-tags.tif ├── toolbar-pref-general.tif ├── toolbar-pref-managefiles.tiff ├── toolbar-pref-tagcloud.tif ├── toolbar-pref-update.tiff ├── toolbar-search.png ├── toolbar-show-tagger.tif ├── toolbar-sort-by-name.tif ├── toolbar-sort-by-rating.tif ├── toolbar-sync.png ├── transparent.tiff ├── triangle-gray-collapsed-on.tif ├── triangle-gray-collapsed.tif ├── triangle-gray-expanded-on.tif ├── triangle-gray-expanded.tif └── warning.pdf ├── Source ├── AppleScriptDelegateCategory.h ├── AppleScriptDelegateCategory.m ├── BrowserController.h ├── BrowserController.m ├── BrowserViewController.h ├── BrowserViewController.m ├── BusyWindowController.h ├── BusyWindowController.m ├── CTGradient.h ├── CTGradient.m ├── Core.h ├── Core.m ├── FVColorMenuView.h ├── FVColorMenuView.m ├── FVFinderLabel.h ├── FVFinderLabel.m ├── FVUtilities.h ├── FVUtilities.m ├── Frameworks │ ├── NNFilterEngine │ │ ├── NNFilterEngine.h │ │ ├── NNFilterEngine.m │ │ ├── NNObjectFilter.h │ │ └── NNObjectFilter.m │ └── PADropHandler │ │ ├── PADropDataHandler.h │ │ ├── PADropDataHandler.m │ │ ├── PADropHandler.h │ │ └── PADropHandler.m ├── HotkeyDelegateCategory.h ├── HotkeyDelegateCategory.m ├── LCLLogFile.h ├── LCLLogFile.m ├── LCLLogFileConfig.h ├── LoginItemsAE.c ├── LoginItemsAE.h ├── NNActiveAppSavingPanel.h ├── NNActiveAppSavingPanel.m ├── NSApplication+SystemVersion.h ├── NSApplication+SystemVersion.m ├── NSBezierPathCategory.h ├── NSBezierPathCategory.m ├── NSDateFormatter+FriendlyFormat.h ├── NSDateFormatter+FriendlyFormat.m ├── NSImage+QuickLook.h ├── NSImage+QuickLook.m ├── NSNumberFormatterAdditions.h ├── NSNumberFormatterAdditions.m ├── NSString+CharacterSetChecks.h ├── NSString+CharacterSetChecks.m ├── NSTextFieldAdditions.h ├── NSTextFieldAdditions.m ├── PAAddTagsCommand.h ├── PAAddTagsCommand.m ├── PAAppStoreWindow.h ├── PAAppStoreWindow.m ├── PABoolToColorTransformer.h ├── PABoolToColorTransformer.m ├── PABrowserViewMainController.h ├── PABrowserViewMainController.m ├── PABrowserWindow.h ├── PABrowserWindow.m ├── PAButton.h ├── PAButton.m ├── PAButtonCell.h ├── PAButtonCell.m ├── PACollectionNotEmpty.h ├── PACollectionNotEmpty.m ├── PAContentTypeFilter.h ├── PAContentTypeFilter.m ├── PAControlledView.h ├── PAControlledView.m ├── PADebugView.h ├── PADebugView.m ├── PADropManager.h ├── PADropManager.m ├── PAFileBox.h ├── PAFileBox.m ├── PAFilenamesDropDataHandler.h ├── PAFilenamesDropDataHandler.m ├── PAFilenamesDropHandler.h ├── PAFilenamesDropHandler.m ├── PAFilterButton.h ├── PAFilterButton.m ├── PAFilterSlice.h ├── PAFilterSlice.m ├── PAGenericTableColumn.h ├── PAGenericTableColumn.m ├── PAImageButton.h ├── PAImageButton.m ├── PAImageButtonCell.h ├── PAImageButtonCell.m ├── PAInfoPaneMultipleSelectionView.h ├── PAInfoPaneMultipleSelectionView.m ├── PAInfoPaneSingleSelectionView.h ├── PAInfoPaneSingleSelectionView.m ├── PAInfoPaneSubview.h ├── PAInfoPaneSubview.m ├── PAInstaller.h ├── PAInstaller.m ├── PALabel.h ├── PALabel.m ├── PAMetaMatrixItemCell.h ├── PAMetaMatrixItemCell.m ├── PANotificationReceiver.h ├── PANotificationReceiver.m ├── PAPopularTagGroup.h ├── PAPopularTagGroup.m ├── PARecentTagGroup.h ├── PARecentTagGroup.m ├── PAResultsBookmarkCell.h ├── PAResultsBookmarkCell.m ├── PAResultsGroupCell.h ├── PAResultsGroupCell.m ├── PAResultsItemCell.h ├── PAResultsItemCell.m ├── PAResultsMultiItemCell.h ├── PAResultsMultiItemCell.m ├── PAResultsMultiItemGenericCell.h ├── PAResultsMultiItemGenericCell.m ├── PAResultsMultiItemMatrix.h ├── PAResultsMultiItemMatrix.m ├── PAResultsMultiItemPlaceholderCell.h ├── PAResultsMultiItemPlaceholderCell.m ├── PAResultsMultiItemThumbnailCell.h ├── PAResultsMultiItemThumbnailCell.m ├── PAResultsOutlineView.h ├── PAResultsOutlineView.m ├── PAResultsTableColumn.h ├── PAResultsTableColumn.m ├── PAResultsViewController.h ├── PAResultsViewController.m ├── PASegmentedImageControl.h ├── PASegmentedImageControl.m ├── PASelectedTagCell.h ├── PASelectedTagCell.m ├── PASelectedTagsView.h ├── PASelectedTagsView.m ├── PAServices.h ├── PAServices.m ├── PASidebarContentView.h ├── PASidebarContentView.m ├── PASidebarTableColumn.h ├── PASidebarTableColumn.m ├── PASidebarTableView.h ├── PASidebarTableView.m ├── PASidebarTableViewDropController.h ├── PASidebarTableViewDropController.m ├── PASidebarWindow.h ├── PASidebarWindow.m ├── PASmartFolder.h ├── PASmartFolder.m ├── PASourceItem.h ├── PASourceItem.m ├── PASourceItemCell.h ├── PASourceItemCell.m ├── PASourcePanel.h ├── PASourcePanel.m ├── PASourcePanelController.h ├── PASourcePanelController.m ├── PASplitView.h ├── PASplitView.m ├── PAStatusBar.h ├── PAStatusBar.m ├── PAStatusBarButton.h ├── PAStatusBarButton.m ├── PAStatusBarButtonCell.h ├── PAStatusBarButtonCell.m ├── PAStatusBarLink.h ├── PAStatusBarLink.m ├── PAStatusBarProgressIndicator.h ├── PAStatusBarProgressIndicator.m ├── PAStringFilter.h ├── PAStringFilter.m ├── PAStringPrefixFilter.h ├── PAStringPrefixFilter.m ├── PATabPanel.h ├── PATabPanel.m ├── PATagButton.h ├── PATagButton.m ├── PATagButtonCell.h ├── PATagButtonCell.m ├── PATagCache.h ├── PATagCache.m ├── PATagCacheEntry.h ├── PATagCacheEntry.m ├── PATagCloud.h ├── PATagCloud.m ├── PATagCloudProtocols.h ├── PATagGroup.h ├── PATagGroup.m ├── PATagManagementViewController.h ├── PATagManagementViewController.m ├── PATagManagementViewMainView.h ├── PATagManagementViewMainView.m ├── PATagSetPanel.h ├── PATagSetPanel.m ├── PATagTextFieldCell.h ├── PATagTextFieldCell.m ├── PATaggerHeaderCell.h ├── PATaggerHeaderCell.m ├── PATaggerItemCell.h ├── PATaggerItemCell.m ├── PATaggerTableView.h ├── PATaggerTableView.m ├── PATagsPaneTagsView.h ├── PATagsPaneTagsView.m ├── PAThumbnailItem.h ├── PAThumbnailItem.m ├── PAThumbnailManager.h ├── PAThumbnailManager.m ├── PATitleBar.h ├── PATitleBar.m ├── PATitleBarButton.h ├── PATitleBarButton.m ├── PATitleBarButtonCell.h ├── PATitleBarButtonCell.m ├── PATitleBarSearchButton.h ├── PATitleBarSearchButton.m ├── PATitleBarSpinButton.h ├── PATitleBarSpinButton.m ├── PATitleBarSpinButtonCell.h ├── PATitleBarSpinButtonCell.m ├── PATypeAheadFind.h ├── PATypeAheadFind.m ├── PATypeAheadView.h ├── PATypeAheadView.m ├── PAViewController.h ├── PAViewController.m ├── PTHotKey.h ├── PTHotKey.m ├── PTHotKeyCenter.h ├── PTHotKeyCenter.m ├── PTKeyCombo.h ├── PTKeyCombo.m ├── Plugins │ └── URLDropHandler │ │ ├── PAPublicURLDropHandler.h │ │ ├── PAPublicURLDropHandler.m │ │ ├── PAURLDropDataHandler.h │ │ ├── PAURLDropDataHandler.m │ │ ├── PAWebURLsWithTitlesPboardTypeDropHandler.h │ │ └── PAWebURLsWithTitlesPboardTypeDropHandler.m ├── PreferenceController.h ├── PreferenceController.m ├── QuickLook.h ├── STPrivilegedTask.h ├── STPrivilegedTask.m ├── SidebarController.h ├── SidebarController.m ├── TagAutoCompleteController.h ├── TagAutoCompleteController.m ├── TaggerController.h ├── TaggerController.m ├── ToolbarDelegateCategory.h ├── ToolbarDelegateCategory.m ├── UKCrashReporter.h ├── UKCrashReporter.m ├── UKNibOwner.h ├── UKNibOwner.m ├── UKPrefsPanel.h ├── UKPrefsPanel.m ├── UKSystemInfo.h ├── UKSystemInfo.m ├── URLHandlerCategory.h ├── URLHandlerCategory.m ├── UnitTests │ ├── PATaggerUnitTest.h │ └── PATaggerUnitTest.m ├── appstarter_bsd.c ├── lcl.h ├── lcl.m ├── lcl_config_components.h ├── lcl_config_extensions.h ├── lcl_config_logger.h └── main.m ├── Subprojects ├── NNTagging │ ├── English.lproj │ │ ├── Global.strings │ │ ├── InfoPlist.strings │ │ ├── MDSimpleGrouping.plist │ │ └── MDSimpleGrouping.strings │ ├── Info.plist │ ├── LICENSE │ ├── MDSimpleGrouping.plist │ ├── NNTagging.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcuserdata │ │ │ └── daniel.xcuserdatad │ │ │ ├── UserInterfaceState.xcuserstate │ │ │ └── WorkspaceSettings.xcsettings │ ├── NNTagging_Prefix.pch │ ├── README │ ├── Resources │ │ ├── Doxyfile │ │ ├── Settings.plist │ │ └── empty_file │ └── Source │ │ ├── FMDatabase.h │ │ ├── FMDatabase.m │ │ ├── FMResultSet.h │ │ ├── FMResultSet.m │ │ ├── Finder.h │ │ ├── LCLLogFile.h │ │ ├── LCLLogFile.m │ │ ├── LCLLogFileConfig.h │ │ ├── NNApriori.h │ │ ├── NNApriori.m │ │ ├── NNAprioriItemset.h │ │ ├── NNAprioriItemset.m │ │ ├── NNAssociationRule.h │ │ ├── NNAssociationRule.m │ │ ├── NNAssociationRuleDiscoveryOperation.h │ │ ├── NNAssociationRuleDiscoveryOperation.m │ │ ├── NNAssociationRules.h │ │ ├── NNAssociationRules.m │ │ ├── NNCommonNotifications.h │ │ ├── NNCommonNotifications.m │ │ ├── NNCompatbilityChecker.h │ │ ├── NNCompatbilityChecker.m │ │ ├── NNContentTypeTreeQueryFilter.h │ │ ├── NNContentTypeTreeQueryFilter.m │ │ ├── NNFile.h │ │ ├── NNFile.m │ │ ├── NNFolderToTagImporter.h │ │ ├── NNFolderToTagImporter.m │ │ ├── NNMultipleAttributesQueryFilter.h │ │ ├── NNMultipleAttributesQueryFilter.m │ │ ├── NNQuery.h │ │ ├── NNQuery.m │ │ ├── NNQueryBundle.h │ │ ├── NNQueryBundle.m │ │ ├── NNQueryFilter.h │ │ ├── NNQueryFilter.m │ │ ├── NNQueue.h │ │ ├── NNQueue.m │ │ ├── NNRelatedTags.h │ │ ├── NNRelatedTags.m │ │ ├── NNRelatedTagsStandalone.h │ │ ├── NNRelatedTagsStandalone.m │ │ ├── NNSecureTagToFileWriter.h │ │ ├── NNSecureTagToFileWriter.m │ │ ├── NNSelectedTags.h │ │ ├── NNSelectedTags.m │ │ ├── NNSimpleQueryFilter.h │ │ ├── NNSimpleQueryFilter.m │ │ ├── NNSimpleTag.h │ │ ├── NNSimpleTag.m │ │ ├── NNSimpleTagToFileWriter.h │ │ ├── NNSimpleTagToFileWriter.m │ │ ├── NNSymlinkTagDirectoryWriter.h │ │ ├── NNSymlinkTagDirectoryWriter.m │ │ ├── NNTag.h │ │ ├── NNTag.m │ │ ├── NNTagBackup.h │ │ ├── NNTagBackup.m │ │ ├── NNTagChecker.h │ │ ├── NNTagChecker.m │ │ ├── NNTagDirectoryWriter.h │ │ ├── NNTagDirectoryWriter.m │ │ ├── NNTagSave.h │ │ ├── NNTagSave.m │ │ ├── NNTagSet.h │ │ ├── NNTagSet.m │ │ ├── NNTagStoreManager.h │ │ ├── NNTagStoreManager.m │ │ ├── NNTagToFileWriter.h │ │ ├── NNTagToFileWriter.m │ │ ├── NNTagToFinderCommentWriter.h │ │ ├── NNTagToFinderCommentWriter.m │ │ ├── NNTagToOpenMetaWriter.h │ │ ├── NNTagToOpenMetaWriter.m │ │ ├── NNTaggableObject.h │ │ ├── NNTaggableObject.m │ │ ├── NNTagging.h │ │ ├── NNTagging.m │ │ ├── NNTags.h │ │ ├── NNTags.m │ │ ├── NNTempTag.h │ │ ├── NNTempTag.m │ │ ├── NSFileManager+Extensions.h │ │ ├── NSFileManager+Extensions.m │ │ ├── OpenMeta.h │ │ ├── OpenMeta.m │ │ ├── OpenMetaBackup.h │ │ ├── OpenMetaBackup.m │ │ ├── OpenMetaPrefs.h │ │ ├── OpenMetaPrefs.m │ │ ├── UKFNSubscribeFileWatcher.h │ │ ├── UKFNSubscribeFileWatcher.m │ │ ├── UKFileWatcher.h │ │ ├── UKFileWatcher.m │ │ ├── UKKQueue.h │ │ ├── UKKQueue.m │ │ ├── UKMainThreadProxy.h │ │ ├── UKMainThreadProxy.m │ │ ├── lcl.h │ │ ├── lcl.m │ │ ├── lcl_config_components.h │ │ ├── lcl_config_extensions.h │ │ └── lcl_config_logger.h └── WeblocImporter │ ├── English.lproj │ ├── InfoPlist.strings │ └── schema.strings │ ├── GetMetadataForFile.c │ ├── Info.plist │ ├── Version │ ├── WeblocImporter.xcodeproj │ ├── darklight.mode1v3 │ └── project.pbxproj │ ├── main.c │ ├── schema.xml │ └── version.plist ├── Unit Testing-Info.plist ├── UserDefaults.plist ├── WebURLsWithTitlesPboardTypeDropHandler-Info.plist ├── appicon.icns ├── punakea.xcodeproj ├── project.pbxproj └── project.xcworkspace │ └── contents.xcworkspacedata ├── punakea_Prefix.pch ├── scripts ├── MoinMoin │ └── Punakea.py └── symbolizechrashlog.sh └── version.plist /CurrentSelection.scpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/CurrentSelection.scpt -------------------------------------------------------------------------------- /EWSMacCompress.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/EWSMacCompress.tar.gz -------------------------------------------------------------------------------- /English.lproj/BrowserView.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/English.lproj/BrowserView.nib/keyedobjects.nib -------------------------------------------------------------------------------- /English.lproj/FVColorMenuView.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/English.lproj/FVColorMenuView.nib/keyedobjects.nib -------------------------------------------------------------------------------- /English.lproj/Global.strings: -------------------------------------------------------------------------------- 1 | "OK" = "Ok"; 2 | "CANCEL" = "Cancel"; 3 | "ERROR" = "Error"; 4 | 5 | "YES" = "Yes"; 6 | "NO" = "No"; 7 | 8 | "NO_DATE" = "No Date"; 9 | "TODAY" = "Today"; 10 | "YESTERDAY" = "Yesterday"; 11 | "NEVER" = "Never"; 12 | 13 | "FROM" = "From"; 14 | "TO" = "To"; 15 | "DATE" = "Date"; 16 | 17 | "FILE_SIZE_ON_DISK" = "%@"; 18 | 19 | "FILES" = "files"; 20 | 21 | "TAGSETPANEL_ADD_TAG_SET_LABEL" = "Add a new favorite set with these tags:"; 22 | "TAGSETPANEL_EDIT_TAG_SET_LABEL" = "Edit tags of this favorite set:"; 23 | 24 | "PROGRESS_SEARCHING" = "Searching"; 25 | "PROGRESS_GATHERING_TAGS" = "Gathering Tags"; 26 | 27 | "REVEAL_IN_FINDER" = "Reveal in Finder"; 28 | 29 | "MSG_EXTENDED_ATTRIBUTES_WILL_BE_ADDED_TO_TAGGED_FILES_TITLE" = "Permission to add extended attributes to tagged files"; 30 | "MSG_EXTENDED_ATTRIBUTES_WILL_BE_ADDED_TO_TAGGED_FILES_MESSAGE" = "Punakea needs to be able to add extended attributes to any file which will be tagged. Therefore, it uses the emerging OpenMeta standard. OpenMeta uses a file system feature that allows arbitrary data to be stored alongside the actual file contents. These attributes are non-destructive and will not change the contents of a file in any way."; 31 | "MSG_EXTENDED_ATTRIBUTES_WILL_BE_ADDED_TO_TAGGED_FILES_BUTTON_OK" = "Start Tagging"; 32 | "MSG_EXTENDED_ATTRIBUTES_WILL_BE_ADDED_TO_TAGGED_FILES_BUTTON_CANCEL" = "Learn More and Quit"; -------------------------------------------------------------------------------- /English.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/English.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /English.lproj/Menus.strings: -------------------------------------------------------------------------------- 1 | "PURCHASE" = "Purchase..."; 2 | "ENTER_LICENSE_KEY" = "Enter License Key..."; 3 | "MANAGE_LICENSE_KEY" = "Manage License Key..."; 4 | 5 | "SHOW_INFO" = "Show Info"; 6 | "HIDE_INFO" = "Hide Info"; 7 | "SHOW_TAGS" = "Show Tags"; 8 | "HIDE_TAGS" = "Hide Tags"; 9 | "HOME" = "Home"; 10 | "ENTER_FULL_SCREEN" = "Enter Full Screen"; 11 | "EXIT_FULL_SCREEN" = "Exit Full Screen"; -------------------------------------------------------------------------------- /English.lproj/Preferences.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/English.lproj/Preferences.nib/keyedobjects.nib -------------------------------------------------------------------------------- /English.lproj/Registration.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/English.lproj/Registration.strings -------------------------------------------------------------------------------- /English.lproj/ResultsView.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/English.lproj/ResultsView.nib/keyedobjects.nib -------------------------------------------------------------------------------- /English.lproj/Sidebar.nib/classes.nib: -------------------------------------------------------------------------------- 1 | { 2 | IBClasses = ( 3 | {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, 4 | {CLASS = PAButtonCell; LANGUAGE = ObjC; SUPERCLASS = NSActionCell; }, 5 | {CLASS = PAFileBox; LANGUAGE = ObjC; SUPERCLASS = NSImageView; }, 6 | {CLASS = PASidebarCell; LANGUAGE = ObjC; SUPERCLASS = NSCell; }, 7 | {CLASS = PASidebarContentView; LANGUAGE = ObjC; SUPERCLASS = NSView; }, 8 | {CLASS = PASidebarTableColumn; LANGUAGE = ObjC; SUPERCLASS = NSTableColumn; }, 9 | {CLASS = PASidebarTableView; LANGUAGE = ObjC; SUPERCLASS = NSTableView; }, 10 | { 11 | CLASS = PASidebarView; 12 | LANGUAGE = ObjC; 13 | OUTLETS = {owner = id; tableView = id; }; 14 | SUPERCLASS = NSView; 15 | }, 16 | {CLASS = PASidebarWindow; LANGUAGE = ObjC; SUPERCLASS = NSWindow; }, 17 | { 18 | ACTIONS = {tagClicked = id; }; 19 | CLASS = SidebarController; 20 | LANGUAGE = ObjC; 21 | OUTLETS = { 22 | fileBox = PAFileBox; 23 | popularTags = NSArrayController; 24 | popularTagsTable = NSTableView; 25 | recentTags = NSArrayController; 26 | recentTagsTable = NSTableView; 27 | }; 28 | SUPERCLASS = NSWindowController; 29 | }, 30 | { 31 | CLASS = SubViewController; 32 | LANGUAGE = ObjC; 33 | OUTLETS = {view = NSView; }; 34 | SUPERCLASS = NSObject; 35 | } 36 | ); 37 | IBVersion = 1; 38 | } -------------------------------------------------------------------------------- /English.lproj/Sidebar.nib/info.nib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IBDocumentLocation 6 | 334 123 356 240 0 0 1440 878 7 | IBFramework Version 8 | 446.1 9 | IBOpenObjects 10 | 11 | 35 12 | 13 | IBSystem Version 14 | 8P135 15 | 16 | 17 | -------------------------------------------------------------------------------- /English.lproj/Sidebar.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/English.lproj/Sidebar.nib/keyedobjects.nib -------------------------------------------------------------------------------- /English.lproj/TagManagementView.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/English.lproj/TagManagementView.nib/keyedobjects.nib -------------------------------------------------------------------------------- /English.lproj/Tagger.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/English.lproj/Tagger.nib/keyedobjects.nib -------------------------------------------------------------------------------- /English.lproj/Tags.strings: -------------------------------------------------------------------------------- 1 | "TAG_RENAME_REQUEST" = "Rename the tag?"; 2 | "TAG_RENAME_REQUEST_INFO" = "Tags on files will also be renamed."; 3 | "TAG_REMOVE_REQUEST" = "Remove the tag?"; 4 | "TAG_REMOVE_REQUEST_INFO" = "Tags on files will also be removed."; 5 | "TAG_WHITESPACE_REQUEST" = "Please enter a tag name"; 6 | "TAG_WHITESPACE_REQUEST_INFO" = "No whitespace-only tags allowed"; 7 | "NO_RELATED_TAGS" = "no related tags"; 8 | "NO_TAGS" = "To tag a file, drop it here.\nYou can tag any file from local or remote volumes\n for which Spotlight indexing is enabled."; 9 | "NO_TAGS_FOR_SEARCHSTRING" = "no tags found"; 10 | "NO_TAGS_FOR_CONTENTTYPE" = "no tags\nfor this content type"; 11 | 12 | "EDIT_TAGS" = "Edit tags:"; 13 | "EDIT_COMMON_TAGS" = "Edit common tags:"; -------------------------------------------------------------------------------- /English.lproj/Toolbars.strings: -------------------------------------------------------------------------------- 1 | "SHOW_TAGGER" = "Show Tagger"; 2 | "SHOW_TAGGER_TOOLTIP" = "Open a new Tagger window that allows you assign arbitrary tags to your files"; 3 | "MANAGE_TAGS" = "Manage Tags"; 4 | "MANAGE_TAGS_TOOLTIP" = "Switch to tag management view that allows you to edit your tags"; 5 | "SORT_BY_NAME" = "Sort by Name"; 6 | "SORT_BY_NAME_TOOLTIP" = "Sort tag cloud by tag name"; 7 | "SORT_BY_RATING" = "Sort by Rating"; 8 | "SORT_BY_RATING_TOOLTIP" = "Sort tag cloud by tag rating"; 9 | "FIND_TAG_BY_PREFIX" = "Find tags by prefix"; 10 | "FIND_TAG_BY_SUBSTRING" = "Find tags by substring"; 11 | "FIND_IN_RESULTS" = "Find full text"; 12 | "SYNC_TAGS_TOOLTIP" = "Synchronize Tags"; -------------------------------------------------------------------------------- /English.lproj/UKCrashReporter.nib/info.nib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IBFramework Version 6 | 629 7 | IBLastKnownRelativeProjectPath 8 | ../../../TalkingMoose/TalkingMoose.xcodeproj 9 | IBOldestOS 10 | 5 11 | IBOpenObjects 12 | 13 | 5 14 | 15 | IBSystem Version 16 | 9A581 17 | targetFramework 18 | IBCocoaFramework 19 | 20 | 21 | -------------------------------------------------------------------------------- /English.lproj/UKCrashReporter.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/English.lproj/UKCrashReporter.nib/keyedobjects.nib -------------------------------------------------------------------------------- /English.lproj/Urls.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/English.lproj/Urls.strings -------------------------------------------------------------------------------- /FilenamesDropHandler-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | eu.nudgenudge.FilenamesDropHandler 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleSignature 16 | NNPA 17 | CFBundleVersion 18 | 1.0 19 | NSPrincipalClass 20 | PAFilenamesDropHandler 21 | 22 | 23 | -------------------------------------------------------------------------------- /Frameworks/BGHUDAppKit.framework/BGHUDAppKit: -------------------------------------------------------------------------------- 1 | Versions/Current/BGHUDAppKit -------------------------------------------------------------------------------- /Frameworks/BGHUDAppKit.framework/Headers: -------------------------------------------------------------------------------- 1 | Versions/Current/Headers -------------------------------------------------------------------------------- /Frameworks/BGHUDAppKit.framework/Resources: -------------------------------------------------------------------------------- 1 | Versions/Current/Resources -------------------------------------------------------------------------------- /Frameworks/BGHUDAppKit.framework/Versions/A/BGHUDAppKit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Frameworks/BGHUDAppKit.framework/Versions/A/BGHUDAppKit -------------------------------------------------------------------------------- /Frameworks/BGHUDAppKit.framework/Versions/A/Headers/BGHUDTableCornerView.h: -------------------------------------------------------------------------------- 1 | // 2 | // BGHUDTableCornerView.h 3 | // BGHUDAppKit 4 | // 5 | // Created by BinaryGod on 6/29/08. 6 | // Copyright 2008 none. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "BGThemeManager.h" 11 | 12 | @interface BGHUDTableCornerView : NSView { 13 | 14 | NSString *themeKey; 15 | } 16 | 17 | @property (retain) NSString *themeKey; 18 | 19 | - (id)initWithThemeKey:(NSString *)key; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /Frameworks/BGHUDAppKit.framework/Versions/A/Headers/NSTokenAttachment.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by class-dump 3.1.2. 3 | * 4 | * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2007 by Steve Nygard. 5 | */ 6 | 7 | #import 8 | 9 | @interface NSTokenAttachment : NSTextAttachment 10 | { 11 | id _delegate; 12 | } 13 | 14 | - (id)initWithDelegate:(id)fp8; 15 | - (void)encodeWithCoder:(id)fp8; 16 | - (id)initWithCoder:(id)fp8; 17 | - (id)attachmentCell; 18 | - (id)delegate; 19 | - (void)setDelegate:(id)fp8; 20 | 21 | @end 22 | 23 | -------------------------------------------------------------------------------- /Frameworks/BGHUDAppKit.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 11C74 7 | CFBundleDevelopmentRegion 8 | English 9 | CFBundleExecutable 10 | BGHUDAppKit 11 | CFBundleIdentifier 12 | com.binarymethod.BGHUDAppKit 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | 1.0 21 | DTCompiler 22 | 23 | DTPlatformBuild 24 | 4D502 25 | DTPlatformVersion 26 | GM 27 | DTSDKBuild 28 | 10K549 29 | DTSDKName 30 | macosx10.6 31 | DTXcode 32 | 0421 33 | DTXcodeBuild 34 | 4D502 35 | NSPrincipalClass 36 | BGHUDAppKit 37 | 38 | 39 | -------------------------------------------------------------------------------- /Frameworks/BGHUDAppKit.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | A -------------------------------------------------------------------------------- /Frameworks/OpenMeta.framework/Headers: -------------------------------------------------------------------------------- 1 | Versions/Current/Headers -------------------------------------------------------------------------------- /Frameworks/OpenMeta.framework/OpenMeta: -------------------------------------------------------------------------------- 1 | Versions/Current/OpenMeta -------------------------------------------------------------------------------- /Frameworks/OpenMeta.framework/Resources: -------------------------------------------------------------------------------- 1 | Versions/Current/Resources -------------------------------------------------------------------------------- /Frameworks/OpenMeta.framework/Versions/A/OpenMeta: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Frameworks/OpenMeta.framework/Versions/A/OpenMeta -------------------------------------------------------------------------------- /Frameworks/OpenMeta.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | OpenMeta 9 | CFBundleIdentifier 10 | com.yourcompany.OpenMeta 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | FMWK 15 | CFBundleSignature 16 | ???? 17 | CFBundleVersion 18 | 1.0 19 | 20 | 21 | -------------------------------------------------------------------------------- /Frameworks/OpenMeta.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | A -------------------------------------------------------------------------------- /Frameworks/ShortcutRecorder.framework/Headers: -------------------------------------------------------------------------------- 1 | Versions/Current/Headers -------------------------------------------------------------------------------- /Frameworks/ShortcutRecorder.framework/Resources: -------------------------------------------------------------------------------- 1 | Versions/Current/Resources -------------------------------------------------------------------------------- /Frameworks/ShortcutRecorder.framework/ShortcutRecorder: -------------------------------------------------------------------------------- 1 | Versions/Current/ShortcutRecorder -------------------------------------------------------------------------------- /Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRKeyCodeTransformer.h: -------------------------------------------------------------------------------- 1 | // 2 | // SRKeyCodeTransformer.h 3 | // ShortcutRecorder 4 | // 5 | // Copyright 2006-2007 Contributors. All rights reserved. 6 | // 7 | // License: BSD 8 | // 9 | // Contributors: 10 | // David Dauer 11 | // Jesper 12 | // Jamie Kirkpatrick 13 | 14 | #import 15 | 16 | @interface SRKeyCodeTransformer : NSValueTransformer {} @end 17 | -------------------------------------------------------------------------------- /Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRValidator.h: -------------------------------------------------------------------------------- 1 | // 2 | // SRValidator.h 3 | // ShortcutRecorder 4 | // 5 | // Copyright 2006-2007 Contributors. All rights reserved. 6 | // 7 | // License: BSD 8 | // 9 | // Contributors: 10 | // David Dauer 11 | // Jesper 12 | // Jamie Kirkpatrick 13 | 14 | #import 15 | 16 | @interface SRValidator : NSObject { 17 | id delegate; 18 | } 19 | 20 | - (id) initWithDelegate:(id)theDelegate; 21 | 22 | - (BOOL) isKeyCode:(NSInteger)keyCode andFlagsTaken:(NSUInteger)flags error:(NSError **)error; 23 | - (BOOL) isKeyCode:(NSInteger)keyCode andFlags:(NSUInteger)flags takenInMenu:(NSMenu *)menu error:(NSError **)error; 24 | 25 | - (id) delegate; 26 | - (void) setDelegate: (id) theDelegate; 27 | 28 | @end 29 | 30 | #pragma mark - 31 | 32 | @interface NSObject( SRValidation ) 33 | - (BOOL) shortcutValidator:(SRValidator *)validator isKeyCode:(NSInteger)keyCode andFlagsTaken:(NSUInteger)flags reason:(NSString **)aReason; 34 | @end 35 | -------------------------------------------------------------------------------- /Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SR_LeopardView.h: -------------------------------------------------------------------------------- 1 | // 2 | // SR_LeopardView.h 3 | // SR Leopard 4 | // 5 | // Created by Jesper on 2007-10-19. 6 | // Copyright 2007 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SR_LeopardView : NSView { 12 | 13 | } 14 | 15 | @end -------------------------------------------------------------------------------- /Frameworks/ShortcutRecorder.framework/Versions/A/Headers/ShortcutRecorder.h: -------------------------------------------------------------------------------- 1 | // 2 | // ShortcutRecorder.h 3 | // ShortcutRecorder 4 | // - 10.5 version only; master framework header 5 | // 6 | // Copyright 2007 Contributors. All rights reserved. 7 | // 8 | // License: BSD 9 | // 10 | // Contributors to this file: 11 | // Jesper 12 | 13 | #import 14 | #import 15 | #import 16 | #import 17 | #import 18 | -------------------------------------------------------------------------------- /Frameworks/ShortcutRecorder.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 11C74 7 | CFBundleDevelopmentRegion 8 | English 9 | CFBundleExecutable 10 | ShortcutRecorder 11 | CFBundleIdentifier 12 | net.wafflesoftware.ShortcutRecorder.framework.Leopard 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | 1.0 21 | DTCompiler 22 | 23 | DTPlatformBuild 24 | 4D502 25 | DTPlatformVersion 26 | GM 27 | DTSDKBuild 28 | 10K549 29 | DTSDKName 30 | macosx10.6 31 | DTXcode 32 | 0421 33 | DTXcodeBuild 34 | 4D502 35 | 36 | 37 | -------------------------------------------------------------------------------- /Frameworks/ShortcutRecorder.framework/Versions/A/ShortcutRecorder: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Frameworks/ShortcutRecorder.framework/Versions/A/ShortcutRecorder -------------------------------------------------------------------------------- /Frameworks/ShortcutRecorder.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | A -------------------------------------------------------------------------------- /German.lproj/FileManager.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/German.lproj/FileManager.strings -------------------------------------------------------------------------------- /German.lproj/Global.strings: -------------------------------------------------------------------------------- 1 | "OK" = "Ok"; 2 | "CANCEL" = "Abbrechen"; 3 | "ERROR" = "Fehler"; 4 | 5 | "NO_DATE" = "Ohne Datum"; 6 | "TODAY" = "Heute"; 7 | "YESTERDAY" = "Gestern"; 8 | "NEVER" = "Niemals"; 9 | 10 | "FROM" = "From"; 11 | "TO" = "To"; 12 | "DATE" = "Date"; 13 | 14 | "FILE_SIZE_ON_DISK" = "%@"; 15 | 16 | "FILES" = "files"; 17 | 18 | "TAGSETPANEL_ADD_TAG_SET_LABEL" = "Add a new favorite set with these tags:"; 19 | "TAGSETPANEL_EDIT_TAG_SET_LABEL" = "Edit tags of this favorite set:"; 20 | 21 | "PROGRESS_SEARCHING" = "Searching"; 22 | "PROGRESS_GATHERING_TAGS" = "Gathering Tags"; 23 | 24 | "REVEAL_IN_FINDER" = "Reveal in Finder"; -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2006-2014 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /NNFilterEngine-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | eu.nudgenudge.NNFilterEngine 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | FMWK 15 | CFBundleSignature 16 | ???? 17 | CFBundleVersion 18 | 1.0 19 | 20 | 21 | -------------------------------------------------------------------------------- /PADropHandler-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | eu.nudgenudge.PADropHandler 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | FMWK 15 | CFBundleSignature 16 | NuNu 17 | CFBundleVersion 18 | 1.0 19 | NSPrincipalClass 20 | PADropHandler 21 | 22 | 23 | -------------------------------------------------------------------------------- /PublicURLDropHandler-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | eu.nudgenudge.PublicURLDropHandler 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleSignature 16 | NNPA 17 | CFBundleVersion 18 | 1.0 19 | NSPrincipalClass 20 | PAPublicURLDropHandler 21 | 22 | 23 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## Punakea. Tagging for Mac OS X. 2 | 3 | Punakea is a Mac App designed to help you cope with the day-to-day struggle of managing your files. Complementing Spotlight, it allows you to tag your files and bookmarks, freeing you of the strict hierarchy of the Finder's folder structure. It's like Finder Tags, but with a tag cloud! 4 | 5 | **Please note that the code is not in the best shape and we do not have much time to work on Punakea at the moment - if you want to take over maintaining Punakea, please drop us a note!** 6 | 7 | The official web page is hosted [here](http://nudge-nudge.github.io/punakea/). 8 | 9 | More information can be found in the [wiki](http://github.com/nudge-nudge/punakea/wiki). 10 | 11 | Punakea has been originally developed by Daniel Bär and Johannes Hoffart from 2006 to 2013. At the end of 2013, Punakea has been made available as an open source project under the MIT license. 12 | -------------------------------------------------------------------------------- /Release/AdiumApplescriptRunner: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Release/AdiumApplescriptRunner -------------------------------------------------------------------------------- /Release/Artwork/AdiumdmgBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Release/Artwork/AdiumdmgBackground.png -------------------------------------------------------------------------------- /Release/Artwork/dmgBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Release/Artwork/dmgBackground.png -------------------------------------------------------------------------------- /Release/Artwork/dmgBackground.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Release/Artwork/dmgBackground.psd -------------------------------------------------------------------------------- /Release/Template.dmg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Release/Template.dmg -------------------------------------------------------------------------------- /Release/Template.scpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Release/Template.scpt -------------------------------------------------------------------------------- /Release/Template_DSStore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Release/Template_DSStore -------------------------------------------------------------------------------- /Release/dmg.scpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Release/dmg.scpt -------------------------------------------------------------------------------- /Release/jwz - setting view options on .dmg files.webloc: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | URL 6 | http://jwz.livejournal.com/608927.html 7 | 8 | 9 | -------------------------------------------------------------------------------- /Release/sign_update.rb: -------------------------------------------------------------------------------- 1 | #!/usr/bin/ruby 2 | if ARGV.length < 2 3 | puts "Usage: ruby sign_update.rb update_archive private_key" 4 | exit 5 | end 6 | 7 | puts `openssl dgst -sha1 -binary < "#{ARGV[0]}" | openssl dgst -dss1 -sign "#{ARGV[1]}" | openssl enc -base64` -------------------------------------------------------------------------------- /Resources/BOOKMARKS.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/BOOKMARKS.tif -------------------------------------------------------------------------------- /Resources/BlueGradient24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/BlueGradient24.png -------------------------------------------------------------------------------- /Resources/CollapsedTriangleWhite.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/CollapsedTriangleWhite.tiff -------------------------------------------------------------------------------- /Resources/CollapsedTriangleWhite_Pressed.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/CollapsedTriangleWhite_Pressed.tiff -------------------------------------------------------------------------------- /Resources/DIRECTORIES.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/DIRECTORIES.tif -------------------------------------------------------------------------------- /Resources/DOCUMENT.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/DOCUMENT.tif -------------------------------------------------------------------------------- /Resources/DropBox.scpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/DropBox.scpt -------------------------------------------------------------------------------- /Resources/ExpandedTriangleWhite.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/ExpandedTriangleWhite.tiff -------------------------------------------------------------------------------- /Resources/ExpandedTriangleWhite_Pressed.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/ExpandedTriangleWhite_Pressed.tiff -------------------------------------------------------------------------------- /Resources/Grouping_Off.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/Grouping_Off.tiff -------------------------------------------------------------------------------- /Resources/Grouping_On.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/Grouping_On.tiff -------------------------------------------------------------------------------- /Resources/IMAGES.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/IMAGES.tif -------------------------------------------------------------------------------- /Resources/MD0-0-Middle-1.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MD0-0-Middle-1.tiff -------------------------------------------------------------------------------- /Resources/MD0-1-Middle-1.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MD0-1-Middle-1.tiff -------------------------------------------------------------------------------- /Resources/MDIconViewOff-1.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MDIconViewOff-1.tiff -------------------------------------------------------------------------------- /Resources/MDIconViewOffDisabled.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MDIconViewOffDisabled.tiff -------------------------------------------------------------------------------- /Resources/MDIconViewOn-1.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MDIconViewOn-1.tiff -------------------------------------------------------------------------------- /Resources/MDIconViewOnDisabled.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MDIconViewOnDisabled.tiff -------------------------------------------------------------------------------- /Resources/MDIconViewPressed-1.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MDIconViewPressed-1.tiff -------------------------------------------------------------------------------- /Resources/MDListViewOff-1.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MDListViewOff-1.tiff -------------------------------------------------------------------------------- /Resources/MDListViewOffDisabled.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MDListViewOffDisabled.tiff -------------------------------------------------------------------------------- /Resources/MDListViewOn-1.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MDListViewOn-1.tiff -------------------------------------------------------------------------------- /Resources/MDListViewOnDisabled.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MDListViewOnDisabled.tiff -------------------------------------------------------------------------------- /Resources/MDListViewPressed-1.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MDListViewPressed-1.tiff -------------------------------------------------------------------------------- /Resources/MOVIES.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MOVIES.tif -------------------------------------------------------------------------------- /Resources/MUSIC.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MUSIC.tif -------------------------------------------------------------------------------- /Resources/MenuBarIcon.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MenuBarIcon.tif -------------------------------------------------------------------------------- /Resources/MenuBarIconAlt.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/MenuBarIconAlt.tif -------------------------------------------------------------------------------- /Resources/OpenMetaSpotlight.mdimporter/Contents/MacOS/OpenMetaSpotlight: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/OpenMetaSpotlight.mdimporter/Contents/MacOS/OpenMetaSpotlight -------------------------------------------------------------------------------- /Resources/OpenMetaSpotlight.mdimporter/Contents/Resources/English.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/OpenMetaSpotlight.mdimporter/Contents/Resources/English.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /Resources/OpenMetaSpotlight.mdimporter/Contents/Resources/English.lproj/schema.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/OpenMetaSpotlight.mdimporter/Contents/Resources/English.lproj/schema.strings -------------------------------------------------------------------------------- /Resources/PDF.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/PDF.tif -------------------------------------------------------------------------------- /Resources/Punakea.sdef: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Resources/RemoveRound.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/RemoveRound.tif -------------------------------------------------------------------------------- /Resources/RemoveRoundPressed.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/RemoveRoundPressed.tif -------------------------------------------------------------------------------- /Resources/SnapBack.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/SnapBack.tif -------------------------------------------------------------------------------- /Resources/SnapBackPressed.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/SnapBackPressed.tif -------------------------------------------------------------------------------- /Resources/Sort_Ascending.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/Sort_Ascending.tiff -------------------------------------------------------------------------------- /Resources/Sort_Descending.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/Sort_Descending.tiff -------------------------------------------------------------------------------- /Resources/SourcePanelSelectionGradient.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/SourcePanelSelectionGradient.tif -------------------------------------------------------------------------------- /Resources/TabActive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/TabActive.png -------------------------------------------------------------------------------- /Resources/TabHover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/TabHover.png -------------------------------------------------------------------------------- /Resources/TabSelected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/TabSelected.png -------------------------------------------------------------------------------- /Resources/TagFolder.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/TagFolder.icns -------------------------------------------------------------------------------- /Resources/button-goto-on.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/button-goto-on.tif -------------------------------------------------------------------------------- /Resources/button-goto.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/button-goto.tif -------------------------------------------------------------------------------- /Resources/drop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/drop.png -------------------------------------------------------------------------------- /Resources/drop_highlight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/drop_highlight.png -------------------------------------------------------------------------------- /Resources/drop_tag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/drop_tag.png -------------------------------------------------------------------------------- /Resources/drop_tag_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/drop_tag_small.png -------------------------------------------------------------------------------- /Resources/dummyThumbLarge.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/dummyThumbLarge.gif -------------------------------------------------------------------------------- /Resources/dummyThumbSmall.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/dummyThumbSmall.gif -------------------------------------------------------------------------------- /Resources/pane_key-favoriteIcon.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/pane_key-favoriteIcon.tiff -------------------------------------------------------------------------------- /Resources/sl-status_exclude.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/sl-status_exclude.tiff -------------------------------------------------------------------------------- /Resources/sl-status_stop-pressed.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/sl-status_stop-pressed.tiff -------------------------------------------------------------------------------- /Resources/sl-status_stop-rollover.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/sl-status_stop-rollover.tiff -------------------------------------------------------------------------------- /Resources/sl-status_stop.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/sl-status_stop.tiff -------------------------------------------------------------------------------- /Resources/source-panel-manage-tags.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/source-panel-manage-tags.tif -------------------------------------------------------------------------------- /Resources/source-panel-shelf.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/source-panel-shelf.tif -------------------------------------------------------------------------------- /Resources/source-panel-tag-set.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/source-panel-tag-set.tif -------------------------------------------------------------------------------- /Resources/source-panel-tag.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/source-panel-tag.tif -------------------------------------------------------------------------------- /Resources/statusbar-button-gear.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/statusbar-button-gear.pdf -------------------------------------------------------------------------------- /Resources/statusbar-button-info-on.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/statusbar-button-info-on.tif -------------------------------------------------------------------------------- /Resources/statusbar-button-info.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/statusbar-button-info.png -------------------------------------------------------------------------------- /Resources/statusbar-button-minus.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/statusbar-button-minus.pdf -------------------------------------------------------------------------------- /Resources/statusbar-button-plus.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/statusbar-button-plus.pdf -------------------------------------------------------------------------------- /Resources/statusbar-button-tags-on.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/statusbar-button-tags-on.tif -------------------------------------------------------------------------------- /Resources/statusbar-button-tags.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/statusbar-button-tags.tif -------------------------------------------------------------------------------- /Resources/statusbar-grip.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/statusbar-grip.tif -------------------------------------------------------------------------------- /Resources/statusbar.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/statusbar.tiff -------------------------------------------------------------------------------- /Resources/stop.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/stop.tif -------------------------------------------------------------------------------- /Resources/stopPressed.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/stopPressed.tif -------------------------------------------------------------------------------- /Resources/stopRollover.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/stopRollover.tif -------------------------------------------------------------------------------- /Resources/tabpanel-header-grip.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/tabpanel-header-grip.tif -------------------------------------------------------------------------------- /Resources/tabpanel-header.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/tabpanel-header.tif -------------------------------------------------------------------------------- /Resources/toolbar-manage-tags.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/toolbar-manage-tags.tif -------------------------------------------------------------------------------- /Resources/toolbar-pref-general.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/toolbar-pref-general.tif -------------------------------------------------------------------------------- /Resources/toolbar-pref-managefiles.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/toolbar-pref-managefiles.tiff -------------------------------------------------------------------------------- /Resources/toolbar-pref-tagcloud.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/toolbar-pref-tagcloud.tif -------------------------------------------------------------------------------- /Resources/toolbar-pref-update.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/toolbar-pref-update.tiff -------------------------------------------------------------------------------- /Resources/toolbar-search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/toolbar-search.png -------------------------------------------------------------------------------- /Resources/toolbar-show-tagger.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/toolbar-show-tagger.tif -------------------------------------------------------------------------------- /Resources/toolbar-sort-by-name.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/toolbar-sort-by-name.tif -------------------------------------------------------------------------------- /Resources/toolbar-sort-by-rating.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/toolbar-sort-by-rating.tif -------------------------------------------------------------------------------- /Resources/toolbar-sync.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/toolbar-sync.png -------------------------------------------------------------------------------- /Resources/transparent.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/transparent.tiff -------------------------------------------------------------------------------- /Resources/triangle-gray-collapsed-on.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/triangle-gray-collapsed-on.tif -------------------------------------------------------------------------------- /Resources/triangle-gray-collapsed.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/triangle-gray-collapsed.tif -------------------------------------------------------------------------------- /Resources/triangle-gray-expanded-on.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/triangle-gray-expanded-on.tif -------------------------------------------------------------------------------- /Resources/triangle-gray-expanded.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/triangle-gray-expanded.tif -------------------------------------------------------------------------------- /Resources/warning.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Resources/warning.pdf -------------------------------------------------------------------------------- /Source/AppleScriptDelegateCategory.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär) 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "Core.h" 23 | 24 | 25 | @interface Core (AppleScriptDelegateCategory) 26 | 27 | - (NSArray *)selection; 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Source/CTGradient.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/CTGradient.m -------------------------------------------------------------------------------- /Source/Core.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/Core.h -------------------------------------------------------------------------------- /Source/Core.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/Core.m -------------------------------------------------------------------------------- /Source/Frameworks/NNFilterEngine/NNFilterEngine.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/Frameworks/NNFilterEngine/NNFilterEngine.h -------------------------------------------------------------------------------- /Source/Frameworks/NNFilterEngine/NNFilterEngine.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/Frameworks/NNFilterEngine/NNFilterEngine.m -------------------------------------------------------------------------------- /Source/Frameworks/NNFilterEngine/NNObjectFilter.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/Frameworks/NNFilterEngine/NNObjectFilter.h -------------------------------------------------------------------------------- /Source/Frameworks/NNFilterEngine/NNObjectFilter.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/Frameworks/NNFilterEngine/NNObjectFilter.m -------------------------------------------------------------------------------- /Source/HotkeyDelegateCategory.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär) 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | 22 | #import 23 | #import "Core.h"; 24 | #import "PTHotKeyCenter.h"; 25 | 26 | @class SRRecorderControl; 27 | 28 | 29 | @interface Core (HotkeyDelegateCategory) 30 | 31 | - (void)registerHotkeyForTagger; 32 | 33 | - (PTHotKey *)taggerHotkey; 34 | - (void)setTaggerHotkey:(PTHotKey *)newHotkey; 35 | 36 | @end -------------------------------------------------------------------------------- /Source/LoginItemsAE.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/LoginItemsAE.c -------------------------------------------------------------------------------- /Source/LoginItemsAE.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/LoginItemsAE.h -------------------------------------------------------------------------------- /Source/NSApplication+SystemVersion.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | @interface NSApplication (SystemVersion) 24 | 25 | - (void)getSystemVersionMajor:(NSUInteger *)major 26 | minor:(NSUInteger *)minor 27 | bugFix:(NSUInteger *)bugFix; 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Source/NSBezierPathCategory.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface NSBezierPath (CocoaDevCategory) 25 | 26 | + (NSBezierPath *)bezierPathWithJaggedOvalInRect:(NSRect)r spacing:(CGFloat)spacing; 27 | + (NSBezierPath *)bezierPathWithJaggedPillInRect:(NSRect)r spacing:(CGFloat)spacing; 28 | + (NSBezierPath*)bezierPathWithRoundRectInRect:(NSRect)aRect radius:(CGFloat)radius; 29 | + (NSBezierPath *)bezierPathWithTriangleInRect:(NSRect)r edge:(NSRectEdge)edge; 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /Source/NSDateFormatter+FriendlyFormat.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface NSDateFormatter (FriendlyFormat) 25 | 26 | - (NSString *)friendlyStringFromDate:(NSDate *)date; 27 | - (NSString *)saveStringFromDate:(NSDate *)date; 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Source/NSImage+QuickLook.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSImage+QuickLook.h 3 | // QuickLookTest 4 | // 5 | // Created by Matt Gemmell on 29/10/2007. 6 | // 7 | 8 | #import 9 | 10 | 11 | @interface NSImage (QuickLook) 12 | 13 | 14 | + (NSImage *)imageWithPreviewOfFileAtPath:(NSString *)path ofSize:(NSSize)size asIcon:(BOOL)icon; 15 | 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Source/NSNumberFormatterAdditions.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface NSNumberFormatter (NSNumberFormatterAdditions) 25 | 26 | - (NSString *)stringFromFileSize:(unsigned long long)size; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Source/NSString+CharacterSetChecks.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface NSString (CharacterSetChecks) 25 | 26 | - (BOOL)isWhiteSpace; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Source/NSTextFieldAdditions.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface NSTextField (NSTextFieldAdditions) 25 | 26 | - (NSSize)minSizeForContent; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Source/PAAddTagsCommand.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "NNTagging/NNFile.h" 23 | #import "NNTagging/NNTags.h" 24 | 25 | 26 | @interface PAAddTagsCommand : NSScriptCommand { 27 | 28 | } 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Source/PABoolToColorTransformer.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface PABoolToColorTransformer : NSValueTransformer { 25 | 26 | } 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Source/PABrowserWindow.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PAAppStoreWindow.h" 23 | 24 | 25 | @interface PABrowserWindow : PAAppStoreWindow { 26 | 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Source/PACollectionNotEmpty.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface PACollectionNotEmpty : NSValueTransformer { 25 | 26 | } 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Source/PAContentTypeFilter.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/PAContentTypeFilter.h -------------------------------------------------------------------------------- /Source/PAContentTypeFilter.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/PAContentTypeFilter.m -------------------------------------------------------------------------------- /Source/PAControlledView.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface NSObject (PAControlledViewAdditions) 25 | 26 | - (void)controlledViewHasChanged; 27 | 28 | @end 29 | 30 | 31 | @interface PAControlledView : NSView { 32 | id delegate; 33 | } 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Source/PAControlledView.m: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import "PAControlledView.h" 22 | 23 | @implementation PAControlledView 24 | 25 | - (void)didAddSubview:(NSView *)subview 26 | { 27 | [delegate controlledViewHasChanged]; 28 | } 29 | 30 | @end -------------------------------------------------------------------------------- /Source/PADebugView.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface PADebugView : NSView { 25 | 26 | } 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Source/PADebugView.m: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import "PADebugView.h" 22 | 23 | 24 | @implementation PADebugView 25 | 26 | - (void)dealloc 27 | { 28 | NSLog(@"mainview dealloced"); 29 | [super dealloc]; 30 | } 31 | 32 | - (id)retain 33 | { 34 | NSLog(@"%@ retained to %lu",[self className],[self retainCount]+1); 35 | return [super retain]; 36 | } 37 | 38 | - (oneway void)release 39 | { 40 | NSLog(@"%@ release to %lu",[self className],[self retainCount]-1); 41 | [super release]; 42 | } 43 | 44 | @end 45 | -------------------------------------------------------------------------------- /Source/PAFileBox.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "NNTagging/NNTag.h" 23 | #import "PADropManager.h" 24 | 25 | @interface PAFileBox : NSImageView 26 | { 27 | NSMutableArray *objects; 28 | 29 | PADropManager *dropManager; 30 | } 31 | 32 | - (void)setObjects:(NSArray*)objectArray; 33 | - (NSMutableArray*)objects; 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Source/PAFilenamesDropDataHandler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PADropHandler/PADropDataHandler.h" 23 | #import "NNTagging/NNFile.h" 24 | 25 | @interface PAFilenamesDropDataHandler : PADropDataHandler { 26 | 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Source/PAFilenamesDropHandler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PADropHandler/PADropHandler.h" 23 | #import "PAFilenamesDropDataHandler.h" 24 | 25 | /** 26 | handles NSFilenamesPboardType drops (files) 27 | */ 28 | @interface PAFilenamesDropHandler : PADropHandler { 29 | 30 | } 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /Source/PAFilterButton.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PAButton.h" 23 | 24 | 25 | @interface PAFilterButton : PAButton { 26 | 27 | NSMutableDictionary *filter; 28 | 29 | } 30 | 31 | - (NSMutableDictionary *)filter; 32 | - (void)setFilter:(NSDictionary *)dictionary; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /Source/PAGenericTableColumn.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface NSObject (PAGenericTableColumnDelegate) 25 | 26 | - (id)tableColumn:(NSTableColumn *)column inTableView:(NSTableView *)tableView dataCellForRow:(NSInteger)row; 27 | 28 | @end 29 | 30 | 31 | @interface PAGenericTableColumn : NSTableColumn { 32 | 33 | } 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Source/PAInfoPaneSubview.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "NNTagging/NNFile.h" 23 | #import "NSNumberFormatterAdditions.h" 24 | 25 | 26 | extern NSUInteger const LINE_HEIGHT; 27 | 28 | 29 | @interface PAInfoPaneSubview : NSView { 30 | 31 | } 32 | 33 | 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Source/PALabel.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface PALabel : NSTextField { 25 | 26 | } 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Source/PAMetaMatrixItemCell.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | @interface PAMetaMatrixItemCell : NSActionCell 4 | { 5 | NSString *identifier; 6 | NSMetadataItem *metadataItem; 7 | } 8 | 9 | - (NSString*)identifier; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /Source/PAMetaMatrixItemCell.m: -------------------------------------------------------------------------------- 1 | #import "PAMetaMatrixItemCell.h" 2 | 3 | @implementation PAMetaMatrixItemCell 4 | 5 | /*- (void)drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView 6 | { 7 | 8 | }*/ 9 | 10 | - (void)drawInteriorWithFrame:(NSRect)cellFrame inView:(NSView *)controlView 11 | { 12 | // Draw text 13 | NSString *cellTitle = [NSString stringWithString:[metadataItem valueForAttribute:(id)kMDItemDisplayName]]; 14 | 15 | NSMutableDictionary *fontAttributes = [NSMutableDictionary dictionaryWithCapacity:3]; 16 | [fontAttributes setObject:[NSColor textColor] forKey:NSForegroundColorAttributeName]; 17 | [fontAttributes setObject:[NSFont systemFontOfSize:11] forKey:NSFontAttributeName]; 18 | 19 | [cellTitle drawAtPoint:NSMakePoint(cellFrame.origin.x + 20, cellFrame.origin.y + 2) withAttributes:fontAttributes]; 20 | } 21 | 22 | - (id)initTextCell:(NSString*)aText 23 | { 24 | self = [super initTextCell:aText]; 25 | if (self) { 26 | identifier = [aText retain]; 27 | } 28 | return self; 29 | } 30 | 31 | - (NSString*)identifier 32 | { 33 | return identifier; 34 | } 35 | 36 | - (NSMetadataItem*)metadataItem 37 | { 38 | return metadataItem; 39 | } 40 | 41 | - (void)setMetadataItem:(NSMetadataItem*)item 42 | { 43 | [metadataItem release]; 44 | metadataItem = [item retain]; 45 | } 46 | 47 | - (void)dealloc 48 | { 49 | if(identifier) { [identifier release]; } 50 | if(metadataItem) { [metadataItem release]; } 51 | [super dealloc]; 52 | } 53 | 54 | - (NSSize)cellSize 55 | { 56 | NSSize size = [super cellSize]; 57 | size.height = 20; 58 | return size; 59 | } 60 | @end 61 | -------------------------------------------------------------------------------- /Source/PANotificationReceiver.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | /** 24 | DEBUG CLASS 25 | receives and prints all notifications 26 | */ 27 | @interface PANotificationReceiver : NSObject { 28 | 29 | } 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /Source/PAPopularTagGroup.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PATagGroup.h" 23 | 24 | @interface PAPopularTagGroup : PATagGroup { 25 | 26 | } 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Source/PARecentTagGroup.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PATagGroup.h" 23 | 24 | @interface PARecentTagGroup : PATagGroup { 25 | 26 | } 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Source/PAResultsBookmarkCell.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/PAResultsBookmarkCell.h -------------------------------------------------------------------------------- /Source/PAResultsBookmarkCell.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/PAResultsBookmarkCell.m -------------------------------------------------------------------------------- /Source/PAResultsItemCell.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "NNTagging/NNFile.h" 23 | #import "PAThumbnailManager.h" 24 | #import "NSDateFormatter+FriendlyFormat.h" 25 | #import "FVFinderLabel.h" 26 | #import "NSNumberFormatterAdditions.h" 27 | 28 | 29 | @interface PAResultsItemCell : NSTextFieldCell { 30 | 31 | NNFile *item; 32 | 33 | } 34 | 35 | + (CGFloat)heightOfRow; 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /Source/PAResultsMultiItemCell.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PAResultsMultiItemMatrix.h" 23 | 24 | 25 | @interface PAResultsMultiItemCell : NSCell { 26 | 27 | NSMutableArray *items; 28 | PAResultsMultiItemMatrix *matrix; 29 | 30 | } 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /Source/PAResultsMultiItemGenericCell.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/PAResultsMultiItemGenericCell.h -------------------------------------------------------------------------------- /Source/PAResultsMultiItemGenericCell.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/PAResultsMultiItemGenericCell.m -------------------------------------------------------------------------------- /Source/PAResultsMultiItemMatrix.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/PAResultsMultiItemMatrix.h -------------------------------------------------------------------------------- /Source/PAResultsMultiItemMatrix.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/PAResultsMultiItemMatrix.m -------------------------------------------------------------------------------- /Source/PAResultsMultiItemPlaceholderCell.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface PAResultsMultiItemPlaceholderCell : NSTextFieldCell { 25 | 26 | } 27 | 28 | - (id)initTextCell; 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Source/PAResultsMultiItemThumbnailCell.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PAResultsMultiItemGenericCell.h" 23 | #import "PAThumbnailManager.h" 24 | #import "NSBezierPathCategory.h" 25 | #import "FVFinderLabel.h" 26 | 27 | 28 | @interface PAResultsMultiItemThumbnailCell : PAResultsMultiItemGenericCell { 29 | 30 | } 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /Source/PAResultsOutlineView.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/PAResultsOutlineView.h -------------------------------------------------------------------------------- /Source/PAResultsOutlineView.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/PAResultsOutlineView.m -------------------------------------------------------------------------------- /Source/PAResultsTableColumn.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/PAResultsTableColumn.h -------------------------------------------------------------------------------- /Source/PAResultsTableColumn.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/PAResultsTableColumn.m -------------------------------------------------------------------------------- /Source/PASegmentedImageControl.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PAImageButton.h" 23 | 24 | 25 | @interface PASegmentedImageControl : NSMatrix { 26 | 27 | NSMutableDictionary *tag; 28 | 29 | } 30 | 31 | - (void)addSegment:(PAImageButtonCell *)imageButtonCell; 32 | 33 | - (NSMutableDictionary *)tag; 34 | - (void)setTag:(NSMutableDictionary *)aTag; 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /Source/PASelectedTagCell.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PAImageButton.h" 23 | 24 | 25 | @interface PASelectedTagCell : PAImageButtonCell { 26 | 27 | NSDictionary *valueDict; 28 | 29 | PAImageButton *contentButton; 30 | PAImageButton *stopButton; 31 | 32 | } 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /Source/PAServices.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär) 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | 22 | #import 23 | 24 | #import "PADropManager.h" 25 | 26 | @interface PAServices : NSObject { 27 | PADropManager *dropManager; 28 | } 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Source/PASidebarContentView.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PADropManager.h" 23 | 24 | /** 25 | this custom view is only needed so that the sidebar responds to dragged files 26 | and shows itself 27 | */ 28 | @interface PASidebarContentView : NSView { 29 | 30 | } 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /Source/PASidebarTableColumn.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PATagTextFieldCell.h" 23 | 24 | @interface PASidebarTableColumn : NSTableColumn { 25 | PATagTextFieldCell *dataCell; 26 | } 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Source/PASidebarTableColumn.m: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import "PASidebarTableColumn.h" 22 | 23 | 24 | @implementation PASidebarTableColumn 25 | 26 | - (void)awakeFromNib 27 | { 28 | dataCell = [[PATagTextFieldCell alloc] init]; 29 | [self setDataCell:dataCell]; 30 | } 31 | 32 | - (void)dealloc 33 | { 34 | [dataCell release]; 35 | [super dealloc]; 36 | } 37 | 38 | @end 39 | -------------------------------------------------------------------------------- /Source/PASidebarTableView.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "NSBezierPathCategory.h" 23 | /** 24 | only needed for gathering dragevents 25 | */ 26 | @interface PASidebarTableView : NSTableView { 27 | 28 | } 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Source/PASidebarTableViewDropController.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "NNTagging/NNSimpleTag.h" 23 | #import "NNTagging/NNTaggableObject.h" 24 | #import "PADropManager.h" 25 | 26 | 27 | @interface PASidebarTableViewDropController : NSObject { 28 | 29 | NSArrayController *tags; 30 | PADropManager *dropManager; 31 | 32 | } 33 | 34 | - (id)initWithTags:(NSArrayController*)usedTags; 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /Source/PASmartFolder.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "NNTagging/NNTag.h" 23 | #import "NNTagging/NNTagSet.h" 24 | #import "NNTagging/NNTagStoreManager.h" 25 | 26 | 27 | @interface PASmartFolder : NSObject { 28 | 29 | } 30 | 31 | + (NSString *)smartFolderFilenameForTag:(NNTag *)tag; 32 | + (NSString *)smartFolderFilenameForTagSet:(NNTagSet *)tagSet; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /Source/PASourceItemCell.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PASourceItem.h" 23 | #import "NNTagging/NNTag.h" 24 | #import "PAImageButton.h" 25 | 26 | 27 | @interface PASourceItemCell : NSTextFieldCell { 28 | 29 | PASourceItem *item; 30 | 31 | } 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /Source/PASourcePanel.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PASourceItem.h" 23 | #import "NSBezierPathCategory.h" 24 | 25 | 26 | @interface PASourcePanel : NSOutlineView { 27 | 28 | } 29 | 30 | - (void)selectItemWithValue:(NSString *)value; 31 | - (void)reloadDataAndSelectItemWithValue:(NSString *)value; 32 | - (PASourceItem *)itemWithValue:(NSString *)value; 33 | 34 | - (void)removeSelectedItem; 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /Source/PAStatusBarButton.h: -------------------------------------------------------------------------------- 1 | // 2 | // PASimpleStatusBarButton.h 3 | // punakea 4 | // 5 | // Created by Daniel on 27.04.07. 6 | // Copyright 2007 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "PAStatusBarButtonCell.h" 11 | 12 | @class PAStatusBar; 13 | 14 | 15 | @interface PAStatusBarButton : NSControl { 16 | 17 | PAStatusBar *statusBar; 18 | 19 | NSString *identifier; 20 | 21 | NSToolTipTag toolTipTag; 22 | NSString *toolTip; 23 | 24 | NSTextAlignment alignment; 25 | 26 | } 27 | 28 | + (PAStatusBarButton *)statusBarButton; /**< Use this for init */ 29 | 30 | - (PAStatusBar *)statusBar; 31 | -(void)setStatusBar:(PAStatusBar *)sb; 32 | - (NSString *)identifier; 33 | - (void)setIdentifier:(NSString *)anIdentifier; 34 | - (NSButtonType)buttonType; 35 | - (void)setButtonType:(NSButtonType)aType; 36 | - (void)setImage:(NSImage *)anImage; 37 | - (void)setAlternateImage:(NSImage *)anImage; 38 | - (NSString *)toolTip; 39 | - (void)setToolTip:(NSString *)aToolTip; 40 | - (BOOL)alternateState; 41 | - (void)setAlternateState:(BOOL)flag; 42 | 43 | @end 44 | -------------------------------------------------------------------------------- /Source/PAStringFilter.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "NNObjectFilter.h" 23 | 24 | 25 | @interface PAStringFilter : NNObjectFilter { 26 | NSString *filter; 27 | } 28 | 29 | - (id)initWithFilter:(NSString*)filterString; 30 | - (NSString*)filter; 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /Source/PAStringPrefixFilter.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/PAStringPrefixFilter.h -------------------------------------------------------------------------------- /Source/PAStringPrefixFilter.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/PAStringPrefixFilter.m -------------------------------------------------------------------------------- /Source/PATabPanel.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface PATabPanel : NSTabView { 25 | 26 | IBOutlet NSSplitView *resizableSplitView; 27 | 28 | NSRect gripRect; 29 | BOOL gripDragged; 30 | NSSize gripDragOffset; 31 | 32 | } 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /Source/PATagGroup.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "NNTagging/NNTags.h" 23 | 24 | @interface PATagGroup : NSObject { 25 | NSInteger maxSize; 26 | NSMutableArray *groupedTags; 27 | NSArray *sortDescriptors; 28 | 29 | NNTags *tags; 30 | } 31 | 32 | - (NSMutableArray*)groupedTags; 33 | - (void)tagsHaveChanged; 34 | 35 | - (void)setSortDescriptors:(NSArray*)someSortDescriptors; 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /Source/PATagManagementViewMainView.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface PATagManagementViewMainView : NSView { 25 | 26 | } 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Source/PATagManagementViewMainView.m: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import "PATagManagementViewMainView.h" 22 | 23 | 24 | @implementation PATagManagementViewMainView 25 | 26 | - (void)drawRect:(NSRect)rect 27 | { 28 | [[NSColor whiteColor] set]; 29 | NSRectFill([self bounds]); 30 | } 31 | 32 | - (void)dealloc 33 | { 34 | [super dealloc]; 35 | } 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /Source/PATagTextFieldCell.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "NSBezierPathCategory.h" 23 | 24 | 25 | @interface PATagTextFieldCell : NSTextFieldCell { 26 | 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Source/PATaggerHeaderCell.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | @class CTGradient; 24 | 25 | 26 | @interface PATaggerHeaderCell : NSTextFieldCell { 27 | 28 | } 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Source/PATaggerItemCell.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "NNTagging/NNFile.h" 23 | #import "PAThumbnailManager.h" 24 | 25 | @interface PATaggerItemCell : NSTextFieldCell { 26 | NNFile *file; 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Source/PATaggerTableView.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "BGHUDAppKit/BGHUDTableView.h" 23 | #import "NNTagging/NNTaggableObject.h" 24 | 25 | 26 | @interface PATaggerTableView : BGHUDTableView { 27 | 28 | } 29 | 30 | - (void)beginEditing; 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /Source/PATitleBar.h: -------------------------------------------------------------------------------- 1 | // 2 | // PATitleBar.h 3 | // punakea 4 | // 5 | // Created by Daniel Bär on 04.12.11. 6 | // Copyright 2012 nudge:nudge. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "PAAppStoreWindow.h" 11 | #import "PATitleBarButton.h" 12 | #import "PATitleBarSearchButton.h" 13 | #import "PATitleBarSpinButton.h" 14 | 15 | @class PABrowserWindow; 16 | 17 | extern NSSize const TITLEBAR_BUTTON_MARGIN; 18 | 19 | 20 | typedef enum 21 | { 22 | //PATitleBarButtonLeftAlignment, 23 | PATitleBarButtonRightAlignment, 24 | //PATitleBarButtonCenteredAlignment 25 | } PATitleBarButtonAlignment; 26 | 27 | 28 | @interface PATitleBar : NSView 29 | { 30 | 31 | } 32 | 33 | - (NSBezierPath*)clippingPathWithRect:(NSRect)aRect cornerRadius:(CGFloat)radius; 34 | 35 | - (void)addSubview:(NSView *)aView positioned:(PATitleBarButtonAlignment)place; 36 | - (PATitleBarButton *)buttonWithIdentifier:(NSString *)anIdentifier; 37 | 38 | - (void)performClickOnButtonWithIdentifier:(NSString *)anIdentifier; 39 | 40 | @end 41 | -------------------------------------------------------------------------------- /Source/PATitleBarButton.h: -------------------------------------------------------------------------------- 1 | // 2 | // PASimpleStatusBarButton.h 3 | // punakea 4 | // 5 | // Created by Daniel on 27.04.07. 6 | // Copyright 2007 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "PATitleBarButtonCell.h" 11 | 12 | 13 | @interface PATitleBarButton : NSControl 14 | { 15 | NSString *identifier; 16 | 17 | NSToolTipTag toolTipTag; 18 | NSString *toolTip; 19 | 20 | NSTextAlignment alignment; 21 | 22 | } 23 | 24 | + (PATitleBarButton *)titleBarButton; /**< Use this for init */ 25 | 26 | - (NSString *)identifier; 27 | - (void)setIdentifier:(NSString *)anIdentifier; 28 | - (NSButtonType)buttonType; 29 | - (void)setButtonType:(NSButtonType)aType; 30 | - (void)setImage:(NSImage *)anImage; 31 | - (void)setAlternateImage:(NSImage *)anImage; 32 | - (NSString *)toolTip; 33 | - (void)setToolTip:(NSString *)aToolTip; 34 | - (BOOL)alternateState; 35 | - (void)setAlternateState:(BOOL)flag; 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /Source/PATitleBarButtonCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // PATitleBarButtonCell.h 3 | // punakea 4 | // 5 | // Created by Daniel Bär on 04.12.11. 6 | // Copyright 2012 nudge:nudge. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface PATitleBarButtonCell : NSActionCell 12 | { 13 | NSButtonType buttonType; 14 | 15 | NSImage *image; 16 | NSImage *alternateImage; /**< Image that will be displayed if user holds down the option key */ 17 | 18 | BOOL alternateState; 19 | } 20 | 21 | - (NSButtonType)buttonType; 22 | - (void)setButtonType:(NSButtonType)aType; 23 | 24 | - (NSImage *)image; 25 | - (void)setImage:(NSImage *)anImage; 26 | - (NSImage *)alternateImage; 27 | - (void)setAlternateImage:(NSImage *)anImage; 28 | 29 | - (BOOL)alternateState; 30 | - (void)setAlternateState:(BOOL)flag; 31 | 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /Source/PATitleBarSearchButton.h: -------------------------------------------------------------------------------- 1 | // 2 | // PATitleBarSearchButton.h 3 | // punakea 4 | // 5 | // Created by Daniel Bär on 04.12.11. 6 | // Copyright 2012 nudge:nudge. All rights reserved. 7 | // 8 | 9 | #import "PATitleBarButton.h" 10 | #import "NNTagging/NNTags.h" 11 | 12 | 13 | @interface PATitleBarSearchButton : PATitleBarButton 14 | { 15 | NSSearchField *searchField; 16 | 17 | BOOL expanded; 18 | float extensionWidth; 19 | } 20 | 21 | + (PATitleBarSearchButton *)titleBarButton; /**< Use this for init */ 22 | 23 | - (void)showSearchField:(id)sender; 24 | - (void)abortSearch:(id)sender; 25 | - (void)closeSearchField:(id)sender; 26 | 27 | - (void)selectSearchMenuItemWithTag:(NSInteger)tag; 28 | 29 | - (float)extensionWidth; 30 | - (void)setExtensionWidth:(float)aWidth; 31 | 32 | - (NSSearchField *)searchField; 33 | - (void)setSearchField:(NSSearchField *)aSearchField; 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Source/PATitleBarSpinButton.h: -------------------------------------------------------------------------------- 1 | // 2 | // PATitleBarSpinButton.h 3 | // punakea 4 | // 5 | // Created by Daniel Bär on 18.12.11. 6 | // Copyright 2012 nudge:nudge. All rights reserved. 7 | // 8 | 9 | #import "PATitleBarButton.h" 10 | #import "PATitleBarSpinButtonCell.h" 11 | //#import 12 | 13 | 14 | @interface PATitleBarSpinButton : PATitleBarButton 15 | { 16 | NSImageView *imageView; 17 | BOOL shouldStop; 18 | } 19 | 20 | + (PATitleBarSpinButton *)titleBarButton; 21 | 22 | - (void)drawImage:(NSImage *)anImage; 23 | 24 | - (void)start:(id)sender; 25 | - (void)stop:(id)sender; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Source/PATitleBarSpinButtonCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // PATitleBarSpinButtonCell.h 3 | // punakea 4 | // 5 | // Created by Daniel Bär on 19.12.11. 6 | // Copyright 2012 nudge:nudge. All rights reserved. 7 | // 8 | 9 | #import "PATitleBarButtonCell.h" 10 | 11 | 12 | @interface PATitleBarSpinButtonCell : PATitleBarButtonCell 13 | { 14 | BOOL spinning; 15 | } 16 | 17 | - (void)setSpinning:(BOOL)flag; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Source/PATitleBarSpinButtonCell.m: -------------------------------------------------------------------------------- 1 | // 2 | // PATitleBarSpinButtonCell.m 3 | // punakea 4 | // 5 | // Created by Daniel Bär on 19.12.11. 6 | // Copyright 2012 nudge:nudge. All rights reserved. 7 | // 8 | 9 | #import "PATitleBarSpinButtonCell.h" 10 | 11 | @implementation PATitleBarSpinButtonCell 12 | 13 | #pragma mark Init + Dealloc 14 | - (id)initImageCell:(NSImage *)anImage 15 | { 16 | self = [super initImageCell:anImage]; 17 | if(self) 18 | { 19 | spinning = NO; 20 | } 21 | return self; 22 | } 23 | 24 | - (void)dealloc 25 | { 26 | [super dealloc]; 27 | } 28 | 29 | 30 | #pragma mark Drawing 31 | - (void)drawInteriorWithFrame:(NSRect)cellFrame inView:(NSView *)controlView 32 | { 33 | NSImage *tintedImage = [self tintedImage:[[[self image] copy] autorelease] cellFrame:[[self controlView] frame]]; 34 | [[self controlView] drawImage:tintedImage]; 35 | } 36 | 37 | 38 | #pragma mark Actions 39 | - (void)stopTracking:(NSPoint)lastPoint at:(NSPoint)stopPoint inView:(NSView *)controlView mouseIsUp:(BOOL)flag 40 | { 41 | if (!spinning) 42 | { 43 | spinning = YES; 44 | [[self controlView] start:nil]; 45 | [super stopTracking:lastPoint at:stopPoint inView:controlView mouseIsUp:flag]; 46 | } /*else { 47 | // TODO Only for testing. Remove if connected to external actions. 48 | [[self controlView] stop:nil]; 49 | }*/ 50 | } 51 | 52 | 53 | #pragma mark Accessors 54 | - (void)setSpinning:(BOOL)flag 55 | { 56 | spinning = flag; 57 | } 58 | 59 | @end 60 | -------------------------------------------------------------------------------- /Source/PATypeAheadView.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface PATypeAheadView : NSView { 25 | 26 | } 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Source/PATypeAheadView.m: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import "PATypeAheadView.h" 22 | 23 | 24 | @implementation PATypeAheadView 25 | 26 | - (void)drawRect:(NSRect)rect 27 | { 28 | [[NSColor colorWithDeviceRed:(189.0/255.0) green:(198.0/255.0) blue:(213.0/255.0) alpha:1.0] set]; 29 | NSRectFill([self bounds]); 30 | } 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /Source/PTHotKey.h: -------------------------------------------------------------------------------- 1 | // 2 | // PTHotKey.h 3 | // Protein 4 | // 5 | // Created by Quentin Carnicelli on Sat Aug 02 2003. 6 | // Updated by Joel Levin in August 2009 for Snow Leopard/64-bit 7 | // Copyright (c) 2003 Quentin D. Carnicelli. All rights reserved. 8 | // 9 | 10 | #import 11 | #import "PTKeyCombo.h" 12 | 13 | @interface PTHotKey : NSObject 14 | { 15 | NSString* mIdentifier; 16 | NSString* mName; 17 | PTKeyCombo* mKeyCombo; 18 | id mTarget; 19 | SEL mAction; 20 | UInt32 mAssociatedID; 21 | } 22 | 23 | @property (nonatomic, retain) NSString* identifier; 24 | @property (nonatomic, retain) NSString* name; 25 | @property (nonatomic, retain) PTKeyCombo* keyCombo; 26 | @property (nonatomic, assign) id target; 27 | @property (nonatomic, assign) SEL action; 28 | @property (nonatomic, assign) UInt32 associatedID; 29 | 30 | - (id)initWithIdentifier: (id)identifier keyCombo: (PTKeyCombo*)combo; 31 | - (id)init; 32 | 33 | - (void)invoke; 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Source/PTHotKey.m: -------------------------------------------------------------------------------- 1 | // 2 | // PTHotKey.m 3 | // Protein 4 | // 5 | // Created by Quentin Carnicelli on Sat Aug 02 2003. 6 | // Updated by Joel Levin in August 2009 for Snow Leopard/64-bit 7 | // Copyright (c) 2003 Quentin D. Carnicelli. All rights reserved. 8 | // 9 | 10 | #import "PTHotKey.h" 11 | 12 | #import "PTHotKeyCenter.h" 13 | #import "PTKeyCombo.h" 14 | 15 | 16 | @implementation PTHotKey 17 | 18 | @synthesize identifier = mIdentifier; 19 | @synthesize name = mName; 20 | @synthesize target = mTarget; 21 | @synthesize action = mAction; 22 | @synthesize associatedID = mAssociatedID; 23 | 24 | @dynamic keyCombo; 25 | 26 | - (id)init 27 | { 28 | return [self initWithIdentifier: nil keyCombo: nil]; 29 | } 30 | 31 | 32 | - (id)initWithIdentifier: (id)identifier keyCombo: (PTKeyCombo*)combo 33 | { 34 | self = [super init]; 35 | 36 | if( self ) 37 | { 38 | self.identifier = identifier; 39 | self.keyCombo = combo; 40 | } 41 | 42 | return self; 43 | } 44 | 45 | - (void)dealloc 46 | { 47 | self.identifier = nil; 48 | self.name = nil; 49 | 50 | [mKeyCombo release]; 51 | 52 | [super dealloc]; 53 | } 54 | 55 | - (NSString*)description 56 | { 57 | return [NSString stringWithFormat: @"<%@: %@, %@>", NSStringFromClass( [self class] ), self.identifier, self.keyCombo]; 58 | } 59 | 60 | #pragma mark - 61 | 62 | - (void)setKeyCombo: (PTKeyCombo*)combo 63 | { 64 | if( combo == nil ) 65 | combo = [PTKeyCombo clearKeyCombo]; 66 | 67 | [combo retain]; 68 | [mKeyCombo release]; 69 | mKeyCombo = combo; 70 | } 71 | 72 | - (PTKeyCombo*)keyCombo 73 | { 74 | return mKeyCombo; 75 | } 76 | 77 | - (void)invoke 78 | { 79 | [mTarget performSelector: mAction withObject: self]; 80 | } 81 | 82 | @end 83 | -------------------------------------------------------------------------------- /Source/PTHotKeyCenter.h: -------------------------------------------------------------------------------- 1 | // 2 | // PTHotKeyCenter.h 3 | // Protein 4 | // 5 | // Created by Quentin Carnicelli on Sat Aug 02 2003. 6 | // Updated by Joel Levin in August 2009 for Snow Leopard/64-bit 7 | // Copyright (c) 2003 Quentin D. Carnicelli. All rights reserved. 8 | // 9 | // Contributers: 10 | // Quentin D. Carnicelli 11 | // Finlay Dobbie 12 | // Vincent Pottier 13 | 14 | #import 15 | @class PTHotKey; 16 | 17 | @interface PTHotKeyCenter : NSObject 18 | { 19 | NSMutableDictionary* mHotKeys; //Keys are NSValue of EventHotKeyRef 20 | NSMutableDictionary* mHotKeyIDs; 21 | BOOL mEventHandlerInstalled; 22 | } 23 | 24 | + (PTHotKeyCenter *)sharedCenter; 25 | 26 | - (BOOL)registerHotKey: (PTHotKey*)hotKey; 27 | - (void)unregisterHotKey: (PTHotKey*)hotKey; 28 | 29 | - (NSArray*)allHotKeys; 30 | - (PTHotKey*)hotKeyWithIdentifier: (id)ident; 31 | 32 | - (void)sendEvent: (NSEvent*)event; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /Source/PTKeyCombo.h: -------------------------------------------------------------------------------- 1 | // 2 | // PTKeyCombo.h 3 | // Protein 4 | // 5 | // Created by Quentin Carnicelli on Sat Aug 02 2003. 6 | // Copyright (c) 2003 Quentin D. Carnicelli. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface PTKeyCombo : NSObject 12 | { 13 | NSInteger mKeyCode; 14 | NSUInteger mModifiers; 15 | } 16 | 17 | + (id)clearKeyCombo; 18 | + (id)keyComboWithKeyCode: (NSInteger)keyCode modifiers: (NSUInteger)modifiers; 19 | - (id)initWithKeyCode: (NSInteger)keyCode modifiers: (NSUInteger)modifiers; 20 | 21 | - (id)initWithPlistRepresentation: (id)plist; 22 | - (id)plistRepresentation; 23 | 24 | - (BOOL)isEqual: (PTKeyCombo*)combo; 25 | 26 | - (NSInteger)keyCode; 27 | - (NSUInteger)modifiers; 28 | 29 | - (BOOL)isClearCombo; 30 | - (BOOL)isValidHotKeyCombo; 31 | 32 | @end -------------------------------------------------------------------------------- /Source/Plugins/URLDropHandler/PAPublicURLDropHandler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PADropHandler/PADropHandler.h" 23 | #import "PAURLDropDataHandler.h"; 24 | 25 | 26 | 27 | @interface PAPublicURLDropHandler : PADropHandler { 28 | 29 | } 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /Source/Plugins/URLDropHandler/PAURLDropDataHandler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PADropHandler/PADropDataHandler.h" 23 | #import "NNTagging/NNFile.h" 24 | 25 | @interface PAURLDropDataHandler : PADropDataHandler { 26 | 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Source/Plugins/URLDropHandler/PAWebURLsWithTitlesPboardTypeDropHandler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "PADropHandler/PADropHandler.h" 23 | #import "PAURLDropDataHandler.h"; 24 | 25 | /** 26 | handles WebURLsWithTitlesPboardType drops (address-bar drops, links, bookmarks in safari, address-bar drops in camino) 27 | */ 28 | @interface PAWebURLsWithTitlesPboardTypeDropHandler : PADropHandler { 29 | 30 | } 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /Source/ToolbarDelegateCategory.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/ToolbarDelegateCategory.h -------------------------------------------------------------------------------- /Source/ToolbarDelegateCategory.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Source/ToolbarDelegateCategory.m -------------------------------------------------------------------------------- /Source/UKNibOwner.h: -------------------------------------------------------------------------------- 1 | /* ============================================================================= 2 | FILE: UKNibOwner.h 3 | PROJECT: CocoaTADS 4 | 5 | COPYRIGHT: (c) 2004 M. Uli Kusterer, all rights reserved. 6 | 7 | AUTHORS: M. Uli Kusterer - UK 8 | 9 | LICENSES: GPL, Modified BSD 10 | 11 | REVISIONS: 12 | 2004-11-13 UK Created. 13 | ========================================================================== */ 14 | 15 | /* 16 | UKNibOwner is a little base class for your classes. It automatically loads 17 | a NIB file with the same name as your class (e.g. "UKNibOwnerSubClass.nib") 18 | and takes care of releasing all top-level objects in the NIB when it is 19 | released. All you have to do is hook up the outlets in the NIB. 20 | */ 21 | 22 | // ----------------------------------------------------------------------------- 23 | // Headers: 24 | // ----------------------------------------------------------------------------- 25 | 26 | #import 27 | 28 | 29 | // ----------------------------------------------------------------------------- 30 | // Classes: 31 | // ----------------------------------------------------------------------------- 32 | 33 | @interface UKNibOwner : NSObject 34 | { 35 | NSMutableArray* topLevelObjects; 36 | } 37 | 38 | -(NSString*) nibFilename; // Defaults to name of the class. 39 | 40 | @end 41 | -------------------------------------------------------------------------------- /Source/UKSystemInfo.h: -------------------------------------------------------------------------------- 1 | // 2 | // UKSystemInfo.h 3 | // UKSystemInfo 4 | // 5 | // Created by Uli Kusterer on 23.09.04. 6 | // Copyright 2004 M. Uli Kusterer. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | 12 | NSUInteger UKPhysicalRAMSize(); // RAM Size in MBs. 13 | NSString* UKSystemVersionString(); // System version as a string MM.m.b 14 | NSUInteger UKClockSpeed(); // CPU speed in MHz. 15 | NSUInteger UKCountCores(); // Number of CPU cores. This is always >= number of CPUs. 16 | NSString* UKMachineName(); // Name of Mac model, as best as we can determine. 17 | NSString* UKCPUName(); // Same as UKAutoreleasedCPUName( NO ); 18 | NSString* UKAutoreleasedCPUName( BOOL releaseIt ); // Returns CPU name, i.e. "G3", "G4" etc. If releaseIt is YES, this will look up the name anew each time, otherwise it will cache the name for subsequent calls. Doesn't support the G5 :-( 19 | //NSString* UKSystemSerialNumber(); 20 | #warning 64BIT: Inspect use of long 21 | #warning 64BIT: Inspect use of long 22 | #warning 64BIT: Inspect use of long 23 | void UKGetSystemVersionComponents( long* outMajor, long* outMinor, long* outBugfix ); // System version as the separate components (Major.Minor.Bugfix). 24 | 25 | // Don't use the following for new code: 26 | // (Since the number is in BCD, the maximum for minor and bugfix revisions is 9, so this returns 1049 for 10.4.10) 27 | #warning 64BIT: Inspect use of long 28 | long UKSystemVersion(); // System version as BCD number, I.e. 0xMMmb 29 | -------------------------------------------------------------------------------- /Source/URLHandlerCategory.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär) 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | #import "Core.h" 23 | 24 | 25 | @interface Core (URLHandlerCategory) 26 | 27 | - (NSArray*)tagsForPunakeaURL:(NSString*)tagURL; 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Source/UnitTests/PATaggerUnitTest.h: -------------------------------------------------------------------------------- 1 | // 2 | // PATaggerUnitTest.h 3 | // punakea 4 | // 5 | // Created by Johannes Hoffart on 01.11.06. 6 | // Copyright 2006 nudge:nudge. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "NNTagging/NNFile.h" 11 | #import "NNTagging/NNTags.h" 12 | #import "NNTagging/NNSimpleTag.h" 13 | 14 | @interface PATaggerUnitTest : SenTestCase { 15 | NSArray *filenames; 16 | PATagger *tagger; 17 | NNTags *tags; 18 | NNSimpleTagFactory *simpleTagFactory; 19 | NSMutableArray *testTags; 20 | } 21 | 22 | - (void)assertArrayContentOf:(NSArray*)a isEqualTo:(NSArray*)b; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Source/appstarter_bsd.c: -------------------------------------------------------------------------------- 1 | /* 2 | * appstarter.c 3 | * punakea 4 | * 5 | * Created by Johannes Hoffart on 08.11.06. 6 | * Copyright 2006 nudge:nudge. All rights reserved. 7 | * 8 | */ 9 | 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | 16 | int main() 17 | { 18 | pid_t pid; 19 | 20 | pid = fork(); 21 | if (pid < 0) // error 22 | { 23 | fprintf(stderr, "could not fork"); 24 | exit(-1); 25 | } 26 | else if (pid == 0) // child process 27 | { 28 | char current_path[MAXPATHLEN]; 29 | char *relative_executable_path = "MacOs/Punakea"; 30 | char *not_needed_string = "Resources"; 31 | 32 | //get current path 33 | getcwd(current_path,MAXPATHLEN); 34 | 35 | // get base path length 36 | int base_path_length = strlen(current_path)-strlen(not_needed_string); 37 | 38 | // get final path 39 | char final_path[base_path_length + strlen(relative_executable_path)]; 40 | 41 | int i; 42 | 43 | for (i=0;i 7 | // 8 | // Permission is hereby granted, free of charge, to any person obtaining a copy 9 | // of this software and associated documentation files (the "Software"), to deal 10 | // in the Software without restriction, including without limitation the rights 11 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 12 | // copies of the Software, and to permit persons to whom the Software is 13 | // furnished to do so, subject to the following conditions: 14 | // 15 | // The above copyright notice and this permission notice shall be included in 16 | // all copies or substantial portions of the Software. 17 | // 18 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 21 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 24 | // THE SOFTWARE. 25 | 26 | // 27 | // lcl_config_extensions.h template. 28 | // 29 | 30 | 31 | // 32 | // The lcl_config_extensions.h file can be used to #include, #import, or define 33 | // log extensions. 34 | // 35 | 36 | -------------------------------------------------------------------------------- /Source/lcl_config_logger.h: -------------------------------------------------------------------------------- 1 | // 2 | // 3 | // lcl_config_logger.h 4 | // 5 | // 6 | // Copyright (c) 2008-2010 Arne Harren 7 | // 8 | // Permission is hereby granted, free of charge, to any person obtaining a copy 9 | // of this software and associated documentation files (the "Software"), to deal 10 | // in the Software without restriction, including without limitation the rights 11 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 12 | // copies of the Software, and to permit persons to whom the Software is 13 | // furnished to do so, subject to the following conditions: 14 | // 15 | // The above copyright notice and this permission notice shall be included in 16 | // all copies or substantial portions of the Software. 17 | // 18 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 21 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 24 | // THE SOFTWARE. 25 | 26 | // Use LCLLogFile as the LibComponentLogging logging back-end. 27 | #import "LCLLogFile.h" 28 | 29 | // The detailed configuration of the LCLLogFile class is stored in the 30 | // LCLLogFileConfig.h file which gets imported by LCLLogFile.h. 31 | 32 | -------------------------------------------------------------------------------- /Source/main.m: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2012 nudge:nudge (Johannes Hoffart & Daniel Bär) 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | int main(int argc, char *argv[]) 24 | { 25 | return NSApplicationMain(argc, (const char **) argv); 26 | } 27 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/English.lproj/Global.strings: -------------------------------------------------------------------------------- 1 | "DOCUMENT" = "Document"; // Used for unknown kMDItemKind -------------------------------------------------------------------------------- /Subprojects/NNTagging/English.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Subprojects/NNTagging/English.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /Subprojects/NNTagging/English.lproj/MDSimpleGrouping.strings: -------------------------------------------------------------------------------- 1 | /** 2 | * filename: MDSimpleGrouping.strings 3 | * created : Tue Jun 15 17:10:50 2004 4 | * LastEditDate Was "Thu Feb 17 13:37:19 2005" 5 | * 6 | */ 7 | 8 | /* Group names 9 | * These should be plural in most cases 10 | * the keys should match whats in MDSimpleGrouping.plist 11 | */ 12 | "APPLICATIONS" = "Applications"; 13 | "DIRECTORIES" = "Folders"; 14 | "MUSIC" = "Music"; 15 | "MOVIES" = "Movies"; 16 | "PDF" = "PDF Documents"; 17 | "DOCUMENTS" = "Documents"; 18 | "EMAIL" = "Mail Messages"; 19 | "IMAGES" = "Images"; 20 | "CONTACT" = "Contacts"; 21 | "SYSTEM_PREFS" = "System Preferences"; 22 | "EVENT_TODO" = "Events & To Do's"; 23 | "FONTS" = "Fonts"; 24 | "PRESENTATIONS" = "Presentations"; 25 | "BOOKMARKS" = "Bookmarks"; 26 | 27 | /* Top hit */ 28 | "TOP_HIT" = "Top Hit"; 29 | 30 | /* Keys used in grouping the date */ 31 | "NO_AUTHORS" = "No Authors"; 32 | "0 FUTURE" = "Future"; 33 | "1 TODAY" = "Today"; 34 | "2 YESTERDAY" = "Yesterday"; 35 | "3 LAST_WEEK" = "Previous 7 Days"; 36 | "4 LAST_MONTH" = "Previous 30 Days"; 37 | "5 EARLIER" = "Earlier"; 38 | "6 NO_DATE" = "No Date"; 39 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | eu.nudgenudge.nntagging 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleSignature 20 | NNNN 21 | CFBundleVersion 22 | 1.13 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2006-2010 nudge:nudge 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. -------------------------------------------------------------------------------- /Subprojects/NNTagging/NNTagging.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/NNTagging.xcodeproj/project.xcworkspace/xcuserdata/daniel.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Subprojects/NNTagging/NNTagging.xcodeproj/project.xcworkspace/xcuserdata/daniel.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /Subprojects/NNTagging/NNTagging.xcodeproj/project.xcworkspace/xcuserdata/daniel.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/NNTagging_Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'NNTagging' target in the 'NNTagging' project. 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | 9 | #define LCLLogFile NNTaggingLCLLogFile 10 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/README: -------------------------------------------------------------------------------- 1 | see http://www.nudgenudge.eu 2 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Resources/Settings.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | General.TagDB.Location 6 | ~/Library/Application Support/Punakea/DB/tags 7 | ManageFiles.ManagedFolder.Enabled 8 | 9 | ManageFiles.ManagedFolder.Location 10 | ~/Library/Application Support/Punakea/Files/ 11 | ManageFiles.TagsFolder.Enabled 12 | 13 | ManageFiles.TagsFolder.Location 14 | ~/Documents/Punakea/Tags/ 15 | ManageFiles.TagsFolder.Depth 16 | 3 17 | 18 | 19 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Resources/empty_file: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/FMDatabase.h: -------------------------------------------------------------------------------- 1 | #import 2 | #import "sqlite3.h" 3 | #import "FMResultSet.h" 4 | 5 | @interface FMDatabase : NSObject 6 | { 7 | sqlite3* db; 8 | NSString* databasePath; 9 | BOOL logsErrors; 10 | BOOL crashOnErrors; 11 | NSLock *inUse; 12 | BOOL inTransaction; 13 | BOOL traceExecution; 14 | BOOL checkedOut; 15 | NSInteger busyRetryTimeout; 16 | } 17 | 18 | + (FMDatabase*)databaseWithPath:(NSString*)inPath; 19 | - (id)initWithPath:(NSString*)inPath; 20 | 21 | - (BOOL) open; 22 | - (void) close; 23 | - (BOOL) goodConnection; 24 | 25 | - (NSString*) lastErrorMessage; 26 | - (NSInteger) lastErrorCode; 27 | - (BOOL) hadError; 28 | - (sqlite_int64) lastInsertRowId; 29 | 30 | - (sqlite3*) sqliteHandle; 31 | 32 | - (BOOL) executeUpdate:(NSString*)objs, ...; 33 | - (id) executeQuery:(NSString*)obj, ...; 34 | 35 | - (BOOL) rollback; 36 | - (BOOL) commit; 37 | - (BOOL) beginTransaction; 38 | - (BOOL) beginDeferredTransaction; 39 | 40 | - (BOOL)logsErrors; 41 | - (void)setLogsErrors:(BOOL)flag; 42 | 43 | - (BOOL)crashOnErrors; 44 | - (void)setCrashOnErrors:(BOOL)flag; 45 | 46 | - (void)lockDB; 47 | - (void)unlockDB; 48 | 49 | - (BOOL)traceExecution; 50 | - (void)setTraceExecution:(BOOL)flag; 51 | 52 | - (BOOL)checkedOut; 53 | - (void)setCheckedOut:(BOOL)flag; 54 | 55 | - (NSInteger)busyRetryTimeout; 56 | - (void)setBusyRetryTimeout:(NSInteger)newBusyRetryTimeout; 57 | 58 | 59 | + (NSString*) sqliteLibVersion; 60 | 61 | 62 | 63 | @end 64 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/FMResultSet.h: -------------------------------------------------------------------------------- 1 | #import 2 | #import "sqlite3.h" 3 | 4 | @class FMDatabase; 5 | 6 | @interface FMResultSet : NSObject { 7 | FMDatabase *parentDB; 8 | sqlite3_stmt *pStmt; 9 | //sqlite3 *db; 10 | NSString *query; 11 | NSMutableDictionary *columnNameToIndexMap; 12 | BOOL columnNamesSetup; 13 | } 14 | 15 | + (id) resultSetWithStatement:(sqlite3_stmt *)stmt usingParentDatabase:(FMDatabase*)aDB; 16 | 17 | - (void) close; 18 | 19 | - (NSString *)query; 20 | - (void)setQuery:(NSString *)value; 21 | 22 | - (void)setPStmt:(sqlite3_stmt *)newsqlite3_stmt; 23 | - (void)setParentDB:(FMDatabase *)newDb; 24 | 25 | 26 | 27 | - (BOOL) next; 28 | 29 | - (NSInteger) intForColumn:(NSString*)columnName; 30 | - (NSInteger) intForColumnIndex:(NSInteger)columnIdx; 31 | 32 | - (NSInteger) longForColumn:(NSString*)columnName; 33 | - (NSInteger) longForColumnIndex:(NSInteger)columnIdx; 34 | 35 | - (BOOL) boolForColumn:(NSString*)columnName; 36 | - (BOOL) boolForColumnIndex:(NSInteger)columnIdx; 37 | 38 | - (double) doubleForColumn:(NSString*)columnName; 39 | - (double) doubleForColumnIndex:(NSInteger)columnIdx; 40 | 41 | - (NSString*) stringForColumn:(NSString*)columnName; 42 | - (NSString*) stringForColumnIndex:(NSInteger)columnIdx; 43 | 44 | - (NSDate*) dateForColumn:(NSString*)columnName; 45 | - (NSDate*) dateForColumnIndex:(NSInteger)columnIdx; 46 | 47 | - (NSData*) dataForColumn:(NSString*)columnName; 48 | - (NSData*) dataForColumnIndex:(NSInteger)columnIdx; 49 | 50 | - (void) kvcMagic:(id)object; 51 | 52 | @end 53 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNAprioriItemset.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2013 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | 24 | @interface NNAprioriItemset : NSObject 25 | { 26 | NSSet *items; 27 | NSUInteger frequency; 28 | } 29 | 30 | - (id)initWithItems:(NSSet*)someItems frequency:(NSUInteger)aFrequency; 31 | - (NSSet*)items; 32 | - (void)setItems:(NSSet*)someItems; 33 | - (NSUInteger)frequency; 34 | - (void)setFrequency:(NSUInteger)aFrequency; 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNAssociationRuleDiscoveryOperation.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2013 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | #import "NNTagging.h" 24 | #import "NNApriori.h" 25 | 26 | @interface NNAssociationRuleDiscoveryOperation : NSOperation { 27 | BOOL finished; 28 | } 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNCommonNotifications.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2013 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | extern NSString * const NNProgressDidUpdateNotification; -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNCommonNotifications.m: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2013 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import "NNCommonNotifications.h" 22 | 23 | 24 | NSString * const NNProgressDidUpdateNotification = @"NNProgressDidUpdateNotification"; -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNCompatbilityChecker.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2013 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | #import "NNTag.h" 24 | #import "NNTagStoreManager.h" 25 | #import "OpenMetaBackup.h" 26 | 27 | /** 28 | This class is used for upgrading older versions. 29 | */ 30 | @interface NNCompatbilityChecker : NSObject { 31 | 32 | } 33 | 34 | /** 35 | Call this to execute all possible updates 36 | */ 37 | - (void)update; 38 | 39 | @end 40 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNQueryFilter.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2013 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | /** 24 | This class can be used to add additional search constraints to 25 | NNQuery 26 | 27 | this class is an abstract superclass, do not instantiate! 28 | */ 29 | @interface NNQueryFilter : NSObject { 30 | } 31 | 32 | /** 33 | @return String in spotlight syntax to add an additional constraint to NNQuery 34 | */ 35 | - (NSString*)filterPredicateString; 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNQueryFilter.m: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2013 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import "NNQueryFilter.h" 22 | 23 | #import "lcl.h" 24 | 25 | @implementation NNQueryFilter 26 | 27 | 28 | #pragma mark function 29 | - (NSString*)filterPredicateString 30 | { 31 | lcl_log(lcl_cnntagging,lcl_vError,@"Critical error: this should not be called on an abstract class"); 32 | return @""; 33 | } 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNSimpleTagToFileWriter.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2013 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | #import "NNTagToFinderCommentWriter.h" 24 | 25 | /** 26 | writes Finder Spotlight Comments with this syntax 27 | [prefix]tag1; [prefix]tag2; ... 28 | the ";" at the end of each tag is necessary to support 29 | multiple words in a single tag 30 | 31 | TODO finish implementing and testing 32 | */ 33 | @interface NNSimpleTagToFileWriter : NNTagToFinderCommentWriter 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNSymlinkTagDirectoryWriter.h: -------------------------------------------------------------------------------- 1 | // 2 | // NNSymlinkTagDirectoryWriter.h 3 | // NNTagging 4 | // 5 | // Created by Johannes Hoffart on 26.03.09. 6 | // Copyright 2009 nudge:nudge. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "NNTagDirectoryWriter.h" 12 | 13 | @interface NNSymlinkTagDirectoryWriter : NNTagDirectoryWriter { 14 | 15 | } 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNSymlinkTagDirectoryWriter.m: -------------------------------------------------------------------------------- 1 | // 2 | // NNSymlinkTagDirectoryWriter.m 3 | // NNTagging 4 | // 5 | // Created by Johannes Hoffart on 26.03.09. 6 | // Copyright 2009 nudge:nudge. All rights reserved. 7 | // 8 | 9 | #import "NNSymlinkTagDirectoryWriter.h" 10 | 11 | #import "lcl.h" 12 | 13 | @implementation NNSymlinkTagDirectoryWriter 14 | 15 | - (BOOL)createSymlinkToFile:(NNFile*)file inDirectory:(NSString*)directory 16 | { 17 | BOOL success = YES; 18 | 19 | // check if symlink exists 20 | NSString *symlinkPath; 21 | 22 | BOOL exists = [fileManager symlinkExistsForFile:[file path] 23 | inDirectory:directory 24 | atPath:&symlinkPath]; 25 | 26 | if (!exists) 27 | { 28 | NSError *error = nil; 29 | 30 | success = [fileManager createSymbolicLinkAtPath:symlinkPath 31 | withDestinationPath:[file path] 32 | error:&error]; 33 | 34 | if (!success) 35 | { 36 | lcl_log(lcl_cnntagging, lcl_vError, @"Could not create symlink to %@: %@", file, error); 37 | } 38 | } 39 | 40 | return success; 41 | } 42 | 43 | @end 44 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNTagBackup.h: -------------------------------------------------------------------------------- 1 | // 2 | // NNTagBackup.h 3 | // NNTagging 4 | // 5 | // Created by Johannes Hoffart on 27.03.09. 6 | // Copyright 2009 nudge:nudge. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "NNTagStoreManager.h" 12 | #import "NNTagToFileWriter.h" 13 | 14 | #import "NNFile.h" 15 | 16 | extern NSString * const nntaggingApplicationSupport; 17 | 18 | @interface NNTagBackup : NSObject { 19 | 20 | } 21 | 22 | /** 23 | Creates a backup of all files (TODO only supports files at the moment, architecture 24 | is not completely generic there at the moment) 25 | 26 | @return YES if successful, NO otherwise 27 | */ 28 | + (BOOL)createBackup; 29 | 30 | /** 31 | Restores the tags on tagged files from the most recent backup 32 | */ 33 | + (void)restoreFromBackup; 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNTagStoreManager.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Subprojects/NNTagging/Source/NNTagStoreManager.h -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNTagStoreManager.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Subprojects/NNTagging/Source/NNTagStoreManager.m -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNTagToOpenMetaWriter.h: -------------------------------------------------------------------------------- 1 | // 2 | // NNTagToOpenMetaWriter.h 3 | // NNTagging 4 | // 5 | // Created by Johannes Hoffart on 08.03.09. 6 | // Copyright 2009 nudge:nudge. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "OpenMeta.h" 12 | 13 | #import "NNTagToFileWriter.h" 14 | 15 | @class NNFile; 16 | 17 | 18 | @interface NNTagToOpenMetaWriter : NNTagToFileWriter { 19 | 20 | } 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNTempTag.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2013 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import 22 | 23 | #import "NNTag.h" 24 | 25 | /** 26 | Use this class if you want a temporary tag that isn't added to 27 | the NNTags collection. 28 | Create the tag using [[NNTags sharedTags] tagForName:name creationOptions:NNTagsCreationOptionTemp]. 29 | */ 30 | @interface NNTempTag : NNTag { 31 | 32 | } 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/NNTempTag.m: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2006-2013 nudge:nudge (Johannes Hoffart & Daniel Bär). All rights reserved. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a copy 4 | // of this software and associated documentation files (the "Software"), to deal 5 | // in the Software without restriction, including without limitation the rights 6 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | // copies of the Software, and to permit persons to whom the Software is 8 | // furnished to do so, subject to the following conditions: 9 | // 10 | // The above copyright notice and this permission notice shall be included in 11 | // all copies or substantial portions of the Software. 12 | // 13 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | // THE SOFTWARE. 20 | 21 | #import "NNTempTag.h" 22 | 23 | 24 | @implementation NNTempTag 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/OpenMetaPrefs.h: -------------------------------------------------------------------------------- 1 | // 2 | // OpenMetaPrefs.h 3 | // adobeFix 4 | // 5 | // Created by Tom Andersen on 24/04/09. 6 | // Copyright 2009 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | 12 | @interface OpenMetaPrefs : NSObject { 13 | 14 | } 15 | // prefs support - this allows a common set of recently entered tags to be kept: 16 | // recently entered tags support: 17 | + (NSArray*)recentTags; // an array of NSStrings, sorted by most recently added at the top. Case preserved. 18 | 19 | // this call is how you maintain the list of recent tags. When a user edits a list of tags on a doc, pass in the originals as 'old' and the entire set of changed ones as new. 20 | + (void)updatePrefsRecentTags:(NSArray*)oldTags newTags:(NSArray*)newTags; 21 | 22 | // To be really sure that the prefs loaded correctly for recentTags, you could call this, but calling it at each keystroke as someone types will likely get slow. 23 | // note that it is automatically called every few seconds when you call recentTags, so you likely don't need to call this. 24 | + (void)synchPrefs; 25 | 26 | // for app store, etc - you can set the prefs to use your own app only.. DONT call with .plist on the prefs file name.. 27 | +(void)setPrefsFile:(NSString*)prefsFileToUse; 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/UKMainThreadProxy.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Subprojects/NNTagging/Source/UKMainThreadProxy.m -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/lcl_config_extensions.h: -------------------------------------------------------------------------------- 1 | // 2 | // 3 | // lcl_config_extensions.h 4 | // 5 | // 6 | // Copyright (c) 2008-2010 Arne Harren 7 | // 8 | // Permission is hereby granted, free of charge, to any person obtaining a copy 9 | // of this software and associated documentation files (the "Software"), to deal 10 | // in the Software without restriction, including without limitation the rights 11 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 12 | // copies of the Software, and to permit persons to whom the Software is 13 | // furnished to do so, subject to the following conditions: 14 | // 15 | // The above copyright notice and this permission notice shall be included in 16 | // all copies or substantial portions of the Software. 17 | // 18 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 21 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 24 | // THE SOFTWARE. 25 | 26 | // 27 | // lcl_config_extensions.h template. 28 | // 29 | 30 | 31 | // 32 | // The lcl_config_extensions.h file can be used to #include, #import, or define 33 | // log extensions. 34 | // 35 | 36 | -------------------------------------------------------------------------------- /Subprojects/NNTagging/Source/lcl_config_logger.h: -------------------------------------------------------------------------------- 1 | // 2 | // 3 | // lcl_config_logger.h 4 | // 5 | // 6 | // Copyright (c) 2008-2010 Arne Harren 7 | // 8 | // Permission is hereby granted, free of charge, to any person obtaining a copy 9 | // of this software and associated documentation files (the "Software"), to deal 10 | // in the Software without restriction, including without limitation the rights 11 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 12 | // copies of the Software, and to permit persons to whom the Software is 13 | // furnished to do so, subject to the following conditions: 14 | // 15 | // The above copyright notice and this permission notice shall be included in 16 | // all copies or substantial portions of the Software. 17 | // 18 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 21 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 24 | // THE SOFTWARE. 25 | 26 | // Use LCLLogFile as the LibComponentLogging logging back-end. 27 | #import "LCLLogFile.h" 28 | 29 | // The detailed configuration of the LCLLogFile class is stored in the 30 | // LCLLogFileConfig.h file which gets imported by LCLLogFile.h. 31 | 32 | -------------------------------------------------------------------------------- /Subprojects/WeblocImporter/English.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Subprojects/WeblocImporter/English.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /Subprojects/WeblocImporter/English.lproj/schema.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/Subprojects/WeblocImporter/English.lproj/schema.strings -------------------------------------------------------------------------------- /Subprojects/WeblocImporter/Version: -------------------------------------------------------------------------------- 1 | Release 2 2 | June 6, 2004 -------------------------------------------------------------------------------- /Subprojects/WeblocImporter/schema.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | Custom attributes that this metadata importer supports. Below 8 | is an example of a multivalued string attribute. Other types 9 | are CFNumber, CFDate, CFBoolean and CFData. 10 | 11 | 12 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /Subprojects/WeblocImporter/version.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildVersion 6 | 266 7 | CFBundleShortVersionString 8 | 1.0 9 | CFBundleVersion 10 | 1.0 11 | ProjectName 12 | DevToolsWizardTemplates 13 | SourceVersion 14 | 3070000 15 | 16 | 17 | -------------------------------------------------------------------------------- /Unit Testing-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | com.yourcompany.Unit Testing 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleSignature 16 | ???? 17 | CFBundleVersion 18 | 1.0 19 | 20 | 21 | -------------------------------------------------------------------------------- /WebURLsWithTitlesPboardTypeDropHandler-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | eu.nudgenudge.WebURLsWithTitlesPboardType 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleSignature 16 | NNPA 17 | CFBundleVersion 18 | 1.0 19 | NSPrincipalClass 20 | PAWebURLsWithTitlesPboardTypeDropHandler 21 | 22 | 23 | -------------------------------------------------------------------------------- /appicon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nudge-nudge/punakea/c03b09732be7ce9c144f99fc6fbb50bdd4ffb0e4/appicon.icns -------------------------------------------------------------------------------- /punakea.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /punakea_Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'punakea' target in the 'punakea' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | 9 | // Prefix headers by Adam Maxwell for color labels 10 | 11 | // docs say not to send [super initialize] 12 | #if !defined(FVINITIALIZE) 13 | #define FVINITIALIZE(aClass) \ 14 | do { if ([aClass self] != self) return; } while(0) 15 | #endif /* FVINITIALIZE */ 16 | 17 | #if !defined(_FVAPIAssertBody) 18 | #define _FVAPIAssertBody(condition, desc, arg1, arg2, arg3) \ 19 | do { if(!(condition)) { [NSException raise:NSInvalidArgumentException format:(desc), (arg1), (arg2), (arg3)]; } } while(0) 20 | #endif /* _FVAPIAssertBody */ 21 | 22 | // use NSAssert internally for debugging; these asserts are to enforce public API usage for framework clients 23 | #define FVAPIAssert(condition, desc) \ 24 | _FVAPIAssertBody((condition), desc, 0, 0, 0) 25 | 26 | #define FVAPIAssert1(condition, desc, arg1) \ 27 | _FVAPIAssertBody((condition), (desc), (arg1), 0, 0) 28 | 29 | #define FVAPIAssert2(condition, desc, arg1, arg2) \ 30 | _FVAPIAssertBody((condition), (desc), (arg1), (arg2), 0) 31 | 32 | #define FVAPIAssert3(condition, desc, arg1, arg2, arg3) \ 33 | _FVAPIAssertBody((condition), (desc), (arg1), (arg2), (arg3)) 34 | 35 | #define FVAPIParameterAssert(condition) \ 36 | _FVAPIAssertBody((condition), @"Invalid parameter not satisfying: %s", #condition, 0, 0) 37 | 38 | #ifdef __cplusplus 39 | #define FV_EXTERN extern "C" 40 | #define FV_PRIVATE_EXTERN __private_extern__ "C" 41 | #else 42 | #define FV_EXTERN extern 43 | #define FV_PRIVATE_EXTERN __private_extern__ 44 | #endif -------------------------------------------------------------------------------- /scripts/MoinMoin/Punakea.py: -------------------------------------------------------------------------------- 1 | # -*- coding: iso-8859-1 -*- 2 | """ 3 | MoinMoin Macro (developed for 1.9.2) 4 | 5 | Retrieves tagged files using the NNTagging.framework 6 | and the Python Wrapper pynntagging. 7 | 8 | @copyright: 2010 nudge:nudge GbR 9 | @license: GNU GPL, see COPYING for details 10 | """ 11 | 12 | from pynntagging.nntagging import NNTagging 13 | import urllib 14 | 15 | Dependencies = [] 16 | 17 | def execute(macro, args): 18 | nntagging = NNTagging() 19 | tagNames = args.split(',') 20 | tags = [nntagging.tagForName(tagName) for tagName in tagNames] 21 | files = nntagging.executeQueryForTags(tags) 22 | paths = [nnfile.path() for nnfile in files] 23 | 24 | out = '\n
Files for "' + ', '.join(tagNames) + '"\n
\n
    \n' 25 | 26 | for path in paths: 27 | name = path.split('/')[-1] 28 | encodedpath = path.replace(' ','%20') 29 | link = '' + name + '' 30 | out += '
  • ' + link + '
  • \n' 31 | 32 | out += '
\n' 33 | 34 | punakea_link = 'punakea://' + '/'.join(tagNames) 35 | click_here = 'Show "' + ', '.join(tagNames) + '" in Punakea' 36 | 37 | out += '
\n' + click_here 38 | out += '
\n' 39 | 40 | return out -------------------------------------------------------------------------------- /scripts/symbolizechrashlog.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | AWK_SCRIPT=/tmp/symbolizecrashlog_$$.awk 4 | SH_SCRIPT=/tmp/symbolizecrashlog_$$.sh 5 | 6 | if [[ $# < 2 ]] 7 | then 8 | echo "Usage: $0 [ -arch ] symbol-file [ crash.log, ... ]" 9 | exit 1 10 | fi 11 | 12 | ARCH_PARAMS='' 13 | if [[ "${1}" == '-arch' ]] 14 | then 15 | ARCH_PARAMS="-arch ${2}" 16 | shift 2 17 | fi 18 | 19 | SYMBOL_FILE="${1}" 20 | shift 21 | 22 | cat > "${AWK_SCRIPT}" << _END 23 | /^[0-9]+ +[-._a-zA-Z0-9]+ *\t0x[0-9a-fA-F]+ / { 24 | addr_index = index(\$0,\$3); 25 | end_index = addr_index+length(\$3); 26 | line_legnth = length; 27 | printf("echo '%s'\"\$(symbolize %s '%s')\"\n",substr(\$0,1,end_index), 28 | \$3,substr(\$0,end_index+1,line_legnth-end_index)); 29 | next; 30 | } 31 | { gsub(/'/,"'\\\\''"); printf("echo '%s'\n",\$0); } 32 | _END 33 | 34 | function symbolize() 35 | { 36 | # Translate the address using atos 37 | SYMBOL=$(atos -o "${SYMBOL_FILE}" ${ARCH_PARAMS} "${1}" 2>/dev/null) 38 | # If successful, output the translated symbol. If atos returns an address, output the original symbol 39 | if [[ "${SYMBOL##0x[0-9a-fA-F]*}" ]] 40 | then 41 | echo -n "${SYMBOL}" 42 | else 43 | echo -n "${2}" 44 | fi 45 | } 46 | 47 | awk -f "${AWK_SCRIPT}" $* > "${SH_SCRIPT}" 48 | 49 | . "${SH_SCRIPT}" 50 | 51 | rm -f "${AWK_SCRIPT}" "${SH_SCRIPT}" -------------------------------------------------------------------------------- /version.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildVersion 6 | 92 7 | CFBundleVersion 8 | 1.0 9 | ProductBuildVersion 10 | 7K571 11 | ProjectName 12 | NibPBTemplates 13 | SourceVersion 14 | 1200000 15 | 16 | 17 | --------------------------------------------------------------------------------