CNS // Phase 3: + Pref Entries & OOBE.

This commit is contained in:
ShikiSuen 2022-01-22 21:44:04 +08:00
parent 78c90cadea
commit 12a4436ea4
3 changed files with 20 additions and 0 deletions

View File

@ -227,6 +227,9 @@
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/> <behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
<font key="font" metaFont="cellTitle"/> <font key="font" metaFont="cellTitle"/>
</buttonCell> </buttonCell>
<connections>
<binding destination="32" name="value" keyPath="values.CNS11643Enabled" id="Pbx-Gt-upm"/>
</connections>
</button> </button>
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="5IL-zZ-CL9"> <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="5IL-zZ-CL9">
<rect key="frame" x="19" y="82.5" width="423" height="16"/> <rect key="frame" x="19" y="82.5" width="423" height="16"/>

View File

@ -15,6 +15,7 @@ private let kChooseCandidateUsingSpaceKey = "ChooseCandidateUsingSpaceKey"
private let kUseWinNT351BPMF = "UseWinNT351BPMF" private let kUseWinNT351BPMF = "UseWinNT351BPMF"
private let kSelectPhraseAfterCursorAsCandidate = "SelectPhraseAfterCursorAsCandidate" private let kSelectPhraseAfterCursorAsCandidate = "SelectPhraseAfterCursorAsCandidate"
private let kUseHorizontalCandidateList = "UseHorizontalCandidateList" private let kUseHorizontalCandidateList = "UseHorizontalCandidateList"
private let kCNS11643EnabledKey = "CNS11643Enabled"
private let kChineseConversionEnabledKey = "ChineseConversionEnabled" private let kChineseConversionEnabledKey = "ChineseConversionEnabled"
private let kPhraseReplacementEnabledKey = "PhraseReplacementEnabled" private let kPhraseReplacementEnabledKey = "PhraseReplacementEnabled"
@ -54,6 +55,11 @@ private let kPhraseReplacementEnabledKey = "PhraseReplacementEnabled"
UserDefaults.standard.set(Preferences.useHorizontalCandidateList, forKey: kUseHorizontalCandidateList) UserDefaults.standard.set(Preferences.useHorizontalCandidateList, forKey: kUseHorizontalCandidateList)
} }
//
if UserDefaults.standard.object(forKey: kCNS11643EnabledKey) == nil {
UserDefaults.standard.set(Preferences.cns11643Enabled, forKey: kCNS11643EnabledKey)
}
// //
if UserDefaults.standard.object(forKey: kChineseConversionEnabledKey) == nil { if UserDefaults.standard.object(forKey: kChineseConversionEnabledKey) == nil {
UserDefaults.standard.set(Preferences.chineseConversionEnabled, forKey: kChineseConversionEnabledKey) UserDefaults.standard.set(Preferences.chineseConversionEnabled, forKey: kChineseConversionEnabledKey)

View File

@ -17,6 +17,7 @@ private let kSelectPhraseAfterCursorAsCandidatePreferenceKey = "SelectPhraseAfte
private let kUseHorizontalCandidateListPreferenceKey = "UseHorizontalCandidateList" private let kUseHorizontalCandidateListPreferenceKey = "UseHorizontalCandidateList"
private let kComposingBufferSizePreferenceKey = "ComposingBufferSize" private let kComposingBufferSizePreferenceKey = "ComposingBufferSize"
private let kChooseCandidateUsingSpaceKey = "ChooseCandidateUsingSpaceKey" private let kChooseCandidateUsingSpaceKey = "ChooseCandidateUsingSpaceKey"
private let kCNS11643EnabledKey = "CNS11643Enabled"
private let kChineseConversionEnabledKey = "ChineseConversionEnabled" private let kChineseConversionEnabledKey = "ChineseConversionEnabled"
private let kHalfWidthPunctuationEnabledKey = "HalfWidthPunctuationEnable" private let kHalfWidthPunctuationEnabledKey = "HalfWidthPunctuationEnable"
private let kEscToCleanInputBufferKey = "EscToCleanInputBuffer" private let kEscToCleanInputBufferKey = "EscToCleanInputBuffer"
@ -175,6 +176,7 @@ struct ComposingBufferSize {
defaults.removeObject(forKey: kUseHorizontalCandidateListPreferenceKey) defaults.removeObject(forKey: kUseHorizontalCandidateListPreferenceKey)
defaults.removeObject(forKey: kComposingBufferSizePreferenceKey) defaults.removeObject(forKey: kComposingBufferSizePreferenceKey)
defaults.removeObject(forKey: kChooseCandidateUsingSpaceKey) defaults.removeObject(forKey: kChooseCandidateUsingSpaceKey)
defaults.removeObject(forKey: kCNS11643EnabledKey)
defaults.removeObject(forKey: kChineseConversionEnabledKey) defaults.removeObject(forKey: kChineseConversionEnabledKey)
defaults.removeObject(forKey: kHalfWidthPunctuationEnabledKey) defaults.removeObject(forKey: kHalfWidthPunctuationEnabledKey)
defaults.removeObject(forKey: kEscToCleanInputBufferKey) defaults.removeObject(forKey: kEscToCleanInputBufferKey)
@ -240,6 +242,15 @@ struct ComposingBufferSize {
return shouldNotFartInLieuOfBeep return shouldNotFartInLieuOfBeep
} }
@UserDefault(key: kCNS11643EnabledKey, defaultValue: false)
@objc static var cns11643Enabled: Bool
@objc static func toggleCNS11643Enabled() -> Bool {
cns11643Enabled = !cns11643Enabled
UserDefaults.standard.set(cns11643Enabled, forKey: kCNS11643EnabledKey)
return cns11643Enabled
}
@UserDefault(key: kChineseConversionEnabledKey, defaultValue: false) @UserDefault(key: kChineseConversionEnabledKey, defaultValue: false)
@objc static var chineseConversionEnabled: Bool @objc static var chineseConversionEnabled: Bool