]>
Commit | Line | Data |
---|---|---|
1 | ------------------------ | |
2 | wxWidgets 2.5 Change Log | |
3 | ------------------------ | |
4 | ||
5 | INCOMPATIBLE CHANGES SINCE 2.4.x | |
6 | ================================ | |
7 | ||
8 | Please take a few minutes to read the following list, especially | |
9 | paying attention to the most important changes which are marked | |
10 | with '!' in the first column. | |
11 | ||
12 | Also please note that you should ensure that WXWIN_COMPATIBILITY_2_4 | |
13 | is defined to 1 if you wish to retain maximal compatibility with 2.4 | |
14 | series. | |
15 | ||
16 | ! windows are no longer fully repainted when resized, use new style | |
17 | wxFULL_REPAINT_ON_RESIZE to force this (wxNO_FULL_REPAINT_ON_RESIZE still | |
18 | exists but doesn't do anything any more, this behaviour is default now) | |
19 | ||
20 | ||
21 | - no initialization/cleanup can be done in wxApp/~wxApp because they are | |
22 | now called much earlier/later than before; please move any exiting code | |
23 | from there to wxApp::OnInit()/OnExit() | |
24 | - also, OnExit() is not called if OnInit() fails | |
25 | - finally the program exit code is OnRun() return value, not OnExit() one | |
26 | - wxTheApp can't be assigned to any longer, use wxApp::SetInstance() instead | |
27 | - wxFileType::GetIcon() returns wxIconLocation, not wxIcon | |
28 | - wxColourDatabase is not a wxList any more, use AddColour to add new colours | |
29 | - wxWindow::Clear() is now called ClearBackground() | |
30 | - pointer returned by wxFont::GetNativeFontInfo() must not be deleted now | |
31 | - wxMouseEvent::Moving() doesn't return true if mouse is being dragged any more | |
32 | - (most) controls now inherit parents colours by default, override | |
33 | ShouldInheritColours() to return false if you don't want this to happen | |
34 | - wxApp::SendIdleEvent() now takes 2 arguments | |
35 | - wxTabView::GetLayers() changed return type from wxList& to wxTabLayerList& | |
36 | (when WXWIN_COMPATIBILITY_2_4 == 0) | |
37 | - wxID_SEPARATOR (id used for the menu separators) value changed from -1 to -2 | |
38 | - wxGetNumberFromUser() is now in separate wx/numdlg.h, not wx/textdlg.h | |
39 | - wxChoice and wxCombobox now handle their size in the same way as in all the | |
40 | other ports under MSW, new code is actually correct but different from weird | |
41 | stuff they were doing before so the behaviour of your programs might change | |
42 | - wxTaskBarIcon objects must now be destroyed before the application can exit. | |
43 | Previously, the application terminated if there were no top level windows; | |
44 | now it terminates if there are no top level windows or taskbar icons left. | |
45 | - wxZlibInputStream is not by default compatible with the output of the | |
46 | 2.4.x version of wxZlibOutputStream. However, there is a compatibilty mode, | |
47 | switched on by passing wxZLIB_24COMPATIBLE to the constructor. | |
48 | - when WXWIN_COMPATIBILITY_2_4 == 0 wxHashTable uses a new implementation | |
49 | not using wxList keyed interface (the same used when wxUSE_STL == 1), | |
50 | the only incompatibility being that Next() returns a wxHashTable::Node* | |
51 | instead of a wxNode*. | |
52 | - non-const wxDC methods GetBackground(), GetBrush(), GetFont() and GetPen() | |
53 | as well as wxWindow methods GetFont() and GetCursor() don't exist any more, | |
54 | please fix your code -- it never worked correctly anyhow if you modified the | |
55 | objects returned by these methods so you should simply switch to using const | |
56 | methods. | |
57 | - EVT_XXX macros are now type-safe; code that uses wrong type for event | |
58 | handler's argument will no longer compile. | |
59 | - Identical functionality of wxFileDialog::ParseWildcard, | |
60 | wxGenericDirCtrl::ParseFilter, Motif and MSW parsing native dialogs | |
61 | is now accessible in ::wxParseCommonDialogsFilter | |
62 | - wxNotebookSizer and wxBookCtrlSizer are now deprecated -- the are no longer | |
63 | needed, you can treat wxNotebook as any other control and put it directly | |
64 | into the sizer that was wxNotebookSizer's parent sizer in old code. | |
65 | ||
66 | ||
67 | ||
68 | DEPRECATED METHODS SINCE 2.4.x | |
69 | ============================== | |
70 | ||
71 | Deprecated methods may still be used but will disappear in future wxWidgets | |
72 | versions, please update your code to not use them. | |
73 | ||
74 | - wxDocManager::GetNoHistoryFiles() renamed to GetHistoryFilesCount() | |
75 | - wxSizer::Remove(wxWindow *), use Detach() instead [it is more clear] | |
76 | - wxSizer::Set/GetOption(): use Set/GetProportion() instead | |
77 | - wxKeyEvent::KeyCode(): use GetKeyCode instead | |
78 | - wxList::Number, First, Last, Nth: use GetCount, GetFirst/Last, Item instead | |
79 | - wxNode::Next, Previous, Data: use GetNext, GetPrevious, GetData instead | |
80 | - wxListBase::operator wxList&(): use typesafe lists instead | |
81 | - wxTheFontMapper: use wxFontMapper::Get() instead | |
82 | - wxStringHashTable: use wxHashMap instead | |
83 | - wxHashTableLong: use wxHashMap instead | |
84 | - wxArrayString::GetStringArray: use wxCArrayString or alternative wxWidgets | |
85 | methods taking wxArrayString | |
86 | - wxArrayString::Remove(index, count): use RemoveAt instead | |
87 | - wxTreeItemId conversion to long is deprecated and shouldn't be used | |
88 | - wxTreeCtrl::GetFirst/NextChild() 2nd argument now has type wxTreeItemIdValue | |
89 | and not long, please change declarations of "cookie"s in your code | |
90 | accordingly -- otherwise your code won't work on 64 bit platforms | |
91 | - [MSW only] wxWindow::GetUseCtl3D(), GetTransparentBackground() and | |
92 | SetTransparent() as well as wxNO_3D and wxUSER_COLOURS styles | |
93 | - wxList keyed interface: use wxHashMap instead | |
94 | - wxColourDatabase::FindColour(): use Find() instead (NB: different ret type) | |
95 | - wxHashTable::Next: use wxHashTable::Node* or | |
96 | wxHashTable::compatibility_iterator to store the return | |
97 | value | |
98 | - wxWave class; use wxSound instead | |
99 | - The wxHIDE_READONLY flag for wxFileDialog was not implemented | |
100 | and has now been removed | |
101 | - wxTaskBarIcon::OnXXX() virtual methods: use events instead | |
102 | ||
103 | ||
104 | OTHER CHANGES | |
105 | ============= | |
106 | ||
107 | 2.5.3 | |
108 | ----- | |
109 | ||
110 | All: | |
111 | ||
112 | - number of fixes to wxPluginManager (Rick Brice, Hans Van Leemputten) | |
113 | - fixed memory leak in wxURL when using a proxy (Steven Van Ingelgem) | |
114 | - fixed bug in wxDateTime::Set(jdn) when DST was in effect | |
115 | - it's now possible to use msgids in other languages than English with | |
116 | wxLocale (based on patch by Stefan Kowski) | |
117 | ||
118 | All (GUI): | |
119 | ||
120 | - added wxTaskBarIcon::CreatePopupMenu which is now recommended way | |
121 | of showing popup menu; calling wxTaskBarIcon::PopupMenu directly | |
122 | is discouraged | |
123 | - Added ..._CMD_... variants for wxGrid event table entry macros | |
124 | taking window identifiers | |
125 | - Added wxWindowBase::Navigate for programmatic navigation to the next | |
126 | control. | |
127 | - On most platforms, wxTextCtrl::OnChar now inserts a tab character if | |
128 | wxTE_PROCESS_TAB is set, or navigates to the next control if not. | |
129 | ||
130 | Unix: | |
131 | ||
132 | - wxTaskBarIcon now supports freedesktop.org System Tray protocol | |
133 | - security fixes to wxSingleInstanceChecker | |
134 | ||
135 | wxGTK: | |
136 | ||
137 | - fixed many rendering artifacts and wrong colours with lots of GTK+ themes | |
138 | - implemented wxColourDialog as native dialog | |
139 | - wxTreeCtrl::GetCount() counts root as well now (compatible with MSW) | |
140 | ||
141 | wxMotif: | |
142 | ||
143 | - added 3 state checkbox | |
144 | ||
145 | wxMSW: | |
146 | ||
147 | - fixed UNC paths handling in wxFileSystem (Daniel Nash) | |
148 | ||
149 | wxWinCE: | |
150 | ||
151 | - added automatized but customizable handling of native SmartPhone menus | |
152 | ||
153 | ||
154 | 2.5.2 | |
155 | ----- | |
156 | ||
157 | All: | |
158 | ||
159 | - Hindi translation added (Dhananjaya Sharma) | |
160 | - Brazilian Portuguese translation added (E. A. Tacao) | |
161 | - wxDynamicCast() now uses static_cast<wxObject *> internally and so using it | |
162 | with anything not deriving from wxObject will fail at compile time (instead | |
163 | of run-time) now | |
164 | - when wxUSE_STL == 1 and STL provides quasi-standard hash_map/hash_set, | |
165 | wxHashMap/wxHashSet are just typedefs for them. This makes impossible | |
166 | to forward declare these classes. | |
167 | ||
168 | All (GUI): | |
169 | ||
170 | - wxHtmlWindow now delays image scaling until rendering, | |
171 | resulting in much better display of scaled images | |
172 | - Added UpdateSize to wxSplitterWindow to allow layout while hidden | |
173 | - implemented Freeze/Thaw() for wxGenericTreeCtrl (Kevin Hock) | |
174 | - support for KOI8-U encoding added (Yuriy Tkachenko) | |
175 | - The old wxADJUST_MINSIZE behaviour is now the default behaviour for | |
176 | sizer items that are windows. This means that GetAdjustedBestSize | |
177 | will now be called by default to determine the minimum size that a | |
178 | window in a sizer should have. If you want to still use the initial | |
179 | size (and not the BestSize) then use the wxFIXED_MINSIZE flag. When | |
180 | windows are added to a sizer their initial size is made the window's | |
181 | min size using SetSizeHints, and calls to wxSizer::SetItemMinSize | |
182 | are also forwarded to SetSizeHints for window items. | |
183 | - added wxRegEx::GetMatchCount() | |
184 | - it is now possible to display images in wxHtmlListBox | |
185 | ||
186 | wxMSW: | |
187 | ||
188 | - wxWindow::Freeze()/Thaw() can now be nested | |
189 | - Added wxSP_NO_XP_THEME style to wxSplitterWindow to switch off | |
190 | XP theming (some applications look bad without 3D borders) | |
191 | - wxMenuBar::GetLabelTop() doesn't include '&'s in the label any more | |
192 | - wxRegConf couldn't read global settings without admin privileges and didn't | |
193 | even try to do it by default -- now it does | |
194 | - wxTaskBarIcon must be explicitly destroyed now, otherwise the application | |
195 | won't exit even though there are no top level windows | |
196 | - wxFileName::GetModificationTime() works with opened files too now | |
197 | - wxDC::GetClippingBox() now works even for clipping regions created by Windows | |
198 | - fixed wxFileDataObject in Unicode build (Alex D) | |
199 | - subdindented paragraphs support (Tim Kosse) | |
200 | ||
201 | wxGTK: | |
202 | ||
203 | - added support for wxTE_RIGHT and wxTE_CENTRE styles under GTK2 (Mart Raudsepp) | |
204 | ||
205 | wxMotif: | |
206 | ||
207 | - removed wxMenuItem::DeleteSubMenu() | |
208 | - wxButtons use Motif default size, which is smaller than it used to be | |
209 | and closer to wxMSW/wxGTK look. This can be disabled by setting | |
210 | motif.largebuttons system option to 1 (see wxSystemOptions). | |
211 | ||
212 | wxUniv/X11: | |
213 | ||
214 | - implemented DrawRoundedRectangle() (clawghoul) | |
215 | ||
216 | wxHTML: | |
217 | ||
218 | - improved tables and lists layout algorithms (Tim Kosse) | |
219 | - <div> handling fix (Xavier Nodet) | |
220 | ||
221 | Unix: | |
222 | ||
223 | - fixed priorities of mailcap entries (David Hart) | |
224 | - added "wx-config --libs=std,<extra>" syntax (i.e. support for "std") | |
225 | ||
226 | wxODBC: | |
227 | ||
228 | - Full Unicode support is now available | |
229 | - BLOB support is working | |
230 | ||
231 | ||
232 | 2.5.1 | |
233 | ----- | |
234 | ||
235 | All: | |
236 | ||
237 | Content-type: text/html ]>