+# 11/21/2003 - Jeff Grimmett (grimmtooth@softhome.net)
+#
+# o Updated for wx namespace
+#
+# 11/21/2003 - Jeff Grimmett (grimmtooth@softhome.net)
+#
+# o EVT_STC_DRAG_OVER event GetdragResult() is not an int
+# o wx.TheClipboard.Flush() generates an error on program exit.
+#
-from wxPython.wx import *
-from wxPython.stc import *
+import wx
+import wx.stc as stc
-import images
+import images
#----------------------------------------------------------------------
capabilities, (right click to try it out.)
"""
-if wxPlatform == '__WXMSW__':
+if wx.Platform == '__WXMSW__':
face1 = 'Arial'
face2 = 'Times New Roman'
face3 = 'Courier New'
#----------------------------------------------------------------------
# This shows how to catch the Modified event from the wxStyledTextCtrl
-class MySTC(wxStyledTextCtrl):
+class MySTC(stc.StyledTextCtrl):
def __init__(self, parent, ID, log):
- wxStyledTextCtrl.__init__(self, parent, ID)
+ stc.StyledTextCtrl.__init__(self, parent, ID)
self.log = log
- EVT_STC_DO_DROP(self, ID, self.OnDoDrop)
- EVT_STC_DRAG_OVER(self, ID, self.OnDragOver)
- EVT_STC_START_DRAG(self, ID, self.OnStartDrag)
- EVT_STC_MODIFIED(self, ID, self.OnModified)
+ self.Bind(stc.EVT_STC_DO_DROP, self.OnDoDrop)
+ self.Bind(stc.EVT_STC_DRAG_OVER, self.OnDragOver)
+ self.Bind(stc.EVT_STC_START_DRAG, self.OnStartDrag)
+ self.Bind(stc.EVT_STC_MODIFIED, self.OnModified)
- EVT_WINDOW_DESTROY(self, self.OnDestroy)
+ self.Bind(wx.EVT_WINDOW_DESTROY, self.OnDestroy)
def OnDestroy(self, evt):
# This is how the clipboard contents can be preserved after
# the app has exited.
- wxTheClipboard.Flush()
+ wx.TheClipboard.Flush()
evt.Skip()
def OnDragOver(self, evt):
- self.log.write("OnDragOver: x,y=(%d, %d) pos: %d DragResult: %d\n"
- % (evt.GetX(), evt.GetY(), evt.GetPosition(), evt.GetDragResult()))
+ #Todo: evt.GetdragResult() response is not an int
+
+ self.log.write(
+ "OnDragOver: x,y=(%d, %d) pos: %d DragResult: %d\n"
+ % (evt.GetX(), evt.GetY(), evt.GetPosition(), evt.GetDragResult())
+ )
if debug and evt.GetPosition() < 250:
- evt.SetDragResult(wxDragNone) # prevent dropping at the beginning of the buffer
+ evt.SetDragResult(wx.DragNone) # prevent dropping at the beginning of the buffer
def OnDoDrop(self, evt):
if debug and evt.GetPosition() < 500:
evt.SetDragText("DROPPED TEXT") # Can change text if needed
- ##evt.SetDragResult(wxDragNone) # Can also change the drag operation, but it
+ #evt.SetDragResult(wx.DragNone) # Can also change the drag operation, but it
# is probably better to do it in OnDragOver so
# there is visual feedback
- ##evt.SetPosition(25) # Can also change position, but I'm not sure why
+ #evt.SetPosition(25) # Can also change position, but I'm not sure why
# you would want to...
def transModType(self, modType):
st = ""
- table = [(wxSTC_MOD_INSERTTEXT, "InsertText"),
- (wxSTC_MOD_DELETETEXT, "DeleteText"),
- (wxSTC_MOD_CHANGESTYLE, "ChangeStyle"),
- (wxSTC_MOD_CHANGEFOLD, "ChangeFold"),
- (wxSTC_PERFORMED_USER, "UserFlag"),
- (wxSTC_PERFORMED_UNDO, "Undo"),
- (wxSTC_PERFORMED_REDO, "Redo"),
- (wxSTC_LASTSTEPINUNDOREDO, "Last-Undo/Redo"),
- (wxSTC_MOD_CHANGEMARKER, "ChangeMarker"),
- (wxSTC_MOD_BEFOREINSERT, "B4-Insert"),
- (wxSTC_MOD_BEFOREDELETE, "B4-Delete")
+ table = [(stc.STC_MOD_INSERTTEXT, "InsertText"),
+ (stc.STC_MOD_DELETETEXT, "DeleteText"),
+ (stc.STC_MOD_CHANGESTYLE, "ChangeStyle"),
+ (stc.STC_MOD_CHANGEFOLD, "ChangeFold"),
+ (stc.STC_PERFORMED_USER, "UserFlag"),
+ (stc.STC_PERFORMED_UNDO, "Undo"),
+ (stc.STC_PERFORMED_REDO, "Redo"),
+ (stc.STC_LASTSTEPINUNDOREDO, "Last-Undo/Redo"),
+ (stc.STC_MOD_CHANGEMARKER, "ChangeMarker"),
+ (stc.STC_MOD_BEFOREINSERT, "B4-Insert"),
+ (stc.STC_MOD_BEFOREDELETE, "B4-Delete")
]
for flag,text in table:
ed = p = MySTC(nb, -1, log)
else:
- p = wxPanel(nb, -1, style=wxNO_FULL_REPAINT_ON_RESIZE)
+ p = wx.Panel(nb, -1, style=wx.NO_FULL_REPAINT_ON_RESIZE)
ed = MySTC(p, -1, log)
- s = wxBoxSizer(wxHORIZONTAL)
- s.Add(ed, 1, wxEXPAND)
+ s = wx.BoxSizer(wx.HORIZONTAL)
+ s.Add(ed, 1, wx.EXPAND)
p.SetSizer(s)
p.SetAutoLayout(True)
#ed.SetWrapMode(True)
ed.SetText(demoText)
- if wxUSE_UNICODE:
+
+ if wx.USE_UNICODE:
import codecs
decode = codecs.lookup("utf-8")[1]
ed.EmptyUndoBuffer()
# make some styles
- ed.StyleSetSpec(wxSTC_STYLE_DEFAULT, "size:%d,face:%s" % (pb, face3))
+ ed.StyleSetSpec(stc.STC_STYLE_DEFAULT, "size:%d,face:%s" % (pb, face3))
ed.StyleSetSpec(1, "size:%d,bold,face:%s,fore:#0000FF" % (pb+2, face1))
ed.StyleSetSpec(2, "face:%s,italic,fore:#FF0000,size:%d" % (face2, pb))
ed.StyleSetSpec(3, "face:%s,bold,size:%d" % (face2, pb+2))
# line numbers in the margin
- ed.SetMarginType(0, wxSTC_MARGIN_NUMBER)
+ ed.SetMarginType(0, stc.STC_MARGIN_NUMBER)
ed.SetMarginWidth(0, 22)
- ed.StyleSetSpec(wxSTC_STYLE_LINENUMBER, "size:%d,face:%s" % (pb, face1))
+ ed.StyleSetSpec(stc.STC_STYLE_LINENUMBER, "size:%d,face:%s" % (pb, face1))
# setup some markers
- ed.SetMarginType(1, wxSTC_MARGIN_SYMBOL)
- ed.MarkerDefine(0, wxSTC_MARK_ROUNDRECT, "#CCFF00", "RED")
- #ed.MarkerDefine(1, wxSTC_MARK_CIRCLE, "FOREST GREEN", "SIENNA")
+ ed.SetMarginType(1, stc.STC_MARGIN_SYMBOL)
+ ed.MarkerDefine(0, stc.STC_MARK_ROUNDRECT, "#CCFF00", "RED")
+ #ed.MarkerDefine(1, stc.STC_MARK_CIRCLE, "FOREST GREEN", "SIENNA")
ed.MarkerDefineBitmap(1, images.getFolder1Bitmap())
- ed.MarkerDefine(2, wxSTC_MARK_SHORTARROW, "blue", "blue")
- ed.MarkerDefine(3, wxSTC_MARK_ARROW, "#00FF00", "#00FF00")
+ ed.MarkerDefine(2, stc.STC_MARK_SHORTARROW, "blue", "blue")
+ ed.MarkerDefine(3, stc.STC_MARK_ARROW, "#00FF00", "#00FF00")
# put some markers on some lines
ed.MarkerAdd(17, 0)
# and finally, an indicator or two
- ed.IndicatorSetStyle(0, wxSTC_INDIC_SQUIGGLE)
- ed.IndicatorSetForeground(0, wxRED)
- ed.IndicatorSetStyle(1, wxSTC_INDIC_DIAGONAL)
- ed.IndicatorSetForeground(1, wxBLUE)
- ed.IndicatorSetStyle(2, wxSTC_INDIC_STRIKE)
- ed.IndicatorSetForeground(2, wxRED)
-
- ed.StartStyling(836, wxSTC_INDICS_MASK)
- ed.SetStyling(10, wxSTC_INDIC0_MASK)
- ed.SetStyling(10, wxSTC_INDIC1_MASK)
- ed.SetStyling(10, wxSTC_INDIC2_MASK | wxSTC_INDIC1_MASK)
+ ed.IndicatorSetStyle(0, stc.STC_INDIC_SQUIGGLE)
+ ed.IndicatorSetForeground(0, wx.RED)
+ ed.IndicatorSetStyle(1, stc.STC_INDIC_DIAGONAL)
+ ed.IndicatorSetForeground(1, wx.BLUE)
+ ed.IndicatorSetStyle(2, stc.STC_INDIC_STRIKE)
+ ed.IndicatorSetForeground(2, wx.RED)
+
+ ed.StartStyling(836, stc.STC_INDICS_MASK)
+ ed.SetStyling(10, stc.STC_INDIC0_MASK)
+ ed.SetStyling(10, stc.STC_INDIC1_MASK)
+ ed.SetStyling(10, stc.STC_INDIC2_MASK | stc.STC_INDIC1_MASK)
# some test stuff...