lib/jldrill/model/Quiz/Options.rb in jldrill-0.5.1.7 vs lib/jldrill/model/Quiz/Options.rb in jldrill-0.6.0.1
- old
+ new
@@ -1,21 +1,23 @@
+# encoding: utf-8
require 'jldrill/model/Config'
require 'Context/Publisher'
module JLDrill
# Options for the standard quiz.
class Options
attr_reader :publisher, :randomOrder, :promoteThresh, :introThresh,
- :reviewMode, :dictionary, :reviewMeaning,
+ :reviewMode, :dictionary, :language, :reviewMeaning,
:reviewKanji, :reviewReading, :reviewOptionsSet,
:autoloadDic, :tanaka, :forgettingThresh
RANDOM_ORDER_RE = /^Random Order/
PROMOTE_THRESH_RE = /^Promotion Threshold: (.*)/
INTRO_THRESH_RE = /^Introduction Threshold: (.*)/
DICTIONARY_RE = /^Dictionary: (.*)/
+ LANGUAGE_RE = /^Language: (.*)/
REVIEW_MEANING_RE = /^Review Meaning/
REVIEW_KANJI_RE = /^Review Kanji/
REVIEW_READING_RE = /^Review Reading/
AUTOLOAD_DIC_RE = /^Autoload Dictionary/
FORGETTING_THRESH_RE = /^Forgetting Threshold: (.*)/
@@ -26,10 +28,11 @@
@randomOrder = false
@promoteThresh = 2
@introThresh = 10
@reviewMode = false
@dictionary = nil
+ @language = "Japanese"
@tanaka = nil
@reviewOptionsSet = false
@autoloadDic = false
@forgettingThresh = 0.0
defaultReviewOptions
@@ -40,10 +43,11 @@
retVal.randomOrder = @randomOrder
retVal.promoteThresh = @promoteThresh
retVal.introThresh = @introThresh
retVal.reviewMode = @reviewMode
retVal.dictionary = @dictionary
+ retVal.language = @language
setReviewOptions(@reviewOptionsSet)
retVal.reviewMeaning = @reviewMeaning
retVal.reviewKanji = @reviewKanji
retVal.reviewReading = @reviewReading
retVal.autoloadDic = @autoloadDic
@@ -55,10 +59,11 @@
options.randomOrder == @randomOrder &&
options.promoteThresh == @promoteThresh &&
options.introThresh == @introThresh &&
options.reviewMode == @reviewMode &&
options.dictionary == @dictionary &&
+ options.language == @language &&
options.reviewOptionsSet == @reviewOptionsSet &&
options.reviewMeaning == @reviewMeaning &&
options.reviewKanji == @reviewKanji &&
options.autoloadDic == @autoloadDic &&
options.reviewReading == @reviewReading &&
@@ -92,10 +97,11 @@
def assign(options)
self.randomOrder = options.randomOrder
self.promoteThresh = options.promoteThresh
self.introThresh = options.introThresh
self.dictionary = options.dictionary
+ self.language = options.language
setReviewOptions(options.reviewOptionsSet)
self.reviewMeaning = options.reviewMeaning
self.reviewKanji = options.reviewKanji
self.reviewReading = options.reviewReading
self.autoloadDic = options.autoloadDic
@@ -139,10 +145,17 @@
@dictionary = value
saveNeeded
end
end
+ def language=(value)
+ if @language != value
+ @language = value
+ saveNeeded
+ end
+ end
+
def autoloadDic=(value)
if @autoloadDic != value
@autoloadDic = value
saveNeeded
end
@@ -234,11 +247,13 @@
when PROMOTE_THRESH_RE
self.promoteThresh = $1.to_i
when INTRO_THRESH_RE
self.introThresh = $1.to_i
when DICTIONARY_RE
- self.dictionary = $1.to_i
+ self.dictionary = $1
+ when LANGUAGE_RE
+ self.language = $1
when REVIEW_MEANING_RE
self.reviewMeaning = $1.to_i
when REVIEW_KANJI_RE
self.reviewKanji = $1.to_i
when REVIEW_READING_RE
@@ -269,9 +284,12 @@
retVal += "Promotion Threshold: #{@promoteThresh}\n"
retVal += "Introduction Threshold: #{@introThresh}\n"
if(!@dictionary.nil?)
retVal += "Dictionary: #{@dictionary}\n"
end
+ if(@language != "Japanese")
+ retVal += "Language: #{@language}\n"
+ end
if(@reviewMeaning)
retVal += "Review Meaning\n"
end
if(@reviewKanji)
retVal += "Review Kanji\n"