ToasterBox is a cross-platform widget to make the creation of MSN style “toaster” popups easier.
ToasterBox is a cross-platform widget to make the creation of MSN style “toaster” popups easier. The syntax is really easy especially if you are familiar with the syntax of wxPython.
It has 2 main styles:
Both styles support the setting of ToasterBox position (on screen coordinates), size, the time after which the ToasterBox is destroyed (linger), and the scroll speed of ToasterBox.
Usage example:
import wx
import wx.lib.agw.toasterbox as TB
class MyFrame(wx.Frame):
def __init__(self, parent):
wx.Frame.__init__(self, parent, -1, "ToasterBox Demo")
toaster = TB.ToasterBox(self, tbstyle=TB.TB_COMPLEX)
toaster.SetPopupPauseTime(3000)
tbpanel = toaster.GetToasterBoxWindow()
panel = wx.Panel(tbpanel, -1)
sizer = wx.BoxSizer(wx.VERTICAL)
button = wx.Button(panel, wx.ID_ANY, "Simple button")
sizer.Add(button, 0, wx.EXPAND)
panel.SetSizer(sizer)
toaster.AddPanel(panel)
wx.CallLater(1000, toaster.Play)
# our normal wxApp-derived class, as usual
app = wx.App(0)
frame = MyFrame(None)
app.SetTopWindow(frame)
frame.Show()
app.MainLoop()
ToasterBox has been tested on the following platforms:
This class supports the following window styles:
Window Styles | Hex Value | Description |
---|---|---|
TB_SIMPLE | 0x1 | A simple ToasterBox, with background image and text customization can be created. |
TB_ONTIME | 0x1 | ToasterBox will close after a specified amount of time. |
TB_COMPLEX | 0x2 | ToasterBoxes with different degree of complexity can be created. You can add as many controls as you want, provided that you call the meth:~ToasterBox.AddPanel` method and pass to it a dummy frame and a Panel. See the demo for details. |
TB_ONCLICK | 0x2 | ToasterBox can be closed by clicking anywhere on the ToasterBox frame. |
TB_DEFAULT_STYLE | 0x2008002 | Default window style for ToasterBox, with no caption nor close box. |
TB_CAPTION | 0x22009806 | ToasterBox will have a caption, with the possibility to set a title for the ToasterBox frame, and a close box. |
No custom events are available for this class.
ToasterBox is distributed under the wxPython license.
Latest revision: Andrea Gavana @ 14 Mar 2012, 21.00 GMT
Version 0.3
ToasterBox | ToasterBox is a cross-platform widget to make the creation of MSN style “toaster” |
ToasterBoxWindow | This class does all the job, by handling background images, text properties |