Revision: 29870
          http://sourceforge.net/p/bibdesk/svn/29870
Author:   hofman
Date:     2025-11-21 23:47:07 +0000 (Fri, 21 Nov 2025)
Log Message:
-----------
add more lightweight generics

Modified Paths:
--------------
    trunk/bibdesk/BDSKAddressTextField.h
    trunk/bibdesk/BDSKBibTeXParser.h
    trunk/bibdesk/BDSKButtonBar.h
    trunk/bibdesk/BDSKEdgeView.h
    trunk/bibdesk/BDSKFieldEditor.h
    trunk/bibdesk/BDSKFieldSheetController.h
    trunk/bibdesk/BDSKFileMatchConfigController.h
    trunk/bibdesk/BDSKFileMatcher.h
    trunk/bibdesk/BDSKFilerErrorController.h
    trunk/bibdesk/BDSKFormatParser.h
    trunk/bibdesk/BDSKGroup.h
    trunk/bibdesk/BDSKGroupsArray.h
    trunk/bibdesk/BDSKItemPasteboardHelper.h
    trunk/bibdesk/BDSKMathSciNetParser.h
    trunk/bibdesk/BDSKNotesWindowController.h
    trunk/bibdesk/BDSKParentGroup.h
    trunk/bibdesk/BDSKPreferenceController.h
    trunk/bibdesk/BDSKPreviewer.h
    trunk/bibdesk/BDSKSearchBookmark.h
    trunk/bibdesk/BDSKSearchGroup.h
    trunk/bibdesk/BDSKStaticGroup.h
    trunk/bibdesk/BDSKStatusBar.h
    trunk/bibdesk/BDSKTableView.h
    trunk/bibdesk/BDSKTask.h
    trunk/bibdesk/BDSKTeXTask.h
    trunk/bibdesk/BDSKTemplateObjectProxy.h
    trunk/bibdesk/BDSKTemplateTag.h
    trunk/bibdesk/BDSKTouchBarButtonGroup.h
    trunk/bibdesk/BDSKTypeManager.h
    trunk/bibdesk/BDSKWebParser.h
    trunk/bibdesk/BDSKWebView.h
    trunk/bibdesk/BDSKZentralblattParser.h
    trunk/bibdesk/BibAuthor+Scripting.h
    trunk/bibdesk/BibDocument.h
    trunk/bibdesk/BibDocument_Actions.h
    trunk/bibdesk/BibDocument_Groups.h
    trunk/bibdesk/BibDocument_UI.h
    trunk/bibdesk/NSWorkspace_BDSKExtensions.h
    trunk/bibdesk/WebURLsWithTitles.h

Modified: trunk/bibdesk/BDSKAddressTextField.h
===================================================================
--- trunk/bibdesk/BDSKAddressTextField.h        2025-11-21 22:50:30 UTC (rev 
29869)
+++ trunk/bibdesk/BDSKAddressTextField.h        2025-11-21 23:47:07 UTC (rev 
29870)
@@ -51,7 +51,7 @@
 
 @property (nonatomic, nullable, strong) NSURL *URL;
 
-@property (nonatomic, readonly) NSArray *subcontrols;
+@property (nonatomic, readonly) NSArray<NSControl *> *subcontrols;
 
 @end
 

Modified: trunk/bibdesk/BDSKBibTeXParser.h
===================================================================
--- trunk/bibdesk/BDSKBibTeXParser.h    2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKBibTeXParser.h    2025-11-21 23:47:07 UTC (rev 29870)
@@ -40,7 +40,7 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
-@class BDSKMacroResolver, BibItem;
+@class BDSKMacroResolver, BibItem, BibAuthor;
 
 @protocol BDSKOwner;
 
@@ -61,9 +61,9 @@
     @param      outError (description)
     @result     (description)
 */
-+ (NSArray *)itemsFromString:(NSString *)aString owner:(nullable 
id<BDSKOwner>)anOwner error:(NSError **)outError;
++ (NSArray<BibItem *> *)itemsFromString:(NSString *)aString owner:(nullable 
id<BDSKOwner>)anOwner error:(NSError **)outError;
 
-+ (NSArray *)itemsFromData:(NSData *)inData
++ (NSArray<BibItem *> *)itemsFromData:(NSData *)inData
                     macros:(NSMapTable * _Nullable * _Nullable)outMacros
                   filePath:(NSString *)filePath
                      owner:(nullable id<BDSKOwner>)anOwner
@@ -85,7 +85,7 @@
     @param      outError May be NULL.  If non-NULL and the item has partial 
data, will be filled.
     @result     (description)
 */
-+ (NSArray *)itemsFromData:(NSData *)inData
++ (NSArray<BibItem *> *)itemsFromData:(NSData *)inData
                     macros:(NSMapTable * _Nullable * _Nullable)outMacros
               documentInfo:(NSDictionary * _Nullable * 
_Nullable)outDocumentInfo
                     groups:(NSDictionary * _Nullable * _Nullable)outGroups
@@ -104,7 +104,7 @@
     @param      macroResolver (description)
     @result     Returns nil if nothing was found or an error occurred.
 */
-+ (nullable NSDictionary *)macrosFromBibTeXString:(NSString *)stringContents 
macroResolver:(nullable BDSKMacroResolver *)macroResolver;
++ (nullable NSDictionary<NSString *, NSString *> 
*)macrosFromBibTeXString:(NSString *)stringContents macroResolver:(nullable 
BDSKMacroResolver *)macroResolver;
 
 /*!
     @method     macrosFromBibTeXStyle:document:
@@ -115,7 +115,7 @@
     @param      macroResolver (description)
     @result     Returns nil if nothing was found or an error occurred.
 */
-+ (nullable NSDictionary *)macrosFromBibTeXStyle:(NSString *)styleContents 
macroResolver:(nullable BDSKMacroResolver *)macroResolver;
++ (nullable NSDictionary<NSString *, NSString *> 
*)macrosFromBibTeXStyle:(NSString *)styleContents macroResolver:(nullable 
BDSKMacroResolver *)macroResolver;
     
 /*!
     @method     authorsFromBibtexString:withPublication:forField
@@ -124,7 +124,7 @@
     @param      aString The author string
     @result     An array of BibAuthor objects.
 */
-+ (NSArray *)authorsFromBibtexString:(NSString *)aString 
withPublication:(BibItem *)pub forField:(NSString *)field reuse:(nullable 
NSArray *)oldAuthors;
++ (NSArray<BibAuthor *> *)authorsFromBibtexString:(NSString *)aString 
withPublication:(BibItem *)pub forField:(NSString *)field reuse:(nullable 
NSArray<BibAuthor *> *)oldAuthors;
 
 + (NSDictionary *)nameComponents:(NSString *)aName forPublication:(BibItem 
*)pub;
 

Modified: trunk/bibdesk/BDSKButtonBar.h
===================================================================
--- trunk/bibdesk/BDSKButtonBar.h       2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKButtonBar.h       2025-11-21 23:47:07 UTC (rev 29870)
@@ -58,7 +58,7 @@
 
 @property (nonatomic) BOOL hasAddButton, hasRemoveButton;
 
-@property (nonatomic, readonly) NSArray *buttons;
+@property (nonatomic, readonly) NSArray<NSButton *> *buttons;
 
 - (void)addButtonWithIdentifier:(NSString *)identifier title:(NSString *)title;
 - (void)removeButtonWithIdentifier:(NSString *)identifier reuse:(BOOL)reuse;

Modified: trunk/bibdesk/BDSKEdgeView.h
===================================================================
--- trunk/bibdesk/BDSKEdgeView.h        2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKEdgeView.h        2025-11-21 23:47:07 UTC (rev 29870)
@@ -68,9 +68,9 @@
 
 @property (nonatomic) BDSKRectEdges edges;
 
-@property (nonatomic, nullable, copy) NSArray *backgroundColors;
+@property (nonatomic, nullable, copy) NSArray<NSColor *> *backgroundColors;
 
-@property (nonatomic, nullable, copy) NSArray *edgeColors;
+@property (nonatomic, nullable, copy) NSArray<NSColor *> *edgeColors;
 - (void)setEdgeColor:(nullable NSColor *)aColor;
 
 - (nullable NSColor *)colorForEdge:(NSRectEdge)edge;

Modified: trunk/bibdesk/BDSKFieldEditor.h
===================================================================
--- trunk/bibdesk/BDSKFieldEditor.h     2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKFieldEditor.h     2025-11-21 23:47:07 UTC (rev 29870)
@@ -57,7 +57,7 @@
     BOOL isAutoComplete;
     BOOL isCompleting;
 }
-- (void)registerForDelegatedDraggedTypes:(NSArray *)pboardTypes;
+- (void)registerForDelegatedDraggedTypes:(NSArray<NSString *> *)pboardTypes;
 @property (nullable, weak) id<BDSKFieldEditorDelegate> delegate;
 @end
 

Modified: trunk/bibdesk/BDSKFieldSheetController.h
===================================================================
--- trunk/bibdesk/BDSKFieldSheetController.h    2025-11-21 22:50:30 UTC (rev 
29869)
+++ trunk/bibdesk/BDSKFieldSheetController.h    2025-11-21 23:47:07 UTC (rev 
29870)
@@ -59,9 +59,9 @@
     NSString *cancelButtonTitle;
 }
 
-+ (instancetype)fieldSheetControllerWithSelectableFields:(nullable NSArray 
*)selectableFields label:(nullable NSString *)selectedFieldLabel 
choosableFields:(nullable NSArray *)choosableFields label:(nullable NSString 
*)chosenFieldLabel;
-+ (instancetype)fieldSheetControllerWithSelectableFields:(NSArray 
*)selectableFields label:(NSString *)selectedFieldLabel;
-+ (instancetype)fieldSheetControllerWithChoosableFields:(NSArray 
*)choosableFields label:(NSString *)chosenFieldLabel;
++ (instancetype)fieldSheetControllerWithSelectableFields:(nullable 
NSArray<NSString *> *)selectableFields label:(nullable NSString 
*)selectedFieldLabel choosableFields:(nullable NSArray<NSString *> 
*)choosableFields label:(nullable NSString *)chosenFieldLabel;
++ (instancetype)fieldSheetControllerWithSelectableFields:(NSArray<NSString *> 
*)selectableFields label:(NSString *)selectedFieldLabel;
++ (instancetype)fieldSheetControllerWithChoosableFields:(NSArray <NSString 
*>*)choosableFields label:(NSString *)chosenFieldLabel;
 
 @property (nonatomic, nullable, strong) IBOutlet NSObjectController 
*objectController;
 @property (nonatomic, nullable, strong) IBOutlet NSPopUpButton 
*selectedFieldPopUpButton;

Modified: trunk/bibdesk/BDSKFileMatchConfigController.h
===================================================================
--- trunk/bibdesk/BDSKFileMatchConfigController.h       2025-11-21 22:50:30 UTC 
(rev 29869)
+++ trunk/bibdesk/BDSKFileMatchConfigController.h       2025-11-21 23:47:07 UTC 
(rev 29870)
@@ -35,6 +35,8 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+@class BibItem;
+
 @interface BDSKFileMatchConfigController : NSWindowController 
<NSTableViewDelegate, NSTableViewDataSource, NSTouchBarDelegate>
 {
     NSTableView *documentTableView;
@@ -63,7 +65,7 @@
 
 - (IBAction)selectAllDocuments:(nullable id)sender;
 
-@property (nonatomic, readonly) NSArray *publications;
+@property (nonatomic, readonly) NSArray<BibItem *> *publications;
 
 - (void)handleDocumentAddRemove:(nullable NSNotification *)note;
 

Modified: trunk/bibdesk/BDSKFileMatcher.h
===================================================================
--- trunk/bibdesk/BDSKFileMatcher.h     2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKFileMatcher.h     2025-11-21 23:47:07 UTC (rev 29870)
@@ -42,7 +42,7 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
-@class BDSKOutlineView, BDSKTreeNode;
+@class BDSKOutlineView, BDSKTreeNode, BibItem;
 
 @interface BDSKFileMatcher : NSWindowController <NSOutlineViewDelegate, 
NSOutlineViewDataSource, QLPreviewPanelDataSource, QLPreviewPanelDelegate>
 {
@@ -67,7 +67,7 @@
 @property (nonatomic, nullable, strong) IBOutlet NSButton *abortButton;
 @property (nonatomic, nullable, strong) IBOutlet NSButton *configureButton;
 
-- (void)matchFiles:(NSArray *)absoluteURLs withPublications:(nullable NSArray 
*)pubs;
+- (void)matchFiles:(NSArray<NSURL *> *)absoluteURLs withPublications:(nullable 
NSArray<BibItem *> *)pubs;
 
 - (IBAction)openAction:(nullable id)sender;
 - (IBAction)abort:(nullable id)sender;

Modified: trunk/bibdesk/BDSKFilerErrorController.h
===================================================================
--- trunk/bibdesk/BDSKFilerErrorController.h    2025-11-21 22:50:30 UTC (rev 
29869)
+++ trunk/bibdesk/BDSKFilerErrorController.h    2025-11-21 23:47:07 UTC (rev 
29870)
@@ -57,7 +57,7 @@
        NSArray<NSDictionary<NSString *, id> *> *errorInfoDicts;
 }
 
-- (instancetype)initWithErrors:(NSArray *)infoDicts forField:(NSString *)field 
options:(NSInteger)masks actionName:(nullable NSString *)actionName 
NS_DESIGNATED_INITIALIZER;
+- (instancetype)initWithErrors:(NSArray<NSDictionary<NSString *, id> *> 
*)infoDicts forField:(NSString *)field options:(NSInteger)masks 
actionName:(nullable NSString *)actionName NS_DESIGNATED_INITIALIZER;
 
 - (instancetype)initWithWindow:(nullable NSWindow *)window NS_UNAVAILABLE;
 - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_UNAVAILABLE;

Modified: trunk/bibdesk/BDSKFormatParser.h
===================================================================
--- trunk/bibdesk/BDSKFormatParser.h    2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKFormatParser.h    2025-11-21 23:47:07 UTC (rev 29870)
@@ -65,7 +65,7 @@
 + (BOOL)validateFormat:(NSString * _Nonnull * _Nonnull)formatString 
forField:(NSString *)fieldName error:(NSString * _Nullable * _Nullable)error;
 + (BOOL)validateFormat:(NSString * _Nonnull * _Nonnull)formatString 
attributedFormat:(NSAttributedString * _Nonnull * _Nullable)attrFormatString 
forField:(NSString *)fieldName error:(NSString * _Nullable * _Nullable)error;
 
-+ (NSArray *)requiredFieldsForFormat:(NSString *)formatString;
++ (NSArray<NSString *> *)requiredFieldsForFormat:(NSString *)formatString;
 
 + (NSURL *)folderURLForFilingPapersFromDocumentAtURL:(NSURL *)fileURL;
 

Modified: trunk/bibdesk/BDSKGroup.h
===================================================================
--- trunk/bibdesk/BDSKGroup.h   2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKGroup.h   2025-11-21 23:47:07 UTC (rev 29870)
@@ -115,7 +115,7 @@
 
 @property (nonatomic, nullable, readonly) BDSKMacroResolver *macroResolver;
 
-@property (nonatomic, nullable, readonly) NSArray *publications;
+@property (nonatomic, nullable, readonly) NSArray<BibItem *> *publications;
 
 - (BOOL)containsItem:(BibItem *)item;
 

Modified: trunk/bibdesk/BDSKGroupsArray.h
===================================================================
--- trunk/bibdesk/BDSKGroupsArray.h     2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKGroupsArray.h     2025-11-21 23:47:07 UTC (rev 29870)
@@ -73,7 +73,7 @@
 @property (nonatomic, readonly) NSArray<BDSKStaticGroup *> *staticGroups;
 @property (nonatomic, readonly) NSArray<BDSKCategoryGroup *> *categoryGroups;
 
-@property (nonatomic, readonly) NSArray *allChildren;
+@property (nonatomic, readonly) NSArray<BDSKGroup *> *allChildren;
 
 - (void)addCategoryParent:(BDSKCategoryParentGroup *)group;
 - (void)removeCategoryParent:(BDSKCategoryParentGroup *)group;

Modified: trunk/bibdesk/BDSKItemPasteboardHelper.h
===================================================================
--- trunk/bibdesk/BDSKItemPasteboardHelper.h    2025-11-21 22:50:30 UTC (rev 
29869)
+++ trunk/bibdesk/BDSKItemPasteboardHelper.h    2025-11-21 23:47:07 UTC (rev 
29870)
@@ -43,7 +43,7 @@
 @class BDSKItemPasteboardHelper;
 
 @protocol BDSKItemPasteboardHelperDelegate <NSObject>
-- (NSString *)pasteboardHelper:(BDSKItemPasteboardHelper *)pboardHelper 
bibTeXStringForItems:(NSArray *)items;
+- (NSString *)pasteboardHelper:(BDSKItemPasteboardHelper *)pboardHelper 
bibTeXStringForItems:(NSArray<BibItem *> *)items;
 @optional
 - (void)pasteboardHelperWillBeginGenerating:(BDSKItemPasteboardHelper 
*)pboardHelper;
 - (void)pasteboardHelperDidEndGenerating:(BDSKItemPasteboardHelper 
*)pboardHelper;

Modified: trunk/bibdesk/BDSKMathSciNetParser.h
===================================================================
--- trunk/bibdesk/BDSKMathSciNetParser.h        2025-11-21 22:50:30 UTC (rev 
29869)
+++ trunk/bibdesk/BDSKMathSciNetParser.h        2025-11-21 23:47:07 UTC (rev 
29870)
@@ -42,7 +42,7 @@
 NS_ASSUME_NONNULL_BEGIN
 
 @interface BDSKMathSciNetParser : BDSKAsynchronousWebParser
-+ (nullable NSArray<BibItem *> *)bibTeXRequestsForMRIDs:(NSArray *)IDs 
serverName:(nullable NSString *)serverName;
++ (nullable NSArray<BibItem *> *)bibTeXRequestsForMRIDs:(NSArray<NSString *> 
*)IDs serverName:(nullable NSString *)serverName;
 + (nullable NSArray<BibItem *> *)itemsFromDownload:(BDSKCitationDownload 
*)download parser:(BDSKWebParser *)parser error:(NSError **)outError;
 @end
 

Modified: trunk/bibdesk/BDSKNotesWindowController.h
===================================================================
--- trunk/bibdesk/BDSKNotesWindowController.h   2025-11-21 22:50:30 UTC (rev 
29869)
+++ trunk/bibdesk/BDSKNotesWindowController.h   2025-11-21 23:47:07 UTC (rev 
29870)
@@ -44,7 +44,7 @@
 @interface BDSKNotesWindowController : NSWindowController 
<BDSKNotesOutlineViewDelegate, NSOutlineViewDataSource, NSSplitViewDelegate, 
NSTouchBarDelegate> {
     NSURL *url;
     NSMutableArray<NSDictionary<NSString *, id> *> *notes;
-    NSArray *tags;
+    NSArray<NSString *> *tags;
     double rating;
     CGFloat lastTagsHeight;
     NSOutlineView *outlineView;

Modified: trunk/bibdesk/BDSKParentGroup.h
===================================================================
--- trunk/bibdesk/BDSKParentGroup.h     2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKParentGroup.h     2025-11-21 23:47:07 UTC (rev 29870)
@@ -45,7 +45,7 @@
 
 @interface BDSKParentGroup : BDSKGroup {
     NSMutableArray<__kindof BDSKGroup *> *children;
-    NSArray *sortDescriptors;
+    NSArray<NSSortDescriptor *> *sortDescriptors;
 }
 
 - (instancetype)initWithName:(NSString *)aName NS_DESIGNATED_INITIALIZER;

Modified: trunk/bibdesk/BDSKPreferenceController.h
===================================================================
--- trunk/bibdesk/BDSKPreferenceController.h    2025-11-21 22:50:30 UTC (rev 
29869)
+++ trunk/bibdesk/BDSKPreferenceController.h    2025-11-21 23:47:07 UTC (rev 
29870)
@@ -91,7 +91,7 @@
 - (IBAction)changeFont:(nullable id)sender;
 
 @property (nonatomic, readonly) NSArray<NSString *> *categories;
-- (NSArray *)paneIdentifiersForCategory:(NSString *)category;
+- (NSArray<NSString *> *)paneIdentifiersForCategory:(NSString *)category;
 @property (nonatomic, readonly) NSArray<NSString *> *allPaneIdentifiers;
 
 @property (nonatomic, readonly) NSString *selectedPaneIdentifier;

Modified: trunk/bibdesk/BDSKPreviewer.h
===================================================================
--- trunk/bibdesk/BDSKPreviewer.h       2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKPreviewer.h       2025-11-21 23:47:07 UTC (rev 29870)
@@ -106,7 +106,7 @@
     @param bibStr The bibtex string source
     @param citeKeys The cite keys of the items
 */
-- (void)updateWithBibTeXString:(nullable NSString *)bibStr citeKeys:(nullable 
NSArray *)citeKeys;
+- (void)updateWithBibTeXString:(nullable NSString *)bibStr citeKeys:(nullable 
NSArray<NSString *> *)citeKeys;
 
 /*!
  @method updateWithoutBibTeXString

Modified: trunk/bibdesk/BDSKSearchBookmark.h
===================================================================
--- trunk/bibdesk/BDSKSearchBookmark.h  2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKSearchBookmark.h  2025-11-21 23:47:07 UTC (rev 29870)
@@ -84,7 +84,7 @@
 - (void)removeChildrenAtIndexes:(NSIndexSet *)indexes;
 
 - (BOOL)isDescendantOf:(BDSKSearchBookmark *)bookmark;
-- (BOOL)isDescendantOfArray:(NSArray *)bookmarks;
+- (BOOL)isDescendantOfArray:(NSArray<BDSKSearchBookmark *> *)bookmarks;
 
 @end
 

Modified: trunk/bibdesk/BDSKSearchGroup.h
===================================================================
--- trunk/bibdesk/BDSKSearchGroup.h     2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKSearchGroup.h     2025-11-21 23:47:07 UTC (rev 29870)
@@ -72,7 +72,7 @@
 
 @interface BDSKSearchGroup : BDSKExternalGroup <BDSKSearchGroup, 
NSFilePromiseProviderDelegate> {
     NSString *searchTerm; // passed in by caller
-    NSArray *history;
+    NSArray<NSString *> *history;
     id<BDSKSearchGroupServer> server;
 }
 

Modified: trunk/bibdesk/BDSKStaticGroup.h
===================================================================
--- trunk/bibdesk/BDSKStaticGroup.h     2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKStaticGroup.h     2025-11-21 23:47:07 UTC (rev 29870)
@@ -51,7 +51,7 @@
 - (instancetype)initWithName:(NSString *)aName publications:(nullable 
NSArray<BibItem *> *)array NS_DESIGNATED_INITIALIZER;
 - (instancetype)initWithCoder:(NSCoder *)decoder NS_DESIGNATED_INITIALIZER;
 
-@property (nonatomic, copy) NSArray *publications;
+@property (nonatomic, copy) NSArray<BibItem *> *publications;
 
 - (void)addPublication:(BibItem *)item;
 - (void)addPublicationsFromArray:(NSArray<BibItem *> *)items;

Modified: trunk/bibdesk/BDSKStatusBar.h
===================================================================
--- trunk/bibdesk/BDSKStatusBar.h       2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKStatusBar.h       2025-11-21 23:47:07 UTC (rev 29870)
@@ -90,7 +90,7 @@
 @property (nonatomic) BDSKProgressIndicatorStyle progressIndicatorStyle;
 @property (nonatomic) double progressIndicatorValue;
 
-@property (nonatomic, readonly) NSArray *iconIdentifiers;
+@property (nonatomic, readonly) NSArray<NSString *> *iconIdentifiers;
 - (void)addIcon:(NSImage *)icon withIdentifier:(NSString *)identifier;
 - (void)addIcon:(NSImage *)icon withIdentifier:(NSString *)identifier 
toolTip:(nullable NSString *)toolTip;
 - (void)removeIconWithIdentifier:(NSString *)identifier;

Modified: trunk/bibdesk/BDSKTableView.h
===================================================================
--- trunk/bibdesk/BDSKTableView.h       2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKTableView.h       2025-11-21 23:47:07 UTC (rev 29870)
@@ -49,7 +49,7 @@
 - (void)tableViewInsertSpace:(NSTableView *)aTableView;
 - (void)tableViewInsertShiftSpace:(NSTableView *)aTableView;
 
-- (NSArray *)tableView:(NSTableView *)aTableView 
typeSelectHelperSelectionStrings:(BDSKTypeSelectHelper *)aTypeSelectHelper;
+- (NSArray<NSString *> *)tableView:(NSTableView *)aTableView 
typeSelectHelperSelectionStrings:(BDSKTypeSelectHelper *)aTypeSelectHelper;
 - (void)tableView:(NSTableView *)aTableView 
typeSelectHelper:(BDSKTypeSelectHelper *)aTypeSelectHelper 
didFailToFindMatchForSearchString:(NSString *)searchString;
 - (void)tableView:(NSTableView *)aTableView 
typeSelectHelper:(BDSKTypeSelectHelper *)aTypeSelectHelper 
updateSearchString:(NSString *)searchString;
 

Modified: trunk/bibdesk/BDSKTask.h
===================================================================
--- trunk/bibdesk/BDSKTask.h    2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKTask.h    2025-11-21 23:47:07 UTC (rev 29870)
@@ -71,7 +71,7 @@
     struct BDSKTaskInternal *_internal;
 }
 
-+ (BDSKTask *)launchedTaskWithLaunchPath:(NSString *)path arguments:(NSArray 
*)arguments;
++ (BDSKTask *)launchedTaskWithLaunchPath:(NSString *)path 
arguments:(NSArray<NSString *> *)arguments;
 
 @end
 

Modified: trunk/bibdesk/BDSKTeXTask.h
===================================================================
--- trunk/bibdesk/BDSKTeXTask.h 2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKTeXTask.h 2025-11-21 23:47:07 UTC (rev 29870)
@@ -74,7 +74,7 @@
 
 @property (nonatomic, nullable, weak) id<BDSKTeXTaskDelegate> delegate;
 
-- (BOOL)runWithBibTeXString:(NSString *)bibStr citeKeys:(NSArray *)citeKeys 
generatedType:(BDSKGeneratedType)generatedType;
+- (BOOL)runWithBibTeXString:(NSString *)bibStr citeKeys:(NSArray<NSString *> 
*)citeKeys generatedType:(BDSKGeneratedType)generatedType;
 
 - (void)cancel;
 - (void)terminate;

Modified: trunk/bibdesk/BDSKTemplateObjectProxy.h
===================================================================
--- trunk/bibdesk/BDSKTemplateObjectProxy.h     2025-11-21 22:50:30 UTC (rev 
29869)
+++ trunk/bibdesk/BDSKTemplateObjectProxy.h     2025-11-21 23:47:07 UTC (rev 
29870)
@@ -50,13 +50,13 @@
 }
 
 + (NSString *)stringByParsingTemplate:(BDSKTemplate *)template 
withObject:(id)anObject publications:(NSArray<BibItem *> *)items;
-+ (NSString *)stringByParsingTemplate:(BDSKTemplate *)template 
withObject:(id)anObject publications:(NSArray<BibItem *> *)items 
publicationsContext:(nullable NSArray *)itemsContext;
++ (NSString *)stringByParsingTemplate:(BDSKTemplate *)template 
withObject:(id)anObject publications:(NSArray<BibItem *> *)items 
publicationsContext:(nullable NSArray<BibItem *> *)itemsContext;
 + (NSAttributedString *)attributedStringByParsingTemplate:(BDSKTemplate 
*)template withObject:(id)anObject publications:(NSArray<BibItem *> *)items 
documentAttributes:(NSDictionary * _Nullable * _Nullable)docAttributes;
-+ (NSAttributedString *)attributedStringByParsingTemplate:(BDSKTemplate 
*)template withObject:(id)anObject publications:(NSArray<BibItem *> *)items 
publicationsContext:(nullable NSArray *)itemsContext 
documentAttributes:(NSDictionary * _Nullable * _Nullable)docAttributes;
-+ (nullable NSData *)dataByParsingTemplate:(BDSKTemplate *)template 
withObject:(id)anObject publications:(NSArray *)items;
++ (NSAttributedString *)attributedStringByParsingTemplate:(BDSKTemplate 
*)template withObject:(id)anObject publications:(NSArray<BibItem *> *)items 
publicationsContext:(nullable NSArray<BibItem *> *)itemsContext 
documentAttributes:(NSDictionary * _Nullable * _Nullable)docAttributes;
++ (nullable NSData *)dataByParsingTemplate:(BDSKTemplate *)template 
withObject:(id)anObject publications:(NSArray<BibItem *> *)items;
 + (nullable NSData *)dataByParsingTemplate:(BDSKTemplate *)template 
withObject:(id)anObject publications:(NSArray<BibItem *> *)items 
publicationsContext:(nullable NSArray<BibItem *> *)itemsContext;
 
-- (instancetype)initWithObject:(id)anObject publications:(NSArray *)items 
publicationsContext:(nullable NSArray<BibItem *> *)itemsContext 
template:(BDSKTemplate *)aTemplate NS_DESIGNATED_INITIALIZER;
+- (instancetype)initWithObject:(id)anObject publications:(NSArray<BibItem *> 
*)items publicationsContext:(nullable NSArray<BibItem *> *)itemsContext 
template:(BDSKTemplate *)aTemplate NS_DESIGNATED_INITIALIZER;
 - (instancetype)init NS_UNAVAILABLE;
 
 @property (nonatomic, readonly) NSArray<BibItem *> *publications;

Modified: trunk/bibdesk/BDSKTemplateTag.h
===================================================================
--- trunk/bibdesk/BDSKTemplateTag.h     2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKTemplateTag.h     2025-11-21 23:47:07 UTC (rev 29870)
@@ -138,7 +138,7 @@
     NSArray<NSString *> *matchStrings;
 }
 
-- (instancetype)initWithKeyPath:(NSString *)aKeyPath 
matchType:(BDSKTemplateTagMatchType)aMatchType matchStrings:(NSArray 
*)aMatchStrings subtemplates:(NSArray *)aSubtemplates NS_DESIGNATED_INITIALIZER;
+- (instancetype)initWithKeyPath:(NSString *)aKeyPath 
matchType:(BDSKTemplateTagMatchType)aMatchType matchStrings:(NSArray<NSString 
*> *)aMatchStrings subtemplates:(NSArray *)aSubtemplates 
NS_DESIGNATED_INITIALIZER;
 - (instancetype)initWithKeyPath:(NSString *)aKeyPath NS_UNAVAILABLE;
 
 @property (nonatomic, readonly) BDSKTemplateTagMatchType matchType;

Modified: trunk/bibdesk/BDSKTouchBarButtonGroup.h
===================================================================
--- trunk/bibdesk/BDSKTouchBarButtonGroup.h     2025-11-21 22:50:30 UTC (rev 
29869)
+++ trunk/bibdesk/BDSKTouchBarButtonGroup.h     2025-11-21 23:47:07 UTC (rev 
29870)
@@ -44,7 +44,7 @@
     NSArray<NSButton *> *buttons;
 }
 
-@property (nonatomic, readonly) NSArray *buttons;
+@property (nonatomic, readonly) NSArray<NSButton *> *buttons;
 
 - (instancetype)initByReferencingButtons:(NSArray<NSButton *> *)refButtons 
NS_DESIGNATED_INITIALIZER;
 

Modified: trunk/bibdesk/BDSKTypeManager.h
===================================================================
--- trunk/bibdesk/BDSKTypeManager.h     2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKTypeManager.h     2025-11-21 23:47:07 UTC (rev 29870)
@@ -52,35 +52,35 @@
 extern NSString * const BDSKChangedFieldTypesKey;
 
 @interface BDSKTypeManager : NSObject {
-       NSDictionary *fieldsForTypesDict;
-       NSArray *types;
-       NSDictionary *fieldNameForPubMedTagDict;
-       NSDictionary *pubMedTagForFieldNameDict;
-       NSDictionary *bibTeXTypeForPubMedTypeDict;
-       NSDictionary *fieldNameForRISTagDict;
-       NSDictionary *RISTagForFieldNameDict;
-    NSDictionary *bibTeXTypeForRISTypeDict;
-    NSDictionary *RISTypeForBibTeXTypeDict;
-       NSDictionary *fieldNamesForMARCTagDict;
-       NSDictionary *fieldNamesForUNIMARCTagDict;
-       NSDictionary *fieldNameForJSTORTagDict;
-       NSDictionary *fieldDescriptionForJSTORTagDict;
-    NSDictionary *fieldNameForWebOfScienceTagDict;
-    NSDictionary *fieldDescriptionForWebOfScienceTagDict;
-    NSDictionary *bibTeXTypeForWebOfScienceTypeDict;
-    NSDictionary *bibTeXTypeForDublinCoreTypeDict;
-    NSDictionary *fieldNameForDublinCoreTermDict;
-    NSDictionary *fieldNameForReferTagDict;
-    NSDictionary *referTagForFieldNameDict;
-    NSDictionary *bibTeXTypeForReferTypeDict;
-    NSDictionary *referTypeForBibTeXTypeDict;
-    NSDictionary *bibTeXTypeForHCiteTypeDict;
-       NSDictionary *MODSGenresForBibTeXTypeDict;
-    NSDictionary *defaultFieldsForTypes;
-    NSMutableDictionary *standardFieldsForTypes;
-       NSArray *defaultTypes;
-       NSSet *standardTypes;
-       NSSet *allFieldsSet;
+       NSDictionary<NSString *, NSDictionary<NSString *, NSArray<NSString *> 
*> *> *fieldsForTypesDict;
+       NSArray<NSString *> *types;
+       NSDictionary<NSString *, NSString *> *fieldNameForPubMedTagDict;
+       NSDictionary<NSString *, NSString *> *pubMedTagForFieldNameDict;
+       NSDictionary<NSString *, NSString *> *bibTeXTypeForPubMedTypeDict;
+       NSDictionary<NSString *, NSDictionary<NSString *, NSString *> *> 
*fieldNameForRISTagDict;
+       NSDictionary<NSString *, NSDictionary<NSString *, NSString *> *> 
*RISTagForFieldNameDict;
+    NSDictionary<NSString *, NSString *> *bibTeXTypeForRISTypeDict;
+    NSDictionary<NSString *, NSString *> *RISTypeForBibTeXTypeDict;
+       NSDictionary<NSString *, NSDictionary<NSString *, NSString *> *> 
*fieldNamesForMARCTagDict;
+       NSDictionary<NSString *, NSDictionary<NSString *, NSString *> *> 
*fieldNamesForUNIMARCTagDict;
+       NSDictionary<NSString *, NSString *> *fieldNameForJSTORTagDict;
+       NSDictionary<NSString *, NSString *> *fieldDescriptionForJSTORTagDict;
+    NSDictionary<NSString *, NSString *> *fieldNameForWebOfScienceTagDict;
+    NSDictionary<NSString *, NSString *> 
*fieldDescriptionForWebOfScienceTagDict;
+    NSDictionary<NSString *, NSString *> *bibTeXTypeForWebOfScienceTypeDict;
+    NSDictionary<NSString *, NSString *> *bibTeXTypeForDublinCoreTypeDict;
+    NSDictionary<NSString *, NSString *> *fieldNameForDublinCoreTermDict;
+    NSDictionary<NSString *, NSString *> *fieldNameForReferTagDict;
+    NSDictionary<NSString *, NSString *> *referTagForFieldNameDict;
+    NSDictionary<NSString *, NSString *> *bibTeXTypeForReferTypeDict;
+    NSDictionary<NSString *, NSString *> *referTypeForBibTeXTypeDict;
+    NSDictionary<NSString *, NSString *> *bibTeXTypeForHCiteTypeDict;
+       NSDictionary<NSString *, NSDictionary<NSString *, NSString *> *> 
*MODSGenresForBibTeXTypeDict;
+    NSDictionary<NSString *, NSDictionary<NSString *, NSArray<NSString *> *> 
*> *defaultFieldsForTypes;
+    NSMutableDictionary<NSString *, NSArray<NSString *> *> 
*standardFieldsForTypes;
+       NSArray<NSString *> *defaultTypes;
+       NSSet<NSString *> *standardTypes;
+       NSSet<NSString *> *allFieldsSet;
        NSCharacterSet *invalidCiteKeyCharSet;
        NSCharacterSet *fragileCiteKeyCharSet;
        NSCharacterSet *strictInvalidCiteKeyCharSet;
@@ -93,63 +93,63 @@
        NSCharacterSet *strictInvalidGeneralCharSet;
        NSCharacterSet *separatorCharSet;
     
-    NSSet *localFileFieldsSet;
-    NSSet *remoteURLFieldsSet;
-    NSSet *allURLFieldsSet;
-    NSSet *ratingFieldsSet;
-    NSSet *triStateFieldsSet;
-    NSSet *booleanFieldsSet;
-    NSSet *integerFieldsSet;
-    NSSet *citationFieldsSet;
-    NSSet *personFieldsSet;
-    NSSet *noteFieldsSet;
-    NSSet *numericFieldsSet;
-    NSSet *titleFieldsSet;
-    NSSet *containerFieldsSet;
-    NSSet *singleValuedGroupFieldsSet;
-    NSSet *invalidGroupFieldsSet;
+    NSSet<NSString *> *localFileFieldsSet;
+    NSSet<NSString *> *remoteURLFieldsSet;
+    NSSet<NSString *> *allURLFieldsSet;
+    NSSet<NSString *> *ratingFieldsSet;
+    NSSet<NSString *> *triStateFieldsSet;
+    NSSet<NSString *> *booleanFieldsSet;
+    NSSet<NSString *> *integerFieldsSet;
+    NSSet<NSString *> *citationFieldsSet;
+    NSSet<NSString *> *personFieldsSet;
+    NSSet<NSString *> *noteFieldsSet;
+    NSSet<NSString *> *numericFieldsSet;
+    NSSet<NSString *> *titleFieldsSet;
+    NSSet<NSString *> *containerFieldsSet;
+    NSSet<NSString *> *singleValuedGroupFieldsSet;
+    NSSet<NSString *> *invalidGroupFieldsSet;
     
-    NSArray *requiredFieldsForCiteKey;
-    NSArray *requiredFieldsForLocalFile;
+    NSArray<NSString *> *requiredFieldsForCiteKey;
+    NSArray<NSString *> *requiredFieldsForLocalFile;
 }
 
 @property (class, nonatomic, readonly) BDSKTypeManager *sharedManager;
 
 // Updating
-- (void)updateUserTypes:(NSArray *)newTypes andFields:(NSDictionary 
*)newFieldsForTypes;
+- (void)updateUserTypes:(NSArray<NSString *> *)newTypes 
andFields:(NSDictionary<NSString *, NSDictionary<NSString *, NSArray<NSString 
*> *> *> *)newFieldsForTypes;
 - (void)updateCustomFields:(BDSKFieldTypeMask)changedTypes;
 
 // BibTeX
-- (NSArray *)requiredFieldsForType:(NSString *)type;
-- (NSArray *)optionalFieldsForType:(NSString *)type;
-- (NSArray *)userDefaultFieldsForType:(nullable NSString *)type;
-- (NSArray *)standardFieldsForType:(NSString *)type;
+- (NSArray<NSString *> *)requiredFieldsForType:(NSString *)type;
+- (NSArray<NSString *> *)optionalFieldsForType:(NSString *)type;
+- (NSArray<NSString *> *)userDefaultFieldsForType:(nullable NSString *)type;
+- (NSArray<NSString *> *)standardFieldsForType:(NSString *)type;
 
-@property (nonatomic, readonly) NSArray *types;
-@property (nonatomic, readonly) NSDictionary *defaultFieldsForTypes;
-@property (nonatomic, readonly) NSArray *defaultTypes;
+@property (nonatomic, readonly) NSArray<NSString *> *types;
+@property (nonatomic, readonly) NSDictionary<NSString *, NSDictionary<NSString 
*, NSArray<NSString *> *> *> *defaultFieldsForTypes;
+@property (nonatomic, readonly) NSArray<NSString *> *defaultTypes;
 
 - (BOOL)isStandardType:(NSString *)type;
 
 // Field types sets
-@property (nonatomic, readonly) NSSet *localFileFieldsSet;
-@property (nonatomic, readonly) NSSet *remoteURLFieldsSet;
-@property (nonatomic, readonly) NSSet *allURLFieldsSet;
-@property (nonatomic, readonly) NSSet *noteFieldsSet;
-@property (nonatomic, readonly) NSSet *personFieldsSet;
-@property (nonatomic, readonly) NSSet *booleanFieldsSet;
-@property (nonatomic, readonly) NSSet *triStateFieldsSet;
-@property (nonatomic, readonly) NSSet *ratingFieldsSet;
-@property (nonatomic, readonly) NSSet *integerFieldsSet;
-@property (nonatomic, readonly) NSSet *citationFieldsSet;
-@property (nonatomic, readonly) NSSet *numericFieldsSet;
-@property (nonatomic, readonly) NSSet *titleFieldsSet;
-@property (nonatomic, readonly) NSSet *containerFieldsSet;
-@property (nonatomic, readonly) NSSet *invalidGroupFieldsSet;
-@property (nonatomic, readonly) NSSet *singleValuedGroupFieldsSet;
-@property (nonatomic, readonly) NSSet *allFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *localFileFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *remoteURLFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *allURLFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *noteFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *personFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *booleanFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *triStateFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *ratingFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *integerFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *citationFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *numericFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *titleFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *containerFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *invalidGroupFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *singleValuedGroupFieldsSet;
+@property (nonatomic, readonly) NSSet<NSString *> *allFieldsSet;
 
-- (NSArray *)allFieldNamesIncluding:(nullable NSArray *)include 
excluding:(nullable NSArray *)exclude;
+- (NSArray<NSString *> *)allFieldNamesIncluding:(nullable NSArray<NSString *> 
*)include excluding:(nullable NSArray<NSString *> *)exclude;
 
 // PubMed
 - (NSString *)fieldNameForPubMedTag:(NSString *)tag;
@@ -199,8 +199,8 @@
 - (NSCharacterSet *)separatorCharacterSetForField:(NSString *)fieldName;
 
 // Fields for autogeneration formats
-@property (nonatomic, copy) NSArray *requiredFieldsForCiteKey;
-@property (nonatomic, copy) NSArray *requiredFieldsForLocalFile;
+@property (nonatomic, copy) NSArray<NSString *> *requiredFieldsForCiteKey;
+@property (nonatomic, copy) NSArray<NSString *> *requiredFieldsForLocalFile;
 
 @end
 

Modified: trunk/bibdesk/BDSKWebParser.h
===================================================================
--- trunk/bibdesk/BDSKWebParser.h       2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKWebParser.h       2025-11-21 23:47:07 UTC (rev 29870)
@@ -109,7 +109,7 @@
 @property (class, nonatomic, readonly) BDSKParserFeature feature;
 
 // convenience method to return items from a bibtex string
-- (nullable NSArray *)itemsFromBibTeXString:(nullable NSString *)bibtexString 
error:(NSError **)outError;
+- (nullable NSArray<BibItem *> *)itemsFromBibTeXString:(nullable NSString 
*)bibtexString error:(NSError **)outError;
 
 @end
 

Modified: trunk/bibdesk/BDSKWebView.h
===================================================================
--- trunk/bibdesk/BDSKWebView.h 2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BDSKWebView.h 2025-11-21 23:47:07 UTC (rev 29870)
@@ -96,7 +96,7 @@
 - (void)webView:(WebView *)webView setFrame:(NSRect)frame;
 - (void)webView:(WebView *)webView setStatusBarVisible:(BOOL)visible;
 
-- (NSArray *)webView:(WebView *)webView 
contextMenuItemsForElement:(NSDictionary *)element defaultMenuItems:(NSArray 
*)defaultMenuItems;
+- (NSArray<NSMenuItem *> *)webView:(WebView *)webView 
contextMenuItemsForElement:(NSDictionary<NSString *, id> *)element 
defaultMenuItems:(NSArray<NSMenuItem *> *)defaultMenuItems;
 
 @end
 

Modified: trunk/bibdesk/BDSKZentralblattParser.h
===================================================================
--- trunk/bibdesk/BDSKZentralblattParser.h      2025-11-21 22:50:30 UTC (rev 
29869)
+++ trunk/bibdesk/BDSKZentralblattParser.h      2025-11-21 23:47:07 UTC (rev 
29870)
@@ -42,7 +42,7 @@
 NS_ASSUME_NONNULL_BEGIN
 
 @interface BDSKZentralblattParser : BDSKAsynchronousWebParser
-+ (nullable NSArray<BibItem *> *)bibTeXRequestsForZMathIDs:(NSArray *)IDs 
serverName:(nullable NSString *)serverName;
++ (nullable NSArray<BibItem *> *)bibTeXRequestsForZMathIDs:(NSArray<NSString 
*> *)IDs serverName:(nullable NSString *)serverName;
 + (nullable NSArray<BibItem *> *)itemsFromDownload:(BDSKCitationDownload 
*)download parser:(BDSKWebParser *)parser error:(NSError **)outError;
 @end
 

Modified: trunk/bibdesk/BibAuthor+Scripting.h
===================================================================
--- trunk/bibdesk/BibAuthor+Scripting.h 2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BibAuthor+Scripting.h 2025-11-21 23:47:07 UTC (rev 29870)
@@ -43,7 +43,7 @@
 
 @interface BibAuthor (Scripting)
 
-+ (nullable NSArray<BibAuthor *> *)authorsInPublications:(NSArray 
*)publications;
++ (nullable NSArray<BibAuthor *> *)authorsInPublications:(NSArray<BibItem *> 
*)publications;
 + (nullable BibAuthor *)authorWithName:(NSString *)aName 
inPublications:(NSArray<BibItem *> *)publications;
 
 + (nullable NSArray<BibAuthor *> *)editorsInPublications:(NSArray<BibItem *> 
*)publications;

Modified: trunk/bibdesk/BibDocument.h
===================================================================
--- trunk/bibdesk/BibDocument.h 2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BibDocument.h 2025-11-21 23:47:07 UTC (rev 29870)
@@ -300,7 +300,7 @@
     
     NSMutableSet *changedPublications;
     
-    NSArray *previewURLs;
+    NSArray<NSURL *> *previewURLs;
     
     BDSKFileMigrationController *migrationController;
     
@@ -360,20 +360,20 @@
 - (void)reportTemporaryCiteKeysForNewDocument:(BOOL)isNewFile;
 - (void)markAsImported;
 
-- (NSString *)bibTeXStringDroppingInternal:(BOOL)drop forPublications:(NSArray 
*)items;
-- (NSString *)previewBibTeXStringForPublications:(NSArray *)items;
+- (NSString *)bibTeXStringDroppingInternal:(BOOL)drop 
forPublications:(NSArray<BibItem *> *)items;
+- (NSString *)previewBibTeXStringForPublications:(NSArray<BibItem *> *)items;
 
-- (NSString *)citeStringForPublications:(NSArray *)items citeString:(NSString 
*)citeString;
+- (NSString *)citeStringForPublications:(NSArray<BibItem *> *)items 
citeString:(NSString *)citeString;
 
 @property (nonatomic, readonly) BDSKPublicationsArray *publications;
-- (void)insertPublications:(NSArray *)pubs atIndexes:(NSIndexSet *)indexes;
-- (void)addPublications:(NSArray *)pubArray;
+- (void)insertPublications:(NSArray<BibItem *> *)pubs atIndexes:(NSIndexSet 
*)indexes;
+- (void)addPublications:(NSArray<BibItem *> *)pubArray;
 - (void)addPublication:(BibItem *)pub;
 - (void)removePublicationsAtIndexes:(NSIndexSet *)indexes;
-- (void)removePublications:(NSArray *)pubs;
+- (void)removePublications:(NSArray<BibItem *> *)pubs;
 - (void)removePublication:(BibItem *)pub;
 
-@property (nonatomic, readonly) NSArray *shownPublications;
+@property (nonatomic, readonly) NSArray<BibItem *> *shownPublications;
 
 @property (nonatomic, readonly) BDSKGroupsArray *groups;
 
@@ -385,10 +385,10 @@
 
 @property (nonatomic, readonly) BDSKMacroResolver *macroResolver;
 
-- (void)importPublications:(NSArray *)newPubs publicationsToAutoFile:(nullable 
NSArray *)pubsToAutoFile options:(BDSKImportOptions)options;
-- (void)importPublications:(NSArray *)newPubs 
options:(BDSKImportOptions)options;
-- (NSArray *)importPublicationsFromPasteboard:(NSPasteboard *)pb 
options:(BDSKImportOptions)options;
-- (NSArray *)extractPublicationsFromFileURL:(NSURL *)fileURL 
verbose:(BOOL)verbose error:(NSError **)outError;
+- (void)importPublications:(NSArray <BibItem *>*)newPubs 
publicationsToAutoFile:(nullable NSArray<BibItem *> *)pubsToAutoFile 
options:(BDSKImportOptions)options;
+- (void)importPublications:(NSArray<BibItem *> *)newPubs 
options:(BDSKImportOptions)options;
+- (NSArray<BibItem *> *)importPublicationsFromPasteboard:(NSPasteboard *)pb 
options:(BDSKImportOptions)options;
+- (NSArray<BibItem *> *)extractPublicationsFromFileURL:(NSURL *)fileURL 
verbose:(BOOL)verbose error:(NSError **)outError;
 
 // Private methods
 
@@ -407,37 +407,37 @@
 @property (nonatomic, readonly) NSInteger numberOfSelectedPubs;
 @property (nonatomic, readonly) NSInteger numberOfClickedOrSelectedPubs;
 
-@property (nonatomic, nullable, readonly) NSArray *selectedPublications;
-@property (nonatomic, nullable, readonly) NSArray 
*clickedOrSelectedPublications;
+@property (nonatomic, nullable, readonly) NSArray<BibItem *> 
*selectedPublications;
+@property (nonatomic, nullable, readonly) NSArray<BibItem *> 
*clickedOrSelectedPublications;
 
 @property (nonatomic, nullable, readonly) BibItem *singleSelectedPublication;
 
-- (BOOL)selectItemsForCiteKeys:(NSArray *)citeKeys selectLibrary:(BOOL)flag;
+- (BOOL)selectItemsForCiteKeys:(NSArray<NSString *> *)citeKeys 
selectLibrary:(BOOL)flag;
 
 - (void)selectPublication:(BibItem *)bib;
-- (void)selectPublications:(nullable NSArray *)bibArray;
+- (void)selectPublications:(nullable NSArray<BibItem *> *)bibArray;
 
-@property (nonatomic, nullable, readonly) NSArray *selectedFileURLs;
-@property (nonatomic, nullable, readonly) NSArray *clickedOrSelectedFileURLs;
-@property (nonatomic, nullable, readonly) NSArray *selectedRemoteURLs;
-@property (nonatomic, nullable, readonly) NSArray *clickedOrSelectedRemoteURLs;
-- (nullable NSArray *)selectedURLsForField:(NSString *)field;
-- (nullable NSArray *)clickedOrSelectedURLsForField:(NSString *)field;
+@property (nonatomic, nullable, readonly) NSArray<NSURL *> *selectedFileURLs;
+@property (nonatomic, nullable, readonly) NSArray<NSURL *> 
*clickedOrSelectedFileURLs;
+@property (nonatomic, nullable, readonly) NSArray<NSURL *> *selectedRemoteURLs;
+@property (nonatomic, nullable, readonly) NSArray<NSURL *> 
*clickedOrSelectedRemoteURLs;
+- (nullable NSArray<NSURL *> *)selectedURLsForField:(NSString *)field;
+- (nullable NSArray<NSURL *> *)clickedOrSelectedURLsForField:(NSString *)field;
 
 @property (nonatomic) NSStringEncoding documentStringEncoding;
 
 - (void)publicationDidAutoConvertFiles;
 
-- (BDSKAutoGenerateStatus)userChangedField:(NSString *)fieldName 
ofPublications:(NSArray *)pubs from:(NSArray *)oldValues to:(NSArray 
*)newValues;
+- (BDSKAutoGenerateStatus)userChangedField:(NSString *)fieldName 
ofPublications:(NSArray<BibItem *> *)pubs from:(NSArray<NSString *> *)oldValues 
to:(NSArray<NSString *> *)newValues;
 - (BDSKAutoGenerateStatus)userChangedField:(NSString *)fieldName 
ofPublication:(BibItem *)pub from:(id)oldValue to:(id)newValue;
 
 - (void)userAddedURL:(NSURL *)aURL forPublication:(BibItem *)pub;
 - (void)userRemovedURL:(NSURL *)aURL forPublication:(BibItem *)pub;
 
-- (void)runScriptHookWithName:(NSString *)name forPublications:(nullable 
NSArray *)items;
-- (void)runScriptHookWithName:(NSString *)name forPublications:(nullable 
NSArray *)items field:(nullable NSString *)field oldValues:(nullable NSArray 
*)oldValues newValues:(nullable NSArray *)newValues;
-- (void)runScriptHookWithName:(NSString *)name forPublications:(nullable 
NSArray *)items completionHandler:(void (^ _Nullable)(BOOL cancelled))handler;
-- (void)runScriptHookWithName:(NSString *)name forPublications:(nullable 
NSArray *)items field:(nullable NSString *)field oldValues:(nullable NSArray 
*)oldValues newValues:(nullable NSArray *)newValues completionHandler:(void (^ 
_Nullable)(BOOL cancelled))handler;
+- (void)runScriptHookWithName:(NSString *)name forPublications:(nullable 
NSArray<BibItem *> *)items;
+- (void)runScriptHookWithName:(NSString *)name forPublications:(nullable 
NSArray<BibItem *> *)items field:(nullable NSString *)field oldValues:(nullable 
NSArray<NSString *> *)oldValues newValues:(nullable NSArray<NSString *> 
*)newValues;
+- (void)runScriptHookWithName:(NSString *)name forPublications:(nullable 
NSArray<BibItem *> *)items completionHandler:(void (^ _Nullable)(BOOL 
cancelled))handler;
+- (void)runScriptHookWithName:(NSString *)name forPublications:(nullable 
NSArray<BibItem *> *)items field:(nullable NSString *)field oldValues:(nullable 
NSArray<NSString *> *)oldValues newValues:(nullable NSArray<NSString *> 
*)newValues completionHandler:(void (^ _Nullable)(BOOL cancelled))handler;
 
 @property (nonatomic, readonly) NSDate *openDate;
 

Modified: trunk/bibdesk/BibDocument_Actions.h
===================================================================
--- trunk/bibdesk/BibDocument_Actions.h 2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BibDocument_Actions.h 2025-11-21 23:47:07 UTC (rev 29870)
@@ -57,11 +57,11 @@
 */
 - (IBAction)newPub:(nullable id)sender; // new pub button pressed.
 
-- (void)deletePublications:(NSArray *)pubs;
+- (void)deletePublications:(NSArray<BibItem *> *)pubs;
 
 - (IBAction)deleteSelectedPubs:(nullable id)sender;
 
-- (void)removePublicationsFromSelectedGroups:(NSArray *)pubs;
+- (void)removePublicationsFromSelectedGroups:(NSArray<BibItem *> *)pubs;
 
 - (IBAction)removeSelectedPubs:(nullable id)sender;
 
@@ -83,7 +83,7 @@
 */
 - (IBAction)editPubCmd:(nullable id)sender;
 
-- (void)editPublications:(NSArray *)pubs;
+- (void)editPublications:(NSArray <BibItem *>*)pubs;
 
 - (void)editPub:(BibItem *)pub forField:(nullable NSString *)field;
 - (void)editPub:(BibItem *)pub;
@@ -121,7 +121,7 @@
 - (IBAction)sendToLyX:(nullable id)sender;
 - (IBAction)postItemToWeblog:(nullable id)sender;
 
-- (void)printPublications:(NSArray *)pubs;
+- (void)printPublications:(NSArray<BibItem *> *)pubs;
 - (IBAction)printSelection:(nullable id)sender;
 
 - (void)changeColorLabel:(nullable id)sender;
@@ -208,7 +208,7 @@
 
 #pragma mark Cite Keys and Crossref support
 
-- (void)generateCiteKeysForPublications:(NSArray *)pubs;
+- (void)generateCiteKeysForPublications:(NSArray<BibItem *> *)pubs;
 - (IBAction)generateCiteKey:(nullable id)sender;
 
 - (IBAction)sortForCrossrefs:(nullable id)sender;

Modified: trunk/bibdesk/BibDocument_Groups.h
===================================================================
--- trunk/bibdesk/BibDocument_Groups.h  2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BibDocument_Groups.h  2025-11-21 23:47:07 UTC (rev 29870)
@@ -48,12 +48,12 @@
 - (BOOL)hasGroupTypeSelected:(BDSKGroupType)groupType;
 - (BOOL)hasGroupTypeClickedOrSelected:(BDSKGroupType)groupType;
 
-@property (nonatomic, readonly) NSArray *currentGroupFields;
+@property (nonatomic, readonly) NSArray<NSString *> *currentGroupFields;
 
-@property (nonatomic, readonly) NSArray *selectedGroups;
-@property (nonatomic, readonly) NSArray *clickedOrSelectedGroups;
-- (BOOL)selectGroup:(BDSKGroup *)aGroup;
-- (BOOL)selectGroups:(NSArray *)theGroups;
+@property (nonatomic, readonly) NSArray<__kindof BDSKGroup *> *selectedGroups;
+@property (nonatomic, readonly) NSArray<__kindof BDSKGroup *> 
*clickedOrSelectedGroups;
+- (BOOL)selectGroup:(__kindof BDSKGroup *)aGroup;
+- (BOOL)selectGroups:(NSArray<__kindof BDSKGroup *> *)theGroups;
 
 - (void)updateSmartGroups;
 - (void)updateFilteringGroups;
@@ -60,9 +60,9 @@
 - (BOOL)updateCategoryGroups:(BOOL)updateCategoryGroups 
smartGroups:(BOOL)updateSmartGroups;
 - (void)displaySelectedGroups;
 
-- (BOOL)addPublications:(NSArray *)pubs toGroup:(BDSKCategoryGroup *)group;
-- (BOOL)removePublications:(NSArray *)pubs fromGroups:(NSArray *)groupArray;
-- (BOOL)movePublications:(NSArray *)pubs fromGroup:(BDSKCategoryGroup *)group 
toGroup:(BDSKCategoryGroup *)newGroup;
+- (BOOL)addPublications:(NSArray<BibItem *> *)pubs toGroup:(BDSKCategoryGroup 
*)group;
+- (BOOL)removePublications:(NSArray<BibItem *> *)pubs 
fromGroups:(NSArray<BDSKCategoryGroup *> *)groupArray;
+- (BOOL)movePublications:(NSArray<BibItem *> *)pubs 
fromGroup:(BDSKCategoryGroup *)group toGroup:(BDSKCategoryGroup *)newGroup;
 
 - (IBAction)toggleGroupFieldAction:(nullable id)sender;
 - (IBAction)changeGroupFieldAction:(nullable id)sender;
@@ -82,13 +82,13 @@
 - (void)handleGroupTableSelectionChangedNotification:(nullable NSNotification 
*)notification;
 - (void)handleExternalGroupUpdatedNotification:(NSNotification *)notification;
 
-- (void)willRemoveGroups:(NSArray *)groupsToRemove;
-- (void)reloadParentGroup:(nullable BDSKParentGroup *)parentGroup 
withSelection:(NSArray *)selectedGroups;
+- (void)willRemoveGroups:(NSArray<BDSKGroup *> *)groupsToRemove;
+- (void)reloadParentGroup:(nullable BDSKParentGroup *)parentGroup 
withSelection:(NSArray<BDSKGroup *> *)selectedGroups;
 
 - (nullable BDSKGroupCellView *)viewForGroup:(BDSKGroup *)group;
 - (void)updateCountBubbleForGroup:(BDSKGroup *)group inView:(nullable 
BDSKGroupCellView *)view;
 - (void)removeSpinnerFromView:(BDSKGroupCellView *)view;
-- (BOOL)isGroupHighlighted:(BDSKGroup *)group forSelection:(NSArray *)selPubs;
+- (BOOL)isGroupHighlighted:(BDSKGroup *)group forSelection:(NSArray<BibItem *> 
*)selPubs;
 - (void)updateGroupHighlights;
 
 - (IBAction)sortGroupsByGroup:(nullable id)sender;
@@ -102,7 +102,7 @@
 - (IBAction)addSearchGroupAction:(nullable id)sender;
 - (IBAction)newSearchGroupFromBookmark:(nullable id)sender;
 - (IBAction)addSearchBookmark:(nullable id)sender;
-- (void)removeGroups:(NSArray *)theGroups;
+- (void)removeGroups:(NSArray<BDSKGroup *> *)theGroups;
 - (IBAction)removeSelectedGroups:(nullable id)sender;
 - (void)editGroup:(BDSKGroup *)group;
 - (IBAction)editGroupDoubleClickAction:(nullable id)sender;
@@ -116,7 +116,7 @@
 
 - (IBAction)mergeInExternalGroup:(nullable id)sender;
 - (IBAction)mergeInExternalPublications:(nullable id)sender;
-- (NSArray *)mergeInPublications:(NSArray *)items;
+- (NSArray<BibItem *> *)mergeInPublications:(NSArray<BibItem *> *)items;
 - (IBAction)refreshAllExternalGroups:(nullable id)sender;
 - (IBAction)refreshSelectedGroups:(nullable id)sender;
 - (IBAction)openBookmark:(nullable id)sender;
@@ -126,7 +126,7 @@
 
 - (void)handleFilterChangedNotification:(NSNotification *)notification;
 
-@property (nonatomic, readonly) NSArray *groupSortDescriptors;
+@property (nonatomic, readonly) NSArray<NSSortDescriptor *> 
*groupSortDescriptors;
 
 - (void)sortGroupsByKey:(nullable NSString *)key;
 - (BOOL)resortParentGroup:(BDSKParentGroup *)parentGroup;
@@ -133,7 +133,7 @@
 
 - (IBAction)importItem:(nullable id)sender;
 
-- (void)setImported:(BOOL)flag forPublications:(NSArray *)pubs 
inGroup:(nullable BDSKExternalGroup *)aGroup;
+- (void)setImported:(BOOL)flag forPublications:(NSArray<BibItem *> *)pubs 
inGroup:(nullable BDSKExternalGroup *)aGroup;
 
 - (BOOL)openURL:(NSURL *)url;
 

Modified: trunk/bibdesk/BibDocument_UI.h
===================================================================
--- trunk/bibdesk/BibDocument_UI.h      2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/BibDocument_UI.h      2025-11-21 23:47:07 UTC (rev 29870)
@@ -42,6 +42,8 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+@class BDSKLinkedFile;
+
 @interface BibDocument (UI) <NSSplitViewDelegate, NSMenuDelegate, 
QLPreviewPanelDataSource, QLPreviewPanelDelegate>
 
 - (BOOL)isPreviewSource;
@@ -52,7 +54,7 @@
 - (void)updateBottomPreviewPane;
 - (void)updateSidePreviewPane;
 
-@property (nonatomic, nullable, readonly) NSArray *shownFiles;
+@property (nonatomic, nullable, readonly) NSArray<BDSKLinkedFile *> 
*shownFiles;
 - (void)updateFileViews;
 
 - (void)setStatus:(NSString *)status;
@@ -75,10 +77,10 @@
 
 - (void)handleTableSelectionChangedNotification:(nullable NSNotification 
*)notification;
 
-- (void)previewURLs:(nullable NSArray *)urls;
+- (void)previewURLs:(nullable NSArray<NSURL *> *)urls;
 - (void)stopPreviewing;
 
-@property (nonatomic, nullable, readonly) NSArray *sharingServices;
+@property (nonatomic, nullable, readonly) NSArray<NSSharingService *> 
*sharingServices;
 
 @end
 

Modified: trunk/bibdesk/NSWorkspace_BDSKExtensions.h
===================================================================
--- trunk/bibdesk/NSWorkspace_BDSKExtensions.h  2025-11-21 22:50:30 UTC (rev 
29869)
+++ trunk/bibdesk/NSWorkspace_BDSKExtensions.h  2025-11-21 23:47:07 UTC (rev 
29870)
@@ -47,8 +47,8 @@
 - (BOOL)openURLWithDefaultApp:(NSURL *)aURL;
 - (BOOL)openURL:(NSURL *)aURL withApplicationURL:(NSURL *)applicationURL 
andSearchString:(nullable NSString *)searchString;
 
-- (NSArray *)editorAndViewerURLsForURL:(NSURL *)aURL;
-- (NSArray *)editorAndViewerNamesAndBundleIDsForType:(NSString *)fileType;
+- (NSArray<NSURL *> *)editorAndViewerURLsForURL:(NSURL *)aURL;
+- (NSArray<NSDictionary<NSString *, NSString *> *> 
*)editorAndViewerNamesAndBundleIDsForType:(NSString *)fileType;
 
 - (BOOL)isAppleScriptFileAtPath:(NSString *)path;
 - (BOOL)isApplicationAtPath:(NSString *)path;

Modified: trunk/bibdesk/WebURLsWithTitles.h
===================================================================
--- trunk/bibdesk/WebURLsWithTitles.h   2025-11-21 22:50:30 UTC (rev 29869)
+++ trunk/bibdesk/WebURLsWithTitles.h   2025-11-21 23:47:07 UTC (rev 29870)
@@ -40,7 +40,7 @@
 
 // Private WebKit class to read and write URLs with titles. I really see no 
reason why this is not API other than to annoy us, it's even open source
 @interface WebURLsWithTitles : NSObject
-+ (void)writeURLs:(NSArray *)URLs andTitles:(NSArray *)titles 
toPasteboard:(NSPasteboard *)pasteboard;
-+ (NSArray *)URLsFromPasteboard:(NSPasteboard *)pasteboard;
-+ (NSArray *)titlesFromPasteboard:(NSPasteboard *)pasteboard;
++ (void)writeURLs:(NSArray<NSURL *> *)URLs andTitles:(NSArray<NSString *> 
*)titles toPasteboard:(NSPasteboard *)pasteboard;
++ (NSArray<NSURL *> *)URLsFromPasteboard:(NSPasteboard *)pasteboard;
++ (NSArray<NSString *> *)titlesFromPasteboard:(NSPasteboard *)pasteboard;
 @end

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



_______________________________________________
Bibdesk-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit

Reply via email to