| 310 | | from wx.lib.embeddedimage import PyEmbeddedImage |
| 311 | | |
| 312 | | Flagged = PyEmbeddedImage( |
| 313 | | "iVBORw0KGgoAAAANSUhEUgAAAA0AAAANCAYAAABy6+R8AAAABHNCSVQICAgIfAhkiAAAAelJ" |
| 314 | | "REFUKJF1ktFL02EUhp/vfEoySsMlhY4cYpNIbNksBkZdNBAJRDODiMi/wLSuQlAx6aIo7Kpu" |
| 315 | | "w4JwRKGEsIhAM4zJomJUol6MgVYztrWfzjm+LmqyMN/r9+E5B16lRJOfnmG/CQS/Eotb2Ets" |
| 316 | | "+Dwu7nS1q/yOyocqWnpN87FqfEer8NSUE5pfJjC7yNj0Z6LPb6gtUMf1B6btRA2NtfsREbTW" |
| 317 | | "iGi01kx9ivDk1UceDXQqAMkZtgNENKfcVVw47aaipdcA6Kv3nprKsp1c8tUhImRUhsnkFINz" |
| 318 | | "g0hG49zlpKiwiKryPUR/JGlsPt+vU2X1/Z1Nh6nctxutNZPJKfzpURLpBBMLE5SqUtx7jyAi" |
| 319 | | "7Cgs4P6zt0gsYeGpKd88ZSQyQmxlhZRlsZbOcPvdLUQEpRTeWiexhIXYi22E5pc3fzhrb2cp" |
| 320 | | "usS35e8k4j/pqb+GUgoRYSYcwV5sQ3wNLgKzi5umJkcTV6q7kV8FDB2/Scehjr8mYXw6jK/B" |
| 321 | | "BUo0jtY+MzYZMslk3KRSSbO6apl0es2sr6fNxkbGZLNZ8zL4xTha+4wS/QdSork48NC8ePNh" |
| 322 | | "W+Dy0GOT625ZRNvJOs54D+KtdTITjjA+Hcb/+v3/F5FL9/CoCQTnWIlblJbY8HkOcLfr3D/b" |
| 323 | | "+w180NFdmL1t3AAAAABJRU5ErkJggg==") |
| 324 | | |
| 325 | | NotFlagged = PyEmbeddedImage( |
| 326 | | "iVBORw0KGgoAAAANSUhEUgAAAA0AAAANCAYAAABy6+R8AAAABHNCSVQICAgIfAhkiAAAAWRJ" |
| 327 | | "REFUKJGV0jFLgmEUhuHnPe83OTi4iQ4ifENklIiDBjWIEDiIUYst0R+ImgoEEWqOaAjaWoQo" |
| 328 | | "gsIgMMEgJLRQoRARRLA2MdTUzOQ0hCCoSGd+Ls5yC0ESg7d1eM7RVAHVegs6rQZuu4qDzVUx" |
| 329 | | "uBGDyOAN8JLdDJfVBJuqR7ZYQSxdQuQxj/erPTGEVnaO2TevwjltBJGElAqklFAUBYnXN5zF" |
| 330 | | "XxAObQgAoP6HcUBKicU5M/yuWRi8AQYAsX10yfVGAwG/cyQgkiAiEEnsntxCUQgUTRXgspom" |
| 331 | | "AiKCxzGFaKoAqtZbsKn6iYCI4LCYUK23QDqtBtliZSIgIiRzZei0GpDbriKWLk0ERIRIIge3" |
| 332 | | "XQUESRh9Qb6+f+Za7YMbjRo3m5/cbre40/nibvebe70fvnvKs9EXZEHyDwmSWAud8s1DZixY" |
| 333 | | "3w9zfztUxPLCDDyOKTgsJiRzZUQSOVzEM6OL+E97v/G1pZkwDG/WAAAAAElFTkSuQmCC") |
| 334 | | |
| 335 | | Checked = PyEmbeddedImage( |
| 336 | | "iVBORw0KGgoAAAANSUhEUgAAAA0AAAANCAYAAABy6+R8AAAABHNCSVQICAgIfAhkiAAAAKlJ" |
| 337 | | "REFUKJFjlAls+M9AImBhYGBgODYxFi7AyMjEwMQEwczMzAxMTMxwmomJiUEzrp+BCdkEQhqY" |
| 338 | | "mCDKmYjRYLDBCCrHjNBESAMDAwPcNrgmmAarXXZYNcDUMDIyompiZoZYbbrVAkPDjYjrDIyM" |
| 339 | | "jKg2wUyGAVwaGBlRnAdx0oWAcyjxga4BxXnIwXol5BJODWh+QsQDExMzXg0YoQfTjE8DAwMD" |
| 340 | | "AyM5aQ8AoE8ebApv5jgAAAAASUVORK5CYII=") |
| 341 | | |
| 342 | | NotChecked = PyEmbeddedImage( |
| 343 | | "iVBORw0KGgoAAAANSUhEUgAAAA0AAAANCAYAAABy6+R8AAAABHNCSVQICAgIfAhkiAAAAG1J" |
| 344 | | "REFUKJGd0sENgDAIBdDPhzHcwGk8eXUU757cyM30UKOlF38lIU0ID5IGG6b1RGcEABzb/BRI" |
| 345 | | "3ulwD7g7IspLOsZlB+sJX4As7ewBpL9IBWmTChqkgYRU0CANmFVIBWaWN6kgfYQKAMD+3N4F" |
| 346 | | "sAcJ4jYyX4sAAAAASUVORK5CYII=") |
| 347 | | |
| 348 | | |
| 1946 | | |
| | 1907 | def GetControlBmp(self, checkbox=True, checked=False, |
| | 1908 | enabled=True, x=16, y=16): |
| | 1909 | """Get a native looking checkbox or radio button bitmap |
| | 1910 | @keyword checkbox: Get a checkbox=True, radiobutton=False |
| | 1911 | @keyword checked: contorl is marked or not |
| | 1912 | |
| | 1913 | """ |
| | 1914 | bmp = wx.EmptyBitmap(x, y) |
| | 1915 | mdc = wx.MemoryDC(bmp) |
| | 1916 | dc = wx.GCDC(mdc) |
| | 1917 | render = wx.RendererNative.Get() |
| | 1918 | |
| | 1919 | if checked: |
| | 1920 | flag = wx.CONTROL_CHECKED |
| | 1921 | else: |
| | 1922 | flag = 0 |
| | 1923 | |
| | 1924 | if not enabled: |
| | 1925 | flag |= wx.CONTROL_DISABLED |
| | 1926 | |
| | 1927 | if checkbox: |
| | 1928 | render.DrawCheckBox(self, mdc, (0, 0, x, y), flag) |
| | 1929 | else: |
| | 1930 | render.DrawRadioButton(self, mdc, (0, 0, x, y), flag) |
| | 1931 | |
| | 1932 | mdc.SelectObject(wx.NullBitmap) |
| | 1933 | return bmp |
| | 1934 | |
| 4078 | | self._imageListCheck.Add(Checked.GetBitmap()) |
| 4079 | | self._imageListCheck.Add(NotChecked.GetBitmap()) |
| 4080 | | self._imageListCheck.Add(Flagged.GetBitmap()) |
| 4081 | | self._imageListCheck.Add(NotFlagged.GetBitmap()) |
| | 4069 | |
| | 4070 | # Get the Checkboxes |
| | 4071 | self._imageListCheck.Add(self.GetControlBmp(checkbox=True, |
| | 4072 | checked=True, |
| | 4073 | enabled=True, |
| | 4074 | x=sizex, y=sizey)) |
| | 4075 | self._grayedCheckList.Add(self.GetControlBmp(checkbox=True, |
| | 4076 | checked=True, |
| | 4077 | enabled=False, |
| | 4078 | x=sizex, y=sizey)) |
| | 4079 | |
| | 4080 | self._imageListCheck.Add(self.GetControlBmp(checkbox=True, |
| | 4081 | checked=False, |
| | 4082 | enabled=True, |
| | 4083 | x=sizex, y=sizey)) |
| | 4084 | self._grayedCheckList.Add(self.GetControlBmp(checkbox=True, |
| | 4085 | checked=False, |
| | 4086 | enabled=False, |
| | 4087 | x=sizex, y=sizey)) |
| | 4088 | |
| | 4089 | |
| | 4090 | # Get the Radio Buttons |
| | 4091 | self._imageListCheck.Add(self.GetControlBmp(checkbox=False, |
| | 4092 | checked=True, |
| | 4093 | enabled=True, |
| | 4094 | x=sizex, y=sizey)) |
| | 4095 | self._grayedCheckList.Add(self.GetControlBmp(checkbox=False, |
| | 4096 | checked=True, |
| | 4097 | enabled=False, |
| | 4098 | x=sizex, y=sizey)) |
| | 4099 | |
| | 4100 | self._imageListCheck.Add(self.GetControlBmp(checkbox=False, |
| | 4101 | checked=False, |
| | 4102 | enabled=True, |
| | 4103 | x=sizex, y=sizey)) |
| | 4104 | self._grayedCheckList.Add(self.GetControlBmp(checkbox=False, |
| | 4105 | checked=False, |
| | 4106 | enabled=False, |
| | 4107 | x=sizex, y=sizey)) |
| 4088 | | # We gray out the image list to use the grayed icons with disabled items |
| 4089 | | self._grayedCheckList = wx.ImageList(sizex, sizey, True, 0) |
| 4090 | | |
| 4091 | | for ii in xrange(self._imageListCheck.GetImageCount()): |
| 4092 | | |
| 4093 | | bmp = self._imageListCheck.GetBitmap(ii) |
| 4094 | | image = wx.ImageFromBitmap(bmp) |
| 4095 | | image = GrayOut(image) |
| 4096 | | newbmp = wx.BitmapFromImage(image) |
| 4097 | | self._grayedCheckList.Add(newbmp) |
| | 4114 | for ii in xrange(self._imageListCheck.GetImageCount()): |
| | 4115 | |
| | 4116 | bmp = self._imageListCheck.GetBitmap(ii) |
| | 4117 | image = wx.ImageFromBitmap(bmp) |
| | 4118 | image = GrayOut(image) |
| | 4119 | newbmp = wx.BitmapFromImage(image) |
| | 4120 | self._grayedCheckList.Add(newbmp) |