adium 3749:d8b412b70168: Don't make the contact list stationary ...

commits at adium.im commits at adium.im
Wed Mar 16 01:31:21 UTC 2011


details:	http://hg.adium.im/adium/rev/d8b412b70168
revision:	3749:d8b412b70168
branch:		(none)
author:		Evan Schoenberg
date:		Tue Mar 15 20:25:54 2011 -0500

Don't make the contact list stationary unless it's supposed to show at the desktop level. Fixes #15060
Subject: adium 3750:439562602594: No need for stringWithFormat: here

details:	http://hg.adium.im/adium/rev/439562602594
revision:	3750:439562602594
branch:		(none)
author:		Evan Schoenberg
date:		Tue Mar 15 20:26:15 2011 -0500

No need for stringWithFormat: here
Subject: adium 3751:8b456cd87d07: project changes for 10.6+, on a 10.6+ branch for now, just to get them out of my tree :)

details:	http://hg.adium.im/adium/rev/8b456cd87d07
revision:	3751:8b456cd87d07
branch:		10.6+
author:		Evan Schoenberg
date:		Tue Mar 15 20:28:24 2011 -0500

project changes for 10.6+, on a 10.6+ branch for now, just to get them out of my tree :)
Subject: adium 3752:4b8d5b913c9b: Merging

details:	http://hg.adium.im/adium/rev/4b8d5b913c9b
revision:	3752:4b8d5b913c9b
branch:		(none)
author:		Evan Schoenberg
date:		Tue Mar 15 20:31:02 2011 -0500

Merging

diffs (truncated from 1211 to 1000 lines):

diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Adium.xcodeproj/project.pbxproj
--- a/Adium.xcodeproj/project.pbxproj	Fri Mar 11 21:13:17 2011 -0600
+++ b/Adium.xcodeproj/project.pbxproj	Tue Mar 15 20:31:02 2011 -0500
@@ -1831,7 +1831,7 @@
 		0C27C8640C75A23A002AA363 /* NSStringScriptingAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = NSStringScriptingAdditions.m; path = Source/NSStringScriptingAdditions.m; sourceTree = "<group>"; };
 		0C79A2D60C5E633F005AE6FA /* AIMoveCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AIMoveCommand.h; path = Source/AIMoveCommand.h; sourceTree = "<group>"; };
 		0C79A2D70C5E633F005AE6FA /* AIMoveCommand.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AIMoveCommand.m; path = Source/AIMoveCommand.m; sourceTree = "<group>"; };
-		0CAC6A130C0C657A0090AE95 /* Adium.sdef */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.sdef; name = Adium.sdef; path = Resources/Adium.sdef; sourceTree = "<group>"; };
+		0CAC6A130C0C657A0090AE95 /* Adium.sdef */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.xml; name = Adium.sdef; path = Resources/Adium.sdef; sourceTree = "<group>"; };
 		0CD3C3AA0C43C8CC003E637C /* NSWindowScriptingAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NSWindowScriptingAdditions.h; path = Source/NSWindowScriptingAdditions.h; sourceTree = "<group>"; };
 		0CD3C3AB0C43C8CC003E637C /* NSWindowScriptingAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = NSWindowScriptingAdditions.m; path = Source/NSWindowScriptingAdditions.m; sourceTree = "<group>"; };
 		0CD41C6E0C2776540082F83B /* AICreateCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AICreateCommand.h; path = Source/AICreateCommand.h; sourceTree = "<group>"; };
@@ -2910,8 +2910,6 @@
 		345F589B08198F15001F733C /* de */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = de; path = Resources/de.lproj/AppearancePrefs.nib; sourceTree = "<group>"; };
 		345F589C08198F15001F733C /* de */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = de; path = Resources/de.lproj/StatusSortConfiguration.nib; sourceTree = "<group>"; };
 		345F58C6081990FF001F733C /* LogViewer.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = LogViewer.png; path = Resources/LogViewer.png; sourceTree = "<group>"; };
-		345F58F108199727001F733C /* togglegroups_transparent.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = togglegroups_transparent.png; path = /Users/wixardy/dev/adium/realTrunk/Resources/togglegroups_transparent.png; sourceTree = "<absolute>"; };
-		345F58F208199727001F733C /* togglegroups.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = togglegroups.png; path = /Users/wixardy/dev/adium/realTrunk/Resources/togglegroups.png; sourceTree = "<absolute>"; };
 		345F590608199746001F733C /* emoticon32_transparent.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = emoticon32_transparent.png; path = Resources/emoticon32_transparent.png; sourceTree = "<group>"; };
 		345F5B97081AC4F1001F733C /* zh_TW */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = zh_TW; path = Resources/zh_TW.lproj/AccountProxy.nib; sourceTree = "<group>"; };
 		345F5B98081AC4F1001F733C /* zh_TW */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = zh_TW; path = Resources/zh_TW.lproj/AppearancePrefs.nib; sourceTree = "<group>"; };
@@ -3104,7 +3102,7 @@
 		346C9C200E70E1F8002314EE /* hu */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = hu; path = "Plugins/WebKit Message View/hu.lproj/WebKitPreferencesView.nib"; sourceTree = "<group>"; };
 		346CFDC4087B7836009711C8 /* AdiumIdleManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AdiumIdleManager.h; path = Source/AdiumIdleManager.h; sourceTree = "<group>"; };
 		346CFDC5087B7836009711C8 /* AdiumIdleManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AdiumIdleManager.m; path = Source/AdiumIdleManager.m; sourceTree = "<group>"; };
-		346F5CB308A418FB0055C610 /* CurrentTunes.scpt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.scpt; name = CurrentTunes.scpt; path = Resources/CurrentTunes.scpt; sourceTree = "<group>"; };
+		346F5CB308A418FB0055C610 /* CurrentTunes.scpt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = file; name = CurrentTunes.scpt; path = Resources/CurrentTunes.scpt; sourceTree = "<group>"; };
 		347065E406015DC5004F0D20 /* WebKit Defaults.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; name = "WebKit Defaults.plist"; path = "Plugins/WebKit Message View/WebKit Defaults.plist"; sourceTree = "<group>"; };
 		347374BC0AA9206B00AD18E3 /* en */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = en; path = Resources/en.lproj/ShortcutRecorder.strings; sourceTree = "<group>"; };
 		347374F00AA920F300AD18E3 /* ca */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = ca; path = Resources/ca.lproj/ShortcutRecorder.strings; sourceTree = "<group>"; };
@@ -3892,7 +3890,7 @@
 		34F4675B080F46AC007800AB /* ESBonjourAccountView.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = ESBonjourAccountView.nib; sourceTree = "<group>"; };
 		34F4675C080F46AC007800AB /* AWBonjourService.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = AWBonjourService.m; sourceTree = "<group>"; };
 		34F4675D080F46AC007800AB /* AWBonjourService.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AWBonjourService.h; sourceTree = "<group>"; };
-		34F46778080F49C5007800AB /* Safari.scpt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.scpt; name = Safari.scpt; path = Resources/Safari.scpt; sourceTree = "<group>"; };
+		34F46778080F49C5007800AB /* Safari.scpt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = file; name = Safari.scpt; path = Resources/Safari.scpt; sourceTree = "<group>"; };
 		34F46779080F49C5007800AB /* Safari.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Safari.png; path = Resources/Safari.png; sourceTree = "<group>"; };
 		34F46783080F7FFB007800AB /* ESSafariLinkToolbarItemPlugin.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = ESSafariLinkToolbarItemPlugin.m; path = Source/ESSafariLinkToolbarItemPlugin.m; sourceTree = "<group>"; };
 		34F46784080F7FFB007800AB /* ESSafariLinkToolbarItemPlugin.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ESSafariLinkToolbarItemPlugin.h; path = Source/ESSafariLinkToolbarItemPlugin.h; sourceTree = "<group>"; };
@@ -4553,12 +4551,12 @@
 		6360B2590BF2EB93004CD99B /* AIWebKitDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AIWebKitDelegate.m; path = "Plugins/WebKit Message View/AIWebKitDelegate.m"; sourceTree = "<group>"; };
 		636C6E5D0ED56D0100E0E528 /* libcrypto.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libcrypto.dylib; path = /usr/lib/libcrypto.dylib; sourceTree = "<absolute>"; };
 		636D8C970E4E95A500E5F558 /* AIAddressBookController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AIAddressBookController.m; path = "Frameworks/Adium Framework/Source/AIAddressBookController.m"; sourceTree = "<group>"; };
-		636D93660E4E9FD300E5F558 /* AdiumAddressBookAction_Yahoo.scpt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.scpt; name = AdiumAddressBookAction_Yahoo.scpt; path = "Frameworks/Adium Framework/Resources/AdiumAddressBookAction_Yahoo.scpt"; sourceTree = "<group>"; };
-		636D93670E4E9FD300E5F558 /* AdiumAddressBookAction_SMS.scpt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.scpt; name = AdiumAddressBookAction_SMS.scpt; path = "Frameworks/Adium Framework/Resources/AdiumAddressBookAction_SMS.scpt"; sourceTree = "<group>"; };
-		636D93680E4E9FD300E5F558 /* AdiumAddressBookAction_MSN.scpt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.scpt; name = AdiumAddressBookAction_MSN.scpt; path = "Frameworks/Adium Framework/Resources/AdiumAddressBookAction_MSN.scpt"; sourceTree = "<group>"; };
-		636D93690E4E9FD300E5F558 /* AdiumAddressBookAction_Jabber.scpt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.scpt; name = AdiumAddressBookAction_Jabber.scpt; path = "Frameworks/Adium Framework/Resources/AdiumAddressBookAction_Jabber.scpt"; sourceTree = "<group>"; };
-		636D936A0E4E9FD300E5F558 /* AdiumAddressBookAction_ICQ.scpt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.scpt; name = AdiumAddressBookAction_ICQ.scpt; path = "Frameworks/Adium Framework/Resources/AdiumAddressBookAction_ICQ.scpt"; sourceTree = "<group>"; };
-		636D936B0E4E9FD300E5F558 /* AdiumAddressBookAction_AIM.scpt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.scpt; name = AdiumAddressBookAction_AIM.scpt; path = "Frameworks/Adium Framework/Resources/AdiumAddressBookAction_AIM.scpt"; sourceTree = "<group>"; };
+		636D93660E4E9FD300E5F558 /* AdiumAddressBookAction_Yahoo.scpt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file; name = AdiumAddressBookAction_Yahoo.scpt; path = "Frameworks/Adium Framework/Resources/AdiumAddressBookAction_Yahoo.scpt"; sourceTree = "<group>"; };
+		636D93670E4E9FD300E5F558 /* AdiumAddressBookAction_SMS.scpt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file; name = AdiumAddressBookAction_SMS.scpt; path = "Frameworks/Adium Framework/Resources/AdiumAddressBookAction_SMS.scpt"; sourceTree = "<group>"; };
+		636D93680E4E9FD300E5F558 /* AdiumAddressBookAction_MSN.scpt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file; name = AdiumAddressBookAction_MSN.scpt; path = "Frameworks/Adium Framework/Resources/AdiumAddressBookAction_MSN.scpt"; sourceTree = "<group>"; };
+		636D93690E4E9FD300E5F558 /* AdiumAddressBookAction_Jabber.scpt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file; name = AdiumAddressBookAction_Jabber.scpt; path = "Frameworks/Adium Framework/Resources/AdiumAddressBookAction_Jabber.scpt"; sourceTree = "<group>"; };
+		636D936A0E4E9FD300E5F558 /* AdiumAddressBookAction_ICQ.scpt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file; name = AdiumAddressBookAction_ICQ.scpt; path = "Frameworks/Adium Framework/Resources/AdiumAddressBookAction_ICQ.scpt"; sourceTree = "<group>"; };
+		636D936B0E4E9FD300E5F558 /* AdiumAddressBookAction_AIM.scpt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file; name = AdiumAddressBookAction_AIM.scpt; path = "Frameworks/Adium Framework/Resources/AdiumAddressBookAction_AIM.scpt"; sourceTree = "<group>"; };
 		638392F609D4D67A0067B9B7 /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Sparkle.framework; path = Frameworks/Sparkle.framework; sourceTree = "<group>"; };
 		638BC1FA0FC932E000CE7600 /* AIObjectDebug.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AIObjectDebug.h; path = Source/AIObjectDebug.h; sourceTree = "<group>"; };
 		638BC1FB0FC932E000CE7600 /* AIObjectDebug.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AIObjectDebug.m; path = Source/AIObjectDebug.m; sourceTree = "<group>"; };
@@ -6627,8 +6625,6 @@
 				34D8326307CBD598006466F2 /* sendfile.png */,
 				4BB2EB200D88D76100CA7A7D /* timestamp32.png */,
 				4BB2EB210D88D76100CA7A7D /* timestamp32_transparent.png */,
-				345F58F208199727001F733C /* togglegroups.png */,
-				345F58F108199727001F733C /* togglegroups_transparent.png */,
 				34D8327607CBD5B3006466F2 /* ToolbarPrefs.plist */,
 			);
 			name = Resources;
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/AIUtilities Framework/Source/AIDividedAlternatingRowOutlineView.h
--- a/Frameworks/AIUtilities Framework/Source/AIDividedAlternatingRowOutlineView.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/AIUtilities Framework/Source/AIDividedAlternatingRowOutlineView.h	Tue Mar 15 20:31:02 2011 -0500
@@ -27,6 +27,16 @@
 } AIDividerPosition;
 
 /*!
+ * @protocol AIDividedAlternatingRowOutlineView_Delegate
+ * @brief Informal protocol for implementing a message to verify if an item is supposed to have a divider
+ * 
+ */
+ at protocol AIDividedAlternatingRowOutlineViewDelegate
+ at optional
+- (AIDividerPosition)outlineView:(NSOutlineView*)outlineView dividerPositionForItem:(id)item;
+ at end
+
+/*!
  * @class AIDividedAlternatingRowOutlineView
  * @brief An AIAlternatingRowOutlineView subclass supporting a divider below specified elements
  */
@@ -34,12 +44,3 @@
 
 }
 @end
-
-/*!
- * @protocol AIDividedAlternatingRowOutlineView_Delegate
- * @brief Informal protocol for implementing a message to verify if an item is supposed to have a divider
- * 
- */
- at interface NSObject (AIDividedAlternatingRowOutlineView_Delegate)
-- (AIDividerPosition)outlineView:(NSOutlineView*)outlineView dividerPositionForItem:(id)item;
- at end
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/AIUtilities Framework/Source/AIDividedAlternatingRowOutlineView.m
--- a/Frameworks/AIUtilities Framework/Source/AIDividedAlternatingRowOutlineView.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/AIUtilities Framework/Source/AIDividedAlternatingRowOutlineView.m	Tue Mar 15 20:31:02 2011 -0500
@@ -30,7 +30,7 @@
 	//Does the dataSource know what we want to know?
 	if ([[self dataSource] respondsToSelector:@selector(outlineView:dividerPositionForItem:)]) {
 		//Position of the divider
-		dividerPosition = [[self dataSource] outlineView:self dividerPositionForItem:[self itemAtRow:rowIndex]];
+		dividerPosition = [(id<AIDividedAlternatingRowOutlineViewDelegate>)[self dataSource] outlineView:self dividerPositionForItem:[self itemAtRow:rowIndex]];
 	} else {
 		dividerPosition = AIDividerPositionNone;
 	}
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/AIUtilities Framework/Source/AILeopardCompatibility.h
--- a/Frameworks/AIUtilities Framework/Source/AILeopardCompatibility.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/AIUtilities Framework/Source/AILeopardCompatibility.h	Tue Mar 15 20:31:02 2011 -0500
@@ -60,6 +60,8 @@
 - (BOOL)popUpMenuPositioningItem:(NSMenuItem *)item atLocation:(NSPoint)location inView:(NSView *)view;
 @end
 
+ at protocol NSDraggingDestination
+ at end
 @protocol NSToolbarDelegate
 @end
 @protocol NSSplitViewDelegate
@@ -88,6 +90,8 @@
 @end
 @protocol NSTableViewDataSource
 @end
+ at protocol NSTabViewDelegate
+ at end
 @protocol NSTextFieldDelegate
 @end
 @protocol NSAnimationDelegate
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/AIUtilities Framework/Source/AIMultiCellOutlineView.h
--- a/Frameworks/AIUtilities Framework/Source/AIMultiCellOutlineView.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/AIUtilities Framework/Source/AIMultiCellOutlineView.h	Tue Mar 15 20:31:02 2011 -0500
@@ -64,7 +64,7 @@
 
 @end
 
- at interface NSObject (AIMultiCellOutlineViewDelegate)
+ at protocol AIMultiCellOutlineViewDelegate
 /*
  * @brief Is this item a group?
  *
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/AIUtilities Framework/Source/AIMultiCellOutlineView.m
--- a/Frameworks/AIUtilities Framework/Source/AIMultiCellOutlineView.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/AIUtilities Framework/Source/AIMultiCellOutlineView.m	Tue Mar 15 20:31:02 2011 -0500
@@ -82,7 +82,7 @@
 }
 - (id)cellForTableColumn:(NSTableColumn *)tableColumn item:(id)item
 {
-	return ([[self delegate] outlineView:self isGroup:item] ? groupCell : contentCell);
+	return ([(id<AIMultiCellOutlineViewDelegate>)[self delegate] outlineView:self isGroup:item] ? groupCell : contentCell);
 }
 
 /*!
@@ -108,7 +108,7 @@
 		/* XXX - This is kind of a hack.  We need to check < WidthOfDisclosureTriangle, and are using the fact that 
 		 *       the disclosure width is about the same as the height of the row to fudge it. -ai 
 		 */
-		if ([[self delegate] outlineView:self isGroup:item]) {
+		if ([(id<AIMultiCellOutlineViewDelegate>)[self delegate] outlineView:self isGroup:item]) {
 			/* For a group, perform the expand/collapse */
 			if ([self isItemExpanded:item]) { 
 				[self collapseItem:item]; 
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/AIUtilities Framework/Source/AITableViewAdditions.m
--- a/Frameworks/AIUtilities Framework/Source/AITableViewAdditions.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/AIUtilities Framework/Source/AITableViewAdditions.m	Tue Mar 15 20:31:02 2011 -0500
@@ -101,7 +101,7 @@
 	//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
+			[(id <AITableViewDelegate>)[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);
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/AIUtilities Framework/Source/AIToolbarTabView.h
--- a/Frameworks/AIUtilities Framework/Source/AIToolbarTabView.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/AIUtilities Framework/Source/AIToolbarTabView.h	Tue Mar 15 20:31:02 2011 -0500
@@ -15,32 +15,16 @@
  */
 
 #import <AIUtilities/AILeopardCompatibility.h>
-/*!
- * @class AIToolbarTabView
- * @brief <tt>NSTabView</tt> subclass for creating preference-type windows
- *
- * <p>This is a special <tt>NSTabView</tt> subclass which is useful when creating preference-type windows.  The tabview will automatically create a window toolbar and add an toolbar item for each tab it contains.  The tabview delegate will be asked for the toolbar images.</p>
- * <p>This class also contains methods for auto-sizing the parent window based on the selected tab.  The delegate is asked for the window size, and this tabview takes care of the animation.</p>
- * @see <tt><a href="category_n_s_object(_a_i_toolbar_tab_view_delegate).html" target="_top">NSObject(AIToolbarTabViewDelegate)</a></tt>
-*/
- at interface AIToolbarTabView : NSTabView <NSToolbarDelegate> {
-    NSMutableDictionary *toolbarItems;
-	int					oldHeight;
-	
-	IBOutlet NSTabViewItem			*tabViewItem_loading;
-	IBOutlet NSProgressIndicator	*progressIndicator_loading;
-}
-
- at end
 
 
 /*!
- * @category NSObject(AIToolbarTabViewDelegate)
+ * @protocol AIToolbarTabViewDelegate
  * @brief Methods which may optionally be implemented by an <tt>AIToolbarTabView</tt>'s delegate
  *
  * These methods allow the delegate greater control over the tab view.
  */
- at interface NSObject (AIToolbarTabViewDelegate)
+ at protocol AIToolbarTabViewDelegate
+ at optional
 /*!
  * @brief Allows automatic creation of toolbar items for each <tt>NSTabViewItem</tt> the <tt>AIToolbarTabView</tt> contains.
  *
@@ -83,3 +67,21 @@
 
 @end
 
+
+/*!
+ * @class AIToolbarTabView
+ * @brief <tt>NSTabView</tt> subclass for creating preference-type windows
+ *
+ * <p>This is a special <tt>NSTabView</tt> subclass which is useful when creating preference-type windows.  The tabview will automatically create a window toolbar and add an toolbar item for each tab it contains.  The tabview delegate will be asked for the toolbar images.</p>
+ * <p>This class also contains methods for auto-sizing the parent window based on the selected tab.  The delegate is asked for the window size, and this tabview takes care of the animation.</p>
+ * @see <tt><a href="category_n_s_object(_a_i_toolbar_tab_view_delegate).html" target="_top">NSObject(AIToolbarTabViewDelegate)</a></tt>
+*/
+ at interface AIToolbarTabView : NSTabView <NSToolbarDelegate, AIToolbarTabViewDelegate> {
+    NSMutableDictionary *toolbarItems;
+	int					oldHeight;
+	
+	IBOutlet NSTabViewItem			*tabViewItem_loading;
+	IBOutlet NSProgressIndicator	*progressIndicator_loading;
+}
+
+ at end
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/AIUtilities Framework/Source/AIToolbarTabView.m
--- a/Frameworks/AIUtilities Framework/Source/AIToolbarTabView.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/AIUtilities Framework/Source/AIToolbarTabView.m	Tue Mar 15 20:31:02 2011 -0500
@@ -74,7 +74,7 @@
 			NSString		*label = nil;
 			
 			if ([[self delegate] respondsToSelector:@selector(tabView:labelForTabViewItem:)]) {
-				label = [[self delegate] tabView:self labelForTabViewItem:tabViewItem];
+				label = [(id<AIToolbarTabViewDelegate>)[self delegate] tabView:self labelForTabViewItem:tabViewItem];
 			}
 			
 			if (!label) label = [tabViewItem label];
@@ -89,7 +89,7 @@
 													   toolTip:label
 														target:self
 											   settingSelector:@selector(setImage:)
-												   itemContent:[[self delegate] tabView:self
+												   itemContent:[(id<AIToolbarTabViewDelegate>)[self delegate] tabView:self
 																	imageForTabViewItem:tabViewItem]
 														action:@selector(selectCategory:)
 														  menu:NULL];
@@ -157,7 +157,7 @@
 			[super selectTabViewItem:tabViewItem_loading];
 			
 			if (![[self delegate] respondsToSelector:@selector(immediatelyShowLoadingIndicatorForTabView:willSelectTabViewItem:)] ||
-			   [[self delegate] immediatelyShowLoadingIndicatorForTabView:self willSelectTabViewItem:tabViewItem]) {
+			   [(id<AIToolbarTabViewDelegate>)[self delegate] immediatelyShowLoadingIndicatorForTabView:self willSelectTabViewItem:tabViewItem]) {
 				[[self window] display];
 			}
 			
@@ -180,7 +180,7 @@
 	
 	//Resize the window
 	if ([[self delegate] respondsToSelector:@selector(tabView:heightForTabViewItem:)]) {
-		int		height = [[self delegate] tabView:self heightForTabViewItem:tabViewItem];
+		int		height = [(id<AIToolbarTabViewDelegate>)[self delegate] tabView:self heightForTabViewItem:tabViewItem];
 		BOOL	isVisible = [[self window] isVisible];
 		NSRect 	frame = [[self window] frame];
 		
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/AIUtilities Framework/Source/AITooltipUtilities.m
--- a/Frameworks/AIUtilities Framework/Source/AITooltipUtilities.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/AIUtilities Framework/Source/AITooltipUtilities.m	Tue Mar 15 20:31:02 2011 -0500
@@ -15,6 +15,7 @@
  */
 
 #import "AITooltipUtilities.h"
+#import "AILeopardCompatibility.h"
 #import <libkern/OSAtomic.h>
 
 #define TOOLTIP_MAX_WIDTH			300
@@ -246,7 +247,7 @@
 		tooltipWindow, NSViewAnimationTargetKey,
 		NSViewAnimationFadeOutEffect, NSViewAnimationEffectKey,
 	nil]]];
-	[fadeOutAnimation setDelegate:self];
+	[fadeOutAnimation setDelegate:(id<NSAnimationDelegate>)self];
 	[fadeOutAnimation setDuration:0.25f];
 	[fadeOutAnimation setAnimationCurve:NSAnimationLinear];
 	[fadeOutAnimation startAnimation];
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/AIUtilities Framework/Source/AIVariableHeightFlexibleColumnsOutlineView.h
--- a/Frameworks/AIUtilities Framework/Source/AIVariableHeightFlexibleColumnsOutlineView.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/AIUtilities Framework/Source/AIVariableHeightFlexibleColumnsOutlineView.h	Tue Mar 15 20:31:02 2011 -0500
@@ -22,6 +22,6 @@
 
 @end
 
- at interface NSObject (AIVariableHeightFlexibleColumnsOutlineViewDelegate)
+ at protocol AIVariableHeightFlexibleColumnsOutlineViewDelegate
 - (BOOL)outlineView:(NSOutlineView *)inOutlineView extendToEdgeColumn:(NSInteger)column ofRow:(NSInteger)row;
 @end
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/AIUtilities Framework/Source/AIVariableHeightFlexibleColumnsOutlineView.m
--- a/Frameworks/AIUtilities Framework/Source/AIVariableHeightFlexibleColumnsOutlineView.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/AIUtilities Framework/Source/AIVariableHeightFlexibleColumnsOutlineView.m	Tue Mar 15 20:31:02 2011 -0500
@@ -34,7 +34,7 @@
 {
 	NSRect frameOfCell = [super frameOfCellAtColumn:column row:row];
 	if ([[self delegate] respondsToSelector:@selector(outlineView:extendToEdgeColumn:ofRow:)] &&
-	   [[self delegate] outlineView:self extendToEdgeColumn:column ofRow:row]) {
+	   [(id<AIVariableHeightFlexibleColumnsOutlineViewDelegate>)[self delegate] outlineView:self extendToEdgeColumn:column ofRow:row]) {
 		frameOfCell.size.width = [self frame].size.width - frameOfCell.origin.x - AIround(([self intercellSpacing].width)/2);
 	}
 	
@@ -129,7 +129,7 @@
 	
 			//Stop drawing if this column extends to the edge
 			if (delegateRespondsToExtendToEdgeColumn &&
-			   [[self delegate] outlineView:self extendToEdgeColumn:tableColumnIndex ofRow:row]) {
+			   [(id<AIVariableHeightFlexibleColumnsOutlineViewDelegate>)[self delegate] outlineView:self extendToEdgeColumn:tableColumnIndex ofRow:row]) {
 				break;
 			}
 		}
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/Adium Framework/Source/AIAbstractListController.m
--- a/Frameworks/Adium Framework/Source/AIAbstractListController.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/Adium Framework/Source/AIAbstractListController.m	Tue Mar 15 20:31:02 2011 -0500
@@ -614,7 +614,7 @@
 	AIProxyListObject *proxyListObject;
 
 	if (item) {
-		AIListObject<AIContainingObject> *listObject = item.listObject;
+		id<AIContainingObject>listObject = item.listObject;
 		proxyListObject = [AIProxyListObject proxyListObjectForListObject:[listObject visibleObjectAtIndex:idx]
 															 inListObject:listObject];
 
@@ -633,7 +633,7 @@
 	NSInteger children;
 
 	if (item) {
-		AIListObject<AIContainingObject> *listObject = item.listObject;
+		id<AIContainingObject>listObject = item.listObject;
 
 		children = listObject.visibleCount;
 	} else if (hideRoot)
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/Adium Framework/Source/AIAuthorizationRequestsWindowController.h
--- a/Frameworks/Adium Framework/Source/AIAuthorizationRequestsWindowController.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/Adium Framework/Source/AIAuthorizationRequestsWindowController.h	Tue Mar 15 20:31:02 2011 -0500
@@ -28,7 +28,7 @@
 
 @class AIAccount;
 
- at interface AIAuthorizationRequestsWindowController : AIWindowController <NSToolbarDelegate> {
+ at interface AIAuthorizationRequestsWindowController : AIWindowController <NSToolbarDelegate,NSTableViewDelegate,NSTableViewDataSource> {
 	IBOutlet		NSTableView		*tableView;
 	
 	NSMutableArray					*requests;
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/Adium Framework/Source/AIChat.m
--- a/Frameworks/Adium Framework/Source/AIChat.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/Adium Framework/Source/AIChat.m	Tue Mar 15 20:31:02 2011 -0500
@@ -446,7 +446,7 @@
 - (AIListContact *)listObject
 {
 	if (self.countOfContainedObjects == 1 && !self.isGroupChat) {
-		return [self visibleObjectAtIndex:0];
+		return (AIListContact *)[self visibleObjectAtIndex:0];
 	}
 
 	return nil;
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/Adium Framework/Source/AIContactControllerProtocol.h
--- a/Frameworks/Adium Framework/Source/AIContactControllerProtocol.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/Adium Framework/Source/AIContactControllerProtocol.h	Tue Mar 15 20:31:02 2011 -0500
@@ -98,7 +98,7 @@
  * @brief Returns a flat array of all contacts
  */
 @property (readonly, nonatomic) NSArray *allContacts;
-- (NSArray *)allContactsInObject:(AIListObject<AIContainingObject> *)inGroup onAccount:(AIAccount *)inAccount;
+- (NSArray *)allContactsInObject:(id<AIContainingObject>)inGroup onAccount:(AIAccount *)inAccount;
 @property (readonly, nonatomic) NSArray *allBookmarks;
 @property (readonly, nonatomic) NSArray *allMetaContacts;
 - (NSMenu *)groupMenuWithTarget:(id)target;
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/Adium Framework/Source/AIContactHidingController.m
--- a/Frameworks/Adium Framework/Source/AIContactHidingController.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/Adium Framework/Source/AIContactHidingController.m	Tue Mar 15 20:31:02 2011 -0500
@@ -205,7 +205,7 @@
 	// If the given contact is a meta contact, check all of its contained objects.
 	if ([listObject conformsToProtocol:@protocol(AIContainingObject)]) {
 		
-		for (AIListContact *containedContact in (AIListContact<AIContainingObject> *)listObject) {
+		for (AIListContact *containedContact in (id<AIContainingObject>)listObject) {
 			if ([filterPredicate evaluateWithObject:containedContact])
 				return YES;
 		}
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/Adium Framework/Source/AIContactMenu.h
--- a/Frameworks/Adium Framework/Source/AIContactMenu.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/Adium Framework/Source/AIContactMenu.h	Tue Mar 15 20:31:02 2011 -0500
@@ -14,6 +14,7 @@
  * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  */
 
+#import <AIUtilities/AILeopardCompatibility.h>
 #import <Adium/AIAbstractListObjectMenu.h>
 #import <Adium/AIContactObserverManager.h>
 
@@ -21,7 +22,7 @@
 
 @protocol AIContactMenuDelegate;
 
- at interface AIContactMenu : AIAbstractListObjectMenu <AIListObjectObserver> {
+ at interface AIContactMenu : AIAbstractListObjectMenu <AIListObjectObserver,NSMenuDelegate> {
 	AIListObject			*containingObject;
 	
 	id<AIContactMenuDelegate>						delegate;
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/Adium Framework/Source/AIContactMenu.m
--- a/Frameworks/Adium Framework/Source/AIContactMenu.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/Adium Framework/Source/AIContactMenu.m	Tue Mar 15 20:31:02 2011 -0500
@@ -216,7 +216,7 @@
 	} else {
 		// We can assume these are already sorted
 		listObjects = [self listObjectsForMenuFromArrayOfListObjects:([containingObject conformsToProtocol:@protocol(AIContainingObject)] ?
-																	  [(AIListObject<AIContainingObject> *)containingObject uniqueContainedObjects] :
+																	  [(id<AIContainingObject>)containingObject uniqueContainedObjects] :
 																	  [NSArray arrayWithObject:containingObject])];
 	}
 	
@@ -277,7 +277,7 @@
 	for (AIListObject *listObject in listObjects) {
 		// Display groups inline
 		if ([listObject isKindOfClass:[AIListGroup class]]) {
-			NSArray			*containedListObjects = [self listObjectsForMenuFromArrayOfListObjects:[(AIListObject<AIContainingObject> *)listObject uniqueContainedObjects]];
+			NSArray			*containedListObjects = [self listObjectsForMenuFromArrayOfListObjects:[(id<AIContainingObject>)listObject uniqueContainedObjects]];
 			
 			// If there's any contained list objects, add ourself as a group and add the contained objects.
 			if ([containedListObjects count] > 0) {
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/Adium Framework/Source/AIContactObserverManager.m
--- a/Frameworks/Adium Framework/Source/AIContactObserverManager.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/Adium Framework/Source/AIContactObserverManager.m	Tue Mar 15 20:31:02 2011 -0500
@@ -189,7 +189,7 @@
 	//If we're handed something that can contain other contacts, update the status of the contacts contained within it
 	if ([inContact conformsToProtocol:@protocol(AIContainingObject)]) {
 		
-		for (AIListContact *contact in (AIListObject <AIContainingObject> *)inContact) {
+		for (AIListContact *contact in (id <AIContainingObject>)inContact) {
 			[self updateListContactStatus:contact];
 		}
 		
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/Adium Framework/Source/AIListContact.h
--- a/Frameworks/Adium Framework/Source/AIListContact.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/Adium Framework/Source/AIListContact.h	Tue Mar 15 20:31:02 2011 -0500
@@ -49,7 +49,7 @@
 
 - (id)initWithUID:(NSString *)inUID account:(AIAccount *)inAccount service:(AIService *)inService;
 - (id)initWithUID:(NSString *)inUID service:(AIService *)inService;
- at property (readonly, nonatomic) AIListObject<AIContainingObject> *containingObject __attribute__((deprecated));
+ at property (readonly, nonatomic) id<AIContainingObject>containingObject __attribute__((deprecated));
 @property (readwrite, copy, nonatomic) NSSet *remoteGroupNames;
 @property (readonly, nonatomic) NSUInteger countOfRemoteGroupNames;
 @property (readonly, nonatomic) NSSet *remoteGroups;
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/Adium Framework/Source/AIListContactMockieCell.m
--- a/Frameworks/Adium Framework/Source/AIListContactMockieCell.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/Adium Framework/Source/AIListContactMockieCell.m	Tue Mar 15 20:31:02 2011 -0500
@@ -68,7 +68,7 @@
 			bezierPath = [NSBezierPath bezierPathWithRoundedRect:rect radius:MOCKIE_RADIUS];
 		}
 
-	} else if (row >= (numberOfRows-1) || [[controlView delegate] outlineView:controlView isGroup:[controlView itemAtRow:row+1]]) {
+	} else if (row >= (numberOfRows-1) || [(id<AIMultiCellOutlineViewDelegate>)[controlView delegate] outlineView:controlView isGroup:[controlView itemAtRow:row+1]]) {
 		//Draw the bottom corners rounded if this is the last cell in a group
 		bezierPath = [NSBezierPath bezierPathWithRoundedBottomCorners:rect radius:MOCKIE_RADIUS];
 		
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/Adium Framework/Source/AIListObject.m
--- a/Frameworks/Adium Framework/Source/AIListObject.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/Adium Framework/Source/AIListObject.m	Tue Mar 15 20:31:02 2011 -0500
@@ -236,7 +236,7 @@
 
 - (void) moveContainedObject:(AIListObject *)listObject toIndex:(NSInteger)idx
 {
-	AIListObject<AIContainingObject> *container = (AIListObject<AIContainingObject> *)self;
+	id<AIContainingObject>container = (id<AIContainingObject>)self;
 	
 	// We can't enforce this, since we're asked to set it for objects we don't yet *officially* contain.
 	//NSAssert([container.containedObjects containsObject:listObject], @"Asked to set an index for an object which doesn't exist.");
@@ -759,7 +759,7 @@
 
 	if (!orderIndexForObject) {
 		orderIndexForObject = self.largestOrder + 1;
-		[(AIListObject<AIContainingObject> *)self listObject:listObject didSetOrderIndex: orderIndexForObject];
+		[(id<AIContainingObject>)self listObject:listObject didSetOrderIndex: orderIndexForObject];
 	}
 	
 	return orderIndexForObject;
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/Adium Framework/Source/AIListOutlineView.m
--- a/Frameworks/Adium Framework/Source/AIListOutlineView.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/Adium Framework/Source/AIListOutlineView.m	Tue Mar 15 20:31:02 2011 -0500
@@ -88,8 +88,10 @@
 	
 	[backgroundImage release];
 	[backgroundColor release];
+	[_backgroundColorWithOpacity release];
 	[highlightColor release];
 	[rowColor release];
+	[_rowColorWithOpacity release];
 	 
 	[self unregisterDraggedTypes];
 	[[NSNotificationCenter defaultCenter] removeObserver:self];
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/Adium Framework/Source/JVFontPreviewField.h
--- a/Frameworks/Adium Framework/Source/JVFontPreviewField.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/Adium Framework/Source/JVFontPreviewField.h	Tue Mar 15 20:31:02 2011 -0500
@@ -19,6 +19,7 @@
 
 @class NSFont;
 
+
 @interface JVFontPreviewField : NSTextField {
 	NSFont *_actualFont;
 	BOOL _showPointSize;
@@ -32,7 +33,7 @@
 - (void)setShowFontFace:(BOOL)show;
 @end
 
- at interface NSObject (JVFontPreviewFieldDelegate)
+ at protocol JVFontPreviewFieldDelegate
 - (BOOL)fontPreviewField:(JVFontPreviewField *)field shouldChangeToFont:(NSFont *)font;
 - (void)fontPreviewField:(JVFontPreviewField *)field didChangeToFont:(NSFont *)font;
 @end
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/Adium Framework/Source/JVFontPreviewField.m
--- a/Frameworks/Adium Framework/Source/JVFontPreviewField.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/Adium Framework/Source/JVFontPreviewField.m	Tue Mar 15 20:31:02 2011 -0500
@@ -54,16 +54,17 @@
 
 - (void) changeFont:(id) sender {
 	NSFont *font = [sender convertFont:[self font]];
+	NSObject <NSObject,JVFontPreviewFieldDelegate> *__delegate = (id <NSObject,JVFontPreviewFieldDelegate>)self.delegate;
 
 	if (!font) return;
 
-	if ([self.delegate respondsToSelector:@selector(fontPreviewField:shouldChangeToFont:)])
-		if (![self.delegate fontPreviewField:self shouldChangeToFont:font]) return;
+	if ([__delegate respondsToSelector:@selector(fontPreviewField:shouldChangeToFont:)])
+		if (![__delegate fontPreviewField:self shouldChangeToFont:font]) return;
 
 	[self setFont:font];
 
-	if ([self.delegate respondsToSelector:@selector(fontPreviewField:didChangeToFont:)])
-		[self.delegate fontPreviewField:self didChangeToFont:font];
+	if ([__delegate respondsToSelector:@selector(fontPreviewField:didChangeToFont:)])
+		[__delegate fontPreviewField:self didChangeToFont:font];
 }
 
 - (NSUInteger) validModesForFontPanel:(NSFontPanel *) fontPanel
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/AutoHyperlinks Framework/Source/AHMarkedHyperlink.m
--- a/Frameworks/AutoHyperlinks Framework/Source/AHMarkedHyperlink.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/AutoHyperlinks Framework/Source/AHMarkedHyperlink.m	Tue Mar 15 20:31:02 2011 -0500
@@ -104,19 +104,6 @@
 	if(preString) [preString release];
 }
 
-- (void)setValidationStatus:(AH_URI_VERIFICATION_STATUS)status
-{
-	urlStatus = status;
-}
-
-- (void)setParentString:(NSString *)pInString
-{
-	if(pString != pInString){
-		[pString release];
-		pString = [pInString retain];
-	}
-}
-
 #pragma mark NSCopying
 
 - (id)copyWithZone:(NSZone *)zone
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Frameworks/AutoHyperlinks Framework/xcconfigs/AutoHyperlinks.xcconfig
--- a/Frameworks/AutoHyperlinks Framework/xcconfigs/AutoHyperlinks.xcconfig	Fri Mar 11 21:13:17 2011 -0600
+++ b/Frameworks/AutoHyperlinks Framework/xcconfigs/AutoHyperlinks.xcconfig	Tue Mar 15 20:31:02 2011 -0500
@@ -23,7 +23,6 @@
 VALID_ARCHS = i386 ppc x86_64
 DEBUG_INFORMATION_FORMAT = dwarf
 WARNING_CFLAGS = -Wall
-GCC_WARN_64_TO_32_BIT_CONVERSION = YES
 GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES
 GCC_WARN_STRICT_SELECTOR_MATCH = missing value
 GCC_WARN_UNDECLARED_SELECTOR = YES
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Plugins/Bonjour/AWBonjourAccount.m
--- a/Plugins/Bonjour/AWBonjourAccount.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Plugins/Bonjour/AWBonjourAccount.m	Tue Mar 15 20:31:02 2011 -0500
@@ -63,7 +63,7 @@
 	[super initAccount];
 
 	libezvContacts = [[NSMutableSet alloc] init];
-	libezv = [[AWEzv alloc] initWithClient:self];	
+	libezv = [(AWEzv *)[AWEzv alloc] initWithClient:self];	
 }
 
 - (void)dealloc
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Plugins/Dual Window Interface/AIMessageWindowController.m
--- a/Plugins/Dual Window Interface/AIMessageWindowController.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Plugins/Dual Window Interface/AIMessageWindowController.m	Tue Mar 15 20:31:02 2011 -0500
@@ -1011,13 +1011,13 @@
 	[transform scaleXBy:1.0f yBy:-1.0f];
 	[transform concat];
 	tabFrame.origin.y = -tabFrame.origin.y - tabFrame.size.height;
-	[(id <PSMTabStyle>)[[tabView delegate] style] drawBackgroundInRect:tabFrame];
+	[[(PSMTabBarControl *)[tabView delegate] style] drawBackgroundInRect:tabFrame];
 	[transform invert];
 	[transform concat];
 	
 	[viewImage unlockFocus];
 	
-	id <PSMTabStyle> style = (id <PSMTabStyle>)[[tabView delegate] style];
+	id <PSMTabStyle> style = [(PSMTabBarControl *)[tabView delegate] style];
 	
 	switch (tabPosition) {
 		case AdiumTabPositionBottom:
@@ -1048,7 +1048,7 @@
 {
 	id newController = [interface openNewContainer];
 	NSRect frame;
-	id <PSMTabStyle> style = (id <PSMTabStyle>)[[tabView delegate] style];
+	id <PSMTabStyle> style = [(PSMTabBarControl *)[tabView delegate] style];
 	
 	//set the size of the new window
 	//set the size and origin separately so that toolbar visibility and size doesn't mess things up
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Plugins/Image Uploading Plugin/AIImgurImageUploader.h
--- a/Plugins/Image Uploading Plugin/AIImgurImageUploader.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Plugins/Image Uploading Plugin/AIImgurImageUploader.h	Tue Mar 15 20:31:02 2011 -0500
@@ -16,7 +16,7 @@
 
 #import "AIGenericMultipartImageUploader.h"
 
- at interface AIImgurImageUploader : AIGenericMultipartImageUploader {
+ at interface AIImgurImageUploader : AIGenericMultipartImageUploader <NSXMLParserDelegate>{
 	NSData						*resultData;
 	NSXMLParser					*responseParser;
 	
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Plugins/Link Management/SHAutoValidatingTextView.h
--- a/Plugins/Link Management/SHAutoValidatingTextView.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Plugins/Link Management/SHAutoValidatingTextView.h	Tue Mar 15 20:31:02 2011 -0500
@@ -14,9 +14,10 @@
  * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  */
  
+#import	<AIUtilities/AILeopardCompatibility.h>
 #import <AutoHyperlinks/AutoHyperlinks.h>
  
- at interface SHAutoValidatingTextView : NSTextView {
+ at interface SHAutoValidatingTextView : NSTextView <NSTextViewDelegate>{
 
     BOOL                         continuousURLValidation;
     BOOL                         URLIsValid;
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Plugins/Purple Service/AMPurpleSearchResultsController.h
--- a/Plugins/Purple Service/AMPurpleSearchResultsController.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Plugins/Purple Service/AMPurpleSearchResultsController.h	Tue Mar 15 20:31:02 2011 -0500
@@ -17,7 +17,7 @@
 #import "ESPurpleRequestAbstractWindowController.h"
 #import <AdiumLibpurple/PurpleCommon.h>
 
- at interface AMPurpleSearchResultsController : ESPurpleRequestAbstractWindowController {
+ at interface AMPurpleSearchResultsController : ESPurpleRequestAbstractWindowController <NSTableViewDelegate>{
 	IBOutlet NSTextField *textfield_primary;
 	IBOutlet NSTextField *textfield_secondary;
 	IBOutlet NSTableView *tableview;
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Plugins/Purple Service/CBPurpleAccount.m
--- a/Plugins/Purple Service/CBPurpleAccount.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Plugins/Purple Service/CBPurpleAccount.m	Tue Mar 15 20:31:02 2011 -0500
@@ -2692,7 +2692,11 @@
 					char		**prpl_formats =  g_strsplit(prpl_info->icon_spec.format,",",0);
 
 					//Look for gif first if the image is animated
-					NSImageRep	*imageRep = [image bestRepresentationForDevice:nil] ;
+					NSImageRep	*imageRep = [image bestRepresentationForRect:NSMakeRect(0, 0, image.size.width, image.size.height)
+                                             
+                                             
+                                                                    context:nil
+                                                                      hints:nil];
 					if ([imageRep isKindOfClass:[NSBitmapImageRep class]] &&
 						[[(NSBitmapImageRep *)imageRep valueForProperty:NSImageFrameCount] integerValue] > 1) {
 						
@@ -3015,7 +3019,7 @@
 - (NSString *)titleForAccountActionMenuLabel:(const char *)label
 {
 	if ((strcmp(label, _("Change Password...")) == 0) || (strcmp(label, _("Change Password")) == 0)) {
-		return [[NSString stringWithFormat:AILocalizedString(@"Change Password", "Menu item title for changing the password of an account")] stringByAppendingEllipsis];
+		return [AILocalizedString(@"Change Password", "Menu item title for changing the password of an account") stringByAppendingEllipsis];
 	} else {
 		return [NSString stringWithUTF8String:label];
 	}
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Plugins/Purple Service/adiumPurpleRequest.m
--- a/Plugins/Purple Service/adiumPurpleRequest.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Plugins/Purple Service/adiumPurpleRequest.m	Tue Mar 15 20:31:02 2011 -0500
@@ -340,16 +340,18 @@
 		if (savedialog) {
 			NSSavePanel *savePanel = [NSSavePanel savePanel];
 			if ([titleString length]) [savePanel setTitle:titleString];
+			[savePanel setAllowedFileTypes:nil];
 
-			if ([savePanel runModalForDirectory:nil file:nil] == NSOKButton) {
-				((PurpleRequestFileCb)ok_cb)(user_data, [[savePanel filename] UTF8String]);
+			if ([savePanel runModal] == NSOKButton) {
+				((PurpleRequestFileCb)ok_cb)(user_data, [[[savePanel URL] path] UTF8String]);
 			}			
 		} else {
 			NSOpenPanel *openPanel = [NSOpenPanel openPanel];
 			if ([titleString length]) [openPanel setTitle:titleString];
+			[openPanel setAllowedFileTypes:nil];
 
-			if ([openPanel runModalForDirectory:nil file:nil types:nil] == NSOKButton) {
-				((PurpleRequestFileCb)ok_cb)(user_data, [[openPanel filename] UTF8String]);
+			if ([openPanel runModal] == NSOKButton) {
+				((PurpleRequestFileCb)ok_cb)(user_data, [[[openPanel URL] path] UTF8String]);
 			}
 		}
 	} else {
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Plugins/WebKit Message View/AIWebKitDelegate.h
--- a/Plugins/WebKit Message View/AIWebKitDelegate.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Plugins/WebKit Message View/AIWebKitDelegate.h	Tue Mar 15 20:31:02 2011 -0500
@@ -14,6 +14,7 @@
  * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  */
 
+#import	<AIUtilities/AILeopardCompatibility.h>
 #import <WebKit/WebKit.h>
 
 @class ESWebView;
@@ -22,7 +23,7 @@
 
 @class AIWebKitMessageViewController;
 
- at interface AIWebKitDelegate : NSObject {
+ at interface AIWebKitDelegate : NSObject <NSDraggingDestination>{
 	NSMutableDictionary *mapping;
 }
 
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Plugins/WebKit Message View/AIWebKitMessageViewController.h
--- a/Plugins/WebKit Message View/AIWebKitMessageViewController.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Plugins/WebKit Message View/AIWebKitMessageViewController.h	Tue Mar 15 20:31:02 2011 -0500
@@ -14,6 +14,7 @@
  * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  */
 
+#import	<AIUtilities/AILeopardCompatibility.h>
 #import <Adium/AIInterfaceControllerProtocol.h>
 
 @class AIWebKitMessageViewPlugin, AIWebkitMessageViewStyle, AIContentObject, ESWebView, DOMDocument, DOMRange, AIMetaContact, AIChat, AIContentObject, AIWebKitDelegate;
@@ -22,7 +23,7 @@
  *	@class AIWebKitMessageViewController AIWebKitMessageViewController.h
  *	@brief Main class for the webkit message view. Most of the good stuff happens here
  */
- at interface AIWebKitMessageViewController : NSObject <AIMessageDisplayController> {
+ at interface AIWebKitMessageViewController : NSObject <AIMessageDisplayController,NSDraggingDestination> {
 	AIWebKitDelegate			*delegateProxy;
 	
 	id							plugin;
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Plugins/WebKit Message View/AIWebKitMessageViewPlugin.m
--- a/Plugins/WebKit Message View/AIWebKitMessageViewPlugin.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Plugins/WebKit Message View/AIWebKitMessageViewPlugin.m	Tue Mar 15 20:31:02 2011 -0500
@@ -218,8 +218,8 @@
 	}
 
 	if (thisStyle) {
-		NSDictionary *fileAttrs = [[NSFileManager defaultManager] fileAttributesAtPath:[[*thisStyle bundle] bundlePath]
-																		  traverseLink:YES];
+		NSDictionary *fileAttrs = [[NSFileManager defaultManager] attributesOfItemAtPath:[[*thisStyle bundle] bundlePath]
+																		  error:NULL];
 		NSDate *modDate = [fileAttrs objectForKey:NSFileModificationDate];
 		if (lastStyleLoadDate && [modDate timeIntervalSinceDate:lastStyleLoadDate] > 0) {
 			[currentGroupStyle reloadStyle];
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Source/AIBorderlessListController.m
--- a/Source/AIBorderlessListController.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Source/AIBorderlessListController.m	Tue Mar 15 20:31:02 2011 -0500
@@ -21,7 +21,7 @@
 
 @synthesize enableEmptyListHiding;
 
-- (id)initWithContactList:(AIListObject<AIContainingObject> *)aContactList
+- (id)initWithContactList:(id<AIContainingObject>)aContactList
 			inOutlineView:(AIListOutlineView *)inContactListView
 			 inScrollView:(AIAutoScrollView *)inScrollView_contactList
 				 delegate:(id<AIListControllerDelegate>)inDelegate
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Source/AIContactController.m
--- a/Source/AIContactController.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Source/AIContactController.m	Tue Mar 15 20:31:02 2011 -0500
@@ -100,7 +100,7 @@
 @property (readwrite, nonatomic) BOOL useOfflineGroup;
 - (void)saveContactList;
 - (void)_loadBookmarks;
-- (void)_didChangeContainer:(AIListObject<AIContainingObject> *)inContainingObject object:(AIListObject *)object;
+- (void)_didChangeContainer:(id <AIContainingObject>)inContainingObject object:(AIListObject *)object;
 - (void)prepareShowHideGroups;
 - (void)_performChangeOfUseContactListGroups;
 - (void)didSendContent:(NSNotification *)notification;
@@ -283,7 +283,7 @@
 
 #pragma mark Contact Grouping
 
-- (void)_addContactLocally:(AIListContact *)listContact toGroup:(AIListObject<AIContainingObject> *)localGroup
+- (void)_addContactLocally:(AIListContact *)listContact toGroup:(id<AIContainingObject>)localGroup
 {
 	BOOL			performedGrouping = NO;
 	
@@ -351,12 +351,12 @@
 #endif
 		
 		//Remove this object from any local groups we have it in currently
-		for (AIListObject<AIContainingObject> *group in oldGroups) {
+		for (id<AIContainingObject> group in oldGroups) {
 			[group removeObject:listContact];
 			[self _didChangeContainer:group object:listContact];
 		}
 		
-		for (AIListObject<AIContainingObject> *group in groups)
+		for (id<AIContainingObject> group in groups)
 			[self _addContactLocally:listContact toGroup:group];
 		
 		[contactPropertiesObserverManager endListObjectNotificationsDelay];
@@ -366,7 +366,7 @@
 }
 
 //Post a list grouping changed notification for the object and containing object
-- (void)_didChangeContainer:(AIListObject<AIContainingObject> *)inContainingObject object:(AIListObject *)object
+- (void)_didChangeContainer:(id<AIContainingObject>)inContainingObject object:(AIListObject *)object
 {
 	if ([contactPropertiesObserverManager shouldDelayUpdates]) {
 		[contactPropertiesObserverManager noteContactChanged:object];
@@ -577,8 +577,8 @@
 
 	//If listObject contains other contacts, perform addContact:toMetaContact: recursively
 	if ([inContact conformsToProtocol:@protocol(AIContainingObject)]) {
-		AILogWithSignature(@"Adding recursively (%@)", ((AIListObject<AIContainingObject> *)inContact).containedObjects);
-		for (AIListContact *someObject in ((AIListObject<AIContainingObject> *)inContact).containedObjects) {
+		AILogWithSignature(@"Adding recursively (%@)", ((id<AIContainingObject>)inContact).containedObjects);
+		for (AIListContact *someObject in ((id<AIContainingObject>)inContact).containedObjects) {
 			[self addContact:someObject toMetaContact:metaContact];
 		}
 		
@@ -1102,7 +1102,7 @@
 }
 
 //Return a flat array of all the objects in a group on an account (and all subgroups, if desired)
-- (NSArray *)allContactsInObject:(AIListObject<AIContainingObject> *)inGroup onAccount:(AIAccount *)inAccount
+- (NSArray *)allContactsInObject:(id<AIContainingObject>)inGroup onAccount:(AIAccount *)inAccount
 {
 	NSParameterAssert(inGroup != nil);
 	
@@ -1110,7 +1110,7 @@
 	
 	for (AIListObject *object in inGroup) {
 		if ([object conformsToProtocol:@protocol(AIContainingObject)]) {
-			[contactArray addObjectsFromArray:[self allContactsInObject:(AIListObject<AIContainingObject> *)object
+			[contactArray addObjectsFromArray:[self allContactsInObject:(id<AIContainingObject>)object
 															  onAccount:inAccount]];
 		} else if ([object isMemberOfClass:[AIListContact class]] && (!inAccount || ([(AIListContact *)object account] == inAccount)))
 			[contactArray addObject:object];
@@ -1241,7 +1241,7 @@
 {
 	[[inContact retain] autorelease];
 
-	for (AIListObject<AIContainingObject> *container in inContact.containingObjects) {
+	for (id<AIContainingObject> container in inContact.containingObjects) {
 		[container removeObjectAfterAccountStopsTracking:inContact];
 	}
 
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Source/AIListController.h
--- a/Source/AIListController.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Source/AIListController.h	Tue Mar 15 20:31:02 2011 -0500
@@ -38,12 +38,12 @@
 	BOOL					needsAutoResize;
 }
 
-- (id)initWithContactList:(AIListObject<AIContainingObject> *)aContactList
+- (id)initWithContactList:(id<AIContainingObject>)aContactList
 			inOutlineView:(AIListOutlineView *)inContactListView
 			 inScrollView:(AIAutoScrollView *)inScrollView_contactList
 				 delegate:(id<AIListControllerDelegate>)inDelegate;
 
-- (AIListObject<AIContainingObject> *) contactList;
+- (id<AIContainingObject>) contactList;
 
 //Call to close down and release the listController
 - (void)close;
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Source/AIListController.m
--- a/Source/AIListController.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Source/AIListController.m	Tue Mar 15 20:31:02 2011 -0500
@@ -62,7 +62,7 @@
 @implementation AIListController
 
 
-- (id)initWithContactList:(AIListObject<AIContainingObject> *)aContactList
+- (id)initWithContactList:(id<AIContainingObject>)aContactList
 			inOutlineView:(AIListOutlineView *)inContactListView
 			 inScrollView:(AIAutoScrollView *)inScrollView_contactList
 				 delegate:(id<AIListControllerDelegate>)inDelegate
@@ -409,9 +409,9 @@
 //Content Updating -----------------------------------------------------------------------------------------------------
 #pragma mark Content Updating
 
-- (AIListObject<AIContainingObject> *)contactList
+- (id<AIContainingObject>)contactList
 {
-	return (AIListObject<AIContainingObject> *)contactList;
+	return (id<AIContainingObject>)contactList;
 }
 
 - (void)reloadListObject:(NSNotification *)notification
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Source/AIListLayoutWindowController.h
--- a/Source/AIListLayoutWindowController.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Source/AIListLayoutWindowController.h	Tue Mar 15 20:31:02 2011 -0500
@@ -15,10 +15,9 @@
  */
 
 #import <Adium/AIWindowController.h>
+#import <Adium/JVFontPreviewField.h>
 
- at class JVFontPreviewField, JVFontPreviewField;
-
- at interface AIListLayoutWindowController : AIWindowController {
+ at interface AIListLayoutWindowController : AIWindowController <JVFontPreviewFieldDelegate> {
 	IBOutlet		NSPopUpButton		*popUp_contactTextAlignment;
 	IBOutlet		NSPopUpButton		*popUp_groupTextAlignment;
 	IBOutlet		NSPopUpButton		*popUp_extendedStatusStyle;
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Source/AIListThemeWindowController.m
--- a/Source/AIListThemeWindowController.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Source/AIListThemeWindowController.m	Tue Mar 15 20:31:02 2011 -0500
@@ -457,12 +457,14 @@
 {
 	NSOpenPanel *openPanel = [NSOpenPanel openPanel];
 	[openPanel setTitle:@"Background Image"];
-	
-	if ([openPanel runModalForDirectory:nil file:nil types:[NSImage imageFileTypes]] == NSOKButton) {
-		[adium.preferenceController setPreference:[openPanel filename]
+	[openPanel setAllowedFileTypes:[NSImage imageFileTypes]];
+	 
+	if ([openPanel runModal] == NSOKButton) {
+		NSString *filename = [[openPanel URL] path];
+		[adium.preferenceController setPreference:filename
 											 forKey:KEY_LIST_THEME_BACKGROUND_IMAGE_PATH
 											  group:PREF_GROUP_LIST_THEME];
-		if ([openPanel filename]) [textField_backgroundImagePath setStringValue:[openPanel filename]];
+		if (filename) [textField_backgroundImagePath setStringValue:filename];
 	}
 }
 
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Source/AIListWindowController.h
--- a/Source/AIListWindowController.h	Fri Mar 11 21:13:17 2011 -0600
+++ b/Source/AIListWindowController.h	Tue Mar 15 20:31:02 2011 -0500
@@ -102,12 +102,12 @@
 }
 
 // Create additional windows
-+ (AIListWindowController *)listWindowControllerForContactList:(AIListObject<AIContainingObject> *)contactList;
++ (AIListWindowController *)listWindowControllerForContactList:(id<AIContainingObject>)contactList;
 
 - (AIListController *)listController;
 - (AIListOutlineView *)contactListView;
-- (AIListObject<AIContainingObject> *) contactList;
-- (void)setContactList:(AIListObject<AIContainingObject> *)contactList;
+- (id<AIContainingObject>) contactList;
+- (void)setContactList:(id<AIContainingObject>)contactList;
 - (void)close:(id)sender;
 
 // Dock-like hiding
diff -r 98e55e5f1ba3 -r 4b8d5b913c9b Source/AIListWindowController.m
--- a/Source/AIListWindowController.m	Fri Mar 11 21:13:17 2011 -0600
+++ b/Source/AIListWindowController.m	Tue Mar 15 20:31:02 2011 -0500
@@ -54,7 +54,7 @@
 #define SNAP_DISTANCE							15.0f /* Distance beween one window's edge and another's at which they should snap together */
 
 @interface AIListWindowController ()
-- (id)initWithContactList:(AIListObject<AIContainingObject> *)contactList;
+- (id)initWithContactList:(id<AIContainingObject>)contactList;
 + (NSString *)nibName;
 + (void)updateScreenSlideBoundaryRect:(id)sender;
 - (BOOL)shouldSlideWindowOffScreen_mousePositionStrategy;
@@ -87,12 +87,12 @@
 	}
 }
 
-+ (AIListWindowController *)listWindowControllerForContactList:(AIListObject<AIContainingObject> *)contactList
++ (AIListWindowController *)listWindowControllerForContactList:(id<AIContainingObject>)contactList
 {
 	return [[[self alloc] initWithContactList:contactList] autorelease];
 }
 
-- (id)initWithContactList:(AIListObject<AIContainingObject> *)contactList
+- (id)initWithContactList:(id<AIContainingObject>)contactList
 {
 	if ((self = [self initWithWindowNibName:[[self class] nibName]])) {
 		preventHiding = NO;
@@ -107,7 +107,7 @@
 	return self;	
 }
 
-- (AIListObject<AIContainingObject> *)contactList




More information about the commits mailing list