diff --git a/Quicksilver/Code-QuickStepCore/QSBadgeImage.m b/Quicksilver/Code-QuickStepCore/QSBadgeImage.m index 5477389e3..21ad43c9a 100644 --- a/Quicksilver/Code-QuickStepCore/QSBadgeImage.m +++ b/Quicksilver/Code-QuickStepCore/QSBadgeImage.m @@ -41,11 +41,12 @@ - (void)drawBadgeForIconRect:(NSRect)rect { [self drawInRect:alignRectInRect(countImageRect, rect, 3) fromRect:countImageRect operation:NSCompositeSourceOver fraction:1.0]; } -- (void)drawInRect:(NSRect)rect fromRect:(NSRect)fromRect operation:(NSCompositingOperation)op fraction:(CGFloat)delta { - [super drawInRect:rect fromRect:rectFromSize([self size]) operation:op fraction:delta]; +- (void)drawInRect:(NSRect)rect fromRect:(NSRect)fromRect operation:(NSCompositingOperation)op fraction:(CGFloat)delta respectFlipped:(BOOL)respectContextIsFlipped hints:(NSDictionary *)hints { + + [super drawInRect:rect fromRect:rectFromSize([self size]) operation:op fraction:delta respectFlipped:respectContextIsFlipped hints:hints]; NSString *numString = [NSString stringWithFormat:@"%ld", (long)count]; - NSRect textRect = NSInsetRect(rect, NSHeight(rect) /4, NSHeight(rect)/4); + NSRect textRect = NSInsetRect(rect, NSHeight(rect) /3.5, NSHeight(rect)/4); NSDictionary *numAttributes = [numString attributesToFitNumbersInRect:textRect withAttributes:countBadgeTextAttributes]; NSRect glyphRect = rectFromSize([numString sizeWithAttributes:numAttributes]); diff --git a/Quicksilver/Code-QuickStepCore/QSObject.m b/Quicksilver/Code-QuickStepCore/QSObject.m index 836581bdf..55134bb60 100644 --- a/Quicksilver/Code-QuickStepCore/QSObject.m +++ b/Quicksilver/Code-QuickStepCore/QSObject.m @@ -296,7 +296,7 @@ + (id)objectByMergingObjects:(NSArray *)objects { [object guessName]; else // fall back on setting a simple name - [object setName:@"combined objects"]; + [object setName:NSLocalizedString(@"Combined Objects", nil)]; return object; } diff --git a/Quicksilver/Code-QuickStepInterface/QSObjectCell.m b/Quicksilver/Code-QuickStepInterface/QSObjectCell.m index 1c2c3ffd7..9cc9ca833 100644 --- a/Quicksilver/Code-QuickStepInterface/QSObjectCell.m +++ b/Quicksilver/Code-QuickStepInterface/QSObjectCell.m @@ -18,39 +18,6 @@ #define countBadgeTextAttributes [NSDictionary dictionaryWithObjectsAndKeys:[NSFont boldSystemFontOfSize:24] , NSFontAttributeName, [NSColor whiteColor] , NSForegroundColorAttributeName, nil] - -NSImage *QSBadgeImageForCount(NSInteger count) { - if (count <= 1) return nil; - NSImage *badgeImage = nil; - NSString *numString = [NSString stringWithFormat:@"%ld", (long)count]; - if ([numString length] <3) - badgeImage = [QSResourceManager imageNamed:@"dragBadge1-2"]; - else if ([numString length] <4) - badgeImage = [QSResourceManager imageNamed:@"dragBadge3"]; - else if ([numString length] <5) - badgeImage = [QSResourceManager imageNamed:@"dragBadge4"]; - else - badgeImage = [QSResourceManager imageNamed:@"dragBadge5"]; - - if (!badgeImage) return nil; - return badgeImage; -} - -void QSDrawCountBadgeInRect(NSImage *countImage, NSRect badgeRect, NSInteger count) { - [countImage drawInRect:badgeRect fromRect:rectFromSize([countImage size]) operation:NSCompositeSourceOver fraction:1.0]; - NSString *numString = [NSString stringWithFormat:@"%ld", (long)count]; - NSRect textRect = NSInsetRect(badgeRect, NSHeight(badgeRect) /4, NSHeight(badgeRect)/4); - NSDictionary *numAttributes = [numString attributesToFitNumbersInRect:textRect withAttributes:countBadgeTextAttributes]; - // NSLog(@"font metric: %f %f", [[numAttributes objectForKey:NSFontAttributeName] ascender] , [[numAttributes objectForKey:NSFontAttributeName] descender]); - NSRect glyphRect = rectFromSize([numString sizeWithAttributes:numAttributes]); - NSRect countTextRect = centerRectInRect(glyphRect, badgeRect); - countTextRect.origin.y += (NSHeight(glyphRect) -[[numAttributes objectForKey:NSFontAttributeName] ascender])/2; - - // [[NSColor blackColor] set]; - // NSFrameRect(countTextRect); - [numString drawInRect:countTextRect withAttributes:numAttributes]; -} - @implementation QSObjectCell @@ -585,11 +552,10 @@ - (void)drawObjectImage:(QSObject *)drawObject inRect:(NSRect)drawingRect cellFr [cornerBadge drawInRect:badgeRect fromRect:rectFromSize([cornerBadge size]) operation:NSCompositeSourceOver fraction:1.0 respectFlipped:flipped hints:nil]; } - if ([drawObject primaryCount] >1 && MIN(NSWidth(drawingRect), NSHeight(drawingRect) ) >= 64) { - NSImage *countImage = [QSCountBadgeImage badgeForCount:[drawObject primaryCount]]; - //NSImage *countImage = QSBadgeImageForCount([drawObject primaryCount]); + if ([drawObject primaryCount] > 1 && MIN(NSWidth(drawingRect), NSHeight(drawingRect) ) >= 64) { + QSCountBadgeImage *countImage = [QSCountBadgeImage badgeForCount:[drawObject primaryCount]]; if (countImage) { - NSRect badgeRect = [self badgeRectForBounds:cellFrame badgeImage:countImage]; + NSRect badgeRect = [self badgeRectForBounds:drawingRect badgeImage:countImage]; [countImage drawInRect:badgeRect fromRect:rectFromSize([countImage size]) operation:NSCompositeSourceOver fraction:1.0 respectFlipped:flipped hints:nil]; } } diff --git a/Quicksilver/Quicksilver.xcodeproj/project.pbxproj b/Quicksilver/Quicksilver.xcodeproj/project.pbxproj index 5dc530cc1..e35d63e6e 100644 --- a/Quicksilver/Quicksilver.xcodeproj/project.pbxproj +++ b/Quicksilver/Quicksilver.xcodeproj/project.pbxproj @@ -364,6 +364,10 @@ CDCC201010A4C14B009C4EED /* QSMDPredicate.h in Headers */ = {isa = PBXBuildFile; fileRef = CDCC200E10A4C14B009C4EED /* QSMDPredicate.h */; settings = {ATTRIBUTES = (Public, ); }; }; CDCC201110A4C14B009C4EED /* QSMDPredicate.m in Sources */ = {isa = PBXBuildFile; fileRef = CDCC200F10A4C14B009C4EED /* QSMDPredicate.m */; }; CDD30969160AEB0800CD34EC /* QSAction.name.strings in Resources */ = {isa = PBXBuildFile; fileRef = 423DA024132F7A2C005ED70F /* QSAction.name.strings */; }; + CDD3096E160B860A00CD34EC /* countBadge1&2.tiff in Resources */ = {isa = PBXBuildFile; fileRef = CDD3096A160B860A00CD34EC /* countBadge1&2.tiff */; }; + CDD3096F160B860A00CD34EC /* countBadge3.tiff in Resources */ = {isa = PBXBuildFile; fileRef = CDD3096B160B860A00CD34EC /* countBadge3.tiff */; }; + CDD30970160B860A00CD34EC /* countBadge4.tiff in Resources */ = {isa = PBXBuildFile; fileRef = CDD3096C160B860A00CD34EC /* countBadge4.tiff */; }; + CDD30971160B860A00CD34EC /* countBadge5.tiff in Resources */ = {isa = PBXBuildFile; fileRef = CDD3096D160B860A00CD34EC /* countBadge5.tiff */; }; CDD36AF414CD50CC00F5CEC4 /* Quartz.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7F8D135E09187AE20062C966 /* Quartz.framework */; }; CDD36AF514CD50CD00F5CEC4 /* Quartz.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7F8D135E09187AE20062C966 /* Quartz.framework */; }; CDDB44E41518C53300800B66 /* QSCrashReporter.xib in Resources */ = {isa = PBXBuildFile; fileRef = CDDB44E31518C53300800B66 /* QSCrashReporter.xib */; }; @@ -1397,6 +1401,10 @@ CDC9C6C413DA2B6D0053B09C /* Clipboard.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = Clipboard.icns; sourceTree = ""; }; CDCC200E10A4C14B009C4EED /* QSMDPredicate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QSMDPredicate.h; sourceTree = ""; }; CDCC200F10A4C14B009C4EED /* QSMDPredicate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QSMDPredicate.m; sourceTree = ""; }; + CDD3096A160B860A00CD34EC /* countBadge1&2.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = "countBadge1&2.tiff"; sourceTree = ""; }; + CDD3096B160B860A00CD34EC /* countBadge3.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = countBadge3.tiff; sourceTree = ""; }; + CDD3096C160B860A00CD34EC /* countBadge4.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = countBadge4.tiff; sourceTree = ""; }; + CDD3096D160B860A00CD34EC /* countBadge5.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = countBadge5.tiff; sourceTree = ""; }; CDDB44E31518C53300800B66 /* QSCrashReporter.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = QSCrashReporter.xib; sourceTree = ""; }; CDDB44E51518C78F00800B66 /* QSCrashReporterWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QSCrashReporterWindowController.h; sourceTree = ""; }; CDDB44E61518C78F00800B66 /* QSCrashReporterWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QSCrashReporterWindowController.m; sourceTree = ""; }; @@ -2202,6 +2210,17 @@ path = QSDroplet; sourceTree = ""; }; + CDD30972160B860C00CD34EC /* Count Badges */ = { + isa = PBXGroup; + children = ( + CDD3096A160B860A00CD34EC /* countBadge1&2.tiff */, + CDD3096B160B860A00CD34EC /* countBadge3.tiff */, + CDD3096C160B860A00CD34EC /* countBadge4.tiff */, + CDD3096D160B860A00CD34EC /* countBadge5.tiff */, + ); + name = "Count Badges"; + sourceTree = ""; + }; CDE1E65F158A4CFD00355A9F /* VDKQueue */ = { isa = PBXGroup; children = ( @@ -2299,6 +2318,7 @@ E103EC8506471DBF00447FE0 /* Images */ = { isa = PBXGroup; children = ( + CDD30972160B860C00CD34EC /* Count Badges */, CDA9D3DD1549D13B00607BE4 /* AlertCautionIcon.icns */, 7F46BFDC0A87F37F002D31E8 /* prefsGeneral.png */, 7F4ADB5E0A4EB766002A2A1B /* BackArrow.png */, @@ -3730,6 +3750,10 @@ 4D62E31C1476919300362E9A /* QSTriggersPrefPane.strings in Resources */, CDDB44E41518C53300800B66 /* QSCrashReporter.xib in Resources */, CDA9D3DE1549D13B00607BE4 /* AlertCautionIcon.icns in Resources */, + CDD3096E160B860A00CD34EC /* countBadge1&2.tiff in Resources */, + CDD3096F160B860A00CD34EC /* countBadge3.tiff in Resources */, + CDD30970160B860A00CD34EC /* countBadge4.tiff in Resources */, + CDD30971160B860A00CD34EC /* countBadge5.tiff in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Quicksilver/Resources/Images/AppearanceBack.png b/Quicksilver/Resources/Images/AppearanceBack.png index 0ad9f5296..d92396a77 100644 Binary files a/Quicksilver/Resources/Images/AppearanceBack.png and b/Quicksilver/Resources/Images/AppearanceBack.png differ diff --git a/Quicksilver/Resources/Images/AppearanceSelection.png b/Quicksilver/Resources/Images/AppearanceSelection.png index 46691dd45..c8f654717 100644 Binary files a/Quicksilver/Resources/Images/AppearanceSelection.png and b/Quicksilver/Resources/Images/AppearanceSelection.png differ diff --git a/Quicksilver/Resources/Images/AppearanceText.png b/Quicksilver/Resources/Images/AppearanceText.png index be9e391f0..5f3d138f4 100644 Binary files a/Quicksilver/Resources/Images/AppearanceText.png and b/Quicksilver/Resources/Images/AppearanceText.png differ diff --git a/Quicksilver/Resources/Images/BackArrow.png b/Quicksilver/Resources/Images/BackArrow.png index 73c580377..73420f9f4 100644 Binary files a/Quicksilver/Resources/Images/BackArrow.png and b/Quicksilver/Resources/Images/BackArrow.png differ diff --git a/Quicksilver/Resources/Images/Button-Add.png b/Quicksilver/Resources/Images/Button-Add.png index e225417e2..0e8bad688 100644 Binary files a/Quicksilver/Resources/Images/Button-Add.png and b/Quicksilver/Resources/Images/Button-Add.png differ diff --git a/Quicksilver/Resources/Images/Button-AddMenu.png b/Quicksilver/Resources/Images/Button-AddMenu.png index 3602674bc..ed3408f9c 100644 Binary files a/Quicksilver/Resources/Images/Button-AddMenu.png and b/Quicksilver/Resources/Images/Button-AddMenu.png differ diff --git a/Quicksilver/Resources/Images/Button-GearMenu.png b/Quicksilver/Resources/Images/Button-GearMenu.png index bb17be4ef..d2cfc6c66 100644 Binary files a/Quicksilver/Resources/Images/Button-GearMenu.png and b/Quicksilver/Resources/Images/Button-GearMenu.png differ diff --git a/Quicksilver/Resources/Images/Button-Info.png b/Quicksilver/Resources/Images/Button-Info.png index 16e9aad6e..53d3f4cce 100644 Binary files a/Quicksilver/Resources/Images/Button-Info.png and b/Quicksilver/Resources/Images/Button-Info.png differ diff --git a/Quicksilver/Resources/Images/Button-Remove.png b/Quicksilver/Resources/Images/Button-Remove.png index 3c3507a16..7cfad3755 100644 Binary files a/Quicksilver/Resources/Images/Button-Remove.png and b/Quicksilver/Resources/Images/Button-Remove.png differ diff --git a/Quicksilver/Resources/Images/Button-Rescan.png b/Quicksilver/Resources/Images/Button-Rescan.png index 7c4f206dd..2a5c5bc21 100644 Binary files a/Quicksilver/Resources/Images/Button-Rescan.png and b/Quicksilver/Resources/Images/Button-Rescan.png differ diff --git a/Quicksilver/Resources/Images/ContactEmail.icns b/Quicksilver/Resources/Images/ContactEmail.icns index ec6f81880..0e36aa0a2 100644 Binary files a/Quicksilver/Resources/Images/ContactEmail.icns and b/Quicksilver/Resources/Images/ContactEmail.icns differ diff --git a/Quicksilver/Resources/Images/DefaultBookmarkIcon.icns b/Quicksilver/Resources/Images/DefaultBookmarkIcon.icns index 778eb49fb..683067d2a 100644 Binary files a/Quicksilver/Resources/Images/DefaultBookmarkIcon.icns and b/Quicksilver/Resources/Images/DefaultBookmarkIcon.icns differ diff --git a/Quicksilver/Resources/Images/Find.icns b/Quicksilver/Resources/Images/Find.icns index 3d6e6a814..9895074d1 100644 Binary files a/Quicksilver/Resources/Images/Find.icns and b/Quicksilver/Resources/Images/Find.icns differ diff --git a/Quicksilver/Resources/Images/ForwardArrow.png b/Quicksilver/Resources/Images/ForwardArrow.png index c54bf4e32..9f59b35bf 100644 Binary files a/Quicksilver/Resources/Images/ForwardArrow.png and b/Quicksilver/Resources/Images/ForwardArrow.png differ diff --git a/Quicksilver/Resources/Images/KeyboardTrigger.png b/Quicksilver/Resources/Images/KeyboardTrigger.png index a65f63e6a..ef2887a9b 100644 Binary files a/Quicksilver/Resources/Images/KeyboardTrigger.png and b/Quicksilver/Resources/Images/KeyboardTrigger.png differ diff --git a/Quicksilver/Resources/Images/Pref-PlugIns.png b/Quicksilver/Resources/Images/Pref-PlugIns.png index b3ebfb773..c5c53411f 100644 Binary files a/Quicksilver/Resources/Images/Pref-PlugIns.png and b/Quicksilver/Resources/Images/Pref-PlugIns.png differ diff --git a/Quicksilver/Resources/Images/Pref-Settings.png b/Quicksilver/Resources/Images/Pref-Settings.png index 2a72b0d14..7dce2fef4 100644 Binary files a/Quicksilver/Resources/Images/Pref-Settings.png and b/Quicksilver/Resources/Images/Pref-Settings.png differ diff --git a/Quicksilver/Resources/Images/QSPlugIn.icns b/Quicksilver/Resources/Images/QSPlugIn.icns index a08f24ab6..d9b360fae 100644 Binary files a/Quicksilver/Resources/Images/QSPlugIn.icns and b/Quicksilver/Resources/Images/QSPlugIn.icns differ diff --git a/Quicksilver/Resources/Images/QuicksilverMenu.png b/Quicksilver/Resources/Images/QuicksilverMenu.png index ebba658db..bca21c149 100644 Binary files a/Quicksilver/Resources/Images/QuicksilverMenu.png and b/Quicksilver/Resources/Images/QuicksilverMenu.png differ diff --git a/Quicksilver/Resources/Images/QuicksilverMenuLight.png b/Quicksilver/Resources/Images/QuicksilverMenuLight.png index 18cf8706b..20bc227eb 100644 Binary files a/Quicksilver/Resources/Images/QuicksilverMenuLight.png and b/Quicksilver/Resources/Images/QuicksilverMenuLight.png differ diff --git a/Quicksilver/Resources/Images/QuicksilverMenuPressed.png b/Quicksilver/Resources/Images/QuicksilverMenuPressed.png index edc2cd3a4..cd1a12f0b 100644 Binary files a/Quicksilver/Resources/Images/QuicksilverMenuPressed.png and b/Quicksilver/Resources/Images/QuicksilverMenuPressed.png differ diff --git a/Quicksilver/Resources/Images/countBadge1&2.tiff b/Quicksilver/Resources/Images/countBadge1&2.tiff new file mode 100644 index 000000000..c6c24402d Binary files /dev/null and b/Quicksilver/Resources/Images/countBadge1&2.tiff differ diff --git a/Quicksilver/Resources/Images/countBadge3.tiff b/Quicksilver/Resources/Images/countBadge3.tiff new file mode 100644 index 000000000..3a4f135ad Binary files /dev/null and b/Quicksilver/Resources/Images/countBadge3.tiff differ diff --git a/Quicksilver/Resources/Images/countBadge4.tiff b/Quicksilver/Resources/Images/countBadge4.tiff new file mode 100644 index 000000000..5bccd9182 Binary files /dev/null and b/Quicksilver/Resources/Images/countBadge4.tiff differ diff --git a/Quicksilver/Resources/Images/countBadge5.tiff b/Quicksilver/Resources/Images/countBadge5.tiff new file mode 100644 index 000000000..3f55d3572 Binary files /dev/null and b/Quicksilver/Resources/Images/countBadge5.tiff differ diff --git a/Quicksilver/Resources/Images/defaultAction.icns b/Quicksilver/Resources/Images/defaultAction.icns index 429a21b99..ee5602776 100644 Binary files a/Quicksilver/Resources/Images/defaultAction.icns and b/Quicksilver/Resources/Images/defaultAction.icns differ diff --git a/Quicksilver/Resources/Images/prefsGeneral.png b/Quicksilver/Resources/Images/prefsGeneral.png index 2a72b0d14..7dce2fef4 100644 Binary files a/Quicksilver/Resources/Images/prefsGeneral.png and b/Quicksilver/Resources/Images/prefsGeneral.png differ diff --git a/Quicksilver/Resources/ResourceLocations.plist b/Quicksilver/Resources/ResourceLocations.plist index 35bbe849b..ca5868f20 100644 --- a/Quicksilver/Resources/ResourceLocations.plist +++ b/Quicksilver/Resources/ResourceLocations.plist @@ -1,5 +1,5 @@ - + AFPClient @@ -28,7 +28,7 @@ type - 'osas' + 'osas' Computer @@ -93,14 +93,6 @@ commandIcon ForwardArrowIcon - countBadge1&2 - /Applications/Mail.app/Contents/Resources/newMailBadge1&2.tiff - countBadge3 - /Applications/Mail.app/Contents/Resources/newMailBadge3.tiff - countBadge4 - /Applications/Mail.app/Contents/Resources/newMailBadge4.tiff - countBadge5 - /Applications/Mail.app/Contents/Resources/newMailBadge5.tiff extrasIcon AlertNoteIcon genericPerson