2
# -*- coding: UTF-8 -*-
4
__license__ = "GPL V.2 or (at your option) any later version"
5
__copyright__ = "2007, Israel Fernández Cabrera"
6
__author__ = "Israel Fernández Cabrera <iferca@gmail.com>"
12
class LanguageResource(object):
13
def __init__(self, sourceLanguage):
14
self._language = sourceLanguage
16
langName = "Language%s" % self.getLanguageName()
17
self._langManager = globals()[langName]()
19
self._langManager = LanguageBase()
21
def getSuggestionManager(self):
22
return self._langManager.getSuggestionManager()
24
def getSourceStructure(self, module, path):
26
Returns an special source structure only available for python
28
return self._langManager.getSourceStructure(module, path)
30
def getFileInfo(self, text):
32
Returns the editor's content information structure suitable to be iterated
33
and shown i.e. as a tree in a GUI
35
return self._langManager.getFileInfo(text)
37
def getLanguageName(self):
39
Return the actual language name
41
return None if not self._language else self._language.get_name()
43
def hasMultilineCommentCharacter(self):
45
Returns True if the language has multiline comment character, False otherwise
47
return self._langManager.hasMultilineCommentCharacter()
49
def getMultiLineCommentCharacter(self):
51
Returns the comment characters that match the actual language
53
return self._langManager.getMultiLineCommentCharacter()
55
def getCommentCharacter(self):
57
Returns the comment character that match the actual language
59
return self._langManager.getCommentCharacter()
62
class DefaultLanguageResource(LanguageResource):
64
Default LanguageResource to provide an unsaved/unopened editor with a default
68
super(DefaultLanguageResource, self).__init__(None)
70
def getFileInfo(self, text):
73
def getLanguageName(self):
76
def hasMultilineCommentCharacter(self):
79
def getLanguageName(self):
82
def getCommentCharacter(self):