author | Laurent Bessard |
Mon, 13 May 2013 16:38:53 +0200 | |
changeset 1126 | 26baa0ae9fd7 |
parent 1110 | b6e252733c64 |
child 1138 | cf2a6a7c87e8 |
permissions | -rw-r--r-- |
145
94855f7b08a9
Improving c_ext plugin by adding an XML file format for saving C files and an graphical interface for editing this file
lbessard
parents:
diff
changeset
|
1 |
|
630
91b2ae63ea3d
Including external tools for editing plugin informations into Beremiz window
laurent
parents:
626
diff
changeset
|
2 |
import wx.stc as stc |
91b2ae63ea3d
Including external tools for editing plugin informations into Beremiz window
laurent
parents:
626
diff
changeset
|
3 |
|
1096
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
4 |
from controls.CustomStyledTextCtrl import faces |
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
5 |
from editors.CodeFileEditor import CodeFileEditor, CodeEditor |
145
94855f7b08a9
Improving c_ext plugin by adding an XML file format for saving C files and an graphical interface for editing this file
lbessard
parents:
diff
changeset
|
6 |
|
1096
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
7 |
class CppEditor(CodeEditor): |
145
94855f7b08a9
Improving c_ext plugin by adding an XML file format for saving C files and an graphical interface for editing this file
lbessard
parents:
diff
changeset
|
8 |
|
1096
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
9 |
KEYWORDS = ["asm", "auto", "bool", "break", "case", "catch", "char", "class", |
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
10 |
"const", "const_cast", "continue", "default", "delete", "do", "double", |
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
11 |
"dynamic_cast", "else", "enum", "explicit", "export", "extern", "false", |
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
12 |
"float", "for", "friend", "goto", "if", "inline", "int", "long", "mutable", |
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
13 |
"namespace", "new", "operator", "private", "protected", "public", "register", |
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
14 |
"reinterpret_cast", "return", "short", "signed", "sizeof", "static", |
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
15 |
"static_cast", "struct", "switch", "template", "this", "throw", "true", "try", |
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
16 |
"typedef", "typeid", "typename", "union", "unsigned", "using", "virtual", |
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
17 |
"void", "volatile", "wchar_t", "while"] |
1110
b6e252733c64
Fixed code section headers in CodeFileEditor
Laurent Bessard
parents:
1097
diff
changeset
|
18 |
COMMENT_HEADER = "/" |
145
94855f7b08a9
Improving c_ext plugin by adding an XML file format for saving C files and an graphical interface for editing this file
lbessard
parents:
diff
changeset
|
19 |
|
1096
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
20 |
def SetCodeLexer(self): |
145
94855f7b08a9
Improving c_ext plugin by adding an XML file format for saving C files and an graphical interface for editing this file
lbessard
parents:
diff
changeset
|
21 |
self.SetLexer(stc.STC_LEX_CPP) |
94855f7b08a9
Improving c_ext plugin by adding an XML file format for saving C files and an graphical interface for editing this file
lbessard
parents:
diff
changeset
|
22 |
|
1060
ac9896336b90
Fixed unexpected scrolling when PythonEditor, TextViewer and CFileEditor get focus
Laurent Bessard
parents:
920
diff
changeset
|
23 |
self.StyleSetSpec(stc.STC_C_COMMENT, 'fore:#408060,size:%(size)d' % faces) |
ac9896336b90
Fixed unexpected scrolling when PythonEditor, TextViewer and CFileEditor get focus
Laurent Bessard
parents:
920
diff
changeset
|
24 |
self.StyleSetSpec(stc.STC_C_COMMENTLINE, 'fore:#408060,size:%(size)d' % faces) |
ac9896336b90
Fixed unexpected scrolling when PythonEditor, TextViewer and CFileEditor get focus
Laurent Bessard
parents:
920
diff
changeset
|
25 |
self.StyleSetSpec(stc.STC_C_COMMENTDOC, 'fore:#408060,size:%(size)d' % faces) |
ac9896336b90
Fixed unexpected scrolling when PythonEditor, TextViewer and CFileEditor get focus
Laurent Bessard
parents:
920
diff
changeset
|
26 |
self.StyleSetSpec(stc.STC_C_NUMBER, 'fore:#0076AE,size:%(size)d' % faces) |
ac9896336b90
Fixed unexpected scrolling when PythonEditor, TextViewer and CFileEditor get focus
Laurent Bessard
parents:
920
diff
changeset
|
27 |
self.StyleSetSpec(stc.STC_C_WORD, 'bold,fore:#800056,size:%(size)d' % faces) |
ac9896336b90
Fixed unexpected scrolling when PythonEditor, TextViewer and CFileEditor get focus
Laurent Bessard
parents:
920
diff
changeset
|
28 |
self.StyleSetSpec(stc.STC_C_STRING, 'fore:#2a00ff,size:%(size)d' % faces) |
ac9896336b90
Fixed unexpected scrolling when PythonEditor, TextViewer and CFileEditor get focus
Laurent Bessard
parents:
920
diff
changeset
|
29 |
self.StyleSetSpec(stc.STC_C_PREPROCESSOR, 'bold,fore:#800056,size:%(size)d' % faces) |
ac9896336b90
Fixed unexpected scrolling when PythonEditor, TextViewer and CFileEditor get focus
Laurent Bessard
parents:
920
diff
changeset
|
30 |
self.StyleSetSpec(stc.STC_C_OPERATOR, 'bold,size:%(size)d' % faces) |
ac9896336b90
Fixed unexpected scrolling when PythonEditor, TextViewer and CFileEditor get focus
Laurent Bessard
parents:
920
diff
changeset
|
31 |
self.StyleSetSpec(stc.STC_C_STRINGEOL, 'back:#FFD5FF,size:%(size)d' % faces) |
145
94855f7b08a9
Improving c_ext plugin by adding an XML file format for saving C files and an graphical interface for editing this file
lbessard
parents:
diff
changeset
|
32 |
|
94855f7b08a9
Improving c_ext plugin by adding an XML file format for saving C files and an graphical interface for editing this file
lbessard
parents:
diff
changeset
|
33 |
#------------------------------------------------------------------------------- |
1096
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
34 |
# CFileEditor Main Frame Class |
145
94855f7b08a9
Improving c_ext plugin by adding an XML file format for saving C files and an graphical interface for editing this file
lbessard
parents:
diff
changeset
|
35 |
#------------------------------------------------------------------------------- |
94855f7b08a9
Improving c_ext plugin by adding an XML file format for saving C files and an graphical interface for editing this file
lbessard
parents:
diff
changeset
|
36 |
|
1096
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
37 |
class CFileEditor(CodeFileEditor): |
651
cbeb769b0a56
Adding support for unifying grid table control elements
laurent
parents:
637
diff
changeset
|
38 |
|
1096
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
39 |
CONFNODEEDITOR_TABS = CodeFileEditor.CONFNODEEDITOR_TABS + [ |
920
1499a4d225db
Replaced SplitterWindow in ConfTreeNodeEditor by Notebook
Laurent Bessard
parents:
874
diff
changeset
|
40 |
(_("C code"), "_create_CCodeEditor")] |
1499a4d225db
Replaced SplitterWindow in ConfTreeNodeEditor by Notebook
Laurent Bessard
parents:
874
diff
changeset
|
41 |
|
1499a4d225db
Replaced SplitterWindow in ConfTreeNodeEditor by Notebook
Laurent Bessard
parents:
874
diff
changeset
|
42 |
def _create_CCodeEditor(self, prnt): |
1096
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
43 |
self.CCodeEditor = CppEditor(prnt, self.ParentWindow, self.Controler) |
920
1499a4d225db
Replaced SplitterWindow in ConfTreeNodeEditor by Notebook
Laurent Bessard
parents:
874
diff
changeset
|
44 |
|
1499a4d225db
Replaced SplitterWindow in ConfTreeNodeEditor by Notebook
Laurent Bessard
parents:
874
diff
changeset
|
45 |
return self.CCodeEditor |
1096
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
46 |
|
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
47 |
def RefreshView(self): |
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
48 |
CodeFileEditor.RefreshView(self) |
630
91b2ae63ea3d
Including external tools for editing plugin informations into Beremiz window
laurent
parents:
626
diff
changeset
|
49 |
|
1096
c9ace6a881c9
Fixed CFileEditor replacing folding panels by variable panel and STC
Laurent Bessard
parents:
1091
diff
changeset
|
50 |
self.CCodeEditor.RefreshView() |
1097 | 51 |
|
52 |
def Find(self, direction, search_params): |
|
53 |
self.CCodeEditor.Find(direction, search_params) |