fix(interface): 界面兼容性改进
This commit is contained in:
@@ -3,3 +3,7 @@ schedule = ["quick_review", "recognition", "final_review"]
|
|||||||
quick_review = [["FillBlank", "1.0"], ["SelectMeaning", "0.5"], ["Recognition", "1.0"]]
|
quick_review = [["FillBlank", "1.0"], ["SelectMeaning", "0.5"], ["Recognition", "1.0"]]
|
||||||
recognition = [["Recognition", "1.0"]]
|
recognition = [["Recognition", "1.0"]]
|
||||||
final_review = [["FillBlank", "0.7"], ["SelectMeaning", "0.7"], ["Recognition", "1.0"]]
|
final_review = [["FillBlank", "0.7"], ["SelectMeaning", "0.7"], ["Recognition", "1.0"]]
|
||||||
|
[annotation]
|
||||||
|
"quick_review" = "复习旧知"
|
||||||
|
"recognition" = "新知识"
|
||||||
|
"final_review" = "总复习"
|
||||||
@@ -79,7 +79,9 @@ class MemScreen(Screen):
|
|||||||
# logger.debug(shim.puzzle2widget[puzzle_debug["puzzle"]])
|
# logger.debug(shim.puzzle2widget[puzzle_debug["puzzle"]])
|
||||||
|
|
||||||
def _get_progress_text(self):
|
def _get_progress_text(self):
|
||||||
return f"当前进度: {self.procession.process() + 1}/{self.procession.total_length()}"
|
s = f"阶段: {self.procession.phase.name}\n"
|
||||||
|
s += f"当前进度: {self.procession.process() + 1}/{self.procession.total_length()}"
|
||||||
|
return s
|
||||||
|
|
||||||
def update_display(self):
|
def update_display(self):
|
||||||
"""更新进度显示"""
|
"""更新进度显示"""
|
||||||
@@ -142,7 +144,7 @@ class MemScreen(Screen):
|
|||||||
ret = self.procession.forward(1)
|
ret = self.procession.forward(1)
|
||||||
if ret == 0: # 若结束了此次队列
|
if ret == 0: # 若结束了此次队列
|
||||||
self.update_state()
|
self.update_state()
|
||||||
if self.procession == 0: # 若所有队列都结束了
|
if self.procession.phase == PhaserState.FINISHED: # 若所有队列都结束了
|
||||||
logger.debug(f"记忆进程结束")
|
logger.debug(f"记忆进程结束")
|
||||||
self.mount_finished_widget()
|
self.mount_finished_widget()
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ class ClozePuzzle(BasePuzzleWidget):
|
|||||||
self.hashmap = dict()
|
self.hashmap = dict()
|
||||||
|
|
||||||
def _load(self):
|
def _load(self):
|
||||||
setting = self.atom.registry["orbital"]["puzzles"][self.alia]
|
setting = self.atom.registry["nucleon"]["puzzles"][self.alia]
|
||||||
self.puzzle = pz.ClozePuzzle(
|
self.puzzle = pz.ClozePuzzle(
|
||||||
text=setting["text"],
|
text=setting["text"],
|
||||||
delimiter=setting["delimiter"],
|
delimiter=setting["delimiter"],
|
||||||
|
|||||||
@@ -61,11 +61,7 @@ class MCQPuzzle(BasePuzzleWidget):
|
|||||||
self.puzzle.refresh()
|
self.puzzle.refresh()
|
||||||
|
|
||||||
def compose(self):
|
def compose(self):
|
||||||
setting: Setting = self.atom.registry["nucleon"].metadata["orbital"]["puzzles"][
|
setting: Setting = self.atom.registry["nucleon"]["puzzles"][self.alia]
|
||||||
self.alia
|
|
||||||
]
|
|
||||||
logger.debug(f"Puzzle Setting: {setting}")
|
|
||||||
logger.debug(f"WIRED INDEX: {len(self.inputlist)}")
|
|
||||||
if len(self.inputlist) > len(self.puzzle.options):
|
if len(self.inputlist) > len(self.puzzle.options):
|
||||||
logger.debug("ERR IDX")
|
logger.debug("ERR IDX")
|
||||||
logger.debug(self.inputlist)
|
logger.debug(self.inputlist)
|
||||||
|
|||||||
41
src/heurams/kernel/particles/placeholders.py
Normal file
41
src/heurams/kernel/particles/placeholders.py
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
from heurams.kernel.particles import orbital
|
||||||
|
from .electron import Electron
|
||||||
|
from .nucleon import Nucleon
|
||||||
|
from .atom import Atom
|
||||||
|
|
||||||
|
orbital_placeholder = {
|
||||||
|
"schedule": ["quick_review", "recognition", "final_review"],
|
||||||
|
"phases": {
|
||||||
|
"quick_review": [
|
||||||
|
["FillBlank", 1.0],
|
||||||
|
["SelectMeaning", 0.5],
|
||||||
|
["Recognition", 1.0],
|
||||||
|
],
|
||||||
|
"recognition": [["Recognition", 1.0]],
|
||||||
|
"final_review": [
|
||||||
|
["FillBlank", 0.7],
|
||||||
|
["SelectMeaning", 0.7],
|
||||||
|
["Recognition", 1.0],
|
||||||
|
],
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
class NucleonPlaceholder(Nucleon):
|
||||||
|
def __init__(self):
|
||||||
|
super().__init__("__placeholder__", {}, {})
|
||||||
|
|
||||||
|
def __getitem__(self, key):
|
||||||
|
return f"__placeholder__ attempted {key}"
|
||||||
|
|
||||||
|
|
||||||
|
class ElectronPlaceholder(Electron):
|
||||||
|
def __init__(self):
|
||||||
|
super().__init__("__placeholder__", {"": {"": ""}}, "")
|
||||||
|
|
||||||
|
|
||||||
|
class AtomPlaceholder(Atom):
|
||||||
|
def __init__(self):
|
||||||
|
super().__init__(
|
||||||
|
NucleonPlaceholder(), ElectronPlaceholder(), orbital_placeholder
|
||||||
|
)
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
import heurams.kernel.particles as pt
|
import heurams.kernel.particles as pt
|
||||||
|
from heurams.kernel.particles.placeholders import AtomPlaceholder
|
||||||
from heurams.services.logger import get_logger
|
from heurams.services.logger import get_logger
|
||||||
from transitions import Machine
|
from transitions import Machine
|
||||||
|
|
||||||
@@ -124,7 +125,7 @@ class Phaser(Machine):
|
|||||||
# 所有Procession都已完成
|
# 所有Procession都已完成
|
||||||
self.to_finished()
|
self.to_finished()
|
||||||
logger.debug("所有 Procession 已完成, 状态设置为 FINISHED")
|
logger.debug("所有 Procession 已完成, 状态设置为 FINISHED")
|
||||||
return None
|
return Procession([AtomPlaceholder()], PhaserState.FINISHED)
|
||||||
|
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
from heurams.services.textproc import truncate
|
from heurams.services.textproc import truncate
|
||||||
|
|||||||
Reference in New Issue
Block a user