Images can now be embedded in Python source files.
Added tools to do the embedding. Added Constructors/methods where needed. Updated the demo to use mostly embedded images. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9693 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
@@ -3,6 +3,7 @@ from wxPython.wx import *
|
|||||||
from wxPython.lib.buttons import wxGenButton, wxGenBitmapButton, \
|
from wxPython.lib.buttons import wxGenButton, wxGenBitmapButton, \
|
||||||
wxGenToggleButton, wxGenBitmapToggleButton
|
wxGenToggleButton, wxGenBitmapToggleButton
|
||||||
|
|
||||||
|
import images
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
@@ -34,18 +35,18 @@ class TestPanel(wxPanel):
|
|||||||
#b.SetUseFocusIndicator(false)
|
#b.SetUseFocusIndicator(false)
|
||||||
b.SetToolTipString("This is a BIG button...")
|
b.SetToolTipString("This is a BIG button...")
|
||||||
|
|
||||||
bmp = wxBitmap('bitmaps/test2.bmp', wxBITMAP_TYPE_BMP)
|
bmp = images.getTest2Bitmap()
|
||||||
b = wxGenBitmapButton(self, -1, bmp, (10, 130))
|
b = wxGenBitmapButton(self, -1, bmp, (10, 130))
|
||||||
EVT_BUTTON(self, b.GetId(), self.OnButton)
|
EVT_BUTTON(self, b.GetId(), self.OnButton)
|
||||||
|
|
||||||
|
|
||||||
b = wxGenBitmapButton(self, -1, None, (140, 130))
|
b = wxGenBitmapButton(self, -1, None, (140, 130))
|
||||||
EVT_BUTTON(self, b.GetId(), self.OnButton)
|
EVT_BUTTON(self, b.GetId(), self.OnButton)
|
||||||
bmp = wxBitmap('bitmaps/lb1.bmp', wxBITMAP_TYPE_BMP)
|
bmp = images.getBulb1Bitmap()
|
||||||
mask = wxMaskColour(bmp, wxBLUE)
|
mask = wxMaskColour(bmp, wxBLUE)
|
||||||
bmp.SetMask(mask)
|
bmp.SetMask(mask)
|
||||||
b.SetBitmapLabel(bmp)
|
b.SetBitmapLabel(bmp)
|
||||||
bmp = wxBitmap('bitmaps/lb2.bmp', wxBITMAP_TYPE_BMP)
|
bmp = images.getBulb2Bitmap()
|
||||||
mask = wxMaskColour(bmp, wxBLUE)
|
mask = wxMaskColour(bmp, wxBLUE)
|
||||||
bmp.SetMask(mask)
|
bmp.SetMask(mask)
|
||||||
b.SetBitmapSelected(bmp)
|
b.SetBitmapSelected(bmp)
|
||||||
@@ -57,11 +58,11 @@ class TestPanel(wxPanel):
|
|||||||
|
|
||||||
b = wxGenBitmapToggleButton(self, -1, None, (140, 230))
|
b = wxGenBitmapToggleButton(self, -1, None, (140, 230))
|
||||||
EVT_BUTTON(self, b.GetId(), self.OnToggleButton)
|
EVT_BUTTON(self, b.GetId(), self.OnToggleButton)
|
||||||
bmp = wxBitmap('bitmaps/lb1.bmp', wxBITMAP_TYPE_BMP)
|
bmp = images.getBulb1Bitmap()
|
||||||
mask = wxMaskColour(bmp, wxBLUE)
|
mask = wxMaskColour(bmp, wxBLUE)
|
||||||
bmp.SetMask(mask)
|
bmp.SetMask(mask)
|
||||||
b.SetBitmapLabel(bmp)
|
b.SetBitmapLabel(bmp)
|
||||||
bmp = wxBitmap('bitmaps/lb2.bmp', wxBITMAP_TYPE_BMP)
|
bmp = images.getBulb2Bitmap()
|
||||||
mask = wxMaskColour(bmp, wxBLUE)
|
mask = wxMaskColour(bmp, wxBLUE)
|
||||||
bmp.SetMask(mask)
|
bmp.SetMask(mask)
|
||||||
b.SetBitmapSelected(bmp)
|
b.SetBitmapSelected(bmp)
|
||||||
|
@@ -211,6 +211,7 @@ class GridEditorTest(wxGrid):
|
|||||||
self.SetColSize(1, 150)
|
self.SetColSize(1, 150)
|
||||||
self.SetColSize(2, 150)
|
self.SetColSize(2, 150)
|
||||||
|
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
class TestFrame(wxFrame):
|
class TestFrame(wxFrame):
|
||||||
|
@@ -16,6 +16,8 @@ from wxPython.wx import *
|
|||||||
from wxPython.lib.splashscreen import SplashScreen
|
from wxPython.lib.splashscreen import SplashScreen
|
||||||
from wxPython.html import wxHtmlWindow
|
from wxPython.html import wxHtmlWindow
|
||||||
|
|
||||||
|
import images
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
@@ -75,10 +77,10 @@ class wxPythonDemo(wxFrame):
|
|||||||
self.cwd = os.getcwd()
|
self.cwd = os.getcwd()
|
||||||
self.curOverview = ""
|
self.curOverview = ""
|
||||||
|
|
||||||
if wxPlatform == '__WXMSW__':
|
icon = wxIconFromXPMData(images.getMondrianData())
|
||||||
icon = wxIcon('bitmaps/mondrian.ico', wxBITMAP_TYPE_ICO)
|
self.SetIcon(icon)
|
||||||
self.SetIcon(icon)
|
|
||||||
|
|
||||||
|
if wxPlatform == '__WXMSW__':
|
||||||
# setup a taskbar icon, and catch some events from it
|
# setup a taskbar icon, and catch some events from it
|
||||||
self.tbicon = wxTaskBarIcon()
|
self.tbicon = wxTaskBarIcon()
|
||||||
self.tbicon.SetIcon(icon, "wxPython Demo")
|
self.tbicon.SetIcon(icon, "wxPython Demo")
|
||||||
|
Before Width: | Height: | Size: 545 B After Width: | Height: | Size: 545 B |
Before Width: | Height: | Size: 990 B After Width: | Height: | Size: 990 B |
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 630 B After Width: | Height: | Size: 630 B |
Before Width: | Height: | Size: 630 B After Width: | Height: | Size: 630 B |
Before Width: | Height: | Size: 630 B After Width: | Height: | Size: 630 B |
Before Width: | Height: | Size: 630 B After Width: | Height: | Size: 630 B |
Before Width: | Height: | Size: 630 B After Width: | Height: | Size: 630 B |
Before Width: | Height: | Size: 630 B After Width: | Height: | Size: 630 B |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 238 B After Width: | Height: | Size: 238 B |
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.6 KiB |
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 4.7 KiB |
Before Width: | Height: | Size: 766 B After Width: | Height: | Size: 766 B |
Before Width: | Height: | Size: 238 B After Width: | Height: | Size: 238 B |
Before Width: | Height: | Size: 238 B After Width: | Height: | Size: 238 B |
Before Width: | Height: | Size: 238 B After Width: | Height: | Size: 238 B |
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 4.7 KiB |
Before Width: | Height: | Size: 246 B After Width: | Height: | Size: 246 B |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 238 B After Width: | Height: | Size: 238 B |
Before Width: | Height: | Size: 238 B After Width: | Height: | Size: 238 B |
56
wxPython/demo/encode_bitmaps.py
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
#----------------------------------------------------------------------
|
||||||
|
|
||||||
|
"""
|
||||||
|
This is a way to save the startup time when running img2py on lots of
|
||||||
|
files...
|
||||||
|
"""
|
||||||
|
|
||||||
|
import sys, string
|
||||||
|
sys.path.insert(0, "../tools")
|
||||||
|
|
||||||
|
import img2py
|
||||||
|
|
||||||
|
|
||||||
|
command_lines = [
|
||||||
|
" -n Mondrian bmp_source/mondrian.ico images.py",
|
||||||
|
|
||||||
|
"-a -n _10s_ bmp_source/10s.gif images.py",
|
||||||
|
"-a -n _01c_ bmp_source/01c.gif images.py",
|
||||||
|
"-a -n _12h_ bmp_source/12h.gif images.py",
|
||||||
|
"-a -n _13d_ bmp_source/13d.gif images.py",
|
||||||
|
"-a -n Background bmp_source/backgrnd.png images.py",
|
||||||
|
"-a -n TestStar -m #FFFFFF bmp_source/teststar.png images.py",
|
||||||
|
"-a -n TestStar2 bmp_source/teststar.png images.py",
|
||||||
|
"-a -n TestMask bmp_source/testmask.bmp images.py",
|
||||||
|
|
||||||
|
"-a -n Test2 bmp_source/test2.bmp images.py",
|
||||||
|
"-a -n Robin bmp_source/robin.jpg images.py",
|
||||||
|
|
||||||
|
"-a -n Bulb1 bmp_source/lb1.bmp images.py",
|
||||||
|
"-a -n Bulb2 bmp_source/lb2.bmp images.py",
|
||||||
|
|
||||||
|
"-a -n Calendar bmp_source/Calend.bmp images.py",
|
||||||
|
"-a -n DbDec bmp_source/DbDec.bmp images.py",
|
||||||
|
"-a -n Dec bmp_source/Dec.bmp images.py",
|
||||||
|
"-a -n Pt bmp_source/Pt.bmp images.py",
|
||||||
|
"-a -n DbInc bmp_source/DbInc.bmp images.py",
|
||||||
|
"-a -n Inc bmp_source/Inc.bmp images.py",
|
||||||
|
|
||||||
|
"-a -n New bmp_source/new.bmp images.py",
|
||||||
|
"-a -n Open bmp_source/open.bmp images.py",
|
||||||
|
"-a -n Copy bmp_source/copy.bmp images.py",
|
||||||
|
"-a -n Paste bmp_source/paste.bmp images.py",
|
||||||
|
"-a -n Tog1 bmp_source/tog1.bmp images.py",
|
||||||
|
"-a -n Tog2 bmp_source/tog2.bmp images.py",
|
||||||
|
|
||||||
|
"-a -n Smiles bmp_source/smiles.bmp images.py",
|
||||||
|
|
||||||
|
#"-a -n bmp_source/ images.py",
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
for line in command_lines:
|
||||||
|
args = string.split(line)
|
||||||
|
img2py.main(args)
|
||||||
|
|
5183
wxPython/demo/images.py
Normal file
@@ -24,7 +24,7 @@ beautifully documented...
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
from wxPython import wx
|
from wxPython import wx
|
||||||
import string # Don't use it, but it's fun expanding :-)
|
import sys, string # Don't use it, but it's fun expanding :-)
|
||||||
|
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
|
|
||||||
@@ -161,7 +161,8 @@ def runTest(frame, nb, log):
|
|||||||
This method is used by the wxPython Demo Framework for integrating
|
This method is used by the wxPython Demo Framework for integrating
|
||||||
this demo with the rest.
|
this demo with the rest.
|
||||||
"""
|
"""
|
||||||
thisModule = __import__(__name__, globals())
|
#thisModule = __import__(__name__, globals())
|
||||||
|
thisModule = sys.modules[__name__]
|
||||||
win = wx.wxFrame(frame, -1, "PyTreeItemData Test")
|
win = wx.wxFrame(frame, -1, "PyTreeItemData Test")
|
||||||
split = wx.wxSplitterWindow(win, -1)
|
split = wx.wxSplitterWindow(win, -1)
|
||||||
tree = pyTree(split, -1, thisModule)
|
tree = pyTree(split, -1, thisModule)
|
||||||
|
@@ -1,6 +1,8 @@
|
|||||||
|
|
||||||
from wxPython.wx import *
|
from wxPython.wx import *
|
||||||
|
|
||||||
|
import images
|
||||||
|
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
|
|
||||||
class TestPanel(wxPanel):
|
class TestPanel(wxPanel):
|
||||||
@@ -19,8 +21,7 @@ class TestPanel(wxPanel):
|
|||||||
|
|
||||||
b.SetToolTipString("This is a Hello button...")
|
b.SetToolTipString("This is a Hello button...")
|
||||||
|
|
||||||
bmp = wxBitmap('bitmaps/test2.bmp', wxBITMAP_TYPE_BMP)
|
bmp = images.getTest2Bitmap()
|
||||||
|
|
||||||
mask = wxMaskColour(bmp, wxBLUE)
|
mask = wxMaskColour(bmp, wxBLUE)
|
||||||
bmp.SetMask(mask)
|
bmp.SetMask(mask)
|
||||||
|
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
#
|
#
|
||||||
# Author: Lorne White (email: lwhite1@planet.eon.net)
|
# Author: Lorne White (email: lwhite1@planet.eon.net)
|
||||||
#
|
#
|
||||||
# Version 0.9
|
# Version 0.9
|
||||||
# Date: Feb 26, 2001
|
# Date: Feb 26, 2001
|
||||||
# Licence: wxWindows license
|
# Licence: wxWindows license
|
||||||
#----------------------------------------------------------------------------
|
#----------------------------------------------------------------------------
|
||||||
@@ -12,8 +12,8 @@
|
|||||||
from wxPython.wx import *
|
from wxPython.wx import *
|
||||||
from wxPython.lib.calendar import wxCalendar, Month, PrtCalDraw, CalenDlg
|
from wxPython.lib.calendar import wxCalendar, Month, PrtCalDraw, CalenDlg
|
||||||
|
|
||||||
|
import images
|
||||||
import os
|
import os
|
||||||
dir_path = os.getcwd()
|
|
||||||
|
|
||||||
|
|
||||||
# highlighted days in month
|
# highlighted days in month
|
||||||
@@ -107,7 +107,7 @@ class TestPanel(wxPanel):
|
|||||||
wxStaticText(self, -1, "Test Calendar Dialog", wxPoint(350, 50), wxSize(150, -1))
|
wxStaticText(self, -1, "Test Calendar Dialog", wxPoint(350, 50), wxSize(150, -1))
|
||||||
|
|
||||||
mID = NewId()
|
mID = NewId()
|
||||||
bmp = wxBitmap('bitmaps/Calend.bmp', wxBITMAP_TYPE_BMP)
|
bmp = images.getCalendarBitmap()
|
||||||
self.but = wxBitmapButton(self, mID, bmp, wxPoint(380, 80))#, wxSize(30, 30))
|
self.but = wxBitmapButton(self, mID, bmp, wxPoint(380, 80))#, wxSize(30, 30))
|
||||||
EVT_BUTTON(self, mID, self.TestDlg)
|
EVT_BUTTON(self, mID, self.TestDlg)
|
||||||
|
|
||||||
@@ -116,14 +116,12 @@ class TestPanel(wxPanel):
|
|||||||
wxStaticText(self, -1, "Test Calendar Window", wxPoint(350, 150), wxSize(150, -1))
|
wxStaticText(self, -1, "Test Calendar Window", wxPoint(350, 150), wxSize(150, -1))
|
||||||
|
|
||||||
mID = NewId()
|
mID = NewId()
|
||||||
bmp = wxBitmap('bitmaps/Calend.bmp', wxBITMAP_TYPE_BMP)
|
|
||||||
self.but = wxBitmapButton(self, mID, bmp, wxPoint(380, 180))#, wxSize(30, 30))
|
self.but = wxBitmapButton(self, mID, bmp, wxPoint(380, 180))#, wxSize(30, 30))
|
||||||
EVT_BUTTON(self, mID, self.TestFrame)
|
EVT_BUTTON(self, mID, self.TestFrame)
|
||||||
|
|
||||||
wxStaticText(self, -1, "Test Calendar Print", wxPoint(350, 250), wxSize(150, -1))
|
wxStaticText(self, -1, "Test Calendar Print", wxPoint(350, 250), wxSize(150, -1))
|
||||||
|
|
||||||
mID = NewId()
|
mID = NewId()
|
||||||
bmp = wxBitmap('bitmaps/Calend.bmp', wxBITMAP_TYPE_BMP)
|
|
||||||
self.but = wxBitmapButton(self, mID, bmp, wxPoint(380, 280))#, wxSize(30, 30))
|
self.but = wxBitmapButton(self, mID, bmp, wxPoint(380, 280))#, wxSize(30, 30))
|
||||||
EVT_BUTTON(self, mID, self.OnPreview)
|
EVT_BUTTON(self, mID, self.OnPreview)
|
||||||
|
|
||||||
@@ -316,26 +314,24 @@ class CalendFrame(wxFrame):
|
|||||||
def MakeToolMenu(self):
|
def MakeToolMenu(self):
|
||||||
tb = self.CreateToolBar(wxTB_HORIZONTAL|wxNO_BORDER)
|
tb = self.CreateToolBar(wxTB_HORIZONTAL|wxNO_BORDER)
|
||||||
|
|
||||||
bmp_path = 'bitmaps/'
|
|
||||||
|
|
||||||
mID = NewId()
|
mID = NewId()
|
||||||
SetToolPath(self, tb, mID, bmp_path + 'DbDec.bmp', 'Dec Year')
|
SetToolPath(self, tb, mID, images.getDbDecBitmap(), 'Dec Year')
|
||||||
EVT_TOOL(self, mID, self.OnDecYear)
|
EVT_TOOL(self, mID, self.OnDecYear)
|
||||||
|
|
||||||
mID = NewId()
|
mID = NewId()
|
||||||
SetToolPath(self, tb, mID, bmp_path + 'Dec.bmp', 'Dec Month')
|
SetToolPath(self, tb, mID, images.getDecBitmap(), 'Dec Month')
|
||||||
EVT_TOOL(self, mID, self.OnDecMonth)
|
EVT_TOOL(self, mID, self.OnDecMonth)
|
||||||
|
|
||||||
mID = NewId()
|
mID = NewId()
|
||||||
SetToolPath(self, tb, mID, bmp_path + 'Pt.bmp', 'Current Month')
|
SetToolPath(self, tb, mID, images.getPtBitmap(), 'Current Month')
|
||||||
EVT_TOOL(self, mID, self.OnCurrent)
|
EVT_TOOL(self, mID, self.OnCurrent)
|
||||||
|
|
||||||
mID = NewId()
|
mID = NewId()
|
||||||
SetToolPath(self, tb, mID, bmp_path + 'Inc.bmp', 'Inc Month')
|
SetToolPath(self, tb, mID, images.getIncBitmap(), 'Inc Month')
|
||||||
EVT_TOOL(self, mID, self.OnIncMonth)
|
EVT_TOOL(self, mID, self.OnIncMonth)
|
||||||
|
|
||||||
mID = NewId()
|
mID = NewId()
|
||||||
SetToolPath(self, tb, mID, bmp_path + 'DbInc.bmp', 'Inc Year')
|
SetToolPath(self, tb, mID, images.getDbIncBitmap(), 'Inc Year')
|
||||||
EVT_TOOL(self, mID, self.OnIncYear)
|
EVT_TOOL(self, mID, self.OnIncYear)
|
||||||
|
|
||||||
tb.Realize()
|
tb.Realize()
|
||||||
@@ -518,9 +514,7 @@ class PrintCalend:
|
|||||||
self.ptheight = height
|
self.ptheight = height
|
||||||
|
|
||||||
def SetToolPath(self, tb, id, bmp, title):
|
def SetToolPath(self, tb, id, bmp, title):
|
||||||
global dir_path
|
tb.AddSimpleTool(id, bmp, title, title)
|
||||||
tb.AddSimpleTool(id, wxBitmap(os.path.join(dir_path, bmp), wxBITMAP_TYPE_BMP),
|
|
||||||
title, title)
|
|
||||||
|
|
||||||
class SetPrintout(wxPrintout):
|
class SetPrintout(wxPrintout):
|
||||||
def __init__(self, canvas):
|
def __init__(self, canvas):
|
||||||
|
@@ -1,6 +1,8 @@
|
|||||||
|
|
||||||
from wxPython.wx import *
|
from wxPython.wx import *
|
||||||
|
|
||||||
|
import images
|
||||||
|
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
|
|
||||||
class DragShape:
|
class DragShape:
|
||||||
@@ -47,14 +49,14 @@ class DragCanvas(wxScrolledWindow):
|
|||||||
self.dragShape = None
|
self.dragShape = None
|
||||||
|
|
||||||
self.SetCursor(wxStockCursor(wxCURSOR_ARROW))
|
self.SetCursor(wxStockCursor(wxCURSOR_ARROW))
|
||||||
self.bg_bmp = wxBitmap('bitmaps/backgrnd.png', wxBITMAP_TYPE_PNG)
|
self.bg_bmp = images.getBackgroundBitmap()
|
||||||
|
|
||||||
|
|
||||||
# Make a shape from an image and mask. This one will demo
|
# Make a shape from an image and mask. This one will demo
|
||||||
# dragging outside the window
|
# dragging outside the window
|
||||||
bmp = wxBitmap('bitmaps/test_image.png', wxBITMAP_TYPE_PNG)
|
bmp = images.getTestStarBitmap()
|
||||||
mask = wxMaskColour(bmp, wxWHITE)
|
#mask = wxMaskColour(bmp, wxWHITE)
|
||||||
bmp.SetMask(mask)
|
#bmp.SetMask(mask)
|
||||||
shape = DragShape(bmp)
|
shape = DragShape(bmp)
|
||||||
shape.pos = wxPoint(5, 5)
|
shape.pos = wxPoint(5, 5)
|
||||||
shape.fullscreen = true
|
shape.fullscreen = true
|
||||||
@@ -84,8 +86,9 @@ class DragCanvas(wxScrolledWindow):
|
|||||||
|
|
||||||
# Make some shapes from some playing card images.
|
# Make some shapes from some playing card images.
|
||||||
x = 200
|
x = 200
|
||||||
for card in ['01c.gif', '10s.gif', '12h.gif', '13d.gif']:
|
for card in ['_01c_', '_12h_', '_13d_', '_10s_']:
|
||||||
bmp = wxBitmap('bitmaps/'+card, wxBITMAP_TYPE_GIF)
|
bmpFunc = getattr(images, "get%sBitmap" % card)
|
||||||
|
bmp = bmpFunc()
|
||||||
shape = DragShape(bmp)
|
shape = DragShape(bmp)
|
||||||
shape.pos = wxPoint(x, 5)
|
shape.pos = wxPoint(x, 5)
|
||||||
self.shapes.append(shape)
|
self.shapes.append(shape)
|
||||||
|
@@ -1,6 +1,9 @@
|
|||||||
from wxPython.wx import *
|
from wxPython.wx import *
|
||||||
from wxPython.lib.floatbar import *
|
from wxPython.lib.floatbar import *
|
||||||
|
|
||||||
|
import images
|
||||||
|
|
||||||
|
|
||||||
class TestFloatBar(wxFrame):
|
class TestFloatBar(wxFrame):
|
||||||
def __init__(self, parent, log):
|
def __init__(self, parent, log):
|
||||||
wxFrame.__init__(self, parent, -1, 'Test ToolBar',
|
wxFrame.__init__(self, parent, -1, 'Test ToolBar',
|
||||||
@@ -17,32 +20,28 @@ class TestFloatBar(wxFrame):
|
|||||||
tb.SetFloatable(1)
|
tb.SetFloatable(1)
|
||||||
tb.SetTitle("Floating!")
|
tb.SetTitle("Floating!")
|
||||||
self.CreateStatusBar()
|
self.CreateStatusBar()
|
||||||
tb.AddSimpleTool(10, wxBitmap('bitmaps/new.bmp', wxBITMAP_TYPE_BMP),
|
|
||||||
"New", "Long help for 'New'")
|
tb.AddSimpleTool(10, images.getNewBitmap(), "New", "Long help for 'New'")
|
||||||
EVT_TOOL(self, 10, self.OnToolClick)
|
EVT_TOOL(self, 10, self.OnToolClick)
|
||||||
EVT_TOOL_RCLICKED(self, 10, self.OnToolRClick)
|
EVT_TOOL_RCLICKED(self, 10, self.OnToolRClick)
|
||||||
|
|
||||||
tb.AddSimpleTool(20, wxBitmap('bitmaps/open.bmp', wxBITMAP_TYPE_BMP),
|
tb.AddSimpleTool(20, images.getOpenBitmap(), "Open")
|
||||||
"Open")
|
|
||||||
EVT_TOOL(self, 20, self.OnToolClick)
|
EVT_TOOL(self, 20, self.OnToolClick)
|
||||||
EVT_TOOL_RCLICKED(self, 20, self.OnToolRClick)
|
EVT_TOOL_RCLICKED(self, 20, self.OnToolRClick)
|
||||||
|
|
||||||
tb.AddSeparator()
|
tb.AddSeparator()
|
||||||
tb.AddSimpleTool(30, wxBitmap('bitmaps/copy.bmp', wxBITMAP_TYPE_BMP),
|
tb.AddSimpleTool(30, images.getCopyBitmap(), "Copy")
|
||||||
"Copy")
|
|
||||||
EVT_TOOL(self, 30, self.OnToolClick)
|
EVT_TOOL(self, 30, self.OnToolClick)
|
||||||
EVT_TOOL_RCLICKED(self, 30, self.OnToolRClick)
|
EVT_TOOL_RCLICKED(self, 30, self.OnToolRClick)
|
||||||
|
|
||||||
tb.AddSimpleTool(40, wxBitmap('bitmaps/paste.bmp', wxBITMAP_TYPE_BMP),
|
tb.AddSimpleTool(40, images.getPasteBitmap(), "Paste")
|
||||||
"Paste")
|
|
||||||
EVT_TOOL(self, 40, self.OnToolClick)
|
EVT_TOOL(self, 40, self.OnToolClick)
|
||||||
EVT_TOOL_RCLICKED(self, 40, self.OnToolRClick)
|
EVT_TOOL_RCLICKED(self, 40, self.OnToolRClick)
|
||||||
|
|
||||||
tb.AddSeparator()
|
tb.AddSeparator()
|
||||||
|
|
||||||
|
|
||||||
tb.AddTool(60, wxBitmap('bitmaps/tog1.bmp', wxBITMAP_TYPE_BMP),
|
tb.AddTool(60, images.getTog1Bitmap(), images.getTog2Bitmap(),
|
||||||
wxBitmap('bitmaps/tog2.bmp', wxBITMAP_TYPE_BMP),
|
|
||||||
shortHelpString="Toggle with 2 bitmaps", isToggle=true)
|
shortHelpString="Toggle with 2 bitmaps", isToggle=true)
|
||||||
EVT_TOOL(self, 60, self.OnToolClick)
|
EVT_TOOL(self, 60, self.OnToolClick)
|
||||||
EVT_TOOL_RCLICKED(self, 60, self.OnToolRClick)
|
EVT_TOOL_RCLICKED(self, 60, self.OnToolRClick)
|
||||||
|
@@ -57,6 +57,7 @@ musicdata = {
|
|||||||
39: ("Yes", "Rhythm Of Love", "Rock"),
|
39: ("Yes", "Rhythm Of Love", "Rock"),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
import images
|
||||||
|
|
||||||
class TestListCtrlPanel(wxPanel):
|
class TestListCtrlPanel(wxPanel):
|
||||||
def __init__(self, parent, log):
|
def __init__(self, parent, log):
|
||||||
@@ -66,7 +67,7 @@ class TestListCtrlPanel(wxPanel):
|
|||||||
tID = wxNewId()
|
tID = wxNewId()
|
||||||
|
|
||||||
self.il = wxImageList(16, 16)
|
self.il = wxImageList(16, 16)
|
||||||
bmp = wxBitmap('bitmaps/smiles.bmp', wxBITMAP_TYPE_BMP)
|
bmp = images.getSmilesBitmap()
|
||||||
idx1 = self.il.AddWithColourMask(bmp, wxWHITE)
|
idx1 = self.il.AddWithColourMask(bmp, wxWHITE)
|
||||||
|
|
||||||
self.list = wxListCtrl(self, tID,
|
self.list = wxListCtrl(self, tID,
|
||||||
|
@@ -26,19 +26,21 @@ logicList = [
|
|||||||
('wxXOR', wxXOR),
|
('wxXOR', wxXOR),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
import images
|
||||||
|
|
||||||
class TestMaskWindow(wxScrolledWindow):
|
class TestMaskWindow(wxScrolledWindow):
|
||||||
def __init__(self, parent):
|
def __init__(self, parent):
|
||||||
wxScrolledWindow.__init__(self, parent, -1)
|
wxScrolledWindow.__init__(self, parent, -1)
|
||||||
self.SetBackgroundColour(wxColour(0,128,0))
|
self.SetBackgroundColour(wxColour(0,128,0))
|
||||||
|
|
||||||
# A reference bitmap that we won't mask
|
# A reference bitmap that we won't mask
|
||||||
self.bmp_nomask = wxBitmap('bitmaps/test_image.png', wxBITMAP_TYPE_PNG)
|
self.bmp_nomask = images.getTestStar2Bitmap()
|
||||||
|
|
||||||
# One that we will
|
# One that we will
|
||||||
self.bmp_withmask = wxBitmap('bitmaps/test_image.png', wxBITMAP_TYPE_PNG)
|
self.bmp_withmask = images.getTestStar2Bitmap()
|
||||||
|
|
||||||
# this mask comes from a monochrome bitmap
|
# this mask comes from a monochrome bitmap
|
||||||
self.bmp_themask = wxBitmap('bitmaps/test_mask.bmp', wxBITMAP_TYPE_BMP)
|
self.bmp_themask = images.getTestMaskBitmap()
|
||||||
self.bmp_themask.SetDepth(1)
|
self.bmp_themask.SetDepth(1)
|
||||||
mask = wxMask(self.bmp_themask)
|
mask = wxMask(self.bmp_themask)
|
||||||
|
|
||||||
@@ -47,7 +49,7 @@ class TestMaskWindow(wxScrolledWindow):
|
|||||||
|
|
||||||
# Now we'll create a mask in a bit of an easier way, by picking a
|
# Now we'll create a mask in a bit of an easier way, by picking a
|
||||||
# colour in the image that is to be the transparent colour.
|
# colour in the image that is to be the transparent colour.
|
||||||
self.bmp_withcolourmask = wxBitmap('bitmaps/test_image.png', wxBITMAP_TYPE_PNG)
|
self.bmp_withcolourmask = images.getTestStar2Bitmap()
|
||||||
mask = wxMaskColour(self.bmp_withcolourmask, wxWHITE)
|
mask = wxMaskColour(self.bmp_withcolourmask, wxWHITE)
|
||||||
self.bmp_withcolourmask.SetMask(mask)
|
self.bmp_withcolourmask.SetMask(mask)
|
||||||
|
|
||||||
|
@@ -2,6 +2,8 @@
|
|||||||
from wxPython.wx import *
|
from wxPython.wx import *
|
||||||
from wxPython.ogl import *
|
from wxPython.ogl import *
|
||||||
|
|
||||||
|
import images
|
||||||
|
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
# This creates some pens and brushes that the OGL library uses.
|
# This creates some pens and brushes that the OGL library uses.
|
||||||
|
|
||||||
@@ -41,40 +43,6 @@ class RoundedRectangleShape(wxRectangleShape):
|
|||||||
self.SetCornerRadius(-0.3)
|
self.SetCornerRadius(-0.3)
|
||||||
|
|
||||||
|
|
||||||
#----------------------------------------------------------------------
|
|
||||||
|
|
||||||
## class LabeledBitmapShape(wxBitmapShape):
|
|
||||||
## def __init__(self, bmp, text):
|
|
||||||
## wxBitmapShape.__init__(self)
|
|
||||||
## self.SetBitmap(bmp)
|
|
||||||
## self.region = r = wxShapeRegion()
|
|
||||||
## r.SetPosition(0, 0) #bmp.GetHeight())
|
|
||||||
## r.SetSize(bmp.GetWidth(), bmp.GetHeight())
|
|
||||||
## r.SetText(text)
|
|
||||||
## self.AddRegion(r)
|
|
||||||
|
|
||||||
## def OnMovePost(self, dc, x, y, old_x, old_y, display):
|
|
||||||
## self.region.SetPosition(x, y)
|
|
||||||
## self.base_OnMovePost(dc, x, y, old_x, old_y, display)
|
|
||||||
|
|
||||||
|
|
||||||
## class LabeledBitmapShape(wxCompositeShape):
|
|
||||||
## def __init__(self, canvas, bmp, text):
|
|
||||||
## wxCompositeShape.__init__(self)
|
|
||||||
## self.bs = wxBitmapShape()
|
|
||||||
## self.bs.SetBitmap(bmp)
|
|
||||||
## self.ts = wxTextShape()
|
|
||||||
## self.ts.AddText(text)
|
|
||||||
|
|
||||||
## self.AddChild(self.bs)
|
|
||||||
## self.AddChild(self.ts, self.bs)
|
|
||||||
|
|
||||||
## self.AddConstrainedShapes(gyCONSTRAINT_CENTRED_VERTICALLY, self, [self.bs, self.ts])
|
|
||||||
## self.AddSimpleConstraint(gyCONSTRAINT_BELOW, self.bs, self.ts)
|
|
||||||
## self.AddSimpleConstraint(gyCONSTRAINT_ALIGNED_TOP, self, self.bs)
|
|
||||||
## self.AddSimpleConstraint(gyCONSTRAINT_ALIGNED_BOTTOM, self, self.ts)
|
|
||||||
|
|
||||||
|
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
|
|
||||||
class MyEvtHandler(wxShapeEvtHandler):
|
class MyEvtHandler(wxShapeEvtHandler):
|
||||||
@@ -168,19 +136,9 @@ class TestWindow(wxShapeCanvas):
|
|||||||
self.MyAddShape(DiamondShape(90, 90), 345, 235, wxPen(wxBLUE, 3, wxDOT), wxRED_BRUSH, "Polygon")
|
self.MyAddShape(DiamondShape(90, 90), 345, 235, wxPen(wxBLUE, 3, wxDOT), wxRED_BRUSH, "Polygon")
|
||||||
self.MyAddShape(RoundedRectangleShape(95,70), 140, 255, wxPen(wxRED, 1), rRectBrush, "Rounded Rect")
|
self.MyAddShape(RoundedRectangleShape(95,70), 140, 255, wxPen(wxRED, 1), rRectBrush, "Rounded Rect")
|
||||||
|
|
||||||
bmp = wxBitmap('bitmaps/test2.bmp', wxBITMAP_TYPE_BMP)
|
bmp = images.getTest2Bitmap()
|
||||||
mask = wxMaskColour(bmp, wxBLUE)
|
mask = wxMaskColour(bmp, wxBLUE)
|
||||||
bmp.SetMask(mask)
|
bmp.SetMask(mask)
|
||||||
## s = LabeledBitmapShape(self, bmp, "Hello")
|
|
||||||
## self.MyAddShape(s, 225, 150, None, None, None)
|
|
||||||
## print s.Recompute()
|
|
||||||
## s.CalculateSize()
|
|
||||||
## print s.GetX(), s.GetY()
|
|
||||||
## s.SetSize(225)
|
|
||||||
## s.SetY(150)
|
|
||||||
## s.SetSize(80, 80)
|
|
||||||
## print s.GetX(), s.GetY()
|
|
||||||
## #print s.GetSize()
|
|
||||||
|
|
||||||
s = wxBitmapShape()
|
s = wxBitmapShape()
|
||||||
s.SetBitmap(bmp)
|
s.SetBitmap(bmp)
|
||||||
|
@@ -1,6 +1,8 @@
|
|||||||
|
|
||||||
from wxPython.wx import *
|
from wxPython.wx import *
|
||||||
|
|
||||||
|
import images
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
class MyCanvas(wxScrolledWindow):
|
class MyCanvas(wxScrolledWindow):
|
||||||
@@ -20,7 +22,7 @@ class MyCanvas(wxScrolledWindow):
|
|||||||
|
|
||||||
|
|
||||||
self.SetCursor(wxStockCursor(wxCURSOR_PENCIL))
|
self.SetCursor(wxStockCursor(wxCURSOR_PENCIL))
|
||||||
bmp = wxBitmap('bitmaps/test2.bmp', wxBITMAP_TYPE_BMP)
|
bmp = images.getTest2Bitmap()
|
||||||
mask = wxMaskColour(bmp, wxBLUE)
|
mask = wxMaskColour(bmp, wxBLUE)
|
||||||
bmp.SetMask(mask)
|
bmp.SetMask(mask)
|
||||||
self.bmp = bmp
|
self.bmp = bmp
|
||||||
|
@@ -2,6 +2,7 @@
|
|||||||
from wxPython.wx import *
|
from wxPython.wx import *
|
||||||
|
|
||||||
import string
|
import string
|
||||||
|
import images
|
||||||
|
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
|
|
||||||
@@ -13,13 +14,13 @@ class TestPanel(wxPanel):
|
|||||||
|
|
||||||
wxStaticText(self, -1, "This is a wxStaticBitmap.", wxPoint(45, 15))
|
wxStaticText(self, -1, "This is a wxStaticBitmap.", wxPoint(45, 15))
|
||||||
|
|
||||||
bmp = wxBitmap('bitmaps/test2.bmp', wxBITMAP_TYPE_BMP)
|
bmp = images.getTest2Bitmap()
|
||||||
mask = wxMaskColour(bmp, wxBLUE)
|
mask = wxMaskColour(bmp, wxBLUE)
|
||||||
bmp.SetMask(mask)
|
bmp.SetMask(mask)
|
||||||
wxStaticBitmap(self, -1, bmp, wxPoint(80, 50),
|
wxStaticBitmap(self, -1, bmp, wxPoint(80, 50),
|
||||||
wxSize(bmp.GetWidth(), bmp.GetHeight()))
|
wxSize(bmp.GetWidth(), bmp.GetHeight()))
|
||||||
|
|
||||||
bmp = wxBitmap('bitmaps/robin.jpg', wxBITMAP_TYPE_JPEG)
|
bmp = images.getRobinBitmap()
|
||||||
wxStaticBitmap(self, -1, bmp, (80, 150))
|
wxStaticBitmap(self, -1, bmp, (80, 150))
|
||||||
|
|
||||||
wxStaticText(self, -1, "Hey, if Ousterhout can do it, so can I.",
|
wxStaticText(self, -1, "Hey, if Ousterhout can do it, so can I.",
|
||||||
|
@@ -1,6 +1,8 @@
|
|||||||
|
|
||||||
from wxPython.wx import *
|
from wxPython.wx import *
|
||||||
|
|
||||||
|
import images
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
class TestToolBar(wxFrame):
|
class TestToolBar(wxFrame):
|
||||||
@@ -20,31 +22,30 @@ class TestToolBar(wxFrame):
|
|||||||
|
|
||||||
self.CreateStatusBar()
|
self.CreateStatusBar()
|
||||||
|
|
||||||
tb.AddSimpleTool(10, wxBitmap('bitmaps/new.bmp', wxBITMAP_TYPE_BMP),
|
tb.AddSimpleTool(10, images.getNewBitmap(), "New", "Long help for 'New'")
|
||||||
"New", "Long help for 'New'")
|
|
||||||
EVT_TOOL(self, 10, self.OnToolClick)
|
EVT_TOOL(self, 10, self.OnToolClick)
|
||||||
|
EVT_TOOL_RCLICKED(self, 10, self.OnToolRClick)
|
||||||
|
|
||||||
tb.AddSimpleTool(20, wxBitmap('bitmaps/open.bmp', wxBITMAP_TYPE_BMP),
|
tb.AddSimpleTool(20, images.getOpenBitmap(), "Open")
|
||||||
"Open", "Long help for 'Open'")
|
|
||||||
EVT_TOOL(self, 20, self.OnToolClick)
|
EVT_TOOL(self, 20, self.OnToolClick)
|
||||||
|
EVT_TOOL_RCLICKED(self, 20, self.OnToolRClick)
|
||||||
|
|
||||||
tb.AddSeparator()
|
tb.AddSeparator()
|
||||||
tb.AddSimpleTool(30, wxBitmap('bitmaps/copy.bmp', wxBITMAP_TYPE_BMP),
|
tb.AddSimpleTool(30, images.getCopyBitmap(), "Copy")
|
||||||
"Copy", "Long help for 'Copy'")
|
|
||||||
EVT_TOOL(self, 30, self.OnToolClick)
|
EVT_TOOL(self, 30, self.OnToolClick)
|
||||||
|
EVT_TOOL_RCLICKED(self, 30, self.OnToolRClick)
|
||||||
|
|
||||||
tb.AddSimpleTool(40, wxBitmap('bitmaps/paste.bmp', wxBITMAP_TYPE_BMP),
|
tb.AddSimpleTool(40, images.getPasteBitmap(), "Paste")
|
||||||
"Paste", "Long help for 'Paste'")
|
|
||||||
EVT_TOOL(self, 40, self.OnToolClick)
|
EVT_TOOL(self, 40, self.OnToolClick)
|
||||||
|
EVT_TOOL_RCLICKED(self, 40, self.OnToolRClick)
|
||||||
|
|
||||||
tb.AddSeparator()
|
tb.AddSeparator()
|
||||||
|
|
||||||
tool = tb.AddTool(50, wxBitmap('bitmaps/tog1.bmp', wxBITMAP_TYPE_BMP),
|
tool = tb.AddTool(50, images.getTog1Bitmap(),
|
||||||
shortHelpString="Toggle this", isToggle=true)
|
shortHelpString="Toggle this", isToggle=true)
|
||||||
EVT_TOOL(self, 50, self.OnToolClick)
|
EVT_TOOL(self, 50, self.OnToolClick)
|
||||||
|
|
||||||
tb.AddTool(60, wxBitmap('bitmaps/tog1.bmp', wxBITMAP_TYPE_BMP),
|
tb.AddTool(60, images.getTog1Bitmap(), images.getTog2Bitmap(),
|
||||||
wxBitmap('bitmaps/tog2.bmp', wxBITMAP_TYPE_BMP),
|
|
||||||
shortHelpString="Toggle with 2 bitmaps", isToggle=true)
|
shortHelpString="Toggle with 2 bitmaps", isToggle=true)
|
||||||
EVT_TOOL(self, 60, self.OnToolClick)
|
EVT_TOOL(self, 60, self.OnToolClick)
|
||||||
|
|
||||||
|
@@ -31,12 +31,13 @@ class TestTreeCtrlPanel(wxPanel):
|
|||||||
self.tree = MyTreeCtrl(self, tID, wxDefaultPosition, wxDefaultSize,
|
self.tree = MyTreeCtrl(self, tID, wxDefaultPosition, wxDefaultSize,
|
||||||
wxTR_HAS_BUTTONS | wxTR_EDIT_LABELS)# | wxTR_MULTIPLE)
|
wxTR_HAS_BUTTONS | wxTR_EDIT_LABELS)# | wxTR_MULTIPLE)
|
||||||
|
|
||||||
|
#import images
|
||||||
#il = wxImageList(16, 16)
|
#il = wxImageList(16, 16)
|
||||||
#idx1 = il.Add(wxBitmap('bitmaps/smiles.bmp', wxBITMAP_TYPE_BMP))
|
#idx1 = il.Add(images.getSmilesBitmap())
|
||||||
#idx2 = il.Add(wxBitmap('bitmaps/open.bmp', wxBITMAP_TYPE_BMP))
|
#idx2 = il.Add(images.getOpenBitmap())
|
||||||
#idx3 = il.Add(wxBitmap('bitmaps/new.bmp', wxBITMAP_TYPE_BMP))
|
#idx3 = il.Add(images.getNewBitmap())
|
||||||
#idx4 = il.Add(wxBitmap('bitmaps/copy.bmp', wxBITMAP_TYPE_BMP))
|
#idx4 = il.Add(images.getCopyBitmap())
|
||||||
#idx5 = il.Add(wxBitmap('bitmaps/paste.bmp', wxBITMAP_TYPE_BMP))
|
#idx5 = il.Add(images.getPasteBitmap())
|
||||||
|
|
||||||
#self.tree.SetImageList(il)
|
#self.tree.SetImageList(il)
|
||||||
#self.il = il
|
#self.il = il
|
||||||
|
@@ -105,18 +105,60 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// Declarations of some alternate "constructors"
|
||||||
%new wxBitmap* wxEmptyBitmap(int width, int height, int depth=-1);
|
%new wxBitmap* wxEmptyBitmap(int width, int height, int depth=-1);
|
||||||
|
%new wxBitmap* wxBitmapFromXPMData(PyObject* listOfStrings);
|
||||||
|
%new wxBitmap* wxBitmapFromIcon(const wxIcon& icon);
|
||||||
|
|
||||||
#ifdef __WXMSW__
|
#ifdef __WXMSW__
|
||||||
%new wxBitmap* wxBitmapFromData(PyObject* data, long type,
|
%new wxBitmap* wxBitmapFromData(PyObject* data, long type,
|
||||||
int width, int height, int depth = 1);
|
int width, int height, int depth = 1);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
%{ // Alternate 'constructor'
|
|
||||||
|
|
||||||
|
%{ // Implementations of some alternate "constructors"
|
||||||
|
|
||||||
wxBitmap* wxEmptyBitmap(int width, int height, int depth=-1) {
|
wxBitmap* wxEmptyBitmap(int width, int height, int depth=-1) {
|
||||||
return new wxBitmap(width, height, depth);
|
return new wxBitmap(width, height, depth);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static char** ConvertListOfStrings(PyObject* listOfStrings) {
|
||||||
|
char** cArray = NULL;
|
||||||
|
int count;
|
||||||
|
|
||||||
|
if (!PyList_Check(listOfStrings)) {
|
||||||
|
PyErr_SetString(PyExc_TypeError, "Expected a list of strings.");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
count = PyList_Size(listOfStrings);
|
||||||
|
cArray = new char*[count];
|
||||||
|
|
||||||
|
for(int x=0; x<count; x++) {
|
||||||
|
// TODO: Need some validation and error checking here
|
||||||
|
cArray[x] = PyString_AsString(PyList_GET_ITEM(listOfStrings, x));
|
||||||
|
}
|
||||||
|
return cArray;
|
||||||
|
}
|
||||||
|
|
||||||
|
wxBitmap* wxBitmapFromXPMData(PyObject* listOfStrings) {
|
||||||
|
char** cArray = NULL;
|
||||||
|
wxBitmap* bmp;
|
||||||
|
|
||||||
|
cArray = ConvertListOfStrings(listOfStrings);
|
||||||
|
if (! cArray)
|
||||||
|
return NULL;
|
||||||
|
bmp = new wxBitmap(cArray);
|
||||||
|
delete [] cArray;
|
||||||
|
return bmp;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
wxBitmap* wxBitmapFromIcon(const wxIcon& icon) {
|
||||||
|
return new wxBitmap(icon);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifdef __WXMSW__
|
#ifdef __WXMSW__
|
||||||
wxBitmap* wxBitmapFromData(PyObject* data, long type,
|
wxBitmap* wxBitmapFromData(PyObject* data, long type,
|
||||||
int width, int height, int depth = 1) {
|
int width, int height, int depth = 1) {
|
||||||
@@ -136,6 +178,8 @@ class wxMask {
|
|||||||
public:
|
public:
|
||||||
wxMask(const wxBitmap& bitmap);
|
wxMask(const wxBitmap& bitmap);
|
||||||
//~wxMask();
|
//~wxMask();
|
||||||
|
|
||||||
|
%addmethods { void Destroy() { delete self; } }
|
||||||
};
|
};
|
||||||
|
|
||||||
%new wxMask* wxMaskColour(const wxBitmap& bitmap, const wxColour& colour);
|
%new wxMask* wxMaskColour(const wxBitmap& bitmap, const wxColour& colour);
|
||||||
@@ -174,6 +218,8 @@ public:
|
|||||||
#ifdef __WXMSW__
|
#ifdef __WXMSW__
|
||||||
void SetSize(const wxSize& size);
|
void SetSize(const wxSize& size);
|
||||||
#endif
|
#endif
|
||||||
|
void CopyFromBitmap(const wxBitmap& bmp);
|
||||||
|
|
||||||
%pragma(python) addtoclass = "
|
%pragma(python) addtoclass = "
|
||||||
def __del__(self,gdic=gdic):
|
def __del__(self,gdic=gdic):
|
||||||
try:
|
try:
|
||||||
@@ -182,10 +228,31 @@ public:
|
|||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
"
|
"
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// Declarations of some alternate "constructors"
|
||||||
|
%new wxIcon* wxEmptyIcon();
|
||||||
|
%new wxIcon* wxIconFromXPMData(PyObject* listOfStrings);
|
||||||
|
|
||||||
|
%{ // Implementations of some alternate "constructors"
|
||||||
|
wxIcon* wxEmptyIcon() {
|
||||||
|
return new wxIcon();
|
||||||
|
}
|
||||||
|
|
||||||
|
wxIcon* wxIconFromXPMData(PyObject* listOfStrings) {
|
||||||
|
char** cArray = NULL;
|
||||||
|
wxIcon* icon;
|
||||||
|
|
||||||
|
cArray = ConvertListOfStrings(listOfStrings);
|
||||||
|
if (! cArray)
|
||||||
|
return NULL;
|
||||||
|
icon = new wxIcon(cArray);
|
||||||
|
delete [] cArray;
|
||||||
|
return icon;
|
||||||
|
}
|
||||||
|
%}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
class wxCursor
|
class wxCursor
|
||||||
|
@@ -106,7 +106,8 @@ public:
|
|||||||
unsigned char GetGreen( int x, int y );
|
unsigned char GetGreen( int x, int y );
|
||||||
unsigned char GetBlue( int x, int y );
|
unsigned char GetBlue( int x, int y );
|
||||||
|
|
||||||
bool LoadFile( const wxString& name, long type = wxBITMAP_TYPE_PNG );
|
static bool CanRead( const wxString& name );
|
||||||
|
bool LoadFile( const wxString& name, long type = wxBITMAP_TYPE_ANY );
|
||||||
%name(LoadMimeFile)bool LoadFile( const wxString& name, const wxString& mimetype );
|
%name(LoadMimeFile)bool LoadFile( const wxString& name, const wxString& mimetype );
|
||||||
|
|
||||||
bool SaveFile( const wxString& name, int type );
|
bool SaveFile( const wxString& name, int type );
|
||||||
@@ -163,6 +164,9 @@ public:
|
|||||||
unsigned long CountColours( unsigned long stopafter = (unsigned long) -1 );
|
unsigned long CountColours( unsigned long stopafter = (unsigned long) -1 );
|
||||||
// TODO: unsigned long ComputeHistogram( wxHashTable &h );
|
// TODO: unsigned long ComputeHistogram( wxHashTable &h );
|
||||||
|
|
||||||
|
static void AddHandler( wxImageHandler *handler );
|
||||||
|
static void InsertHandler( wxImageHandler *handler );
|
||||||
|
static bool RemoveHandler( const wxString& name );
|
||||||
};
|
};
|
||||||
|
|
||||||
// Alternate constructors
|
// Alternate constructors
|
||||||
@@ -188,13 +192,6 @@ public:
|
|||||||
}
|
}
|
||||||
%}
|
%}
|
||||||
|
|
||||||
// Static Methods
|
|
||||||
void wxImage_AddHandler(wxImageHandler *handler);
|
|
||||||
%{
|
|
||||||
void wxImage_AddHandler(wxImageHandler *handler) {
|
|
||||||
wxImage::AddHandler(handler);
|
|
||||||
}
|
|
||||||
%}
|
|
||||||
|
|
||||||
void wxInitAllImageHandlers();
|
void wxInitAllImageHandlers();
|
||||||
|
|
||||||
|
@@ -111,11 +111,48 @@ static PyObject* t_output_helper(PyObject* target, PyObject* o) {
|
|||||||
static char* wxStringErrorMsg = "string type is required for parameter";
|
static char* wxStringErrorMsg = "string type is required for parameter";
|
||||||
|
|
||||||
static wxString wxPyEmptyStr("");
|
static wxString wxPyEmptyStr("");
|
||||||
// Alternate 'constructor'
|
// Implementations of some alternate "constructors"
|
||||||
|
|
||||||
wxBitmap* wxEmptyBitmap(int width, int height, int depth=-1) {
|
wxBitmap* wxEmptyBitmap(int width, int height, int depth=-1) {
|
||||||
return new wxBitmap(width, height, depth);
|
return new wxBitmap(width, height, depth);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static char** ConvertListOfStrings(PyObject* listOfStrings) {
|
||||||
|
char** cArray = NULL;
|
||||||
|
int count;
|
||||||
|
|
||||||
|
if (!PyList_Check(listOfStrings)) {
|
||||||
|
PyErr_SetString(PyExc_TypeError, "Expected a list of strings.");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
count = PyList_Size(listOfStrings);
|
||||||
|
cArray = new char*[count];
|
||||||
|
|
||||||
|
for(int x=0; x<count; x++) {
|
||||||
|
// TODO: Need some validation and error checking here
|
||||||
|
cArray[x] = PyString_AsString(PyList_GET_ITEM(listOfStrings, x));
|
||||||
|
}
|
||||||
|
return cArray;
|
||||||
|
}
|
||||||
|
|
||||||
|
wxBitmap* wxBitmapFromXPMData(PyObject* listOfStrings) {
|
||||||
|
char** cArray = NULL;
|
||||||
|
wxBitmap* bmp;
|
||||||
|
|
||||||
|
cArray = ConvertListOfStrings(listOfStrings);
|
||||||
|
if (! cArray)
|
||||||
|
return NULL;
|
||||||
|
bmp = new wxBitmap(cArray);
|
||||||
|
delete [] cArray;
|
||||||
|
return bmp;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
wxBitmap* wxBitmapFromIcon(const wxIcon& icon) {
|
||||||
|
return new wxBitmap(icon);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifdef __WXMSW__
|
#ifdef __WXMSW__
|
||||||
wxBitmap* wxBitmapFromData(PyObject* data, long type,
|
wxBitmap* wxBitmapFromData(PyObject* data, long type,
|
||||||
int width, int height, int depth = 1) {
|
int width, int height, int depth = 1) {
|
||||||
@@ -130,6 +167,22 @@ static char* wxStringErrorMsg = "string type is required for parameter";
|
|||||||
|
|
||||||
wxMask* wxMaskColour(const wxBitmap& bitmap, const wxColour& colour) {
|
wxMask* wxMaskColour(const wxBitmap& bitmap, const wxColour& colour) {
|
||||||
return new wxMask(bitmap, colour);
|
return new wxMask(bitmap, colour);
|
||||||
|
}
|
||||||
|
// Implementations of some alternate "constructors"
|
||||||
|
wxIcon* wxEmptyIcon() {
|
||||||
|
return new wxIcon();
|
||||||
|
}
|
||||||
|
|
||||||
|
wxIcon* wxIconFromXPMData(PyObject* listOfStrings) {
|
||||||
|
char** cArray = NULL;
|
||||||
|
wxIcon* icon;
|
||||||
|
|
||||||
|
cArray = ConvertListOfStrings(listOfStrings);
|
||||||
|
if (! cArray)
|
||||||
|
return NULL;
|
||||||
|
icon = new wxIcon(cArray);
|
||||||
|
delete [] cArray;
|
||||||
|
return icon;
|
||||||
}
|
}
|
||||||
// Alternate 'constructor'
|
// Alternate 'constructor'
|
||||||
wxCursor* wxPyStockCursor(int id) {
|
wxCursor* wxPyStockCursor(int id) {
|
||||||
@@ -231,6 +284,68 @@ static PyObject *_wrap_wxEmptyBitmap(PyObject *self, PyObject *args, PyObject *k
|
|||||||
return _resultobj;
|
return _resultobj;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static PyObject *_wrap_wxBitmapFromXPMData(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
|
PyObject * _resultobj;
|
||||||
|
wxBitmap * _result;
|
||||||
|
PyObject * _arg0;
|
||||||
|
PyObject * _obj0 = 0;
|
||||||
|
char *_kwnames[] = { "listOfStrings", NULL };
|
||||||
|
char _ptemp[128];
|
||||||
|
|
||||||
|
self = self;
|
||||||
|
if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxBitmapFromXPMData",_kwnames,&_obj0))
|
||||||
|
return NULL;
|
||||||
|
{
|
||||||
|
_arg0 = _obj0;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
wxPy_BEGIN_ALLOW_THREADS;
|
||||||
|
_result = (wxBitmap *)wxBitmapFromXPMData(_arg0);
|
||||||
|
|
||||||
|
wxPy_END_ALLOW_THREADS;
|
||||||
|
} if (_result) {
|
||||||
|
SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
|
||||||
|
_resultobj = Py_BuildValue("s",_ptemp);
|
||||||
|
} else {
|
||||||
|
Py_INCREF(Py_None);
|
||||||
|
_resultobj = Py_None;
|
||||||
|
}
|
||||||
|
return _resultobj;
|
||||||
|
}
|
||||||
|
|
||||||
|
static PyObject *_wrap_wxBitmapFromIcon(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
|
PyObject * _resultobj;
|
||||||
|
wxBitmap * _result;
|
||||||
|
wxIcon * _arg0;
|
||||||
|
PyObject * _argo0 = 0;
|
||||||
|
char *_kwnames[] = { "icon", NULL };
|
||||||
|
char _ptemp[128];
|
||||||
|
|
||||||
|
self = self;
|
||||||
|
if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxBitmapFromIcon",_kwnames,&_argo0))
|
||||||
|
return NULL;
|
||||||
|
if (_argo0) {
|
||||||
|
if (_argo0 == Py_None) { _arg0 = NULL; }
|
||||||
|
else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxIcon_p")) {
|
||||||
|
PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxBitmapFromIcon. Expected _wxIcon_p.");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
{
|
||||||
|
wxPy_BEGIN_ALLOW_THREADS;
|
||||||
|
_result = (wxBitmap *)wxBitmapFromIcon(*_arg0);
|
||||||
|
|
||||||
|
wxPy_END_ALLOW_THREADS;
|
||||||
|
} if (_result) {
|
||||||
|
SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
|
||||||
|
_resultobj = Py_BuildValue("s",_ptemp);
|
||||||
|
} else {
|
||||||
|
Py_INCREF(Py_None);
|
||||||
|
_resultobj = Py_None;
|
||||||
|
}
|
||||||
|
return _resultobj;
|
||||||
|
}
|
||||||
|
|
||||||
static PyObject *_wrap_wxBitmapFromData(PyObject *self, PyObject *args, PyObject *kwargs) {
|
static PyObject *_wrap_wxBitmapFromData(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
PyObject * _resultobj;
|
PyObject * _resultobj;
|
||||||
wxBitmap * _result;
|
wxBitmap * _result;
|
||||||
@@ -305,6 +420,59 @@ static PyObject *_wrap_wxMaskColour(PyObject *self, PyObject *args, PyObject *kw
|
|||||||
return _resultobj;
|
return _resultobj;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static PyObject *_wrap_wxEmptyIcon(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
|
PyObject * _resultobj;
|
||||||
|
wxIcon * _result;
|
||||||
|
char *_kwnames[] = { NULL };
|
||||||
|
char _ptemp[128];
|
||||||
|
|
||||||
|
self = self;
|
||||||
|
if(!PyArg_ParseTupleAndKeywords(args,kwargs,":wxEmptyIcon",_kwnames))
|
||||||
|
return NULL;
|
||||||
|
{
|
||||||
|
wxPy_BEGIN_ALLOW_THREADS;
|
||||||
|
_result = (wxIcon *)wxEmptyIcon();
|
||||||
|
|
||||||
|
wxPy_END_ALLOW_THREADS;
|
||||||
|
} if (_result) {
|
||||||
|
SWIG_MakePtr(_ptemp, (char *) _result,"_wxIcon_p");
|
||||||
|
_resultobj = Py_BuildValue("s",_ptemp);
|
||||||
|
} else {
|
||||||
|
Py_INCREF(Py_None);
|
||||||
|
_resultobj = Py_None;
|
||||||
|
}
|
||||||
|
return _resultobj;
|
||||||
|
}
|
||||||
|
|
||||||
|
static PyObject *_wrap_wxIconFromXPMData(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
|
PyObject * _resultobj;
|
||||||
|
wxIcon * _result;
|
||||||
|
PyObject * _arg0;
|
||||||
|
PyObject * _obj0 = 0;
|
||||||
|
char *_kwnames[] = { "listOfStrings", NULL };
|
||||||
|
char _ptemp[128];
|
||||||
|
|
||||||
|
self = self;
|
||||||
|
if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxIconFromXPMData",_kwnames,&_obj0))
|
||||||
|
return NULL;
|
||||||
|
{
|
||||||
|
_arg0 = _obj0;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
wxPy_BEGIN_ALLOW_THREADS;
|
||||||
|
_result = (wxIcon *)wxIconFromXPMData(_arg0);
|
||||||
|
|
||||||
|
wxPy_END_ALLOW_THREADS;
|
||||||
|
} if (_result) {
|
||||||
|
SWIG_MakePtr(_ptemp, (char *) _result,"_wxIcon_p");
|
||||||
|
_resultobj = Py_BuildValue("s",_ptemp);
|
||||||
|
} else {
|
||||||
|
Py_INCREF(Py_None);
|
||||||
|
_resultobj = Py_None;
|
||||||
|
}
|
||||||
|
return _resultobj;
|
||||||
|
}
|
||||||
|
|
||||||
static PyObject *_wrap_wxStockCursor(PyObject *self, PyObject *args, PyObject *kwargs) {
|
static PyObject *_wrap_wxStockCursor(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
PyObject * _resultobj;
|
PyObject * _resultobj;
|
||||||
wxCursor * _result;
|
wxCursor * _result;
|
||||||
@@ -1946,6 +2114,33 @@ static PyObject *_wrap_new_wxMask(PyObject *self, PyObject *args, PyObject *kwar
|
|||||||
return _resultobj;
|
return _resultobj;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void wxMask_Destroy(wxMask *self) { delete self; }
|
||||||
|
static PyObject *_wrap_wxMask_Destroy(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
|
PyObject * _resultobj;
|
||||||
|
wxMask * _arg0;
|
||||||
|
PyObject * _argo0 = 0;
|
||||||
|
char *_kwnames[] = { "self", NULL };
|
||||||
|
|
||||||
|
self = self;
|
||||||
|
if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxMask_Destroy",_kwnames,&_argo0))
|
||||||
|
return NULL;
|
||||||
|
if (_argo0) {
|
||||||
|
if (_argo0 == Py_None) { _arg0 = NULL; }
|
||||||
|
else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxMask_p")) {
|
||||||
|
PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxMask_Destroy. Expected _wxMask_p.");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
{
|
||||||
|
wxPy_BEGIN_ALLOW_THREADS;
|
||||||
|
wxMask_Destroy(_arg0);
|
||||||
|
|
||||||
|
wxPy_END_ALLOW_THREADS;
|
||||||
|
} Py_INCREF(Py_None);
|
||||||
|
_resultobj = Py_None;
|
||||||
|
return _resultobj;
|
||||||
|
}
|
||||||
|
|
||||||
#define new_wxIcon(_swigarg0,_swigarg1,_swigarg2,_swigarg3) (new wxIcon(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
|
#define new_wxIcon(_swigarg0,_swigarg1,_swigarg2,_swigarg3) (new wxIcon(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
|
||||||
static PyObject *_wrap_new_wxIcon(PyObject *self, PyObject *args, PyObject *kwargs) {
|
static PyObject *_wrap_new_wxIcon(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
PyObject * _resultobj;
|
PyObject * _resultobj;
|
||||||
@@ -2359,6 +2554,42 @@ static PyObject *_wrap_wxIcon_SetSize(PyObject *self, PyObject *args, PyObject *
|
|||||||
return _resultobj;
|
return _resultobj;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#define wxIcon_CopyFromBitmap(_swigobj,_swigarg0) (_swigobj->CopyFromBitmap(_swigarg0))
|
||||||
|
static PyObject *_wrap_wxIcon_CopyFromBitmap(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
|
PyObject * _resultobj;
|
||||||
|
wxIcon * _arg0;
|
||||||
|
wxBitmap * _arg1;
|
||||||
|
PyObject * _argo0 = 0;
|
||||||
|
PyObject * _argo1 = 0;
|
||||||
|
char *_kwnames[] = { "self","bmp", NULL };
|
||||||
|
|
||||||
|
self = self;
|
||||||
|
if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxIcon_CopyFromBitmap",_kwnames,&_argo0,&_argo1))
|
||||||
|
return NULL;
|
||||||
|
if (_argo0) {
|
||||||
|
if (_argo0 == Py_None) { _arg0 = NULL; }
|
||||||
|
else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxIcon_p")) {
|
||||||
|
PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxIcon_CopyFromBitmap. Expected _wxIcon_p.");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (_argo1) {
|
||||||
|
if (_argo1 == Py_None) { _arg1 = NULL; }
|
||||||
|
else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxBitmap_p")) {
|
||||||
|
PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxIcon_CopyFromBitmap. Expected _wxBitmap_p.");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
{
|
||||||
|
wxPy_BEGIN_ALLOW_THREADS;
|
||||||
|
wxIcon_CopyFromBitmap(_arg0,*_arg1);
|
||||||
|
|
||||||
|
wxPy_END_ALLOW_THREADS;
|
||||||
|
} Py_INCREF(Py_None);
|
||||||
|
_resultobj = Py_None;
|
||||||
|
return _resultobj;
|
||||||
|
}
|
||||||
|
|
||||||
#define new_wxCursor(_swigarg0,_swigarg1,_swigarg2,_swigarg3) (new wxCursor(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
|
#define new_wxCursor(_swigarg0,_swigarg1,_swigarg2,_swigarg3) (new wxCursor(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
|
||||||
static PyObject *_wrap_new_wxCursor(PyObject *self, PyObject *args, PyObject *kwargs) {
|
static PyObject *_wrap_new_wxCursor(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
PyObject * _resultobj;
|
PyObject * _resultobj;
|
||||||
@@ -9033,6 +9264,7 @@ static PyMethodDef gdicMethods[] = {
|
|||||||
{ "wxCursor_GetHandle", (PyCFunction) _wrap_wxCursor_GetHandle, METH_VARARGS | METH_KEYWORDS },
|
{ "wxCursor_GetHandle", (PyCFunction) _wrap_wxCursor_GetHandle, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "delete_wxCursor", (PyCFunction) _wrap_delete_wxCursor, METH_VARARGS | METH_KEYWORDS },
|
{ "delete_wxCursor", (PyCFunction) _wrap_delete_wxCursor, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "new_wxCursor", (PyCFunction) _wrap_new_wxCursor, METH_VARARGS | METH_KEYWORDS },
|
{ "new_wxCursor", (PyCFunction) _wrap_new_wxCursor, METH_VARARGS | METH_KEYWORDS },
|
||||||
|
{ "wxIcon_CopyFromBitmap", (PyCFunction) _wrap_wxIcon_CopyFromBitmap, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxIcon_SetSize", (PyCFunction) _wrap_wxIcon_SetSize, METH_VARARGS | METH_KEYWORDS },
|
{ "wxIcon_SetSize", (PyCFunction) _wrap_wxIcon_SetSize, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxIcon_SetDepth", (PyCFunction) _wrap_wxIcon_SetDepth, METH_VARARGS | METH_KEYWORDS },
|
{ "wxIcon_SetDepth", (PyCFunction) _wrap_wxIcon_SetDepth, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxIcon_SetHeight", (PyCFunction) _wrap_wxIcon_SetHeight, METH_VARARGS | METH_KEYWORDS },
|
{ "wxIcon_SetHeight", (PyCFunction) _wrap_wxIcon_SetHeight, METH_VARARGS | METH_KEYWORDS },
|
||||||
@@ -9046,6 +9278,7 @@ static PyMethodDef gdicMethods[] = {
|
|||||||
{ "wxIcon_LoadFile", (PyCFunction) _wrap_wxIcon_LoadFile, METH_VARARGS | METH_KEYWORDS },
|
{ "wxIcon_LoadFile", (PyCFunction) _wrap_wxIcon_LoadFile, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "delete_wxIcon", (PyCFunction) _wrap_delete_wxIcon, METH_VARARGS | METH_KEYWORDS },
|
{ "delete_wxIcon", (PyCFunction) _wrap_delete_wxIcon, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "new_wxIcon", (PyCFunction) _wrap_new_wxIcon, METH_VARARGS | METH_KEYWORDS },
|
{ "new_wxIcon", (PyCFunction) _wrap_new_wxIcon, METH_VARARGS | METH_KEYWORDS },
|
||||||
|
{ "wxMask_Destroy", (PyCFunction) _wrap_wxMask_Destroy, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "new_wxMask", (PyCFunction) _wrap_new_wxMask, METH_VARARGS | METH_KEYWORDS },
|
{ "new_wxMask", (PyCFunction) _wrap_new_wxMask, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxBitmap_SetQuality", (PyCFunction) _wrap_wxBitmap_SetQuality, METH_VARARGS | METH_KEYWORDS },
|
{ "wxBitmap_SetQuality", (PyCFunction) _wrap_wxBitmap_SetQuality, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxBitmap_GetQuality", (PyCFunction) _wrap_wxBitmap_GetQuality, METH_VARARGS | METH_KEYWORDS },
|
{ "wxBitmap_GetQuality", (PyCFunction) _wrap_wxBitmap_GetQuality, METH_VARARGS | METH_KEYWORDS },
|
||||||
@@ -9075,8 +9308,12 @@ static PyMethodDef gdicMethods[] = {
|
|||||||
{ "wxFont_SetDefaultEncoding", (PyCFunction) _wrap_wxFont_SetDefaultEncoding, METH_VARARGS | METH_KEYWORDS },
|
{ "wxFont_SetDefaultEncoding", (PyCFunction) _wrap_wxFont_SetDefaultEncoding, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxFont_GetDefaultEncoding", (PyCFunction) _wrap_wxFont_GetDefaultEncoding, METH_VARARGS | METH_KEYWORDS },
|
{ "wxFont_GetDefaultEncoding", (PyCFunction) _wrap_wxFont_GetDefaultEncoding, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxStockCursor", (PyCFunction) _wrap_wxStockCursor, METH_VARARGS | METH_KEYWORDS },
|
{ "wxStockCursor", (PyCFunction) _wrap_wxStockCursor, METH_VARARGS | METH_KEYWORDS },
|
||||||
|
{ "wxIconFromXPMData", (PyCFunction) _wrap_wxIconFromXPMData, METH_VARARGS | METH_KEYWORDS },
|
||||||
|
{ "wxEmptyIcon", (PyCFunction) _wrap_wxEmptyIcon, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxMaskColour", (PyCFunction) _wrap_wxMaskColour, METH_VARARGS | METH_KEYWORDS },
|
{ "wxMaskColour", (PyCFunction) _wrap_wxMaskColour, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxBitmapFromData", (PyCFunction) _wrap_wxBitmapFromData, METH_VARARGS | METH_KEYWORDS },
|
{ "wxBitmapFromData", (PyCFunction) _wrap_wxBitmapFromData, METH_VARARGS | METH_KEYWORDS },
|
||||||
|
{ "wxBitmapFromIcon", (PyCFunction) _wrap_wxBitmapFromIcon, METH_VARARGS | METH_KEYWORDS },
|
||||||
|
{ "wxBitmapFromXPMData", (PyCFunction) _wrap_wxBitmapFromXPMData, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxEmptyBitmap", (PyCFunction) _wrap_wxEmptyBitmap, METH_VARARGS | METH_KEYWORDS },
|
{ "wxEmptyBitmap", (PyCFunction) _wrap_wxEmptyBitmap, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ NULL, NULL }
|
{ NULL, NULL }
|
||||||
};
|
};
|
||||||
|
@@ -97,6 +97,9 @@ class wxMaskPtr :
|
|||||||
def __init__(self,this):
|
def __init__(self,this):
|
||||||
self.this = this
|
self.this = this
|
||||||
self.thisown = 0
|
self.thisown = 0
|
||||||
|
def Destroy(self, *_args, **_kwargs):
|
||||||
|
val = apply(gdic.wxMask_Destroy,(self,) + _args, _kwargs)
|
||||||
|
return val
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return "<C wxMask instance at %s>" % (self.this,)
|
return "<C wxMask instance at %s>" % (self.this,)
|
||||||
class wxMask(wxMaskPtr):
|
class wxMask(wxMaskPtr):
|
||||||
@@ -147,6 +150,9 @@ class wxIconPtr :
|
|||||||
def SetSize(self, *_args, **_kwargs):
|
def SetSize(self, *_args, **_kwargs):
|
||||||
val = apply(gdic.wxIcon_SetSize,(self,) + _args, _kwargs)
|
val = apply(gdic.wxIcon_SetSize,(self,) + _args, _kwargs)
|
||||||
return val
|
return val
|
||||||
|
def CopyFromBitmap(self, *_args, **_kwargs):
|
||||||
|
val = apply(gdic.wxIcon_CopyFromBitmap,(self,) + _args, _kwargs)
|
||||||
|
return val
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return "<C wxIcon instance at %s>" % (self.this,)
|
return "<C wxIcon instance at %s>" % (self.this,)
|
||||||
|
|
||||||
@@ -976,6 +982,16 @@ def wxEmptyBitmap(*_args, **_kwargs):
|
|||||||
if val: val = wxBitmapPtr(val); val.thisown = 1
|
if val: val = wxBitmapPtr(val); val.thisown = 1
|
||||||
return val
|
return val
|
||||||
|
|
||||||
|
def wxBitmapFromXPMData(*_args, **_kwargs):
|
||||||
|
val = apply(gdic.wxBitmapFromXPMData,_args,_kwargs)
|
||||||
|
if val: val = wxBitmapPtr(val); val.thisown = 1
|
||||||
|
return val
|
||||||
|
|
||||||
|
def wxBitmapFromIcon(*_args, **_kwargs):
|
||||||
|
val = apply(gdic.wxBitmapFromIcon,_args,_kwargs)
|
||||||
|
if val: val = wxBitmapPtr(val); val.thisown = 1
|
||||||
|
return val
|
||||||
|
|
||||||
def wxBitmapFromData(*_args, **_kwargs):
|
def wxBitmapFromData(*_args, **_kwargs):
|
||||||
val = apply(gdic.wxBitmapFromData,_args,_kwargs)
|
val = apply(gdic.wxBitmapFromData,_args,_kwargs)
|
||||||
if val: val = wxBitmapPtr(val); val.thisown = 1
|
if val: val = wxBitmapPtr(val); val.thisown = 1
|
||||||
@@ -986,6 +1002,16 @@ def wxMaskColour(*_args, **_kwargs):
|
|||||||
if val: val = wxMaskPtr(val); val.thisown = 1
|
if val: val = wxMaskPtr(val); val.thisown = 1
|
||||||
return val
|
return val
|
||||||
|
|
||||||
|
def wxEmptyIcon(*_args, **_kwargs):
|
||||||
|
val = apply(gdic.wxEmptyIcon,_args,_kwargs)
|
||||||
|
if val: val = wxIconPtr(val); val.thisown = 1
|
||||||
|
return val
|
||||||
|
|
||||||
|
def wxIconFromXPMData(*_args, **_kwargs):
|
||||||
|
val = apply(gdic.wxIconFromXPMData,_args,_kwargs)
|
||||||
|
if val: val = wxIconPtr(val); val.thisown = 1
|
||||||
|
return val
|
||||||
|
|
||||||
def wxStockCursor(*_args, **_kwargs):
|
def wxStockCursor(*_args, **_kwargs):
|
||||||
val = apply(gdic.wxStockCursor,_args,_kwargs)
|
val = apply(gdic.wxStockCursor,_args,_kwargs)
|
||||||
if val: val = wxCursorPtr(val); val.thisown = 1
|
if val: val = wxCursorPtr(val); val.thisown = 1
|
||||||
|
@@ -121,10 +121,6 @@ static char* wxStringErrorMsg = "string type is required for parameter";
|
|||||||
wxImage* wxImageFromBitmap(const wxBitmap &bitmap) {
|
wxImage* wxImageFromBitmap(const wxBitmap &bitmap) {
|
||||||
return new wxImage(bitmap);
|
return new wxImage(bitmap);
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxImage_AddHandler(wxImageHandler *handler) {
|
|
||||||
wxImage::AddHandler(handler);
|
|
||||||
}
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
@@ -283,32 +279,6 @@ static PyObject *_wrap_wxImageFromBitmap(PyObject *self, PyObject *args, PyObjec
|
|||||||
return _resultobj;
|
return _resultobj;
|
||||||
}
|
}
|
||||||
|
|
||||||
static PyObject *_wrap_wxImage_AddHandler(PyObject *self, PyObject *args, PyObject *kwargs) {
|
|
||||||
PyObject * _resultobj;
|
|
||||||
wxImageHandler * _arg0;
|
|
||||||
PyObject * _argo0 = 0;
|
|
||||||
char *_kwnames[] = { "handler", NULL };
|
|
||||||
|
|
||||||
self = self;
|
|
||||||
if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxImage_AddHandler",_kwnames,&_argo0))
|
|
||||||
return NULL;
|
|
||||||
if (_argo0) {
|
|
||||||
if (_argo0 == Py_None) { _arg0 = NULL; }
|
|
||||||
else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxImageHandler_p")) {
|
|
||||||
PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_AddHandler. Expected _wxImageHandler_p.");
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
{
|
|
||||||
wxPy_BEGIN_ALLOW_THREADS;
|
|
||||||
wxImage_AddHandler(_arg0);
|
|
||||||
|
|
||||||
wxPy_END_ALLOW_THREADS;
|
|
||||||
} Py_INCREF(Py_None);
|
|
||||||
_resultobj = Py_None;
|
|
||||||
return _resultobj;
|
|
||||||
}
|
|
||||||
|
|
||||||
static PyObject *_wrap_wxInitAllImageHandlers(PyObject *self, PyObject *args, PyObject *kwargs) {
|
static PyObject *_wrap_wxInitAllImageHandlers(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
PyObject * _resultobj;
|
PyObject * _resultobj;
|
||||||
char *_kwnames[] = { NULL };
|
char *_kwnames[] = { NULL };
|
||||||
@@ -1210,13 +1180,54 @@ static PyObject *_wrap_wxImage_GetBlue(PyObject *self, PyObject *args, PyObject
|
|||||||
return _resultobj;
|
return _resultobj;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static PyObject *_wrap_wxImage_CanRead(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
|
PyObject * _resultobj;
|
||||||
|
bool _result;
|
||||||
|
wxString * _arg0;
|
||||||
|
PyObject * _obj0 = 0;
|
||||||
|
char *_kwnames[] = { "name", NULL };
|
||||||
|
|
||||||
|
self = self;
|
||||||
|
if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxImage_CanRead",_kwnames,&_obj0))
|
||||||
|
return NULL;
|
||||||
|
{
|
||||||
|
#if PYTHON_API_VERSION >= 1009
|
||||||
|
char* tmpPtr; int tmpSize;
|
||||||
|
if (!PyString_Check(_obj0) && !PyUnicode_Check(_obj0)) {
|
||||||
|
PyErr_SetString(PyExc_TypeError, "String or Unicode type required");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
if (PyString_AsStringAndSize(_obj0, &tmpPtr, &tmpSize) == -1)
|
||||||
|
return NULL;
|
||||||
|
_arg0 = new wxString(tmpPtr, tmpSize);
|
||||||
|
#else
|
||||||
|
if (!PyString_Check(_obj0)) {
|
||||||
|
PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
_arg0 = new wxString(PyString_AS_STRING(_obj0), PyString_GET_SIZE(_obj0));
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
{
|
||||||
|
wxPy_BEGIN_ALLOW_THREADS;
|
||||||
|
_result = (bool )wxImage::CanRead(*_arg0);
|
||||||
|
|
||||||
|
wxPy_END_ALLOW_THREADS;
|
||||||
|
} _resultobj = Py_BuildValue("i",_result);
|
||||||
|
{
|
||||||
|
if (_obj0)
|
||||||
|
delete _arg0;
|
||||||
|
}
|
||||||
|
return _resultobj;
|
||||||
|
}
|
||||||
|
|
||||||
#define wxImage_LoadFile(_swigobj,_swigarg0,_swigarg1) (_swigobj->LoadFile(_swigarg0,_swigarg1))
|
#define wxImage_LoadFile(_swigobj,_swigarg0,_swigarg1) (_swigobj->LoadFile(_swigarg0,_swigarg1))
|
||||||
static PyObject *_wrap_wxImage_LoadFile(PyObject *self, PyObject *args, PyObject *kwargs) {
|
static PyObject *_wrap_wxImage_LoadFile(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
PyObject * _resultobj;
|
PyObject * _resultobj;
|
||||||
bool _result;
|
bool _result;
|
||||||
wxImage * _arg0;
|
wxImage * _arg0;
|
||||||
wxString * _arg1;
|
wxString * _arg1;
|
||||||
long _arg2 = (long ) wxBITMAP_TYPE_PNG;
|
long _arg2 = (long ) wxBITMAP_TYPE_ANY;
|
||||||
PyObject * _argo0 = 0;
|
PyObject * _argo0 = 0;
|
||||||
PyObject * _obj1 = 0;
|
PyObject * _obj1 = 0;
|
||||||
char *_kwnames[] = { "self","name","type", NULL };
|
char *_kwnames[] = { "self","name","type", NULL };
|
||||||
@@ -2069,7 +2080,103 @@ static PyObject *_wrap_wxImage_CountColours(PyObject *self, PyObject *args, PyOb
|
|||||||
return _resultobj;
|
return _resultobj;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static PyObject *_wrap_wxImage_AddHandler(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
|
PyObject * _resultobj;
|
||||||
|
wxImageHandler * _arg0;
|
||||||
|
PyObject * _argo0 = 0;
|
||||||
|
char *_kwnames[] = { "handler", NULL };
|
||||||
|
|
||||||
|
self = self;
|
||||||
|
if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxImage_AddHandler",_kwnames,&_argo0))
|
||||||
|
return NULL;
|
||||||
|
if (_argo0) {
|
||||||
|
if (_argo0 == Py_None) { _arg0 = NULL; }
|
||||||
|
else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxImageHandler_p")) {
|
||||||
|
PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_AddHandler. Expected _wxImageHandler_p.");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
{
|
||||||
|
wxPy_BEGIN_ALLOW_THREADS;
|
||||||
|
wxImage::AddHandler(_arg0);
|
||||||
|
|
||||||
|
wxPy_END_ALLOW_THREADS;
|
||||||
|
} Py_INCREF(Py_None);
|
||||||
|
_resultobj = Py_None;
|
||||||
|
return _resultobj;
|
||||||
|
}
|
||||||
|
|
||||||
|
static PyObject *_wrap_wxImage_InsertHandler(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
|
PyObject * _resultobj;
|
||||||
|
wxImageHandler * _arg0;
|
||||||
|
PyObject * _argo0 = 0;
|
||||||
|
char *_kwnames[] = { "handler", NULL };
|
||||||
|
|
||||||
|
self = self;
|
||||||
|
if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxImage_InsertHandler",_kwnames,&_argo0))
|
||||||
|
return NULL;
|
||||||
|
if (_argo0) {
|
||||||
|
if (_argo0 == Py_None) { _arg0 = NULL; }
|
||||||
|
else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxImageHandler_p")) {
|
||||||
|
PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxImage_InsertHandler. Expected _wxImageHandler_p.");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
{
|
||||||
|
wxPy_BEGIN_ALLOW_THREADS;
|
||||||
|
wxImage::InsertHandler(_arg0);
|
||||||
|
|
||||||
|
wxPy_END_ALLOW_THREADS;
|
||||||
|
} Py_INCREF(Py_None);
|
||||||
|
_resultobj = Py_None;
|
||||||
|
return _resultobj;
|
||||||
|
}
|
||||||
|
|
||||||
|
static PyObject *_wrap_wxImage_RemoveHandler(PyObject *self, PyObject *args, PyObject *kwargs) {
|
||||||
|
PyObject * _resultobj;
|
||||||
|
bool _result;
|
||||||
|
wxString * _arg0;
|
||||||
|
PyObject * _obj0 = 0;
|
||||||
|
char *_kwnames[] = { "name", NULL };
|
||||||
|
|
||||||
|
self = self;
|
||||||
|
if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxImage_RemoveHandler",_kwnames,&_obj0))
|
||||||
|
return NULL;
|
||||||
|
{
|
||||||
|
#if PYTHON_API_VERSION >= 1009
|
||||||
|
char* tmpPtr; int tmpSize;
|
||||||
|
if (!PyString_Check(_obj0) && !PyUnicode_Check(_obj0)) {
|
||||||
|
PyErr_SetString(PyExc_TypeError, "String or Unicode type required");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
if (PyString_AsStringAndSize(_obj0, &tmpPtr, &tmpSize) == -1)
|
||||||
|
return NULL;
|
||||||
|
_arg0 = new wxString(tmpPtr, tmpSize);
|
||||||
|
#else
|
||||||
|
if (!PyString_Check(_obj0)) {
|
||||||
|
PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
_arg0 = new wxString(PyString_AS_STRING(_obj0), PyString_GET_SIZE(_obj0));
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
{
|
||||||
|
wxPy_BEGIN_ALLOW_THREADS;
|
||||||
|
_result = (bool )wxImage::RemoveHandler(*_arg0);
|
||||||
|
|
||||||
|
wxPy_END_ALLOW_THREADS;
|
||||||
|
} _resultobj = Py_BuildValue("i",_result);
|
||||||
|
{
|
||||||
|
if (_obj0)
|
||||||
|
delete _arg0;
|
||||||
|
}
|
||||||
|
return _resultobj;
|
||||||
|
}
|
||||||
|
|
||||||
static PyMethodDef imagecMethods[] = {
|
static PyMethodDef imagecMethods[] = {
|
||||||
|
{ "wxImage_RemoveHandler", (PyCFunction) _wrap_wxImage_RemoveHandler, METH_VARARGS | METH_KEYWORDS },
|
||||||
|
{ "wxImage_InsertHandler", (PyCFunction) _wrap_wxImage_InsertHandler, METH_VARARGS | METH_KEYWORDS },
|
||||||
|
{ "wxImage_AddHandler", (PyCFunction) _wrap_wxImage_AddHandler, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxImage_CountColours", (PyCFunction) _wrap_wxImage_CountColours, METH_VARARGS | METH_KEYWORDS },
|
{ "wxImage_CountColours", (PyCFunction) _wrap_wxImage_CountColours, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxImage_Replace", (PyCFunction) _wrap_wxImage_Replace, METH_VARARGS | METH_KEYWORDS },
|
{ "wxImage_Replace", (PyCFunction) _wrap_wxImage_Replace, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxImage_Mirror", (PyCFunction) _wrap_wxImage_Mirror, METH_VARARGS | METH_KEYWORDS },
|
{ "wxImage_Mirror", (PyCFunction) _wrap_wxImage_Mirror, METH_VARARGS | METH_KEYWORDS },
|
||||||
@@ -2093,6 +2200,7 @@ static PyMethodDef imagecMethods[] = {
|
|||||||
{ "wxImage_SaveFile", (PyCFunction) _wrap_wxImage_SaveFile, METH_VARARGS | METH_KEYWORDS },
|
{ "wxImage_SaveFile", (PyCFunction) _wrap_wxImage_SaveFile, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxImage_LoadMimeFile", (PyCFunction) _wrap_wxImage_LoadMimeFile, METH_VARARGS | METH_KEYWORDS },
|
{ "wxImage_LoadMimeFile", (PyCFunction) _wrap_wxImage_LoadMimeFile, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxImage_LoadFile", (PyCFunction) _wrap_wxImage_LoadFile, METH_VARARGS | METH_KEYWORDS },
|
{ "wxImage_LoadFile", (PyCFunction) _wrap_wxImage_LoadFile, METH_VARARGS | METH_KEYWORDS },
|
||||||
|
{ "wxImage_CanRead", (PyCFunction) _wrap_wxImage_CanRead, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxImage_GetBlue", (PyCFunction) _wrap_wxImage_GetBlue, METH_VARARGS | METH_KEYWORDS },
|
{ "wxImage_GetBlue", (PyCFunction) _wrap_wxImage_GetBlue, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxImage_GetGreen", (PyCFunction) _wrap_wxImage_GetGreen, METH_VARARGS | METH_KEYWORDS },
|
{ "wxImage_GetGreen", (PyCFunction) _wrap_wxImage_GetGreen, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxImage_GetRed", (PyCFunction) _wrap_wxImage_GetRed, METH_VARARGS | METH_KEYWORDS },
|
{ "wxImage_GetRed", (PyCFunction) _wrap_wxImage_GetRed, METH_VARARGS | METH_KEYWORDS },
|
||||||
@@ -2120,7 +2228,6 @@ static PyMethodDef imagecMethods[] = {
|
|||||||
{ "wxImageHandler_GetExtension", (PyCFunction) _wrap_wxImageHandler_GetExtension, METH_VARARGS | METH_KEYWORDS },
|
{ "wxImageHandler_GetExtension", (PyCFunction) _wrap_wxImageHandler_GetExtension, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxImageHandler_GetName", (PyCFunction) _wrap_wxImageHandler_GetName, METH_VARARGS | METH_KEYWORDS },
|
{ "wxImageHandler_GetName", (PyCFunction) _wrap_wxImageHandler_GetName, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxInitAllImageHandlers", (PyCFunction) _wrap_wxInitAllImageHandlers, METH_VARARGS | METH_KEYWORDS },
|
{ "wxInitAllImageHandlers", (PyCFunction) _wrap_wxInitAllImageHandlers, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxImage_AddHandler", (PyCFunction) _wrap_wxImage_AddHandler, METH_VARARGS | METH_KEYWORDS },
|
|
||||||
{ "wxImageFromBitmap", (PyCFunction) _wrap_wxImageFromBitmap, METH_VARARGS | METH_KEYWORDS },
|
{ "wxImageFromBitmap", (PyCFunction) _wrap_wxImageFromBitmap, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxImageFromMime", (PyCFunction) _wrap_wxImageFromMime, METH_VARARGS | METH_KEYWORDS },
|
{ "wxImageFromMime", (PyCFunction) _wrap_wxImageFromMime, METH_VARARGS | METH_KEYWORDS },
|
||||||
{ "wxEmptyImage", (PyCFunction) _wrap_wxEmptyImage, METH_VARARGS | METH_KEYWORDS },
|
{ "wxEmptyImage", (PyCFunction) _wrap_wxEmptyImage, METH_VARARGS | METH_KEYWORDS },
|
||||||
|
@@ -284,9 +284,15 @@ def wxImageFromBitmap(*_args, **_kwargs):
|
|||||||
if val: val = wxImagePtr(val); val.thisown = 1
|
if val: val = wxImagePtr(val); val.thisown = 1
|
||||||
return val
|
return val
|
||||||
|
|
||||||
|
wxInitAllImageHandlers = imagec.wxInitAllImageHandlers
|
||||||
|
|
||||||
|
wxImage_CanRead = imagec.wxImage_CanRead
|
||||||
|
|
||||||
wxImage_AddHandler = imagec.wxImage_AddHandler
|
wxImage_AddHandler = imagec.wxImage_AddHandler
|
||||||
|
|
||||||
wxInitAllImageHandlers = imagec.wxInitAllImageHandlers
|
wxImage_InsertHandler = imagec.wxImage_InsertHandler
|
||||||
|
|
||||||
|
wxImage_RemoveHandler = imagec.wxImage_RemoveHandler
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
178
wxPython/tools/img2py.py
Normal file
@@ -0,0 +1,178 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
"""
|
||||||
|
img2py.py -- Convert an image to XPM format and embed it in a Python
|
||||||
|
module with appropriate code so it can be loaded into
|
||||||
|
a program at runtime. The benefit is that since it is
|
||||||
|
Python source code it can be delivered as a .pyc or
|
||||||
|
'compiled' into the program using freeze, py2exe, etc.
|
||||||
|
|
||||||
|
Usage:
|
||||||
|
|
||||||
|
img2py.py [options] image_file python_file
|
||||||
|
|
||||||
|
Options:
|
||||||
|
|
||||||
|
-m <#rrggbb> If the original image has a mask or transparency defined
|
||||||
|
it will be used by default. You can use this option to
|
||||||
|
override the default or provide a new mask by specifying
|
||||||
|
a colour in the image to mark as transparent.
|
||||||
|
|
||||||
|
-n <name> Normally generic names (getBitmap, etc.) are used for the
|
||||||
|
image access functions. If you use this option you can
|
||||||
|
specify a name that should be used to customize the access
|
||||||
|
fucntions, (getNameBitmap, etc.)
|
||||||
|
|
||||||
|
-a This flag specifies that the python_file should be appended
|
||||||
|
to instead of overwritten. This in combination with -n will
|
||||||
|
allow you to put multiple images in one Python source file.
|
||||||
|
|
||||||
|
-u Don't use compression. Leaves the data uncompressed.
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
import sys, os, glob, getopt, tempfile
|
||||||
|
import cPickle, cStringIO, zlib
|
||||||
|
import img2xpm
|
||||||
|
|
||||||
|
|
||||||
|
def crunch_data(data, compressed):
|
||||||
|
# convert the lines to a Python list, pickle it and compress the result.
|
||||||
|
lines = []
|
||||||
|
for line in data[2:]: # skip the first two lines
|
||||||
|
lines.append(line[1:-3]) # chop one char from the front and three from the end
|
||||||
|
|
||||||
|
# chop one extra char from the last line
|
||||||
|
lines[-1] = lines[-1][:-1]
|
||||||
|
|
||||||
|
# pickle, crunch and convert it to a form suitable for embedding in code
|
||||||
|
data = cPickle.dumps(lines)
|
||||||
|
if compressed:
|
||||||
|
data = zlib.compress(data, 9)
|
||||||
|
data = repr(data)
|
||||||
|
|
||||||
|
|
||||||
|
# This next bit is borrowed from PIL. It is used to wrap the text intelligently.
|
||||||
|
fp = cStringIO.StringIO()
|
||||||
|
data = data + " " # buffer for the +1 test
|
||||||
|
c = i = 0
|
||||||
|
word = ""
|
||||||
|
octdigits = "01234567"
|
||||||
|
while i < len(data):
|
||||||
|
if data[i] != "\\":
|
||||||
|
word = data[i]
|
||||||
|
i = i + 1
|
||||||
|
else:
|
||||||
|
if data[i+1] in octdigits:
|
||||||
|
for n in range(2, 5):
|
||||||
|
if data[i+n] not in octdigits:
|
||||||
|
break
|
||||||
|
word = data[i:i+n]
|
||||||
|
i = i + n
|
||||||
|
else:
|
||||||
|
word = data[i:i+2]
|
||||||
|
i = i + 2
|
||||||
|
l = len(word)
|
||||||
|
if c + l >= 78-1:
|
||||||
|
fp.write("\\\n")
|
||||||
|
c = 0
|
||||||
|
fp.write(word)
|
||||||
|
c = c + l
|
||||||
|
|
||||||
|
# return the formatted compressed data
|
||||||
|
return fp.getvalue()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def main(args):
|
||||||
|
if not args or ("-h" in args):
|
||||||
|
print __doc__
|
||||||
|
return
|
||||||
|
|
||||||
|
append = 0
|
||||||
|
compressed = 1
|
||||||
|
maskClr = None
|
||||||
|
imgName = ""
|
||||||
|
|
||||||
|
try:
|
||||||
|
opts, fileArgs = getopt.getopt(args, "aun:m:")
|
||||||
|
except getopt.GetoptError:
|
||||||
|
print __doc__
|
||||||
|
return
|
||||||
|
|
||||||
|
for opt, val in opts:
|
||||||
|
if opt == "-a":
|
||||||
|
append = 1
|
||||||
|
elif opt == "-u":
|
||||||
|
compressed = 0
|
||||||
|
elif opt == "-n":
|
||||||
|
imgName = val
|
||||||
|
elif opt == "-m":
|
||||||
|
maskClr = val
|
||||||
|
|
||||||
|
if len(fileArgs) != 2:
|
||||||
|
print __doc__
|
||||||
|
return
|
||||||
|
|
||||||
|
image_file, python_file = fileArgs
|
||||||
|
|
||||||
|
# convert the image file to a temporary file
|
||||||
|
tfname = tempfile.mktemp()
|
||||||
|
ok, msg = img2xpm.convert(image_file, maskClr, None, tfname)
|
||||||
|
if not ok:
|
||||||
|
print msg
|
||||||
|
return
|
||||||
|
|
||||||
|
data = open(tfname, "r").readlines()
|
||||||
|
data = crunch_data(data, compressed)
|
||||||
|
os.unlink(tfname)
|
||||||
|
|
||||||
|
if append:
|
||||||
|
out = open(python_file, "a")
|
||||||
|
else:
|
||||||
|
out = open(python_file, "w")
|
||||||
|
|
||||||
|
out.write("#" + "-" * 70 + "\n")
|
||||||
|
if not append:
|
||||||
|
out.write("# This file was generated by %s\n#\n" % sys.argv[0])
|
||||||
|
out.write("from wxPython.wx import wxBitmapFromXPMData, wxImageFromBitmap\n")
|
||||||
|
if compressed:
|
||||||
|
out.write("import cPickle, zlib\n\n\n")
|
||||||
|
else:
|
||||||
|
out.write("import cPickle\n\n\n")
|
||||||
|
|
||||||
|
if compressed:
|
||||||
|
out.write("def get%sData():\n"
|
||||||
|
" return cPickle.loads(zlib.decompress(\n%s))\n\n"
|
||||||
|
% (imgName, data))
|
||||||
|
else:
|
||||||
|
out.write("def get%sData():\n"
|
||||||
|
" return cPickle.loads(\n%s)\n\n"
|
||||||
|
% (imgName, data))
|
||||||
|
|
||||||
|
|
||||||
|
out.write("def get%sBitmap():\n"
|
||||||
|
" return wxBitmapFromXPMData(get%sData())\n\n"
|
||||||
|
"def get%sImage():\n"
|
||||||
|
" return wxImageFromBitmap(get%sBitmap())\n\n"
|
||||||
|
% tuple([imgName] * 4))
|
||||||
|
|
||||||
|
if imgName:
|
||||||
|
n_msg = ' using "%s"' % imgName
|
||||||
|
else:
|
||||||
|
n_msg = ""
|
||||||
|
if maskClr:
|
||||||
|
m_msg = " with mask %s" % maskClr
|
||||||
|
else:
|
||||||
|
m_msg = ""
|
||||||
|
print "Embedded %s%s into %s%s" % (image_file, n_msg, python_file, m_msg)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main(sys.argv[1:])
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
96
wxPython/tools/img2xpm.py
Normal file
@@ -0,0 +1,96 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
"""
|
||||||
|
img2xpm.py -- convert several image formats to XPM
|
||||||
|
|
||||||
|
Usage:
|
||||||
|
|
||||||
|
img2xpm.py [options] image_files...
|
||||||
|
|
||||||
|
Options:
|
||||||
|
|
||||||
|
-o <dir> The directory to place the .xmp file(s), defaults to
|
||||||
|
the current directory.
|
||||||
|
|
||||||
|
-m <#rrggbb> If the original image has a mask or transparency defined
|
||||||
|
it will be used by default. You can use this option to
|
||||||
|
override the default or provide a new mask by specifying
|
||||||
|
a colour in the image to mark as transparent.
|
||||||
|
|
||||||
|
-n <name> A filename to write the .xpm data to. Defaults to the
|
||||||
|
basename of the image file + '.xpm' This option overrides
|
||||||
|
the -o option.
|
||||||
|
"""
|
||||||
|
|
||||||
|
|
||||||
|
import sys, os, glob, getopt, string
|
||||||
|
from wxPython.wx import *
|
||||||
|
wxInitAllImageHandlers()
|
||||||
|
|
||||||
|
|
||||||
|
def convert(file, maskClr, outputDir, outputName):
|
||||||
|
if string.lower(os.path.splitext(file)[1]) == ".ico":
|
||||||
|
icon = wxIcon(file, wxBITMAP_TYPE_ICO)
|
||||||
|
img = wxBitmapFromIcon(icon)
|
||||||
|
else:
|
||||||
|
img = wxBitmap(file, wxBITMAP_TYPE_ANY)
|
||||||
|
|
||||||
|
if not img.Ok():
|
||||||
|
return 0, file + " failed to load!"
|
||||||
|
else:
|
||||||
|
if maskClr:
|
||||||
|
om = img.GetMask()
|
||||||
|
mask = wxMaskColour(img, maskClr)
|
||||||
|
img.SetMask(mask)
|
||||||
|
if om is not None:
|
||||||
|
om.Destroy()
|
||||||
|
if outputName:
|
||||||
|
newname = outputName
|
||||||
|
else:
|
||||||
|
newname = os.path.join(outputDir, os.path.basename(os.path.splitext(file)[0]) + ".xpm")
|
||||||
|
if img.SaveFile(newname, wxBITMAP_TYPE_XPM):
|
||||||
|
return 1, file + " converted to " + newname
|
||||||
|
else:
|
||||||
|
return 0, file + " failed to save!"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def main(args):
|
||||||
|
if not args or ("-h" in args):
|
||||||
|
print __doc__
|
||||||
|
return
|
||||||
|
|
||||||
|
outputDir = ""
|
||||||
|
maskClr = None
|
||||||
|
outputName = None
|
||||||
|
|
||||||
|
try:
|
||||||
|
opts, fileArgs = getopt.getopt(args, "m:n:o:")
|
||||||
|
except getopt.GetoptError:
|
||||||
|
print __doc__
|
||||||
|
return
|
||||||
|
|
||||||
|
for opt, val in opts:
|
||||||
|
if opt == "-m":
|
||||||
|
maskClr = val
|
||||||
|
elif opt == "-n":
|
||||||
|
outputName = val
|
||||||
|
elif opt == "-o":
|
||||||
|
outputDir = val
|
||||||
|
|
||||||
|
if not fileArgs:
|
||||||
|
print __doc__
|
||||||
|
return
|
||||||
|
|
||||||
|
for arg in fileArgs:
|
||||||
|
for file in glob.glob(arg):
|
||||||
|
if not os.path.isfile(file):
|
||||||
|
continue
|
||||||
|
ok, msg = convert(file, maskClr, outputDir, outputName)
|
||||||
|
print msg
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main(sys.argv[1:])
|
||||||
|
|
||||||
|
|