Пример #1
0
    def __init__(self, config):
        self.config = config

        self.fontSize = IntegerOption(self.config,
                                      HtmlRenderConfig.HTML_SECTION,
                                      HtmlRenderConfig.FONT_SIZE_PARAM,
                                      HtmlRenderConfig.FONT_SIZE_DEFAULT)

        self.fontName = StringOption(self.config,
                                     HtmlRenderConfig.HTML_SECTION,
                                     HtmlRenderConfig.FONT_FACE_NAME_PARAM,
                                     HtmlRenderConfig.FONT_NAME_DEFAULT)

        self.fontIsBold = BooleanOption(self.config,
                                        HtmlRenderConfig.HTML_SECTION,
                                        HtmlRenderConfig.FONT_BOLD_PARAM,
                                        HtmlRenderConfig.FONT_BOLD_DEFAULT)

        self.fontIsItalic = BooleanOption(self.config,
                                          HtmlRenderConfig.HTML_SECTION,
                                          HtmlRenderConfig.FONT_ITALIC_PARAM,
                                          HtmlRenderConfig.FONT_ITALIC_DEFAULT)

        self.userStyle = StringOption(self.config,
                                      HtmlRenderConfig.HTML_SECTION,
                                      HtmlRenderConfig.USER_STYLE_PARAM,
                                      HtmlRenderConfig.USER_STYLE_DEFAULT)

        self.HTMLImprover = StringOption(
            self.config, HtmlRenderConfig.HTML_SECTION,
            HtmlRenderConfig.HTML_IMPROVER_PARAM,
            HtmlRenderConfig.HTML_IMPROVER_DEFAULT)
Пример #2
0
    def __init__(self, config):
        self.__config = config

        self.section = u"SourcePlugin"

        # Размер табуляции по умолчанию
        tabWidthOption = u"TabWidth"

        self.__tabWidth = IntegerOption(self.__config, self.section,
                                        tabWidthOption, TAB_WIDTH_DEFAULT)

        # Язык программирования по умолчанию
        defaultLanguageOption = u"DefaultLanguage"

        self.__defaultLanguage = StringOption(self.__config, self.section,
                                              defaultLanguageOption,
                                              LANGUAGE_DEFAULT)

        # Список выбранных языков программирования
        languageListOption = u"LanguageList"

        self.__languageList = ListOption(self.__config, self.section,
                                         languageListOption,
                                         LANGUAGE_LIST_DEFAULT)

        # Стиль, используемый по умолчанию (если стиль не указан явно)
        defaultStyleOption = u"DefaultStyle"

        self.__defaultStyle = StringOption(self.__config, self.section,
                                           defaultStyleOption, STYLE_DEFAULT)

        # Размеры диалога для вставки команды (:source:)
        self.DEFAULT_DIALOG_WIDTH = -1
        self.DEFAULT_DIALOG_HEIGHT = -1

        dialogWidthOption = u"DialogWidth"
        dialogHeightOption = u"DialogHeight"

        self.__dialogWidth = IntegerOption(self.__config, self.section,
                                           dialogWidthOption,
                                           self.DEFAULT_DIALOG_WIDTH)

        self.__dialogHeight = IntegerOption(self.__config, self.section,
                                            dialogHeightOption,
                                            self.DEFAULT_DIALOG_HEIGHT)

        # Настройка "Использовать фон страницы в блоке кода"
        self.DEFAULT_PARENT_BACKGROUND = False
        parentBgOption = u"ParentBg"

        self.__parentBg = BooleanOption(self.__config, self.section,
                                        parentBgOption,
                                        self.DEFAULT_PARENT_BACKGROUND)

        # Настройка для добавления нумерации строк
        self.DEFAULT_LINE_NUM = False
        lineNumOption = u"LineNum"

        self.__lineNum = BooleanOption(self.__config, self.section,
                                       lineNumOption, self.DEFAULT_LINE_NUM)
Пример #3
0
    def __init__(self, config):
        self.config = config

        self.colorFontNormal = StringOption(self.config, self.SECTION,
                                            self.TAG_COLOR_FONT_NORMAL_PARAM,
                                            self.TAG_COLOR_FONT_NORMAL_DEFAULT)

        self.colorFontSelected = StringOption(
            self.config, self.SECTION, self.TAG_COLOR_FONT_SELECTED_PARAM,
            self.TAG_COLOR_FONT_SELECTED_DEFAULT)

        self.colorFontNormalHover = StringOption(
            self.config, self.SECTION, self.TAG_COLOR_FONT_NORMAL_HOVER_PARAM,
            self.TAG_COLOR_FONT_NORMAL_HOVER_DEFAULT)

        self.colorFontSelectedHover = StringOption(
            self.config, self.SECTION,
            self.TAG_COLOR_FONT_SELECTED_HOVER_PARAM,
            self.TAG_COLOR_FONT_SELECTED_HOVER_DEFAULT)

        self.colorBackSelected = StringOption(
            self.config, self.SECTION, self.TAG_COLOR_BACK_SELECTED_PARAM,
            self.TAG_COLOR_BACK_SELECTED_DEFAULT)

        self.leftClickAction = IntegerOption(self.config, self.SECTION,
                                             self.LEFT_CLICK_ACTION_PARAM,
                                             self.LEFT_CLICK_ACTION_DEFAULT)

        self.middleClickAction = IntegerOption(
            self.config, self.SECTION, self.MIDDLE_CLICK_ACTION_PARAM,
            self.MIDDLE_CLICK_ACTION_DEFAULT)
Пример #4
0
    def __init__(self, config):
        self.config = config

        self.width = IntegerOption(self.config,
                                   MainWindowConfig.MAIN_WINDOW_SECTION,
                                   self.WIDTH_SECTION, self.WIDTH_DEFAULT)

        self.height = IntegerOption(self.config,
                                    MainWindowConfig.MAIN_WINDOW_SECTION,
                                    self.HEIGHT_SECTION, self.HEIGHT_DEFAULT)

        self.recentStyle = StringOption(self.config,
                                        GeneralGuiConfig.GENERAL_SECTION,
                                        self.RECENT_STYLE_SECTION,
                                        self.RECENT_STYLE_DEFAULT)

        self.recentCreatedPageType = StringOption(
            self.config, GeneralGuiConfig.GENERAL_SECTION,
            self.RECENT_CREATED_PAGE_TYPE_PARAM,
            self.RECENT_CREATED_PAGE_TYPE_DEFAULT)

        self.newPageOrderCalculator = IntegerOption(
            self.config, GeneralGuiConfig.GENERAL_SECTION,
            self.RECENT_NEW_PAGE_ORDER_CALCULATOR_PARAM,
            self.RECENT_NEW_PAGE_ORDER_CALCULATOR_DEFAULT)
Пример #5
0
    def testStringOpt4(self):
        opt = StringOption(self.config, "Test", "strval3", "defaultval")
        newopt = StringOption(self.config, "Test", "strval3", "defaultval")

        opt.value = "проверка"

        self.assertEqual(newopt.value, "проверка")
Пример #6
0
    def testStringOpt4 (self):
        opt = StringOption (self.config, u"Test", u"strval3", "defaultval")
        newopt = StringOption (self.config, u"Test", u"strval3", "defaultval")

        opt.value = u"проверка"

        self.assertEqual (newopt.value, u"проверка")
Пример #7
0
    def testSubwikiParams (self):
        """
        Проверка того, что установка параметров страницы как полноценной вики не портит исходные параметры
        """
        param = StringOption (self.wikiroot["Страница 1"].params, "TestSection_1", "value1", "")
        param.value = "Значение 1"

        path = os.path.join (self.path, "Страница 1")
        subwiki = WikiDocument.load (path)

        subwikiparam = StringOption (subwiki.params, "TestSection_1", "value1", "")
        self.assertEqual (subwikiparam.value, "Значение 1")

        # Добавим новый параметр
        subwikiparam1 = StringOption (subwiki.params, "TestSection_1", "value1", "")
        subwikiparam2 = StringOption (subwiki.params, "TestSection_2", "value2", "")
        subwikiparam2.value = "Значение 2"

        self.assertEqual (subwikiparam1.value, "Значение 1")
        self.assertEqual (subwikiparam2.value, "Значение 2")

        # На всякий случай прочитаем вики еще раз
        wiki = WikiDocument.load (self.path)

        wikiparam1 = StringOption (wiki["Страница 1"].params, "TestSection_1", "value1", "")
        wikiparam2 = StringOption (wiki["Страница 1"].params, "TestSection_2", "value2", "")

        self.assertEqual (wikiparam1.value, "Значение 1")
        self.assertEqual (wikiparam2.value, "Значение 2")
Пример #8
0
    def testRemoveOption1(self):
        opt = StringOption(self.config, "Test", "strval",
                           "Значение по умолчанию")
        self.assertEqual(opt.value, "тест")

        opt.remove_option()
        self.assertEqual(opt.value, "Значение по умолчанию")
Пример #9
0
    def testSubwikiParams(self):
        """
        Проверка того, что установка параметров страницы как полноценной вики не портит исходные параметры
        """
        param = StringOption(self.wikiroot["Страница 1"].params,
                             "TestSection_1", "value1", "")
        param.value = "Значение 1"

        path = os.path.join(self.path, "Страница 1")
        subwiki = WikiDocument.load(path)

        subwikiparam = StringOption(subwiki.params, "TestSection_1", "value1",
                                    "")
        self.assertEqual(subwikiparam.value, "Значение 1")

        # Добавим новый параметр
        subwikiparam1 = StringOption(subwiki.params, "TestSection_1", "value1",
                                     "")
        subwikiparam2 = StringOption(subwiki.params, "TestSection_2", "value2",
                                     "")
        subwikiparam2.value = "Значение 2"

        self.assertEqual(subwikiparam1.value, "Значение 1")
        self.assertEqual(subwikiparam2.value, "Значение 2")

        # На всякий случай прочитаем вики еще раз
        wiki = WikiDocument.load(self.path)

        wikiparam1 = StringOption(wiki["Страница 1"].params, "TestSection_1",
                                  "value1", "")
        wikiparam2 = StringOption(wiki["Страница 1"].params, "TestSection_2",
                                  "value2", "")

        self.assertEqual(wikiparam1.value, "Значение 1")
        self.assertEqual(wikiparam2.value, "Значение 2")
Пример #10
0
    def testStringOpt3 (self):
        opt = StringOption (self.config, u"Test", u"strval3", "defaultval")
        opt.value = u"проверка"

        newconfig = Config (self.path)
        newopt = StringOption (newconfig, u"Test", u"strval3", "defaultval")

        self.assertEqual (newopt.value, u"проверка")
Пример #11
0
    def testRemoveOption2(self):
        opt = StringOption(self.config, u"Test", u"strval",
                           u"Значение по умолчанию")
        opt.remove_option()

        opt2 = StringOption(self.config, u"Test", u"strval",
                            u"Значение по умолчанию")
        self.assertEqual(opt2.value, u"Значение по умолчанию")
Пример #12
0
    def testStringOpt3(self):
        opt = StringOption(self.config, "Test", "strval3", "defaultval")
        opt.value = "проверка"

        newconfig = Config(self.path)
        newopt = StringOption(newconfig, "Test", "strval3", "defaultval")

        self.assertEqual(newopt.value, "проверка")
Пример #13
0
    def testParams(self):
        typeOption = StringOption(self.root[u"Страница 1"].params, u"General",
                                  u"type", u"")
        tagsOption = StringOption(self.root[u"Страница 1"].params, u"General",
                                  u"tags", u"")

        self.assertEqual(typeOption.value, u"html")
        self.assertEqual(tagsOption.value, u"Тест, test, двойной тег")
Пример #14
0
    def testRemoveOption1(self):
        opt = StringOption(self.config,
                           "Test",
                           "strval",
                           "Значение по умолчанию")
        self.assertEqual(opt.value, "тест")

        opt.remove_option()
        self.assertEqual(opt.value, "Значение по умолчанию")
Пример #15
0
    def __getUid(self, page):
        """
        Прочитать и вернуть UID страницы, если он есть. Если его нет, возвращается None
        """
        uid = StringOption(page.params, self.__configSection,
                           self.__configParamName, u"").value.lower()

        if len(uid.strip()) == 0:
            uid = None

        return uid
Пример #16
0
    def testSetRootParams (self):
        param = StringOption (self.wikiroot.params, "TestSection_1", "value1", "")
        param.value = "Значение 1"

        self.assertEqual (param.value, "Значение 1")

        # Прочитаем вики и проверим установленный параметр
        wiki = WikiDocument.create (self.path)

        param_new = StringOption (wiki.params, "TestSection_1", "value1", "")
        self.assertEqual (param_new.value, "Значение 1")
Пример #17
0
    def testSetRootParams (self):
        param = StringOption (self.wikiroot.params, "TestSection_1", "value1", "")
        param.value = "Значение 1"

        self.assertEqual (param.value, "Значение 1")

        # Прочитаем вики и проверим установленный параметр
        wiki = WikiDocument.create (self.path)

        param_new = StringOption (wiki.params, "TestSection_1", "value1", "")
        self.assertEqual (param_new.value, "Значение 1")
Пример #18
0
    def __init__(self, config):
        self.config = config

        self.titleFormat = StringOption(self.config,
                                        MainWindowConfig.MAIN_WINDOW_SECTION,
                                        self.TITLE_FORMAT_SECTION,
                                        self.TITLE_FORMAT_DEFAULT)

        self.width = IntegerOption(self.config,
                                   MainWindowConfig.MAIN_WINDOW_SECTION,
                                   self.WIDTH_SECTION, self.WIDTH_DEFAULT)

        self.height = IntegerOption(self.config,
                                    MainWindowConfig.MAIN_WINDOW_SECTION,
                                    self.HEIGHT_SECTION, self.HEIGHT_DEFAULT)

        self.xPos = IntegerOption(self.config,
                                  MainWindowConfig.MAIN_WINDOW_SECTION,
                                  self.XPOS_SECTION, self.XPOS_DEFAULT)

        self.yPos = IntegerOption(self.config,
                                  MainWindowConfig.MAIN_WINDOW_SECTION,
                                  self.YPOS_SECTION, self.YPOS_DEFAULT)

        self.fullscreen = BooleanOption(self.config,
                                        MainWindowConfig.MAIN_WINDOW_SECTION,
                                        self.FULLSCREEN_SECTION,
                                        self.FULLSCREEN_DEFAULT)

        self.maximized = BooleanOption(self.config,
                                       MainWindowConfig.MAIN_WINDOW_SECTION,
                                       self.MAXIMIZED_SECTION,
                                       self.MAXIMIZED_DEFAULT)

        self.datetimeStatusWidth = IntegerOption(
            self.config, MainWindowConfig.MAIN_WINDOW_SECTION,
            self.DATETIME_STATUS_WIDTH_SECTION,
            self.DATETIME_STATUS_WIDTH_DEFAULT)

        self.statusbar_visible = BooleanOption(
            self.config, MainWindowConfig.MAIN_WINDOW_SECTION,
            self.STATUSBAR_VISIBLE_SECTION, self.STATUSBAR_VISIBLE_DEFAULT)

        self.mainPanesBackgroundColor = StringOption(
            self.config, MainWindowConfig.MAIN_WINDOW_SECTION,
            self.MAIN_PANES_BACKGROUND_COLOR_SECTION,
            self.MAIN_PANES_BACKGROUND_COLOR_DEFAULT)

        self.mainPanesTextColor = StringOption(
            self.config, MainWindowConfig.MAIN_WINDOW_SECTION,
            self.MAIN_PANES_TEXT_COLOR_SECTION,
            self.MAIN_PANES_TEXT_COLOR_DEFAULT)
Пример #19
0
    def __init__(self, config):
        self.config = config

        # Спрашивать подтверждение выхода?
        self.askBeforeExit = BooleanOption(self.config, self.GENERAL_SECTION,
                                           self.ASK_BEFORE_EXIT_PARAM,
                                           self.ASK_BEFORE_EXIT_DEFAULT)

        # Интервал, через которое происходит автосохранение страницы.
        # Если значение <= 0, значит автосохранение отключено
        self.autosaveInterval = IntegerOption(self.config,
                                              self.GENERAL_SECTION,
                                              self.AUTOSAVE_INTERVAL_PARAM,
                                              self.AUTOSAVE_INTERVAL_DEFAULT)

        # Количество последних открытых вики
        self.historyLength = IntegerOption(self.config, self.RECENT_SECTION,
                                           self.RECENT_WIKI_COUNT_PARAM,
                                           self.RECENT_WIKI_COUNT_DEFAULT)

        # Recently icons history length
        self.iconsHistoryLength = IntegerOption(
            self.config, self.RECENT_SECTION, self.RECENT_ICONS_COUNT_PARAM,
            self.RECENT_ICONS_COUNT_DEFAULT)

        # Открывать последнуюю открытую вики при старте?
        self.autoopen = BooleanOption(self.config, self.RECENT_SECTION,
                                      self.RECENT_AUTOOPEN_PARAM,
                                      self.RECENT_AUTOOPEN_DEFAULT)

        # Формат для представления даты и времени модификиции страниц
        self.dateTimeFormat = StringOption(self.config, self.GENERAL_SECTION,
                                           self.DATETIME_FORMAT_PARAM,
                                           self.DATETIME_FORMAT_DEFAULT)

        # Последний используемый формат для представления даты и времени
        # модификиции страниц
        self.recentDateTimeFormat = StringOption(
            self.config, self.GENERAL_SECTION,
            self.RECENT_DATETIME_FORMAT_PARAM, self.dateTimeFormat.value)

        # Default tab for page(editor / preview / recent used)
        self.pageTab = IntegerOption(self.config, self.GENERAL_SECTION,
                                     self.PAGE_TAB_PARAM, self.PAGE_TAB_RECENT)

        # Default columns count in table dialog
        self.tableColsCount = IntegerOption(self.config, self.GENERAL_SECTION,
                                            self.TABLE_COLS_COUNT,
                                            self.TABLE_COLS_COUNT_DEFAULT)

        self.debug = BooleanOption(self.config, self.GENERAL_SECTION,
                                   self.DEBUG_PARAM, self.DEBUG_DEFAULT)
Пример #20
0
    def testSetPageParams (self):
        param = StringOption (self.wikiroot["Страница 1"].params, "TestSection_1", "value1", "")
        param.value = "Значение 1"

        param2 = StringOption (self.wikiroot["Страница 1"].params, "TestSection_1", "value1", "")
        self.assertEqual (param.value, "Значение 1")
        self.assertEqual (param2.value, "Значение 1")

        # Прочитаем вики и проверим установленный параметр
        wiki = WikiDocument.load (self.path)
        param3 = StringOption (wiki["Страница 1"].params, "TestSection_1", "value1", "")

        self.assertEqual (param3.value, "Значение 1")
Пример #21
0
    def testSetPageParams (self):
        param = StringOption (self.wikiroot["Страница 1"].params, "TestSection_1", "value1", "")
        param.value = "Значение 1"

        param2 = StringOption (self.wikiroot["Страница 1"].params, "TestSection_1", "value1", "")
        self.assertEqual (param.value, "Значение 1")
        self.assertEqual (param2.value, "Значение 1")

        # Прочитаем вики и проверим установленный параметр
        wiki = WikiDocument.load (self.path)
        param3 = StringOption (wiki["Страница 1"].params, "TestSection_1", "value1", "")

        self.assertEqual (param3.value, "Значение 1")
Пример #22
0
    def __getUid (self, page):
        """
        Прочитать и вернуть UID страницы, если он есть. Если его нет, возвращается None
        """
        uid = StringOption (page.params,
                            self.__configSection,
                            self.__configParamName,
                            u"").value.lower()

        if len (uid.strip()) == 0:
            uid = None

        return uid
Пример #23
0
    def __init__(self, config):
        self.config = config

        self.wikiColor = StringOption(self.config, self.SECTION, u'wiki',
                                      u'#9DC0FA')

        self.htmlColor = StringOption(self.config, self.SECTION, u'html',
                                      u'#F1F779')

        self.textColor = StringOption(self.config, self.SECTION, u'text',
                                      u'#79F7B8')

        self.searchColor = StringOption(self.config, self.SECTION, u'search',
                                        u'#F280E3')
Пример #24
0
    def phrase (self, phrase):
        """
        Устанавливает искомую фразу
        """
        self._phrase = phrase

        phraseOption = StringOption (self.params, self.paramsSection, u"phrase", u"")
        try:
            phraseOption.value = phrase
        except ReadonlyException:
            # Ничего страшного, если поисковая фраза не сохранится
            pass

        Application.onPageUpdate (self, change=PAGE_UPDATE_CONTENT)
Пример #25
0
    def phrase (self, phrase):
        """
        Устанавливает искомую фразу
        """
        self._phrase = phrase

        phraseOption = StringOption (self.params, self.paramsSection, u"phrase", u"")
        try:
            phraseOption.value = phrase
        except ReadonlyException:
            # Ничего страшного, если поисковая фраза не сохранится
            pass

        Application.onPageUpdate (self, change=PAGE_UPDATE_CONTENT)
Пример #26
0
    def test_setColor_manual(self):
        from pagetypecolor.colorslist import ColorsList
        from pagetypecolor.config import PageTypeColorConfig

        color = '#AABBCC'
        pagetype = 'wiki'

        color_param = StringOption(self.application.config,
                                   PageTypeColorConfig.SECTION, pagetype, None)
        color_param.value = color

        colorslist = ColorsList(self.application)
        colorslist.load()

        self.assertEqual(colorslist.getColor(pagetype), color)
Пример #27
0
    def searchTags (self, tags):
        """
        Выбрать теги для поиска
        """
        self._searchTags = tags
        tags_str = getTagsString (tags)

        tagsOption = StringOption (self.params, self.paramsSection, u"tags", u"")

        try:
            tagsOption.value = tags_str
        except ReadonlyException:
            # Ну не сохранятся искомые теги, ничего страшного
            pass

        Application.onPageUpdate (self, change=PAGE_UPDATE_CONTENT)
Пример #28
0
    def load(self):
        config = PageTypeColorConfig(self._application.config)

        # Colors for built-in page types
        self._colors = {
            u'wiki': config.wikiColor.value,
            u'html': config.htmlColor.value,
            u'text': config.textColor.value,
            u'search': config.searchColor.value,
        }

        eventParams = PageDialogPageFactoriesNeededParams(None, None)
        self._application.onPageDialogPageFactoriesNeeded(None, eventParams)

        for factory in eventParams.pageFactories:
            typeString = factory.getTypeString()

            if typeString not in self._colors:
                color_param = StringOption(self._application.config,
                                           PageTypeColorConfig.SECTION,
                                           typeString,
                                           None)

                if color_param.value is None:
                    color = self._getNewColor()
                    self.setColor(typeString, color)
                else:
                    self._colors[typeString] = color_param.value
Пример #29
0
    def changeUid(self, page, newUid):
        """
        Изменить идентификатор страницы.
        Если новый идентификатор уже существует, бросается исключение KeyError.
        Если идентификатор содержит только пробелы или содержит символ "/",
        бросается исключение ValueError
        """
        if len(newUid.strip()) == 0:
            raise ValueError

        newUid = newUid.lower()

        oldUid = self.__getUid(page)
        if newUid == oldUid:
            return

        if newUid in self.__uids:
            raise KeyError

        # Запрещено использовать "/" в идентификаторе
        if u"/" in newUid:
            raise ValueError

        if page.readonly:
            raise ReadonlyException

        if oldUid in self.__uids:
            del self.__uids[oldUid]

        self.__uids[newUid] = page

        StringOption(page.params,
                     self.__configSection,
                     self.__configParamName,
                     u"").value = newUid
Пример #30
0
    def searchTags (self, tags):
        """
        Выбрать теги для поиска
        """
        self._searchTags = tags
        tags_str = getTagsString (tags)

        tagsOption = StringOption (self.params, self.paramsSection, u"tags", u"")

        try:
            tagsOption.value = tags_str
        except ReadonlyException:
            # Ну не сохранятся искомые теги, ничего страшного
            pass

        Application.onPageUpdate (self, change=PAGE_UPDATE_CONTENT)
Пример #31
0
 def _getSearchTags (self):
     """
     Загрузить список тегов из настроек страницы
     """
     tagsOption = StringOption (self.params, self.paramsSection, u"tags", u"")
     tags = parseTagsList (tagsOption.value)
     return tags
Пример #32
0
    def test_setColor_manual(self):
        from pagetypecolor.colorslist import ColorsList
        from pagetypecolor.config import PageTypeColorConfig

        color = '#AABBCC'
        pagetype = 'wiki'

        color_param = StringOption(self.application.config,
                                   PageTypeColorConfig.SECTION,
                                   pagetype,
                                   None)
        color_param.value = color

        colorslist = ColorsList(self.application)
        colorslist.load()

        self.assertEqual(colorslist.getColor(pagetype), color)
Пример #33
0
    def __init__(self, config):
        self._config = config

        self.ORGANIZER_SECTION = u'OrganizerPlugin'

        self.DATETIME_FORMAT_PARAM = u'Organizer_DateTimeFormat'
        self.DATETIME_FORMAT_DEFAULT = u'%d.%m.%Y'

        self.dateTimeFormat = StringOption(self._config,
                                           self.ORGANIZER_SECTION,
                                           self.DATETIME_FORMAT_PARAM,
                                           self.DATETIME_FORMAT_DEFAULT)

        self.ORG_STYLES_PARAM = u'Organizer_DateTimeFormat'
        self.ORG_STYLES_DEFAULT = u'''.org {
			width: 100%;
			text-align: center;
		}

		.org-date {
			width: 100%;
			text-align: left;
			padding-left: 2em;
			font-weight: bold;
		}

		.org-table {
			width: 98%;
			border-collapse: collapse;
			margin: 0 auto;
			text-align: left;
		}

		.org-table td, th {
			padding: 5px;
			border: 1px solid black;
			text-align: left;
		}
		.org-table th {
			background: #91DAF2;
			text-align: center;
		}'''

        self.orgStyles = StringOption(self._config, self.ORGANIZER_SECTION,
                                      self.ORG_STYLES_PARAM,
                                      self.ORG_STYLES_DEFAULT)
Пример #34
0
 def __init__(self, config):
     self.config = config
     self.contentDefault = _(
         u"""!!! Attachment\n(:attachlist:)\n----\n!!! Child pages\n(:childlist:)"""
     )
     self.configSecton = u"Wiki"
     self.configParam = u"EmptyContent"
     self.option = StringOption(self.config, self.configSecton,
                                self.configParam, self.contentDefault)
Пример #35
0
    def _loadSession(self, sessions, nSession):
        """
        Прочитать сессию с номером nSession из конфига и добавить ее в словарь sessions. Ключ в словаре - имя сессии
        """
        # Прочитаем имя сессии
        name = StringOption(self._config, self.SECTION_NAME,
                            self.SESSION_NAME.format(nSession), u"").value
        if len(name) == 0:
            return

        # Прочитаем путь до вики
        path = StringOption(self._config, self.SECTION_NAME,
                            self.SESSION_PATH.format(nSession), u"").value

        if len(path) == 0:
            return

        links = []

        # Прочитаем количество вкладок
        tabsCount = IntegerOption(self._config, self.SECTION_NAME,
                                  self.TABS_COUNT.format(nSession), 0).value

        # Прочитаем номер выбранной вкладки
        currentTab = IntegerOption(self._config, self.SECTION_NAME,
                                   self.CURRENT_TAB.format(nSession), 0).value

        # Открывать вики в режиме "только для чтения"?
        readonly = BooleanOption(self._config, self.SECTION_NAME,
                                 self.SESSION_READONLY.format(nSession),
                                 False).value

        # Прочитаем список страниц
        for nPage in range(tabsCount):
            link = StringOption(self._config, self.SECTION_NAME,
                                self.SESSION_TAB.format(nSession, nPage),
                                u"").value

            if len(link) != 0:
                links.append(link)

        sessions[name] = SessionInfo(path, links, currentTab, readonly)
Пример #36
0
    def style(self):
        styleOption = u"Style"

        # Стиль, выбранный в диалоге по умолчанию
        # Переменная, отвечающая за параметр создается здесь,
        # чтобы можно было использовать значение по умолчанию,
        # прочитанное из defaultStyle
        style = StringOption(self.__config, self.section, styleOption,
                             self.defaultStyle.value)

        return style
Пример #37
0
    def __init__(self, config):
        self.config = config

        # Показывать вкладку с HTML-кодом?
        self.showHtmlCodeOptions = BooleanOption(
            self.config,
            WikiConfig.WIKI_SECTION,
            WikiConfig.SHOW_HTML_CODE_PARAM,
            True)

        # Размер превьюшек по умолчанию
        self.thumbSizeOptions = IntegerOption(self.config,
                                              WikiConfig.WIKI_SECTION,
                                              WikiConfig.THUMB_SIZE_PARAM,
                                              WikiConfig.THUMB_SIZE_DEFAULT)

        # Показывать список прикрепленных файлов вместо пустой страницы?
        self.showAttachInsteadBlankOptions = BooleanOption(
            self.config,
            WikiConfig.WIKI_SECTION,
            WikiConfig.SHOW_ATTACH_BLANK_PARAM,
            True)

        # Стиль ссылок по умолчанию
        self.linkStyleOptions = IntegerOption(self.config,
                                              WikiConfig.WIKI_SECTION,
                                              WikiConfig.LINK_STYLE_PARAM,
                                              WikiConfig.LINK_STYLE_DEFAULT)

        # Стили редактора
        self.link = StcStyleOption(self.config,
                                   WikiConfig.STYLES_SECTION,
                                   WikiConfig.STYLE_LINK_PARAM,
                                   WikiConfig.STYLE_LINK_DEFAULT)

        self.heading = StcStyleOption(self.config,
                                      WikiConfig.STYLES_SECTION,
                                      WikiConfig.STYLE_HEADING_PARAM,
                                      WikiConfig.STYLE_HEADING_DEFAULT)

        self.command = StcStyleOption(self.config,
                                      WikiConfig.STYLES_SECTION,
                                      WikiConfig.STYLE_COMMAND_PARAM,
                                      WikiConfig.STYLE_COMMAND_DEFAULT)

        self.colorizeSyntax = BooleanOption(self.config,
                                            self.WIKI_SECTION,
                                            self.COLORIZE_SYNTAX_PARAM,
                                            self.COLORIZE_SYNTAX_DEFAULT)

        self.recentStyleName = StringOption(self.config,
                                            self.WIKI_SECTION,
                                            self.RECENT_STYLE_NAME_PARAM,
                                            self.RECENT_STYLE_NAME_DEFAULT)
Пример #38
0
    def test_init_markdown_config(self):
        pagetype = 'markdown'
        self._loadMarkdownPlugin()

        from pagetypecolor.colorslist import ColorsList
        from pagetypecolor.config import PageTypeColorConfig

        colorslist = ColorsList(self.application)
        colorslist.load()

        color_param = StringOption(self.application.config,
                                   PageTypeColorConfig.SECTION, pagetype, None)
        self.assertIsNotNone(color_param.value)
Пример #39
0
    def test_empty(self):
        from pagetypecolor.colorslist import ColorsList
        from pagetypecolor.config import PageTypeColorConfig

        pagetype = 'wiki'

        colorslist = ColorsList(self.application)

        color_param = StringOption(self.application.config,
                                   PageTypeColorConfig.SECTION, pagetype, None)
        self.assertIsNone(color_param.value)

        self.assertEqual(list(colorslist.getPageTypes()), [])
Пример #40
0
    def testSaveListOption9(self):
        testlist = [""]

        opt = ListOption(self.config, "Test", "savelist", [], separator="|")
        opt.value = testlist

        newconfig = Config(self.path)
        newopt = ListOption(newconfig, "Test", "savelist", [], separator="|")

        self.assertEqual(newopt.value, testlist)

        stringopt = StringOption(self.config, "Test", "savelist", "")
        self.assertEqual(stringopt.value.strip(), "")
Пример #41
0
 def testSetParameter1 (self):
     param = StringOption (self.wiki["Страница 1"].params, "section", "param", "")
     param.value = "value"
Пример #42
0
 def testRemoveOption3 (self):
     opt = StringOption (self.config, u"Test", u"invalid", u"Значение по умолчанию")
     opt.remove_option()
Пример #43
0
 def testSetParameter2 (self):
     param = StringOption (self.wiki[u"Страница 2/Страница 3"].params, "section", "param", u"")
     param.value = u"value"
Пример #44
0
    def testRemoveOption2 (self):
        opt = StringOption (self.config, u"Test", u"strval", u"Значение по умолчанию")
        opt.remove_option()

        opt2 = StringOption (self.config, u"Test", u"strval", u"Значение по умолчанию")
        self.assertEqual (opt2.value, u"Значение по умолчанию")