X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ec873c943d71f0d5f13e3398557071448cda6c23..a4027e74873007e3430af3bd77019bcab76f6c04:/wxPython/samples/ide/activegrid/tool/PerlEditor.py?ds=inline diff --git a/wxPython/samples/ide/activegrid/tool/PerlEditor.py b/wxPython/samples/ide/activegrid/tool/PerlEditor.py deleted file mode 100644 index 544d0fbd53..0000000000 --- a/wxPython/samples/ide/activegrid/tool/PerlEditor.py +++ /dev/null @@ -1,425 +0,0 @@ -#---------------------------------------------------------------------------- -# Name: PerlEditor.py -# Purpose: Perl Script Editor for pydocview tbat uses the Styled Text Control -# -# Author: Morgan Hua -# -# Created: 1/5/04 -# CVS-ID: $Id$ -# Copyright: (c) 2005 ActiveGrid, Inc. -# License: wxWindows License -#---------------------------------------------------------------------------- - -import wx -import string -import STCTextEditor -import CodeEditor - - -class PerlDocument(CodeEditor.CodeDocument): - - pass - - -class PerlView(CodeEditor.CodeView): - - - def GetCtrlClass(self): - """ Used in split window to instantiate new instances """ - return PerlCtrl - - - def GetAutoCompleteHint(self): - pos = self.GetCtrl().GetCurrentPos() - if pos == 0: - return None, None - - validLetters = string.letters + string.digits + '_/' - word = '' - while (True): - pos = pos - 1 - if pos < 0: - break - char = chr(self.GetCtrl().GetCharAt(pos)) - if char not in validLetters: - break - word = char + word - - return None, word - - - def GetAutoCompleteDefaultKeywords(self): - return PERLKEYWORDS - - -class PerlService(CodeEditor.CodeService): - - - def __init__(self): - CodeEditor.CodeService.__init__(self) - - -class PerlCtrl(CodeEditor.CodeCtrl): - - - def __init__(self, parent, id=-1, style=wx.NO_FULL_REPAINT_ON_RESIZE): - CodeEditor.CodeCtrl.__init__(self, parent, id, style) - self.SetLexer(wx.stc.STC_LEX_PERL) - self.SetKeyWords(0, string.join(PERLKEYWORDS)) - - - def CanWordWrap(self): - return True - - - def SetViewDefaults(self): - CodeEditor.CodeCtrl.SetViewDefaults(self, configPrefix = "Perl", hasWordWrap = True, hasTabs = True, hasFolding=True) - - - def GetFontAndColorFromConfig(self): - return CodeEditor.CodeCtrl.GetFontAndColorFromConfig(self, configPrefix = "Perl") - - - def UpdateStyles(self): - CodeEditor.CodeCtrl.UpdateStyles(self) - - if not self.GetFont(): - return - - faces = { 'font' : self.GetFont().GetFaceName(), - 'size' : self.GetFont().GetPointSize(), - 'size2': self.GetFont().GetPointSize() - 2, - 'color' : "%02x%02x%02x" % (self.GetFontColor().Red(), self.GetFontColor().Green(), self.GetFontColor().Blue()) - } - - # Perl Styles - self.StyleSetSpec(wx.stc.STC_PL_DEFAULT, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_COMMENTLINE, "face:%(font)s,fore:#007F00,italic,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_NUMBER, "face:%(font)s,fore:#007F7F,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_CHARACTER, "face:%(font)s,fore:#7F007F,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_STRING, "face:%(font)s,fore:#7F007F,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_STRING_Q, "face:%(font)s,fore:#7F007F,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_STRING_QQ, "face:%(font)s,fore:#7F007F,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_STRING_QX, "face:%(font)s,fore:#7F007F,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_STRING_QR, "face:%(font)s,fore:#7F007F,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_STRING_QW, "face:%(font)s,fore:#7F007F,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_BACKTICKS, "face:%(font)s,fore:#7F007F,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_WORD, "face:%(font)s,fore:#00007F,bold,size:%(size)d" % faces) # keyword - self.StyleSetSpec(wx.stc.STC_PL_IDENTIFIER, "face:%(font)s,fore:#%(color)s,face:%(font)s,size:%(size)d" % faces) - - # Default - self.StyleSetSpec(wx.stc.STC_PL_ARRAY, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_DATASECTION, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_ERROR, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_HASH, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_HERE_DELIM, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_HERE_Q, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_HERE_QQ, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_HERE_QX, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_LONGQUOTE, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_OPERATOR, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_POD, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_PREPROCESSOR, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_PUNCTUATION, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_REGEX, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_REGSUBST, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_SCALAR, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - self.StyleSetSpec(wx.stc.STC_PL_SYMBOLTABLE, "face:%(font)s,fore:#000000,face:%(font)s,size:%(size)d" % faces) - - -class PerlOptionsPanel(STCTextEditor.TextOptionsPanel): - - def __init__(self, parent, id): - STCTextEditor.TextOptionsPanel.__init__(self, parent, id, configPrefix = "Perl", label = "Perl", hasWordWrap = True, hasTabs = True, hasFolding=True) - - - def GetIcon(self): - return getPerlIcon() - - -PERLKEYWORDS = [ - "abs", - "accept", - "alarm", - "atan2", - "bind", - "binmode", - "bless", - "caller", - "chdir", - "chmod", - "chomp", - "chop", - "chown", - "chr", - "chroot", - "close", - "closedir", - "connect", - "continue", - "cos", - "crypt", - "dbmclose", - "dbmopen", - "defined", - "delete", - "die", - "do", - "dump", - "each", - "endgrent", - "endhostent", - "endnetent", - "endprotoent", - "endpwent", - "endservent", - "eof", - "eval", - "exec", - "exists", - "exit", - "exp", - "fcntl", - "fileno", - "flock", - "fork", - "format", - "formline", - "getc", - "getgrent", - "getgrgid", - "getgrnam", - "gethostbyaddr", - "gethostbyname", - "gethostent", - "getlogin", - "getnetbyaddr", - "getnetbyname", - "getnetent", - "getpeername", - "getpgrp", - "getppid", - "getpriority", - "getprotobyname", - "getprotobynumber", - "getprotoent", - "getpwent", - "getpwnam", - "getpwuid", - "getservbyname", - "getservbyport", - "getservent", - "getsockname", - "getsockopt", - "glob", - "gmtime", - "goto", - "grep", - "hex", - "import", - "index", - "int", - "ioctl", - "join", - "keys", - "kill", - "last", - "lc", - "lcfirst", - "length", - "link", - "listen", - "local", - "localtime", - "log", - "lstat", - "m//", - "map", - "mkdir", - "msgctl", - "msgget", - "msgrcv", - "msgsnd", - "my", - "next", - "no", - "oct", - "open", - "opendir", - "ord", - "pack", - "package", - "pipe", - "pop", - "pos", - "print", - "printf", - "prototype", - "push", - "q/STRING/", - "qq/STRING/", - "quotemeta", - "qw", - "qw/STRING/", - "qx", - "qx/STRING/", - "rand", - "read", - "readdir", - "readline", - "readlink", - "readpipe", - "recv", - "redo", - "ref", - "rename", - "require", - "reset", - "return", - "reverse", - "rewinddir", - "rindex", - "rmdir", - "s///", - "scalar", - "seek", - "seekdir", - "select", - "semctl", - "semget", - "semop", - "send", - "setgrent", - "sethostent", - "setnetent", - "setpgrp", - "setpriority", - "setprotoent", - "setpwent", - "setservent", - "setsockopt", - "shift", - "shmctl", - "shmget", - "shmread", - "shmwrite", - "shutdown", - "sin", - "sleep", - "socket", - "socketpair", - "sort", - "splice", - "split", - "sprintf", - "sqrt", - "srand", - "stat", - "study", - "sub", - "substr", - "symlink", - "syscall", - "sysopen", - "sysread", - "sysseek", - "system", - "syswrite", - "tell", - "telldir", - "tie", - "tied", - "times", - "tr///", - "truncate", - "uc", - "ucfirst", - "umask", - "undef", - "unlink", - "unpack", - "unshift", - "untie", - "use", - "utime", - "values", - "vec", - "wait", - "waitpid", - "wantarray", - "warn", - "write", - "y///", - "eq", - "ne", - "lt", - "le", - "gt", - "ge", - "cmp", - "if", - "else" - "not", - "and", - "xor", - "or", - "if", - "while", - "until", - "for", - "foreach", - "last", - "next", - "redo", - "goto", - "STDIN", - "STDOUT", - "STDERR", - "WHEncE", - "BEGIN", - "END", - "require", - "integer", - "less", - "sigtrap", - "strict", - "subs" - ] - - -#---------------------------------------------------------------------------- -# Icon Bitmaps - generated by encode_bitmaps.py -#---------------------------------------------------------------------------- -from wx import ImageFromStream, BitmapFromImage -import cStringIO - - -def getPerlData(): - return \ -"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\ -\x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\ -\x00\x01CIDAT8\x8d\x95\x93\xbfN\x02A\x10\x87\xbf[\xef\x05\xach|\x02m}\x008\ -\x881Z\xd2\x1a\x13\x0bKx\x02{\xa3\xa13\xc6\xc6\xc6\xd2DZ+s\\\x83\x95\x1d\xa2\ -&V\x104\x01/p\x01\t\xa0\xe8X\xc0\x9d\x87\xdc^\xf0\x97Lfw3\xdf\xec\xcc\xfe1\ -\xca\x95\xba0\x95\xeb\xf5\x01h\xb4\xda\x00x\xde\x90\x83\xfd\r\x838\x95+u\xa9\ -\rDj\x03\x91\xe7\xbe\xc8}wb\xa7\xc5\xb2\xdc\xbe\x89\xe4\x8f\xae\xc4PK\xe8L\ -\xc5%\xef\x8da{7K\xee\xf0Rt1\xa6\xeb\xf5Y\x01>\xbea\xf45Y\xec\x8e&\xe5\xdf]\ -\xdb4\xdd\x0e\xaf/-\xed&&\x110\xc0\xfa\x96\xc5\xf1N\x06\x80\xe5\xb5\xac6\x81\ -\x82y\xb87\x9e\r\xeaT\x8b3s+\x95\x14+\x95\x14\x00\xd5h\xb5\xe9\x8e\xe6a\x7f\ -\xf70\x14\xf6\xfeXy\xde0\x08\xf2\xe1\xf6gt\xb9V*)v\xc9\t\xae\xd5.9\x86\x19\ -\x05\x9e\xefe\xe6i\x8dT\xd3\xed\xfc\x0b\x0e\xb7\x00\xd3C\xd4\x95\x1c'\xbf\ -\x15\x15\xbe\xe3\xc6;l\x9e\xdc\x00\xbf\xfe/`\x97\x1c#|\x0e&@\xb1p\x16\x04>U\ -\x1fI\x00\x17\xb9<\t\xa0\xc9*\t\x1e\xf4\xa5D\xbd\xeft:-q~\xe1\xbf\xb0\x88b\ -\x13\x84{\x8d\x9a\x03\xfc\x00\xea\x7f\xa9A\xa7\xc3Vo\x00\x00\x00\x00IEND\xae\ -B`\x82" - - -def getPerlBitmap(): - return BitmapFromImage(getPerlImage()) - -def getPerlImage(): - stream = cStringIO.StringIO(getPerlData()) - return ImageFromStream(stream) - -def getPerlIcon(): - return wx.IconFromBitmap(getPerlBitmap())