1//-------------------------------------------------------------------------- 2// Name: src/stockobj.sip 3// Purpose: Wrapper definition and some Python code for wxStockGDI and 4// using it to initialize the stock objects like wx.BLUE_BRUSH, 5// etc. We're putting it here because wxStockGDI is not 6// documented, and probably should not be. 7// 8// Author: Robin Dunn 9// 10// Created: 18-Sept-2011 11// Copyright: (c) 2011-2018 by Total Control Software 12// Licence: wxWindows license 13//-------------------------------------------------------------------------- 14 15 16class wxStockGDI 17{ 18public: 19 enum Item { 20 BRUSH_BLACK, 21 BRUSH_BLUE, 22 BRUSH_CYAN, 23 BRUSH_GREEN, 24 BRUSH_YELLOW, 25 BRUSH_GREY, 26 BRUSH_LIGHTGREY, 27 BRUSH_MEDIUMGREY, 28 BRUSH_RED, 29 BRUSH_TRANSPARENT, 30 BRUSH_WHITE, 31 COLOUR_BLACK, 32 COLOUR_BLUE, 33 COLOUR_CYAN, 34 COLOUR_GREEN, 35 COLOUR_YELLOW, 36 COLOUR_LIGHTGREY, 37 COLOUR_RED, 38 COLOUR_WHITE, 39 CURSOR_CROSS, 40 CURSOR_HOURGLASS, 41 CURSOR_STANDARD, 42 FONT_ITALIC, 43 FONT_NORMAL, 44 FONT_SMALL, 45 FONT_SWISS, 46 PEN_BLACK, 47 PEN_BLACKDASHED, 48 PEN_BLUE, 49 PEN_CYAN, 50 PEN_GREEN, 51 PEN_YELLOW, 52 PEN_GREY, 53 PEN_LIGHTGREY, 54 PEN_MEDIUMGREY, 55 PEN_RED, 56 PEN_TRANSPARENT, 57 PEN_WHITE 58 }; 59 60 wxStockGDI(); 61 virtual ~wxStockGDI(); 62 static void DeleteAll(); 63 64 static wxStockGDI& instance(); 65 66 static const wxBrush* GetBrush(Item item); 67 static const wxColour* GetColour(Item item); 68 static const wxCursor* GetCursor(Item item); 69 static const wxPen* GetPen(Item item); 70 71 const wxFont* GetFont(Item item); 72 73 // Add some methods for fetching the various global gdi object lists so 74 // they can be set at app creation time too. 75 static wxFontList* _getTheFontList(); 76 %MethodCode 77 sipRes = wxTheFontList; 78 %End 79 80 static wxPenList* _getThePenList(); 81 %MethodCode 82 sipRes = wxThePenList; 83 %End 84 85 static wxBrushList* _getTheBrushList(); 86 %MethodCode 87 sipRes = wxTheBrushList; 88 %End 89 90 static wxColourDatabase* _getTheColourDatabase(); 91 %MethodCode 92 sipRes = wxTheColourDatabase; 93 %End 94 95 96private: 97 wxStockGDI(const wxStockGDI&); 98 wxStockGDI& operator=(const wxStockGDI&); 99}; 100 101%Extract(id=pycode_core) 102def _initStockObjects(): 103 import wx 104 wx.NORMAL_FONT._copyFrom( StockGDI.instance().GetFont(StockGDI.FONT_NORMAL)) 105 wx.SMALL_FONT._copyFrom( StockGDI.instance().GetFont(StockGDI.FONT_SMALL)) 106 wx.SWISS_FONT._copyFrom( StockGDI.instance().GetFont(StockGDI.FONT_SWISS)) 107 wx.ITALIC_FONT._copyFrom( StockGDI.instance().GetFont(StockGDI.FONT_ITALIC)) 108 109 wx.BLACK_DASHED_PEN._copyFrom( StockGDI.GetPen(StockGDI.PEN_BLACKDASHED)) 110 wx.BLACK_PEN._copyFrom( StockGDI.GetPen(StockGDI.PEN_BLACK)) 111 wx.BLUE_PEN._copyFrom( StockGDI.GetPen(StockGDI.PEN_BLUE)) 112 wx.CYAN_PEN._copyFrom( StockGDI.GetPen(StockGDI.PEN_CYAN)) 113 wx.GREEN_PEN._copyFrom( StockGDI.GetPen(StockGDI.PEN_GREEN)) 114 wx.YELLOW_PEN._copyFrom( StockGDI.GetPen(StockGDI.PEN_YELLOW)) 115 wx.GREY_PEN._copyFrom( StockGDI.GetPen(StockGDI.PEN_GREY)) 116 wx.LIGHT_GREY_PEN._copyFrom( StockGDI.GetPen(StockGDI.PEN_LIGHTGREY)) 117 wx.MEDIUM_GREY_PEN._copyFrom( StockGDI.GetPen(StockGDI.PEN_MEDIUMGREY)) 118 wx.RED_PEN._copyFrom( StockGDI.GetPen(StockGDI.PEN_RED)) 119 wx.TRANSPARENT_PEN._copyFrom( StockGDI.GetPen(StockGDI.PEN_TRANSPARENT)) 120 wx.WHITE_PEN._copyFrom( StockGDI.GetPen(StockGDI.PEN_WHITE)) 121 122 wx.BLACK_BRUSH._copyFrom( StockGDI.GetBrush(StockGDI.BRUSH_BLACK)) 123 wx.BLUE_BRUSH._copyFrom( StockGDI.GetBrush(StockGDI.BRUSH_BLUE)) 124 wx.CYAN_BRUSH._copyFrom( StockGDI.GetBrush(StockGDI.BRUSH_CYAN)) 125 wx.GREEN_BRUSH._copyFrom( StockGDI.GetBrush(StockGDI.BRUSH_GREEN)) 126 wx.YELLOW_BRUSH._copyFrom( StockGDI.GetBrush(StockGDI.BRUSH_YELLOW)) 127 wx.GREY_BRUSH._copyFrom( StockGDI.GetBrush(StockGDI.BRUSH_GREY)) 128 wx.LIGHT_GREY_BRUSH._copyFrom( StockGDI.GetBrush(StockGDI.BRUSH_LIGHTGREY)) 129 wx.MEDIUM_GREY_BRUSH._copyFrom( StockGDI.GetBrush(StockGDI.BRUSH_MEDIUMGREY)) 130 wx.RED_BRUSH._copyFrom( StockGDI.GetBrush(StockGDI.BRUSH_RED)) 131 wx.TRANSPARENT_BRUSH._copyFrom( StockGDI.GetBrush(StockGDI.BRUSH_TRANSPARENT)) 132 wx.WHITE_BRUSH._copyFrom( StockGDI.GetBrush(StockGDI.BRUSH_WHITE)) 133 134 wx.BLACK._copyFrom( StockGDI.GetColour(StockGDI.COLOUR_BLACK)) 135 wx.BLUE._copyFrom( StockGDI.GetColour(StockGDI.COLOUR_BLUE)) 136 wx.CYAN._copyFrom( StockGDI.GetColour(StockGDI.COLOUR_CYAN)) 137 wx.GREEN._copyFrom( StockGDI.GetColour(StockGDI.COLOUR_GREEN)) 138 wx.YELLOW._copyFrom( StockGDI.GetColour(StockGDI.COLOUR_YELLOW)) 139 wx.LIGHT_GREY._copyFrom( StockGDI.GetColour(StockGDI.COLOUR_LIGHTGREY)) 140 wx.RED._copyFrom( StockGDI.GetColour(StockGDI.COLOUR_RED)) 141 wx.WHITE._copyFrom( StockGDI.GetColour(StockGDI.COLOUR_WHITE)) 142 143 wx.CROSS_CURSOR._copyFrom( StockGDI.GetCursor(StockGDI.CURSOR_CROSS)) 144 wx.HOURGLASS_CURSOR._copyFrom( StockGDI.GetCursor(StockGDI.CURSOR_HOURGLASS)) 145 wx.STANDARD_CURSOR._copyFrom( StockGDI.GetCursor(StockGDI.CURSOR_STANDARD)) 146 147 wx.TheFontList = StockGDI._getTheFontList() 148 wx.ThePenList = StockGDI._getThePenList() 149 wx.TheBrushList = StockGDI._getTheBrushList() 150 wx.TheColourDatabase = StockGDI._getTheColourDatabase() 151 152 153StockGDI._initStockObjects = staticmethod(_initStockObjects) 154%End 155