Browse Source

【属性面板】字体属性修改替换(KMAnnotationFontWindowController)

wanjun 1 year ago
parent
commit
379d204c72

+ 32 - 18
PDF Office/PDF Master.xcodeproj/project.pbxproj

@@ -196,12 +196,6 @@
 		89E4E6EF2963D1B7002DBA6F /* KMColorPickerViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 89E4E6EA2963D1B6002DBA6F /* KMColorPickerViewController.xib */; };
 		89E4E6F02963D1B7002DBA6F /* KMColorPickerViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 89E4E6EA2963D1B6002DBA6F /* KMColorPickerViewController.xib */; };
 		89E4E6F12963D1B7002DBA6F /* KMColorPickerViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 89E4E6EA2963D1B6002DBA6F /* KMColorPickerViewController.xib */; };
-		89E4E70B2963D62B002DBA6F /* KMAnnotationFontWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 89E4E7092963D62B002DBA6F /* KMAnnotationFontWindowController.xib */; };
-		89E4E70C2963D62B002DBA6F /* KMAnnotationFontWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 89E4E7092963D62B002DBA6F /* KMAnnotationFontWindowController.xib */; };
-		89E4E70D2963D62C002DBA6F /* KMAnnotationFontWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 89E4E7092963D62B002DBA6F /* KMAnnotationFontWindowController.xib */; };
-		89E4E70E2963D62C002DBA6F /* KMAnnotationFontWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 89E4E70A2963D62B002DBA6F /* KMAnnotationFontWindowController.m */; };
-		89E4E70F2963D62C002DBA6F /* KMAnnotationFontWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 89E4E70A2963D62B002DBA6F /* KMAnnotationFontWindowController.m */; };
-		89E4E7102963D62C002DBA6F /* KMAnnotationFontWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 89E4E70A2963D62B002DBA6F /* KMAnnotationFontWindowController.m */; };
 		89E4E72F2963FBA2002DBA6F /* KMPropertiesViewPopController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 89E4E72E2963FBA1002DBA6F /* KMPropertiesViewPopController.xib */; };
 		89E4E7302963FBA2002DBA6F /* KMPropertiesViewPopController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 89E4E72E2963FBA1002DBA6F /* KMPropertiesViewPopController.xib */; };
 		89E4E7312963FBA2002DBA6F /* KMPropertiesViewPopController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 89E4E72E2963FBA1002DBA6F /* KMPropertiesViewPopController.xib */; };
@@ -1057,6 +1051,15 @@
 		9FE0BBDE2B0E009F00CD1CAC /* KMColorPickerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FE0BBDD2B0E009F00CD1CAC /* KMColorPickerView.swift */; };
 		9FE0BBDF2B0E009F00CD1CAC /* KMColorPickerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FE0BBDD2B0E009F00CD1CAC /* KMColorPickerView.swift */; };
 		9FE0BBE02B0E009F00CD1CAC /* KMColorPickerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FE0BBDD2B0E009F00CD1CAC /* KMColorPickerView.swift */; };
+		9FE0BBE42B0EFBA300CD1CAC /* KMAnnotationFontWindowController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FE0BBE22B0EFBA300CD1CAC /* KMAnnotationFontWindowController.swift */; };
+		9FE0BBE52B0EFBA300CD1CAC /* KMAnnotationFontWindowController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FE0BBE22B0EFBA300CD1CAC /* KMAnnotationFontWindowController.swift */; };
+		9FE0BBE62B0EFBA300CD1CAC /* KMAnnotationFontWindowController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FE0BBE22B0EFBA300CD1CAC /* KMAnnotationFontWindowController.swift */; };
+		9FE0BBE72B0EFBA300CD1CAC /* KMAnnotationFontWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 9FE0BBE32B0EFBA300CD1CAC /* KMAnnotationFontWindowController.xib */; };
+		9FE0BBE82B0EFBA300CD1CAC /* KMAnnotationFontWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 9FE0BBE32B0EFBA300CD1CAC /* KMAnnotationFontWindowController.xib */; };
+		9FE0BBE92B0EFBA300CD1CAC /* KMAnnotationFontWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 9FE0BBE32B0EFBA300CD1CAC /* KMAnnotationFontWindowController.xib */; };
+		9FE0BBEB2B0F242C00CD1CAC /* NSUserDefaults_KMExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FE0BBEA2B0F242C00CD1CAC /* NSUserDefaults_KMExtension.swift */; };
+		9FE0BBEC2B0F242C00CD1CAC /* NSUserDefaults_KMExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FE0BBEA2B0F242C00CD1CAC /* NSUserDefaults_KMExtension.swift */; };
+		9FE0BBED2B0F242C00CD1CAC /* NSUserDefaults_KMExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FE0BBEA2B0F242C00CD1CAC /* NSUserDefaults_KMExtension.swift */; };
 		9FF816DD2AFA5B8E0087EFC5 /* KMAnnotationTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FF816DC2AFA5B8E0087EFC5 /* KMAnnotationTableViewController.swift */; };
 		9FF816DE2AFA5B8E0087EFC5 /* KMAnnotationTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FF816DC2AFA5B8E0087EFC5 /* KMAnnotationTableViewController.swift */; };
 		9FF816DF2AFA5B8E0087EFC5 /* KMAnnotationTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FF816DC2AFA5B8E0087EFC5 /* KMAnnotationTableViewController.swift */; };
@@ -4108,9 +4111,6 @@
 		89E4E6E92963D1B6002DBA6F /* KMColorPickerViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KMColorPickerViewController.m; sourceTree = "<group>"; };
 		89E4E6EA2963D1B6002DBA6F /* KMColorPickerViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = KMColorPickerViewController.xib; sourceTree = "<group>"; };
 		89E4E6EB2963D1B7002DBA6F /* KMColorPickerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KMColorPickerViewController.h; sourceTree = "<group>"; };
-		89E4E7082963D62B002DBA6F /* KMAnnotationFontWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KMAnnotationFontWindowController.h; sourceTree = "<group>"; };
-		89E4E7092963D62B002DBA6F /* KMAnnotationFontWindowController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = KMAnnotationFontWindowController.xib; sourceTree = "<group>"; };
-		89E4E70A2963D62B002DBA6F /* KMAnnotationFontWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KMAnnotationFontWindowController.m; sourceTree = "<group>"; };
 		89E4E72E2963FBA1002DBA6F /* KMPropertiesViewPopController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = KMPropertiesViewPopController.xib; sourceTree = "<group>"; };
 		89E4E7322964148E002DBA6F /* KMAnnotationPropertiesViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = KMAnnotationPropertiesViewController.h; path = "PDF Master/Class/PDFWindowController/Side/RightSide/AnnotationProperty/KMAnnotationPropertiesViewController.h"; sourceTree = SOURCE_ROOT; };
 		89E4E7332964148E002DBA6F /* KMAnnotationPropertiesViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = KMAnnotationPropertiesViewController.m; path = "PDF Master/Class/PDFWindowController/Side/RightSide/AnnotationProperty/KMAnnotationPropertiesViewController.m"; sourceTree = SOURCE_ROOT; };
@@ -4453,6 +4453,9 @@
 		9FDD0FB5295D5230000C4DAD /* KMToolbarController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMToolbarController.swift; sourceTree = "<group>"; };
 		9FDD0FB6295D5230000C4DAD /* KMToolbarController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = KMToolbarController.xib; sourceTree = "<group>"; };
 		9FE0BBDD2B0E009F00CD1CAC /* KMColorPickerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMColorPickerView.swift; sourceTree = "<group>"; };
+		9FE0BBE22B0EFBA300CD1CAC /* KMAnnotationFontWindowController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMAnnotationFontWindowController.swift; sourceTree = "<group>"; };
+		9FE0BBE32B0EFBA300CD1CAC /* KMAnnotationFontWindowController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = KMAnnotationFontWindowController.xib; sourceTree = "<group>"; };
+		9FE0BBEA2B0F242C00CD1CAC /* NSUserDefaults_KMExtension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NSUserDefaults_KMExtension.swift; sourceTree = "<group>"; };
 		9FF816DC2AFA5B8E0087EFC5 /* KMAnnotationTableViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMAnnotationTableViewController.swift; sourceTree = "<group>"; };
 		9FF816E02AFA5BA80087EFC5 /* KMAnnotationTableViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = KMAnnotationTableViewController.xib; sourceTree = "<group>"; };
 		9FF816E52AFA5D650087EFC5 /* KMTableAnnotation.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMTableAnnotation.swift; sourceTree = "<group>"; };
@@ -5998,9 +6001,6 @@
 				89E4E6EB2963D1B7002DBA6F /* KMColorPickerViewController.h */,
 				89E4E6E92963D1B6002DBA6F /* KMColorPickerViewController.m */,
 				89E4E6EA2963D1B6002DBA6F /* KMColorPickerViewController.xib */,
-				89E4E7082963D62B002DBA6F /* KMAnnotationFontWindowController.h */,
-				89E4E70A2963D62B002DBA6F /* KMAnnotationFontWindowController.m */,
-				89E4E7092963D62B002DBA6F /* KMAnnotationFontWindowController.xib */,
 				AD5999352AD7D9C200412F8B /* KMPropertiesViewPopController.swift */,
 				89E4E72E2963FBA1002DBA6F /* KMPropertiesViewPopController.xib */,
 				9F53D5562AD6908600CCF9D8 /* KMAnnotationLinkViewController.swift */,
@@ -6009,6 +6009,7 @@
 				9FF816E02AFA5BA80087EFC5 /* KMAnnotationTableViewController.xib */,
 				9FE0BBDD2B0E009F00CD1CAC /* KMColorPickerView.swift */,
 				9F0CB44C29667FC700007028 /* ViewController */,
+				9FE0BBE12B0EFB5600CD1CAC /* WindowController */,
 			);
 			path = AnnotationProperty;
 			sourceTree = "<group>";
@@ -6652,6 +6653,15 @@
 			path = Models;
 			sourceTree = "<group>";
 		};
+		9FE0BBE12B0EFB5600CD1CAC /* WindowController */ = {
+			isa = PBXGroup;
+			children = (
+				9FE0BBE22B0EFBA300CD1CAC /* KMAnnotationFontWindowController.swift */,
+				9FE0BBE32B0EFBA300CD1CAC /* KMAnnotationFontWindowController.xib */,
+			);
+			path = WindowController;
+			sourceTree = "<group>";
+		};
 		9FF816E42AFA5D400087EFC5 /* Table */ = {
 			isa = PBXGroup;
 			children = (
@@ -8272,6 +8282,7 @@
 				BB90E4ED2AF3546500B04B9F /* NSUserDefaultsController+KMExtension.swift */,
 				BB03D6932B021124008C9976 /* NSSegmentedControl+KMExtension.swift */,
 				BB03D6972B0221FF008C9976 /* NSImage+KMExtension.swift */,
+				9FE0BBEA2B0F242C00CD1CAC /* NSUserDefaults_KMExtension.swift */,
 			);
 			path = Category;
 			sourceTree = "<group>";
@@ -10737,6 +10748,7 @@
 				9F1F82CD292F6CF90092C4B4 /* KMPDFInsertPageWindow.xib in Resources */,
 				8997011928F40898009AF911 /* KMThumbnailViewController.xib in Resources */,
 				BBAFC83F2985194800D0648E /* KMPDFEditAppendWindow.xib in Resources */,
+				9FE0BBE72B0EFBA300CD1CAC /* KMAnnotationFontWindowController.xib in Resources */,
 				BB4F7E852B0C4E820077EC8C /* KMNoteFilterCollevtionViewItem.xib in Resources */,
 				9FA607E128FD4C9F00B46586 /* KMHomePopViewController.xib in Resources */,
 				9F0CB4B82977BC1000007028 /* KMPropertiesPanelPreviewSubVC.xib in Resources */,
@@ -10836,7 +10848,6 @@
 				BBF62C742B0347D1007B7E86 /* SplitWindowController.xib in Resources */,
 				ADD1B6BF2942DD3D00C3FFF7 /* KMPrintChooseView.xib in Resources */,
 				9F8539EB2947131F00DF644E /* KMChromiumTabView.xib in Resources */,
-				89E4E70B2963D62B002DBA6F /* KMAnnotationFontWindowController.xib in Resources */,
 				BB8F454A295A9CDC0037EA22 /* KMHeaderFooterListController.xib in Resources */,
 				9F853A082947137500DF644E /* newtab.pdf in Resources */,
 				8997011128F40842009AF911 /* KMOutlineViewController.xib in Resources */,
@@ -11176,7 +11187,6 @@
 				ADE86A852B0222B300414DFA /* KMSecurityView.xib in Resources */,
 				9F0CB48B29683DC400007028 /* KMPropertiesPanelPresetColorSubVC.xib in Resources */,
 				89D2D2FF294C806000BFF5FE /* KMPDFThumbnailItem.xib in Resources */,
-				89E4E70C2963D62B002DBA6F /* KMAnnotationFontWindowController.xib in Resources */,
 				ADE8BC3429F9261900570F89 /* KMSearchCellView.xib in Resources */,
 				8931684D296E436B0073EA59 /* KMSignatureWindowController.xib in Resources */,
 				9F8539DB294318D600DF644E /* TabsImage.xcassets in Resources */,
@@ -11216,6 +11226,7 @@
 				F356720929AF184A00740FF3 /* CPDFListAnnotationNoteWindowController.xib in Resources */,
 				9FDD0FA32952FF4D000C4DAD /* $themes.json in Resources */,
 				BB1BFF622AE9FA6C003EB179 /* KMBatchOperateBaseWindowController.xib in Resources */,
+				9FE0BBE82B0EFBA300CD1CAC /* KMAnnotationFontWindowController.xib in Resources */,
 				ADAFDA1D2AE8DD6600F084BC /* KMAdvertisementTableView.xib in Resources */,
 				9F0CB4B92977BC1000007028 /* KMPropertiesPanelPreviewSubVC.xib in Resources */,
 				BBF62C752B0347D1007B7E86 /* SplitWindowController.xib in Resources */,
@@ -11558,7 +11569,6 @@
 				BBEFD0222AF9E5BC003FABD8 /* KMBatchOperateAddHeaderFooterViewController.xib in Resources */,
 				899700ED28F3E4D3009AF911 /* MainWindowController.xib in Resources */,
 				BB65A0422AF8863F003A27A0 /* GeneralPreferences.xib in Resources */,
-				89E4E70D2963D62C002DBA6F /* KMAnnotationFontWindowController.xib in Resources */,
 				AD1D48152AFB1912007AC1F0 /* KMCompressView.xib in Resources */,
 				AD88109C29A78AEC00178CA1 /* KMVerificationCodeView.xib in Resources */,
 				89E4E7872967BF5A002DBA6F /* KMCustomizeStampViewController.xib in Resources */,
@@ -11654,6 +11664,7 @@
 				9FBC48BD299B44C600CA39D7 /* KMSecondaryViewController.xib in Resources */,
 				89752E092939DB42003FF08E /* KMToolbarViewController.xib in Resources */,
 				ADE86A862B0222B300414DFA /* KMSecurityView.xib in Resources */,
+				9FE0BBE92B0EFBA300CD1CAC /* KMAnnotationFontWindowController.xib in Resources */,
 				BBA8B7A82935CD740097D183 /* KMRemovePasswordAlertWindowController.xib in Resources */,
 				AD1CA4362A0640FC0070541F /* KMAnnotationScreenHeadView.xib in Resources */,
 				BBE9D09D2AF0CEEB002E83CE /* KMBatchOperateCompressViewController.xib in Resources */,
@@ -12217,7 +12228,6 @@
 				9F0CB4D52986551600007028 /* KMDesignToken+Spacing.swift in Sources */,
 				BBBB6CCA2AD109F30035AA66 /* CPDFAnnotation+PDFListView.swift in Sources */,
 				BB0A55102A302DB700B6E84B /* KMTextField.swift in Sources */,
-				89E4E70E2963D62C002DBA6F /* KMAnnotationFontWindowController.m in Sources */,
 				AD68782129A5FADC005B5210 /* KMLightMemberCache.swift in Sources */,
 				AD8F06172999DB5900D93CBC /* KMPrintDrawPage.swift in Sources */,
 				BB14702F299DC0D100784A6A /* OIDTokenUtilities.m in Sources */,
@@ -12330,6 +12340,7 @@
 				9F0CB4D12986550B00007028 /* KMDesignToken+Width.swift in Sources */,
 				BB8F457E295B00130037EA22 /* KMWatermarkAdjectiveTools.swift in Sources */,
 				AD1D484E2AFB8506007AC1F0 /* KMMergeTableViewCell.swift in Sources */,
+				9FE0BBEB2B0F242C00CD1CAC /* NSUserDefaults_KMExtension.swift in Sources */,
 				AD02573A2A8601AA00EAD5D5 /* KMLoginManager.swift in Sources */,
 				BB332D532995D8B500CABB58 /* KMCloudDocumentTools.swift in Sources */,
 				BBA93D3329BF0ECE0044E0DD /* SKKeychain.m in Sources */,
@@ -12528,6 +12539,7 @@
 				8942F817292B678100389627 /* KMAnnotationTableCellView.swift in Sources */,
 				BB1A91732AFB8D95005E5FD8 /* KMBookletMaskView.swift in Sources */,
 				9F1FE4F629406E4700E952CA /* CTFloatingBarBackingView.m in Sources */,
+				9FE0BBE42B0EFBA300CD1CAC /* KMAnnotationFontWindowController.swift in Sources */,
 				9F53D5532AD683A700CCF9D8 /* KMAnnotationPropertyBaseController.swift in Sources */,
 				AD8810A029A8459000178CA1 /* KMComparativeTableViewController.swift in Sources */,
 				BBEB93EF2AD6C72C00739573 /* KMPDFMergePageRangeTabelViewCell.swift in Sources */,
@@ -13107,6 +13119,7 @@
 				ADF6B8772A48155E0090CB78 /* KMComparativeViewCollectionItem.swift in Sources */,
 				9F0201972A1F352100C9B673 /* KMAITranslationConfirmWindowController.swift in Sources */,
 				BB147036299DC0D200784A6A /* OIDRegistrationResponse.m in Sources */,
+				9FE0BBE52B0EFBA300CD1CAC /* KMAnnotationFontWindowController.swift in Sources */,
 				9FDD0F8D2952FCE0000C4DAD /* KMGlobalParser.swift in Sources */,
 				ADE787AB2AA5A8D3002EC85A /* KMAccountExceptionView.swift in Sources */,
 				ADDEEA932AD796FF00EF675D /* KMSelfSignAnnotationFreeText.swift in Sources */,
@@ -13121,7 +13134,6 @@
 				ADE3C1E529A5ABC200793B13 /* KMLoginWindowController.swift in Sources */,
 				9F0CB4D62986551600007028 /* KMDesignToken+Spacing.swift in Sources */,
 				BB4A948E2B04726A00940F8B /* KMOCTool.m in Sources */,
-				89E4E70F2963D62C002DBA6F /* KMAnnotationFontWindowController.m in Sources */,
 				F3732324292DFFFE0013862C /* CPDFListView+Extension.m in Sources */,
 				ADB5E5132A371131007110A8 /* KMSubscribeWaterMarkWindowController.swift in Sources */,
 				AD68782229A5FADC005B5210 /* KMLightMemberCache.swift in Sources */,
@@ -13316,6 +13328,7 @@
 				AD88109329A7612000178CA1 /* KMRegisterModel.swift in Sources */,
 				ADBC2D20299CDA29006280C8 /* NSView+Layer.swift in Sources */,
 				AD1CA3F82A05FCB60070541F /* KMAnnotationScreenViewController.swift in Sources */,
+				9FE0BBEC2B0F242C00CD1CAC /* NSUserDefaults_KMExtension.swift in Sources */,
 				BB49ED07293F461500C82CA2 /* KMConvertCSVWindowController.swift in Sources */,
 				BB853C922AF8DCBF009C20C1 /* KMBatchOperateRemovePasswordViewController.swift in Sources */,
 				9FDD0F852952FC9C000C4DAD /* KMAliasLightParser.swift in Sources */,
@@ -13711,6 +13724,7 @@
 				BBB14A5D2978EBBE00936EDB /* KMRedactMutilPageFlagContentView.swift in Sources */,
 				BBF19E9B2B0B3218007154C8 /* KMAnnotationStamp.swift in Sources */,
 				8942F7C12923670F00389627 /* KMBOTAManagerClass.swift in Sources */,
+				9FE0BBED2B0F242C00CD1CAC /* NSUserDefaults_KMExtension.swift in Sources */,
 				BBBB6CDC2AD15B900035AA66 /* CPDFFreeTextAnnotation+PDFListView.swift in Sources */,
 				F37322F5292DF9410013862C /* CSelfSignAnnotationFreeText.m in Sources */,
 				AD5999382AD7D9C200412F8B /* KMPropertiesViewPopController.swift in Sources */,
@@ -13840,7 +13854,6 @@
 				BB65A07A2AF8E2F2003A27A0 /* KMSyncPreferences.swift in Sources */,
 				BB32BF252A5EA05900D11348 /* KMAnalytics.swift in Sources */,
 				ADAFDA1B2AE8DD6600F084BC /* KMAdvertisementTableView.swift in Sources */,
-				89E4E7102963D62C002DBA6F /* KMAnnotationFontWindowController.m in Sources */,
 				AD9527C0295294E20039D2BC /* KMPrintPageModel.swift in Sources */,
 				BBB14A6529792D6900936EDB /* KMRedactPageRangeContentView.swift in Sources */,
 				BBE9D0992AF0CECB002E83CE /* KMBatchOperateCompressViewController.swift in Sources */,
@@ -14013,6 +14026,7 @@
 				BB147016299DC0D100784A6A /* OIDAuthState.m in Sources */,
 				BBF8A3FF2AE8B04400788BAC /* KMBatchOperateFile.swift in Sources */,
 				BB897258294C559F0045787C /* KMWatermarkPropertyCreateController.swift in Sources */,
+				9FE0BBE62B0EFBA300CD1CAC /* KMAnnotationFontWindowController.swift in Sources */,
 				BB03D69E2B0249A2008C9976 /* KMPDFEditInsertPageWindow.swift in Sources */,
 				9F0CB5132986565700007028 /* KMDesignToken+BorderRadius.swift in Sources */,
 				BB86C1F428F54535005AD968 /* CPDFListView+KeyEvent.m in Sources */,

+ 51 - 0
PDF Office/PDF Master/Class/Common/Category/NSUserDefaults_KMExtension.swift

@@ -0,0 +1,51 @@
+//
+//  NSUserDefaults_KMExtension.swift
+//  PDF Master
+//
+//  Created by wanjun on 2023/11/23.
+//
+
+import Foundation
+
+extension UserDefaults {
+    func color(forKey key: String) -> NSColor? {
+        var color: NSColor?
+        
+        if let data = data(forKey: key) {
+            color = NSUnarchiver.unarchiveObject(with: data) as? NSColor
+        } else if let array = array(forKey: key), !array.isEmpty {
+            var red: CGFloat = 1.0, green: CGFloat = 1.0, blue: CGFloat = 1.0, alpha: CGFloat = 1.0
+            red = array[0] as? CGFloat ?? 0.0
+            green = array[0] as? CGFloat ?? 0.0
+            blue = array[0] as? CGFloat ?? 0.0
+            
+            if array.count > 2 {
+                green = array[1] as? CGFloat ?? 0.0
+                blue = array[2] as? CGFloat ?? 0.0
+            }
+            
+            if array.count == 2 {
+                alpha = array[1] as? CGFloat ?? 1.0
+            } else if array.count > 3 {
+                alpha = array[3] as? CGFloat ?? 1.0
+            }
+            color = NSColor(calibratedRed: red, green: green, blue: blue, alpha: alpha)
+        }
+        
+        return color
+    }
+    
+    func setColor(_ color: NSColor?, forKey key: String) {
+        let data = color.map { NSArchiver.archivedData(withRootObject: $0) }
+        set(data, forKey: key)
+    }
+    
+    func font(forNameKey nameKey: String, sizeKey: String) -> NSFont? {
+        guard let fontName = string(forKey: nameKey) else {
+            return nil
+        }
+        
+        let fontSize = CGFloat(double(forKey: sizeKey))
+        return NSFont(name: fontName, size: fontSize)
+    }
+}

+ 0 - 26
PDF Office/PDF Master/Class/PDFWindowController/Side/RightSide/AnnotationProperty/KMAnnotationFontWindowController.h

@@ -1,26 +0,0 @@
-//
-//  KMAnnotationFontWindowController.h
-//  SignFlow
-//
-//  Created by wanjun on 2021/6/22.
-//
-
-#import <Cocoa/Cocoa.h>
-#import "CPDFListView.h"
-#import "CPDFAnnotationModel.h"
-
-@interface KMAnnotationFontWindowController : NSWindowController
-
-+ (id)sharedAnnotationFont;
-
-@property (nonatomic,retain) CPDFAnnotationModel *annotationModel;
-
-@property (nonatomic,assign) CPDFListView *PDFListView;
-
-@property (nonatomic,assign) CPDFFreeTextAnnotation *annotationFreeText;
-
-@property (nonatomic,copy) void (^annotationAlignCallback) (NSInteger selectedCount);
-
-@property (nonatomic,copy) void (^annotationCallback) (CPDFAnnotation *annotation);
-
-@end

+ 0 - 392
PDF Office/PDF Master/Class/PDFWindowController/Side/RightSide/AnnotationProperty/KMAnnotationFontWindowController.m

@@ -1,392 +0,0 @@
-//
-//  KMAnnotationFontWindowController.m
-//  SignFlow
-//
-//  Created by wanjun on 2021/6/22.
-//
-
-#import "KMAnnotationFontWindowController.h"
-
-@interface KMAnnotationFontWindowController ()
-
-@property (assign) IBOutlet NSBox *lineBox;
-
-@property (assign) IBOutlet NSTextField *fontLabel;
-@property (assign) IBOutlet NSComboBox *fontComboBox;
-@property (assign) IBOutlet NSTextField *fontWeightLabel;
-@property (assign) IBOutlet NSPopUpButton *fontWeightPopUpButton;
-@property (assign) IBOutlet NSTextField *fontSizeLabel;
-@property (assign) IBOutlet NSPopUpButton *fontSizePopUpButton;
-@property (assign) IBOutlet NSTextField *fontColorLabel;
-@property (assign) IBOutlet NSColorWell *fontColorWell;
-
-@property (assign) IBOutlet NSTextField *fontAdjacencyLabel;
-@property (assign) IBOutlet NSBox *fontAdjacencyBox;
-@property (assign) IBOutlet NSTextField *fontAdjacencyBoxLabel;
-@property (assign) IBOutlet NSStepper *fontAdjacencyStepper;
-
-@property (assign) IBOutlet NSTextField *rowHeightLabel;
-@property (assign) IBOutlet NSBox *rowHeightBox;
-@property (assign) IBOutlet NSTextField *rowHeightBoxLabel;
-@property (assign) IBOutlet NSStepper *rowHeightStepper;
-
-@property (assign) IBOutlet NSTextField *alignmentLabel;
-@property (assign) IBOutlet NSSegmentedControl *alignmentSegmentedControl;
-
-@property (assign) IBOutlet NSLayoutConstraint *fontAdjacencyLayoutConstraint;
-@property (assign) IBOutlet NSLayoutConstraint *rowHeightLayoutConstraint;
-@property (assign) IBOutlet NSLayoutConstraint *alignmenBottomConstraint;
-
-@property (nonatomic, retain) NSMutableArray*fonts;
-
-@end
-
-static KMAnnotationFontWindowController *sharedAnnotationFont = nil;
-
-@implementation KMAnnotationFontWindowController
-
-- (void)dealloc {
-    [[NSNotificationCenter defaultCenter] removeObserver:self];
-}
-
-+ (id)sharedAnnotationFont {
-    if (sharedAnnotationFont == nil)
-        sharedAnnotationFont = [[self alloc] init];
-    return sharedAnnotationFont;
-}
-
-- (id)init {
-    self = [super initWithWindowNibName:@"KMAnnotationFontWindowController"];
-    if (self) {
-        
-    }
-    return self;
-}
-
-- (void)windowDidLoad {
-    [super windowDidLoad];
-    
-    self.fonts = [CPDFAnnotationModel supportFonts];
-    
-    self.window.title = NSLocalizedString(@"Fonts", nil);
-    
-    self.fontLabel.stringValue = [NSString stringWithFormat:@"%@:",NSLocalizedString(@"Fonts", nil)];
-    self.fontWeightLabel.stringValue = [NSString stringWithFormat:@"%@:",NSLocalizedString(@"Font Weight", nil)];
-    self.fontSizeLabel.stringValue = [NSString stringWithFormat:@"%@:",NSLocalizedString(@"Font Size", nil)];
-    self.fontColorLabel.stringValue = [NSString stringWithFormat:@"%@:",NSLocalizedString(@"Text Color", nil)];
-    self.fontAdjacencyLabel.stringValue = [NSString stringWithFormat:@"%@:",NSLocalizedString(@"Font Adjacency", nil)];
-    self.rowHeightLabel.stringValue = [NSString stringWithFormat:@"%@:",NSLocalizedString(@"Row Height", nil)];
-    self.alignmentLabel.stringValue = [NSString stringWithFormat:@"%@:",NSLocalizedString(@"Alignment", nil)];
-    if (@available(macOS 10.13, *)) {
-        [self.alignmentSegmentedControl setToolTip:NSLocalizedString(@"Left Alignment", nil) forSegment:0];
-        [self.alignmentSegmentedControl setToolTip:NSLocalizedString(@"Center", nil) forSegment:1];
-        [self.alignmentSegmentedControl setToolTip:NSLocalizedString(@"Right Alignment", nil) forSegment:2];
-    }
-    [self.alignmentSegmentedControl.cell setControlTint:NSClearControlTint];
-    self.fontAdjacencyStepper.hidden = YES;
-    self.rowHeightStepper.hidden = YES;
-    
-    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(alignmentTypeNotification:) name:@"KMAnnotationAlignmentTypeNotification" object:nil];
-    
-    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(fontTypeNotification:) name:@"KMAnnotationFontTypeNotification" object:nil];    
-}
-
-#pragma mark - View Methods
-
--(void)setAnnotationModel:(CPDFAnnotationModel *)annotationModel
-{
-    if (_annotationModel != annotationModel) {
-        _annotationModel = annotationModel;
-    }
-    [self reloadData];
-}
-
-- (void)reloadData {
-    NSFont *notefont = [NSFont fontWithName:self.annotationModel.fontName size:self.annotationModel.fontSize];
-    NSColor *noteColor = self.annotationModel.fontColor;
-    if (noteColor) {
-        CGFloat r, g, b, a = 0.0;
-        [[noteColor colorUsingColorSpaceName:NSDeviceRGBColorSpace] getRed:&r green:&g blue:&b alpha:&a];
-        noteColor = [NSColor colorWithRed:r green:g blue:b alpha:self.annotationModel.opacity];
-    }
-    if (CAnnotationTypeFreeText == self.annotationModel.annotationType ||
-        CAnnotationTypeSignText == self.annotationModel.annotationType ||
-        CAnnotationTypeSignDate == self.annotationModel.annotationType ||
-        CAnnotationTypeTextField  == self.annotationModel.annotationType) {
-        if (self.annotationModel.alignment == NSTextAlignmentLeft) {
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignLeftOtherSel"] forSegment:0];
-            if (@available(macOS 11.0, *))  {
-                [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignLeftSel"] forSegment:0];
-            }
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignCenterNor"] forSegment:1];
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignRightNor"] forSegment:2];
-            self.alignmentSegmentedControl.selectedSegment = 0;
-        } else if (self.annotationModel.alignment == NSTextAlignmentCenter) {
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignLeftNor"] forSegment:0];
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignCenterOtherSel"] forSegment:1];
-            if (@available(macOS 11.0, *))  {
-                [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignCenterSel"] forSegment:1];
-            }
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignRightNor"] forSegment:2];
-            self.alignmentSegmentedControl.selectedSegment = 1;
-        } else if (self.annotationModel.alignment == NSTextAlignmentRight) {
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignLeftNor"] forSegment:0];
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignCenterNor"] forSegment:1];
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignRightOtherSel"] forSegment:2];
-            if (@available(macOS 11.0, *))  {
-                [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignRightSel"] forSegment:2];
-            }
-            self.alignmentSegmentedControl.selectedSegment = 2;
-        } else if (self.annotationModel.alignment == NSTextAlignmentJustified) {
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignLeftNor"] forSegment:0];
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignCenterNor"] forSegment:1];
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignRightNor"] forSegment:2];
-            self.alignmentSegmentedControl.selectedSegment = 3;
-        }
-    }
-    
-    [self.fontWeightPopUpButton removeAllItems];
-    self.fontSizePopUpButton.title = [NSString stringWithFormat:@"%@ pt",@(notefont.pointSize)];
-    
-    NSDictionary * dic = nil;
-    NSMutableArray * fontNames = [NSMutableArray array];
-    for (NSUInteger i=0; i<self.fonts.count; i++) {
-        NSDictionary *fontDic = self.fonts[i];
-        NSString * fontName = fontDic.allKeys.firstObject?:@"Helvetica";
-        NSString * family =   [notefont.fontDescriptor objectForKey:NSFontFamilyAttribute];
-        [fontNames addObject:fontName];
-        if ([family isEqualToString:fontName]) {
-            dic = fontDic;
-        }
-    }
-    NSString * style =   [notefont.fontDescriptor objectForKey:NSFontFaceAttribute];
-    [self.fontComboBox removeAllItems];
-    [self.fontComboBox addItemsWithObjectValues:fontNames];
-        
-    if (dic) {
-        NSInteger selectedIndex = [self.fonts indexOfObject:dic];
-        [self.fontComboBox selectItemAtIndex:selectedIndex];
-
-        NSString * fontName = dic.allKeys.firstObject;
-        NSInteger selectIndex = [self setFontStyleWithFontName:fontName currentStyle:style];
-        if (selectIndex != -1) {
-            [self.fontWeightPopUpButton selectItemAtIndex:selectIndex];
-        } else {
-            [self.fontWeightPopUpButton setTitle:@""];
-        }
-    } else{
-        [self.fontWeightPopUpButton setTitle:@""];
-        [self.fontWeightPopUpButton setTitle:@""];
-    }
-    self.fontColorWell.color = noteColor?:[NSColor clearColor];
-    [[NSColorPanel sharedColorPanel] setTarget:self];
-    [[NSColorPanel sharedColorPanel] setAction:nil];
-    
-    self.fontAdjacencyLayoutConstraint.constant = self.fontAdjacencyStepper.hidden ? -self.fontAdjacencyStepper.frame.size.height : 16.0;
-    self.fontAdjacencyBox.hidden = self.fontAdjacencyStepper.hidden ? YES : NO;
-    self.fontAdjacencyLabel.hidden = self.fontAdjacencyStepper.hidden ? YES : NO;
-    self.rowHeightLayoutConstraint.constant = self.rowHeightStepper.hidden ? -self.rowHeightStepper.frame.size.height + 11.0 : 11.0;
-    self.rowHeightBox.hidden = self.rowHeightStepper.hidden ? YES : NO;
-    self.rowHeightLabel.hidden = self.rowHeightStepper.hidden ? YES : NO;
-    
-    if (CAnnotationTypeComboBox == self.annotationModel.annotationType || CAnnotationTypeListMenu == self.annotationModel.annotationType) {
-        self.alignmentSegmentedControl.hidden = self.alignmentLabel.hidden = self.lineBox.hidden = YES;
-        
-        self.alignmenBottomConstraint.constant = 0;
-    } else {
-        self.alignmentSegmentedControl.hidden = self.lineBox.hidden = self.alignmentLabel.hidden = NO;
-        self.alignmenBottomConstraint.constant = 46;
-
-    }
-}
-
-#pragma mark - private
-
--(NSUInteger)setFontStyleWithFontName:(NSString *)fontName currentStyle:(NSString *)style
-{
-    NSUInteger selectIndex = -1;
-    NSMenu *menu = [[NSMenu alloc] init];
-    for (NSDictionary *dic in self.fonts) {
-        NSString *familyString = dic.allKeys.firstObject;
-        if ([familyString isEqual:fontName]) {
-            NSArray *styles = [dic objectForKey:fontName];
-            for (NSUInteger i = 0; i < styles.count; i++) {
-                NSString * styleName = [styles objectAtIndex:i];
-                if ([style isEqualToString:styleName]) {
-                    selectIndex = i;
-                }
-                NSFontDescriptor *attributeFontDescriptor = [NSFontDescriptor fontDescriptorWithFontAttributes:@{NSFontFamilyAttribute:fontName,NSFontFaceAttribute:styleName}];
-                NSFont *font = [NSFont fontWithDescriptor:attributeFontDescriptor size:12.0];
-                NSDictionary *attrited = @{NSFontAttributeName:font};
-                NSAttributedString *string = [[NSAttributedString alloc] initWithString:styleName attributes:attrited];
-                NSMenuItem *item = [[NSMenuItem alloc] init];
-                item.attributedTitle = string;
-                
-                [menu addItem:item];
-            }
-            break;
-        }
-    }
-    if (!style) {
-        selectIndex = 0;
-    }
-    [self.fontWeightPopUpButton setMenu:menu];
-    
-    return selectIndex;
-}
-
-#pragma mark - Action
-
-- (IBAction)fontComboBoxAction:(NSComboBox *)sender {
-    NSInteger selectItem = [self.fontComboBox indexOfSelectedItem];
-    NSString * familyString = [self.fontComboBox itemObjectValueAtIndex:selectItem];
-    NSInteger selectIndex = [self setFontStyleWithFontName:familyString currentStyle:nil];
-    NSString * styleString = self.fontWeightPopUpButton.selectedItem.title;
-    if (selectIndex != -1) {
-        [self.fontWeightPopUpButton selectItemAtIndex:selectIndex];
-    }
-    
-    if (self.annotationFreeText) {
-        [self.annotationFreeText setFont:[NSFont fontWithName:[NSString stringWithFormat:@"%@-%@",familyString,[styleString stringByReplacingOccurrencesOfString:@" " withString:@""]] size:self.annotationFreeText.font.pointSize]];
-    } else {
-        self.annotationModel.fontName = [NSString stringWithFormat:@"%@-%@",familyString,[styleString stringByReplacingOccurrencesOfString:@" " withString:@""]];
-    }
-    if (self.annotationCallback) {
-        self.annotationCallback(self.annotationModel.annotation);
-    }
-}
-
-- (IBAction)fontSizeComboBoxAction:(NSPopUpButton *)sender
-{
-    CGFloat fontSize = [[self.fontSizePopUpButton.title stringByReplacingOccurrencesOfString:@" pt" withString:@""] floatValue];
-    if (self.annotationFreeText) {
-        [self.annotationFreeText setFont:[NSFont fontWithName:self.annotationFreeText.font.fontName size:fontSize]];
-    } else {
-        self.annotationModel.fontSize = fontSize;
-
-    }
-    if (self.annotationCallback) {
-        self.annotationCallback(self.annotationModel.annotation);
-    }
-}
-
-//字重 NSFontWeight
-- (IBAction)fontStylePopUpButtonAction:(NSPopUpButton *)sender {
-    NSString * styleString = self.fontWeightPopUpButton.selectedItem.title;
-    NSFont *font = [NSFont fontWithName:self.annotationModel.fontName size:self.annotationModel.fontSize];
-    NSString * familyString = [font.fontDescriptor objectForKey:NSFontFamilyAttribute];
-    if (self.annotationFreeText) {
-        [self.annotationFreeText setFont:[NSFont fontWithName:[NSString stringWithFormat:@"%@-%@",familyString,[styleString stringByReplacingOccurrencesOfString:@" " withString:@""]] size:self.annotationFreeText.font.pointSize]];
-    } else {
-        self.annotationModel.fontName = [NSString stringWithFormat:@"%@-%@",familyString,[styleString stringByReplacingOccurrencesOfString:@" " withString:@""]];
-    }
-    if (self.annotationCallback) {
-        self.annotationCallback(self.annotationModel.annotation);
-    }
-}
-
-- (IBAction)fontColorWellAction:(NSColorWell *)sender {
-    
-    NSColor *currentColor = sender.color;
-    CGFloat r, g, b, a = 0.0;
-    [[currentColor colorUsingColorSpaceName:NSDeviceRGBColorSpace] getRed:&r green:&g blue:&b alpha:&a];
-    if (self.annotationFreeText) {
-        if (fabs(a - 0) < 0.001) {
-            //设置透明色必须要设一个颜色值
-            self.annotationFreeText.fontColor = [NSColor blackColor];
-            self.annotationFreeText.opacity = 0;
-        } else {
-            self.annotationFreeText.fontColor = currentColor;
-            self.annotationFreeText.opacity = a;
-        }
-    } else {
-        if (fabs(a - 0) < 0.001) {
-            //设置透明色必须要设一个颜色值
-            self.annotationModel.fontColor = [NSColor blackColor];
-            self.annotationModel.opacity = 0;
-        } else {
-            self.annotationModel.fontColor = currentColor;
-            self.annotationModel.opacity = a;
-        }
-    }
-    if (self.annotationCallback) {
-        self.annotationCallback(self.annotationModel.annotation);
-    }
-}
-
-- (IBAction)alignButtonAction:(NSSegmentedControl *)sender {
-    NSInteger alignCount = [self reloadSegmentControlImage:sender.selectedSegment];
-    if (self.annotationFreeText) {
-        self.annotationFreeText.alignment = alignCount;
-    }
-    if (self.annotationAlignCallback) {
-        self.annotationAlignCallback(alignCount);
-    }
-}
-
-- (NSInteger)reloadSegmentControlImage:(NSInteger)selectedIndex {
-    NSInteger alignCount = 0;
-    switch (selectedIndex) {
-        case 0:
-            alignCount = 0;
-            self.annotationModel.alignment = NSTextAlignmentLeft;
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignLeftOtherSel"] forSegment:0];
-            if (@available(macOS 11.0, *))  {
-                [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignLeftSel"] forSegment:0];
-            }
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignCenterNor"] forSegment:1];
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignRightNor"] forSegment:2];
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignJustifyNor"] forSegment:3];
-            break;
-        case 1:
-            alignCount = 2;
-            self.annotationModel.alignment = NSTextAlignmentCenter;
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignLeftNor"] forSegment:0];
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignCenterOtherSel"] forSegment:1];
-            if (@available(macOS 11.0, *))  {
-                [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignCenterSel"] forSegment:1];
-            }
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignRightNor"] forSegment:2];
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignJustifyNor"] forSegment:3];
-            break;
-        case 2:
-            alignCount = 1;
-            self.annotationModel.alignment = NSTextAlignmentRight;
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignLeftNor"] forSegment:0];
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignCenterNor"] forSegment:1];
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignRightOtherSel"] forSegment:2];
-            if (@available(macOS 11.0, *))  {
-                [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignRightSel"] forSegment:2];
-            }
-            [self.alignmentSegmentedControl setImage:[NSImage imageNamed:@"KMImageNamePropertybarTextalignJustifyNor"] forSegment:3];
-            break;
-        default:
-            break;
-    }
-    return alignCount;
-}
-
-#pragma mark - notification
-
-- (void)alignmentTypeNotification:(NSNotification *)notification {
-    NSString *count = notification.object;
-    
-    if ([count isEqualToString:@"0"]) {
-        self.alignmentSegmentedControl.selectedSegment = 0;
-        
-    } else if ([count isEqualToString:@"1"]) {
-        self.alignmentSegmentedControl.selectedSegment = 2;
-    } else if ([count isEqualToString:@"2"]) {
-        self.alignmentSegmentedControl.selectedSegment = 1;
-    }
-    [self reloadSegmentControlImage:self.alignmentSegmentedControl.selectedSegment];
-}
-
-- (void)fontTypeNotification:(NSNotification *)notification
-{
-    if (notification.object == self.PDFListView) {
-        [self reloadData];
-    }
-}
-
-@end

+ 2 - 3
PDF Office/PDF Master/Class/PDFWindowController/Side/RightSide/AnnotationProperty/KMGeneralAnnotationViewController.m

@@ -7,7 +7,6 @@
 
 #import "KMGeneralAnnotationViewController.h"
 #import "KMColorPickerViewController.h"
-#import "KMAnnotationFontWindowController.h"
 #import "CPDFMarkupAnnotation+PDFListView.h"
 
 #import <PDF_Master-Swift.h>
@@ -1768,9 +1767,9 @@
 
 - (IBAction)currentFontColorButtonAction:(NSButton *)sender {
     KMAnnotationFontWindowController *fontWindowController = [KMAnnotationFontWindowController sharedAnnotationFont];
-    fontWindowController.PDFListView = self.pdfView;
+//    fontWindowController.PDFListView = self.pdfView;
     NSWindow *window = [fontWindowController window];
-    fontWindowController.annotationModel = self.annotationModel;
+//    fontWindowController.annotationModel = self.annotationModel;
     __block typeof(self) blockSelf = self;
 
     fontWindowController.annotationAlignCallback = ^(NSInteger selectedCount) {

+ 421 - 0
PDF Office/PDF Master/Class/PDFWindowController/Side/RightSide/AnnotationProperty/WindowController/KMAnnotationFontWindowController.swift

@@ -0,0 +1,421 @@
+//
+//  KMAnnotationFontWindowController.swift
+//  PDF Master
+//
+//  Created by wanjun on 2023/11/23.
+//
+
+import Cocoa
+
+@objcMembers class KMAnnotationFontWindowController: NSWindowController {
+    
+    static let sharedAnnotationFont: KMAnnotationFontWindowController = KMAnnotationFontWindowController()
+
+    var _annotations: [CPDFAnnotation]?
+
+    var annotationAlignCallback: ((Int) -> Void)?
+    var annotationCallback: ((CPDFAnnotation) -> Void)?
+    
+    @IBOutlet weak var fontLabel: NSTextField!
+    @IBOutlet weak var fontComboBox: NSComboBox!
+    @IBOutlet weak var fontWeightLabel: NSTextField!
+    @IBOutlet weak var fontWeightPopUpButton: NSPopUpButton!
+    @IBOutlet weak var fontSizeLabel: NSTextField!
+    @IBOutlet weak var fontSizePopUpButton: NSPopUpButton!
+    @IBOutlet weak var fontColorLabel: NSTextField!
+    @IBOutlet weak var fontColorWell: NSColorWell!
+
+    @IBOutlet weak var fontAdjacencyLabel: NSTextField!
+    @IBOutlet weak var fontAdjacencyBox: NSBox!
+    @IBOutlet weak var fontAdjacencyBoxLabel: NSTextField!
+    @IBOutlet weak var fontAdjacencyStepper: NSStepper!
+
+    @IBOutlet weak var rowHeightLabel: NSTextField!
+    @IBOutlet weak var rowHeightBox: NSBox!
+    @IBOutlet weak var rowHeightBoxLabel: NSTextField!
+    @IBOutlet weak var rowHeightStepper: NSStepper!
+
+    @IBOutlet weak var alignmentLabel: NSTextField!
+    @IBOutlet weak var alignmentSegmentedControl: NSSegmentedControl!
+
+    @IBOutlet var fontAdjacencyLayoutConstraint: NSLayoutConstraint!
+    @IBOutlet var rowHeightLayoutConstraint: NSLayoutConstraint!
+
+    var _annotation: CPDFAnnotation?
+    
+    // MARK: Init Methods
+    
+    deinit {
+        NotificationCenter.default.removeObserver(self)
+
+        if let textAnnotation = self.annotation as? CPDFTextAnnotation {
+            let keys: [String] = ["SKNPDFAnnotationStringKey", "SKNPDFAnnotationColorKey"]
+            for key in keys {
+                textAnnotation.removeObserver(self, forKeyPath: key)
+            }
+        } else {
+            let keys: [String] = ["SKNPDFAnnotationStringKey", "SKNPDFAnnotationColorKey", "SKNPDFAnnotationInteriorColorKey", "SKNPDFAnnotationBorderKey", "SKNPDFAnnotationFontKey", "SKNPDFAnnotationFontColorKey", "SKNPDFAnnotationAlignmentKey"]
+            for key in keys {
+                self.annotation.removeObserver(self, forKeyPath: key)
+            }
+        }
+    }
+    
+//    convenience init() {
+//        let windowNibName = NSNib.Name("KMAnnotationFontWindowController")
+//        self.init(windowNibName: "KMAnnotationFontWindowController")
+//    }
+//    
+//    required init?(coder: NSCoder) {
+//        super.init(coder: coder)
+//    }
+
+    override func windowDidLoad() {
+        super.windowDidLoad()
+
+        self.window?.title = NSLocalizedString("Fonts", comment: "")
+        
+        self.fontLabel.stringValue = String(format: "%@:", NSLocalizedString("Fonts", comment: ""))
+        self.fontWeightLabel.stringValue = String(format: "%@:", NSLocalizedString("Font Weight", comment: ""))
+        self.fontSizeLabel.stringValue = String(format: "%@:", NSLocalizedString("Font Size", comment: ""))
+        self.fontColorLabel.stringValue = String(format: "%@:", NSLocalizedString("Text Color", comment: ""))
+        self.fontAdjacencyLabel.stringValue = String(format: "%@:", NSLocalizedString("Font Adjacency", comment: ""))
+        self.rowHeightLabel.stringValue = String(format: "%@:", NSLocalizedString("Row Height", comment: ""))
+        self.alignmentLabel.stringValue = String(format: "%@:", NSLocalizedString("Alignment", comment: ""))
+        
+        if #available(macOS 10.13, *) {
+            self.alignmentSegmentedControl.setToolTip(NSLocalizedString("Left Alignment", comment: ""), forSegment: 0)
+            self.alignmentSegmentedControl.setToolTip(NSLocalizedString("Center", comment: ""), forSegment: 1)
+            self.alignmentSegmentedControl.setToolTip(NSLocalizedString("Right Alignment", comment: ""), forSegment: 2)
+        }
+        
+        self.fontAdjacencyStepper.isHidden = true
+        self.rowHeightStepper.isHidden = true
+        
+        NotificationCenter.default.addObserver(self, selector: #selector(alignmentTypeNotification(_:)), name: NSNotification.Name("KMAnnotationAlignmentTypeNotification"), object: nil)
+    }
+    
+    // MARK: Get、Set
+
+    var annotations: [CPDFAnnotation] {
+        set {
+            _annotations = newValue
+            
+            annotation = newValue.first!
+            self.reloadData()
+        }
+        get {
+            return _annotations!
+        }
+    }
+    
+    var annotation: CPDFAnnotation {
+        set {
+            let equal: Bool = ((_annotation?.isEqual(newValue)) != nil)
+            if equal {
+                if _annotation is CPDFTextAnnotation {
+                    let keys = ["SKNPDFAnnotationStringKey", "SKNPDFAnnotationColorKey"]
+                    for key in keys {
+                        _annotation?.removeObserver(self, forKeyPath: key)
+                    }
+                    _annotation = newValue
+                    for key in keys {
+                        _annotation?.addObserver(self, forKeyPath: key, options: [.new, .old], context: nil)
+                    }
+                } else {
+                    let keys = ["SKNPDFAnnotationStringKey", "SKNPDFAnnotationColorKey", "SKNPDFAnnotationInteriorColorKey", "SKNPDFAnnotationBorderKey", "SKNPDFAnnotationFontKey", "SKNPDFAnnotationFontColorKey", "SKNPDFAnnotationAlignmentKey"]
+                    for key in keys {
+                        _annotation?.removeObserver(self, forKeyPath: key)
+                    }
+                    _annotation = newValue
+                    for key in keys {
+                        _annotation?.addObserver(self, forKeyPath: key, options: [.new, .old], context: nil)
+                    }
+                }
+            }
+        }
+        get {
+            return _annotation!
+        }
+    }
+    
+    // MARK: private Method
+    
+    func reloadData() {
+        fontWeightPopUpButton.removeAllItems()
+        if annotation is CPDFFreeTextAnnotation {
+            fontSizePopUpButton.title = "\((annotation as! CPDFFreeTextAnnotation).font.pointSize) pt"
+        } else if annotation is CPDFWidgetAnnotation {
+            fontSizePopUpButton.title = "\((annotation as! CPDFWidgetAnnotation).font.pointSize) pt"
+        }
+
+        DispatchQueue.global(qos: .default).async {
+            let fonts = NSFontManager.shared.availableFontFamilies
+            var fontArr = [NSAttributedString]()
+            var selectedIndex = 0
+            let family = ""
+            let style = ""
+            if self.annotation is CPDFFreeTextAnnotation {
+                (self.annotation as! CPDFFreeTextAnnotation).font.fontDescriptor.object(forKey: .family)
+            } else if self.annotation is CPDFWidgetAnnotation {
+                (self.annotation as! CPDFWidgetAnnotation).font.fontDescriptor.object(forKey: .face)
+            }
+            
+            for (index, fontName) in fonts.enumerated() {
+                if let font = NSFont(name: fontName, size: 12.0) {
+                    let attributes: [NSAttributedString.Key: Any] = [.font: font]
+                    let string = NSAttributedString(string: fontName, attributes: attributes)
+                    fontArr.append(string)
+                    
+                    if self.annotation is CPDFFreeTextAnnotation {
+                        if (self.annotation as! CPDFFreeTextAnnotation).font.fontName == font.fontName {
+                            selectedIndex = index
+                        }
+                    } else if self.annotation is CPDFWidgetAnnotation {
+                        if (self.annotation as! CPDFWidgetAnnotation).font.fontName == font.fontName {
+                            selectedIndex = index
+                        }
+                    }
+                }
+            }
+            
+            DispatchQueue.main.async {
+                self.fontComboBox.addItems(withObjectValues: fontArr)
+                self.fontComboBox.selectItem(at: selectedIndex)
+                let selectedStyleIndex = self.setFontStyle(fontName: family, currentStyle: style)
+                self.fontWeightPopUpButton.selectItem(at: selectedStyleIndex)
+            }
+        }
+        
+        if annotation is CPDFFreeTextAnnotation {
+            fontColorWell.color = (annotation as! CPDFFreeTextAnnotation).fontColor ?? UserDefaults.standard.color(forKey: SKFreeTextNoteFontColorKey) ?? NSColor.black
+        } else if annotation is CPDFWidgetAnnotation {
+            fontColorWell.color = (annotation as! CPDFWidgetAnnotation).fontColor ?? UserDefaults.standard.color(forKey: SKFreeTextNoteFontColorKey) ?? NSColor.black
+        }
+        
+        if self.annotation is CPDFFreeTextAnnotation {
+            switch (self.annotation as! CPDFFreeTextAnnotation).alignment {
+            case NSTextAlignment.left:
+                alignmentSegmentedControl.selectedSegment = 0
+            case NSTextAlignment.center:
+                alignmentSegmentedControl.selectedSegment = 1
+            case NSTextAlignment.right:
+                alignmentSegmentedControl.selectedSegment = 2
+            default:
+                break
+            }
+        } else if self.annotation is CPDFTextWidgetAnnotation {
+            switch (self.annotation as! CPDFTextWidgetAnnotation).alignment {
+            case NSTextAlignment.left:
+                alignmentSegmentedControl.selectedSegment = 0
+            case NSTextAlignment.center:
+                alignmentSegmentedControl.selectedSegment = 1
+            case NSTextAlignment.right:
+                alignmentSegmentedControl.selectedSegment = 2
+            default:
+                break
+            }
+        }
+        
+        fontAdjacencyLayoutConstraint.constant = fontAdjacencyStepper.isHidden ? -fontAdjacencyStepper.frame.size.height : 16.0
+        fontAdjacencyBox.isHidden = fontAdjacencyStepper.isHidden
+        fontAdjacencyLabel.isHidden = fontAdjacencyStepper.isHidden
+        rowHeightLayoutConstraint.constant = rowHeightStepper.isHidden ? -rowHeightStepper.frame.size.height + 11.0 : 11.0
+        rowHeightBox.isHidden = rowHeightStepper.isHidden
+        rowHeightLabel.isHidden = rowHeightStepper.isHidden
+    }
+    
+    func setFontStyle(fontName: String, currentStyle style: String?) -> Int {
+        var selectIndex = 0
+        let menu = NSMenu()
+
+        if let fontFamily = NSFontManager.shared.availableMembers(ofFontFamily: fontName) {
+            for (index, array) in fontFamily.enumerated() {
+                let styleName = array[1] as! String
+
+                if style == styleName {
+                    selectIndex = index
+                }
+
+                let attributeFontDescriptor = NSFontDescriptor(fontAttributes: [
+                    NSFontDescriptor.AttributeName.family: fontName,
+                    NSFontDescriptor.AttributeName.face: styleName
+                ])
+                
+                if let font = NSFont(descriptor: attributeFontDescriptor, size: 12.0) {
+                    let attributedString = NSAttributedString(string: styleName, attributes: [NSAttributedString.Key.font: font])
+                    let item = NSMenuItem()
+                    item.attributedTitle = attributedString
+                    menu.addItem(item)
+                }
+            }
+        }
+
+        if style == nil {
+            selectIndex = 0
+        }
+
+        fontWeightPopUpButton.menu = menu
+
+        return selectIndex
+    }
+
+    // MARK: Action
+    
+    @IBAction func fontComboBoxAction(_ sender: NSComboBox) {
+        let selectItem = self.fontComboBox.indexOfSelectedItem
+        let resultAtt = NSMutableAttributedString(attributedString: self.fontComboBox.itemObjectValue(at: selectItem) as! NSAttributedString)
+        let familyString = resultAtt.string
+        let selectIndex = setFontStyle(fontName: familyString, currentStyle: nil)
+        let styleString = self.fontWeightPopUpButton.selectedItem?.title
+        self.fontWeightPopUpButton.selectItem(at: selectIndex)
+        
+        for tAnnotation in self.annotations {
+            if tAnnotation is CPDFFreeTextAnnotation {
+                if let font = (tAnnotation as! CPDFFreeTextAnnotation).font {
+                    if let fontSize = font.fontDescriptor.object(forKey: NSFontDescriptor.AttributeName.size) as? String {
+                        let attributeFontDescriptor = NSFontDescriptor(fontAttributes: [.family: familyString, .face: styleString as Any])
+                        if let newFont = NSFont(descriptor: attributeFontDescriptor, size: CGFloat((fontSize as NSString).floatValue)) {
+                            (tAnnotation as! CPDFFreeTextAnnotation).font = newFont
+                            if let annotationCallback = self.annotationCallback {
+                                annotationCallback(tAnnotation)
+                            }
+                        }
+                    }
+                }
+            } else if tAnnotation is CPDFWidgetAnnotation {
+                if let font = (tAnnotation as! CPDFWidgetAnnotation).font {
+                    if let fontSize = font.fontDescriptor.object(forKey: NSFontDescriptor.AttributeName.size) as? String {
+                        let attributeFontDescriptor = NSFontDescriptor(fontAttributes: [.family: familyString, .face: styleString as Any])
+                        if let newFont = NSFont(descriptor: attributeFontDescriptor, size: CGFloat((fontSize as NSString).floatValue)) {
+                            (tAnnotation as! CPDFWidgetAnnotation).font = newFont
+                            if let annotationCallback = self.annotationCallback {
+                                annotationCallback(tAnnotation)
+                            }
+                        }
+                    }
+                }
+            }
+        }
+    }
+    
+    @IBAction func fontSizeComboBoxAction(_ sender: NSPopUpButton) {
+        for tAnnotation in annotations {
+            if tAnnotation is CPDFFreeTextAnnotation {
+                if var font = (tAnnotation as! CPDFFreeTextAnnotation).font {
+                    let fontSizeString = fontSizePopUpButton.title.replacingOccurrences(of: " pt", with: "")
+                    if let fontSize = Float(fontSizeString) {
+                        font = NSFont(name: font.fontName, size: CGFloat(fontSize))!
+                        (tAnnotation as! CPDFFreeTextAnnotation).font = font
+                    }
+                }
+            } else if tAnnotation is CPDFWidgetAnnotation {
+                if var font = (tAnnotation as! CPDFWidgetAnnotation).font {
+                    let fontSizeString = fontSizePopUpButton.title.replacingOccurrences(of: " pt", with: "")
+                    if let fontSize = Float(fontSizeString) {
+                        font = NSFont(name: font.fontName, size: CGFloat(fontSize))!
+                        (tAnnotation as! CPDFWidgetAnnotation).font = font
+                    }
+                }
+            }
+            
+            if let annotationCallback = annotationCallback {
+                annotationCallback(tAnnotation)
+            }
+        }
+    }
+    
+    @IBAction func fontColorWellAction(_ sender: NSColorWell) {
+        for tAnnotation in annotations {
+            if tAnnotation is CPDFFreeTextAnnotation {
+                (tAnnotation as! CPDFFreeTextAnnotation).fontColor = sender.color
+            } else if tAnnotation is CPDFWidgetAnnotation {
+                (tAnnotation as! CPDFWidgetAnnotation).fontColor = sender.color
+            }
+            
+            if let annotationCallback = annotationCallback {
+                annotationCallback(tAnnotation)
+            }
+        }
+    }
+    
+    @IBAction func alignButtonAction(_ sender: NSSegmentedControl) {
+        var alignCount = 0
+        
+        for tAnnotation in self.annotations {
+            if tAnnotation is CPDFFreeTextAnnotation {
+                switch sender.selectedSegment {
+                case 0:
+                    alignCount = 0
+                    (tAnnotation as! CPDFFreeTextAnnotation).alignment = .left
+                case 1:
+                    alignCount = 2
+                    (tAnnotation as! CPDFFreeTextAnnotation).alignment = .center
+                case 2:
+                    alignCount = 1
+                    (tAnnotation as! CPDFFreeTextAnnotation).alignment = .right
+                default:
+                    break
+                }
+            } else if tAnnotation is CPDFTextWidgetAnnotation {
+                switch sender.selectedSegment {
+                case 0:
+                    alignCount = 0
+                    (tAnnotation as! CPDFTextWidgetAnnotation).alignment = .left
+                case 1:
+                    alignCount = 2
+                    (tAnnotation as! CPDFTextWidgetAnnotation).alignment = .center
+                case 2:
+                    alignCount = 1
+                    (tAnnotation as! CPDFTextWidgetAnnotation).alignment = .right
+                default:
+                    break
+                }
+            }
+        }
+        
+        self.annotationAlignCallback!(alignCount)
+    }
+    
+    // MARK: Notification
+    
+    // 监听属性变化
+    override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey: Any]?, context: UnsafeMutableRawPointer?) {
+        guard let observedObject = object as AnyObject?, observedObject !== self.annotation else {
+            return
+        }
+
+        let newValue = change?[.newKey] ?? NSNull()
+        let oldValue = change?[.oldKey] ?? NSNull()
+
+        if (newValue as AnyObject).isEqual(oldValue) {
+            return
+        }
+
+        if keyPath == "SKNPDFAnnotationStringKey" {
+            if let newValue = newValue as? NSNull {
+                return
+            }
+        } else {
+            reloadData()
+        }
+    }
+
+
+    // 处理对齐类型通知
+    @objc func alignmentTypeNotification(_ notification: Notification) {
+        if let count = notification.object as? String {
+            switch count {
+            case "0":
+                alignmentSegmentedControl.selectedSegment = 0
+            case "1":
+                alignmentSegmentedControl.selectedSegment = 1
+            case "2":
+                alignmentSegmentedControl.selectedSegment = 2
+            default:
+                break
+            }
+        }
+    }
+
+}

+ 166 - 168
PDF Office/PDF Master/Class/PDFWindowController/Side/RightSide/AnnotationProperty/KMAnnotationFontWindowController.xib

@@ -1,218 +1,216 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="21701" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="22154" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
     <dependencies>
         <deployment identifier="macosx"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="21701"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="22154"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <objects>
         <customObject id="-2" userLabel="File's Owner" customClass="KMAnnotationFontWindowController">
             <connections>
-                <outlet property="alignmenBottomConstraint" destination="ifC-nL-FOp" id="Yv5-f8-SHL"/>
-                <outlet property="alignmentLabel" destination="yM3-ZS-087" id="OXr-i8-J0h"/>
-                <outlet property="alignmentSegmentedControl" destination="7jq-TR-W7s" id="PG8-lT-xEh"/>
-                <outlet property="fontAdjacencyBox" destination="xGc-nd-fuY" id="1u7-6E-1lu"/>
-                <outlet property="fontAdjacencyBoxLabel" destination="BOn-ao-iBX" id="znt-ZP-pJj"/>
-                <outlet property="fontAdjacencyLabel" destination="qJT-vQ-EmO" id="SuQ-ep-WkF"/>
-                <outlet property="fontAdjacencyLayoutConstraint" destination="XHe-e0-Zm1" id="TLE-BM-Ws3"/>
-                <outlet property="fontAdjacencyStepper" destination="DKg-XP-x0D" id="hdp-Oh-eO4"/>
-                <outlet property="fontColorLabel" destination="BBf-jk-Xm2" id="Oo9-HI-lGb"/>
-                <outlet property="fontColorWell" destination="xpN-CJ-T5i" id="lrQ-sZ-JCd"/>
-                <outlet property="fontComboBox" destination="R5a-bN-hHZ" id="gU3-is-oZw"/>
-                <outlet property="fontLabel" destination="jsl-ec-Kmh" id="ZWL-b8-pNV"/>
-                <outlet property="fontSizeLabel" destination="QMe-0Z-1fa" id="jGb-6b-Rjl"/>
-                <outlet property="fontSizePopUpButton" destination="i5V-aZ-DXU" id="kSP-kY-Zg1"/>
-                <outlet property="fontWeightLabel" destination="Y8o-MY-zpv" id="wz6-FZ-iPj"/>
-                <outlet property="fontWeightPopUpButton" destination="rzk-ZV-GOR" id="aEr-wJ-JIQ"/>
-                <outlet property="lineBox" destination="gOl-23-Gqk" id="Kxy-il-DAQ"/>
-                <outlet property="rowHeightBox" destination="BBG-OF-hi2" id="PRi-aD-B1Z"/>
-                <outlet property="rowHeightBoxLabel" destination="ohm-sC-y9Z" id="tir-gy-SaI"/>
-                <outlet property="rowHeightLabel" destination="FzJ-lr-Xz1" id="cYk-de-1je"/>
-                <outlet property="rowHeightLayoutConstraint" destination="P2d-MG-3BF" id="cia-Iu-YWL"/>
-                <outlet property="rowHeightStepper" destination="inX-yA-O3r" id="bZv-y1-f81"/>
-                <outlet property="window" destination="kRX-QE-S82" id="slz-s6-8Cc"/>
+                <outlet property="alignmentLabel" destination="xo7-Zs-RAb" id="qhq-Jx-dil"/>
+                <outlet property="alignmentSegmentedControl" destination="SWb-WB-pCD" id="l29-0d-UtH"/>
+                <outlet property="fontAdjacencyBox" destination="mkq-tP-OV8" id="hUF-61-9Lp"/>
+                <outlet property="fontAdjacencyBoxLabel" destination="zSM-Yf-psu" id="3Lj-g2-SHN"/>
+                <outlet property="fontAdjacencyLabel" destination="xZM-dY-h7m" id="46E-Xj-zJj"/>
+                <outlet property="fontAdjacencyLayoutConstraint" destination="COJ-2b-5nQ" id="YKZ-Vn-xJH"/>
+                <outlet property="fontAdjacencyStepper" destination="YgB-Pm-ky4" id="kFi-1A-3zs"/>
+                <outlet property="fontColorLabel" destination="Y0N-Ul-Rea" id="W9J-eF-6UY"/>
+                <outlet property="fontColorWell" destination="fSR-Bo-FzI" id="gX5-H2-UPx"/>
+                <outlet property="fontComboBox" destination="XsA-7q-bua" id="T2S-ZS-vid"/>
+                <outlet property="fontLabel" destination="ybg-Nv-rkt" id="fN9-gG-CTl"/>
+                <outlet property="fontSizeLabel" destination="9Rk-g1-Xrs" id="mWv-zz-QqN"/>
+                <outlet property="fontSizePopUpButton" destination="o1W-ZF-J5W" id="OoW-oT-i60"/>
+                <outlet property="fontWeightLabel" destination="0c7-6E-XyK" id="5eX-Da-SpT"/>
+                <outlet property="fontWeightPopUpButton" destination="TdO-WK-7Jh" id="Kfn-rF-vQb"/>
+                <outlet property="rowHeightBox" destination="Eow-bK-20p" id="BTi-8f-f5F"/>
+                <outlet property="rowHeightBoxLabel" destination="Dwk-uZ-J1o" id="zUP-ha-9JN"/>
+                <outlet property="rowHeightLabel" destination="05x-hP-LJ9" id="Ukd-gA-apm"/>
+                <outlet property="rowHeightLayoutConstraint" destination="HA9-Ph-1VB" id="0Fz-5L-M6m"/>
+                <outlet property="rowHeightStepper" destination="mep-7M-OI9" id="59k-gp-Ba0"/>
+                <outlet property="window" destination="F0z-JX-Cv5" id="gIp-Ho-8D9"/>
             </connections>
         </customObject>
         <customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
         <customObject id="-3" userLabel="Application" customClass="NSObject"/>
-        <window title="Window" allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" releasedWhenClosed="NO" animationBehavior="default" id="kRX-QE-S82">
+        <window title="Window" allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" releasedWhenClosed="NO" animationBehavior="default" id="F0z-JX-Cv5">
             <windowStyleMask key="styleMask" titled="YES" closable="YES"/>
             <windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
-            <rect key="contentRect" x="1181" y="567" width="249" height="262"/>
+            <rect key="contentRect" x="1054" y="583" width="249" height="262"/>
             <rect key="screenRect" x="0.0" y="0.0" width="2560" height="1415"/>
-            <view key="contentView" id="yav-Qh-09W">
+            <view key="contentView" id="se5-gp-TjO">
                 <rect key="frame" x="0.0" y="0.0" width="249" height="262"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
-                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="jsl-ec-Kmh">
+                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="ybg-Nv-rkt">
                         <rect key="frame" x="18" y="228" width="37" height="16"/>
-                        <textFieldCell key="cell" lineBreakMode="clipping" alignment="right" title="Label" id="WmR-Km-YQP">
+                        <textFieldCell key="cell" lineBreakMode="clipping" alignment="right" title="Label" id="AQ3-fN-SBn">
                             <font key="font" usesAppearanceFont="YES"/>
                             <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                             <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
                         </textFieldCell>
                     </textField>
-                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Y8o-MY-zpv">
+                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="0c7-6E-XyK">
                         <rect key="frame" x="18" y="197" width="37" height="16"/>
-                        <textFieldCell key="cell" lineBreakMode="clipping" alignment="right" title="Label" id="oHn-bu-9oE">
+                        <textFieldCell key="cell" lineBreakMode="clipping" alignment="right" title="Label" id="gEe-3q-Iu1">
                             <font key="font" usesAppearanceFont="YES"/>
                             <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                             <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
                         </textFieldCell>
                     </textField>
-                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="QMe-0Z-1fa">
+                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="9Rk-g1-Xrs">
                         <rect key="frame" x="18" y="166" width="37" height="16"/>
-                        <textFieldCell key="cell" lineBreakMode="clipping" alignment="right" title="Label" id="KGy-nS-EwD">
+                        <textFieldCell key="cell" lineBreakMode="clipping" alignment="right" title="Label" id="h64-tM-gDz">
                             <font key="font" usesAppearanceFont="YES"/>
                             <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                             <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
                         </textFieldCell>
                     </textField>
-                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="BBf-jk-Xm2">
+                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Y0N-Ul-Rea">
                         <rect key="frame" x="18" y="134" width="37" height="16"/>
-                        <textFieldCell key="cell" lineBreakMode="clipping" alignment="right" title="Label" id="XiV-VW-KcJ">
+                        <textFieldCell key="cell" lineBreakMode="clipping" alignment="right" title="Label" id="7N2-ad-8Aa">
                             <font key="font" usesAppearanceFont="YES"/>
                             <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                             <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
                         </textFieldCell>
                     </textField>
-                    <comboBox verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="R5a-bN-hHZ">
+                    <comboBox focusRingType="none" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="XsA-7q-bua">
                         <rect key="frame" x="57" y="224" width="175" height="23"/>
-                        <comboBoxCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" sendsActionOnEndEditing="YES" borderStyle="bezel" alignment="left" drawsBackground="YES" completes="NO" numberOfVisibleItems="5" id="wxS-Cn-qxo">
+                        <comboBoxCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" sendsActionOnEndEditing="YES" borderStyle="bezel" alignment="left" drawsBackground="YES" completes="NO" numberOfVisibleItems="5" id="FxG-tE-BIa">
                             <font key="font" metaFont="system"/>
                             <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                             <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
                         </comboBoxCell>
                         <connections>
-                            <action selector="fontComboBoxAction:" target="-2" id="t9j-1X-Pjs"/>
+                            <action selector="fontComboBoxAction:" target="-2" id="nnK-cd-ZzB"/>
                         </connections>
                     </comboBox>
-                    <popUpButton verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="rzk-ZV-GOR">
+                    <popUpButton verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="TdO-WK-7Jh">
                         <rect key="frame" x="55" y="191" width="178" height="25"/>
-                        <popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="31e-6I-Ttd" id="qBU-uC-7wb">
+                        <popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="1Jz-ZD-7uu" id="kFU-T6-1Fq">
                             <behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
                             <font key="font" metaFont="menu"/>
-                            <menu key="menu" id="cpU-rw-lxP">
+                            <menu key="menu" id="VZx-mz-ntR">
                                 <items>
-                                    <menuItem title="Item 1" state="on" id="31e-6I-Ttd"/>
-                                    <menuItem title="Item 2" id="FdN-C0-ra9"/>
-                                    <menuItem title="Item 3" id="vJW-bB-QtV"/>
+                                    <menuItem title="Item 1" state="on" id="1Jz-ZD-7uu"/>
+                                    <menuItem title="Item 2" id="n8O-P1-stx"/>
+                                    <menuItem title="Item 3" id="fNL-x0-BIJ"/>
                                 </items>
                             </menu>
                         </popUpButtonCell>
                         <connections>
-                            <action selector="fontStylePopUpButtonAction:" target="-2" id="Gxq-AC-C8v"/>
+                            <action selector="fontStylePopUpButtonAction:" target="-2" id="ofs-p2-wRe"/>
                         </connections>
                     </popUpButton>
-                    <popUpButton verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="i5V-aZ-DXU">
+                    <popUpButton verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="o1W-ZF-J5W">
                         <rect key="frame" x="55" y="160" width="178" height="25"/>
-                        <popUpButtonCell key="cell" type="push" title="4 pt" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="Kj1-lA-XPF" id="Njk-pZ-3rt">
+                        <popUpButtonCell key="cell" type="push" title="4 pt" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="5T9-7W-9gM" id="tWn-DG-S2f">
                             <behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
                             <font key="font" metaFont="menu"/>
-                            <menu key="menu" id="3ON-9J-f04">
+                            <menu key="menu" id="5yc-aY-i9u">
                                 <items>
-                                    <menuItem title="4 pt" state="on" id="Kj1-lA-XPF"/>
-                                    <menuItem title="6 pt" id="Mvm-kn-U68"/>
-                                    <menuItem title="8 pt" id="WeO-6Y-FIo"/>
-                                    <menuItem title="9 pt" id="MKd-cF-GFb"/>
-                                    <menuItem title="10 pt" id="HRo-5c-g00"/>
-                                    <menuItem title="11 pt" id="Q6f-wg-QSM"/>
-                                    <menuItem title="12 pt" id="SEB-wX-HZo"/>
-                                    <menuItem title="13 pt" id="fDg-UZ-zmz"/>
-                                    <menuItem title="14 pt" id="GSa-nV-BDu"/>
-                                    <menuItem title="15 pt" id="0Qq-3c-wmI"/>
-                                    <menuItem title="16 pt" id="5uW-HU-jJf"/>
-                                    <menuItem title="17 pt" id="dpy-nv-XpP"/>
-                                    <menuItem title="18 pt" id="1bO-Ky-OCa"/>
-                                    <menuItem title="24 pt" id="Oig-hp-hcM"/>
-                                    <menuItem title="36 pt" id="pgP-yc-QAx"/>
-                                    <menuItem title="48 pt" id="zC7-wi-YDv"/>
-                                    <menuItem title="64 pt" id="K2L-iY-4gn"/>
-                                    <menuItem title="72 pt" id="yh0-2u-gsb"/>
-                                    <menuItem title="98 pt" id="sKg-4f-8yQ"/>
-                                    <menuItem title="144 pt" id="bM3-GH-lP3"/>
-                                    <menuItem title="288 pt" id="Dbv-Nf-oTJ"/>
+                                    <menuItem title="4 pt" state="on" id="5T9-7W-9gM"/>
+                                    <menuItem title="6 pt" id="6aK-uI-1m9"/>
+                                    <menuItem title="8 pt" id="K5x-2C-3gv"/>
+                                    <menuItem title="9 pt" id="vXt-mC-BAC"/>
+                                    <menuItem title="10 pt" id="d2P-8t-E3J"/>
+                                    <menuItem title="11 pt" id="pIr-Wa-Q8H"/>
+                                    <menuItem title="12 pt" id="yhd-x6-xNR"/>
+                                    <menuItem title="13 pt" id="KQG-s5-tKb"/>
+                                    <menuItem title="14 pt" id="kqq-uA-ysL"/>
+                                    <menuItem title="15 pt" id="6eT-Pa-tnN"/>
+                                    <menuItem title="16 pt" id="WoM-rj-4nu"/>
+                                    <menuItem title="17 pt" id="g2d-tQ-pvv"/>
+                                    <menuItem title="18 pt" id="vG5-zj-ctr"/>
+                                    <menuItem title="24 pt" id="0gw-pD-ftB"/>
+                                    <menuItem title="36 pt" id="IMt-LZ-8y6"/>
+                                    <menuItem title="48 pt" id="LoH-DX-WKF"/>
+                                    <menuItem title="64 pt" id="C0t-bK-SSb"/>
+                                    <menuItem title="72 pt" id="Ef5-Sa-52o"/>
+                                    <menuItem title="98 pt" id="EUG-KC-seO"/>
+                                    <menuItem title="144 pt" id="V9w-ou-N6d"/>
+                                    <menuItem title="288 pt" id="b8z-bE-Xfy"/>
                                 </items>
                             </menu>
                         </popUpButtonCell>
                         <connections>
-                            <action selector="fontSizeComboBoxAction:" target="-2" id="D96-fD-cfY"/>
+                            <action selector="fontSizeComboBoxAction:" target="-2" id="cON-by-FON"/>
                         </connections>
                     </popUpButton>
-                    <colorWell translatesAutoresizingMaskIntoConstraints="NO" id="xpN-CJ-T5i">
+                    <colorWell translatesAutoresizingMaskIntoConstraints="NO" id="fSR-Bo-FzI">
                         <rect key="frame" x="55" y="128" width="50" height="27"/>
                         <constraints>
-                            <constraint firstAttribute="height" constant="23" id="FUF-Jc-A2s"/>
-                            <constraint firstAttribute="width" constant="44" id="rTG-80-9uA"/>
+                            <constraint firstAttribute="height" constant="23" id="SPI-iZ-kt7"/>
+                            <constraint firstAttribute="width" constant="44" id="qVM-NW-g2e"/>
                         </constraints>
                         <color key="color" red="0.05813049898" green="0.055541899059999997" blue="1" alpha="1" colorSpace="calibratedRGB"/>
                         <connections>
-                            <action selector="fontColorWellAction:" target="-2" id="Dj4-df-MBd"/>
+                            <action selector="fontColorWellAction:" target="-2" id="Ntt-hX-TLC"/>
                         </connections>
                     </colorWell>
-                    <box verticalHuggingPriority="750" boxType="separator" translatesAutoresizingMaskIntoConstraints="NO" id="gOl-23-Gqk">
+                    <box verticalHuggingPriority="750" boxType="separator" translatesAutoresizingMaskIntoConstraints="NO" id="IWB-3a-i7e">
                         <rect key="frame" x="16" y="111" width="217" height="6"/>
                         <constraints>
-                            <constraint firstAttribute="height" constant="2" id="jKm-Ic-mhl"/>
+                            <constraint firstAttribute="height" constant="2" id="SwL-oy-l5z"/>
                         </constraints>
                     </box>
-                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="qJT-vQ-EmO">
+                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="xZM-dY-h7m">
                         <rect key="frame" x="18" y="79" width="37" height="16"/>
-                        <textFieldCell key="cell" lineBreakMode="clipping" alignment="right" title="Label" id="vEW-1U-GVH">
+                        <textFieldCell key="cell" lineBreakMode="clipping" alignment="right" title="Label" id="7Bo-B5-k9n">
                             <font key="font" usesAppearanceFont="YES"/>
                             <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                             <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
                         </textFieldCell>
                     </textField>
-                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="FzJ-lr-Xz1">
+                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="05x-hP-LJ9">
                         <rect key="frame" x="18" y="48" width="37" height="16"/>
-                        <textFieldCell key="cell" lineBreakMode="clipping" alignment="right" title="Label" id="GbH-C1-Tjw">
+                        <textFieldCell key="cell" lineBreakMode="clipping" alignment="right" title="Label" id="Zh5-Nc-gjE">
                             <font key="font" usesAppearanceFont="YES"/>
                             <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                             <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
                         </textFieldCell>
                     </textField>
-                    <segmentedControl verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="7jq-TR-W7s">
-                        <rect key="frame" x="56" y="15" width="169" height="21"/>
+                    <segmentedControl verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="SWb-WB-pCD">
+                        <rect key="frame" x="56" y="15" width="157" height="21"/>
                         <constraints>
-                            <constraint firstAttribute="height" constant="19" id="WwE-Sy-xvy"/>
+                            <constraint firstAttribute="height" constant="19" id="7VB-Qh-VJo"/>
                         </constraints>
-                        <segmentedCell key="cell" borderStyle="border" alignment="left" style="rounded" trackingMode="selectOne" id="jNC-se-UmL">
+                        <segmentedCell key="cell" borderStyle="border" alignment="left" style="rounded" trackingMode="selectOne" id="Ex6-2I-qLh">
                             <font key="font" metaFont="system"/>
                             <segments>
-                                <segment image="KMImageNamePropertybarTextalignLeftSel" width="32"/>
-                                <segment image="KMImageNamePropertybarTextalignCenterSel" width="32" selected="YES" tag="1"/>
-                                <segment image="KMImageNamePropertybarTextalignRightSel" width="32"/>
+                                <segment image="KMImageNameUXIconPropertybarTextalignLeftSel" width="32"/>
+                                <segment image="KMImageNameUXIconPropertybarTextalignCenterSel" width="32" selected="YES" tag="1"/>
+                                <segment image="KMImageNameUXIconPropertybarTextalignRightSel" width="32"/>
                             </segments>
                         </segmentedCell>
                         <connections>
-                            <action selector="alignButtonAction:" target="-2" id="PVV-Tc-fx9"/>
+                            <action selector="alignButtonAction:" target="-2" id="ZYh-TB-Z01"/>
                         </connections>
                     </segmentedControl>
-                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="yM3-ZS-087">
+                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="xo7-Zs-RAb">
                         <rect key="frame" x="18" y="18" width="37" height="16"/>
-                        <textFieldCell key="cell" lineBreakMode="clipping" alignment="right" title="Label" id="SRr-9v-ItG">
+                        <textFieldCell key="cell" lineBreakMode="clipping" alignment="right" title="Label" id="uea-1X-HtO">
                             <font key="font" usesAppearanceFont="YES"/>
                             <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                             <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
                         </textFieldCell>
                     </textField>
-                    <stepper horizontalHuggingPriority="750" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="DKg-XP-x0D">
+                    <stepper horizontalHuggingPriority="750" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="YgB-Pm-ky4">
                         <rect key="frame" x="213" y="73" width="19" height="28"/>
                         <constraints>
-                            <constraint firstAttribute="height" constant="20" id="DW1-Hs-kid"/>
+                            <constraint firstAttribute="height" constant="20" id="LHD-Wt-Lmv"/>
                         </constraints>
-                        <stepperCell key="cell" continuous="YES" alignment="left" maxValue="100" id="yp9-Nm-IJ4"/>
+                        <stepperCell key="cell" continuous="YES" alignment="left" maxValue="100" id="vtJ-0t-DNN"/>
                     </stepper>
-                    <box title="Box" titlePosition="noTitle" translatesAutoresizingMaskIntoConstraints="NO" id="xGc-nd-fuY">
-                        <rect key="frame" x="55" y="73" width="159" height="26"/>
-                        <view key="contentView" id="a59-PD-Vj1">
-                            <rect key="frame" x="4" y="5" width="151" height="18"/>
+                    <box boxType="custom" title="Box" translatesAutoresizingMaskIntoConstraints="NO" id="mkq-tP-OV8">
+                        <rect key="frame" x="58" y="77" width="153" height="20"/>
+                        <view key="contentView" id="br9-4c-rgU">
+                            <rect key="frame" x="1" y="1" width="151" height="18"/>
                             <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                             <subviews>
-                                <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="BOn-ao-iBX">
+                                <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="zSM-Yf-psu">
                                     <rect key="frame" x="2" y="1" width="37" height="16"/>
-                                    <textFieldCell key="cell" lineBreakMode="clipping" title="Label" id="5PC-M9-66B">
+                                    <textFieldCell key="cell" lineBreakMode="clipping" title="Label" id="Tdc-wC-U8j">
                                         <font key="font" usesAppearanceFont="YES"/>
                                         <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                                         <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
@@ -220,30 +218,30 @@
                                 </textField>
                             </subviews>
                             <constraints>
-                                <constraint firstItem="BOn-ao-iBX" firstAttribute="centerY" secondItem="a59-PD-Vj1" secondAttribute="centerY" id="WNc-7n-RgH"/>
-                                <constraint firstItem="BOn-ao-iBX" firstAttribute="leading" secondItem="a59-PD-Vj1" secondAttribute="leading" constant="4" id="bmq-dT-Svx"/>
+                                <constraint firstItem="zSM-Yf-psu" firstAttribute="centerY" secondItem="br9-4c-rgU" secondAttribute="centerY" id="Rs1-PR-1Iw"/>
+                                <constraint firstItem="zSM-Yf-psu" firstAttribute="leading" secondItem="br9-4c-rgU" secondAttribute="leading" constant="4" id="bG6-NE-nkE"/>
                             </constraints>
                         </view>
                         <constraints>
-                            <constraint firstAttribute="height" constant="20" id="QgH-AK-rBA"/>
+                            <constraint firstAttribute="height" constant="20" id="kaj-5t-q92"/>
                         </constraints>
                     </box>
-                    <stepper horizontalHuggingPriority="750" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="inX-yA-O3r">
+                    <stepper horizontalHuggingPriority="750" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="mep-7M-OI9">
                         <rect key="frame" x="213" y="42" width="19" height="28"/>
                         <constraints>
-                            <constraint firstAttribute="height" constant="20" id="eUD-zJ-Ebh"/>
+                            <constraint firstAttribute="height" constant="20" id="vJ5-nM-mbw"/>
                         </constraints>
-                        <stepperCell key="cell" continuous="YES" alignment="left" maxValue="100" id="SAB-7y-NLh"/>
+                        <stepperCell key="cell" continuous="YES" alignment="left" maxValue="100" id="DN6-Ns-1JS"/>
                     </stepper>
-                    <box title="Box" titlePosition="noTitle" translatesAutoresizingMaskIntoConstraints="NO" id="BBG-OF-hi2">
-                        <rect key="frame" x="55" y="42" width="159" height="26"/>
-                        <view key="contentView" id="QMG-Ze-3Nu">
-                            <rect key="frame" x="4" y="5" width="151" height="18"/>
+                    <box boxType="custom" title="Box" translatesAutoresizingMaskIntoConstraints="NO" id="Eow-bK-20p">
+                        <rect key="frame" x="58" y="46" width="153" height="20"/>
+                        <view key="contentView" id="TXe-ag-R8P">
+                            <rect key="frame" x="1" y="1" width="151" height="18"/>
                             <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                             <subviews>
-                                <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="ohm-sC-y9Z">
+                                <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Dwk-uZ-J1o">
                                     <rect key="frame" x="2" y="1" width="37" height="16"/>
-                                    <textFieldCell key="cell" lineBreakMode="clipping" title="Label" id="BLw-7a-SBR">
+                                    <textFieldCell key="cell" lineBreakMode="clipping" title="Label" id="xCq-sM-6EQ">
                                         <font key="font" usesAppearanceFont="YES"/>
                                         <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                                         <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
@@ -251,76 +249,76 @@
                                 </textField>
                             </subviews>
                             <constraints>
-                                <constraint firstItem="ohm-sC-y9Z" firstAttribute="centerY" secondItem="QMG-Ze-3Nu" secondAttribute="centerY" id="g5a-8R-wnB"/>
-                                <constraint firstItem="ohm-sC-y9Z" firstAttribute="leading" secondItem="QMG-Ze-3Nu" secondAttribute="leading" constant="4" id="og7-e7-joT"/>
+                                <constraint firstItem="Dwk-uZ-J1o" firstAttribute="leading" secondItem="TXe-ag-R8P" secondAttribute="leading" constant="4" id="gHx-IL-GjX"/>
+                                <constraint firstItem="Dwk-uZ-J1o" firstAttribute="centerY" secondItem="TXe-ag-R8P" secondAttribute="centerY" id="k1i-j9-JIQ"/>
                             </constraints>
                         </view>
                         <constraints>
-                            <constraint firstAttribute="height" constant="20" id="bue-DX-sve"/>
+                            <constraint firstAttribute="height" constant="20" id="hCc-JS-fCS"/>
                         </constraints>
                     </box>
                 </subviews>
                 <constraints>
-                    <constraint firstItem="R5a-bN-hHZ" firstAttribute="leading" secondItem="jsl-ec-Kmh" secondAttribute="trailing" constant="5" id="0nU-aJ-6v9"/>
-                    <constraint firstItem="R5a-bN-hHZ" firstAttribute="centerY" secondItem="jsl-ec-Kmh" secondAttribute="centerY" id="2Sw-Hq-qQF"/>
-                    <constraint firstAttribute="trailing" secondItem="7jq-TR-W7s" secondAttribute="trailing" constant="26" id="2Ub-85-1Os"/>
-                    <constraint firstItem="Y8o-MY-zpv" firstAttribute="trailing" secondItem="jsl-ec-Kmh" secondAttribute="trailing" id="2d6-65-a9j"/>
-                    <constraint firstItem="QMe-0Z-1fa" firstAttribute="trailing" secondItem="jsl-ec-Kmh" secondAttribute="trailing" id="4Fg-gx-yIL"/>
-                    <constraint firstItem="DKg-XP-x0D" firstAttribute="leading" secondItem="xGc-nd-fuY" secondAttribute="trailing" constant="5" id="5Dj-J4-YhI"/>
-                    <constraint firstItem="i5V-aZ-DXU" firstAttribute="leading" secondItem="R5a-bN-hHZ" secondAttribute="leading" id="5yx-H1-EyX"/>
-                    <constraint firstItem="qJT-vQ-EmO" firstAttribute="leading" secondItem="jsl-ec-Kmh" secondAttribute="leading" id="6V7-Hf-BU5"/>
-                    <constraint firstItem="i5V-aZ-DXU" firstAttribute="centerY" secondItem="QMe-0Z-1fa" secondAttribute="centerY" id="9Oe-Zt-pqV"/>
-                    <constraint firstItem="inX-yA-O3r" firstAttribute="centerY" secondItem="BBG-OF-hi2" secondAttribute="centerY" id="9mS-7Q-QD9"/>
-                    <constraint firstItem="rzk-ZV-GOR" firstAttribute="trailing" secondItem="R5a-bN-hHZ" secondAttribute="trailing" id="BTl-dc-CWk"/>
-                    <constraint firstItem="rzk-ZV-GOR" firstAttribute="leading" secondItem="R5a-bN-hHZ" secondAttribute="leading" id="ByY-ui-Irn"/>
-                    <constraint firstItem="inX-yA-O3r" firstAttribute="trailing" secondItem="R5a-bN-hHZ" secondAttribute="trailing" id="FWf-5D-md2"/>
-                    <constraint firstItem="DKg-XP-x0D" firstAttribute="trailing" secondItem="R5a-bN-hHZ" secondAttribute="trailing" id="GYB-9i-L1s"/>
-                    <constraint firstItem="inX-yA-O3r" firstAttribute="leading" secondItem="BBG-OF-hi2" secondAttribute="trailing" constant="5" id="H3e-N1-caI"/>
-                    <constraint firstItem="qJT-vQ-EmO" firstAttribute="trailing" secondItem="jsl-ec-Kmh" secondAttribute="trailing" id="H9s-uQ-AY6"/>
-                    <constraint firstItem="BBf-jk-Xm2" firstAttribute="trailing" secondItem="jsl-ec-Kmh" secondAttribute="trailing" id="Hea-7a-zRQ"/>
-                    <constraint firstItem="xpN-CJ-T5i" firstAttribute="centerY" secondItem="BBf-jk-Xm2" secondAttribute="centerY" id="Hid-1a-wi8"/>
-                    <constraint firstItem="BBf-jk-Xm2" firstAttribute="leading" secondItem="jsl-ec-Kmh" secondAttribute="leading" id="L9h-dA-DoD"/>
-                    <constraint firstItem="Y8o-MY-zpv" firstAttribute="leading" secondItem="jsl-ec-Kmh" secondAttribute="leading" id="Li7-bk-gCW"/>
-                    <constraint firstItem="jsl-ec-Kmh" firstAttribute="leading" secondItem="yav-Qh-09W" secondAttribute="leading" constant="20" id="MaE-B6-Jgo"/>
-                    <constraint firstItem="xpN-CJ-T5i" firstAttribute="top" secondItem="i5V-aZ-DXU" secondAttribute="bottom" constant="11" id="Ms8-ng-pNJ"/>
-                    <constraint firstItem="inX-yA-O3r" firstAttribute="top" secondItem="DKg-XP-x0D" secondAttribute="bottom" constant="11" id="P2d-MG-3BF"/>
-                    <constraint firstItem="i5V-aZ-DXU" firstAttribute="trailing" secondItem="R5a-bN-hHZ" secondAttribute="trailing" id="P7k-6U-W5O"/>
-                    <constraint firstItem="xGc-nd-fuY" firstAttribute="leading" secondItem="R5a-bN-hHZ" secondAttribute="leading" id="PVH-Wb-2Qs"/>
-                    <constraint firstAttribute="trailing" secondItem="R5a-bN-hHZ" secondAttribute="trailing" constant="20" id="TZX-uE-5t4"/>
-                    <constraint firstItem="FzJ-lr-Xz1" firstAttribute="leading" secondItem="jsl-ec-Kmh" secondAttribute="leading" id="UKN-xk-NR2"/>
-                    <constraint firstItem="R5a-bN-hHZ" firstAttribute="top" secondItem="yav-Qh-09W" secondAttribute="top" constant="16" id="VMM-nc-bwO"/>
-                    <constraint firstItem="QMe-0Z-1fa" firstAttribute="leading" secondItem="jsl-ec-Kmh" secondAttribute="leading" id="WbT-8C-xL0"/>
-                    <constraint firstItem="DKg-XP-x0D" firstAttribute="top" secondItem="gOl-23-Gqk" secondAttribute="bottom" constant="16" id="XHe-e0-Zm1"/>
-                    <constraint firstItem="R5a-bN-hHZ" firstAttribute="leading" secondItem="jsl-ec-Kmh" secondAttribute="trailing" constant="5" id="YKB-cn-79C"/>
-                    <constraint firstItem="DKg-XP-x0D" firstAttribute="centerY" secondItem="xGc-nd-fuY" secondAttribute="centerY" id="ah2-gU-SZu"/>
-                    <constraint firstItem="yM3-ZS-087" firstAttribute="leading" secondItem="jsl-ec-Kmh" secondAttribute="leading" id="bLJ-HR-0Ns"/>
-                    <constraint firstItem="inX-yA-O3r" firstAttribute="centerY" secondItem="FzJ-lr-Xz1" secondAttribute="centerY" id="bu8-bG-wOe"/>
-                    <constraint firstItem="rzk-ZV-GOR" firstAttribute="centerY" secondItem="Y8o-MY-zpv" secondAttribute="centerY" id="epO-Tl-kIW"/>
-                    <constraint firstItem="gOl-23-Gqk" firstAttribute="leading" secondItem="yav-Qh-09W" secondAttribute="leading" constant="16" id="ewp-YO-cMp"/>
-                    <constraint firstItem="gOl-23-Gqk" firstAttribute="top" secondItem="xpN-CJ-T5i" secondAttribute="bottom" constant="15" id="fAt-EI-xCJ"/>
-                    <constraint firstItem="i5V-aZ-DXU" firstAttribute="top" secondItem="rzk-ZV-GOR" secondAttribute="bottom" constant="11" id="gsQ-kp-m6m"/>
-                    <constraint firstAttribute="bottom" secondItem="BBG-OF-hi2" secondAttribute="bottom" constant="46" id="ifC-nL-FOp"/>
-                    <constraint firstItem="xpN-CJ-T5i" firstAttribute="leading" secondItem="i5V-aZ-DXU" secondAttribute="leading" id="l0t-1Z-Cub"/>
-                    <constraint firstItem="FzJ-lr-Xz1" firstAttribute="trailing" secondItem="jsl-ec-Kmh" secondAttribute="trailing" id="m3q-4Y-TCa"/>
-                    <constraint firstAttribute="trailing" secondItem="gOl-23-Gqk" secondAttribute="trailing" constant="16" id="nUe-lJ-sY3"/>
-                    <constraint firstItem="rzk-ZV-GOR" firstAttribute="top" secondItem="R5a-bN-hHZ" secondAttribute="bottom" constant="11" id="nuu-cZ-DJn"/>
-                    <constraint firstItem="BBG-OF-hi2" firstAttribute="leading" secondItem="R5a-bN-hHZ" secondAttribute="leading" id="s2A-GO-PkU"/>
-                    <constraint firstItem="yM3-ZS-087" firstAttribute="trailing" secondItem="jsl-ec-Kmh" secondAttribute="trailing" id="s85-Bg-0PK"/>
-                    <constraint firstItem="DKg-XP-x0D" firstAttribute="centerY" secondItem="qJT-vQ-EmO" secondAttribute="centerY" id="uxW-VH-GrY"/>
-                    <constraint firstItem="7jq-TR-W7s" firstAttribute="leading" secondItem="R5a-bN-hHZ" secondAttribute="leading" id="x7r-qu-Siw"/>
-                    <constraint firstAttribute="bottom" secondItem="7jq-TR-W7s" secondAttribute="bottom" constant="16" id="yE0-YP-9CM"/>
-                    <constraint firstItem="yM3-ZS-087" firstAttribute="centerY" secondItem="7jq-TR-W7s" secondAttribute="centerY" id="zmK-Pw-42Q"/>
+                    <constraint firstItem="fSR-Bo-FzI" firstAttribute="top" secondItem="o1W-ZF-J5W" secondAttribute="bottom" constant="11" id="0O4-aY-nz0"/>
+                    <constraint firstItem="SWb-WB-pCD" firstAttribute="top" secondItem="mep-7M-OI9" secondAttribute="bottom" constant="11" id="2Wz-Qe-ajQ"/>
+                    <constraint firstItem="9Rk-g1-Xrs" firstAttribute="trailing" secondItem="ybg-Nv-rkt" secondAttribute="trailing" id="2ad-P7-2Bl"/>
+                    <constraint firstItem="XsA-7q-bua" firstAttribute="top" secondItem="se5-gp-TjO" secondAttribute="top" constant="16" id="3rv-kB-PXx"/>
+                    <constraint firstAttribute="trailing" secondItem="XsA-7q-bua" secondAttribute="trailing" constant="20" id="470-ec-o9M"/>
+                    <constraint firstItem="SWb-WB-pCD" firstAttribute="trailing" secondItem="Eow-bK-20p" secondAttribute="trailing" id="4Nj-uC-3Fw"/>
+                    <constraint firstItem="o1W-ZF-J5W" firstAttribute="centerY" secondItem="9Rk-g1-Xrs" secondAttribute="centerY" id="6E8-R6-Exp"/>
+                    <constraint firstItem="xZM-dY-h7m" firstAttribute="leading" secondItem="ybg-Nv-rkt" secondAttribute="leading" id="6ti-7M-hgU"/>
+                    <constraint firstItem="TdO-WK-7Jh" firstAttribute="top" secondItem="XsA-7q-bua" secondAttribute="bottom" constant="11" id="8Qj-DI-3wn"/>
+                    <constraint firstItem="TdO-WK-7Jh" firstAttribute="trailing" secondItem="XsA-7q-bua" secondAttribute="trailing" id="8pU-tG-2xv"/>
+                    <constraint firstItem="YgB-Pm-ky4" firstAttribute="trailing" secondItem="XsA-7q-bua" secondAttribute="trailing" id="93h-rO-wIB"/>
+                    <constraint firstItem="05x-hP-LJ9" firstAttribute="leading" secondItem="ybg-Nv-rkt" secondAttribute="leading" id="Bhl-ok-xFx"/>
+                    <constraint firstItem="YgB-Pm-ky4" firstAttribute="top" secondItem="IWB-3a-i7e" secondAttribute="bottom" constant="16" id="COJ-2b-5nQ"/>
+                    <constraint firstItem="9Rk-g1-Xrs" firstAttribute="leading" secondItem="ybg-Nv-rkt" secondAttribute="leading" id="Cch-AZ-ArT"/>
+                    <constraint firstItem="XsA-7q-bua" firstAttribute="leading" secondItem="ybg-Nv-rkt" secondAttribute="trailing" constant="5" id="Dc9-fT-xIQ"/>
+                    <constraint firstItem="Y0N-Ul-Rea" firstAttribute="trailing" secondItem="ybg-Nv-rkt" secondAttribute="trailing" id="Dta-bT-yt2"/>
+                    <constraint firstItem="IWB-3a-i7e" firstAttribute="leading" secondItem="se5-gp-TjO" secondAttribute="leading" constant="16" id="Ey0-Qc-nKx"/>
+                    <constraint firstItem="XsA-7q-bua" firstAttribute="leading" secondItem="ybg-Nv-rkt" secondAttribute="trailing" constant="5" id="Fa5-el-dlQ"/>
+                    <constraint firstItem="ybg-Nv-rkt" firstAttribute="leading" secondItem="se5-gp-TjO" secondAttribute="leading" constant="20" id="Gbc-GL-CEb"/>
+                    <constraint firstItem="mep-7M-OI9" firstAttribute="top" secondItem="YgB-Pm-ky4" secondAttribute="bottom" constant="11" id="HA9-Ph-1VB"/>
+                    <constraint firstAttribute="bottom" secondItem="SWb-WB-pCD" secondAttribute="bottom" constant="16" id="IZA-6y-ODW"/>
+                    <constraint firstItem="05x-hP-LJ9" firstAttribute="trailing" secondItem="ybg-Nv-rkt" secondAttribute="trailing" id="J78-9R-X9R"/>
+                    <constraint firstItem="YgB-Pm-ky4" firstAttribute="centerY" secondItem="xZM-dY-h7m" secondAttribute="centerY" id="JAN-dl-9pL"/>
+                    <constraint firstItem="xo7-Zs-RAb" firstAttribute="leading" secondItem="ybg-Nv-rkt" secondAttribute="leading" id="MvH-YM-rWO"/>
+                    <constraint firstItem="IWB-3a-i7e" firstAttribute="top" secondItem="fSR-Bo-FzI" secondAttribute="bottom" constant="15" id="OM5-PC-kVO"/>
+                    <constraint firstItem="Eow-bK-20p" firstAttribute="leading" secondItem="XsA-7q-bua" secondAttribute="leading" id="ORD-tt-dSW"/>
+                    <constraint firstItem="o1W-ZF-J5W" firstAttribute="top" secondItem="TdO-WK-7Jh" secondAttribute="bottom" constant="11" id="PLR-bg-0LA"/>
+                    <constraint firstItem="0c7-6E-XyK" firstAttribute="leading" secondItem="ybg-Nv-rkt" secondAttribute="leading" id="Rji-TE-lkG"/>
+                    <constraint firstItem="mep-7M-OI9" firstAttribute="leading" secondItem="Eow-bK-20p" secondAttribute="trailing" constant="5" id="X3O-eY-1lc"/>
+                    <constraint firstItem="xo7-Zs-RAb" firstAttribute="centerY" secondItem="SWb-WB-pCD" secondAttribute="centerY" id="aD7-49-9q1"/>
+                    <constraint firstItem="o1W-ZF-J5W" firstAttribute="trailing" secondItem="XsA-7q-bua" secondAttribute="trailing" id="aop-H6-08y"/>
+                    <constraint firstItem="o1W-ZF-J5W" firstAttribute="leading" secondItem="XsA-7q-bua" secondAttribute="leading" id="dRA-bK-sAt"/>
+                    <constraint firstItem="YgB-Pm-ky4" firstAttribute="centerY" secondItem="mkq-tP-OV8" secondAttribute="centerY" id="dbZ-r4-O9y"/>
+                    <constraint firstItem="TdO-WK-7Jh" firstAttribute="leading" secondItem="XsA-7q-bua" secondAttribute="leading" id="f5w-gh-y2m"/>
+                    <constraint firstItem="mkq-tP-OV8" firstAttribute="leading" secondItem="XsA-7q-bua" secondAttribute="leading" id="fVe-js-cGc"/>
+                    <constraint firstItem="fSR-Bo-FzI" firstAttribute="leading" secondItem="o1W-ZF-J5W" secondAttribute="leading" id="feP-1G-08A"/>
+                    <constraint firstItem="TdO-WK-7Jh" firstAttribute="centerY" secondItem="0c7-6E-XyK" secondAttribute="centerY" id="g03-Xf-07y"/>
+                    <constraint firstItem="Y0N-Ul-Rea" firstAttribute="leading" secondItem="ybg-Nv-rkt" secondAttribute="leading" id="i3m-xk-NPO"/>
+                    <constraint firstItem="fSR-Bo-FzI" firstAttribute="centerY" secondItem="Y0N-Ul-Rea" secondAttribute="centerY" id="iaH-gU-BeO"/>
+                    <constraint firstItem="XsA-7q-bua" firstAttribute="centerY" secondItem="ybg-Nv-rkt" secondAttribute="centerY" id="jgN-GX-oyy"/>
+                    <constraint firstItem="mep-7M-OI9" firstAttribute="trailing" secondItem="XsA-7q-bua" secondAttribute="trailing" id="lde-6I-rmx"/>
+                    <constraint firstItem="YgB-Pm-ky4" firstAttribute="leading" secondItem="mkq-tP-OV8" secondAttribute="trailing" constant="5" id="onC-w7-pWe"/>
+                    <constraint firstItem="0c7-6E-XyK" firstAttribute="trailing" secondItem="ybg-Nv-rkt" secondAttribute="trailing" id="qZd-38-pFL"/>
+                    <constraint firstAttribute="trailing" secondItem="IWB-3a-i7e" secondAttribute="trailing" constant="16" id="rkn-oy-N6Z"/>
+                    <constraint firstItem="xo7-Zs-RAb" firstAttribute="trailing" secondItem="ybg-Nv-rkt" secondAttribute="trailing" id="t4K-O8-5jf"/>
+                    <constraint firstItem="mep-7M-OI9" firstAttribute="centerY" secondItem="05x-hP-LJ9" secondAttribute="centerY" id="yRk-wb-DqL"/>
+                    <constraint firstItem="SWb-WB-pCD" firstAttribute="leading" secondItem="XsA-7q-bua" secondAttribute="leading" id="ypJ-Dd-Bj5"/>
+                    <constraint firstItem="xZM-dY-h7m" firstAttribute="trailing" secondItem="ybg-Nv-rkt" secondAttribute="trailing" id="zV3-25-HAx"/>
+                    <constraint firstItem="mep-7M-OI9" firstAttribute="centerY" secondItem="Eow-bK-20p" secondAttribute="centerY" id="zW7-u4-WfJ"/>
                 </constraints>
             </view>
             <connections>
-                <outlet property="delegate" destination="-2" id="oSO-Sp-fOI"/>
+                <outlet property="delegate" destination="-2" id="0bl-1N-AYu"/>
             </connections>
             <point key="canvasLocation" x="-278" y="158"/>
         </window>
     </objects>
     <resources>
-        <image name="KMImageNamePropertybarTextalignCenterSel" width="20" height="20"/>
-        <image name="KMImageNamePropertybarTextalignLeftSel" width="20" height="20"/>
-        <image name="KMImageNamePropertybarTextalignRightSel" width="20" height="20"/>
+        <image name="KMImageNameUXIconPropertybarTextalignCenterSel" width="20" height="20"/>
+        <image name="KMImageNameUXIconPropertybarTextalignLeftSel" width="20" height="20"/>
+        <image name="KMImageNameUXIconPropertybarTextalignRightSel" width="20" height="20"/>
     </resources>
 </document>