Browse Source

【左边栏】KMThumbnailTableviewCell OC转Swift

tangchao 1 year ago
parent
commit
a11a0e6762

+ 8 - 0
PDF Office/PDF Master.xcodeproj/project.pbxproj

@@ -3340,6 +3340,9 @@
 		BBC8A7642B05C93900FA9377 /* KMThumbnailTableView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBC8A7632B05C93900FA9377 /* KMThumbnailTableView.swift */; };
 		BBC8A7652B05C93900FA9377 /* KMThumbnailTableView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBC8A7632B05C93900FA9377 /* KMThumbnailTableView.swift */; };
 		BBC8A7662B05C93900FA9377 /* KMThumbnailTableView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBC8A7632B05C93900FA9377 /* KMThumbnailTableView.swift */; };
+		BBC8A7682B05EB8000FA9377 /* KMThumbnailTableviewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBC8A7672B05EB8000FA9377 /* KMThumbnailTableviewCell.swift */; };
+		BBC8A7692B05EB8000FA9377 /* KMThumbnailTableviewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBC8A7672B05EB8000FA9377 /* KMThumbnailTableviewCell.swift */; };
+		BBC8A76A2B05EB8000FA9377 /* KMThumbnailTableviewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBC8A7672B05EB8000FA9377 /* KMThumbnailTableviewCell.swift */; };
 		BBCE57102A72712200508EFC /* NSWindowController+KMExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBCE570F2A72712200508EFC /* NSWindowController+KMExtension.swift */; };
 		BBCE57112A72712200508EFC /* NSWindowController+KMExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBCE570F2A72712200508EFC /* NSWindowController+KMExtension.swift */; };
 		BBCE57122A72712200508EFC /* NSWindowController+KMExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBCE570F2A72712200508EFC /* NSWindowController+KMExtension.swift */; };
@@ -5070,6 +5073,7 @@
 		BBC8A75B2B05B55200FA9377 /* KMSegmentedControl.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMSegmentedControl.swift; sourceTree = "<group>"; };
 		BBC8A75F2B05C87600FA9377 /* KMBotaTableView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMBotaTableView.swift; sourceTree = "<group>"; };
 		BBC8A7632B05C93900FA9377 /* KMThumbnailTableView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMThumbnailTableView.swift; sourceTree = "<group>"; };
+		BBC8A7672B05EB8000FA9377 /* KMThumbnailTableviewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMThumbnailTableviewCell.swift; sourceTree = "<group>"; };
 		BBCE570F2A72712200508EFC /* NSWindowController+KMExtension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "NSWindowController+KMExtension.swift"; sourceTree = "<group>"; };
 		BBCE57132A72713A00508EFC /* NSViewController+KMExtension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "NSViewController+KMExtension.swift"; sourceTree = "<group>"; };
 		BBCE57172A72723600508EFC /* NSResponder+KMExtension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "NSResponder+KMExtension.swift"; sourceTree = "<group>"; };
@@ -5531,6 +5535,7 @@
 				BBC8A75B2B05B55200FA9377 /* KMSegmentedControl.swift */,
 				BBC8A75F2B05C87600FA9377 /* KMBotaTableView.swift */,
 				BBC8A7632B05C93900FA9377 /* KMThumbnailTableView.swift */,
+				BBC8A7672B05EB8000FA9377 /* KMThumbnailTableviewCell.swift */,
 				899700F128F40308009AF911 /* Annotation */,
 				899700F228F40308009AF911 /* BookMarks */,
 				899700F028F40308009AF911 /* From */,
@@ -11567,6 +11572,7 @@
 				AD02573A2A8601AA00EAD5D5 /* KMLoginManager.swift in Sources */,
 				BB332D532995D8B500CABB58 /* KMCloudDocumentTools.swift in Sources */,
 				BBA93D3329BF0ECE0044E0DD /* SKKeychain.m in Sources */,
+				BBC8A7682B05EB8000FA9377 /* KMThumbnailTableviewCell.swift in Sources */,
 				9F0CB5152986566D00007028 /* KMDesignToken+BorderRadiusTopLeft.swift in Sources */,
 				AD867F8629D94F5100F00440 /* KMBOTAOutlineView.swift in Sources */,
 				9F0CB535298656F900007028 /* KMDesignToken+BorderWidthLeft.swift in Sources */,
@@ -12646,6 +12652,7 @@
 				ADB5E51A2A3711CB007110A8 /* KMSubscribeWaterMarkView.swift in Sources */,
 				BB8F456E295AC1220037EA22 /* KMHeaderFooterAdjectiveModel.swift in Sources */,
 				F3599174292B62F5000D25DE /* CStringConstants.m in Sources */,
+				BBC8A7692B05EB8000FA9377 /* KMThumbnailTableviewCell.swift in Sources */,
 				89752DEB293875FC003FF08E /* KMMainToolbarController.swift in Sources */,
 				BB147012299DC0D100784A6A /* OIDError.m in Sources */,
 				9F1FE50E29407B2B00E952CA /* KMUploadFilePanel.swift in Sources */,
@@ -12961,6 +12968,7 @@
 				ADE86A942B0226AD00414DFA /* KMRemovePasswordView.swift in Sources */,
 				BB65A0562AF8B90F003A27A0 /* KMDisplayPreferences.swift in Sources */,
 				BB146FEC299DC0D100784A6A /* GTLRDuration.m in Sources */,
+				BBC8A76A2B05EB8000FA9377 /* KMThumbnailTableviewCell.swift in Sources */,
 				9FCFEC762AC56ECE00EAD2CB /* CPDFListStampAnnotation.swift in Sources */,
 				BBA388152AEF9A42004FE93F /* NSWindow+KMExtension.swift in Sources */,
 				9FD0D2A92AD4EFB000DA3FF8 /* KMSavePanelAccessoryController.swift in Sources */,

+ 47 - 0
PDF Office/PDF Master/Class/PDFWindowController/Side/LeftSide/KMThumbnailTableviewCell.swift

@@ -0,0 +1,47 @@
+//
+//  KMThumbnailTableviewCell.swift
+//  PDF Master
+//
+//  Created by tangchao on 2023/11/16.
+//
+
+import Cocoa
+
+class KMThumbnailTableviewCell: NSTableCellView {
+    @IBOutlet var thumBox: KMBox!
+    @IBOutlet var thumImage: NSImageView!
+    @IBOutlet var pageNumLabel: NSTextField!
+    @IBOutlet var sizeLabel: NSTextField!
+    @IBOutlet var labelView: NSView!
+    @IBOutlet var sizeTopConstant: NSLayoutConstraint!
+    @IBOutlet var imageAspectRatioLayout: NSLayoutConstraint!
+    
+    var isSelectCell = false {
+        didSet {
+            if (self.isSelectCell) {
+                self.thumImage.layer?.borderColor = KMAppearance.Interactive.a0Color().cgColor
+                self.thumImage.layer?.borderWidth = 1.0
+                self.labelView.layer?.backgroundColor = KMAppearance.Interactive.a0Color().cgColor
+                self.pageNumLabel.textColor = KMAppearance.Layout.w0Color()
+                self.sizeLabel.textColor = KMAppearance.Layout.w0Color()
+            } else {
+                self.thumImage.layer?.borderColor = KMAppearance.Layout.h2Color().cgColor
+                self.thumImage.layer?.borderWidth = 1.0
+                self.labelView.layer?.backgroundColor = .clear
+                self.pageNumLabel.textColor = KMAppearance.Layout.h0Color()
+                self.sizeLabel.textColor = KMAppearance.Layout.h0Color()
+            }
+        }
+    }
+    
+    override func awakeFromNib() {
+        super.awakeFromNib()
+        
+        self.wantsLayer = true
+        self.layer?.backgroundColor = .clear
+        self.layer?.cornerRadius = 0.0
+        
+        self.thumImage.wantsLayer = true
+        self.labelView.wantsLayer = true
+    }
+}