]> git.saurik.com Git - wxWidgets.git/blob - docs/msw/todo.txt
Added #define wxHelpController to help.h; added wxWinHelpController::Quit code
[wxWidgets.git] / docs / msw / todo.txt
1
2 Todo on wxWin 2.0, Windows platform
3 -----------------------------------
4
5 HIGH PRIORITY
6 -------------
7
8 Integrate Robert's wxGrid enhancements.
9
10 Find/add wxThread sample - Arthur T-D?
11
12 wxControl dimensions should be optionally based on dialog font
13 size for portability (dialog units as per Windows).
14
15 Implement wxDC floating point transformations.
16
17 Remove transformation from device to logical coordinates from
18 events e.g. mouse events.
19
20 Add wxDC::DeviceToLogical -> wxPoint etc (convenience accessors).
21
22 Revamp Dialog Editor for new controls and properties (e.g.
23 window id).
24
25 Registry classes (check out wxConfig class - see issues.txt).
26
27 Change DnD classes to use global symbols, and wxString.
28
29 Update manual.
30 wxApp changes DONE
31 wxMenu changes DONE
32 wxModule DONE
33 wxRegion DONE
34 wxFile DONE
35 wxTempFile
36 wxMask DONE
37 wxDC:Blit DONE
38 wxTaskBarIcon DONE
39 wxMsgCatalog etc.
40 wxLog
41 wxConfig, wxRegKey
42 wxTabCtrl DONE
43 wxNotebook
44 wxWave DONE
45 wxJoystick DONE
46 wxStatusBar95 and wxFrame status bar functions
47 wxListBox changes (for ownerdraw functionality)
48 wxThread DONE (except for topic overview)
49 wxHelpController classes DONE (except for Unix ones)
50 wxString
51 wxTString
52 Drag and drop (change API if required, e.g. const).
53 wxCheckListBox
54 wxBaseArray, other arrays
55 (wxOwnerDrawn)
56 Document the include file for each class
57
58 Write tutorial.
59
60 Other static classes.
61
62 Makefiles for other compilers. Generic makefiles?
63 Rewrite makefiles to maintain simultaneous debug/release
64 objects.
65
66 More wxSystemSettings (see comment in settings.cpp).
67
68 wxSocket integration.
69
70 wxListCtrl, wxTreeCtrl, wxImageList integration with Robert
71 Roebling's classes.
72
73 Convert OGL, other utilities and samples.
74
75 Check TODO entries.
76
77 Change #include "wx/xxx.h" to #include <wx/xxx.h>
78
79 Tidy code further, e.g. formatting from DevStudio, plus
80 standard header.
81
82 Shell function to invoke a document with open, print, whatever...
83
84 wxTextCtrl (and wxMultiText/wxTextWindow in wxWin 1.xx) - differences between Edit
85 and RichEdit controls.
86
87 Make use of Vadim's gettext implementation throughout wxWin code.
88 Document it.
89
90 Change wxUpdateIterator to use wxRegion; or scrap
91 wxUpdateIterator? See wxGTK.
92
93 Check WXWIN_COMPATIBILITY mode, remove any unnecessary #ifdefs.
94
95 Retain callback functions; have semi-compatible callback function prototypes
96 for all controls, at least in WXWIN_COMPATIBLE mode, but
97 retain (Set)Callback for all compilations. This is following a
98 panicky response to losing callbacks.
99
100 Merge dib.cpp, dibutils.cpp.
101
102 Simplify the toolbar samples.
103
104 Add a wxTabCtrl sample.
105
106 EVT_ENTER/LEAVE_WINDOW: Perhaps one approach to reliable implementation of
107 EVT_LEAVE_WINDOW is to set a flag when the mouse pointer is in a window,
108 then in idle time, check this window.
109 If the flag is set but the mouse pointer is outside the window, then
110 it's time to generate an EVT_LEAVE_WINDOW. This would be necessary at
111 least for the case when the mouse cursor goes off the application windows,
112 and no motion event was generated (i.e. you moved the mouse quickly!).
113 If it goes from one app window to another, you could generate the event sooner.
114
115 LOW PRIORITY
116 ------------
117
118 Debug PNG support in wxBitmap (no 4-bit support), and possibly add a convertor from PNG
119 to HICON. We could perhaps also support inclusion of PNGs into
120 a .res file as a custom resource.
121
122 Fonts: ability to enumerate them.
123
124 Angled text.
125
126 Eliminate Set/GetDefaultBackgroundColour? Just take background
127 colour for child control instead.
128
129 Think about reimplementing wxBitmapButton, wxStaticBitmap using
130 BS_BITMAP, SS_BITMAP - but this may not allow wxBitmap
131 argument, so instead just allow controls loaded from native
132 resource to deal with this style and call default processing.
133
134 Completion of drag and drop support (Vadim).
135
136 Better clipboard support.
137
138 Toolbars: use event tables not virtual functions.
139
140 wxWizard class?
141
142 Doc/view - have some standard views/docs e.g. wxTextView.
143
144 wxClassWizard for generating files, chunks of code.
145
146 Miscellaneous file/system function wrappers.
147
148 wxImage or replacement; further wxBitmap/wxIcon etc. functions
149 (load animated icos).
150
151 Integrate existing multimedia classes.
152
153 Rich text class?
154
155 Optimize size further.
156
157 wxThread integration.
158
159 Look at WinCE stuff incl. database classes.
160
161 Improve conversion guide, compatibility classes, tools?
162
163 Bug database.
164
165 ActiveX support?
166
167 OpenGL integration.
168
169 Menu bitmaps - document Vadim's enhancements.
170
171 Enhance Tex2RTF to generate Microsoft HTML help, perhaps Netscape
172 HTML help also.
173
174 wxCreateDynamicObject is apparently slow: ~ 2000 calls to strcmp. Need to
175 use some kind of hash table scheme.
176
177 Write wxDisplay class for querying settings and passing
178 to wxFrame to mirror the X situation (multiple displays).
179
180 Write translator between old and new .wxr formats (including
181 substituting static text for obsolete labels).
182
183 Improve and expand wxSizer classes.
184
185 Write more validators.
186
187 Classes for file/OS utility functions.
188
189 Add support for more static controls e.g. wxStaticLine.
190
191 GDI objects could be optimised further in constructors by
192 searching for a matching, pre-existing object, and assigning from
193 that, thus sharing the internal handle. A problem with this
194 arises if you wish to change the data. But this can be handled by
195 un-refing and creating a new handle. So we could reuse many
196 Windows GDI objects without troubling the programmer. We might
197 wish to switch this off in certain circumstances, e.g.
198
199 wxEnableGDIReuse(FALSE);
200 wxBrush brush(...);
201 wxEnableGDIReuse(TRUE);
202
203 or even
204
205 wxGDIReuse reuse(FALSE);
206 wxBrush brush(...);
207
208 which lasts until its scope ends. This might be needed e.g. if we
209 needed to ensure that the operation was maximally efficient
210 (creating a new object rather than searching may or may not be
211 more efficient).
212
213 Perhaps rewrite wxFile to use FILE* descriptors, so Eof and Flush
214 can work.