mirror of
https://github.com/wxWidgets/Phoenix.git
synced 2026-01-05 11:30:06 +01:00
Add wx.adv.TaskBarIcon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxPython/Phoenix/trunk@71243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -33,6 +33,7 @@ INCLUDES = [
|
||||
'calctrl',
|
||||
'hyperlink',
|
||||
'tipdlg',
|
||||
'taskbar',
|
||||
|
||||
|
||||
# TODOs -
|
||||
@@ -50,7 +51,6 @@ INCLUDES = [
|
||||
#'sashwin',
|
||||
#'sound',
|
||||
#'splash',
|
||||
#'taskbar',
|
||||
#'timectrl',
|
||||
#'treelist',
|
||||
#'wizard',
|
||||
|
||||
81
etg/taskbar.py
Normal file
81
etg/taskbar.py
Normal file
@@ -0,0 +1,81 @@
|
||||
#---------------------------------------------------------------------------
|
||||
# Name: etg/taskbar.py
|
||||
# Author: Robin Dunn
|
||||
#
|
||||
# Created: 19-Apr-2012
|
||||
# Copyright: (c) 2012 by Total Control Software
|
||||
# License: wxWindows License
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
import etgtools
|
||||
import etgtools.tweaker_tools as tools
|
||||
|
||||
PACKAGE = "wx"
|
||||
MODULE = "_adv"
|
||||
NAME = "taskbar" # Base name of the file to generate to for this script
|
||||
DOCSTRING = ""
|
||||
|
||||
# The classes and/or the basename of the Doxygen XML files to be processed by
|
||||
# this script.
|
||||
ITEMS = [ "wxTaskBarIconEvent",
|
||||
"wxTaskBarIcon",
|
||||
]
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
def run():
|
||||
# Parse the XML file(s) building a collection of Extractor objects
|
||||
module = etgtools.ModuleDef(PACKAGE, MODULE, NAME, DOCSTRING)
|
||||
etgtools.parseDoxyXML(module, ITEMS)
|
||||
|
||||
#-----------------------------------------------------------------
|
||||
# Tweak the parsed meta objects in the module object as needed for
|
||||
# customizing the generated code and docstrings.
|
||||
|
||||
module.addHeaderCode('#include <wx/taskbar.h>')
|
||||
|
||||
c = module.find('wxTaskBarIconEvent')
|
||||
assert isinstance(c, etgtools.ClassDef)
|
||||
tools.fixEventClass(c)
|
||||
|
||||
c.addPyCode("""\
|
||||
EVT_TASKBAR_MOVE = wx.PyEventBinder ( wxEVT_TASKBAR_MOVE )
|
||||
EVT_TASKBAR_LEFT_DOWN = wx.PyEventBinder ( wxEVT_TASKBAR_LEFT_DOWN )
|
||||
EVT_TASKBAR_LEFT_UP = wx.PyEventBinder ( wxEVT_TASKBAR_LEFT_UP )
|
||||
EVT_TASKBAR_RIGHT_DOWN = wx.PyEventBinder ( wxEVT_TASKBAR_RIGHT_DOWN )
|
||||
EVT_TASKBAR_RIGHT_UP = wx.PyEventBinder ( wxEVT_TASKBAR_RIGHT_UP )
|
||||
EVT_TASKBAR_LEFT_DCLICK = wx.PyEventBinder ( wxEVT_TASKBAR_LEFT_DCLICK )
|
||||
EVT_TASKBAR_RIGHT_DCLICK = wx.PyEventBinder ( wxEVT_TASKBAR_RIGHT_DCLICK )
|
||||
EVT_TASKBAR_CLICK = wx.PyEventBinder ( wxEVT_TASKBAR_CLICK )
|
||||
EVT_TASKBAR_BALLOON_TIMEOUT = wx.PyEventBinder ( wxEVT_TASKBAR_BALLOON_TIMEOUT )
|
||||
EVT_TASKBAR_BALLOON_CLICK = wx.PyEventBinder ( wxEVT_TASKBAR_BALLOON_CLICK )
|
||||
""")
|
||||
|
||||
|
||||
c = module.find('wxTaskBarIcon')
|
||||
c.find('CreatePopupMenu').ignore(False)
|
||||
c.find('Destroy').transferThis = True
|
||||
|
||||
c.addCppMethod('bool', 'ShowBalloon', '(const wxString& title, const wxString& text,'
|
||||
'unsigned msec = 0, int flags = 0)',
|
||||
doc="""\
|
||||
Show a balloon notification (the icon must have been already
|
||||
initialized using SetIcon). Only implemented for Windows.
|
||||
""",
|
||||
body="""\
|
||||
#ifdef __WXMSW__
|
||||
return self->ShowBalloon(*title, *text, msec, flags);
|
||||
#else
|
||||
return false;
|
||||
#endif
|
||||
""")
|
||||
|
||||
#-----------------------------------------------------------------
|
||||
tools.doCommonTweaks(module)
|
||||
tools.runGenerators(module)
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
if __name__ == '__main__':
|
||||
run()
|
||||
|
||||
42
unittests/test_taskbar.py
Normal file
42
unittests/test_taskbar.py
Normal file
@@ -0,0 +1,42 @@
|
||||
import imp_unittest, unittest
|
||||
import wtc
|
||||
import wx
|
||||
import wx.adv
|
||||
import os
|
||||
|
||||
icoFile = os.path.join(os.path.dirname(__file__), 'mondrian.ico')
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
class taskbar_Tests(wtc.WidgetTestCase):
|
||||
|
||||
def test_taskbar1(self):
|
||||
icon = wx.adv.TaskBarIcon(wx.adv.TBI_DOCK)
|
||||
icon.SetIcon(wx.Icon(icoFile), "The tip string")
|
||||
self.assertTrue(icon.IsOk())
|
||||
icon.Destroy()
|
||||
self.myYield()
|
||||
|
||||
|
||||
def test_taskbar2(self):
|
||||
wx.adv.TBI_DOCK
|
||||
wx.adv.TBI_CUSTOM_STATUSITEM
|
||||
wx.adv.TBI_DEFAULT_TYPE
|
||||
|
||||
wx.adv.TaskBarIconEvent
|
||||
|
||||
wx.adv.wxEVT_TASKBAR_MOVE
|
||||
wx.adv.wxEVT_TASKBAR_LEFT_DOWN
|
||||
wx.adv.wxEVT_TASKBAR_LEFT_UP
|
||||
wx.adv.wxEVT_TASKBAR_RIGHT_DOWN
|
||||
wx.adv.wxEVT_TASKBAR_RIGHT_UP
|
||||
wx.adv.wxEVT_TASKBAR_LEFT_DCLICK
|
||||
wx.adv.wxEVT_TASKBAR_RIGHT_DCLICK
|
||||
wx.adv.wxEVT_TASKBAR_CLICK
|
||||
wx.adv.wxEVT_TASKBAR_BALLOON_TIMEOUT
|
||||
wx.adv.wxEVT_TASKBAR_BALLOON_CLICK
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
Reference in New Issue
Block a user