from Translator import *
import Object
import ValueList

class SSSCommentRule(Object.SSSObject):
    
    _comment = ''
     
    def __init__(self, sourceText = ''):

        super(SSSCommentRule, self).__init__()

        addLogMessage(get_class(self) + ' creating SSSCommentRule.')
        addLogMessage("SSSCommentRule __init__: sourceText = " + sourceText)
        
        if (sourceText != ''):

            self._parse(sourceText)


    def _parse(self, sourceText):

        addLogMessage("SSSCommentRule _parse: Parsing sourceText = " + sourceText)

        matches = preg_match('@comment\s+([\"|\'][.|\w|\W]*[\"|\'])\s{0,};?$', trim(sourceText))
        
        if (matches):

            self._comment = trim(matches[0])


    def __set(self, var, value):

        if (var == 'cssText'):

            self._parse(value)

    def get_cssText(self):
        return self.__str__()

    cssText = property(get_cssText)


    def get(self, var):
    
        if (var == 'type'): return SSSObject.COMMENT_RULE
        
        if (var == 'cssText'): return self.__str__()
        
        if (var == 'comment'): return self._comment
        
        return super(SSSCommentRule, self).get(var)


    def __str__(self):
    
        return self.createCommentText(self._comment) + "\n\n"



