Beispiel #1
0
    def testSelection(self):
        wikiroot = WikiDocument.load(self.path)
        html_page = wikiroot[u"Типы страниц/HTML-страница"]
        self.assertEqual(
            type(FactorySelector.getFactory(html_page.getTypeString())),
            HtmlPageFactory)

        text_page = wikiroot[u"Типы страниц/Текстовая страница"]
        self.assertEqual(
            type(FactorySelector.getFactory(text_page.getTypeString())),
            TextPageFactory)

        wiki_page = wikiroot[u"Типы страниц/wiki-страница"]
        self.assertEqual(
            type(FactorySelector.getFactory(wiki_page.getTypeString())),
            WikiPageFactory)

        search_page = wikiroot[u"Типы страниц/Страница поиска"]
        self.assertEqual(
            type(FactorySelector.getFactory(search_page.getTypeString())),
            SearchPageFactory)

        test_page = wikiroot[u"Типы страниц/TestPage"]
        self.assertEqual(
            type(FactorySelector.getFactory(test_page.getTypeString())),
            TextPageFactory)
Beispiel #2
0
    def testSelection(self):
        wikiroot = WikiDocument.load(self.path)
        html_page = wikiroot["Типы страниц/HTML-страница"]
        self.assertEqual(
            type(FactorySelector.getFactory(html_page.getTypeString())),
            HtmlPageFactory)

        text_page = wikiroot["Типы страниц/Текстовая страница"]
        self.assertEqual(
            type(FactorySelector.getFactory(text_page.getTypeString())),
            TextPageFactory)

        wiki_page = wikiroot["Типы страниц/wiki-страница"]
        self.assertEqual(
            type(FactorySelector.getFactory(wiki_page.getTypeString())),
            WikiPageFactory)

        search_page = wikiroot["Типы страниц/Страница поиска"]
        self.assertEqual(
            type(FactorySelector.getFactory(search_page.getTypeString())),
            SearchPageFactory)

        test_page = wikiroot["Типы страниц/TestPage"]
        self.assertEqual(
            type(FactorySelector.getFactory(test_page.getTypeString())),
            UnknownPageTypeFactory)
Beispiel #3
0
    def testRemoveFactory_02 (self):
        wikiroot = WikiDocument.load (self.path)

        FactorySelector.removeFactory (WikiPageFactory().getTypeString())

        wiki_page = wikiroot[u"Типы страниц/wiki-страница"]
        self.assertEqual (type (FactorySelector.getFactory (wiki_page.getTypeString())),
                          TextPageFactory)
Beispiel #4
0
    def testAddFactory (self):
        FactorySelector.addFactory (TestPageFactory())

        wikiroot = WikiDocument.load (self.path)

        test_page = wikiroot[u"Типы страниц/TestPage"]
        self.assertEqual (type (FactorySelector.getFactory (test_page.getTypeString())),
                          TestPageFactory)
Beispiel #5
0
    def testAddFactory(self):
        FactorySelector.addFactory(ExamplePageFactory())

        wikiroot = WikiDocument.load(self.path)

        test_page = wikiroot["Типы страниц/TestPage"]
        self.assertEqual(
            type(FactorySelector.getFactory(test_page.getTypeString())),
            ExamplePageFactory)
Beispiel #6
0
    def testRemoveFactory_02(self):
        wikiroot = WikiDocument.load(self.path)

        FactorySelector.removeFactory(WikiPageFactory().getTypeString())

        wiki_page = wikiroot["Типы страниц/wiki-страница"]
        self.assertEqual(
            type(FactorySelector.getFactory(wiki_page.getTypeString())),
            UnknownPageTypeFactory)
Beispiel #7
0
 def _setComboPageType (self, pageTypeString):
     """
     Установить тип страницы в диалоге по строке, описывающей тип страницы
     """
     n = 0
     for factory in FactorySelector.getFactories():
         if factory.getTypeString() == FactorySelector.getFactory(pageTypeString).getTypeString():
             self.generalPanel.typeCombo.SetSelection (n)
             break
         n += 1
Beispiel #8
0
 def clear(self):
     """
     Вызывается при отключении плагина
     """
     FactorySelector.removeFactory(MarkdownPageFactory().getTypeString())
     self._application.onPageDialogPageFactoriesNeeded -= self.__onPageDialogPageFactoriesNeeded
     self._application.onPageViewCreate -= self.__onPageViewCreate
     self._application.onPageViewDestroy -= self.__onPageViewDestroy
     self._application.onPageDialogPageTypeChanged -= self.__onPageDialogPageTypeChanged
     self._application.onPageDialogDestroy -= self.__onPageDialogDestroy
     self._application.onPageUpdateNeeded -= self.__onPageUpdateNeeded
Beispiel #9
0
 def clear(self):
     """
     Вызывается при отключении плагина
     """
     FactorySelector.removeFactory(MarkdownPageFactory().getTypeString())
     self._application.onPageDialogPageFactoriesNeeded -= self.__onPageDialogPageFactoriesNeeded
     self._application.onPageViewCreate -= self.__onPageViewCreate
     self._application.onPageViewDestroy -= self.__onPageViewDestroy
     self._application.onPageDialogPageTypeChanged -= self.__onPageDialogPageTypeChanged
     self._application.onPageDialogDestroy -= self.__onPageDialogDestroy
     self._application.onPageUpdateNeeded -= self.__onPageUpdateNeeded
Beispiel #10
0
    def initialize(self):
        """
        Инициализация контроллера при активации плагина. Подписка на нужные события
        """
        global _
        _ = get_()

        FactorySelector.addFactory(MarkdownPageFactory())
        self._application.onPageDialogPageFactoriesNeeded += self.__onPageDialogPageFactoriesNeeded
        self._application.onPageViewCreate += self.__onPageViewCreate
        self._application.onPageViewDestroy += self.__onPageViewDestroy
        self._application.onPageDialogPageTypeChanged += self.__onPageDialogPageTypeChanged
        self._application.onPageDialogDestroy += self.__onPageDialogDestroy
        self._application.onPageUpdateNeeded += self.__onPageUpdateNeeded
Beispiel #11
0
    def initialize (self):
        """
        Инициализация контроллера при активации плагина. Подписка на нужные события
        """
        global _
        _ = get_()

        FactorySelector.addFactory(MarkdownPageFactory())
        self._application.onPageDialogPageFactoriesNeeded += self.__onPageDialogPageFactoriesNeeded
        self._application.onPageViewCreate += self.__onPageViewCreate
        self._application.onPageViewDestroy += self.__onPageViewDestroy
        self._application.onPageDialogPageTypeChanged += self.__onPageDialogPageTypeChanged
        self._application.onPageDialogDestroy += self.__onPageDialogDestroy
        self._application.onPageUpdateNeeded += self.__onPageUpdateNeeded
Beispiel #12
0
    def initialize (self):
        global _
        _ = get_()

        self._correctSysPath()
        self._application.onPageDialogPageFactoriesNeeded += self._onPageDialogPageFactoriesNeeded
        self._application.onPageViewDestroy += self._onPageViewDestroy
        self._application.onPageViewCreate += self._onPageViewCreate

        self._registerHtmlProcessors()

        if self._application.mainWindow is not None:
            self._registerActions ()
            self._guiController.initialize()
        FactorySelector.addFactory (WebPageFactory())
Beispiel #13
0
    def destroy (self):
        self._application.onPageDialogPageFactoriesNeeded -= self._onPageDialogPageFactoriesNeeded
        self._application.onPageViewDestroy -= self._onPageViewDestroy
        self._application.onPageViewCreate -= self._onPageViewCreate

        self._unregisterHtmlProcessors()

        if self._application.mainWindow is not None:
            self._guiController.destroy()
            self._unregisterActions ()

        if (self._application.selectedPage is not None and
                self._application.selectedPage.getTypeString() == WebNotePage.getTypeString()):
            self._spellController.clear()

        FactorySelector.removeFactory (WebPageFactory().getTypeString())
Beispiel #14
0
    def initialize(self):
        global _
        _ = get_()

        self._correctSysPath()
        self._application.onPageDialogPageFactoriesNeeded += self._onPageDialogPageFactoriesNeeded
        self._application.onPageViewDestroy += self._onPageViewDestroy
        self._application.onPageViewCreate += self._onPageViewCreate
        self._application.onPageUpdateNeeded += self._onPageUpdateNeeded

        self._registerHtmlProcessors()

        if self._application.mainWindow is not None:
            self._registerActions()
            self._guiController.initialize()
        FactorySelector.addFactory(WebPageFactory())
Beispiel #15
0
    def _fillComboType (self):
        self.generalPanel.typeCombo.Clear()
        for factory in FactorySelector.getFactories():
            self.generalPanel.typeCombo.Append (factory.title, factory)

        if not self.generalPanel.typeCombo.IsEmpty():
            self.generalPanel.typeCombo.SetSelection (0)
Beispiel #16
0
    def destroy(self):
        self._application.onPageDialogPageFactoriesNeeded -= self._onPageDialogPageFactoriesNeeded
        self._application.onPageViewDestroy -= self._onPageViewDestroy
        self._application.onPageViewCreate -= self._onPageViewCreate
        self._application.onPageUpdateNeeded -= self._onPageUpdateNeeded

        self._unregisterHtmlProcessors()

        if self._application.mainWindow is not None:
            self._guiController.destroy()
            self._unregisterActions()

        if (self._application.selectedPage is not None and
                self._application.selectedPage.getTypeString() == WebNotePage.getTypeString()):
            self._spellController.clear()

        FactorySelector.removeFactory(WebPageFactory().getTypeString())
Beispiel #17
0
    def __createPagesForPages(self):
        """
        Создать страницы настроек для типов страниц
        """
        for factory in FactorySelector.getFactories():
            # Список экземпляров класса PreferencePanelInfo
            panelsList = factory.getPrefPanels(self.__treeBook)

            if len(panelsList) > 0:
                self.appendPreferenceGroup(factory.title, panelsList)
Beispiel #18
0
 def __createConcretePageView(self, page):
     '''
     Create panel for the page self
     '''
     factory = FactorySelector.getFactory(page.getTypeString())
     pageView = factory.getPageView(self, self._application)
     pageView.SetBackgroundColour(self.GetBackgroundColour())
     pageView.SetForegroundColour(self.GetForegroundColour())
     self.__pageView = pageView
     self.__pageView.page = page
Beispiel #19
0
 def __createConcretePageView(self, page):
     '''
     Create panel for the page self
     '''
     factory = FactorySelector.getFactory(page.getTypeString())
     pageView = factory.getPageView(self, self._application)
     pageView.SetBackgroundColour(self.GetBackgroundColour())
     pageView.SetForegroundColour(self.GetForegroundColour())
     self.__pageView = pageView
     self.__pageView.page = page
Beispiel #20
0
    def testCreate(self):
        from webpage.webnotepage import WebPageFactory, WebNotePage

        wikiroot = WikiDocument.create(self.path)
        test_page = WebPageFactory().create(wikiroot, "Страница 1", [])
        self.assertEqual(type(test_page), WebNotePage)

        self.assertEqual(
            type(FactorySelector.getFactory(WebNotePage.getTypeString())),
            WebPageFactory)

        self.loader.clear()
        self.assertEqual(type(FactorySelector.getFactory(WebNotePage.getTypeString())),
                         UnknownPageTypeFactory)

        self.loader.load(self.dirlist)

        self.assertEqual(type(FactorySelector.getFactory(WebNotePage.getTypeString())),
                         WebPageFactory)
Beispiel #21
0
    def testAddRemoveFactory(self):
        plugin = self.loader["TestPage"]

        path = "../test/samplewiki"
        wikiroot = WikiDocument.load(path)

        test_page = wikiroot["Типы страниц/TestPage"]
        self.assertEqual(type(test_page), plugin.TestPage)

        self.assertEqual(type(FactorySelector.getFactory(plugin.TestPage.getTypeString())),
                         plugin.TestPageFactory)

        self.loader.clear()
        self.assertEqual(type(FactorySelector.getFactory(plugin.TestPage.getTypeString())),
                         TextPageFactory)

        self.loader.load(self.dirlist)

        self.assertEqual(type(FactorySelector.getFactory(plugin.TestPage.getTypeString())),
                         plugin.TestPageFactory)
Beispiel #22
0
    def testAddRemoveFactory(self):
        plugin = self.loader["TestPage"]

        path = "../test/samplewiki"
        wikiroot = WikiDocument.load(path)

        test_page = wikiroot["Типы страниц/TestPage"]
        self.assertEqual(type(test_page), plugin.TestPage)

        self.assertEqual(type(FactorySelector.getFactory(plugin.TestPage.getTypeString())),
                         plugin.TestPageFactory)

        self.loader.clear()
        self.assertEqual(type(FactorySelector.getFactory(plugin.TestPage.getTypeString())),
                         UnknownPageTypeFactory)

        self.loader.load(self.dirlist)

        self.assertEqual(type(FactorySelector.getFactory(plugin.TestPage.getTypeString())),
                         plugin.TestPageFactory)
Beispiel #23
0
    def __createPageView (self, page):
        """
        Создать панель просмотра для страницы
        """
        if page != None:
            factory = FactorySelector.getFactory (page.getTypeString())
            self.__pageView = factory.getPageView (self)
            self.__pageView.page = page

            assert self.__pageView != None

            self.contentSizer.Add (self.__pageView, 1, wx.EXPAND, 0)
            self.Layout()
            Application.onPageViewCreate (page)
    def __createPageView(self, page):
        """
        Создать панель просмотра для страницы
        """
        if page is not None:
            factory = FactorySelector.getFactory(page.getTypeString())
            self.__pageView = factory.getPageView(self)
            self.__pageView.page = page

            assert self.__pageView is not None

            self.contentSizer.Add(self.__pageView, 1, wx.EXPAND, 0)
            self.Layout()
            Application.onPageViewCreate(page)
Beispiel #25
0
    def __createPageView(self, page):
        """
        Создать панель просмотра для страницы
        """
        if page is not None:
            factory = FactorySelector.getFactory(page.getTypeString())
            pageView = factory.getPageView(self, self._application)
            pageView.SetBackgroundColour(self.GetBackgroundColour())
            pageView.SetForegroundColour(self.GetForegroundColour())
            self.__pageView = pageView
            self.__pageView.page = page

            assert self.__pageView is not None

            self.contentSizer.Add(self.__pageView, 1, wx.EXPAND, 0)
            self.Layout()
            self._application.onPageViewCreate(page)
Beispiel #26
0
    def testEvent_01 (self):
        Application.onPageFactoryListChange += self.__onFactoryChange

        FactorySelector.addFactory (TestPageFactory())

        self.assertEqual (self.addEventsCount, 1)
        self.assertEqual (self.removeEventCount, 0)
        self.assertEqual (self.eventFactory, FactorySelector.getFactory (TestPage.getTypeString()))

        Application.onPageFactoryListChange += self.__onFactoryChange

        FactorySelector.removeFactory (TestPageFactory().getTypeString())

        self.assertEqual (self.addEventsCount, 1)
        self.assertEqual (self.removeEventCount, 1)
        self.assertEqual (self.eventFactory, None)

        FactorySelector.reset()

        self.assertEqual (self.addEventsCount, 1)
        self.assertEqual (self.removeEventCount, 2)
        self.assertEqual (self.eventFactory, None)
Beispiel #27
0
 def testSelection (self):
     self.assertEqual (FactorySelector.getFactory (self.root [u"Страница 1"].getTypeString()), HtmlPageFactory)
     self.assertEqual (FactorySelector.getFactory (self.root [u"Страница 1/Страница 2"].getTypeString()), TextPageFactory)
     self.assertEqual (FactorySelector.getFactory (self.root [u"Еще одна страница"].getTypeString()), TextPageFactory)
Beispiel #28
0
 def tearDown (self):
     FactorySelector.reset()
Beispiel #29
0
 def initialize(self):
     """
     Инициализация контроллера при активации плагина. Подписка на нужные события
     """
     FactorySelector.addFactory(LatexPageFactory())
Beispiel #30
0
 def tearDown(self):
     FactorySelector.reset()
Beispiel #31
0
 def destroy (self):
     """
     Вызывается при отключении плагина
     """
     FactorySelector.removeFactory (TestPageFactory().getTypeString())
Beispiel #32
0
 def destroy(self):
     """
     Вызывается при отключении плагина
     """
     FactorySelector.removeFactory(LatexPageFactory().getTypeString())
Beispiel #33
0
 def initialize (self):
     """
     Инициализация контроллера при активации плагина. Подписка на нужные события
     """
     FactorySelector.addFactory (TestPageFactory())