]> git.saurik.com Git - wxWidgets.git/commitdiff
The UseAntiAliasing is off by default on wxMac. Add a menu item to
authorRobin Dunn <robin@alldunn.com>
Mon, 23 Feb 2004 22:36:24 +0000 (22:36 +0000)
committerRobin Dunn <robin@alldunn.com>
Mon, 23 Feb 2004 22:36:24 +0000 (22:36 +0000)
the Py* Apps for experimenting with it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25933 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

wxPython/demo/StyledTextCtrl_1.py
wxPython/demo/StyledTextCtrl_2.py
wxPython/docs/CHANGES.txt
wxPython/wx/py/editor.py
wxPython/wx/py/frame.py

index eda33f43a4941f7c38a8a63c2063e81bf1483afb..a6e325e61ced81b04d40e1c062af7e8667dcd2d8 100644 (file)
@@ -174,6 +174,7 @@ def runTest(frame, nb, log):
     #ed.StyleClearAll()
     #ed.SetScrollWidth(800)
     #ed.SetWrapMode(True)
+    #ed.SetUseAntiAliasing(False)    
 
     ed.SetText(demoText)
 
index 8d82fc1c6838ec51d0aaf5b539640d0b11dae4a6..2258172d027b0e2dfa30868b99279f2e89028cea 100644 (file)
@@ -59,7 +59,8 @@ class PythonSTC(stc.StyledTextCtrl):
         self.SetViewWhiteSpace(False)
         #self.SetBufferedDraw(False)
         #self.SetViewEOL(True)
-
+        #self.SetUseAntiAliasing(True)
+        
         self.SetEdgeMode(stc.STC_EDGE_BACKGROUND)
         self.SetEdgeColumn(78)
 
index 5e55eadda6e9d641f990f5ca4322820073f295d2..c692febd9a7aa2504eebdf8d15c06cb9189a3c58 100644 (file)
@@ -55,6 +55,16 @@ Updated the AnalogClockWindow with many enhancements from E. A. Tac
 
 wxMac now has wx.ToggleButton!
 
+wx.stc.StyledTextCtrl has been update to version 1.58 of Scintilla.
+
+To help with the wx.stc.StyledTextCtrl performance issues on wxMac
+I've added a SetUseAntiAliasing method (and GetUseAntiAliasing) too
+that will turn off the use of antialiased fonts in the wxSTC, allowing
+it to bypass the slow text measuring routines and use the fast and
+simple one instead.  By default the setting is turned off.  When run
+on OSX The Py* apps have a new item on the Options menu for
+controlling this setting if you would like to experiment with it.
+
 
 
 
index 6a6293ca22b2c5eec7c5c9280d4a4d1088a290de..671ede9e0b0e915e3350667529e6138f8e7a213f 100644 (file)
@@ -607,15 +607,18 @@ class Editor:
 
     def getStatus(self):
         """Return (filepath, line, column) status tuple."""
-        pos = self.window.GetCurrentPos()
-        line = self.window.LineFromPosition(pos) + 1
-        col = self.window.GetColumn(pos)
-        if self.buffer:
-            name = self.buffer.doc.filepath or self.buffer.name
+        if self.window:
+            pos = self.window.GetCurrentPos()
+            line = self.window.LineFromPosition(pos) + 1
+            col = self.window.GetColumn(pos)
+            if self.buffer:
+                name = self.buffer.doc.filepath or self.buffer.name
+            else:
+                name = ''
+            status = (name, line, col)
+            return status
         else:
-            name = ''
-        status = (name, line, col)
-        return status
+            return ('', 0, 0)
 
     def getText(self):
         """Return contents of editor."""
index ddcfa688e3c6a39cb8b6713e3de24eb3fbd13ae9..600f2bd1b9610792402ecfb50d32fd89ee33147f 100644 (file)
@@ -35,6 +35,7 @@ ID_COPY_PLUS = wx.NewId()
 ID_NAMESPACE = wx.NewId()
 ID_PASTE_PLUS = wx.NewId()
 ID_WRAP = wx.NewId()
+ID_USEAA = wx.NewId()
 
 
 class Frame(wx.Frame):
@@ -106,18 +107,18 @@ class Frame(wx.Frame):
 
         m = self.autocompMenu = wx.Menu()
         m.Append(ID_AUTOCOMP_SHOW, 'Show Auto Completion',
-                 'Show auto completion list', 1)
+                 'Show auto completion list', wx.ITEM_CHECK)
         m.Append(ID_AUTOCOMP_MAGIC, 'Include Magic Attributes',
                  'Include attributes visible to __getattr__ and __setattr__',
-                 1)
+                 wx.ITEM_CHECK)
         m.Append(ID_AUTOCOMP_SINGLE, 'Include Single Underscores',
-                 'Include attibutes prefixed by a single underscore', 1)
+                 'Include attibutes prefixed by a single underscore', wx.ITEM_CHECK)
         m.Append(ID_AUTOCOMP_DOUBLE, 'Include Double Underscores',
-                 'Include attibutes prefixed by a double underscore', 1)
+                 'Include attibutes prefixed by a double underscore', wx.ITEM_CHECK)
 
         m = self.calltipsMenu = wx.Menu()
         m.Append(ID_CALLTIPS_SHOW, 'Show Call Tips',
-                 'Show call tips with argument signature and docstring', 1)
+                 'Show call tips with argument signature and docstring', wx.ITEM_CHECK)
 
         m = self.optionsMenu = wx.Menu()
         m.AppendMenu(ID_AUTOCOMP, '&Auto Completion', self.autocompMenu,
@@ -125,7 +126,10 @@ class Frame(wx.Frame):
         m.AppendMenu(ID_CALLTIPS, '&Call Tips', self.calltipsMenu,
                      'Call Tip Options')
         m.Append(ID_WRAP, '&Wrap Lines',
-                 'Wrap lines at right edge', 1)
+                 'Wrap lines at right edge', wx.ITEM_CHECK)
+        if wx.Platform == "__WXMAC__":
+            m.Append(ID_USEAA, '&Use AntiAliasing',
+                     'Use anti-aliased fonts', wx.ITEM_CHECK)
 
         m = self.helpMenu = wx.Menu()
         m.AppendSeparator()
@@ -163,6 +167,7 @@ class Frame(wx.Frame):
         wx.EVT_MENU(self, ID_AUTOCOMP_DOUBLE, self.OnAutoCompleteDouble)
         wx.EVT_MENU(self, ID_CALLTIPS_SHOW, self.OnCallTipsShow)
         wx.EVT_MENU(self, ID_WRAP, self.OnWrap)
+        wx.EVT_MENU(self, ID_USEAA, self.OnUseAA)
 
         wx.EVT_UPDATE_UI(self, ID_NEW, self.OnUpdateMenu)
         wx.EVT_UPDATE_UI(self, ID_OPEN, self.OnUpdateMenu)
@@ -187,6 +192,7 @@ class Frame(wx.Frame):
         wx.EVT_UPDATE_UI(self, ID_AUTOCOMP_DOUBLE, self.OnUpdateMenu)
         wx.EVT_UPDATE_UI(self, ID_CALLTIPS_SHOW, self.OnUpdateMenu)
         wx.EVT_UPDATE_UI(self, ID_WRAP, self.OnUpdateMenu)
+        wx.EVT_UPDATE_UI(self, ID_USEAA, self.OnUpdateMenu)
 
     def OnFileNew(self, event):
         self.bufferNew()
@@ -284,6 +290,11 @@ class Frame(wx.Frame):
         win = wx.Window_FindFocus()
         win.SetWrapMode(event.IsChecked())
 
+    def OnUseAA(self, event):
+        win = wx.Window_FindFocus()
+        win.SetUseAntiAliasing(event.IsChecked())
+        
+
     def OnUpdateMenu(self, event):
         """Update menu items based on current status and context."""
         win = wx.Window_FindFocus()
@@ -342,6 +353,8 @@ class Frame(wx.Frame):
                 event.Check(win.autoCallTip)
             elif id == ID_WRAP:
                 event.Check(win.GetWrapMode())
+            elif id == ID_USEAA:
+                event.Check(win.GetUseAntiAliasing())
             else:
                 event.Enable(False)
         except AttributeError: