mirror of
https://github.com/wxWidgets/Phoenix.git
synced 2026-01-06 20:10:08 +01:00
Add Python snippets for the BitmapBundle docs
This commit is contained in:
@@ -0,0 +1,8 @@
|
|||||||
|
|
||||||
|
# In __init__ for a wx.Frame
|
||||||
|
...
|
||||||
|
toolBar = self.CreateToolBar()
|
||||||
|
bitmaps = [ wx.Bitmap('open_32x32.png'),
|
||||||
|
wx.Bitmap('open_32x32.png'),
|
||||||
|
wx.Bitmap('open_32x32.png') ]
|
||||||
|
toolBar.AddTool(wx.ID_OPEN, wx.BitmapBundle.FromBitmaps(bitmaps))
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
|
||||||
|
# RC resources are not supported in wxPython
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
|
||||||
|
class MyCustomBitmapBundleImpl(wx.BitmapBundleImpl):
|
||||||
|
def __init__(self):
|
||||||
|
super().__init__()
|
||||||
|
self.img = wx.Image(pngFile)
|
||||||
|
self.size = self.img.GetSize()
|
||||||
|
|
||||||
|
def GetDefaultSize(self):
|
||||||
|
# Report the best or default size for the bitmap
|
||||||
|
return self.size
|
||||||
|
|
||||||
|
def GetPreferredBitmapSizeAtScale(self, scale):
|
||||||
|
# Return the size of the bitmap at the given display scale. It
|
||||||
|
# doesn't need to be size*scale if there are unscaled bitmaps
|
||||||
|
# near that size.
|
||||||
|
return self.size * scale
|
||||||
|
|
||||||
|
def GetBitmap(self, size):
|
||||||
|
# Return the version of the bitmap at the desired size
|
||||||
|
img = self.img.Scale(size.width, size.height)
|
||||||
|
return wx.Bitmap(img)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
toolBar.AddTool(wx.ID_OPEN, wx.BitmapBundle.FromImpl(MyCustomBitmapBundleImpl())
|
||||||
Reference in New Issue
Block a user