def activate(self): component_manager.register(Plugin.provides, self) self.active = True
# TODO: everything here will either have to be reimplemented in a # completely different way or will become obsolete. # ########################################################################## def update_dialog(self): # Update question and answer font. if config()["QA_font"] != None: font = QFont() font.fromString(config()["QA_font"]) else: font = self.show_button.font() #self.question.setFont(font) #self.answer.setFont(font) # Update question and answer alignment. #if get_config("left_align") == True: # alignment = Qt.AlignAuto | Qt.AlignVCenter | Qt.TextWordWrap #else: # alignment = Qt.AlignHCenter | Qt.AlignVCenter | Qt.TextWordWrap #self.question.setAlignment(alignment) #self.answer.setAlignment(alignment) # Register widget. component_manager.register("review_widget", ReviewWdgt)
#TODO: clean up from mnemosyne.libmnemosyne.component_manager import component_manager as cm from mnemosyne.libmnemosyne.config import config as cfg from mnemosyne.libmnemosyne.card_types.front_to_back import FrontToBack from mnemosyne.libmnemosyne.card_types.both_ways import BothWays from mnemosyne.libmnemosyne.card_types.three_sided import ThreeSided t1 = FrontToBack(); cm.register("card_type", t1) t2 = BothWays(); cm.register("card_type", t2) t3 = ThreeSided(); cm.register("card_type", t3) cfg.initialise("\dev\\null") cfg["path"] = "\dev\\null" from mnemosyne.libmnemosyne import * #initialise_system_components() #config.initialise(basedir) #initialise_lockfile() #initialise_new_empty_database() from mnemosyne.libmnemosyne.databases.pickle import Pickle cm.register("database", Pickle()) from mnemosyne.libmnemosyne.schedulers.SM2_mnemosyne \ import SM2Mnemosyne cm.register("scheduler", SM2Mnemosyne())
def ui_factory(interface=None): """ Create UI(View in terms of MVC) """ if interface == 'cmd': from pomni.cmd_ui import CmdUiControllerReview, CommandlineUI component_manager.register("ui_controller_review", CmdUiControllerReview()) component_manager.register("renderer", TextRenderer()) return CommandlineUI() if not interface or interface == "hildon": try: theme = config()["theme_path"].split("/")[-1] except KeyError: theme = "eternal" from pomni import hildon_ui from hildon_ui import HildonUI review_class = getattr(hildon_ui, theme.capitalize() + 'ControllerReview') input_class = getattr(hildon_ui, theme.capitalize() + 'ControllerInput') main_class = getattr(hildon_ui, theme.capitalize() + 'ControllerMain') component_manager.register("ui_controller_main", main_class()) component_manager.register("ui_controller_review", review_class()) component_manager.register("ui_controller_input", input_class()) component_manager.register("renderer", TextRenderer()) return HildonUI() # add next gui here raise ValueError("No idea how to create %s UI" % interface)
def initialise_system_components(): """These are now hard coded, but if needed, an application could override this. """ # Configuration. from mnemosyne.libmnemosyne.configuration import Configuration component_manager.register("config", Configuration()) # Logger. from mnemosyne.libmnemosyne.loggers.txt_logger import TxtLogger component_manager.register("log", TxtLogger()) # Database. #from mnemosyne.libmnemosyne.databases.pickle import Pickle #component_manager.register("database", Pickle()) from mnemosyne.libmnemosyne.databases.sqlite import Sqlite component_manager.register("database", Sqlite()) # Scheduler. from mnemosyne.libmnemosyne.schedulers.SM2_mnemosyne \ import SM2Mnemosyne component_manager.register("scheduler", SM2Mnemosyne()) # Card types. from mnemosyne.libmnemosyne.card_types.front_to_back import FrontToBack component_manager.register("card_type", FrontToBack()) from mnemosyne.libmnemosyne.card_types.both_ways import BothWays component_manager.register("card_type", BothWays()) from mnemosyne.libmnemosyne.card_types.three_sided import ThreeSided component_manager.register("card_type", ThreeSided()) # Renderer. from mnemosyne.libmnemosyne.renderers.html_css import HtmlCss component_manager.register("renderer", HtmlCss()) # Filters. from mnemosyne.libmnemosyne.filters.escape_to_html \ import EscapeToHtml component_manager.register("filter", EscapeToHtml()) from mnemosyne.libmnemosyne.filters.expand_paths \ import ExpandPaths component_manager.register("filter", ExpandPaths()) from mnemosyne.libmnemosyne.filters.latex import Latex component_manager.register("filter", Latex()) # File formats. # UI controllers. from mnemosyne.libmnemosyne.ui_controllers_main.default_main_controller \ import DefaultMainController component_manager.register("ui_controller_main", DefaultMainController()) from mnemosyne.libmnemosyne.ui_controllers_review.SM2_controller \ import SM2Controller component_manager.register("ui_controller_review", SM2Controller()) # Plugins. from mnemosyne.libmnemosyne.card_types.map import Map component_manager.register("plugin", Map())
if self.music.state == Phonon.PlayingState: self.music.enqueue(filename) else: self.music.enqueue(Phonon.MediaSource(filename)); self.music.play() soundmanager = SoundManager() class SoundPlayer(Filter): def run(self, text, fact): i = text.lower().find("sound src") while i != -1: start = text.find("\"", i) end = text.find("\"", start+1) if end == -1: return filename = text[start+1:end] try: soundmanager.play(filename) except: print "Unable to play music from file", filename i = text.lower().find("sound src", i+1) return text component_manager.register("filter", SoundPlayer())