Revision: 27709
          http://sourceforge.net/p/bibdesk/svn/27709
Author:   hofman
Date:     2022-07-07 21:59:02 +0000 (Thu, 07 Jul 2022)
Log Message:
-----------
set accessibility description of group icons

Modified Paths:
--------------
    trunk/bibdesk/BDSKCategoryGroup.m
    trunk/bibdesk/BDSKLastImportGroup.m
    trunk/bibdesk/BDSKLibraryGroup.m
    trunk/bibdesk/BDSKScriptGroup.m
    trunk/bibdesk/BDSKSearchGroup.m
    trunk/bibdesk/BDSKSharedGroup.m
    trunk/bibdesk/BDSKSmartGroup.m
    trunk/bibdesk/BDSKStaticGroup.m
    trunk/bibdesk/BDSKURLGroup.m
    trunk/bibdesk/BDSKWebGroup.m
    trunk/bibdesk/de.lproj/Localizable.strings
    trunk/bibdesk/en.lproj/Localizable.strings
    trunk/bibdesk/fr.lproj/Localizable.strings

Modified: trunk/bibdesk/BDSKCategoryGroup.m
===================================================================
--- trunk/bibdesk/BDSKCategoryGroup.m   2022-07-07 17:12:35 UTC (rev 27708)
+++ trunk/bibdesk/BDSKCategoryGroup.m   2022-07-07 21:59:02 UTC (rev 27709)
@@ -144,8 +144,8 @@
 }
 
 - (NSImage *)icon {
-    static NSImage *categoryGroupImage = nil;
-    if (categoryGroupImage == nil) {
+    static NSImage *icon = nil;
+    if (icon == nil) {
         NSImage *smartFolderImage = [NSImage 
imageNamed:NSImageNameFolderSmart];
         CIFilter *hueAdjustFilter = [CIFilter filterWithName:@"CIHueAdjust"];
         CIFilter *colorControlsFilter = [CIFilter 
filterWithName:@"CIColorControls"];
@@ -153,7 +153,7 @@
         [colorControlsFilter setDefaults];
         [colorControlsFilter setValue:[NSNumber numberWithDouble:1.5] 
forKey:@"inputSaturation"];
         [colorControlsFilter setValue:[NSNumber numberWithDouble:0.3] 
forKey:@"inputBrightness"];
-        categoryGroupImage = [[NSImage alloc] 
initSmallBitmapWithDrawingHandler:^(NSRect rect){
+        icon = [[NSImage alloc] initSmallBitmapWithDrawingHandler:^(NSRect 
rect){
             CGImageRef cgImage = [smartFolderImage 
CGImageForProposedRect:&rect context:[NSGraphicsContext currentContext] 
hints:nil];
             CIImage *ciImage = [CIImage imageWithCGImage:cgImage];
             [hueAdjustFilter setValue:ciImage forKey:@"inputImage"];
@@ -161,8 +161,9 @@
             ciImage = [colorControlsFilter valueForKey:@"outputImage"];
             [ciImage drawInRect:rect fromRect:NSRectFromCGRect([ciImage 
extent]) operation:NSCompositeSourceOver fraction:1.0];
         }];
+        [icon setAccessibilityDescription:NSLocalizedString(@"field group", 
@"Accessibility description")];
     }
-    return categoryGroupImage;
+    return icon;
 }
 
 - (void)setName:(id)newName {
@@ -202,16 +203,17 @@
 @implementation BDSKEmptyGroup
 
 - (NSImage *)icon {
-    static NSImage *emptyCategoryGroupImage = nil;
-    if (emptyCategoryGroupImage == nil) {
+    static NSImage *icon = nil;
+    if (icon == nil) {
         NSImage *genericIcon = [super icon];
         NSImage *questionMark = [[NSWorkspace sharedWorkspace] 
iconForFileType:NSFileTypeForHFSTypeCode(kQuestionMarkIcon)];
-        emptyCategoryGroupImage = [[NSImage alloc] 
initSmallBitmapWithDrawingHandler:^(NSRect rect){
+        icon = [[NSImage alloc] initSmallBitmapWithDrawingHandler:^(NSRect 
rect){
             [genericIcon drawInRect:rect fromRect:NSZeroRect 
operation:NSCompositeCopy fraction:1.0];
             [questionMark drawInRect:NSMakeRect(6.0 * NSWidth(rect) / 32.0, 
2.0 * NSHeight(rect) / 32.0, 20.0 * NSWidth(rect) / 32.0, 20.0 * NSHeight(rect) 
/ 32.0) fromRect:NSZeroRect operation:NSCompositePlusDarker fraction:0.8];
         }];
+        [icon setAccessibilityDescription:NSLocalizedString(@"field group", 
@"Accessibility description")];
     }
-    return emptyCategoryGroupImage;
+    return icon;
 }
 
 - (NSString *)displayName {

Modified: trunk/bibdesk/BDSKLastImportGroup.m
===================================================================
--- trunk/bibdesk/BDSKLastImportGroup.m 2022-07-07 17:12:35 UTC (rev 27708)
+++ trunk/bibdesk/BDSKLastImportGroup.m 2022-07-07 21:59:02 UTC (rev 27709)
@@ -57,14 +57,15 @@
 }
 
 - (NSImage *)icon {
-       static NSImage *importGroupImage = nil;
-    if (importGroupImage == nil) {
-        importGroupImage = [[NSImage alloc] 
initSmallBitmapWithDrawingHandler:^(NSRect rect){
+       static NSImage *icon = nil;
+    if (icon == nil) {
+        icon = [[NSImage alloc] initSmallBitmapWithDrawingHandler:^(NSRect 
rect){
             [[NSImage imageNamed:NSImageNameFolderSmart] drawInRect:rect 
fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1.0];
             [[NSImage imageNamed:@"importBadge"] drawInRect:rect 
fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1.0];
         }];
+        [icon setAccessibilityDescription:NSLocalizedString(@"last import 
group", @"Accessibility description")];
     }
-    return importGroupImage;
+    return icon;
 }
 
 - (void)setName:(NSString *)newName {}

Modified: trunk/bibdesk/BDSKLibraryGroup.m
===================================================================
--- trunk/bibdesk/BDSKLibraryGroup.m    2022-07-07 17:12:35 UTC (rev 27708)
+++ trunk/bibdesk/BDSKLibraryGroup.m    2022-07-07 21:59:02 UTC (rev 27709)
@@ -37,6 +37,7 @@
  */
 
 #import "BDSKLibraryGroup.h"
+#import "NSImage_BDSKExtensions.h"
 
 
 @implementation BDSKLibraryGroup
@@ -54,7 +55,15 @@
 }
 
 - (NSImage *)icon {
-       return [NSImage imageNamed:@"libraryGroup"];
+    static NSImage *icon = nil;
+    if (icon == nil) {
+        NSImage *image = [NSImage imageNamed:@"libraryGroup"];
+        icon = [[NSImage alloc] initSmallBitmapWithDrawingHandler:^(NSRect 
rect){
+            [image drawInRect:rect fromRect:NSZeroRect 
operation:NSCompositeCopy fraction:1.0];
+        }];
+        [icon setAccessibilityDescription:NSLocalizedString(@"library group", 
@"Accessibility description")];
+    }
+    return icon;
 }
 
 - (BOOL)containsItem:(BibItem *)item {

Modified: trunk/bibdesk/BDSKScriptGroup.m
===================================================================
--- trunk/bibdesk/BDSKScriptGroup.m     2022-07-07 17:12:35 UTC (rev 27708)
+++ trunk/bibdesk/BDSKScriptGroup.m     2022-07-07 21:59:02 UTC (rev 27709)
@@ -232,7 +232,15 @@
 // BDSKGroup overrides
 
 - (NSImage *)icon {
-    return [NSImage imageNamed:@"scriptGroup"];
+    static NSImage *icon = nil;
+    if (icon == nil) {
+        NSImage *image = [NSImage imageNamed:@"scriptGroup"];
+        icon = [[NSImage alloc] initSmallBitmapWithDrawingHandler:^(NSRect 
rect){
+            [image drawInRect:rect fromRect:NSZeroRect 
operation:NSCompositeCopy fraction:1.0];
+        }];
+        [icon setAccessibilityDescription:NSLocalizedString(@"script group", 
@"Accessibility description")];
+    }
+    return icon;
 }
 
 - (BDSKGroupType)groupType { return BDSKScriptGroupType; }

Modified: trunk/bibdesk/BDSKSearchGroup.m
===================================================================
--- trunk/bibdesk/BDSKSearchGroup.m     2022-07-07 17:12:35 UTC (rev 27708)
+++ trunk/bibdesk/BDSKSearchGroup.m     2022-07-07 21:59:02 UTC (rev 27709)
@@ -202,7 +202,17 @@
 
 // note that pointer equality is used for these groups, so names can overlap, 
and users can have duplicate searches
 
-- (NSImage *)icon { return [NSImage imageNamed:@"searchGroup"]; }
+- (NSImage *)icon {
+    static NSImage *icon = nil;
+    if (icon == nil) {
+        NSImage *image = [NSImage imageNamed:@"scriptGroup"];
+        icon = [[NSImage alloc] initSmallBitmapWithDrawingHandler:^(NSRect 
rect){
+            [image drawInRect:rect fromRect:NSZeroRect 
operation:NSCompositeCopy fraction:1.0];
+        }];
+        [icon setAccessibilityDescription:NSLocalizedString(@"script group", 
@"Accessibility description")];
+    }
+    return icon;
+}
 
 - (NSString *)name {
     return [[self serverInfo] name] ?: @"";

Modified: trunk/bibdesk/BDSKSharedGroup.m
===================================================================
--- trunk/bibdesk/BDSKSharedGroup.m     2022-07-07 17:12:35 UTC (rev 27708)
+++ trunk/bibdesk/BDSKSharedGroup.m     2022-07-07 21:59:02 UTC (rev 27709)
@@ -54,19 +54,28 @@
 
 // Cached icons
 
-+ (NSImage *)icon{
-    return [NSImage imageNamed:NSImageNameBonjour];
++ (NSImage *)icon {
+    static NSImage *icon = nil;
+    if (icon == nil) {
+        NSImage *image = [NSImage imageNamed:NSImageNameBonjour];
+        icon = [[NSImage alloc] initSmallBitmapWithDrawingHandler:^(NSRect 
rect){
+            [image drawInRect:rect fromRect:NSZeroRect 
operation:NSCompositeCopy fraction:1.0];
+        }];
+        [icon setAccessibilityDescription:NSLocalizedString(@"shared group", 
@"Accessibility description")];
+    }
+    return icon;
 }
 
 + (NSImage *)lockedIcon {
     static NSImage *lockedIcon = nil;
-    if(lockedIcon == nil) {
-        NSImage *icon = [self icon];
+    if (lockedIcon == nil) {
+        NSImage *image = [NSImage imageNamed:NSImageNameBonjour];
         NSImage *badge = [NSImage imageNamed:@"lockedBadge"];
         lockedIcon = [[NSImage alloc] 
initSmallBitmapWithDrawingHandler:^(NSRect rect){
-            [icon drawInRect:rect fromRect:NSZeroRect 
operation:NSCompositeCopy fraction:1.0];
+            [image drawInRect:rect fromRect:NSZeroRect 
operation:NSCompositeCopy fraction:1.0];
             [badge drawInRect:NSMakeRect(0.5 * NSWidth(rect), 0.0, 0.5 * 
NSWidth(rect), 0.5 * NSHeight(rect)) fromRect:NSZeroRect 
operation:NSCompositeSourceOver fraction:1.0];
         }];
+        [lockedIcon setAccessibilityDescription:NSLocalizedString(@"shared 
group", @"Accessibility description")];
     }
     return lockedIcon;
 }
@@ -73,13 +82,14 @@
 
 + (NSImage *)unlockedIcon {
     static NSImage *unlockedIcon = nil;
-    if(unlockedIcon == nil) {
-        NSImage *icon = [self icon];
+    if (unlockedIcon == nil) {
+        NSImage *image = [NSImage imageNamed:NSImageNameBonjour];
         NSImage *badge = [NSImage imageNamed:@"unlockedBadge"];
         unlockedIcon = [[NSImage alloc] 
initSmallBitmapWithDrawingHandler:^(NSRect rect){
-            [icon drawInRect:rect fromRect:NSZeroRect 
operation:NSCompositeCopy fraction:1.0];
+            [image drawInRect:rect fromRect:NSZeroRect 
operation:NSCompositeCopy fraction:1.0];
             [badge drawInRect:NSMakeRect(0.5 * NSWidth(rect), 0.0, 0.5 * 
NSWidth(rect), 0.5 * NSHeight(rect)) fromRect:NSZeroRect 
operation:NSCompositeSourceOver fraction:1.0];
         }];
+        [unlockedIcon setAccessibilityDescription:NSLocalizedString(@"shared 
group", @"Accessibility description")];
     }
     return unlockedIcon;
 }

Modified: trunk/bibdesk/BDSKSmartGroup.m
===================================================================
--- trunk/bibdesk/BDSKSmartGroup.m      2022-07-07 17:12:35 UTC (rev 27708)
+++ trunk/bibdesk/BDSKSmartGroup.m      2022-07-07 21:59:02 UTC (rev 27709)
@@ -138,7 +138,15 @@
 - (BOOL)isEditable { return YES; }
 
 - (NSImage *)icon {
-       return [NSImage imageNamed:NSImageNameFolderSmart];
+    static NSImage *icon = nil;
+    if (icon == nil) {
+        NSImage *image = [NSImage imageNamed:NSImageNameFolderSmart];
+        icon = [[NSImage alloc] initSmallBitmapWithDrawingHandler:^(NSRect 
rect){
+            [image drawInRect:rect fromRect:NSZeroRect 
operation:NSCompositeCopy fraction:1.0];
+        }];
+        [icon setAccessibilityDescription:NSLocalizedString(@"smart group", 
@"Accessibility description")];
+    }
+    return icon;
 }
 
 // accessors

Modified: trunk/bibdesk/BDSKStaticGroup.m
===================================================================
--- trunk/bibdesk/BDSKStaticGroup.m     2022-07-07 17:12:35 UTC (rev 27708)
+++ trunk/bibdesk/BDSKStaticGroup.m     2022-07-07 21:59:02 UTC (rev 27709)
@@ -43,6 +43,7 @@
 #import "BDSKOwnerProtocol.h"
 #import "BDSKPublicationsArray.h"
 #import "NSSet_BDSKExtensions.h"
+#import "NSImage_BDSKExtensions.h"
 
 
 @implementation BDSKStaticGroup
@@ -131,7 +132,15 @@
 }
 
 - (NSImage *)icon {
-       return [NSImage imageNamed:NSImageNameFolder];
+    static NSImage *icon = nil;
+    if (icon == nil) {
+        NSImage *image = [NSImage imageNamed:NSImageNameFolder];
+        icon = [[NSImage alloc] initSmallBitmapWithDrawingHandler:^(NSRect 
rect){
+            [image drawInRect:rect fromRect:NSZeroRect 
operation:NSCompositeCopy fraction:1.0];
+        }];
+        [icon setAccessibilityDescription:NSLocalizedString(@"static group", 
@"Accessibility description")];
+    }
+    return icon;
 }
 
 - (BDSKGroupType)groupType { return BDSKStaticGroupType; }

Modified: trunk/bibdesk/BDSKURLGroup.m
===================================================================
--- trunk/bibdesk/BDSKURLGroup.m        2022-07-07 17:12:35 UTC (rev 27708)
+++ trunk/bibdesk/BDSKURLGroup.m        2022-07-07 21:59:02 UTC (rev 27709)
@@ -305,16 +305,17 @@
 // BDSKGroup overrides
 
 - (NSImage *)icon {
-    static NSImage *urlGroupImage = nil;
-    if (urlGroupImage == nil) {
+    static NSImage *icon = nil;
+    if (icon == nil) {
         NSImage *fileImage = [[NSWorkspace sharedWorkspace] 
iconForFileType:NSFileTypeForHFSTypeCode(kGenericDocumentIcon)];
         NSImage *networkImage = [NSImage imageNamed:NSImageNameNetwork];
-        urlGroupImage = [[NSImage alloc] 
initSmallBitmapWithDrawingHandler:^(NSRect rect){
+        icon = [[NSImage alloc] initSmallBitmapWithDrawingHandler:^(NSRect 
rect){
             [fileImage drawInRect:rect];
             [networkImage drawInRect:NSInsetRect(rect, 0.25 * NSWidth(rect), 
0.25 * NSHeight(rect)) fromRect:NSZeroRect operation:NSCompositeMultiply 
fraction:1.0];
         }];
+        [icon setAccessibilityDescription:NSLocalizedString(@"external file 
group", @"Accessibility description")];
     }
-    return urlGroupImage;
+    return icon;
 }
 
 - (BDSKGroupType)groupType { return BDSKURLGroupType; }

Modified: trunk/bibdesk/BDSKWebGroup.m
===================================================================
--- trunk/bibdesk/BDSKWebGroup.m        2022-07-07 17:12:35 UTC (rev 27708)
+++ trunk/bibdesk/BDSKWebGroup.m        2022-07-07 21:59:02 UTC (rev 27709)
@@ -52,6 +52,7 @@
 #import "NSString_BDSKExtensions.h"
 #import "NSError_BDSKExtensions.h"
 #import "NSArray_BDSKExtensions.h"
+#import "NSImage_BDSKExtensions.h"
 
 #define BDSKOpenNewWindowsForWebGroupInBrowserKey 
@"BDSKOpenNewWindowsForWebGroupInBrowser"
 
@@ -116,7 +117,17 @@
 
 // note that pointer equality is used for these groups, so names can overlap
 
-- (NSImage *)icon { return [NSImage imageNamed:@"webGroup"]; }
+- (NSImage *)icon {
+    static NSImage *icon = nil;
+    if (icon == nil) {
+        NSImage *image = [NSImage imageNamed:@"webGroup"];
+        icon = [[NSImage alloc] initSmallBitmapWithDrawingHandler:^(NSRect 
rect){
+            [image drawInRect:rect fromRect:NSZeroRect 
operation:NSCompositeCopy fraction:1.0];
+        }];
+        [icon setAccessibilityDescription:NSLocalizedString(@"web group", 
@"Accessibility description")];
+    }
+    return icon;
+}
 
 - (BDSKGroupType)groupType { return BDSKWebGroupType; }
 

Modified: trunk/bibdesk/de.lproj/Localizable.strings
===================================================================
(Binary files differ)

Modified: trunk/bibdesk/en.lproj/Localizable.strings
===================================================================
(Binary files differ)

Modified: trunk/bibdesk/fr.lproj/Localizable.strings
===================================================================
(Binary files differ)

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