mirror of
https://github.com/wxWidgets/Phoenix.git
synced 2026-01-09 05:20:08 +01:00
2
TODO.rst
2
TODO.rst
@@ -143,8 +143,6 @@ Other Dev Stuff
|
||||
* [] New activex classes in wx/msw/ole/activex.h ?
|
||||
* Any others?
|
||||
|
||||
* Add _aui module ?? (or go with only agw aui?)
|
||||
|
||||
* Add the UTF8 PyMethods from classic (see _stc_utf8_methods.py) to StyledTextCtrl
|
||||
|
||||
* Reimplement the classes in the valgen, valnum and valtext headers as
|
||||
|
||||
@@ -7,11 +7,7 @@
|
||||
import wx
|
||||
import wx.grid
|
||||
import wx.html
|
||||
|
||||
try:
|
||||
from agw import aui
|
||||
except ImportError: # if it's not there locally, try the wxPython lib.
|
||||
import wx.lib.agw.aui as aui
|
||||
import wx.aui as aui
|
||||
|
||||
from six import BytesIO
|
||||
|
||||
@@ -163,69 +159,69 @@ class PyAUIFrame(wx.Frame):
|
||||
tb1 = wx.ToolBar(self, -1, wx.DefaultPosition, wx.DefaultSize,
|
||||
wx.TB_FLAT | wx.TB_NODIVIDER)
|
||||
tb1.SetToolBitmapSize(wx.Size(48,48))
|
||||
tb1.AddLabelTool(101, "Test", wx.ArtProvider.GetBitmap(wx.ART_ERROR))
|
||||
tb1.AddTool(101, "Test", wx.ArtProvider.GetBitmap(wx.ART_ERROR))
|
||||
tb1.AddSeparator()
|
||||
tb1.AddLabelTool(102, "Test", wx.ArtProvider.GetBitmap(wx.ART_QUESTION))
|
||||
tb1.AddLabelTool(103, "Test", wx.ArtProvider.GetBitmap(wx.ART_INFORMATION))
|
||||
tb1.AddLabelTool(103, "Test", wx.ArtProvider.GetBitmap(wx.ART_WARNING))
|
||||
tb1.AddLabelTool(103, "Test", wx.ArtProvider.GetBitmap(wx.ART_MISSING_IMAGE))
|
||||
tb1.AddTool(102, "Test", wx.ArtProvider.GetBitmap(wx.ART_QUESTION))
|
||||
tb1.AddTool(103, "Test", wx.ArtProvider.GetBitmap(wx.ART_INFORMATION))
|
||||
tb1.AddTool(103, "Test", wx.ArtProvider.GetBitmap(wx.ART_WARNING))
|
||||
tb1.AddTool(103, "Test", wx.ArtProvider.GetBitmap(wx.ART_MISSING_IMAGE))
|
||||
tb1.Realize()
|
||||
|
||||
tb2 = wx.ToolBar(self, -1, wx.DefaultPosition, wx.DefaultSize,
|
||||
wx.TB_FLAT | wx.TB_NODIVIDER)
|
||||
tb2.SetToolBitmapSize(wx.Size(16,16))
|
||||
tb2_bmp1 = wx.ArtProvider.GetBitmap(wx.ART_QUESTION, wx.ART_OTHER, wx.Size(16, 16))
|
||||
tb2.AddLabelTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddLabelTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddLabelTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddLabelTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddSeparator()
|
||||
tb2.AddLabelTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddLabelTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddSeparator()
|
||||
tb2.AddLabelTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddLabelTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddLabelTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddLabelTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddTool(101, "Test", tb2_bmp1)
|
||||
tb2.AddTool(101, "Test", tb2_bmp1)
|
||||
tb2.Realize()
|
||||
|
||||
tb3 = wx.ToolBar(self, -1, wx.DefaultPosition, wx.DefaultSize,
|
||||
wx.TB_FLAT | wx.TB_NODIVIDER)
|
||||
tb3.SetToolBitmapSize(wx.Size(16,16))
|
||||
tb3_bmp1 = wx.ArtProvider.GetBitmap(wx.ART_FOLDER, wx.ART_OTHER, wx.Size(16, 16))
|
||||
tb3.AddLabelTool(101, "Test", tb3_bmp1)
|
||||
tb3.AddLabelTool(101, "Test", tb3_bmp1)
|
||||
tb3.AddLabelTool(101, "Test", tb3_bmp1)
|
||||
tb3.AddLabelTool(101, "Test", tb3_bmp1)
|
||||
tb3.AddTool(101, "Test", tb3_bmp1)
|
||||
tb3.AddTool(101, "Test", tb3_bmp1)
|
||||
tb3.AddTool(101, "Test", tb3_bmp1)
|
||||
tb3.AddTool(101, "Test", tb3_bmp1)
|
||||
tb3.AddSeparator()
|
||||
tb3.AddLabelTool(101, "Test", tb3_bmp1)
|
||||
tb3.AddLabelTool(101, "Test", tb3_bmp1)
|
||||
tb3.AddTool(101, "Test", tb3_bmp1)
|
||||
tb3.AddTool(101, "Test", tb3_bmp1)
|
||||
tb3.Realize()
|
||||
|
||||
tb4 = wx.ToolBar(self, -1, wx.DefaultPosition, wx.DefaultSize,
|
||||
wx.TB_FLAT | wx.TB_NODIVIDER | wx.TB_HORZ_TEXT)
|
||||
tb4.SetToolBitmapSize(wx.Size(16,16))
|
||||
tb4_bmp1 = wx.ArtProvider.GetBitmap(wx.ART_NORMAL_FILE, wx.ART_OTHER, wx.Size(16, 16))
|
||||
tb4.AddLabelTool(101, "Item 1", tb4_bmp1)
|
||||
tb4.AddLabelTool(101, "Item 2", tb4_bmp1)
|
||||
tb4.AddLabelTool(101, "Item 3", tb4_bmp1)
|
||||
tb4.AddLabelTool(101, "Item 4", tb4_bmp1)
|
||||
tb4.AddTool(101, "Item 1", tb4_bmp1)
|
||||
tb4.AddTool(101, "Item 2", tb4_bmp1)
|
||||
tb4.AddTool(101, "Item 3", tb4_bmp1)
|
||||
tb4.AddTool(101, "Item 4", tb4_bmp1)
|
||||
tb4.AddSeparator()
|
||||
tb4.AddLabelTool(101, "Item 5", tb4_bmp1)
|
||||
tb4.AddLabelTool(101, "Item 6", tb4_bmp1)
|
||||
tb4.AddLabelTool(101, "Item 7", tb4_bmp1)
|
||||
tb4.AddLabelTool(101, "Item 8", tb4_bmp1)
|
||||
tb4.AddTool(101, "Item 5", tb4_bmp1)
|
||||
tb4.AddTool(101, "Item 6", tb4_bmp1)
|
||||
tb4.AddTool(101, "Item 7", tb4_bmp1)
|
||||
tb4.AddTool(101, "Item 8", tb4_bmp1)
|
||||
tb4.Realize()
|
||||
|
||||
tb5 = wx.ToolBar(self, -1, wx.DefaultPosition, wx.DefaultSize,
|
||||
wx.TB_FLAT | wx.TB_NODIVIDER | wx.TB_VERTICAL)
|
||||
tb5.SetToolBitmapSize(wx.Size(48, 48))
|
||||
tb5.AddLabelTool(101, "Test", wx.ArtProvider.GetBitmap(wx.ART_ERROR))
|
||||
tb5.AddTool(101, "Test", wx.ArtProvider.GetBitmap(wx.ART_ERROR))
|
||||
tb5.AddSeparator()
|
||||
tb5.AddLabelTool(102, "Test", wx.ArtProvider.GetBitmap(wx.ART_QUESTION))
|
||||
tb5.AddLabelTool(103, "Test", wx.ArtProvider.GetBitmap(wx.ART_INFORMATION))
|
||||
tb5.AddLabelTool(103, "Test", wx.ArtProvider.GetBitmap(wx.ART_WARNING))
|
||||
tb5.AddLabelTool(103, "Test", wx.ArtProvider.GetBitmap(wx.ART_MISSING_IMAGE))
|
||||
tb5.AddTool(102, "Test", wx.ArtProvider.GetBitmap(wx.ART_QUESTION))
|
||||
tb5.AddTool(103, "Test", wx.ArtProvider.GetBitmap(wx.ART_INFORMATION))
|
||||
tb5.AddTool(103, "Test", wx.ArtProvider.GetBitmap(wx.ART_WARNING))
|
||||
tb5.AddTool(103, "Test", wx.ArtProvider.GetBitmap(wx.ART_MISSING_IMAGE))
|
||||
tb5.Realize()
|
||||
|
||||
# add a bunch of panes
|
||||
@@ -451,10 +447,10 @@ class PyAUIFrame(wx.Frame):
|
||||
|
||||
def OnAbout(self, event):
|
||||
|
||||
msg = "aui Demo\n" + \
|
||||
msg = "wx.aui Demo\n" + \
|
||||
"An advanced window management library for wxWidgets\n" + \
|
||||
"(c) Copyright 2005-2006, Kirix Corporation"
|
||||
dlg = wx.MessageDialog(self, msg, "About aui Demo",
|
||||
dlg = wx.MessageDialog(self, msg, "About wx.aui Demo",
|
||||
wx.OK | wx.ICON_INFORMATION)
|
||||
dlg.ShowModal()
|
||||
dlg.Destroy()
|
||||
@@ -743,12 +739,12 @@ class PyAUIFrame(wx.Frame):
|
||||
# -- wx.SizeReportCtrl --
|
||||
# (a utility control that always reports it's client size)
|
||||
|
||||
class SizeReportCtrl(wx.PyControl):
|
||||
class SizeReportCtrl(wx.Control):
|
||||
|
||||
def __init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition,
|
||||
size=wx.DefaultSize, mgr=None):
|
||||
|
||||
wx.PyControl.__init__(self, parent, id, pos, size, wx.NO_BORDER)
|
||||
wx.Control.__init__(self, parent, id, pos, size, wx.NO_BORDER)
|
||||
|
||||
self._mgr = mgr
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
<span class="linkdescr">A generic, ground-up implementation of a text control capable of showing multiple text styles and images.</span></p>
|
||||
|
||||
<p class="biglink"><a class="biglink" href="{{ pathto("wx.ribbon.1moduleindex") }}">wx.ribbon</a><br/>
|
||||
<span class="linkdescr">A tabbed generic, ground-up implementation of a text control capable of showing multiple text styles and images.</span></p>
|
||||
<span class="linkdescr">A set of classes for writing a ribbon-based UI, typically a combonation of tabs and toolbar, similar to the UI in MS Office and Windows 10.</span></p>
|
||||
|
||||
<p class="biglink"><a class="biglink" href="{{ pathto("wx.html.1moduleindex") }}">wx.html</a><br/>
|
||||
<span class="linkdescr">Widget and supporting classes for a generic html renderer</span></p>
|
||||
@@ -47,6 +47,9 @@
|
||||
<p class="biglink"><a class="biglink" href="{{ pathto("wx.html2.1moduleindex") }}">wx.html2</a><br/>
|
||||
<span class="linkdescr">Widget and supporting classes for a native html renderer, with CSS and javascript support</span></p>
|
||||
|
||||
<p class="biglink"><a class="biglink" href="{{ pathto("wx.aui.1moduleindex") }}">wx.aui</a><br/>
|
||||
<span class="linkdescr">Docking/floating window panes, draggable notebook tabs, etc.</span></p>
|
||||
|
||||
|
||||
</td>
|
||||
<td valign="top" width="50%" style="margin-left: 5px">
|
||||
|
||||
@@ -106,6 +106,96 @@
|
||||
"ART_TOOLBAR":"wx.",
|
||||
"ART_UNDO":"wx.",
|
||||
"ART_WARNING":"wx.",
|
||||
"AUI_BUTTON_CLOSE":"wx.aui.",
|
||||
"AUI_BUTTON_CUSTOM1":"wx.aui.",
|
||||
"AUI_BUTTON_CUSTOM2":"wx.aui.",
|
||||
"AUI_BUTTON_CUSTOM3":"wx.aui.",
|
||||
"AUI_BUTTON_DOWN":"wx.aui.",
|
||||
"AUI_BUTTON_LEFT":"wx.aui.",
|
||||
"AUI_BUTTON_MAXIMIZE_RESTORE":"wx.aui.",
|
||||
"AUI_BUTTON_MINIMIZE":"wx.aui.",
|
||||
"AUI_BUTTON_OPTIONS":"wx.aui.",
|
||||
"AUI_BUTTON_PIN":"wx.aui.",
|
||||
"AUI_BUTTON_RIGHT":"wx.aui.",
|
||||
"AUI_BUTTON_STATE_CHECKED":"wx.aui.",
|
||||
"AUI_BUTTON_STATE_DISABLED":"wx.aui.",
|
||||
"AUI_BUTTON_STATE_HIDDEN":"wx.aui.",
|
||||
"AUI_BUTTON_STATE_HOVER":"wx.aui.",
|
||||
"AUI_BUTTON_STATE_NORMAL":"wx.aui.",
|
||||
"AUI_BUTTON_STATE_PRESSED":"wx.aui.",
|
||||
"AUI_BUTTON_UP":"wx.aui.",
|
||||
"AUI_BUTTON_WINDOWLIST":"wx.aui.",
|
||||
"AUI_DOCKART_ACTIVE_CAPTION_COLOUR":"wx.aui.",
|
||||
"AUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR":"wx.aui.",
|
||||
"AUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR":"wx.aui.",
|
||||
"AUI_DOCKART_BACKGROUND_COLOUR":"wx.aui.",
|
||||
"AUI_DOCKART_BORDER_COLOUR":"wx.aui.",
|
||||
"AUI_DOCKART_CAPTION_FONT":"wx.aui.",
|
||||
"AUI_DOCKART_CAPTION_SIZE":"wx.aui.",
|
||||
"AUI_DOCKART_GRADIENT_TYPE":"wx.aui.",
|
||||
"AUI_DOCKART_GRIPPER_COLOUR":"wx.aui.",
|
||||
"AUI_DOCKART_GRIPPER_SIZE":"wx.aui.",
|
||||
"AUI_DOCKART_INACTIVE_CAPTION_COLOUR":"wx.aui.",
|
||||
"AUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR":"wx.aui.",
|
||||
"AUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR":"wx.aui.",
|
||||
"AUI_DOCKART_PANE_BORDER_SIZE":"wx.aui.",
|
||||
"AUI_DOCKART_PANE_BUTTON_SIZE":"wx.aui.",
|
||||
"AUI_DOCKART_SASH_COLOUR":"wx.aui.",
|
||||
"AUI_DOCKART_SASH_SIZE":"wx.aui.",
|
||||
"AUI_DOCK_BOTTOM":"wx.aui.",
|
||||
"AUI_DOCK_CENTER":"wx.aui.",
|
||||
"AUI_DOCK_CENTRE":"wx.aui.",
|
||||
"AUI_DOCK_LEFT":"wx.aui.",
|
||||
"AUI_DOCK_NONE":"wx.aui.",
|
||||
"AUI_DOCK_RIGHT":"wx.aui.",
|
||||
"AUI_DOCK_TOP":"wx.aui.",
|
||||
"AUI_GRADIENT_HORIZONTAL":"wx.aui.",
|
||||
"AUI_GRADIENT_NONE":"wx.aui.",
|
||||
"AUI_GRADIENT_VERTICAL":"wx.aui.",
|
||||
"AUI_MGR_ALLOW_ACTIVE_PANE":"wx.aui.",
|
||||
"AUI_MGR_ALLOW_FLOATING":"wx.aui.",
|
||||
"AUI_MGR_DEFAULT":"wx.aui.",
|
||||
"AUI_MGR_HINT_FADE":"wx.aui.",
|
||||
"AUI_MGR_LIVE_RESIZE":"wx.aui.",
|
||||
"AUI_MGR_NO_VENETIAN_BLINDS_FADE":"wx.aui.",
|
||||
"AUI_MGR_RECTANGLE_HINT":"wx.aui.",
|
||||
"AUI_MGR_TRANSPARENT_DRAG":"wx.aui.",
|
||||
"AUI_MGR_TRANSPARENT_HINT":"wx.aui.",
|
||||
"AUI_MGR_VENETIAN_BLINDS_HINT":"wx.aui.",
|
||||
"AUI_NB_BOTTOM":"wx.aui.",
|
||||
"AUI_NB_CLOSE_BUTTON":"wx.aui.",
|
||||
"AUI_NB_CLOSE_ON_ACTIVE_TAB":"wx.aui.",
|
||||
"AUI_NB_CLOSE_ON_ALL_TABS":"wx.aui.",
|
||||
"AUI_NB_DEFAULT_STYLE":"wx.aui.",
|
||||
"AUI_NB_LEFT":"wx.aui.",
|
||||
"AUI_NB_MIDDLE_CLICK_CLOSE":"wx.aui.",
|
||||
"AUI_NB_RIGHT":"wx.aui.",
|
||||
"AUI_NB_SCROLL_BUTTONS":"wx.aui.",
|
||||
"AUI_NB_TAB_EXTERNAL_MOVE":"wx.aui.",
|
||||
"AUI_NB_TAB_FIXED_WIDTH":"wx.aui.",
|
||||
"AUI_NB_TAB_MOVE":"wx.aui.",
|
||||
"AUI_NB_TAB_SPLIT":"wx.aui.",
|
||||
"AUI_NB_TOP":"wx.aui.",
|
||||
"AUI_NB_WINDOWLIST_BUTTON":"wx.aui.",
|
||||
"AUI_ORIENTATION_MASK":"wx.aui.",
|
||||
"AUI_TBART_GRIPPER_SIZE":"wx.aui.",
|
||||
"AUI_TBART_OVERFLOW_SIZE":"wx.aui.",
|
||||
"AUI_TBART_SEPARATOR_SIZE":"wx.aui.",
|
||||
"AUI_TBTOOL_TEXT_BOTTOM":"wx.aui.",
|
||||
"AUI_TBTOOL_TEXT_LEFT":"wx.aui.",
|
||||
"AUI_TBTOOL_TEXT_RIGHT":"wx.aui.",
|
||||
"AUI_TBTOOL_TEXT_TOP":"wx.aui.",
|
||||
"AUI_TB_DEFAULT_STYLE":"wx.aui.",
|
||||
"AUI_TB_GRIPPER":"wx.aui.",
|
||||
"AUI_TB_HORIZONTAL":"wx.aui.",
|
||||
"AUI_TB_HORZ_LAYOUT":"wx.aui.",
|
||||
"AUI_TB_HORZ_TEXT":"wx.aui.",
|
||||
"AUI_TB_NO_AUTORESIZE":"wx.aui.",
|
||||
"AUI_TB_NO_TOOLTIPS":"wx.aui.",
|
||||
"AUI_TB_OVERFLOW":"wx.aui.",
|
||||
"AUI_TB_PLAIN_BACKGROUND":"wx.aui.",
|
||||
"AUI_TB_TEXT":"wx.aui.",
|
||||
"AUI_TB_VERTICAL":"wx.aui.",
|
||||
"Abort":"wx.",
|
||||
"AboutBox":"wx.adv.",
|
||||
"AboutDialogInfo":"wx.adv.",
|
||||
@@ -139,6 +229,40 @@
|
||||
"AsIs":"wx.",
|
||||
"AssertHandler_t":"wx.",
|
||||
"AttrKind":"wx.grid.GridCellAttr.",
|
||||
"AuiButtonId":"wx.aui.",
|
||||
"AuiDefaultDockArt":"wx.aui.",
|
||||
"AuiDefaultTabArt":"wx.aui.",
|
||||
"AuiDefaultToolBarArt":"wx.aui.",
|
||||
"AuiDockArt":"wx.aui.",
|
||||
"AuiDockInfo":"wx.aui.",
|
||||
"AuiDockUIPart":"wx.aui.",
|
||||
"AuiMDIChildFrame":"wx.aui.",
|
||||
"AuiMDIClientWindow":"wx.aui.",
|
||||
"AuiMDIParentFrame":"wx.aui.",
|
||||
"AuiManager":"wx.aui.",
|
||||
"AuiManagerDock":"wx.aui.",
|
||||
"AuiManagerEvent":"wx.aui.",
|
||||
"AuiManagerOption":"wx.aui.",
|
||||
"AuiNotebook":"wx.aui.",
|
||||
"AuiNotebookEvent":"wx.aui.",
|
||||
"AuiNotebookOption":"wx.aui.",
|
||||
"AuiNotebookPage":"wx.aui.",
|
||||
"AuiPaneButton":"wx.aui.",
|
||||
"AuiPaneButtonState":"wx.aui.",
|
||||
"AuiPaneDockArtGradients":"wx.aui.",
|
||||
"AuiPaneDockArtSetting":"wx.aui.",
|
||||
"AuiPaneInfo":"wx.aui.",
|
||||
"AuiSimpleTabArt":"wx.aui.",
|
||||
"AuiTabArt":"wx.aui.",
|
||||
"AuiTabContainer":"wx.aui.",
|
||||
"AuiTabContainerButton":"wx.aui.",
|
||||
"AuiToolBar":"wx.aui.",
|
||||
"AuiToolBarArt":"wx.aui.",
|
||||
"AuiToolBarArtSetting":"wx.aui.",
|
||||
"AuiToolBarEvent":"wx.aui.",
|
||||
"AuiToolBarItem":"wx.aui.",
|
||||
"AuiToolBarStyle":"wx.aui.",
|
||||
"AuiToolBarToolTextOrientation":"wx.aui.",
|
||||
"AutoBufferedPaintDC":"wx.",
|
||||
"AutoBufferedPaintDCFactory":"wx.",
|
||||
"BACKINGSTORE":"wx.",
|
||||
@@ -1125,6 +1249,7 @@
|
||||
"GetSingleChoice":"wx.",
|
||||
"GetSingleChoiceData":"wx.",
|
||||
"GetSingleChoiceIndex":"wx.",
|
||||
"GetStockLabel":"wx.",
|
||||
"GetTextFromUser":"wx.",
|
||||
"GetTextFromUserPromptStr":"wx.",
|
||||
"GetTopLevelParent":"wx.",
|
||||
@@ -5179,6 +5304,11 @@
|
||||
"STC_YAML_OPERATOR":"wx.stc.",
|
||||
"STC_YAML_REFERENCE":"wx.stc.",
|
||||
"STC_YAML_TEXT":"wx.stc.",
|
||||
"STOCK_FOR_BUTTON":"wx.",
|
||||
"STOCK_NOFLAGS":"wx.",
|
||||
"STOCK_WITHOUT_ELLIPSIS":"wx.",
|
||||
"STOCK_WITH_ACCELERATOR":"wx.",
|
||||
"STOCK_WITH_MNEMONIC":"wx.",
|
||||
"STREAM_EOF":"wx.",
|
||||
"STREAM_NO_ERROR":"wx.",
|
||||
"STREAM_READ_ERROR":"wx.",
|
||||
@@ -5367,6 +5497,7 @@
|
||||
"StatusBarPane":"wx.",
|
||||
"StdDialogButtonSizer":"wx.",
|
||||
"StockCursor":"wx.",
|
||||
"StockLabelQueryFlag":"wx.",
|
||||
"StockPreferencesPage":"wx.",
|
||||
"StopWatch":"wx.",
|
||||
"StreamBase":"wx.",
|
||||
@@ -6121,6 +6252,33 @@
|
||||
"wxEVT_ACTIVATE":"wx.",
|
||||
"wxEVT_ACTIVATE_APP":"wx.",
|
||||
"wxEVT_ANY":"wx.",
|
||||
"wxEVT_AUINOTEBOOK_ALLOW_DND":"wx.aui.",
|
||||
"wxEVT_AUINOTEBOOK_BEGIN_DRAG":"wx.aui.",
|
||||
"wxEVT_AUINOTEBOOK_BG_DCLICK":"wx.aui.",
|
||||
"wxEVT_AUINOTEBOOK_BUTTON":"wx.aui.",
|
||||
"wxEVT_AUINOTEBOOK_DRAG_DONE":"wx.aui.",
|
||||
"wxEVT_AUINOTEBOOK_DRAG_MOTION":"wx.aui.",
|
||||
"wxEVT_AUINOTEBOOK_END_DRAG":"wx.aui.",
|
||||
"wxEVT_AUINOTEBOOK_PAGE_CHANGED":"wx.aui.",
|
||||
"wxEVT_AUINOTEBOOK_PAGE_CHANGING":"wx.aui.",
|
||||
"wxEVT_AUINOTEBOOK_PAGE_CLOSE":"wx.aui.",
|
||||
"wxEVT_AUINOTEBOOK_PAGE_CLOSED":"wx.aui.",
|
||||
"wxEVT_AUINOTEBOOK_TAB_MIDDLE_DOWN":"wx.aui.",
|
||||
"wxEVT_AUINOTEBOOK_TAB_MIDDLE_UP":"wx.aui.",
|
||||
"wxEVT_AUINOTEBOOK_TAB_RIGHT_DOWN":"wx.aui.",
|
||||
"wxEVT_AUINOTEBOOK_TAB_RIGHT_UP":"wx.aui.",
|
||||
"wxEVT_AUITOOLBAR_BEGIN_DRAG":"wx.aui.",
|
||||
"wxEVT_AUITOOLBAR_MIDDLE_CLICK":"wx.aui.",
|
||||
"wxEVT_AUITOOLBAR_OVERFLOW_CLICK":"wx.aui.",
|
||||
"wxEVT_AUITOOLBAR_RIGHT_CLICK":"wx.aui.",
|
||||
"wxEVT_AUITOOLBAR_TOOL_DROPDOWN":"wx.aui.",
|
||||
"wxEVT_AUI_FIND_MANAGER":"wx.aui.",
|
||||
"wxEVT_AUI_PANE_ACTIVATED":"wx.aui.",
|
||||
"wxEVT_AUI_PANE_BUTTON":"wx.aui.",
|
||||
"wxEVT_AUI_PANE_CLOSE":"wx.aui.",
|
||||
"wxEVT_AUI_PANE_MAXIMIZE":"wx.aui.",
|
||||
"wxEVT_AUI_PANE_RESTORE":"wx.aui.",
|
||||
"wxEVT_AUI_RENDER":"wx.aui.",
|
||||
"wxEVT_AUX1_DCLICK":"wx.",
|
||||
"wxEVT_AUX1_DOWN":"wx.",
|
||||
"wxEVT_AUX1_UP":"wx.",
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
|
||||
text1 = wx.TextCtrl(self)
|
||||
text2 = wx.TextCtrl(self)
|
||||
self.mgr.AddPane(text1, wx.LEFT, "Pane Caption")
|
||||
self.mgr.AddPane(text2, wx.BOTTOM, "Pane Caption")
|
||||
self.mgr.Update()
|
||||
@@ -0,0 +1,2 @@
|
||||
|
||||
self.mgr.GetPane(text1).Float()
|
||||
78
etg/_aui.py
Normal file
78
etg/_aui.py
Normal file
@@ -0,0 +1,78 @@
|
||||
#---------------------------------------------------------------------------
|
||||
# Name: etg/_aui.py
|
||||
# Author: Robin Dunn
|
||||
#
|
||||
# Created: 25-Oct-2016
|
||||
# Copyright: (c) 2016 by Total Control Software
|
||||
# License: wxWindows License
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
import etgtools
|
||||
import etgtools.tweaker_tools as tools
|
||||
|
||||
PACKAGE = "wx"
|
||||
MODULE = "_aui"
|
||||
NAME = "_aui" # Base name of the file to generate to for this script
|
||||
DOCSTRING = """\
|
||||
`wx.aui` provides a set of classes for implementing an "Advanced User Interface".
|
||||
More specifically, these classes enable to you present some of your application in
|
||||
floating or dockable panels, notebooks with floatable tabs, etc.
|
||||
|
||||
There is also a pure-python implementation of these classes available in the
|
||||
`wx.lib.agw.aui` package.
|
||||
"""
|
||||
|
||||
# The classes and/or the basename of the Doxygen XML files to be processed by
|
||||
# this script.
|
||||
ITEMS = [ ]
|
||||
|
||||
|
||||
# The list of other ETG scripts and back-end generator modules that are
|
||||
# included as part of this module. These should all be items that are put in
|
||||
# the wxWidgets "aui" library in a multi-lib build.
|
||||
INCLUDES = [ 'auiframemanager',
|
||||
'auidockart',
|
||||
'auibar',
|
||||
'auibook',
|
||||
'auitabmdi',
|
||||
]
|
||||
|
||||
|
||||
# Separate the list into those that are generated from ETG scripts and the
|
||||
# rest. These lists can be used from the build scripts to get a list of
|
||||
# sources and/or additional dependencies when building this extension module.
|
||||
ETGFILES = ['etg/%s.py' % NAME] + tools.getEtgFiles(INCLUDES)
|
||||
DEPENDS = tools.getNonEtgFiles(INCLUDES)
|
||||
OTHERDEPS = [ ]
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
def run():
|
||||
# Parse the XML file(s) building a collection of Extractor objects
|
||||
module = etgtools.ModuleDef(PACKAGE, MODULE, NAME, DOCSTRING)
|
||||
etgtools.parseDoxyXML(module, ITEMS)
|
||||
module.check4unittest = False
|
||||
|
||||
#-----------------------------------------------------------------
|
||||
# Tweak the parsed meta objects in the module object as needed for
|
||||
# customizing the generated code and docstrings.
|
||||
|
||||
module.addHeaderCode('#include <wxpy_api.h>')
|
||||
module.addImport('_core')
|
||||
module.addPyCode("import wx", order=10)
|
||||
|
||||
module.addHeaderCode('#include <wx/aui/aui.h>')
|
||||
|
||||
module.addInclude(INCLUDES)
|
||||
|
||||
#-----------------------------------------------------------------
|
||||
tools.doCommonTweaks(module)
|
||||
tools.runGenerators(module)
|
||||
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
if __name__ == '__main__':
|
||||
run()
|
||||
@@ -228,6 +228,7 @@ INCLUDES = [ # base and core stuff
|
||||
'preferences',
|
||||
'modalhook',
|
||||
'unichar',
|
||||
'stockitem',
|
||||
]
|
||||
|
||||
|
||||
|
||||
67
etg/auibar.py
Normal file
67
etg/auibar.py
Normal file
@@ -0,0 +1,67 @@
|
||||
#---------------------------------------------------------------------------
|
||||
# Name: etg/auibar.py
|
||||
# Author: Robin Dunn
|
||||
#
|
||||
# Created: 26-Oct-2016
|
||||
# Copyright: (c) 2016 by Total Control Software
|
||||
# License: wxWindows License
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
import etgtools
|
||||
import etgtools.tweaker_tools as tools
|
||||
|
||||
PACKAGE = "wx"
|
||||
MODULE = "_aui"
|
||||
NAME = "auibar" # 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 = [ 'wxAuiToolBarItem',
|
||||
'wxAuiToolBarArt',
|
||||
'wxAuiDefaultToolBarArt',
|
||||
'wxAuiToolBar',
|
||||
'wxAuiToolBarEvent',
|
||||
]
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
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.
|
||||
|
||||
c = module.find('wxAuiToolBar')
|
||||
assert isinstance(c, etgtools.ClassDef)
|
||||
tools.fixWindowClass(c)
|
||||
|
||||
|
||||
c = module.find('wxAuiToolBarEvent')
|
||||
tools.fixEventClass(c)
|
||||
|
||||
c.addPyCode("""\
|
||||
EVT_AUITOOLBAR_TOOL_DROPDOWN = wx.PyEventBinder( wxEVT_AUITOOLBAR_TOOL_DROPDOWN, 1 )
|
||||
EVT_AUITOOLBAR_OVERFLOW_CLICK = wx.PyEventBinder( wxEVT_AUITOOLBAR_OVERFLOW_CLICK, 1 )
|
||||
EVT_AUITOOLBAR_RIGHT_CLICK = wx.PyEventBinder( wxEVT_AUITOOLBAR_RIGHT_CLICK, 1 )
|
||||
EVT_AUITOOLBAR_MIDDLE_CLICK = wx.PyEventBinder( wxEVT_AUITOOLBAR_MIDDLE_CLICK, 1 )
|
||||
EVT_AUITOOLBAR_BEGIN_DRAG = wx.PyEventBinder( wxEVT_AUITOOLBAR_BEGIN_DRAG, 1 )
|
||||
""")
|
||||
|
||||
|
||||
module.addItem(tools.wxArrayWrapperTemplate(
|
||||
'wxAuiToolBarItemArray', 'wxAuiToolBarItem', module))
|
||||
|
||||
|
||||
#-----------------------------------------------------------------
|
||||
tools.doCommonTweaks(module)
|
||||
tools.runGenerators(module)
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
if __name__ == '__main__':
|
||||
run()
|
||||
|
||||
89
etg/auibook.py
Normal file
89
etg/auibook.py
Normal file
@@ -0,0 +1,89 @@
|
||||
#---------------------------------------------------------------------------
|
||||
# Name: etg/auibook.py
|
||||
# Author: Robin Dunn
|
||||
#
|
||||
# Created: 26-Oct-2016
|
||||
# Copyright: (c) 2016 by Total Control Software
|
||||
# License: wxWindows License
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
import etgtools
|
||||
import etgtools.tweaker_tools as tools
|
||||
|
||||
PACKAGE = "wx"
|
||||
MODULE = "_aui"
|
||||
NAME = "auibook" # 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 = [ 'wxAuiNotebook',
|
||||
'wxAuiNotebookPage',
|
||||
'wxAuiTabContainerButton',
|
||||
'wxAuiTabContainer',
|
||||
'wxAuiTabArt',
|
||||
'wxAuiDefaultTabArt',
|
||||
'wxAuiSimpleTabArt',
|
||||
'wxAuiNotebookEvent',
|
||||
]
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
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.
|
||||
|
||||
|
||||
c = module.find('wxAuiNotebook')
|
||||
assert isinstance(c, etgtools.ClassDef)
|
||||
tools.fixWindowClass(c)
|
||||
|
||||
c = module.find('wxAuiTabContainer')
|
||||
tools.ignoreConstOverloads(c)
|
||||
|
||||
module.addItem(tools.wxArrayWrapperTemplate(
|
||||
'wxAuiNotebookPageArray', 'wxAuiNotebookPage', module))
|
||||
|
||||
module.addItem(tools.wxArrayWrapperTemplate(
|
||||
'wxAuiTabContainerButtonArray', 'wxAuiTabContainerButton', module))
|
||||
|
||||
c = module.find('wxAuiTabArt')
|
||||
c.abstract = True
|
||||
|
||||
c = module.find('wxAuiNotebookEvent')
|
||||
tools.fixEventClass(c)
|
||||
c.addPyCode("""\
|
||||
EVT_AUINOTEBOOK_PAGE_CLOSE = wx.PyEventBinder( wxEVT_AUINOTEBOOK_PAGE_CLOSE, 1 )
|
||||
EVT_AUINOTEBOOK_PAGE_CLOSED = wx.PyEventBinder( wxEVT_AUINOTEBOOK_PAGE_CLOSED, 1 )
|
||||
EVT_AUINOTEBOOK_PAGE_CHANGED = wx.PyEventBinder( wxEVT_AUINOTEBOOK_PAGE_CHANGED, 1 )
|
||||
EVT_AUINOTEBOOK_PAGE_CHANGING = wx.PyEventBinder( wxEVT_AUINOTEBOOK_PAGE_CHANGING, 1 )
|
||||
EVT_AUINOTEBOOK_BUTTON = wx.PyEventBinder( wxEVT_AUINOTEBOOK_BUTTON, 1 )
|
||||
EVT_AUINOTEBOOK_BEGIN_DRAG = wx.PyEventBinder( wxEVT_AUINOTEBOOK_BEGIN_DRAG, 1 )
|
||||
EVT_AUINOTEBOOK_END_DRAG = wx.PyEventBinder( wxEVT_AUINOTEBOOK_END_DRAG, 1 )
|
||||
EVT_AUINOTEBOOK_DRAG_MOTION = wx.PyEventBinder( wxEVT_AUINOTEBOOK_DRAG_MOTION, 1 )
|
||||
EVT_AUINOTEBOOK_ALLOW_DND = wx.PyEventBinder( wxEVT_AUINOTEBOOK_ALLOW_DND, 1 )
|
||||
EVT_AUINOTEBOOK_DRAG_DONE = wx.PyEventBinder( wxEVT_AUINOTEBOOK_DRAG_DONE, 1 )
|
||||
EVT_AUINOTEBOOK_TAB_MIDDLE_DOWN = wx.PyEventBinder( wxEVT_AUINOTEBOOK_TAB_MIDDLE_DOWN, 1 )
|
||||
EVT_AUINOTEBOOK_TAB_MIDDLE_UP = wx.PyEventBinder( wxEVT_AUINOTEBOOK_TAB_MIDDLE_UP, 1 )
|
||||
EVT_AUINOTEBOOK_TAB_RIGHT_DOWN = wx.PyEventBinder( wxEVT_AUINOTEBOOK_TAB_RIGHT_DOWN, 1 )
|
||||
EVT_AUINOTEBOOK_TAB_RIGHT_UP = wx.PyEventBinder( wxEVT_AUINOTEBOOK_TAB_RIGHT_UP, 1 )
|
||||
EVT_AUINOTEBOOK_BG_DCLICK = wx.PyEventBinder( wxEVT_AUINOTEBOOK_BG_DCLICK, 1 )
|
||||
""")
|
||||
|
||||
|
||||
|
||||
|
||||
#-----------------------------------------------------------------
|
||||
tools.doCommonTweaks(module)
|
||||
tools.runGenerators(module)
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
if __name__ == '__main__':
|
||||
run()
|
||||
|
||||
48
etg/auidockart.py
Normal file
48
etg/auidockart.py
Normal file
@@ -0,0 +1,48 @@
|
||||
#---------------------------------------------------------------------------
|
||||
# Name: etg/auidockart.py
|
||||
# Author: Robin Dunn
|
||||
#
|
||||
# Created: 26-Oct-2016
|
||||
# Copyright: (c) 2016 by Total Control Software
|
||||
# License: wxWindows License
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
import etgtools
|
||||
import etgtools.tweaker_tools as tools
|
||||
|
||||
PACKAGE = "wx"
|
||||
MODULE = "_aui"
|
||||
NAME = "auidockart" # 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 = [ 'wxAuiDockArt',
|
||||
'wxAuiDefaultDockArt',
|
||||
]
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
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.
|
||||
|
||||
|
||||
c = module.find('wxAuiDockArt')
|
||||
assert isinstance(c, etgtools.ClassDef)
|
||||
|
||||
|
||||
#-----------------------------------------------------------------
|
||||
tools.doCommonTweaks(module)
|
||||
tools.runGenerators(module)
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
if __name__ == '__main__':
|
||||
run()
|
||||
|
||||
88
etg/auiframemanager.py
Normal file
88
etg/auiframemanager.py
Normal file
@@ -0,0 +1,88 @@
|
||||
#---------------------------------------------------------------------------
|
||||
# Name: etg/auiframemanager.py
|
||||
# Author: Robin Dunn
|
||||
#
|
||||
# Created: 25-Oct-2016
|
||||
# Copyright: (c) 2016 by Total Control Software
|
||||
# License: wxWindows License
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
import etgtools
|
||||
import etgtools.tweaker_tools as tools
|
||||
|
||||
PACKAGE = "wx"
|
||||
MODULE = "_aui"
|
||||
NAME = "auiframemanager" # 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 = [ 'wxAuiManager',
|
||||
'wxAuiPaneInfo',
|
||||
'wxAuiManagerEvent',
|
||||
'wxAuiDockInfo',
|
||||
'wxAuiDockUIPart',
|
||||
'wxAuiPaneButton',
|
||||
]
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
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.
|
||||
|
||||
|
||||
c = module.find('wxAuiManager')
|
||||
assert isinstance(c, etgtools.ClassDef)
|
||||
c.find('ProcessDockResult').ignore(False)
|
||||
|
||||
c = module.find('wxAuiPaneInfo')
|
||||
module.addItem(
|
||||
tools.wxArrayWrapperTemplate(
|
||||
'wxAuiPaneInfoArray', 'wxAuiPaneInfo', module))
|
||||
|
||||
|
||||
c = module.find('wxAuiManagerEvent')
|
||||
tools.fixEventClass(c)
|
||||
|
||||
c.addPyCode("""\
|
||||
EVT_AUI_PANE_BUTTON = wx.PyEventBinder( wxEVT_AUI_PANE_BUTTON )
|
||||
EVT_AUI_PANE_CLOSE = wx.PyEventBinder( wxEVT_AUI_PANE_CLOSE )
|
||||
EVT_AUI_PANE_MAXIMIZE = wx.PyEventBinder( wxEVT_AUI_PANE_MAXIMIZE )
|
||||
EVT_AUI_PANE_RESTORE = wx.PyEventBinder( wxEVT_AUI_PANE_RESTORE )
|
||||
EVT_AUI_PANE_ACTIVATED = wx.PyEventBinder( wxEVT_AUI_PANE_ACTIVATED )
|
||||
EVT_AUI_RENDER = wx.PyEventBinder( wxEVT_AUI_RENDER )
|
||||
EVT_AUI_FIND_MANAGER = wx.PyEventBinder( wxEVT_AUI_FIND_MANAGER )
|
||||
""")
|
||||
|
||||
|
||||
module.addItem(tools.wxArrayWrapperTemplate(
|
||||
'wxAuiDockInfoArray', 'wxAuiDockInfo', module))
|
||||
|
||||
module.addItem(tools.wxArrayWrapperTemplate(
|
||||
'wxAuiDockUIPartArray', 'wxAuiDockUIPart', module))
|
||||
|
||||
module.addItem(tools.wxArrayWrapperTemplate(
|
||||
'wxAuiPaneButtonArray', 'wxAuiPaneButton', module))
|
||||
|
||||
module.addItem(tools.wxArrayWrapperTemplate(
|
||||
'wxAuiPaneInfoPtrArray', 'wxAuiPaneInfo', module, itemIsPtr=True))
|
||||
|
||||
module.addItem(tools.wxArrayWrapperTemplate(
|
||||
'wxAuiDockInfoPtrArray', 'wxAuiDockInfo', module, itemIsPtr=True))
|
||||
|
||||
|
||||
#-----------------------------------------------------------------
|
||||
tools.doCommonTweaks(module)
|
||||
tools.runGenerators(module)
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
if __name__ == '__main__':
|
||||
run()
|
||||
|
||||
59
etg/auitabmdi.py
Normal file
59
etg/auitabmdi.py
Normal file
@@ -0,0 +1,59 @@
|
||||
#---------------------------------------------------------------------------
|
||||
# Name: etg/auitabmdi.py
|
||||
# Author: Robin Dunn
|
||||
#
|
||||
# Created: 27-Oct-2016
|
||||
# Copyright: (c) 2016 by Total Control Software
|
||||
# License: wxWindows License
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
import etgtools
|
||||
import etgtools.tweaker_tools as tools
|
||||
|
||||
PACKAGE = "wx"
|
||||
MODULE = "_aui"
|
||||
NAME = "auitabmdi" # 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 = [ 'wxAuiMDIParentFrame',
|
||||
'wxAuiMDIChildFrame',
|
||||
'wxAuiMDIClientWindow',
|
||||
]
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
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.
|
||||
|
||||
|
||||
c = module.find('wxAuiMDIParentFrame')
|
||||
assert isinstance(c, etgtools.ClassDef)
|
||||
tools.fixTopLevelWindowClass(c)
|
||||
|
||||
|
||||
c = module.find('wxAuiMDIChildFrame')
|
||||
tools.fixTopLevelWindowClass(c)
|
||||
tools.fixSetStatusWidths(c.find('SetStatusWidths'))
|
||||
|
||||
|
||||
c = module.find('wxAuiMDIClientWindow')
|
||||
tools.fixWindowClass(c)
|
||||
|
||||
|
||||
#-----------------------------------------------------------------
|
||||
tools.doCommonTweaks(module)
|
||||
tools.runGenerators(module)
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
if __name__ == '__main__':
|
||||
run()
|
||||
|
||||
12
etg/frame.py
12
etg/frame.py
@@ -40,16 +40,8 @@ def run():
|
||||
|
||||
# We already have a MappedType for wxArrayInt, so just tweak the
|
||||
# interface to use that instead of an array size and a const int pointer.
|
||||
m = c.find('SetStatusWidths')
|
||||
m.find('n').ignore()
|
||||
m.find('widths_field').type = 'const wxArrayInt&'
|
||||
m.find('widths_field').name = 'widths'
|
||||
m.argsString = '(int n, const wxArrayInt& widths)'
|
||||
m.setCppCode("""\
|
||||
const int* ptr = &widths->front();
|
||||
self->SetStatusWidths(widths->size(), ptr);
|
||||
""")
|
||||
|
||||
tools.fixSetStatusWidths(c.find('SetStatusWidths'))
|
||||
|
||||
c.addProperty('MenuBar GetMenuBar SetMenuBar')
|
||||
c.addProperty('StatusBar GetStatusBar SetStatusBar')
|
||||
c.addProperty('StatusBarPane GetStatusBarPane SetStatusBarPane')
|
||||
|
||||
@@ -37,16 +37,8 @@ def run():
|
||||
|
||||
# We already have a MappedType for wxArrayInt, so just tweak the
|
||||
# interface to use that instead of an array size and a const int pointer.
|
||||
m = c.find('SetStatusWidths')
|
||||
m.find('n').ignore()
|
||||
m.find('widths_field').type = 'const wxArrayInt&'
|
||||
m.find('widths_field').name = 'widths'
|
||||
m.argsString = '(int n, const wxArrayInt& widths)'
|
||||
m.setCppCode("""\
|
||||
const int* ptr = &widths->front();
|
||||
self->SetStatusWidths(widths->size(), ptr);
|
||||
""")
|
||||
|
||||
tools.fixSetStatusWidths(c.find('SetStatusWidths'))
|
||||
|
||||
# Same thing for SetStatusStyles
|
||||
m = c.find('SetStatusStyles')
|
||||
m.find('n').ignore()
|
||||
|
||||
44
etg/stockitem.py
Normal file
44
etg/stockitem.py
Normal file
@@ -0,0 +1,44 @@
|
||||
#---------------------------------------------------------------------------
|
||||
# Name: etg/stockitem.py
|
||||
# Author: Robin Dunn
|
||||
#
|
||||
# Created: 28-Oct-2016
|
||||
# Copyright: (c) 2016 by Total Control Software
|
||||
# License: wxWindows License
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
import etgtools
|
||||
import etgtools.tweaker_tools as tools
|
||||
|
||||
PACKAGE = "wx"
|
||||
MODULE = "_core"
|
||||
NAME = "stockitem" # 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 = [ 'stockitem_8h.xml',
|
||||
]
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
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.
|
||||
|
||||
|
||||
|
||||
#-----------------------------------------------------------------
|
||||
tools.doCommonTweaks(module)
|
||||
tools.runGenerators(module)
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
if __name__ == '__main__':
|
||||
run()
|
||||
|
||||
@@ -1150,6 +1150,9 @@ class Image(Node):
|
||||
image_path = os.path.normpath(os.path.join(DOXYROOT, 'images', value))
|
||||
static_path = os.path.join(OVERVIEW_IMAGES_ROOT, os.path.split(image_path)[1])
|
||||
|
||||
if not os.path.exists(image_path):
|
||||
return ''
|
||||
|
||||
if not os.path.isfile(static_path):
|
||||
shutil.copyfile(image_path, static_path)
|
||||
|
||||
|
||||
@@ -262,9 +262,9 @@ def fixWindowClass(klass, hideVirtuals=True, ignoreProtected=True):
|
||||
for item in klass.allItems():
|
||||
if isinstance(item, extractors.MethodDef) and item.protection == 'protected':
|
||||
item.ignore(False)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
def fixTopLevelWindowClass(klass, hideVirtuals=True, ignoreProtected=True):
|
||||
"""
|
||||
Tweaks for TLWs
|
||||
@@ -275,11 +275,13 @@ def fixTopLevelWindowClass(klass, hideVirtuals=True, ignoreProtected=True):
|
||||
item = klass.findItem('Create')
|
||||
if item:
|
||||
item.transferThis = True
|
||||
|
||||
|
||||
# give the id param a default value
|
||||
for item in [klass.findItem('%s.id' % klass.name), klass.findItem('Create.id')]:
|
||||
if item:
|
||||
item.default = 'wxID_ANY'
|
||||
for name in ['id', 'winid']:
|
||||
for item in [klass.findItem('%s.%s' % (klass.name, name)),
|
||||
klass.findItem('Create.%s' % name)]:
|
||||
if item:
|
||||
item.default = 'wxID_ANY'
|
||||
|
||||
# give title param a default too if it needs it
|
||||
for item in [klass.findItem('%s.title' % klass.name), klass.findItem('Create.title')]:
|
||||
@@ -289,14 +291,14 @@ def fixTopLevelWindowClass(klass, hideVirtuals=True, ignoreProtected=True):
|
||||
if hideVirtuals:
|
||||
removeVirtuals(klass)
|
||||
addWindowVirtuals(klass)
|
||||
|
||||
|
||||
if not ignoreProtected:
|
||||
for item in klass.allItems():
|
||||
if isinstance(item, extractors.MethodDef) and item.protection == 'protected':
|
||||
item.ignore(False)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
def fixSizerClass(klass):
|
||||
"""
|
||||
Remove all virtuals except for CalcMin and RecalcSizes.
|
||||
@@ -344,7 +346,21 @@ def fixHtmlSetFonts(klass):
|
||||
}
|
||||
self->SetFonts(*normal_face, *fixed_face, &sizes->Item(0));
|
||||
""")
|
||||
|
||||
|
||||
|
||||
def fixSetStatusWidths(m):
|
||||
# We already have a MappedType for wxArrayInt, so just tweak the
|
||||
# interface to use that instead of an array size and a const int pointer.
|
||||
m.find('n').ignore()
|
||||
m.find('widths_field').type = 'const wxArrayInt&'
|
||||
m.find('widths_field').name = 'widths'
|
||||
m.argsString = '(int n, const wxArrayInt& widths)'
|
||||
m.setCppCode("""\
|
||||
const int* ptr = &widths->front();
|
||||
self->SetStatusWidths(widths->size(), ptr);
|
||||
""")
|
||||
|
||||
|
||||
|
||||
def removeVirtuals(klass):
|
||||
"""
|
||||
@@ -360,7 +376,7 @@ def removeVirtuals(klass):
|
||||
|
||||
def addWindowVirtuals(klass):
|
||||
"""
|
||||
Either turn the virtual flag back on or add a delcaration for the subset of
|
||||
Either turn the virtual flag back on or add a declaration for the subset of
|
||||
the C++ virtuals in wxWindow classes that we will be supporting.
|
||||
"""
|
||||
publicWindowVirtuals = [
|
||||
@@ -954,10 +970,13 @@ del _{ListClass_pyName}___repr__
|
||||
|
||||
|
||||
|
||||
def wxArrayWrapperTemplate(ArrayClass, ItemClass, module):
|
||||
def wxArrayWrapperTemplate(ArrayClass, ItemClass, module, itemIsPtr=False):
|
||||
moduleName = module.module
|
||||
ArrayClass_pyName = removeWxPrefix(ArrayClass)
|
||||
|
||||
itemRef = '*' if itemIsPtr else '&'
|
||||
itemDeref = '' if itemIsPtr else '*'
|
||||
addrOf = '' if itemIsPtr else '&'
|
||||
|
||||
# *** TODO: This can probably be done in a way that is not SIP-specfic.
|
||||
# Try creating extractor objects from scratch and attach cppMethods to
|
||||
# them as needed, etc..
|
||||
@@ -971,10 +990,10 @@ public:
|
||||
sipRes = sipCpp->GetCount();
|
||||
%End
|
||||
|
||||
{ItemClass}& __getitem__(ulong index);
|
||||
{ItemClass}{itemRef} __getitem__(ulong index);
|
||||
%MethodCode
|
||||
if (index < sipCpp->GetCount()) {{
|
||||
sipRes = &sipCpp->Item(index);
|
||||
sipRes = {addrOf}sipCpp->Item(index);
|
||||
}}
|
||||
else {{
|
||||
wxPyErr_SetString(PyExc_IndexError, "sequence index out of range");
|
||||
@@ -982,21 +1001,21 @@ public:
|
||||
}}
|
||||
%End
|
||||
|
||||
int __contains__(const {ItemClass}& obj);
|
||||
int __contains__({ItemClass}{itemRef} obj);
|
||||
%MethodCode
|
||||
int idx = sipCpp->Index(*obj, false);
|
||||
int idx = sipCpp->Index({itemDeref}obj, false);
|
||||
sipRes = idx != wxNOT_FOUND;
|
||||
%End
|
||||
|
||||
void append(const {ItemClass}& obj);
|
||||
void append({ItemClass}{itemRef} obj);
|
||||
%MethodCode
|
||||
sipCpp->Add(*obj);
|
||||
sipCpp->Add({itemDeref}obj);
|
||||
%End
|
||||
|
||||
// TODO: add support for index(value, [start, [stop]])
|
||||
int index(const {ItemClass}& obj);
|
||||
int index({ItemClass}{itemRef} obj);
|
||||
%MethodCode
|
||||
int idx = sipCpp->Index(*obj, false);
|
||||
int idx = sipCpp->Index({itemDeref}obj, false);
|
||||
if (idx == wxNOT_FOUND) {{
|
||||
sipError = sipErrorFail;
|
||||
wxPyErr_SetString(PyExc_ValueError,
|
||||
|
||||
Submodule ext/wxWidgets updated: 80e2614bac...1cdab48bc3
@@ -85,6 +85,7 @@ MODULENAME_REPLACE = {'_core' : 'wx.',
|
||||
'_msw' : 'wx.msw.',
|
||||
'_ribbon' : 'wx.ribbon.',
|
||||
'_propgrid': 'wx.propgrid.',
|
||||
'_aui' : 'wx.aui.',
|
||||
}
|
||||
|
||||
|
||||
|
||||
79
unittests/test_auibar.py
Normal file
79
unittests/test_auibar.py
Normal file
@@ -0,0 +1,79 @@
|
||||
import unittest
|
||||
from unittests import wtc
|
||||
import wx
|
||||
import wx.aui
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
class auibar_Tests(wtc.WidgetTestCase):
|
||||
|
||||
def test_auibar01(self):
|
||||
wx.aui.AUI_TB_TEXT
|
||||
wx.aui.AUI_TB_NO_TOOLTIPS
|
||||
wx.aui.AUI_TB_NO_AUTORESIZE
|
||||
wx.aui.AUI_TB_GRIPPER
|
||||
wx.aui.AUI_TB_OVERFLOW
|
||||
wx.aui.AUI_TB_VERTICAL
|
||||
wx.aui.AUI_TB_HORZ_LAYOUT
|
||||
wx.aui.AUI_TB_HORIZONTAL
|
||||
wx.aui.AUI_TB_PLAIN_BACKGROUND
|
||||
wx.aui.AUI_TB_HORZ_TEXT
|
||||
wx.aui.AUI_ORIENTATION_MASK
|
||||
wx.aui.AUI_TB_DEFAULT_STYLE
|
||||
wx.aui.AUI_TBART_SEPARATOR_SIZE
|
||||
wx.aui.AUI_TBART_GRIPPER_SIZE
|
||||
wx.aui.AUI_TBART_OVERFLOW_SIZE
|
||||
wx.aui.AUI_TBTOOL_TEXT_LEFT
|
||||
wx.aui.AUI_TBTOOL_TEXT_RIGHT
|
||||
wx.aui.AUI_TBTOOL_TEXT_TOP
|
||||
wx.aui.AUI_TBTOOL_TEXT_BOTTOM
|
||||
|
||||
|
||||
|
||||
def test_auibar02(self):
|
||||
evt = wx.aui.AuiToolBarEvent()
|
||||
|
||||
|
||||
def test_auibar03(self):
|
||||
wx.aui.wxEVT_AUITOOLBAR_TOOL_DROPDOWN
|
||||
wx.aui.wxEVT_AUITOOLBAR_OVERFLOW_CLICK
|
||||
wx.aui.wxEVT_AUITOOLBAR_RIGHT_CLICK
|
||||
wx.aui.wxEVT_AUITOOLBAR_MIDDLE_CLICK
|
||||
wx.aui.wxEVT_AUITOOLBAR_BEGIN_DRAG
|
||||
|
||||
wx.aui.EVT_AUITOOLBAR_TOOL_DROPDOWN
|
||||
wx.aui.EVT_AUITOOLBAR_OVERFLOW_CLICK
|
||||
wx.aui.EVT_AUITOOLBAR_RIGHT_CLICK
|
||||
wx.aui.EVT_AUITOOLBAR_MIDDLE_CLICK
|
||||
wx.aui.EVT_AUITOOLBAR_BEGIN_DRAG
|
||||
|
||||
|
||||
|
||||
def test_auibar04(self):
|
||||
obj = wx.aui.AuiToolBarItem()
|
||||
|
||||
|
||||
def test_auibar05(self):
|
||||
with self.assertRaises(TypeError):
|
||||
obj = wx.aui.AuiToolBarArt()
|
||||
|
||||
|
||||
def test_auibar06(self):
|
||||
obj = wx.aui.AuiDefaultToolBarArt()
|
||||
|
||||
|
||||
|
||||
def test_auibar07(self):
|
||||
tbar = wx.aui.AuiToolBar(self.frame)
|
||||
|
||||
|
||||
def test_auibar08(self):
|
||||
tbar = wx.aui.AuiToolBar()
|
||||
tbar.Create(self.frame)
|
||||
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
104
unittests/test_auibook.py
Normal file
104
unittests/test_auibook.py
Normal file
@@ -0,0 +1,104 @@
|
||||
import unittest
|
||||
from unittests import wtc
|
||||
import wx
|
||||
import wx.aui
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
class auibook_Tests(wtc.WidgetTestCase):
|
||||
|
||||
def test_auibook01(self):
|
||||
wx.aui.AUI_NB_TOP
|
||||
wx.aui.AUI_NB_LEFT
|
||||
wx.aui.AUI_NB_RIGHT
|
||||
wx.aui.AUI_NB_BOTTOM
|
||||
wx.aui.AUI_NB_TAB_SPLIT
|
||||
wx.aui.AUI_NB_TAB_MOVE
|
||||
wx.aui.AUI_NB_TAB_EXTERNAL_MOVE
|
||||
wx.aui.AUI_NB_TAB_FIXED_WIDTH
|
||||
wx.aui.AUI_NB_SCROLL_BUTTONS
|
||||
wx.aui.AUI_NB_WINDOWLIST_BUTTON
|
||||
wx.aui.AUI_NB_CLOSE_BUTTON
|
||||
wx.aui.AUI_NB_CLOSE_ON_ACTIVE_TAB
|
||||
wx.aui.AUI_NB_CLOSE_ON_ALL_TABS
|
||||
wx.aui.AUI_NB_MIDDLE_CLICK_CLOSE
|
||||
wx.aui.AUI_NB_DEFAULT_STYLE
|
||||
|
||||
|
||||
|
||||
def test_auibook02(self):
|
||||
nb = wx.aui.AuiNotebook()
|
||||
nb.Create(self.frame)
|
||||
|
||||
|
||||
def test_auibook03(self):
|
||||
nb = wx.aui.AuiNotebook(self.frame)
|
||||
nb.AddPage(wx.Panel(nb), "Page")
|
||||
|
||||
|
||||
def test_auibook04(self):
|
||||
obj = wx.aui.AuiNotebookPage()
|
||||
|
||||
|
||||
def test_auibook05(self):
|
||||
obj = wx.aui.AuiTabContainerButton()
|
||||
|
||||
|
||||
def test_auibook06(self):
|
||||
obj = wx.aui.AuiTabContainer()
|
||||
|
||||
|
||||
def test_auibook07(self):
|
||||
with self.assertRaises(TypeError):
|
||||
obj = wx.aui.AuiTabArt()
|
||||
|
||||
|
||||
def test_auibook08(self):
|
||||
obj = wx.aui.AuiDefaultTabArt()
|
||||
|
||||
|
||||
def test_auibook09(self):
|
||||
obj = wx.aui.AuiSimpleTabArt()
|
||||
|
||||
|
||||
def test_auibook10(self):
|
||||
evt = wx.aui.AuiNotebookEvent()
|
||||
|
||||
wx.aui.wxEVT_AUINOTEBOOK_PAGE_CLOSE
|
||||
wx.aui.wxEVT_AUINOTEBOOK_PAGE_CLOSED
|
||||
wx.aui.wxEVT_AUINOTEBOOK_PAGE_CHANGED
|
||||
wx.aui.wxEVT_AUINOTEBOOK_PAGE_CHANGING
|
||||
wx.aui.wxEVT_AUINOTEBOOK_BUTTON
|
||||
wx.aui.wxEVT_AUINOTEBOOK_BEGIN_DRAG
|
||||
wx.aui.wxEVT_AUINOTEBOOK_END_DRAG
|
||||
wx.aui.wxEVT_AUINOTEBOOK_DRAG_MOTION
|
||||
wx.aui.wxEVT_AUINOTEBOOK_ALLOW_DND
|
||||
wx.aui.wxEVT_AUINOTEBOOK_DRAG_DONE
|
||||
wx.aui.wxEVT_AUINOTEBOOK_TAB_MIDDLE_DOWN
|
||||
wx.aui.wxEVT_AUINOTEBOOK_TAB_MIDDLE_UP
|
||||
wx.aui.wxEVT_AUINOTEBOOK_TAB_RIGHT_DOWN
|
||||
wx.aui.wxEVT_AUINOTEBOOK_TAB_RIGHT_UP
|
||||
wx.aui.wxEVT_AUINOTEBOOK_BG_DCLICK
|
||||
|
||||
wx.aui.EVT_AUINOTEBOOK_PAGE_CLOSE
|
||||
wx.aui.EVT_AUINOTEBOOK_PAGE_CLOSED
|
||||
wx.aui.EVT_AUINOTEBOOK_PAGE_CHANGED
|
||||
wx.aui.EVT_AUINOTEBOOK_PAGE_CHANGING
|
||||
wx.aui.EVT_AUINOTEBOOK_BUTTON
|
||||
wx.aui.EVT_AUINOTEBOOK_BEGIN_DRAG
|
||||
wx.aui.EVT_AUINOTEBOOK_END_DRAG
|
||||
wx.aui.EVT_AUINOTEBOOK_DRAG_MOTION
|
||||
wx.aui.EVT_AUINOTEBOOK_ALLOW_DND
|
||||
wx.aui.EVT_AUINOTEBOOK_DRAG_DONE
|
||||
wx.aui.EVT_AUINOTEBOOK_TAB_MIDDLE_DOWN
|
||||
wx.aui.EVT_AUINOTEBOOK_TAB_MIDDLE_UP
|
||||
wx.aui.EVT_AUINOTEBOOK_TAB_RIGHT_DOWN
|
||||
wx.aui.EVT_AUINOTEBOOK_TAB_RIGHT_UP
|
||||
wx.aui.EVT_AUINOTEBOOK_BG_DCLICK
|
||||
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
66
unittests/test_auidockart.py
Normal file
66
unittests/test_auidockart.py
Normal file
@@ -0,0 +1,66 @@
|
||||
import unittest
|
||||
from unittests import wtc
|
||||
import wx
|
||||
import wx.aui
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
class auidockart_Tests(wtc.WidgetTestCase):
|
||||
|
||||
def test_auidockart01(self):
|
||||
wx.aui.AUI_DOCKART_SASH_SIZE
|
||||
wx.aui.AUI_DOCKART_CAPTION_SIZE
|
||||
wx.aui.AUI_DOCKART_GRIPPER_SIZE
|
||||
wx.aui.AUI_DOCKART_PANE_BORDER_SIZE
|
||||
wx.aui.AUI_DOCKART_PANE_BUTTON_SIZE
|
||||
wx.aui.AUI_DOCKART_BACKGROUND_COLOUR
|
||||
wx.aui.AUI_DOCKART_SASH_COLOUR
|
||||
wx.aui.AUI_DOCKART_ACTIVE_CAPTION_COLOUR
|
||||
wx.aui.AUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR
|
||||
wx.aui.AUI_DOCKART_INACTIVE_CAPTION_COLOUR
|
||||
wx.aui.AUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR
|
||||
wx.aui.AUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR
|
||||
wx.aui.AUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR
|
||||
wx.aui.AUI_DOCKART_BORDER_COLOUR
|
||||
wx.aui.AUI_DOCKART_GRIPPER_COLOUR
|
||||
wx.aui.AUI_DOCKART_CAPTION_FONT
|
||||
wx.aui.AUI_DOCKART_GRADIENT_TYPE
|
||||
wx.aui.AUI_GRADIENT_NONE
|
||||
wx.aui.AUI_GRADIENT_VERTICAL
|
||||
wx.aui.AUI_GRADIENT_HORIZONTAL
|
||||
wx.aui.AUI_BUTTON_STATE_NORMAL
|
||||
wx.aui.AUI_BUTTON_STATE_HOVER
|
||||
wx.aui.AUI_BUTTON_STATE_PRESSED
|
||||
wx.aui.AUI_BUTTON_STATE_DISABLED
|
||||
wx.aui.AUI_BUTTON_STATE_HIDDEN
|
||||
wx.aui.AUI_BUTTON_STATE_CHECKED
|
||||
wx.aui.AUI_BUTTON_CLOSE
|
||||
wx.aui.AUI_BUTTON_MAXIMIZE_RESTORE
|
||||
wx.aui.AUI_BUTTON_MINIMIZE
|
||||
wx.aui.AUI_BUTTON_PIN
|
||||
wx.aui.AUI_BUTTON_OPTIONS
|
||||
wx.aui.AUI_BUTTON_WINDOWLIST
|
||||
wx.aui.AUI_BUTTON_LEFT
|
||||
wx.aui.AUI_BUTTON_RIGHT
|
||||
wx.aui.AUI_BUTTON_UP
|
||||
wx.aui.AUI_BUTTON_DOWN
|
||||
wx.aui.AUI_BUTTON_CUSTOM1
|
||||
wx.aui.AUI_BUTTON_CUSTOM2
|
||||
wx.aui.AUI_BUTTON_CUSTOM3
|
||||
|
||||
|
||||
|
||||
def test_auidockart02(self):
|
||||
with self.assertRaises(TypeError):
|
||||
da = wx.aui.AuiDockArt()
|
||||
|
||||
|
||||
def test_auidockart03(self):
|
||||
da = wx.aui.AuiDefaultDockArt()
|
||||
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
108
unittests/test_auiframemanager.py
Normal file
108
unittests/test_auiframemanager.py
Normal file
@@ -0,0 +1,108 @@
|
||||
import unittest
|
||||
from unittests import wtc
|
||||
import wx
|
||||
import wx.aui
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
class auiframemanager_Tests(wtc.WidgetTestCase):
|
||||
|
||||
def test_auiframemanager01(self):
|
||||
wx.aui.AUI_DOCK_NONE
|
||||
wx.aui.AUI_DOCK_TOP
|
||||
wx.aui.AUI_DOCK_RIGHT
|
||||
wx.aui.AUI_DOCK_BOTTOM
|
||||
wx.aui.AUI_DOCK_LEFT
|
||||
wx.aui.AUI_DOCK_CENTER
|
||||
wx.aui.AUI_DOCK_CENTRE
|
||||
|
||||
wx.aui.AUI_MGR_ALLOW_FLOATING
|
||||
wx.aui.AUI_MGR_ALLOW_ACTIVE_PANE
|
||||
wx.aui.AUI_MGR_TRANSPARENT_DRAG
|
||||
wx.aui.AUI_MGR_TRANSPARENT_HINT
|
||||
wx.aui.AUI_MGR_VENETIAN_BLINDS_HINT
|
||||
wx.aui.AUI_MGR_RECTANGLE_HINT
|
||||
wx.aui.AUI_MGR_HINT_FADE
|
||||
wx.aui.AUI_MGR_NO_VENETIAN_BLINDS_FADE
|
||||
wx.aui.AUI_MGR_LIVE_RESIZE
|
||||
wx.aui.AUI_MGR_DEFAULT
|
||||
|
||||
|
||||
|
||||
def test_auiframemanager02(self):
|
||||
wx.aui.EVT_AUI_PANE_BUTTON
|
||||
wx.aui.EVT_AUI_PANE_CLOSE
|
||||
wx.aui.EVT_AUI_PANE_MAXIMIZE
|
||||
wx.aui.EVT_AUI_PANE_RESTORE
|
||||
wx.aui.EVT_AUI_PANE_ACTIVATED
|
||||
wx.aui.EVT_AUI_RENDER
|
||||
wx.aui.EVT_AUI_FIND_MANAGER
|
||||
|
||||
wx.aui.wxEVT_AUI_PANE_BUTTON
|
||||
wx.aui.wxEVT_AUI_PANE_CLOSE
|
||||
wx.aui.wxEVT_AUI_PANE_MAXIMIZE
|
||||
wx.aui.wxEVT_AUI_PANE_RESTORE
|
||||
wx.aui.wxEVT_AUI_PANE_ACTIVATED
|
||||
wx.aui.wxEVT_AUI_RENDER
|
||||
wx.aui.wxEVT_AUI_FIND_MANAGER
|
||||
|
||||
|
||||
|
||||
def test_auiframemanager03(self):
|
||||
mgr = wx.aui.AuiManager(self.frame)
|
||||
mgr.AddPane( wx.Panel(self.frame),
|
||||
wx.aui.AuiPaneInfo().Top().Caption('caption').Dock())
|
||||
mgr.Update()
|
||||
self.myYield()
|
||||
mgr.UnInit()
|
||||
|
||||
|
||||
def test_auiframemanager04(self):
|
||||
mgr = wx.aui.AuiManager()
|
||||
mgr.SetManagedWindow(self.frame)
|
||||
mgr.AddPane( wx.Panel(self.frame),
|
||||
wx.aui.AuiPaneInfo().Top().Caption('caption').Dock())
|
||||
mgr.Update()
|
||||
self.myYield()
|
||||
mgr.UnInit()
|
||||
|
||||
|
||||
|
||||
def test_auiframemanager05(self):
|
||||
pi = wx.aui.AuiPaneInfo()
|
||||
pi.BestSize((5,6))
|
||||
assert pi.best_size == (5,6)
|
||||
pi.BestSize(wx.Size(7,8))
|
||||
assert pi.best_size == (7,8)
|
||||
pi.BestSize(1, 2)
|
||||
assert pi.best_size == (1,2)
|
||||
|
||||
|
||||
|
||||
def test_auiframemanager06(self):
|
||||
pi = wx.aui.AuiPaneInfo().Center().Caption("hello").DefaultPane().CloseButton().Floatable()
|
||||
|
||||
|
||||
def test_auiframemanager07(self):
|
||||
pi1 = wx.aui.AuiPaneInfo().BestSize(12,34)
|
||||
pi2 = wx.aui.AuiPaneInfo(pi1)
|
||||
assert pi1 is not pi2
|
||||
assert pi1.best_size == pi2.best_size
|
||||
|
||||
|
||||
def test_auiframemanager08(self):
|
||||
obj = wx.aui.AuiDockInfo()
|
||||
|
||||
|
||||
def test_auiframemanager09(self):
|
||||
obj = wx.aui.AuiDockUIPart()
|
||||
|
||||
|
||||
def test_auiframemanager10(self):
|
||||
obj = wx.aui.AuiPaneButton()
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
24
unittests/test_auitabmdi.py
Normal file
24
unittests/test_auitabmdi.py
Normal file
@@ -0,0 +1,24 @@
|
||||
import unittest
|
||||
from unittests import wtc
|
||||
import wx
|
||||
import wx.aui
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
class auitabmdi_Tests(wtc.WidgetTestCase):
|
||||
|
||||
def test_auitabmdi01(self):
|
||||
parent = wx.aui.AuiMDIParentFrame(self.frame, title='AUI MDI')
|
||||
child = wx.aui.AuiMDIChildFrame(parent, title='Child')
|
||||
|
||||
parent.Show()
|
||||
self.myYield()
|
||||
child.Close()
|
||||
self.myYield()
|
||||
parent.Close()
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
16
unittests/test_stockitem.py
Normal file
16
unittests/test_stockitem.py
Normal file
@@ -0,0 +1,16 @@
|
||||
import unittest
|
||||
from unittests import wtc
|
||||
import wx
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
class stockitem_Tests(wtc.WidgetTestCase):
|
||||
|
||||
# TODO: Remove this test and add real ones.
|
||||
def test_stockitem1(self):
|
||||
self.fail("Unit tests for stockitem not implemented yet.")
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
9
wscript
9
wscript
@@ -142,6 +142,9 @@ def configure(conf):
|
||||
_copyEnvGroup(conf.env, '_WX', '_WXPROPGRID')
|
||||
conf.env.LIB_WXPROPGRID += cfg.makeLibName('propgrid')
|
||||
|
||||
_copyEnvGroup(conf.env, '_WX', '_WXAUI')
|
||||
conf.env.LIB_WXPAUI += cfg.makeLibName('aui')
|
||||
|
||||
# ** Add code for new modules here (and below for non-MSW)
|
||||
|
||||
# tweak the PYEXT compile and link flags if making a --debug build
|
||||
@@ -236,6 +239,10 @@ def configure(conf):
|
||||
args='--cxxflags --libs propgrid,core' + rpath,
|
||||
uselib_store='WXPROPGRID', mandatory=True)
|
||||
|
||||
conf.check_cfg(path=conf.options.wx_config, package='',
|
||||
args='--cxxflags --libs aui,core' + rpath,
|
||||
uselib_store='WXAUI', mandatory=True)
|
||||
|
||||
# ** Add code for new modules here
|
||||
|
||||
|
||||
@@ -528,7 +535,9 @@ def build(bld):
|
||||
makeETGRule(bld, 'etg/_media.py', '_media', 'WXMEDIA')
|
||||
makeETGRule(bld, 'etg/_ribbon.py', '_ribbon', 'WXRIBBON')
|
||||
makeETGRule(bld, 'etg/_propgrid.py', '_propgrid', 'WXPROPGRID')
|
||||
makeETGRule(bld, 'etg/_aui.py', '_aui', 'WXAUI')
|
||||
|
||||
# Modules that are platform-specific
|
||||
if isDarwin:
|
||||
makeETGRule(bld, 'etg/_webkit.py', '_webkit', 'WXWEBKIT')
|
||||
if isWindows:
|
||||
|
||||
Reference in New Issue
Block a user