Prefs // Add properties regarding Cassette module.

This commit is contained in:
ShikiSuen 2022-10-15 12:00:17 +08:00
parent 9411f4c7b8
commit 8b8ebbf14f
3 changed files with 29 additions and 0 deletions

View File

@ -14,6 +14,7 @@ public protocol PrefMgrProtocol {
var deltaOfCalendarYears: Int { get set }
var mostRecentInputMode: String { get set }
var checkUpdateAutomatically: Bool { get set }
var cassettePath: String { get set }
var userDataFolderSpecified: String { get set }
var appleLanguages: [String] { get set }
var keyboardParser: Int { get set }
@ -48,7 +49,10 @@ public protocol PrefMgrProtocol {
var shouldNotFartInLieuOfBeep: Bool { get set }
var showHanyuPinyinInCompositionBuffer: Bool { get set }
var inlineDumpPinyinInLieuOfZhuyin: Bool { get set }
var showTranslatedStrokesInCompositionBuffer: Bool { get set }
var forceCassetteChineseConversion: Int { get set }
var cns11643Enabled: Bool { get set }
var cassetteEnabled: Bool { get set }
var symbolInputEnabled: Bool { get set }
var chineseConversionEnabled: Bool { get set }
var shiftJISShinjitaiOutputEnabled: Bool { get set }
@ -71,4 +75,5 @@ public protocol PrefMgrProtocol {
var usingHotKeyJIS: Bool { get set }
var usingHotKeyHalfWidthASCII: Bool { get set }
var usingHotKeyCurrencyNumerals: Bool { get set }
var usingHotKeyCassette: Bool { get set }
}

View File

@ -16,6 +16,7 @@ public enum UserDef: String, CaseIterable {
case kFailureFlagForUOMObservation = "_FailureFlag_UOMObservation"
case kDeltaOfCalendarYears = "DeltaOfCalendarYears"
case kMostRecentInputMode = "MostRecentInputMode"
case kCassettePath = "CassettePath"
case kUserDataFolderSpecified = "UserDataFolderSpecified"
case kCheckUpdateAutomatically = "CheckUpdateAutomatically"
case kKeyboardParser = "KeyboardParser"
@ -28,6 +29,7 @@ public enum UserDef: String, CaseIterable {
case kUseRearCursorMode = "UseRearCursorMode"
case kUseHorizontalCandidateList = "UseHorizontalCandidateList"
case kChooseCandidateUsingSpace = "ChooseCandidateUsingSpace"
case kCassetteEnabled = "CassetteEnabled"
case kCNS11643Enabled = "CNS11643Enabled"
case kSymbolInputEnabled = "SymbolInputEnabled"
case kChineseConversionEnabled = "ChineseConversionEnabled"
@ -60,6 +62,8 @@ public enum UserDef: String, CaseIterable {
case kAlwaysShowTooltipTextsHorizontally = "AlwaysShowTooltipTextsHorizontally"
case kClientsIMKTextInputIncapable = "ClientsIMKTextInputIncapable"
case kOnlyLoadFactoryLangModelsIfNeeded = "OnlyLoadFactoryLangModelsIfNeeded"
case kShowTranslatedStrokesInCompositionBuffer = "ShowTranslatedStrokesInCompositionBuffer"
case kForceCassetteChineseConversion = "ForceCassetteChineseConversion"
case kUseIMKCandidateWindow = "UseIMKCandidateWindow"
case kHandleDefaultCandidateFontsByLangIdentifier = "HandleDefaultCandidateFontsByLangIdentifier"
@ -78,6 +82,7 @@ public enum UserDef: String, CaseIterable {
case kUsingHotKeyJIS = "UsingHotKeyJIS"
case kUsingHotKeyHalfWidthASCII = "UsingHotKeyHalfWidthASCII"
case kUsingHotKeyCurrencyNumerals = "UsingHotKeyCurrencyNumerals"
case kUsingHotKeyCassette = "UsingHotKeyCassette"
public static func resetAll() {
UserDef.allCases.forEach {

View File

@ -37,6 +37,9 @@ public class PrefMgr: PrefMgrProtocol {
@AppProperty(key: UserDef.kCheckUpdateAutomatically.rawValue, defaultValue: false)
public var checkUpdateAutomatically: Bool
@AppProperty(key: UserDef.kCassettePath.rawValue, defaultValue: "")
public var cassettePath: String
@AppProperty(key: UserDef.kUserDataFolderSpecified.rawValue, defaultValue: "")
public var userDataFolderSpecified: String
@ -137,6 +140,12 @@ public class PrefMgr: PrefMgrProtocol {
}
}
@AppProperty(key: UserDef.kShowTranslatedStrokesInCompositionBuffer.rawValue, defaultValue: true)
public var showTranslatedStrokesInCompositionBuffer: Bool
@AppProperty(key: UserDef.kForceCassetteChineseConversion.rawValue, defaultValue: 0)
public var forceCassetteChineseConversion: Int
// MARK: - Settings (Tier 2)
@AppProperty(key: UserDef.kUseIMKCandidateWindow.rawValue, defaultValue: false)
@ -176,6 +185,13 @@ public class PrefMgr: PrefMgrProtocol {
}
}
@AppProperty(key: UserDef.kCassetteEnabled.rawValue, defaultValue: false)
public var cassetteEnabled: Bool {
didSet {
LMMgr.setCassetteEnabled(cassetteEnabled) //
}
}
@AppProperty(key: UserDef.kChineseConversionEnabled.rawValue, defaultValue: false)
public var chineseConversionEnabled: Bool {
didSet {
@ -296,4 +312,7 @@ public class PrefMgr: PrefMgrProtocol {
@AppProperty(key: UserDef.kUsingHotKeyCurrencyNumerals.rawValue, defaultValue: true)
public var usingHotKeyCurrencyNumerals: Bool
@AppProperty(key: UserDef.kUsingHotKeyCassette.rawValue, defaultValue: true)
public var usingHotKeyCassette: Bool
}