[Adium-commits] adium 2015:1679180a5b2d: Add tooltips for closed groups. Fixes #...
adium-commits at adiumx.com
adium-commits at adiumx.com
Tue Apr 28 09:54:41 UTC 2009
details: http://hg.adiumx.com/adium/rev/1679180a5b2d
revision: 2015:1679180a5b2d
author: Colin Barrett <colin at springsandstruts.com>
date: Tue Apr 28 02:49:55 2009 -0700
Add tooltips for closed groups. Fixes #11951
Subject: adium 2016:460e4914297f: Merge.
details: http://hg.adiumx.com/adium/rev/460e4914297f
revision: 2016:460e4914297f
author: Colin Barrett <colin at springsandstruts.com>
date: Tue Apr 28 02:54:34 2009 -0700
Merge.
diffstat:
Adium.xcodeproj/project.pbxproj | 12 +-
Frameworks/AIUtilities Framework/Source/AIAlternatingRowOutlineView.h | 10 +-
Frameworks/AIUtilities Framework/Source/AIAlternatingRowOutlineView.m | 17 +-
Frameworks/AIUtilities Framework/Source/AIAlternatingRowTableView.h | 16 -
Frameworks/AIUtilities Framework/Source/AIAlternatingRowTableView.m | 168 ----
Frameworks/AIUtilities Framework/Source/AITableViewAdditions.h | 6 +
Frameworks/AIUtilities Framework/Source/AITableViewAdditions.m | 49 +
Frameworks/AIUtilities Framework/Source/AIVariableHeightOutlineView.m | 2 +-
Frameworks/Adium Framework/Resources/PresetManagement.nib/classes.nib | 344 +++++++--
Frameworks/Adium Framework/Resources/PresetManagement.nib/info.nib | 16 +-
Frameworks/Adium Framework/Resources/PresetManagement.nib/keyedobjects.nib |
Frameworks/Adium Framework/Source/AIAbstractListController.m | 4 +-
Frameworks/Adium Framework/Source/AIListCell.m | 2 +-
Frameworks/Adium Framework/Source/ESContactAlertsViewController.m | 3 +-
Frameworks/Adium Framework/Source/ESDebugAILog.h | 4 +-
Plugins/Emoticons/AIEmoticonPackPreviewTableView.h | 4 +-
Plugins/Emoticons/AIEmoticonPackPreviewTableView.m | 2 +-
Plugins/Emoticons/AIEmoticonPreferences.h | 23 +-
Plugins/Emoticons/AIEmoticonPreferences.m | 18 +-
Plugins/Emoticons/EmoticonPrefs.nib/classes.nib | 300 ++++++--
Plugins/Emoticons/EmoticonPrefs.nib/info.nib | 18 +-
Plugins/Emoticons/EmoticonPrefs.nib/keyedobjects.nib |
Resources/AIURLHandlerPreferences.nib/designable.nib | 114 +++-
Resources/AIURLHandlerPreferences.nib/keyedobjects.nib |
Resources/XtrasManager.nib/classes.nib | 281 ++++++-
Resources/XtrasManager.nib/info.nib | 25 +-
Resources/XtrasManager.nib/keyedobjects.nib |
Resources/en.lproj/AIAdvancedInspectorPane.nib/classes.nib | 54 +-
Resources/en.lproj/AIAdvancedInspectorPane.nib/keyedobjects.nib |
Source/AIAdvancedInspectorPane.h | 4 +-
Source/AIAdvancedInspectorPane.m | 2 -
Source/AIAdvancedPreferences.h | 4 +-
Source/AIAdvancedPreferences.m | 22 +-
Source/AIListObjectContentsPlugin.h | 23 +
Source/AIListObjectContentsPlugin.m | 258 +++++++
Source/AILogViewerWindowController.m | 7 +-
Source/AIMentionAdvancedPreferences.h | 2 -
Source/AIPreferenceWindowController.m | 1 -
Source/AIURLHandlerAdvancedPreferences.h | 3 +-
Source/AIXtrasManager.h | 4 +-
Source/AIXtrasManager.m | 8 +-
Source/ESAwayStatusWindowController.h | 4 +-
Source/ESAwayStatusWindowController.m | 2 -
Source/ESFileTransferProgressWindowController.m | 3 +-
Source/ESMetaContactContentsPlugin.h | 23 -
Source/ESMetaContactContentsPlugin.m | 235 ------
Source/RAFBlockEditorWindowController.h | 1 -
47 files changed, 1273 insertions(+), 825 deletions(-)
diffs (truncated from 2771 to 1000 lines):
diff -r 866b6f19c9f3 -r 460e4914297f Adium.xcodeproj/project.pbxproj
--- a/Adium.xcodeproj/project.pbxproj Mon Apr 27 22:20:35 2009 -0700
+++ b/Adium.xcodeproj/project.pbxproj Tue Apr 28 02:54:34 2009 -0700
@@ -416,7 +416,7 @@
347E7AAA07CAF8EE00350507 /* SAContactOnlineForPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = 347E7AA807CAF8EE00350507 /* SAContactOnlineForPlugin.m */; };
347E7AB307CAF93700350507 /* AIContactOnlineSincePlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = 347E7AB107CAF93700350507 /* AIContactOnlineSincePlugin.m */; };
347E7ABC07CAF94A00350507 /* ESContactServersideDisplayName.m in Sources */ = {isa = PBXBuildFile; fileRef = 347E7ABA07CAF94A00350507 /* ESContactServersideDisplayName.m */; };
- 347E7ACF07CAF98500350507 /* ESMetaContactContentsPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = 347E7ACD07CAF98400350507 /* ESMetaContactContentsPlugin.m */; };
+ 347E7ACF07CAF98500350507 /* AIListObjectContentsPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = 347E7ACD07CAF98400350507 /* AIListObjectContentsPlugin.m */; };
347EAB2D09721D490090EA6E /* pref-personal.png in Resources */ = {isa = PBXBuildFile; fileRef = 347EAB2C09721D490090EA6E /* pref-personal.png */; };
347F4B810D340F16006D5A56 /* AIPreferenceContainer.m in Sources */ = {isa = PBXBuildFile; fileRef = 347F4B800D340F16006D5A56 /* AIPreferenceContainer.m */; };
3482E0F50AB5064E00471992 /* AIAdiumProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = 3482E0EB0AB5063300471992 /* AIAdiumProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; };
@@ -3046,8 +3046,8 @@
347E7AB207CAF93700350507 /* AIContactOnlineSincePlugin.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = AIContactOnlineSincePlugin.h; path = Source/AIContactOnlineSincePlugin.h; sourceTree = "<group>"; };
347E7AB907CAF94A00350507 /* ESContactServersideDisplayName.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ESContactServersideDisplayName.h; path = Source/ESContactServersideDisplayName.h; sourceTree = "<group>"; };
347E7ABA07CAF94A00350507 /* ESContactServersideDisplayName.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = ESContactServersideDisplayName.m; path = Source/ESContactServersideDisplayName.m; sourceTree = "<group>"; };
- 347E7ACD07CAF98400350507 /* ESMetaContactContentsPlugin.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = ESMetaContactContentsPlugin.m; path = Source/ESMetaContactContentsPlugin.m; sourceTree = "<group>"; };
- 347E7ACE07CAF98500350507 /* ESMetaContactContentsPlugin.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ESMetaContactContentsPlugin.h; path = Source/ESMetaContactContentsPlugin.h; sourceTree = "<group>"; };
+ 347E7ACD07CAF98400350507 /* AIListObjectContentsPlugin.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = AIListObjectContentsPlugin.m; path = Source/AIListObjectContentsPlugin.m; sourceTree = "<group>"; };
+ 347E7ACE07CAF98500350507 /* AIListObjectContentsPlugin.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = AIListObjectContentsPlugin.h; path = Source/AIListObjectContentsPlugin.h; sourceTree = "<group>"; };
347EAB2C09721D490090EA6E /* pref-personal.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "pref-personal.png"; path = "Resources/pref-personal.png"; sourceTree = "<group>"; };
347F4B7F0D340F16006D5A56 /* AIPreferenceContainer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AIPreferenceContainer.h; path = Source/AIPreferenceContainer.h; sourceTree = "<group>"; };
347F4B800D340F16006D5A56 /* AIPreferenceContainer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AIPreferenceContainer.m; path = Source/AIPreferenceContainer.m; sourceTree = "<group>"; };
@@ -5637,8 +5637,8 @@
347E7A9407CAF8AE00350507 /* ESContactClientPlugin.m */,
347E7AB907CAF94A00350507 /* ESContactServersideDisplayName.h */,
347E7ABA07CAF94A00350507 /* ESContactServersideDisplayName.m */,
- 347E7ACE07CAF98500350507 /* ESMetaContactContentsPlugin.h */,
- 347E7ACD07CAF98400350507 /* ESMetaContactContentsPlugin.m */,
+ 347E7ACE07CAF98500350507 /* AIListObjectContentsPlugin.h */,
+ 347E7ACD07CAF98400350507 /* AIListObjectContentsPlugin.m */,
347E7AA907CAF8EE00350507 /* SAContactOnlineForPlugin.h */,
347E7AA807CAF8EE00350507 /* SAContactOnlineForPlugin.m */,
112B49080F82FB1700690E84 /* AIGroupChatStatusTooltipPlugin.h */,
@@ -10182,7 +10182,7 @@
347E7AAA07CAF8EE00350507 /* SAContactOnlineForPlugin.m in Sources */,
347E7AB307CAF93700350507 /* AIContactOnlineSincePlugin.m in Sources */,
347E7ABC07CAF94A00350507 /* ESContactServersideDisplayName.m in Sources */,
- 347E7ACF07CAF98500350507 /* ESMetaContactContentsPlugin.m in Sources */,
+ 347E7ACF07CAF98500350507 /* AIListObjectContentsPlugin.m in Sources */,
074DDB5D07CB413F0033AFF7 /* CBContactLastSeenPlugin.m in Sources */,
34D8333B07CBD758006466F2 /* ESApplescriptContactAlertPlugin.m in Sources */,
34D8333C07CBD758006466F2 /* ESPanelApplescriptDetailPane.m in Sources */,
diff -r 866b6f19c9f3 -r 460e4914297f Frameworks/AIUtilities Framework/Source/AIAlternatingRowOutlineView.h
--- a/Frameworks/AIUtilities Framework/Source/AIAlternatingRowOutlineView.h Mon Apr 27 22:20:35 2009 -0700
+++ b/Frameworks/AIUtilities Framework/Source/AIAlternatingRowOutlineView.h Tue Apr 28 02:54:34 2009 -0700
@@ -24,22 +24,14 @@
@interface AIAlternatingRowOutlineView : AIOutlineView {
NSColor *alternatingRowColor;
- BOOL drawsAlternatingRows;
BOOL drawsBackground;
BOOL drawsGradientSelection;
}
/*!
- * @brief Whether the outline view draws a grid, alternating by rows.
- *
- * The grid will be drawn alternating between the background color and the color specified by setAlternatingRowColor:, which has a sane, light blue default.
- */
- at property (readwrite, nonatomic) BOOL drawsAlternatingRows;
-
-/*!
* @brief The color used for drawing alternating row backgrounds.
*
- * Ignored if drawsAlternatingRows is NO.
+ * Ignored if usesAlternatingRowBackgroundColors is NO.
*/
@property (readwrite, nonatomic, retain) NSColor *alternatingRowColor;
diff -r 866b6f19c9f3 -r 460e4914297f Frameworks/AIUtilities Framework/Source/AIAlternatingRowOutlineView.m
--- a/Frameworks/AIUtilities Framework/Source/AIAlternatingRowOutlineView.m Mon Apr 27 22:20:35 2009 -0700
+++ b/Frameworks/AIUtilities Framework/Source/AIAlternatingRowOutlineView.m Tue Apr 28 02:54:34 2009 -0700
@@ -55,7 +55,7 @@
- (void)initAlternatingRowOutlineView
{
- drawsAlternatingRows = NO;
+ [self setUsesAlternatingRowBackgroundColors:NO];
drawsBackground = YES;
drawsGradientSelection = NO;
alternatingRowColor = [[NSColor colorWithCalibratedRed:(237.0/255.0) green:(243.0/255.0) blue:(254.0/255.0) alpha:1.0] retain];
@@ -76,15 +76,6 @@
//Configuring ----------------------------------------------------------------------
-//Toggle the drawing of alternating rows
-- (void)setDrawsAlternatingRows:(BOOL)flag
-{
- drawsAlternatingRows = flag;
- [self setNeedsDisplay:YES];
-}
-- (BOOL)drawsAlternatingRows{
- return drawsAlternatingRows;
-}
- (void)setDrawsGradientSelection:(BOOL)inDrawsGradientSelection
{
@@ -132,7 +123,7 @@
//Draw the alternating colors and grid below the "bottom" of the outlineview
- (void)drawAlternatingRowsInRect:(NSRect)rect
{
- if (!drawsBackground || !drawsAlternatingRows)
+ if (!drawsBackground || ![self usesAlternatingRowBackgroundColors])
return;
unsigned rectNumber = 0;
@@ -163,7 +154,7 @@
{
[super drawRect:rect];
- if (drawsBackground && drawsAlternatingRows && [self gridStyleMask] != NSTableViewGridNone) {
+ if (drawsBackground && [self usesAlternatingRowBackgroundColors] && [self gridStyleMask] != NSTableViewGridNone) {
[self _drawGridInClipRect:rect];
}
}
@@ -250,7 +241,7 @@
- (void)drawGridInClipRect:(NSRect)rect
{
- if (drawsBackground && drawsAlternatingRows) {
+ if (drawsBackground && [self usesAlternatingRowBackgroundColors]) {
//We do our grid drawing later
} else {
[super drawGridInClipRect:rect];
diff -r 866b6f19c9f3 -r 460e4914297f Frameworks/AIUtilities Framework/Source/AIAlternatingRowTableView.h
--- a/Frameworks/AIUtilities Framework/Source/AIAlternatingRowTableView.h Mon Apr 27 22:20:35 2009 -0700
+++ b/Frameworks/AIUtilities Framework/Source/AIAlternatingRowTableView.h Tue Apr 28 02:54:34 2009 -0700
@@ -15,27 +15,11 @@
/*!
* @class AIAlternatingRowTableView
- * @brief An <tt>NSTableView</tt> subclass supporting gradient selection and notification of a delete keypress.
*
* The name is currently AIAlternatingRowTableView for Adium legacy regions. This class should be renamed.
*
*/
@interface AIAlternatingRowTableView : NSTableView {
- BOOL acceptsFirstMouse;
- BOOL drawsGradientSelection;
}
- at property (readwrite, nonatomic) BOOL acceptsFirstMouse;
-
- at property (readwrite, nonatomic) BOOL drawsGradientSelection;
-
@end
-
- at interface NSObject (AITableViewDelegateDeleteSupport)
-- (void)tableViewDeleteSelectedRows:(NSTableView *)tableView;
- at end
-
-
- at interface NSObject (AITableViewDelegateMenuSupport)
-- (NSMenu *)tableView:(NSTableView *)inTableView menuForEvent:(NSEvent *)theEvent;
- at end
diff -r 866b6f19c9f3 -r 460e4914297f Frameworks/AIUtilities Framework/Source/AIAlternatingRowTableView.m
--- a/Frameworks/AIUtilities Framework/Source/AIAlternatingRowTableView.m Mon Apr 27 22:20:35 2009 -0700
+++ b/Frameworks/AIUtilities Framework/Source/AIAlternatingRowTableView.m Tue Apr 28 02:54:34 2009 -0700
@@ -14,31 +14,12 @@
\------------------------------------------------------------------------------------------------------ */
#import "AIAlternatingRowTableView.h"
-#import "AIGradientAdditions.h"
-#import "AIImageAdditions.h"
-#import "AIColorAdditions.h"
-
-/*
- A subclass of table view that adds:
-
- - Alternating row colors
- - Delete key handling
- */
-
- at interface AIAlternatingRowTableView ()
-- (void)_initAlternatingRowTableView;
- at end
-
- at interface NSTableView (Undocumented)
-- (id)_highlightColorForCell:(NSCell *)cell;
- at end
@implementation AIAlternatingRowTableView
- (id)initWithCoder:(NSCoder *)aDecoder
{
if ((self = [super initWithCoder:aDecoder])) {
- [self _initAlternatingRowTableView];
}
return self;
}
@@ -46,156 +27,7 @@
- (id)initWithFrame:(NSRect)frameRect
{
if ((self = [super initWithFrame:frameRect])) {
- [self _initAlternatingRowTableView];
}
return self;
}
-
-- (void)_initAlternatingRowTableView
-{
- self.acceptsFirstMouse = NO;
- [[NSNotificationCenter defaultCenter] addObserver:self
- selector:@selector(alternatingRowTableViewSelectionDidChange:)
- name:NSTableViewSelectionDidChangeNotification
- object:self];
-}
-
-- (void)dealloc
-{
- [[NSNotificationCenter defaultCenter] removeObserver:self];
-
- [super dealloc];
-}
-
-
-//Configuring ----------------------------------------------------------------------
-- (void)setDrawsAlternatingRows:(BOOL)flag
-{
- [self setUsesAlternatingRowBackgroundColors:flag];
-
- [self setNeedsDisplay:YES];
-}
-
-//Filter keydowns looking for the delete key (to delete the current selection)
-- (void)keyDown:(NSEvent *)theEvent
-{
- NSString *charString = [theEvent charactersIgnoringModifiers];
- unichar pressedChar = 0;
-
- //Get the pressed character
- if ([charString length] == 1) pressedChar = [charString characterAtIndex:0];
-
- //Check if 'delete' was pressed
- if (pressedChar == NSDeleteFunctionKey || pressedChar == NSBackspaceCharacter || pressedChar == NSDeleteCharacter) { //Delete
- if ([[self delegate] respondsToSelector:@selector(tableViewDeleteSelectedRows:)]) {
- [[self delegate] tableViewDeleteSelectedRows:self]; //Delete the selection
- }
- } else {
- [super keyDown:theEvent]; //Pass the key event on
- }
-}
-
-- (void)setDrawsGradientSelection:(BOOL)inDrawsGradientSelection
-{
- drawsGradientSelection = inDrawsGradientSelection;
- [self setNeedsDisplay:YES];
-}
-
-- (BOOL)drawsGradientSelection
-{
- return drawsGradientSelection;
-}
-
-// First mouse ----------------------------------------------------------------------
- at synthesize acceptsFirstMouse;
-
-- (BOOL)acceptsFirstMouse:(NSEvent *)theEvent
-{
- return self.acceptsFirstMouse;
-}
-
-//Allow our delegate to specify context menus
-- (NSMenu *)menuForEvent:(NSEvent *)theEvent
-{
- if ([[self delegate] respondsToSelector:@selector(tableView:menuForEvent:)]) {
- return [[self delegate] tableView:self menuForEvent:theEvent];
- } else {
- return [super menuForEvent:theEvent];
- }
-}
-
-// Scrolling ----------------------------------------------------------------------
-- (void)tile
-{
- [super tile];
-
- [[self enclosingScrollView] setVerticalLineScroll: ([self rowHeight] + [self intercellSpacing].height) ];
-}
-
-#pragma mark Gradient selection and alternating rows
-
-- (void)highlightSelectionInClipRect:(NSRect)clipRect
-{
- if (drawsGradientSelection && [[self window] isKeyWindow] && ([[self window] firstResponder] == self)) {
- NSIndexSet *indices = [self selectedRowIndexes];
- unsigned int bufSize = [indices count];
- NSUInteger *buf = malloc(bufSize * sizeof(NSUInteger));
- unsigned int i = 0, j = 0;
-
- NSGradient *gradient = [NSGradient selectedControlGradient];
-
- NSRange range = NSMakeRange([indices firstIndex], ([indices lastIndex]-[indices firstIndex]) + 1);
- [indices getIndexes:buf maxCount:bufSize inIndexRange:&range];
-
- NSRect *selectionLineRects = (NSRect *)malloc(sizeof(NSRect) * bufSize);
-
- while (i < bufSize) {
- int startIndex = buf[i];
- int lastIndex = buf[i];
- while ((i + 1 < bufSize) &&
- (buf[i + 1] == lastIndex + 1)){
- i++;
- lastIndex++;
- }
-
- NSRect thisRect = NSUnionRect([self rectOfRow:startIndex],
- [self rectOfRow:lastIndex]);
- [gradient drawInRect:thisRect angle:90.0];
-
- //Draw a line at the light side, to make it look a lot cleaner
- thisRect.size.height = 1;
- selectionLineRects[j++] = thisRect;
-
- i++;
- }
-
- [[NSColor alternateSelectedControlColor] set];
- NSRectFillListUsingOperation(selectionLineRects, j, NSCompositeSourceOver);
-
- free(buf);
- free(selectionLineRects);
-
- } else {
- [super highlightSelectionInClipRect:clipRect];
- }
-}
-
-//Override to prevent drawing glitches; otherwise, the cell will try to draw a highlight, too
-- (id)_highlightColorForCell:(NSCell *)cell
-{
- if (drawsGradientSelection && [[self window] isKeyWindow] && ([[self window] firstResponder] == self)) {
- return nil;
- } else {
- return [super _highlightColorForCell:cell];
- }
-}
-
-- (void)alternatingRowTableViewSelectionDidChange:(NSNotification *)notification
-{
- if (drawsGradientSelection) {
- //We do fancy drawing, so we need a full redisplay when selection changes
- [self setNeedsDisplay:YES];
- }
-}
-
@end
diff -r 866b6f19c9f3 -r 460e4914297f Frameworks/AIUtilities Framework/Source/AITableViewAdditions.h
--- a/Frameworks/AIUtilities Framework/Source/AITableViewAdditions.h Mon Apr 27 22:20:35 2009 -0700
+++ b/Frameworks/AIUtilities Framework/Source/AITableViewAdditions.h Tue Apr 28 02:54:34 2009 -0700
@@ -17,3 +17,9 @@
- (NSArray *)arrayOfSelectedItemsUsingSourceArray:(NSArray *)sourceArray;
- (void)selectItemsInArray:(NSArray *)selectedItems usingSourceArray:(NSArray *)sourceArray;
@end
+
+ at protocol AITableViewDelegate
+ at optional
+- (void)tableViewDeleteSelectedRows:(NSTableView *)tableView;
+- (NSMenu *)tableView:(NSTableView *)inTableView menuForEvent:(NSEvent *)theEvent;
+ at end
diff -r 866b6f19c9f3 -r 460e4914297f Frameworks/AIUtilities Framework/Source/AITableViewAdditions.m
--- a/Frameworks/AIUtilities Framework/Source/AITableViewAdditions.m Mon Apr 27 22:20:35 2009 -0700
+++ b/Frameworks/AIUtilities Framework/Source/AITableViewAdditions.m Tue Apr 28 02:54:34 2009 -0700
@@ -15,6 +15,7 @@
#import "AITableViewAdditions.h"
#import "AIApplicationAdditions.h"
+#import <objc/objc-class.h>
@implementation NSTableView (AITableViewAdditions)
@@ -68,3 +69,51 @@
}
@end
+
+ at interface AITableView : NSTableView {}
+ at end
+
+ at implementation AITableView
+
+/*
+ * @brief Load
+ *
+ * Install ourself to intercept keyDown: calls so we can stick our delete handling in, and menuForEvent: calls so we can ask our delegate
+ */
++ (void)load
+{
+ //Anything you can do, I can do better...
+ method_exchangeImplementations(class_getInstanceMethod([NSTableView class], @selector(keyDown:)), class_getInstanceMethod(self, @selector(keyDown:)));
+
+ method_exchangeImplementations(class_getInstanceMethod([NSTableView class], @selector(menuForEvent:)), class_getInstanceMethod(self, @selector(menuForEvent:)));
+}
+
+//Filter keydowns looking for the delete key (to delete the current selection)
+- (void)keyDown:(NSEvent *)theEvent
+{
+ NSString *charString = [theEvent charactersIgnoringModifiers];
+ unichar pressedChar = 0;
+
+ //Get the pressed character
+ if ([charString length] == 1) pressedChar = [charString characterAtIndex:0];
+
+ //Check if 'delete' was pressed
+ if (pressedChar == NSDeleteFunctionKey || pressedChar == NSBackspaceCharacter || pressedChar == NSDeleteCharacter) { //Delete
+ if ([[self delegate] respondsToSelector:@selector(tableViewDeleteSelectedRows:)])
+ [[self delegate] tableViewDeleteSelectedRows:self]; //Delete the selection
+ } else {
+ //Pass the key event on to the unswizzled impl
+ method_invoke(self, class_getInstanceMethod([AITableView class], @selector(keyDown:)), theEvent);
+ }
+}
+
+//Allow our delegate to specify context menus
+- (NSMenu *)menuForEvent:(NSEvent *)theEvent
+{
+ if ([[self delegate] respondsToSelector:@selector(tableView:menuForEvent:)])
+ return [(id<AITableViewDelegate>)[self delegate] tableView:self menuForEvent:theEvent];
+
+ return method_invoke(self, class_getInstanceMethod([AITableView class], @selector(menuForEvent:)), theEvent);
+}
+
+ at end
diff -r 866b6f19c9f3 -r 460e4914297f Frameworks/AIUtilities Framework/Source/AIVariableHeightOutlineView.m
--- a/Frameworks/AIUtilities Framework/Source/AIVariableHeightOutlineView.m Mon Apr 27 22:20:35 2009 -0700
+++ b/Frameworks/AIUtilities Framework/Source/AIVariableHeightOutlineView.m Tue Apr 28 02:54:34 2009 -0700
@@ -202,7 +202,7 @@
/* Draw the alternating rows. If we draw alternating rows, the cell in the first column
* can optionally suppress drawing.
*/
- if ([self drawsAlternatingRows]) {
+ if ([self usesAlternatingRowBackgroundColors]) {
BOOL alternateColor = YES;
int numberOfRows = [self numberOfRows], rectNumber = 0;
NSTableColumn *tableColumn = [[self tableColumns] objectAtIndex:0];
diff -r 866b6f19c9f3 -r 460e4914297f Frameworks/Adium Framework/Resources/PresetManagement.nib/classes.nib
--- a/Frameworks/Adium Framework/Resources/PresetManagement.nib/classes.nib Mon Apr 27 22:20:35 2009 -0700
+++ b/Frameworks/Adium Framework/Resources/PresetManagement.nib/classes.nib Tue Apr 28 02:54:34 2009 -0700
@@ -1,99 +1,245 @@
-{
- IBClasses = (
- {
- CLASS = AIAlternatingRowTableView;
- LANGUAGE = ObjC;
- SUPERCLASS = NSTableView;
- },
- {
- CLASS = AIAutoScrollView;
- LANGUAGE = ObjC;
- SUPERCLASS = NSScrollView;
- },
- {
- CLASS = AILocalizationButton;
- LANGUAGE = ObjC;
- OUTLETS = {
- "view_anchorToLeftSide" = NSView;
- "view_anchorToRightSide" = NSView;
- "window_anchorOnLeftSide" = NSWindow;
- "window_anchorOnRightSide" = NSWindow;
- };
- SUPERCLASS = NSButton;
- },
- {
- CLASS = AILocalizationTextField;
- LANGUAGE = ObjC;
- OUTLETS = {
- "view_anchorToLeftSide" = NSView;
- "view_anchorToRightSide" = NSView;
- "window_anchorOnLeftSide" = NSWindow;
- "window_anchorOnRightSide" = NSWindow;
- };
- SUPERCLASS = NSTextField;
- },
- {
- ACTIONS = {
- sendContent = id;
- };
- CLASS = AISendingTextView;
- LANGUAGE = ObjC;
- OUTLETS = {
- target = id;
- };
- SUPERCLASS = NSTextView;
- },
- {
- CLASS = AISmartStepper;
- LANGUAGE = ObjC;
- SUPERCLASS = NSStepper;
- },
- {
- ACTIONS = {
- closeWindow = id;
- };
- CLASS = AIWindowController;
- LANGUAGE = ObjC;
- SUPERCLASS = NSWindowController;
- },
- {
- ACTIONS = {
- deletePreset = id;
- duplicatePreset = id;
- renamePreset = id;
- };
- CLASS = ESPresetManagementController;
- LANGUAGE = ObjC;
- OUTLETS = {
- "button_delete" = NSButton;
- "button_done" = NSButton;
- "button_duplicate" = NSButton;
- "button_rename" = NSButton;
- delegate = id;
- "label_editPresets" = NSTextField;
- "tableView_presets" = NSTableView;
- };
- SUPERCLASS = AIWindowController;
- },
- {
- CLASS = FirstResponder;
- LANGUAGE = ObjC;
- SUPERCLASS = NSObject;
- },
- {
- CLASS = NSButton;
- LANGUAGE = ObjC;
- SUPERCLASS = NSControl;
- },
- {
- CLASS = NSObject;
- LANGUAGE = ObjC;
- },
- {
- CLASS = NSTextField;
- LANGUAGE = ObjC;
- SUPERCLASS = NSControl;
- }
- );
- IBVersion = 1;
-}
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IBClasses</key>
+ <array>
+ <dict>
+ <key>CLASS</key>
+ <string>NSApplication</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSResponder</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>RBSplitView</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>OUTLETS</key>
+ <dict>
+ <key>delegate</key>
+ <string>id</string>
+ </dict>
+ <key>SUPERCLASS</key>
+ <string>RBSplitSubview</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSTextField</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSControl</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>RBSplitSubview</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSView</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSMenu</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSObject</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSWindowController</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSResponder</string>
+ </dict>
+ <dict>
+ <key>ACTIONS</key>
+ <dict>
+ <key>adiumPrint</key>
+ <string>id</string>
+ <key>didAdjustSubviews</key>
+ <string>RBSplitView</string>
+ <key>prefsWindowWillClose</key>
+ <string>SS_PrefsController</string>
+ <key>toggleFindPanel</key>
+ <string>id</string>
+ <key>willAdjustSubviews</key>
+ <string>RBSplitView</string>
+ </dict>
+ <key>CLASS</key>
+ <string>NSObject</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>AILocalizationButton</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>OUTLETS</key>
+ <dict>
+ <key>view_anchorToLeftSide</key>
+ <string>NSView</string>
+ <key>view_anchorToRightSide</key>
+ <string>NSView</string>
+ <key>window_anchorOnLeftSide</key>
+ <string>NSWindow</string>
+ <key>window_anchorOnRightSide</key>
+ <string>NSWindow</string>
+ </dict>
+ <key>SUPERCLASS</key>
+ <string>NSButton</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSWindow</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSResponder</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSScrollView</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSView</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSView</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSResponder</string>
+ </dict>
+ <dict>
+ <key>ACTIONS</key>
+ <dict>
+ <key>deletePreset</key>
+ <string>id</string>
+ <key>duplicatePreset</key>
+ <string>id</string>
+ <key>renamePreset</key>
+ <string>id</string>
+ </dict>
+ <key>CLASS</key>
+ <string>ESPresetManagementController</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>OUTLETS</key>
+ <dict>
+ <key>button_delete</key>
+ <string>AILocalizationButton</string>
+ <key>button_done</key>
+ <string>AILocalizationButton</string>
+ <key>button_duplicate</key>
+ <string>AILocalizationButton</string>
+ <key>button_rename</key>
+ <string>AILocalizationButton</string>
+ <key>delegate</key>
+ <string>id</string>
+ <key>label_editPresets</key>
+ <string>NSTextField</string>
+ <key>tableView_presets</key>
+ <string>NSTableView</string>
+ </dict>
+ <key>SUPERCLASS</key>
+ <string>AIWindowController</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>FirstResponder</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSObject</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSCell</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSObject</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSButton</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSControl</string>
+ </dict>
+ <dict>
+ <key>ACTIONS</key>
+ <dict>
+ <key>closeWindow</key>
+ <string>id</string>
+ </dict>
+ <key>CLASS</key>
+ <string>AIWindowController</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSWindowController</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>AILocalizationTextField</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>OUTLETS</key>
+ <dict>
+ <key>view_anchorToLeftSide</key>
+ <string>NSView</string>
+ <key>view_anchorToRightSide</key>
+ <string>NSView</string>
+ <key>window_anchorOnLeftSide</key>
+ <string>NSWindow</string>
+ <key>window_anchorOnRightSide</key>
+ <string>NSWindow</string>
+ </dict>
+ <key>SUPERCLASS</key>
+ <string>NSTextField</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSButtonCell</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSActionCell</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>SS_PrefsController</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>OUTLETS</key>
+ <dict>
+ <key>delegate</key>
+ <string>id</string>
+ </dict>
+ <key>SUPERCLASS</key>
+ <string>NSObject</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSTableView</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSControl</string>
+ </dict>
+ </array>
+ <key>IBVersion</key>
+ <string>1</string>
+</dict>
+</plist>
diff -r 866b6f19c9f3 -r 460e4914297f Frameworks/Adium Framework/Resources/PresetManagement.nib/info.nib
--- a/Frameworks/Adium Framework/Resources/PresetManagement.nib/info.nib Mon Apr 27 22:20:35 2009 -0700
+++ b/Frameworks/Adium Framework/Resources/PresetManagement.nib/info.nib Tue Apr 28 02:54:34 2009 -0700
@@ -2,17 +2,19 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
- <key>IBDocumentLocation</key>
- <string>81 124 356 240 0 0 1440 878 </string>
<key>IBFramework Version</key>
- <string>482.0</string>
+ <string>677</string>
+ <key>IBLastKnownRelativeProjectPath</key>
+ <string>../../../Adium.xcodeproj</string>
+ <key>IBOldestOS</key>
+ <integer>5</integer>
<key>IBOpenObjects</key>
<array>
- <integer>9</integer>
+ <integer>6</integer>
</array>
<key>IBSystem Version</key>
- <string>9B18</string>
- <key>IBUsesTextArchiving</key>
- <true/>
+ <string>9G55</string>
+ <key>targetFramework</key>
+ <string>IBCocoaFramework</string>
</dict>
</plist>
diff -r 866b6f19c9f3 -r 460e4914297f Frameworks/Adium Framework/Resources/PresetManagement.nib/keyedobjects.nib
Binary file Frameworks/Adium Framework/Resources/PresetManagement.nib/keyedobjects.nib has changed
diff -r 866b6f19c9f3 -r 460e4914297f Frameworks/Adium Framework/Source/AIAbstractListController.m
--- a/Frameworks/Adium Framework/Source/AIAbstractListController.m Mon Apr 27 22:20:35 2009 -0700
+++ b/Frameworks/Adium Framework/Source/AIAbstractListController.m Tue Apr 28 02:54:34 2009 -0700
@@ -483,7 +483,7 @@
}
//Background
- [contactListView setDrawsAlternatingRows:[[themeDict objectForKey:KEY_LIST_THEME_GRID_ENABLED] boolValue]];
+ [contactListView setUsesAlternatingRowBackgroundColors:[[themeDict objectForKey:KEY_LIST_THEME_GRID_ENABLED] boolValue]];
[contactListView setBackgroundFade:[[themeDict objectForKey:KEY_LIST_THEME_BACKGROUND_FADE] floatValue]];
[contactListView setBackgroundColor:[[themeDict objectForKey:KEY_LIST_THEME_BACKGROUND_COLOR] representedColor]];
[contactListView setAlternatingRowColor:[[themeDict objectForKey:KEY_LIST_THEME_GRID_COLOR] representedColor]];
@@ -906,7 +906,7 @@
{
AIListObject *hoveredObject = [self contactListItemAtScreenPoint:screenPoint];
- if ([hoveredObject isKindOfClass:[AIListContact class]]) {
+ if ([hoveredObject isKindOfClass:[AIListContact class]] || ([hoveredObject isKindOfClass:[AIListGroup class]] && ![(id<AIContainingObject>)hoveredObject isExpanded])) {
[adium.interfaceController showTooltipForListObject:hoveredObject
atScreenPoint:screenPoint
onWindow:contactListView.window];
diff -r 866b6f19c9f3 -r 460e4914297f Frameworks/Adium Framework/Source/AIListCell.m
--- a/Frameworks/Adium Framework/Source/AIListCell.m Mon Apr 27 22:20:35 2009 -0700
+++ b/Frameworks/Adium Framework/Source/AIListCell.m Tue Apr 28 02:54:34 2009 -0700
@@ -388,7 +388,7 @@
- (NSColor *)backgroundColor
{
//We could just call backgroundColorForRow: but it's best to avoid doing a rowForItem lookup if there is no grid
- if ([controlView drawsAlternatingRows]) {
+ if ([controlView usesAlternatingRowBackgroundColors]) {
return [controlView backgroundColorForRow:[controlView rowForItem:proxyObject]];
} else {
return [controlView backgroundColor];
diff -r 866b6f19c9f3 -r 460e4914297f Frameworks/Adium Framework/Source/ESContactAlertsViewController.m
--- a/Frameworks/Adium Framework/Source/ESContactAlertsViewController.m Mon Apr 27 22:20:35 2009 -0700
+++ b/Frameworks/Adium Framework/Source/ESContactAlertsViewController.m Tue Apr 28 02:54:34 2009 -0700
@@ -20,7 +20,6 @@
#import <Adium/CSNewContactAlertWindowController.h>
#import <Adium/AIContactAlertsControllerProtocol.h>
#import <Adium/ESContactAlertsViewController.h>
-#import <AIUtilities/AIAlternatingRowTableView.h>
#import <AIUtilities/AIAutoScrollView.h>
#import <AIUtilities/AIImageTextCell.h>
#import <AIUtilities/AIImageAdditions.h>
@@ -349,7 +348,7 @@
[[outlineView_summary tableColumnWithIdentifier:@"action"] setDataCell:verticallyCenteredTextCell];
[verticallyCenteredTextCell release];
- [outlineView_summary setDrawsAlternatingRows:YES];
+ [outlineView_summary setUsesAlternatingRowBackgroundColors:YES];
[outlineView_summary setIntercellSpacing:NSMakeSize(6.0,6.0)];
[outlineView_summary setIndentationPerLevel:0];
[outlineView_summary setTarget:self];
diff -r 866b6f19c9f3 -r 460e4914297f Frameworks/Adium Framework/Source/ESDebugAILog.h
--- a/Frameworks/Adium Framework/Source/ESDebugAILog.h Mon Apr 27 22:20:35 2009 -0700
+++ b/Frameworks/Adium Framework/Source/ESDebugAILog.h Tue Apr 28 02:54:34 2009 -0700
@@ -16,9 +16,9 @@
#ifdef DEBUG_BUILD
/* For a debug build, declare the AILog() function */
- void AILogWithPrefix (const char *signature, NSString *format, ...);
+ void AILogWithPrefix (const char *signature, NSString *format, ...) __attribute__((format(__NSString__, 2, 3)));
#define AILogWithSignature(fmt, args...) AILogWithPrefix(__PRETTY_FUNCTION__, fmt, ##args);
- void AILog (NSString *format, ...);
+ void AILog (NSString *format, ...) __attribute__((format(__NSString__, 1, 2)));
void AILogBacktrace();
#else
/* For a non-debug build, define it to be a comment so there is no overhead in using it liberally */
diff -r 866b6f19c9f3 -r 460e4914297f Plugins/Emoticons/AIEmoticonPackPreviewTableView.h
--- a/Plugins/Emoticons/AIEmoticonPackPreviewTableView.h Mon Apr 27 22:20:35 2009 -0700
+++ b/Plugins/Emoticons/AIEmoticonPackPreviewTableView.h Tue Apr 28 02:54:34 2009 -0700
@@ -14,9 +14,7 @@
* write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
-#import <AIUtilities/AIAlternatingRowTableView.h>
-
- at interface AIEmoticonPackPreviewTableView : AIAlternatingRowTableView {
+ at interface AIEmoticonPackPreviewTableView : NSTableView {
}
diff -r 866b6f19c9f3 -r 460e4914297f Plugins/Emoticons/AIEmoticonPackPreviewTableView.m
--- a/Plugins/Emoticons/AIEmoticonPackPreviewTableView.m Mon Apr 27 22:20:35 2009 -0700
+++ b/Plugins/Emoticons/AIEmoticonPackPreviewTableView.m Tue Apr 28 02:54:34 2009 -0700
@@ -24,7 +24,7 @@
* @class AIEmoticonPackPreviewTableView
* @brief Table view subclass for the emoticon pack preview
*
- * This AIAlternatingRowTableView subclass draws images for AIGenericViewCell-using columns. It only draws the image
+ * This NSTableView subclass draws images for AIGenericViewCell-using columns. It only draws the image
* for the first column so is not suitable for general use.
*/
@implementation AIEmoticonPackPreviewTableView
diff -r 866b6f19c9f3 -r 460e4914297f Plugins/Emoticons/AIEmoticonPreferences.h
--- a/Plugins/Emoticons/AIEmoticonPreferences.h Mon Apr 27 22:20:35 2009 -0700
+++ b/Plugins/Emoticons/AIEmoticonPreferences.h Tue Apr 28 02:54:34 2009 -0700
@@ -14,29 +14,28 @@
* write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
-#import <AIUtilities/AIAlternatingRowTableView.h>
#import <AIUtilities/AIFileManagerAdditions.h>
#import <AIUtilities/AIParagraphStyleAdditions.h>
#import <Adium/AIWindowController.h>
- at class AIEmoticonPack, AIAlternatingRowTableView;
+ at class AIEmoticonPack;
@interface AIEmoticonPreferences : AIWindowController
{
- IBOutlet AIAlternatingRowTableView *table_emoticonPacks;
- NSMutableArray *emoticonPackPreviewControllers;
+ IBOutlet NSTableView *table_emoticonPacks;
+ NSMutableArray *emoticonPackPreviewControllers;
- IBOutlet AIAlternatingRowTableView *table_emoticons;
- IBOutlet NSTextField *textField_packTitle;
- IBOutlet NSButton *button_OK;
+ IBOutlet NSTableView *table_emoticons;
+ IBOutlet NSTextField *textField_packTitle;
+ IBOutlet NSButton *button_OK;
- NSButtonCell *checkCell;
- AIEmoticonPack *selectedEmoticonPack;
- NSMutableDictionary *emoticonImageCache;
+ NSButtonCell *checkCell;
+ AIEmoticonPack *selectedEmoticonPack;
+ NSMutableDictionary *emoticonImageCache;
- NSArray *dragRows;
+ NSArray *dragRows;
- BOOL viewIsOpen;
+ BOOL viewIsOpen;
}
+ (void)showEmoticionCustomizationOnWindow:(NSWindow *)parentWindow;
diff -r 866b6f19c9f3 -r 460e4914297f Plugins/Emoticons/AIEmoticonPreferences.m
--- a/Plugins/Emoticons/AIEmoticonPreferences.m Mon Apr 27 22:20:35 2009 -0700
+++ b/Plugins/Emoticons/AIEmoticonPreferences.m Tue Apr 28 02:54:34 2009 -0700
@@ -20,7 +20,6 @@
#import "AIEmoticonPackPreviewView.h"
#import "AIEmoticonPreferences.h"
#import "AIEmoticonController.h"
-#import <AIUtilities/AIAlternatingRowTableView.h>
#import <AIUtilities/AITableViewAdditions.h>
#import <AIUtilities/AIGenericViewCell.h>
#import <AIUtilities/AIImageAdditions.h>
@@ -72,11 +71,10 @@
//- (void)viewDidLoad
- (void)windowDidLoad
{
- //Pack table
- [table_emoticonPacks registerForDraggedTypes:[NSArray arrayWithObject:EMOTICON_PACK_DRAG_TYPE]];
+ //Pack table
+ [table_emoticonPacks registerForDraggedTypes:[NSArray arrayWithObject:EMOTICON_PACK_DRAG_TYPE]];
//Configure the outline view
- [table_emoticonPacks setDrawsGradientSelection:YES];
[[table_emoticonPacks tableColumnWithIdentifier:@"Emoticons"] setDataCell:[[[AIGenericViewCell alloc] init] autorelease]];
[table_emoticonPacks selectRowIndexes:[NSIndexSet indexSetWithIndex:0] byExtendingSelection:NO];
[table_emoticonPacks setToolTip:EMOTICON_PACKS_TOOLTIP];
@@ -86,12 +84,12 @@
//Emoticons table
selectedEmoticonPack = nil;
- checkCell = [[NSButtonCell alloc] init];
- [checkCell setButtonType:NSSwitchButton];
- [checkCell setControlSize:NSSmallControlSize];
- [checkCell setTitle:@""];
- [checkCell setRefusesFirstResponder:YES];
- [[table_emoticons tableColumnWithIdentifier:@"Enabled"] setDataCell:checkCell];
+ checkCell = [[NSButtonCell alloc] init];
+ [checkCell setButtonType:NSSwitchButton];
+ [checkCell setControlSize:NSSmallControlSize];
+ [checkCell setTitle:@""];
+ [checkCell setRefusesFirstResponder:YES];
+ [[table_emoticons tableColumnWithIdentifier:@"Enabled"] setDataCell:checkCell];
[checkCell release];
NSImageCell *imageCell = [[NSImageCell alloc] initImageCell:nil];
diff -r 866b6f19c9f3 -r 460e4914297f Plugins/Emoticons/EmoticonPrefs.nib/classes.nib
More information about the commits
mailing list