Revision: 15671
          http://sourceforge.net/p/skim-app/code/15671
Author:   hofman
Date:     2025-08-17 16:33:02 +0000 (Sun, 17 Aug 2025)
Log Message:
-----------
Move annotation type image cell code to view class files

Modified Paths:
--------------
    trunk/SKAnnotationTypeImageView.h
    trunk/SKAnnotationTypeImageView.m
    trunk/Skim.xcodeproj/project.pbxproj

Removed Paths:
-------------
    trunk/SKAnnotationTypeImageCell.h
    trunk/SKAnnotationTypeImageCell.m

Deleted: trunk/SKAnnotationTypeImageCell.h
===================================================================
--- trunk/SKAnnotationTypeImageCell.h   2025-08-17 16:27:05 UTC (rev 15670)
+++ trunk/SKAnnotationTypeImageCell.h   2025-08-17 16:33:02 UTC (rev 15671)
@@ -1,49 +0,0 @@
-//
-//  SKAnnotationTypeImageCell.h
-//  Skim
-//
-//  Created by Christiaan Hofman on 3/22/08.
-/*
- This software is Copyright (c) 2008
- Christiaan Hofman. All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- - Redistributions of source code must retain the above copyright
-   notice, this list of conditions and the following disclaimer.
-
- - Redistributions in binary form must reproduce the above copyright
-    notice, this list of conditions and the following disclaimer in
-    the documentation and/or other materials provided with the
-    distribution.
-
- - Neither the name of Christiaan Hofman nor the names of any
-    contributors may be used to endorse or promote products derived
-    from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#import <Cocoa/Cocoa.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface SKAnnotationTypeImageCell : NSImageCell {
-    BOOL hasOutline;
-}
-@property (nonatomic) BOOL hasOutline;
-@end
-
-NS_ASSUME_NONNULL_END

Deleted: trunk/SKAnnotationTypeImageCell.m
===================================================================
--- trunk/SKAnnotationTypeImageCell.m   2025-08-17 16:27:05 UTC (rev 15670)
+++ trunk/SKAnnotationTypeImageCell.m   2025-08-17 16:33:02 UTC (rev 15671)
@@ -1,94 +0,0 @@
-//
-//  SKAnnotationTypeImageCell.m
-//  Skim
-//
-//  Created by Christiaan Hofman on 3/22/08.
-/*
- This software is Copyright (c) 2008
- Christiaan Hofman. All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- - Redistributions of source code must retain the above copyright
-   notice, this list of conditions and the following disclaimer.
-
- - Redistributions in binary form must reproduce the above copyright
-    notice, this list of conditions and the following disclaimer in
-    the documentation and/or other materials provided with the
-    distribution.
-
- - Neither the name of Christiaan Hofman nor the names of any
-    contributors may be used to endorse or promote products derived
-    from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#import "SKAnnotationTypeImageCell.h"
-#import "NSImage_SKExtensions.h"
-#import "NSString_SKExtensions.h"
-#import <SkimNotes/SkimNotes.h>
-
-
-@implementation SKAnnotationTypeImageCell
-
-@synthesize hasOutline;
-
-static NSMutableDictionary *activeImages;
-
-+ (void)initialize {
-    SKINITIALIZE;
-    activeImages = [[NSMutableDictionary alloc] init];
-}
-
-- (instancetype)initWithCoder:(NSCoder *)decoder {
-    self = [super initWithCoder:decoder];
-    if (self) {
-        hasOutline = [decoder decodeBoolForKey:@"hasOutline"];
-    }
-    return self;
-}
-
-- (void)encodeWithCoder:(NSCoder *)coder {
-    [super encodeWithCoder:coder];
-    [coder encodeBool:hasOutline forKey:@"hasOutline"];
-}
-
-- (void)drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView {
-    [super drawWithFrame:cellFrame inView:controlView];
-    
-    if ([self hasOutline]) {
-        NSSize size = cellFrame.size;
-        size.height = fmin(size.width, size.height);
-        NSString *sizeKey = NSStringFromSize(size);
-        NSImage *image = [activeImages objectForKey:sizeKey];
-        if (image == nil) {
-            image = [NSImage imageWithSize:size drawingHandler:^(NSRect r){
-                [[NSColor blackColor] setStroke];
-                [NSBezierPath setDefaultLineWidth:1.0];
-                [NSBezierPath strokeRect:NSMakeRect(0.5, 1.5, NSWidth(r) - 
1.0, NSHeight(r) - 2.0)];
-                return YES;
-            }];
-            [image setTemplate:YES];
-            [activeImages setObject:image forKey:sizeKey];
-        }
-        id object = [self objectValue];
-        [self setObjectValue:image];
-        [super drawWithFrame:cellFrame inView:controlView];
-        [self setObjectValue:object];
-    }
-}
-
-@end

Modified: trunk/SKAnnotationTypeImageView.h
===================================================================
--- trunk/SKAnnotationTypeImageView.h   2025-08-17 16:27:05 UTC (rev 15670)
+++ trunk/SKAnnotationTypeImageView.h   2025-08-17 16:33:02 UTC (rev 15671)
@@ -2,9 +2,9 @@
 //  SKAnnotationTypeImageView.h
 //  Skim
 //
-//  Created by Christiaan Hofman on 23/04/2019.
+//  Created by Christiaan Hofman on 3/22/08.
 /*
- This software is Copyright (c) 2019
+ This software is Copyright (c) 2008
  Christiaan Hofman. All rights reserved.
  
  Redistribution and use in source and binary forms, with or without
@@ -46,4 +46,14 @@
 
 @end
 
+#pragma mark -
+
+@interface SKAnnotationTypeImageCell : NSImageCell {
+    BOOL hasOutline;
+}
+
+@property (nonatomic) BOOL hasOutline;
+
+@end
+
 NS_ASSUME_NONNULL_END

Modified: trunk/SKAnnotationTypeImageView.m
===================================================================
--- trunk/SKAnnotationTypeImageView.m   2025-08-17 16:27:05 UTC (rev 15670)
+++ trunk/SKAnnotationTypeImageView.m   2025-08-17 16:33:02 UTC (rev 15671)
@@ -2,9 +2,9 @@
 //  SKAnnotationTypeImageView.m
 //  Skim
 //
-//  Created by Christiaan Hofman on 23/04/2019.
+//  Created by Christiaan Hofman on 3/22/08.
 /*
- This software is Copyright (c) 2019
+ This software is Copyright (c) 2008
  Christiaan Hofman. All rights reserved.
  
  Redistribution and use in source and binary forms, with or without
@@ -37,7 +37,9 @@
  */
 
 #import "SKAnnotationTypeImageView.h"
-#import "SKAnnotationTypeImageCell.h"
+#import "NSImage_SKExtensions.h"
+#import "NSString_SKExtensions.h"
+#import <SkimNotes/SkimNotes.h>
 
 @implementation SKAnnotationTypeImageView
 
@@ -58,3 +60,56 @@
 }
 
 @end
+
+#pragma mark -
+
+@implementation SKAnnotationTypeImageCell
+
+@synthesize hasOutline;
+
+static NSMutableDictionary *activeImages;
+
++ (void)initialize {
+    SKINITIALIZE;
+    activeImages = [[NSMutableDictionary alloc] init];
+}
+
+- (instancetype)initWithCoder:(NSCoder *)decoder {
+    self = [super initWithCoder:decoder];
+    if (self) {
+        hasOutline = [decoder decodeBoolForKey:@"hasOutline"];
+    }
+    return self;
+}
+
+- (void)encodeWithCoder:(NSCoder *)coder {
+    [super encodeWithCoder:coder];
+    [coder encodeBool:hasOutline forKey:@"hasOutline"];
+}
+
+- (void)drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView {
+    [super drawWithFrame:cellFrame inView:controlView];
+    
+    if ([self hasOutline]) {
+        NSSize size = cellFrame.size;
+        size.height = fmin(size.width, size.height);
+        NSString *sizeKey = NSStringFromSize(size);
+        NSImage *image = [activeImages objectForKey:sizeKey];
+        if (image == nil) {
+            image = [NSImage imageWithSize:size drawingHandler:^(NSRect r){
+                [[NSColor blackColor] setStroke];
+                [NSBezierPath setDefaultLineWidth:1.0];
+                [NSBezierPath strokeRect:NSMakeRect(0.5, 1.5, NSWidth(r) - 
1.0, NSHeight(r) - 2.0)];
+                return YES;
+            }];
+            [image setTemplate:YES];
+            [activeImages setObject:image forKey:sizeKey];
+        }
+        id object = [self objectValue];
+        [self setObjectValue:image];
+        [super drawWithFrame:cellFrame inView:controlView];
+        [self setObjectValue:object];
+    }
+}
+
+@end

Modified: trunk/Skim.xcodeproj/project.pbxproj
===================================================================
--- trunk/Skim.xcodeproj/project.pbxproj        2025-08-17 16:27:05 UTC (rev 
15670)
+++ trunk/Skim.xcodeproj/project.pbxproj        2025-08-17 16:33:02 UTC (rev 
15671)
@@ -73,7 +73,6 @@
                CE19446710627483007E8770 /* ProgressSheet.xib in Resources */ = 
{isa = PBXBuildFile; fileRef = CE19446010627483007E8770 /* ProgressSheet.xib 
*/; };
                CE19446910627483007E8770 /* SnapshotWindow.xib in Resources */ 
= {isa = PBXBuildFile; fileRef = CE19446210627483007E8770 /* SnapshotWindow.xib 
*/; };
                CE19641516E811D40027E2CF /* SKSnapshotWindow.m in Sources */ = 
{isa = PBXBuildFile; fileRef = CE19641416E811D40027E2CF /* SKSnapshotWindow.m 
*/; };
-               CE199DFD0D957A16009B2055 /* SKAnnotationTypeImageCell.m in 
Sources */ = {isa = PBXBuildFile; fileRef = CE199DFC0D957A16009B2055 /* 
SKAnnotationTypeImageCell.m */; };
                CE19E7A9275B7BC1007EBD8B /* SKDisplayPrefs.m in Sources */ = 
{isa = PBXBuildFile; fileRef = CE19E7A8275B7BC1007EBD8B /* SKDisplayPrefs.m */; 
};
                CE1ADEBF0C4C341100071840 /* SKTransitionController.m in Sources 
*/ = {isa = PBXBuildFile; fileRef = CE1ADEBE0C4C341100071840 /* 
SKTransitionController.m */; };
                CE1C77B6123FB41E00C73F1A /* SKNoteTextView.m in Sources */ = 
{isa = PBXBuildFile; fileRef = CE1C77B5123FB41E00C73F1A /* SKNoteTextView.m */; 
};
@@ -828,8 +827,6 @@
                CE19446210627483007E8770 /* SnapshotWindow.xib */ = {isa = 
PBXFileReference; lastKnownFileType = file.xib; path = SnapshotWindow.xib; 
sourceTree = "<group>"; };
                CE19641316E811D40027E2CF /* SKSnapshotWindow.h */ = {isa = 
PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = 
SKSnapshotWindow.h; sourceTree = "<group>"; };
                CE19641416E811D40027E2CF /* SKSnapshotWindow.m */ = {isa = 
PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path 
= SKSnapshotWindow.m; sourceTree = "<group>"; };
-               CE199DFB0D957A16009B2055 /* SKAnnotationTypeImageCell.h */ = 
{isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; 
path = SKAnnotationTypeImageCell.h; sourceTree = "<group>"; };
-               CE199DFC0D957A16009B2055 /* SKAnnotationTypeImageCell.m */ = 
{isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = 
sourcecode.c.objc; path = SKAnnotationTypeImageCell.m; sourceTree = "<group>"; 
};
                CE19E7A7275B7BC1007EBD8B /* SKDisplayPrefs.h */ = {isa = 
PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SKDisplayPrefs.h; 
sourceTree = "<group>"; };
                CE19E7A8275B7BC1007EBD8B /* SKDisplayPrefs.m */ = {isa = 
PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = 
SKDisplayPrefs.m; sourceTree = "<group>"; };
                CE1ADB170C4BC6DE00071840 /* OpenGL.framework */ = {isa = 
PBXFileReference; lastKnownFileType = wrapper.framework; name = 
OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; 
sourceTree = "<absolute>"; };
@@ -1860,8 +1857,6 @@
                CE2DE4D10B85D92F00D0DA12 /* Views and Cells */ = {
                        isa = PBXGroup;
                        children = (
-                               CE199DFB0D957A16009B2055 /* 
SKAnnotationTypeImageCell.h */,
-                               CE199DFC0D957A16009B2055 /* 
SKAnnotationTypeImageCell.m */,
                                CE325590226F73810032390F /* 
SKAnnotationTypeImageView.h */,
                                CE325591226F73810032390F /* 
SKAnnotationTypeImageView.m */,
                                CEED148A2709EE4D00A8C4AA /* SKBasePDFView.h */,
@@ -2911,7 +2906,6 @@
                                CE2E9A592C14D2F300044B01 /* 
SKSnapshotConfiguration.m in Sources */,
                                CEA8FCD60D89C34A00E8A6F4 /* 
SKAnimatedBorderlessWindow.m in Sources */,
                                CEB4EC502D87409100CA01A1 /* 
SKNoteToolbarController.m in Sources */,
-                               CE199DFD0D957A16009B2055 /* 
SKAnnotationTypeImageCell.m in Sources */,
                                CEE54D880DA2E37B0037169F /* 
PDFAnnotation_SKExtensions.m in Sources */,
                                CEE54D930DA2E5E10037169F /* 
PDFAnnotationCircle_SKExtensions.m in Sources */,
                                CEE54D980DA2E6FC0037169F /* 
PDFAnnotationSquare_SKExtensions.m in Sources */,

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



_______________________________________________
Skim-app-commit mailing list
Skim-app-commit@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to