]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/wx/lib/wordwrap.py
move wxPython to new trunk
[wxWidgets.git] / wxPython / wx / lib / wordwrap.py
diff --git a/wxPython/wx/lib/wordwrap.py b/wxPython/wx/lib/wordwrap.py
deleted file mode 100644 (file)
index f5e300f..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-#----------------------------------------------------------------------
-# Name:        wx.lib.wrap
-# Purpose:     Contains a function to aid in word-wrapping some text
-#
-# Author:      Robin Dunn
-#
-# Created:     15-Oct-2006
-# RCS-ID:      $Id$
-# Copyright:   (c) 2006 by Total Control Software
-# Licence:     wxWindows license
-#----------------------------------------------------------------------
-
-
-
-def wordwrap(text, width, dc, breakLongWords=True):
-    """
-    Returns a copy of text with newline characters inserted where long
-    lines should be broken such that they will fit within the given
-    width, on the given `wx.DC` using its current font settings.  By
-    default words that are wider than width will be broken at the
-    nearest character boundary, but this can be disabled by passing
-    ``False`` for the ``breakLongWords`` parameter.
-    """
-
-    wrapped_lines = []
-    text = text.split('\n')
-    for line in text:
-        pte = dc.GetPartialTextExtents(line)
-        idx = 0
-        start = 0
-        startIdx = 0
-        spcIdx = -1
-        while idx < len(pte):
-            # remember the last seen space
-            if line[idx] == ' ':                
-                spcIdx = idx
-
-            # have we reached the max width?
-            if pte[idx] - start > width and (spcIdx != -1 or breakLongWords):
-                if spcIdx != -1:
-                    idx = spcIdx + 1
-                wrapped_lines.append( line[startIdx : idx] )
-                start = pte[idx]
-                startIdx = idx
-                spcIdx = -1
-
-            idx += 1
-
-        wrapped_lines.append( line[startIdx : idx] )
-
-    return '\n'.join(wrapped_lines)
-
-
-
-
-
-if __name__ == '__main__':
-    import wx
-    class TestPanel(wx.Panel):
-        def __init__(self, parent):
-            wx.Panel.__init__(self, parent)
-
-            self.tc = wx.TextCtrl(self, -1, "", (20,20), (150,150), wx.TE_MULTILINE)
-            self.Bind(wx.EVT_TEXT, self.OnDoUpdate, self.tc)
-
-        def OnDoUpdate(self, evt):
-            WIDTH = 200
-            bmp = wx.EmptyBitmap(WIDTH, WIDTH)
-            mdc = wx.MemoryDC(bmp)
-            mdc.SetBackground(wx.Brush("white"))
-            mdc.Clear()
-            mdc.SetPen(wx.Pen("black"))
-            mdc.SetFont(wx.Font(10, wx.SWISS, wx.NORMAL, wx.NORMAL))
-            mdc.DrawRectangle(0,0, WIDTH, WIDTH)
-            
-            text = wordwrap(self.tc.GetValue(), WIDTH-2, mdc, False)
-            #print repr(text)
-            mdc.DrawLabel(text, (1,1, WIDTH-2, WIDTH-2))
-
-            del mdc
-            dc = wx.ClientDC(self)
-            dc.DrawBitmap(bmp, 200, 20)
-            
-
-    app = wx.App(False)
-    frm = wx.Frame(None, title="Test wordWrap")
-    pnl = TestPanel(frm)
-    frm.Show()
-    app.MainLoop()
-
-