]> git.saurik.com Git - wxWidgets.git/commitdiff
Added color setting tool to the RichTextCtrl sample
authorRobin Dunn <robin@alldunn.com>
Sat, 22 Jul 2006 23:05:30 +0000 (23:05 +0000)
committerRobin Dunn <robin@alldunn.com>
Sat, 22 Jul 2006 23:05:30 +0000 (23:05 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40245 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

wxPython/demo/RichTextCtrl.py
wxPython/demo/bmp_source/rt_colour.xpm [new file with mode: 0644]
wxPython/demo/encode_bitmaps.py
wxPython/demo/images.py

index c19c0c7207118e92ad8ab3e732ec0596cfbcf774..f9ceffd44771dcd09f455a692aa58a58648a6ff7 100644 (file)
@@ -335,6 +335,7 @@ class RichTextFrame(wx.Frame):
 
         r = self.rtc.GetSelectionRange()
         fontData = wx.FontData()
+        fontData.EnableEffects(False)
         attr = rt.RichTextAttr()
         attr.SetFlags(rt.TEXT_ATTR_FONT)
         if self.rtc.GetStyle(self.rtc.GetInsertionPoint(), attr):
@@ -351,6 +352,29 @@ class RichTextFrame(wx.Frame):
         dlg.Destroy()
 
 
+    def OnColour(self, evt):
+        colourData = wx.ColourData()
+        attr = rt.RichTextAttr()
+        attr.SetFlags(rt.TEXT_ATTR_TEXT_COLOUR)
+        if self.rtc.GetStyle(self.rtc.GetInsertionPoint(), attr):
+            colourData.SetColour(attr.GetTextColour())
+
+        dlg = wx.ColourDialog(self, colourData)
+        if dlg.ShowModal() == wx.ID_OK:
+            colourData = dlg.GetColourData()
+            colour = colourData.GetColour()
+            if colour:
+                if not self.rtc.HasSelection():
+                    self.rtc.BeginTextColour(colour)
+                else:
+                    r = self.rtc.GetSelectionRange()
+                    attr.SetFlags(rt.TEXT_ATTR_TEXT_COLOUR)
+                    attr.SetTextColour(colour)
+                    self.rtc.SetStyle(r, attr)
+        dlg.Destroy()
+        
+
+
     def OnUpdateBold(self, evt):
         evt.Check(self.rtc.IsSelectionBold())
     
@@ -498,6 +522,8 @@ class RichTextFrame(wx.Frame):
         tbar.AddSeparator()
         doBind( tbar.AddTool(-1, images.get_rt_fontBitmap(),
                             shortHelpString="Font"), self.OnFont)
+        doBind( tbar.AddTool(-1, images.get_rt_colourBitmap(),
+                            shortHelpString="Font Colour"), self.OnColour)
 
         tbar.Realize()
 
diff --git a/wxPython/demo/bmp_source/rt_colour.xpm b/wxPython/demo/bmp_source/rt_colour.xpm
new file mode 100644 (file)
index 0000000..2dc11d5
--- /dev/null
@@ -0,0 +1,59 @@
+/* XPM */
+static char *rt_colour[] = {
+/* columns rows colors chars-per-pixel */
+"16 16 37 1",
+"  c black",
+". c #727D329BA5CF",
+"X c #4CF6357BDDD0",
+"o c #45CE2E66FA02",
+"O c #45FF2D19FF52",
+"+ c #45452C2FFFFF",
+"@ c #47B22F3CFDC3",
+"# c #45EF3E00EB43",
+"$ c #456C3C9FF054",
+"% c #45663A49F28D",
+"& c #45B75BB5D2B6",
+"* c #4B8899247615",
+"= c #5F619039673F",
+"- c #476EFFCA362C",
+"; c #4747FFFF3633",
+": c #4F3EF55734F1",
+"> c #4899D8B04EEE",
+", c #46F6DED055CF",
+"< c #46EEDBB758C1",
+"1 c #4720F01B4555",
+"2 c #4724F1E8439E",
+"3 c #5EEBE9D75212",
+"4 c #46338EE4A1F3",
+"5 c #ACF030145603",
+"6 c #D9A917AD3776",
+"7 c #DF82157232D4",
+"8 c #FFD3091A193C",
+"9 c #FFFF090A191B",
+"0 c #FD590DB41D4A",
+"q c #E46E13912EEF",
+"w c #EC61108728A3",
+"e c #C21E1CD652E5",
+"r c #A38E1A6E8B66",
+"t c #A37584C127AE",
+"y c #A59D81DF2756",
+"u c #B4A389EF830A",
+"i c None",
+/* pixels */
+"iiiiiiiiiiiiiiii",
+"iiiiii999999iiii",
+"iiiii999w9999iii",
+"iiii9999999999ii",
+"iiii9999999999ii",
+"iiii9999999999ii",
+"iiii9999999999ii",
+"iiiituq999909iii",
+"iii--*=567e.++++",
+"ii--3>-:yrXo++++",
+"i-------2$@+++++",
+"--------,%@+++++",
+"--------<#++++++",
+"--------1&++++++",
+"---------4++++++",
+"i--------i++++++"
+};
index 38102272428ec4864305058181f90c2c9cc2c0c4..5dfd878cf64b21ef9d5f4000f85a64a271815783 100644 (file)
@@ -73,6 +73,7 @@ command_lines = [
     "-a -u -n _rt_alignright bmp_source/rt_alignright.xpm images.py",
     "-a -u -n _rt_bold bmp_source/rt_bold.xpm images.py",
     "-a -u -n _rt_centre bmp_source/rt_centre.xpm images.py",
+    "-a -u -n _rt_colour bmp_source/rt_colour.xpm images.py",
     "-a -u -n _rt_copy bmp_source/rt_copy.xpm images.py",
     "-a -u -n _rt_cut bmp_source/rt_cut.xpm images.py",
     "-a -u -n _rt_font bmp_source/rt_font.xpm images.py",
index 503011a50299fa337d178d190e767b58351c8b4e..d9678bdbb10a81117e7292d228d47c35f7bc2e52 100644 (file)
@@ -10208,6 +10208,30 @@ def get_rt_centreImage():
     stream = cStringIO.StringIO(get_rt_centreData())
     return ImageFromStream(stream)
 
+#----------------------------------------------------------------------
+def get_rt_colourData():
+    return \
+'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\
+\x00\x00\x00\x1f\xf3\xffa\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
+\x00\x00\xf6IDAT8\x8dcddbf\xa0\x04\xb0\xe0\x92\xf8\xc7.\xf6\x1f\x9b8\xd3\xcf\
+W\x8c(|B\x9a\xdf\xb2\xf3\xe35\x98\x11\xdd\x0b\xb8l\xc6\xe5\x12\xac. \x05\x0c\
+B\x03\x96T\xf31lm\xc8bx\xca%\x8a\xa1\xf8\x1f\x0b$\xd2\x90c\x02%\x10\xdd\xfe\
+\x1a\xffg````\x99\xe5\xc0 \xf2\xfd#\x83\xef\x82\xf7\x0c\xba\xcf\x1f2\xb0\xfd\
+\xfb\xcd\xf0\x98]\x81a\x83X0\xc3\xe5_Q(\x86\xc2\r\x80i\x16\x7f%\xc3\xf0\xea\
+\xfd\x1f\x86\xff\xea/\x188\xbe\xfdc\x08\xeb\xf9\xcc\xf0of\n\xc3J\xe9 \x86\
+\x9f?e\x19\x18\xfe\xb1b\x1a\x00\xd3\x8c\x15|\xe2e\xf8\xe7\xbd\x96\x81\xe93/\
+\xc3\xbf\xbf\x98A\xc6\x84W3\x03\x03\xc3\xff\xb7B\x0c\x0c\xffp\x875\xe1X\xf8\
+\xcb\xcc\xc0\xc0\xf2\x13\xab\xedD\x19\xc0(\xfa\x96\x81A\xf69\x05.\xe0\xff\
+\xc8\xc0h|\x1e\xb7\x05\x04\x03\x91\x81\x81a\x17\xf3YF\x17\xad?X\xd5\x00\x00\
+\xac\x08RO\x1e0;\xef\x00\x00\x00\x00IEND\xaeB`\x82' 
+
+def get_rt_colourBitmap():
+    return BitmapFromImage(get_rt_colourImage())
+
+def get_rt_colourImage():
+    stream = cStringIO.StringIO(get_rt_colourData())
+    return ImageFromStream(stream)
+
 #----------------------------------------------------------------------
 def get_rt_copyData():
     return \