Revision: 4364
          http://skim-app.svn.sourceforge.net/skim-app/?rev=4364&view=rev
Author:   hofman
Date:     2008-08-06 23:43:49 +0000 (Wed, 06 Aug 2008)

Log Message:
-----------
Add some convenience functions for method replacement with various default 
arguments.

Modified Paths:
--------------
    trunk/NSCell_SKExtensions.m
    trunk/NSCharacterSet_SKExtensions.m
    trunk/NSScrollView_SKExtensions.m
    trunk/NSURL_SKExtensions.m
    trunk/PDFAnnotationLink_SKExtensions.m
    trunk/PDFAnnotationMarkup_SKExtensions.m
    trunk/PDFDisplayView_SKExtensions.m
    trunk/PDFDocument_SKExtensions.m
    trunk/PDFPage_SKExtensions.m
    trunk/SKFindTableView.m
    trunk/SKRuntime.h
    trunk/SKRuntime.m
    trunk/SKThumbnailTableView.m
    trunk/SKTypeSelectHelper.m
    trunk/Skim.xcodeproj/project.pbxproj

Modified: trunk/NSCell_SKExtensions.m
===================================================================
--- trunk/NSCell_SKExtensions.m 2008-08-06 22:03:42 UTC (rev 4363)
+++ trunk/NSCell_SKExtensions.m 2008-08-06 23:43:49 UTC (rev 4364)
@@ -54,7 +54,7 @@
 }
 
 + (void)load {
-    originalHighlightColorWithFrameInView = (id (*)(id, SEL, NSRect, 
id))SKReplaceMethodImplementationFromSelector(self, 
@selector(highlightColorWithFrame:inView:), 
@selector(replacementHighlightColorWithFrame:inView:), YES, SKReplaceOnly);
+    originalHighlightColorWithFrameInView = (id (*)(id, SEL, NSRect, 
id))SKReplaceInstanceMethodImplementationFromSelector(self, 
@selector(highlightColorWithFrame:inView:), 
@selector(replacementHighlightColorWithFrame:inView:));
 }
 
 @end

Modified: trunk/NSCharacterSet_SKExtensions.m
===================================================================
--- trunk/NSCharacterSet_SKExtensions.m 2008-08-06 22:03:42 UTC (rev 4363)
+++ trunk/NSCharacterSet_SKExtensions.m 2008-08-06 23:43:49 UTC (rev 4364)
@@ -69,7 +69,7 @@
 }
 
 + (void)load {
-    SKReplaceMethodImplementationFromSelector(self, 
@selector(newlineCharacterSet), @selector(replacementNewlineCharacterSet), NO, 
SKSetOnly);
+    SKAddClassMethodImplementationFromSelector(self, 
@selector(newlineCharacterSet), @selector(replacementNewlineCharacterSet));
 }
 
 @end

Modified: trunk/NSScrollView_SKExtensions.m
===================================================================
--- trunk/NSScrollView_SKExtensions.m   2008-08-06 22:03:42 UTC (rev 4363)
+++ trunk/NSScrollView_SKExtensions.m   2008-08-06 23:43:49 UTC (rev 4364)
@@ -103,10 +103,10 @@
 }
 
 + (void)load{
-    originalSetHasHorizontalScroller = (void (*)(id, SEL, 
BOOL))SKReplaceMethodImplementationFromSelector(self, 
@selector(setHasHorizontalScroller:), 
@selector(replacementSetHasHorizontalScroller:), YES, SKReplaceOnly);
-    originalSetAutohidesScrollers = (void (*)(id, SEL, 
BOOL))SKReplaceMethodImplementationFromSelector(self, 
@selector(setAutohidesScrollers:), 
@selector(replacementSetAutohidesScrollers:), YES, SKReplaceOnly);
-    originalDealloc = (void (*)(id, 
SEL))SKReplaceMethodImplementationFromSelector(self, @selector(dealloc), 
@selector(replacementDealloc), YES, SKReplaceOnly);
-    originalTile = (void (*)(id, 
SEL))SKReplaceMethodImplementationFromSelector(self, @selector(tile), 
@selector(replacementTile), YES, SKReplaceOnly);
+    originalSetHasHorizontalScroller = (void (*)(id, SEL, 
BOOL))SKReplaceInstanceMethodImplementationFromSelector(self, 
@selector(setHasHorizontalScroller:), 
@selector(replacementSetHasHorizontalScroller:));
+    originalSetAutohidesScrollers = (void (*)(id, SEL, 
BOOL))SKReplaceInstanceMethodImplementationFromSelector(self, 
@selector(setAutohidesScrollers:), 
@selector(replacementSetAutohidesScrollers:));
+    originalDealloc = (void (*)(id, 
SEL))SKReplaceInstanceMethodImplementationFromSelector(self, 
@selector(dealloc), @selector(replacementDealloc));
+    originalTile = (void (*)(id, 
SEL))SKReplaceInstanceMethodImplementationFromSelector(self, @selector(tile), 
@selector(replacementTile));
     
     // dictionary doesn't retain keys, so no retain cycles; pointer equality 
used to compare views
     scrollViewPlacards = CFDictionaryCreateMutable(CFAllocatorGetDefault(), 0, 
NULL, &kCFTypeDictionaryValueCallBacks);

Modified: trunk/NSURL_SKExtensions.m
===================================================================
--- trunk/NSURL_SKExtensions.m  2008-08-06 22:03:42 UTC (rev 4363)
+++ trunk/NSURL_SKExtensions.m  2008-08-06 23:43:49 UTC (rev 4364)
@@ -55,8 +55,8 @@
 }
 
 + (void)load {
-    originalInitFileURLWithPath = (id (*)(id, SEL, 
id))SKReplaceMethodImplementationFromSelector(self, 
@selector(initFileURLWithPath:), @selector(replacementInitFileURLWithPath:), 
YES, SKReplaceOnly);
-    originalInitWithString = (id (*)(id, SEL, 
id))SKReplaceMethodImplementationFromSelector(self, @selector(initWithString:), 
@selector(replacementInitWithString:), YES, SKReplaceOnly);
+    originalInitFileURLWithPath = (id (*)(id, SEL, 
id))SKReplaceInstanceMethodImplementationFromSelector(self, 
@selector(initFileURLWithPath:), @selector(replacementInitFileURLWithPath:));
+    originalInitWithString = (id (*)(id, SEL, 
id))SKReplaceInstanceMethodImplementationFromSelector(self, 
@selector(initWithString:), @selector(replacementInitWithString:));
 }
 
 + (NSURL *)URLFromPasteboardAnyType:(NSPasteboard *)pasteboard {

Modified: trunk/PDFAnnotationLink_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationLink_SKExtensions.m      2008-08-06 22:03:42 UTC (rev 
4363)
+++ trunk/PDFAnnotationLink_SKExtensions.m      2008-08-06 23:43:49 UTC (rev 
4364)
@@ -61,8 +61,8 @@
 }
 
 + (void)load {
-    originalToolTip = (id (*)(id, 
SEL))SKReplaceMethodImplementationFromSelector(self, @selector(toolTip), 
@selector(replacementToolTip), YES, SKReplaceOnly);
-    originalToolTipNoLabel = (id (*)(id, 
SEL))SKReplaceMethodImplementationFromSelector(self, @selector(toolTip), 
@selector(replacementToolTipNoLabel), YES, SKReplaceOnly);
+    originalToolTip = (id (*)(id, 
SEL))SKReplaceInstanceMethodImplementationFromSelector(self, 
@selector(toolTip), @selector(replacementToolTip));
+    originalToolTipNoLabel = (id (*)(id, 
SEL))SKReplaceInstanceMethodImplementationFromSelector(self, 
@selector(toolTip), @selector(replacementToolTipNoLabel));
 }
 
 - (BOOL)isLink { return YES; }

Modified: trunk/PDFAnnotationMarkup_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationMarkup_SKExtensions.m    2008-08-06 22:03:42 UTC (rev 
4363)
+++ trunk/PDFAnnotationMarkup_SKExtensions.m    2008-08-06 23:43:49 UTC (rev 
4364)
@@ -123,9 +123,9 @@
 }
 
 + (void)load {
-    originalDealloc = (void (*)(id, 
SEL))SKReplaceMethodImplementationFromSelector(self, @selector(dealloc), 
@selector(replacementDealloc), YES, SKReplaceOnly);
+    originalDealloc = (void (*)(id, 
SEL))SKReplaceInstanceMethodImplementationFromSelector(self, 
@selector(dealloc), @selector(replacementDealloc));
     if (floor(NSAppKitVersionNumber) <= NSAppKitVersionNumber10_4)
-        originalDrawWithBoxInContext = (void (*)(id, SEL, CGPDFBox, 
CGContextRef))SKReplaceMethodImplementationFromSelector(self, 
@selector(drawWithBox:inContext:), 
@selector(replacementDrawWithBox:inContext:), YES, SKReplaceOnly);
+        originalDrawWithBoxInContext = (void (*)(id, SEL, CGPDFBox, 
CGContextRef))SKReplaceInstanceMethodImplementationFromSelector(self, 
@selector(drawWithBox:inContext:), 
@selector(replacementDrawWithBox:inContext:));
     lineRectsDict = CFDictionaryCreateMutable(kCFAllocatorDefault, 0, NULL, 
&kCFTypeDictionaryValueCallBacks);
 }
 

Modified: trunk/PDFDisplayView_SKExtensions.m
===================================================================
--- trunk/PDFDisplayView_SKExtensions.m 2008-08-06 22:03:42 UTC (rev 4363)
+++ trunk/PDFDisplayView_SKExtensions.m 2008-08-06 23:43:49 UTC (rev 4364)
@@ -226,21 +226,21 @@
 void SKSwizzlePDFDisplayViewMethods() {
     Class PDFDisplayViewClass = NSClassFromString(@"PDFDisplayView");
     if (PDFDisplayViewClass) {
-        originalResetCursorRects = (void (*)(id, 
SEL))SKReplaceMethodImplementation(PDFDisplayViewClass, 
@selector(resetCursorRects), (IMP)replacementResetCursorRects, NULL, YES, 
SKReplaceOnly);
-        originalPasswordEntered = (void (*)(id, SEL, 
id))SKReplaceMethodImplementation(PDFDisplayViewClass, 
@selector(passwordEntered:), (IMP)replacementPasswordEntered, NULL, YES, 
SKReplaceOnly);
+        originalResetCursorRects = (void (*)(id, 
SEL))SKReplaceInstanceMethodImplementation(PDFDisplayViewClass, 
@selector(resetCursorRects), (IMP)replacementResetCursorRects);
+        originalPasswordEntered = (void (*)(id, SEL, 
id))SKReplaceInstanceMethodImplementation(PDFDisplayViewClass, 
@selector(passwordEntered:), (IMP)replacementPasswordEntered);
         
         if ([[NSUserDefaults standardUserDefaults] 
boolForKey:@"SKDisableExtendedPDFViewAccessibility"]) return;
         
-        originalAccessibilityAttributeNames = (id (*)(id, 
SEL))SKReplaceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityAttributeNames), 
(IMP)replacementAccessibilityAttributeNames, NULL, YES, SKReplaceOnly);
-        originalAccessibilityParameterizedAttributeNames = (id (*)(id, 
SEL))SKReplaceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityParameterizedAttributeNames), 
(IMP)replacementAccessibilityParameterizedAttributeNames, NULL, YES, 
SKReplaceOnly);
-        originalAccessibilityAttributeValue = (id (*)(id, SEL, 
id))SKReplaceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityAttributeValue:), 
(IMP)replacementAccessibilityAttributeValue, NULL, YES, SKReplaceOnly);
-        originalAccessibilityHitTest = (id (*)(id, SEL, 
NSPoint))SKReplaceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityHitTest:), (IMP)replacementAccessibilityHitTest, NULL, 
YES, SKReplaceOnly);
-        originalAccessibilityFocusedUIElement = (id (*)(id, 
SEL))SKReplaceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityFocusedUIElement), 
(IMP)replacementAccessibilityFocusedUIElement, NULL, YES, SKReplaceOnly);
+        originalAccessibilityAttributeNames = (id (*)(id, 
SEL))SKReplaceInstanceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityAttributeNames), 
(IMP)replacementAccessibilityAttributeNames);
+        originalAccessibilityParameterizedAttributeNames = (id (*)(id, 
SEL))SKReplaceInstanceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityParameterizedAttributeNames), 
(IMP)replacementAccessibilityParameterizedAttributeNames);
+        originalAccessibilityAttributeValue = (id (*)(id, SEL, 
id))SKReplaceInstanceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityAttributeValue:), 
(IMP)replacementAccessibilityAttributeValue);
+        originalAccessibilityHitTest = (id (*)(id, SEL, 
NSPoint))SKReplaceInstanceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityHitTest:), (IMP)replacementAccessibilityHitTest);
+        originalAccessibilityFocusedUIElement = (id (*)(id, 
SEL))SKReplaceInstanceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityFocusedUIElement), 
(IMP)replacementAccessibilityFocusedUIElement);
             
-        SKReplaceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityRangeForPositionAttributeForParameter:), 
(IMP)replacementAccessibilityRangeForPositionAttributeForParameter, "@@:@", 
YES, SKSetOnly);
-        SKReplaceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityRTFForRangeAttributeForParameter:), 
(IMP)replacementAccessibilityRTFForRangeAttributeForParameter, "@@:@", YES, 
SKSetOnly);
-        SKReplaceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityAttributedStringForRangeAttributeForParameter:), 
(IMP)replacementAccessibilityAttributedStringForRangeAttributeForParameter, 
"@@:@", YES, SKSetOnly);
-        SKReplaceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityStyleRangeForIndexAttributeForParameter:), 
(IMP)replacementAccessibilityStyleRangeForIndexAttributeForParameter, "@@:@", 
YES, SKSetOnly);
+        SKAddInstanceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityRangeForPositionAttributeForParameter:), 
(IMP)replacementAccessibilityRangeForPositionAttributeForParameter, "@@:@");
+        SKAddInstanceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityRTFForRangeAttributeForParameter:), 
(IMP)replacementAccessibilityRTFForRangeAttributeForParameter, "@@:@");
+        SKAddInstanceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityAttributedStringForRangeAttributeForParameter:), 
(IMP)replacementAccessibilityAttributedStringForRangeAttributeForParameter, 
"@@:@");
+        SKAddInstanceMethodImplementation(PDFDisplayViewClass, 
@selector(accessibilityStyleRangeForIndexAttributeForParameter:), 
(IMP)replacementAccessibilityStyleRangeForIndexAttributeForParameter, "@@:@");
     }
 }
 

Modified: trunk/PDFDocument_SKExtensions.m
===================================================================
--- trunk/PDFDocument_SKExtensions.m    2008-08-06 22:03:42 UTC (rev 4363)
+++ trunk/PDFDocument_SKExtensions.m    2008-08-06 23:43:49 UTC (rev 4364)
@@ -72,7 +72,7 @@
 }
 
 + (void)load {
-    originalGetPrintOperationForPrintInfo = (id (*)(id, SEL, id, 
BOOL))SKReplaceMethodImplementationFromSelector(self, 
@selector(getPrintOperationForPrintInfo:autoRotate:), 
@selector(replacementGetPrintOperationForPrintInfo:autoRotate:), YES, 
SKReplaceOnly);
+    originalGetPrintOperationForPrintInfo = (id (*)(id, SEL, id, 
BOOL))SKReplaceInstanceMethodImplementationFromSelector(self, 
@selector(getPrintOperationForPrintInfo:autoRotate:), 
@selector(replacementGetPrintOperationForPrintInfo:autoRotate:));
 }
 
 - (PDFSelection *)selectionByExtendingSelection:(PDFSelection *)selection 
toPage:(PDFPage *)page atPoint:(NSPoint)point {

Modified: trunk/PDFPage_SKExtensions.m
===================================================================
--- trunk/PDFPage_SKExtensions.m        2008-08-06 22:03:42 UTC (rev 4363)
+++ trunk/PDFPage_SKExtensions.m        2008-08-06 23:43:49 UTC (rev 4364)
@@ -74,7 +74,7 @@
 }
 
 + (void)load {
-    originalDealloc = (void (*)(id, 
SEL))SKReplaceMethodImplementationFromSelector(self, @selector(dealloc), 
@selector(replacementDealloc), YES, SKReplaceOnly);
+    originalDealloc = (void (*)(id, 
SEL))SKReplaceInstanceMethodImplementationFromSelector(self, 
@selector(dealloc), @selector(replacementDealloc));
     bboxCache = CFDictionaryCreateMutable(NULL, 0, NULL, 
&kSKNSRectDictionaryValueCallBacks);
 }
 

Modified: trunk/SKFindTableView.m
===================================================================
--- trunk/SKFindTableView.m     2008-08-06 22:03:42 UTC (rev 4363)
+++ trunk/SKFindTableView.m     2008-08-06 23:43:49 UTC (rev 4364)
@@ -173,7 +173,7 @@
 
 + (void)load {
     NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
-    originalDrawWithFrameInView = (void (*)(id, SEL, NSRect, 
id))SKReplaceMethodImplementationFromSelector(self, 
@selector(drawWithFrame:inView:), @selector(replacementDrawWithFrame:inView:), 
YES, SKReplaceOnly);
+    originalDrawWithFrameInView = (void (*)(id, SEL, NSRect, 
id))SKReplaceInstanceMethodImplementationFromSelector(self, 
@selector(drawWithFrame:inView:), @selector(replacementDrawWithFrame:inView:));
     [pool release];
 }
 

Modified: trunk/SKRuntime.h
===================================================================
--- trunk/SKRuntime.h   2008-08-06 22:03:42 UTC (rev 4363)
+++ trunk/SKRuntime.h   2008-08-06 23:43:49 UTC (rev 4364)
@@ -54,6 +54,15 @@
     SKSetOnly
 };
 
-extern IMP SKReplaceMethodImplementation(Class aClass, SEL aSelector, IMP 
anImp, const char *types, BOOL isInstance, int options);
-extern IMP SKReplaceMethodImplementationFromSelector(Class aClass, SEL 
aSelector, SEL impSelector, BOOL isInstance, int options);
-extern void SKExchangeMethodImplementations(Class aClass, SEL aSelector1, SEL 
aSelector2, BOOL isInstance);
+extern IMP SKSetMethodImplementation(Class aClass, SEL aSelector, IMP anImp, 
const char *types, BOOL isInstance, int options);
+extern IMP SKSetMethodImplementationFromSelector(Class aClass, SEL aSelector, 
SEL impSelector, BOOL isInstance, int options);
+
+extern IMP SKAddInstanceMethodImplementation(Class aClass, SEL aSelector, IMP 
anImp, const char *types);
+extern IMP SKReplaceInstanceMethodImplementation(Class aClass, SEL aSelector, 
IMP anImp);
+extern IMP SKAddInstanceMethodImplementationFromSelector(Class aClass, SEL 
aSelector, SEL impSelector);
+extern IMP SKReplaceInstanceMethodImplementationFromSelector(Class aClass, SEL 
aSelector, SEL impSelector);
+
+extern IMP SKAddClassMethodImplementation(Class aClass, SEL aSelector, IMP 
anImp, const char *types);
+extern IMP SKReplaceClassMethodImplementation(Class aClass, SEL aSelector, IMP 
anImp);
+extern IMP SKAddClassMethodImplementationFromSelector(Class aClass, SEL 
aSelector, SEL impSelector);
+extern IMP SKReplaceClassMethodImplementationFromSelector(Class aClass, SEL 
aSelector, SEL impSelector);

Modified: trunk/SKRuntime.m
===================================================================
--- trunk/SKRuntime.m   2008-08-06 22:03:42 UTC (rev 4363)
+++ trunk/SKRuntime.m   2008-08-06 23:43:49 UTC (rev 4364)
@@ -127,7 +127,7 @@
 #pragma mark API
 
 // this is essentially class_replaceMethod, but handles instance/class 
methods, returns any inherited implementation, and can get the types from an 
inherited implementation
-IMP SKReplaceMethodImplementation(Class aClass, SEL aSelector, IMP anImp, 
const char *types, BOOL isInstance, int options) {
+IMP SKSetMethodImplementation(Class aClass, SEL aSelector, IMP anImp, const 
char *types, BOOL isInstance, int options) {
     IMP imp = NULL;
     if (anImp) {
         Method method = isInstance ? class_getInstanceMethod(aClass, 
aSelector) : class_getClassMethod(aClass, aSelector);
@@ -142,11 +142,39 @@
     return imp;
 }
 
-IMP SKReplaceMethodImplementationFromSelector(Class aClass, SEL aSelector, SEL 
impSelector, BOOL isInstance, int options) {
+IMP SKSetMethodImplementationFromSelector(Class aClass, SEL aSelector, SEL 
impSelector, BOOL isInstance, int options) {
     Method method = isInstance ? class_getInstanceMethod(aClass, impSelector) 
: class_getClassMethod(aClass, impSelector);
-    return method ? SKReplaceMethodImplementation(aClass, aSelector, 
SK_method_getImplementation(method), SK_method_getTypeEncoding(method), 
isInstance, options) : NULL;
+    return method ? SKSetMethodImplementation(aClass, aSelector, 
SK_method_getImplementation(method), SK_method_getTypeEncoding(method), 
isInstance, options) : NULL;
 }
 
-void SKExchangeMethodImplementationsForSelectors(Class aClass, SEL aSelector1, 
SEL aSelector2, BOOL isInstance) {
-    SKReplaceMethodImplementation(aClass, aSelector2, 
SKReplaceMethodImplementationFromSelector(aClass, aSelector1, aSelector2, 
isInstance, SKReplaceOnly), NULL, isInstance, SKReplaceOnly);
+extern IMP SKAddInstanceMethodImplementation(Class aClass, SEL aSelector, IMP 
anImp, const char *types) {
+    return SKSetMethodImplementation(aClass, aSelector, anImp, types, YES, 
SKSetOnly);
 }
+
+extern IMP SKReplaceInstanceMethodImplementation(Class aClass, SEL aSelector, 
IMP anImp) {
+    return SKSetMethodImplementation(aClass, aSelector, anImp, NULL, YES, 
SKReplaceOnly);
+}
+
+extern IMP SKAddInstanceMethodImplementationFromSelector(Class aClass, SEL 
aSelector, SEL impSelector) {
+    return SKSetMethodImplementationFromSelector(aClass, aSelector, 
impSelector, YES, SKSetOnly);
+}
+
+extern IMP SKReplaceInstanceMethodImplementationFromSelector(Class aClass, SEL 
aSelector, SEL impSelector) {
+    return SKSetMethodImplementationFromSelector(aClass, aSelector, 
impSelector, YES, SKReplaceOnly);
+}
+
+extern IMP SKAddClassMethodImplementation(Class aClass, SEL aSelector, IMP 
anImp, const char *types) {
+    return SKSetMethodImplementation(aClass, aSelector, anImp, types, NO, 
SKSetOnly);
+}
+
+extern IMP SKReplaceClassMethodImplementation(Class aClass, SEL aSelector, IMP 
anImp) {
+    return SKSetMethodImplementation(aClass, aSelector, anImp, NULL, NO, 
SKReplaceOnly);
+}
+
+extern IMP SKAddClassMethodImplementationFromSelector(Class aClass, SEL 
aSelector, SEL impSelector) {
+    return SKSetMethodImplementationFromSelector(aClass, aSelector, 
impSelector, NO, SKSetOnly);
+}
+
+extern IMP SKReplaceClassMethodImplementationFromSelector(Class aClass, SEL 
aSelector, SEL impSelector) {
+    return SKSetMethodImplementationFromSelector(aClass, aSelector, 
impSelector, NO, SKReplaceOnly);
+}

Modified: trunk/SKThumbnailTableView.m
===================================================================
--- trunk/SKThumbnailTableView.m        2008-08-06 22:03:42 UTC (rev 4363)
+++ trunk/SKThumbnailTableView.m        2008-08-06 23:43:49 UTC (rev 4364)
@@ -58,7 +58,7 @@
 }
 
 + (void)load {
-    originalTrackKnob = (void (*)(id, SEL, 
id))SKReplaceMethodImplementationFromSelector(self, @selector(trackKnob:), 
@selector(replacementTrackKnob:), YES, SKReplaceOnly);
+    originalTrackKnob = (void (*)(id, SEL, 
id))SKReplaceInstanceMethodImplementationFromSelector(self, 
@selector(trackKnob:), @selector(replacementTrackKnob:));
 }
 
 @end

Modified: trunk/SKTypeSelectHelper.m
===================================================================
--- trunk/SKTypeSelectHelper.m  2008-08-06 22:03:42 UTC (rev 4363)
+++ trunk/SKTypeSelectHelper.m  2008-08-06 23:43:49 UTC (rev 4364)
@@ -428,7 +428,7 @@
 }
 
 + (void)load {
-    originalMakeFirstResponder = 
(typeof(originalMakeFirstResponder))SKReplaceMethodImplementationFromSelector(self,
 @selector(makeFirstResponder:), @selector(replacementMakeFirstResponder:), 
YES, SKReplaceOnly);
+    originalMakeFirstResponder = 
(typeof(originalMakeFirstResponder))SKReplaceInstanceMethodImplementationFromSelector(self,
 @selector(makeFirstResponder:), @selector(replacementMakeFirstResponder:));
 }
 
 @end

Modified: trunk/Skim.xcodeproj/project.pbxproj
===================================================================
--- trunk/Skim.xcodeproj/project.pbxproj        2008-08-06 22:03:42 UTC (rev 
4363)
+++ trunk/Skim.xcodeproj/project.pbxproj        2008-08-06 23:43:49 UTC (rev 
4364)
@@ -1167,8 +1167,6 @@
                                CE7F43900DE1F1980061A839 /* 
NSUserDefaults_SKExtensions.m */,
                                CE41B2C90C08D17100E36EB7 /* 
NSValue_SKExtensions.h */,
                                CE41B2CA0C08D17100E36EB7 /* 
NSValue_SKExtensions.m */,
-                               CE1F67FD0E37552400E07E76 /* SKRuntime.h */,
-                               CE09FC3B0E3886C100BDF413 /* SKRuntime.m */,
                        );
                        name = "Foundation Categories";
                        sourceTree = "<group>";
@@ -1375,6 +1373,8 @@
                        children = (
                                CE64E8A10D92E670000AD050 /* SKCFCallBacks.h */,
                                CE64E8A20D92E670000AD050 /* SKCFCallBacks.m */,
+                               CE1F67FD0E37552400E07E76 /* SKRuntime.h */,
+                               CE09FC3B0E3886C100BDF413 /* SKRuntime.m */,
                                45A3BD060B4F0770002B297F /* SKStringConstants.h 
*/,
                                45A3BD070B4F0770002B297F /* SKStringConstants.m 
*/,
                                CE5BD6710C7ADF1500EBDCF7 /* 
SKTypeSelectHelper.h */,


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

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to