]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/demo/StyledTextCtrl_1.py
Applied patch [ 1117196 ] dbbrowse crashes on CFM Mac builds
[wxWidgets.git] / wxPython / demo / StyledTextCtrl_1.py
index 5eff81c883afbfc63125daa13bbffabe1873539b..b62381bfb89db4f57ebc5f0d168aa742626bde56 100644 (file)
@@ -1,11 +1,7 @@
-# 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.
+# o wx.TheClipboard.Flush() generates a warning on program exit.
 # 
 
 import  wx
@@ -19,8 +15,7 @@ debug = 1
 
 
 demoText = """\
-
-This editor is provided by a class named wxStyledTextCtrl.  As
+This editor is provided by a class named wx.StyledTextCtrl.  As
 the name suggests, you can define styles that can be applied to
 sections of text.  This will typically be used for things like
 syntax highlighting code editors, but I'm sure that there are other
@@ -35,7 +30,7 @@ If you do you can simply register an event handler and the editor
 will let you know when the visible portion of the text needs
 styling.
 
-wxStyledTextEditor also supports setting markers in the margin...
+wx.StyledTextEditor also supports setting markers in the margin...
 
 
 
@@ -59,7 +54,7 @@ else:
 
 
 #----------------------------------------------------------------------
-# This shows how to catch the Modified event from the wxStyledTextCtrl
+# This shows how to catch the Modified event from the wx.StyledTextCtrl
 
 class MySTC(stc.StyledTextCtrl):
     def __init__(self, parent, ID, log):
@@ -91,8 +86,6 @@ class MySTC(stc.StyledTextCtrl):
 
 
     def OnDragOver(self, evt):
-        #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())
@@ -181,6 +174,8 @@ def runTest(frame, nb, log):
     #ed.StyleClearAll()
     #ed.SetScrollWidth(800)
     #ed.SetWrapMode(True)
+    #ed.SetUseAntiAliasing(False)    
+    #ed.SetViewEOL(True)
 
     ed.SetText(demoText)
 
@@ -189,7 +184,8 @@ def runTest(frame, nb, log):
         decode = codecs.lookup("utf-8")[1]
 
         ed.GotoPos(ed.GetLength())
-        ed.AddText("\n\nwxStyledTextCtrl can also do Unicode:\n")
+        ed.AddText("\n\nwx.StyledTextCtrl can also do Unicode:\n")
+        uniline = ed.GetCurrentLine()
         unitext, l = decode('\xd0\x9f\xd0\xb8\xd1\x82\xd0\xbe\xd0\xbd - '
                             '\xd0\xbb\xd1\x83\xd1\x87\xd1\x88\xd0\xb8\xd0\xb9 '
                             '\xd1\x8f\xd0\xb7\xd1\x8b\xd0\xba \xd0\xbf\xd1\x80\xd0\xbe\xd0\xb3\xd1\x80\xd0\xb0\xd0\xbc\xd0\xbc\xd0\xb8\xd1\x80\xd0\xbe\xd0\xb2\xd0\xb0\xd0\xbd\xd0\xb8\xd1\x8f!\n\n')
@@ -201,6 +197,7 @@ def runTest(frame, nb, log):
 
     # make some styles
     ed.StyleSetSpec(stc.STC_STYLE_DEFAULT, "size:%d,face:%s" % (pb, face3))
+    ed.StyleClearAll()
     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))
@@ -273,10 +270,14 @@ def runTest(frame, nb, log):
         print "GetTextRange(25, 35): ", repr(ed.GetTextRange(25, 35))
         print "FindText(0, max, 'indicators'): ",
         print ed.FindText(0, ed.GetTextLength(), "indicators")
-
-        ed.GotoPos(0)
+        if wx.USE_UNICODE:
+            end = ed.GetLength()
+            start = ed.PositionFromLine(uniline)
+            print "GetTextRange(%d, %d): " % (start, end),
+            print repr(ed.GetTextRange(start, end))
 
 
+    wx.CallAfter(ed.GotoPos, 0)
     return p
 
 
@@ -296,5 +297,5 @@ be helpful.
 if __name__ == '__main__':
     import sys,os
     import run
-    run.main(['', os.path.basename(sys.argv[0])])
+    run.main(['', os.path.basename(sys.argv[0])] + sys.argv[1:])