Beispiel #1
0
    def testParse_12 (self):
        style = StcStyle.parse (u"fore:#AAAAAA,back:#222222,bold,underline")

        self.assertEqual (style.bold, True)
        self.assertEqual (style.italic, False)
        self.assertEqual (style.underline, True)
        self.assertEqual (style.fore, u"#AAAAAA")
        self.assertEqual (style.back, u"#222222")
Beispiel #2
0
    def testParse_03 (self):
        style = StcStyle.parse (u"fore:#000000,bold")

        self.assertEqual (style.bold, True)
        self.assertEqual (style.italic, False)
        self.assertEqual (style.underline, False)
        self.assertEqual (style.fore, u"#000000")
        self.assertEqual (style.back, u"#FFFFFF")
Beispiel #3
0
    def testParse_14 (self):
        style = StcStyle.parse (u"back:#222222,bold,,,underline")

        self.assertEqual (style.bold, True)
        self.assertEqual (style.italic, False)
        self.assertEqual (style.underline, True)
        self.assertEqual (style.fore, u"#000000")
        self.assertEqual (style.back, u"#222222")
Beispiel #4
0
    def testParse_14(self):
        style = StcStyle.parse(u"back:#222222,bold,,,underline")

        self.assertEqual(style.bold, True)
        self.assertEqual(style.italic, False)
        self.assertEqual(style.underline, True)
        self.assertEqual(style.fore, u"#000000")
        self.assertEqual(style.back, u"#222222")
Beispiel #5
0
    def testParse_05 (self):
        style = StcStyle.parse (u"FORE:#AAAAAA")

        self.assertEqual (style.bold, False)
        self.assertEqual (style.italic, False)
        self.assertEqual (style.underline, False)
        self.assertEqual (style.fore, u"#AAAAAA")
        self.assertEqual (style.back, u"#FFFFFF")
Beispiel #6
0
    def testParse_06(self):
        style = StcStyle.parse("fore:#AAAAAA,bold")

        self.assertEqual(style.bold, True)
        self.assertEqual(style.italic, False)
        self.assertEqual(style.underline, False)
        self.assertEqual(style.fore, "#AAAAAA")
        self.assertEqual(style.back, "#FFFFFF")
Beispiel #7
0
    def testParse_04(self):
        style = StcStyle.parse("fore:#AAAAAA")

        self.assertEqual(style.bold, False)
        self.assertEqual(style.italic, False)
        self.assertEqual(style.underline, False)
        self.assertEqual(style.fore, "#AAAAAA")
        self.assertEqual(style.back, "#FFFFFF")
Beispiel #8
0
    def testParse_11(self):
        style = StcStyle.parse(" fore:#AAAAAA , back:#222222 , bold,italic , underline ")

        self.assertEqual(style.bold, True)
        self.assertEqual(style.italic, True)
        self.assertEqual(style.underline, True)
        self.assertEqual(style.fore, "#AAAAAA")
        self.assertEqual(style.back, "#222222")
Beispiel #9
0
    def testParse_05(self):
        style = StcStyle.parse(u"FORE:#AAAAAA")

        self.assertEqual(style.bold, False)
        self.assertEqual(style.italic, False)
        self.assertEqual(style.underline, False)
        self.assertEqual(style.fore, u"#AAAAAA")
        self.assertEqual(style.back, u"#FFFFFF")
Beispiel #10
0
    def testParse_03(self):
        style = StcStyle.parse(u"fore:#000000,bold")

        self.assertEqual(style.bold, True)
        self.assertEqual(style.italic, False)
        self.assertEqual(style.underline, False)
        self.assertEqual(style.fore, u"#000000")
        self.assertEqual(style.back, u"#FFFFFF")
Beispiel #11
0
    def testParse_12(self):
        style = StcStyle.parse(u"fore:#AAAAAA,back:#222222,bold,underline")

        self.assertEqual(style.bold, True)
        self.assertEqual(style.italic, False)
        self.assertEqual(style.underline, True)
        self.assertEqual(style.fore, u"#AAAAAA")
        self.assertEqual(style.back, u"#222222")
Beispiel #12
0
    def _loadValue(self):
        """
        Получить значение. В производных классах этот метод переопределяется
        """
        style = StcStyle.parse(self.config.get(self.section, self.param))
        if style is None:
            raise ValueError

        return style
Beispiel #13
0
    def testParse_11(self):
        style = StcStyle.parse(
            " fore:#AAAAAA , back:#222222 , bold,italic , underline ")

        self.assertEqual(style.bold, True)
        self.assertEqual(style.italic, True)
        self.assertEqual(style.underline, True)
        self.assertEqual(style.fore, "#AAAAAA")
        self.assertEqual(style.back, "#222222")
Beispiel #14
0
    def _loadValue(self):
        """
        Получить значение. В производных классах этот метод переопределяется
        """
        style = StcStyle.parse(self.config.get(self.section, self.param))
        if style is None:
            raise ValueError

        return style
Beispiel #15
0
 def testParse_invalid (self):
     self.assertEqual (StcStyle.parse (u"sdgsgd"), None)
     self.assertEqual (StcStyle.parse (u"fore:#AAAAAA,back:#222222,boldasdfa"), None)
Beispiel #16
0
class WikiConfig (object):
    """
    Класс, хранящий указатели на настройки, связанные с викиы
    """
    # Секция конфига для параметров, связанных с викистраницей
    WIKI_SECTION = u"Wiki"

    # Секция, куда записывать параметры стилей оформления редактора
    STYLES_SECTION = u"EditorStyles"

    # Имя параметра "Показывать ли код HTML?"
    SHOW_HTML_CODE_PARAM = u"ShowHtmlCode"

    # Имя параметра для размера превьюшек по умолчанию
    THUMB_SIZE_PARAM = u"ThumbSize"

    # Имя параметра, показывающего, надо ли выводить список
    # прикрепленных файлов вместо пустой страницы
    SHOW_ATTACH_BLANK_PARAM = u"ShowAttachInsteadBlank"

    # Размер превьюшек по умолчанию
    THUMB_SIZE_DEFAULT = 250

    # Имя параметра "Стиль ссылок по умолчанию"
    LINK_STYLE_PARAM = u"DefaultLinkStyle"

    # Стиль ссылок по умолчанию ([[... -> ...]] или [[... | ...]])
    LINK_STYLE_DEFAULT = 0

    # Стили редактора
    STYLE_LINK_PARAM = u"link"
    STYLE_LINK_DEFAULT = StcStyle.parse(u"fore:#0000FF,underline")

    STYLE_HEADING_PARAM = u"heading"
    STYLE_HEADING_DEFAULT = StcStyle.parse(u"bold")

    STYLE_COMMAND_PARAM = u"command"
    STYLE_COMMAND_DEFAULT = StcStyle.parse(u"fore:#6A686B")

    COLORIZE_SYNTAX_PARAM = u'ColorizeSyntax'
    COLORIZE_SYNTAX_DEFAULT = True

    RECENT_STYLE_NAME_PARAM = 'RecentStyleName'
    RECENT_STYLE_NAME_DEFAULT = ''

    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)
Beispiel #17
0
class HtmlEditorStylesConfig(object):
    '''
    Класс для хранения настроек стилей редактора HTML
    '''
    HTML_STYLES_SECTION = u'EditorStyles'

    STYLE_TAG_SECTION = u'tag'
    STYLE_TAG_DEFAULT = StcStyle.parse(u'fore:#000080,bold')

    STYLE_TAG_UNKNOWN_SECTION = u'tag_unknown'
    STYLE_TAG_UNKNOWN_DEFAULT = StcStyle.parse(u'fore:#FF0000')

    STYLE_ATTRIBUTE_SECTION = u'attribute'
    STYLE_ATTRIBUTE_DEFAULT = StcStyle.parse(u'fore:#008080')

    STYLE_ATTRIBUTE_UNKNOWN_SECTION = u'attribute_unknown'
    STYLE_ATTRIBUTE_UNKNOWN_DEFAULT = StcStyle.parse(u'fore:#FF0000')

    STYLE_NUMBER_SECTION = u'number'
    STYLE_NUMBER_DEFAULT = StcStyle.parse(u'fore:#000000')

    STYLE_STRING_SECTION = u'string'
    STYLE_STRING_DEFAULT = StcStyle.parse(u'fore:#0000FF')

    STYLE_COMMENT_SECTION = u'comment'
    STYLE_COMMENT_DEFAULT = StcStyle.parse(u'fore:#12B535')

    def __init__(self, config):
        self.config = config

        self.tag = StcStyleOption(self.config,
                                  HtmlEditorStylesConfig.HTML_STYLES_SECTION,
                                  HtmlEditorStylesConfig.STYLE_TAG_SECTION,
                                  HtmlEditorStylesConfig.STYLE_TAG_DEFAULT)

        self.tagUnknown = StcStyleOption(
            self.config, HtmlEditorStylesConfig.HTML_STYLES_SECTION,
            HtmlEditorStylesConfig.STYLE_TAG_UNKNOWN_SECTION,
            HtmlEditorStylesConfig.STYLE_TAG_UNKNOWN_DEFAULT)

        self.attribute = StcStyleOption(
            self.config, HtmlEditorStylesConfig.HTML_STYLES_SECTION,
            HtmlEditorStylesConfig.STYLE_ATTRIBUTE_SECTION,
            HtmlEditorStylesConfig.STYLE_ATTRIBUTE_DEFAULT)

        self.attributeUnknown = StcStyleOption(
            self.config, HtmlEditorStylesConfig.HTML_STYLES_SECTION,
            HtmlEditorStylesConfig.STYLE_ATTRIBUTE_UNKNOWN_SECTION,
            HtmlEditorStylesConfig.STYLE_ATTRIBUTE_UNKNOWN_DEFAULT)

        self.number = StcStyleOption(
            self.config, HtmlEditorStylesConfig.HTML_STYLES_SECTION,
            HtmlEditorStylesConfig.STYLE_NUMBER_SECTION,
            HtmlEditorStylesConfig.STYLE_NUMBER_DEFAULT)

        self.string = StcStyleOption(
            self.config, HtmlEditorStylesConfig.HTML_STYLES_SECTION,
            HtmlEditorStylesConfig.STYLE_STRING_SECTION,
            HtmlEditorStylesConfig.STYLE_STRING_DEFAULT)

        self.comment = StcStyleOption(
            self.config, HtmlEditorStylesConfig.HTML_STYLES_SECTION,
            HtmlEditorStylesConfig.STYLE_COMMENT_SECTION,
            HtmlEditorStylesConfig.STYLE_COMMENT_DEFAULT)
Beispiel #18
0
 def testParse_invalid(self):
     self.assertEqual(StcStyle.parse("sdgsgd"), None)
     self.assertEqual(StcStyle.parse("fore:#AAAAAA,back:#222222,boldasdfa"),
                      None)