]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/demo/StyledTextCtrl_1.py
Patch from Davide Salomoni that adds an optional point
[wxWidgets.git] / wxPython / demo / StyledTextCtrl_1.py
index 20695d129fd8aef81a1fb7d41ccce3119396f4d2..d1db6228d0e233bc33d97d9d93a9015ce7d2feb9 100644 (file)
@@ -15,7 +15,6 @@ debug = 1
 
 
 demoText = """\
 
 
 demoText = """\
-
 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
 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
@@ -51,7 +50,7 @@ else:
     face1 = 'Helvetica'
     face2 = 'Times'
     face3 = 'Courier'
     face1 = 'Helvetica'
     face2 = 'Times'
     face3 = 'Courier'
-    pb = 10
+    pb = 12
 
 
 #----------------------------------------------------------------------
 
 
 #----------------------------------------------------------------------
@@ -175,6 +174,14 @@ def runTest(frame, nb, log):
     #ed.StyleClearAll()
     #ed.SetScrollWidth(800)
     #ed.SetWrapMode(True)
     #ed.StyleClearAll()
     #ed.SetScrollWidth(800)
     #ed.SetWrapMode(True)
+    #ed.SetUseAntiAliasing(False)    
+    #ed.SetViewEOL(True)
+
+    #ed.CmdKeyClear(stc.STC_KEY_BACK,
+    #               stc.STC_SCMOD_CTRL)
+    #ed.CmdKeyAssign(stc.STC_KEY_BACK,
+    #                stc.STC_SCMOD_CTRL,
+    #                stc.STC_CMD_DELWORDLEFT)
 
     ed.SetText(demoText)
 
 
     ed.SetText(demoText)
 
@@ -184,17 +191,28 @@ def runTest(frame, nb, log):
 
         ed.GotoPos(ed.GetLength())
         ed.AddText("\n\nwx.StyledTextCtrl can also do Unicode:\n")
 
         ed.GotoPos(ed.GetLength())
         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')
         ed.AddText('\tRussian: ')
         ed.AddText(unitext)
         ed.GotoPos(0)
         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')
         ed.AddText('\tRussian: ')
         ed.AddText(unitext)
         ed.GotoPos(0)
-
+    #else:
+    #    #ed.StyleSetFontEncoding(stc.STC_STYLE_DEFAULT, wx.FONTENCODING_KOI8)
+    #    #text = u'\u041f\u0438\u0442\u043e\u043d - \u043b\u0443\u0447\u0448\u0438\u0439 \u044f\u0437\u044b\u043a \n\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f!'
+    #    #text = text.encode('koi8-r')
+    #    #ed.StyleSetFontEncoding(stc.STC_STYLE_DEFAULT, wx.FONTENCODING_BIG5)
+    #    #text = u'Python \u662f\u6700\u597d\u7684\u7de8\u7a0b\u8a9e\u8a00\uff01'
+    #    #text = text.encode('big5')
+    #    ed.GotoPos(ed.GetLength())
+    #    ed.AddText('\n\n' + text)
+        
     ed.EmptyUndoBuffer()
 
     # make some styles
     ed.StyleSetSpec(stc.STC_STYLE_DEFAULT, "size:%d,face:%s" % (pb, face3))
     ed.EmptyUndoBuffer()
 
     # 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))
     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))
@@ -267,10 +285,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")
         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
 
 
     return p
 
 
@@ -290,5 +312,5 @@ be helpful.
 if __name__ == '__main__':
     import sys,os
     import run
 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:])