OSDN Git Service

HMStrokeTextFieldCellクラスをSwiftで書き換え
authormasakih <masakih@users.sourceforge.jp>
Sun, 28 Dec 2014 13:59:59 +0000 (22:59 +0900)
committermasakih <masakih@users.sourceforge.jp>
Sun, 28 Dec 2014 13:59:59 +0000 (22:59 +0900)
KCD.xcodeproj/project.pbxproj
KCD/HMStrokeTextFieldCell.h [deleted file]
KCD/HMStrokeTextFieldCell.m [deleted file]
KCD/HMStrokeTextFieldCell.swift [new file with mode: 0644]
KCD/ja.lproj/HMBroserWindowController.xib
KCD/ja.lproj/HMDeckViewController.xib

index 1ab61db..61419d3 100644 (file)
@@ -60,7 +60,6 @@
                F494DC5F18C30AE100AE97E4 /* HMMissionStatus.m in Sources */ = {isa = PBXBuildFile; fileRef = F494DC5E18C30AE100AE97E4 /* HMMissionStatus.m */; };
                F494DC6A18C8BAB900AE97E4 /* HMPowerUpSupportViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F494DC6818C8BAB900AE97E4 /* HMPowerUpSupportViewController.xib */; };
                F494DC6D18CC054800AE97E4 /* HMNyukyoDockStatus.m in Sources */ = {isa = PBXBuildFile; fileRef = F494DC6C18CC054800AE97E4 /* HMNyukyoDockStatus.m */; };
-               F49828FC1902A226000D6BBE /* HMStrokeTextFieldCell.m in Sources */ = {isa = PBXBuildFile; fileRef = F49828FB1902A226000D6BBE /* HMStrokeTextFieldCell.m */; };
                F4A2AF541A074DE40024BD9E /* HMScreenshotListWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4A2AF561A074DE40024BD9E /* HMScreenshotListWindowController.xib */; };
                F4A2AF581A0930160024BD9E /* Quartz.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F4A2AF571A0930160024BD9E /* Quartz.framework */; };
                F4A3AD82199F529700FDBF80 /* HMCombinedBattleCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = F4A3AD81199F529700FDBF80 /* HMCombinedBattleCommand.m */; };
                F4D2CBC818B0555A000EBC59 /* HMKCManagedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = F4D2CBC718B0555A000EBC59 /* HMKCManagedObject.m */; };
                F4D2CBCB18B05E58000EBC59 /* HMMaserShipCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = F4D2CBCA18B05E58000EBC59 /* HMMaserShipCommand.m */; };
                F4E1BC081A4D9D610089A82D /* HMScreenshotListWindowController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4A046EC1A4C5C1300E54C2D /* HMScreenshotListWindowController.swift */; };
+               F4E1BC0A1A4FA4E20089A82D /* HMStrokeTextFieldCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4E1BC091A4FA4E20089A82D /* HMStrokeTextFieldCell.swift */; };
                F4E33B5818BF5F67005B8C07 /* HMMemberSlotItemCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = F4E33B5718BF5F67005B8C07 /* HMMemberSlotItemCommand.m */; };
                F4E7802818DBD2A00011BC4C /* HMGetShipCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = F4E7802718DBD2A00011BC4C /* HMGetShipCommand.m */; };
                F4E7802B18DC3A820011BC4C /* HMLocalDataStore.m in Sources */ = {isa = PBXBuildFile; fileRef = F4E7802A18DC3A820011BC4C /* HMLocalDataStore.m */; };
                F494DC6918C8BAB900AE97E4 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/HMPowerUpSupportViewController.xib; sourceTree = "<group>"; };
                F494DC6B18CC054800AE97E4 /* HMNyukyoDockStatus.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HMNyukyoDockStatus.h; sourceTree = "<group>"; };
                F494DC6C18CC054800AE97E4 /* HMNyukyoDockStatus.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HMNyukyoDockStatus.m; sourceTree = "<group>"; };
-               F49828FA1902A226000D6BBE /* HMStrokeTextFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HMStrokeTextFieldCell.h; sourceTree = "<group>"; };
-               F49828FB1902A226000D6BBE /* HMStrokeTextFieldCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HMStrokeTextFieldCell.m; sourceTree = "<group>"; };
                F4A046EC1A4C5C1300E54C2D /* HMScreenshotListWindowController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HMScreenshotListWindowController.swift; sourceTree = "<group>"; };
                F4A2AF551A074DE40024BD9E /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/HMScreenshotListWindowController.xib; sourceTree = "<group>"; };
                F4A2AF571A0930160024BD9E /* Quartz.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Quartz.framework; path = System/Library/Frameworks/Quartz.framework; sourceTree = SDKROOT; };
                F4D2CBC718B0555A000EBC59 /* HMKCManagedObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HMKCManagedObject.m; sourceTree = "<group>"; };
                F4D2CBC918B05E58000EBC59 /* HMMaserShipCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HMMaserShipCommand.h; sourceTree = "<group>"; };
                F4D2CBCA18B05E58000EBC59 /* HMMaserShipCommand.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HMMaserShipCommand.m; sourceTree = "<group>"; };
+               F4E1BC091A4FA4E20089A82D /* HMStrokeTextFieldCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HMStrokeTextFieldCell.swift; sourceTree = "<group>"; };
                F4E33B5618BF5F67005B8C07 /* HMMemberSlotItemCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HMMemberSlotItemCommand.h; sourceTree = "<group>"; };
                F4E33B5718BF5F67005B8C07 /* HMMemberSlotItemCommand.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HMMemberSlotItemCommand.m; sourceTree = "<group>"; };
                F4E7802618DBD2A00011BC4C /* HMGetShipCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HMGetShipCommand.h; sourceTree = "<group>"; };
                                F4B1E30419C73B6A00805879 /* HMSuppliesCell.m */,
                                F4B1E30519C73B6A00805879 /* HMSuppliesView.h */,
                                F4B1E30619C73B6A00805879 /* HMSuppliesView.m */,
-                               F49828FA1902A226000D6BBE /* HMStrokeTextFieldCell.h */,
-                               F49828FB1902A226000D6BBE /* HMStrokeTextFieldCell.m */,
+                               F4E1BC091A4FA4E20089A82D /* HMStrokeTextFieldCell.swift */,
                                F4B30CF11A458AF2008E3D79 /* HMSlotItemWindowController.swift */,
                                F4131EE0190FEBDB004F7F9A /* HMSlotItemWindowController.xib */,
                                F4551BF31A49843500BB0235 /* HMPreferencePanelController.swift */,
                                F4B3DC4418E70B370011B4FC /* HMServerDataStore.m in Sources */,
                                F4551BEE1A49186900BB0235 /* HMShipViewController.swift in Sources */,
                                F4AA0607192E3B6200844688 /* HMMapStartCommand.m in Sources */,
+                               F4E1BC0A1A4FA4E20089A82D /* HMStrokeTextFieldCell.swift in Sources */,
                                F4AA0604192E20F500844688 /* HMCalculateDamageCommand.m in Sources */,
                                F4B30CF61A45BABE008E3D79 /* HMUpgradableShipsWindowController.swift in Sources */,
                                F4D2CBC518AE2AE2000EBC59 /* HMCompositCommand.m in Sources */,
                                F4B3DBCA18DDB9170011B4FC /* HMCreateSlotItemCommand.m in Sources */,
                                F4131ED8190FA08D004F7F9A /* HMDestroyItem2Command.m in Sources */,
                                F4B3DC2718DF2F360011B4FC /* HMKenzoMark.m in Sources */,
-                               F49828FC1902A226000D6BBE /* HMStrokeTextFieldCell.m in Sources */,
                                F4A3AD8B19B9BE7A00FDBF80 /* HMMaskSelectView.m in Sources */,
                                F4B414E918B09A4B00468DAF /* HMMasterMapAreaCommand.m in Sources */,
                                F4C3957418CDDFE500A1E918 /* HMKenzoDockStatus.m in Sources */,
diff --git a/KCD/HMStrokeTextFieldCell.h b/KCD/HMStrokeTextFieldCell.h
deleted file mode 100644 (file)
index d7f8e93..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-//
-//  HMStrokeTextFieldCell.h
-//  KCD
-//
-//  Created by Hori,Masaki on 2014/04/19.
-//  Copyright (c) 2014年 Hori,Masaki. All rights reserved.
-//
-
-#import <Cocoa/Cocoa.h>
-
-@interface HMStrokeTextFieldCell : NSTextFieldCell
-
-@end
diff --git a/KCD/HMStrokeTextFieldCell.m b/KCD/HMStrokeTextFieldCell.m
deleted file mode 100644 (file)
index f66cb32..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-//
-//  HMStrokeTextFieldCell.m
-//  KCD
-//
-//  Created by Hori,Masaki on 2014/04/19.
-//  Copyright (c) 2014年 Hori,Masaki. All rights reserved.
-//
-
-#import "HMStrokeTextFieldCell.h"
-
-const CGFloat boarderWidth = 2.0;
-
-@interface HMStrokeTextFieldCell ()
-@property (strong, nonatomic) NSLayoutManager *layoutManager;
-@property (strong, nonatomic) NSTextContainer *textContainer;
-@end
-
-@implementation HMStrokeTextFieldCell
-
-- (id)initWithCoder:(NSCoder *)aDecoder
-{
-       self = [super initWithCoder:aDecoder];
-       if(self) {
-               _layoutManager = [NSLayoutManager new];
-               _textContainer = [NSTextContainer new];
-               [self.layoutManager addTextContainer:self.textContainer];
-       }
-       return self;
-}
-
-- (void)drawInteriorWithFrame:(NSRect)cellFrame inView:(NSView *)controlView
-{
-       NSAttributedString *attributedString = self.attributedStringValue;
-       NSDictionary *attribute = [attributedString attributesAtIndex:0 effectiveRange:NULL];
-       NSColor *forgroundColor = [attribute objectForKey:NSForegroundColorAttributeName];
-       if(!forgroundColor) return;
-       if([forgroundColor isEqual:[NSColor controlTextColor]]) {
-               [super drawInteriorWithFrame:cellFrame inView:controlView];
-               return;
-       }
-       
-       NSTextStorage *textStorage = [[NSTextStorage alloc] initWithString:attributedString.string attributes:attribute];
-       [textStorage addLayoutManager:self.layoutManager];
-       
-       NSRange range = [self.layoutManager glyphRangeForTextContainer:self.textContainer];
-       NSGlyph glyph[range.length];
-       NSUInteger glyphLength = [self.layoutManager getGlyphs:glyph range:range];
-       
-       NSFont *font = [attribute objectForKey:NSFontAttributeName];
-       NSPoint point = {boarderWidth,0};
-       point.y -= [font descender];
-       if([controlView isFlipped]) {
-               point.y -= [controlView frame].size.height;
-       }
-       
-       NSBezierPath *path = [NSBezierPath new];
-       [path moveToPoint:point];
-       [path appendBezierPathWithGlyphs:glyph count:glyphLength inFont:font];
-       [path setLineWidth:boarderWidth];
-       [path setLineJoinStyle:NSRoundLineJoinStyle];
-       if([controlView isFlipped]) {
-               NSAffineTransform *affineTransform = [NSAffineTransform transform];
-               [affineTransform scaleXBy:1 yBy:-1];
-               [path transformUsingAffineTransform:affineTransform];
-       }
-       
-       [[NSColor blackColor] set];
-       [path stroke];
-       
-       [forgroundColor set];
-       [path fill];
-}
-@end
diff --git a/KCD/HMStrokeTextFieldCell.swift b/KCD/HMStrokeTextFieldCell.swift
new file mode 100644 (file)
index 0000000..bb9df34
--- /dev/null
@@ -0,0 +1,62 @@
+//
+//  HMStrokeTextFieldCell.swift
+//  KCD
+//
+//  Created by Hori,Masaki on 2014/12/28.
+//  Copyright (c) 2014年 Hori,Masaki. All rights reserved.
+//
+
+import Cocoa
+
+class HMStrokeTextFieldCell: NSTextFieldCell
+{
+       let borderWidth: CGFloat = 2.0
+       let layoutManager: NSLayoutManager = NSLayoutManager()
+       lazy var textContainer: NSTextContainer = {
+               let aTextContainer = NSTextContainer()
+               self.layoutManager.addTextContainer(aTextContainer)
+               return aTextContainer
+       }()
+       
+       override func drawInteriorWithFrame(cellFrame: NSRect, inView controlView: NSView) {
+               let attribute = attributedStringValue.attributesAtIndex(0, effectiveRange: nil)
+               let forgroundColor = attribute[NSForegroundColorAttributeName] as? NSColor
+               if forgroundColor == nil {
+                       return
+               }
+               if forgroundColor == NSColor.controlTextColor() {
+                       super.drawInteriorWithFrame(cellFrame, inView: controlView)
+                       return
+               }
+               
+               let textStorage = NSTextStorage(string: attributedStringValue.string, attributes: attribute)
+               textStorage.addLayoutManager(layoutManager)
+               
+               let range: NSRange = layoutManager.glyphRangeForTextContainer(textContainer)
+               var glyph = [NSGlyph](count: range.length + 1, repeatedValue:0)
+               let glyphLength = layoutManager.getGlyphs(&glyph, range: range)
+               
+               let font = attribute[NSFontAttributeName] as NSFont
+               var point = NSPoint(x: borderWidth, y: -font.descender)
+               if controlView.flipped {
+                       point.y -= controlView.frame.size.height
+               }
+               
+               let path = NSBezierPath()
+               path.moveToPoint(point)
+               path.appendBezierPathWithGlyphs(&glyph, count: glyphLength, inFont: font)
+               path.lineWidth = borderWidth
+               path.lineJoinStyle = .RoundLineJoinStyle
+               if controlView.flipped {
+                       let affineTransform = NSAffineTransform()
+                       affineTransform.scaleXBy(1, yBy: -1)
+                       path.transformUsingAffineTransform(affineTransform)
+               }
+               
+               NSColor.blackColor().set()
+               path.stroke()
+               
+               forgroundColor!.set()
+               path.fill()
+       }
+}
index b45f91b..c6b1540 100644 (file)
@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="6250" systemVersion="13F34" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="6254" systemVersion="13F34" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
     <dependencies>
         <deployment identifier="macosx"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="6250"/>
-        <plugIn identifier="com.apple.WebKitIBPlugin" version="6250"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="6254"/>
+        <plugIn identifier="com.apple.WebKitIBPlugin" version="6254"/>
     </dependencies>
     <objects>
         <customObject id="-2" userLabel="File's Owner" customClass="HMBroserWindowController" customModule="KCD" customModuleProvider="target">
                             <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="iuy-QP-cwC">
                                 <rect key="frame" x="107" y="8" width="61" height="17"/>
                                 <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
-                                <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="999/999" id="Ysd-ie-6KJ" customClass="HMStrokeTextFieldCell">
+                                <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="999/999" id="Ysd-ie-6KJ" customClass="HMStrokeTextFieldCell" customModule="KCD" customModuleProvider="target">
                                     <font key="font" metaFont="system"/>
                                     <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                                     <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
index e5dcd17..25d4236 100644 (file)
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="6250" systemVersion="13F34" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="6254" systemVersion="13F34" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
     <dependencies>
         <deployment identifier="macosx"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="6250"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="6254"/>
     </dependencies>
     <objects>
         <customObject id="-2" userLabel="File's Owner" customClass="HMDeckViewController" customModule="KCD" customModuleProvider="target">
@@ -43,7 +43,7 @@
                 <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="6Or-P0-p9N">
                     <rect key="frame" x="282" y="34" width="61" height="17"/>
                     <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="123/123" id="ddo-nt-jFg" customClass="HMStrokeTextFieldCell">
+                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="123/123" id="ddo-nt-jFg" customClass="HMStrokeTextFieldCell" customModule="KCD" customModuleProvider="target">
                         <font key="font" metaFont="system"/>
                         <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                         <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
@@ -87,7 +87,7 @@
                 <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="5AR-hJ-AeK">
                     <rect key="frame" x="282" y="9" width="61" height="17"/>
                     <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="123/123" id="JSd-Ku-V4j" customClass="HMStrokeTextFieldCell">
+                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="123/123" id="JSd-Ku-V4j" customClass="HMStrokeTextFieldCell" customModule="KCD" customModuleProvider="target">
                         <font key="font" metaFont="system"/>
                         <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                         <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                 <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="smn-zr-pta">
                     <rect key="frame" x="463" y="34" width="61" height="17"/>
                     <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="123/123" id="Ocl-yu-tLk" customClass="HMStrokeTextFieldCell">
+                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="123/123" id="Ocl-yu-tLk" customClass="HMStrokeTextFieldCell" customModule="KCD" customModuleProvider="target">
                         <font key="font" metaFont="system"/>
                         <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                         <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                 <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="bgm-YO-io1">
                     <rect key="frame" x="463" y="9" width="61" height="17"/>
                     <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="123/123" id="LEg-DQ-i6o" customClass="HMStrokeTextFieldCell">
+                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="123/123" id="LEg-DQ-i6o" customClass="HMStrokeTextFieldCell" customModule="KCD" customModuleProvider="target">
                         <font key="font" metaFont="system"/>
                         <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                         <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                 <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="DM5-82-U3A">
                     <rect key="frame" x="644" y="34" width="61" height="17"/>
                     <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="123/123" id="L8K-jE-OB1" customClass="HMStrokeTextFieldCell">
+                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="123/123" id="L8K-jE-OB1" customClass="HMStrokeTextFieldCell" customModule="KCD" customModuleProvider="target">
                         <font key="font" metaFont="system"/>
                         <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                         <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                 <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="rUa-IT-pN1">
                     <rect key="frame" x="644" y="9" width="61" height="17"/>
                     <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="123/123" id="kcC-oq-S0a" customClass="HMStrokeTextFieldCell">
+                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="123/123" id="kcC-oq-S0a" customClass="HMStrokeTextFieldCell" customModule="KCD" customModuleProvider="target">
                         <font key="font" metaFont="system"/>
                         <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                         <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                 <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="9US-00-gtw">
                     <rect key="frame" x="226" y="34" width="21" height="17"/>
                     <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="49" id="4fu-Us-dg2" customClass="HMStrokeTextFieldCell">
+                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="49" id="4fu-Us-dg2" customClass="HMStrokeTextFieldCell" customModule="KCD" customModuleProvider="target">
                         <font key="font" metaFont="system"/>
                         <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                         <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                 <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="Hla-XE-mIo">
                     <rect key="frame" x="226" y="9" width="21" height="17"/>
                     <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="49" id="A79-kF-k9u" customClass="HMStrokeTextFieldCell">
+                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="49" id="A79-kF-k9u" customClass="HMStrokeTextFieldCell" customModule="KCD" customModuleProvider="target">
                         <font key="font" metaFont="system"/>
                         <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                         <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                 <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="wsW-rS-JP0">
                     <rect key="frame" x="407" y="34" width="21" height="17"/>
                     <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="49" id="L1v-L0-17U" customClass="HMStrokeTextFieldCell">
+                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="49" id="L1v-L0-17U" customClass="HMStrokeTextFieldCell" customModule="KCD" customModuleProvider="target">
                         <font key="font" metaFont="system"/>
                         <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                         <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                 <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="g9G-lh-Te2">
                     <rect key="frame" x="407" y="9" width="21" height="17"/>
                     <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="49" id="6CA-GY-gJA" customClass="HMStrokeTextFieldCell">
+                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="49" id="6CA-GY-gJA" customClass="HMStrokeTextFieldCell" customModule="KCD" customModuleProvider="target">
                         <font key="font" metaFont="system"/>
                         <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                         <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                 <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="V0k-rS-hW4">
                     <rect key="frame" x="588" y="34" width="21" height="17"/>
                     <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="49" id="yFD-Od-oEO" customClass="HMStrokeTextFieldCell">
+                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="49" id="yFD-Od-oEO" customClass="HMStrokeTextFieldCell" customModule="KCD" customModuleProvider="target">
                         <font key="font" metaFont="system"/>
                         <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                         <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                 <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="m3I-Sb-hkR">
                     <rect key="frame" x="588" y="9" width="21" height="17"/>
                     <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="49" id="6p1-JQ-iPh" customClass="HMStrokeTextFieldCell">
+                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="49" id="6p1-JQ-iPh" customClass="HMStrokeTextFieldCell" customModule="KCD" customModuleProvider="target">
                         <font key="font" metaFont="system"/>
                         <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                         <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>