| 1 |
See the Subversion log for all the details. |
|---|
| 2 |
|
|---|
| 3 |
Dabo-0.5 (2005-11-30) (Revision 1610): |
|---|
| 4 |
|
|---|
| 5 |
Added a new class, DataSet, which lets you issue sql queries against local |
|---|
| 6 |
Dabo data, not just against the backend. You can query, sort, and update |
|---|
| 7 |
individual DataSets, and even join multiple DataSets - all without making a |
|---|
| 8 |
call to the backend database server. |
|---|
| 9 |
|
|---|
| 10 |
Began the work of making an embedded, internal, database engine (SQLite). |
|---|
| 11 |
Starting with future releases, SQLite will be an integral part of Dabo. |
|---|
| 12 |
|
|---|
| 13 |
Improved the autoBindEvents() to bind to matching methods in all parent |
|---|
| 14 |
containers, not just the form. Auto-binding of events now works so well that |
|---|
| 15 |
it is the default; you no longer have to manually call it. This is now |
|---|
| 16 |
*really cool*. |
|---|
| 17 |
|
|---|
| 18 |
Added a basic framework for drawing shapes on any window. Once created, the |
|---|
| 19 |
shapes are accessible with an object reference. This should make dealing with |
|---|
| 20 |
DC's a thing of the past for most uses. Way cool! |
|---|
| 21 |
|
|---|
| 22 |
Sorted out MDI/SDI issues. By default, dForm on Windows MDI children and |
|---|
| 23 |
dFormMain on Windows will be MDI parents. On other platforms, both dForm and |
|---|
| 24 |
dFormMain will be SDI by default. The above statement is true for datanav |
|---|
| 25 |
applications (ones generated by the AppWizard). The pure-Dabo default is for |
|---|
| 26 |
SDI forms. In any case, you may change this by setting dabo.MDI. |
|---|
| 27 |
|
|---|
| 28 |
Improved the datanav Quick Report feature, which can print a list of the |
|---|
| 29 |
current records, mimicing the browse page, or a whole page of information on |
|---|
| 30 |
one record, mimicing the edit page. Added the ability for the user to save |
|---|
| 31 |
the generated report form for editing with the Report Designer or editing the |
|---|
| 32 |
rfxml directly. |
|---|
| 33 |
|
|---|
| 34 |
Improved showContextMenu(), and sorted out the difference between |
|---|
| 35 |
MouseRightClick and ContextMenu events. |
|---|
| 36 |
|
|---|
| 37 |
Fixed bug in Find dialog which would segfault on Windows and Mac. Added |
|---|
| 38 |
replace functionality. |
|---|
| 39 |
|
|---|
| 40 |
dCheckBox now supports 3 state mode, (True, False and None). |
|---|
| 41 |
|
|---|
| 42 |
Fixed bug in dbMySQL that would interpret longtext or longblob fields as |
|---|
| 43 |
ints. |
|---|
| 44 |
|
|---|
| 45 |
Fixed dBackend to properly send Python None values as NULLs. |
|---|
| 46 |
|
|---|
| 47 |
dForms now know how to read in cdxml files, created by the upcoming UI |
|---|
| 48 |
Designer. |
|---|
| 49 |
|
|---|
| 50 |
Fixed a bug in colorTupleFromString() that failed to return the correct |
|---|
| 51 |
value. |
|---|
| 52 |
|
|---|
| 53 |
Fixed some encoding issues with dReportWriter. |
|---|
| 54 |
|
|---|
| 55 |
Added some handling for broken database connections. |
|---|
| 56 |
|
|---|
| 57 |
Added some useful properties to dTreeView that improve its display and |
|---|
| 58 |
editability. |
|---|
| 59 |
|
|---|
| 60 |
Fixed some problems with the Hit event and dSpinner. |
|---|
| 61 |
|
|---|
| 62 |
Improved report writer's paragraph handling. |
|---|
| 63 |
|
|---|
| 64 |
Further removed user code from direct wx access in a few places. User code |
|---|
| 65 |
can still get at the wx structures though, just not quite as easily. |
|---|
| 66 |
|
|---|
| 67 |
Fixed mixed indentation problems, made some code cleaner, and added/edited |
|---|
| 68 |
lots of docstrings. |
|---|
| 69 |
|
|---|
| 70 |
Added some useful functions to dMenu to remove items and get references to |
|---|
| 71 |
menu items. |
|---|
| 72 |
|
|---|
| 73 |
Added a DynamicEnabled property to dMenuItem. Set this to a function which |
|---|
| 74 |
will get run when the parent menu is shown to determine whether the menu |
|---|
| 75 |
item is enabled or not. |
|---|
| 76 |
|
|---|
| 77 |
Menu.Children will now contain object references to Dabo menus and menu |
|---|
| 78 |
items. |
|---|
| 79 |
|
|---|
| 80 |
Improved dToolbar somewhat, in anticipation of fully objectifying the |
|---|
| 81 |
individual toolbar items. The ultimate goal is for the interface to |
|---|
| 82 |
a dToolbar to be similar to that of dMenu. |
|---|
| 83 |
|
|---|
| 84 |
Fixed some problems in dBizobj that make working with multi-table select |
|---|
| 85 |
statements more sane. |
|---|
| 86 |
|
|---|
| 87 |
Fixed a bug in dGrid which resulted in very slow deletion of rows, for |
|---|
| 88 |
instance |
|---|
| 89 |
after requerying the recordset and getting fewer rows that were in the grid |
|---|
| 90 |
before. |
|---|
| 91 |
|
|---|
| 92 |
Added properties ShowInTaskBar and FloatOnParent to dForm, and actually |
|---|
| 93 |
made the following properties work: ShowMinButton, ShowMaxButton, |
|---|
| 94 |
ShowCloseButton, ShowSystemMenu, TinyTitleBar. |
|---|
| 95 |
|
|---|
| 96 |
Added a picklist mode to datanav Forms, showing only the select and browse |
|---|
| 97 |
pages for a user to pick a record. The form dismisses on escape, and returns |
|---|
| 98 |
the selected row's pk on enter. |
|---|
| 99 |
|
|---|
| 100 |
Handling of None values in many UI controls, the bizobj, and the database is |
|---|
| 101 |
much improved. |
|---|
| 102 |
|
|---|
| 103 |
Added middle button and scroll mouse events. |
|---|
| 104 |
|
|---|
| 105 |
Added some hooks to datanav.Form that allow developers to control the |
|---|
| 106 |
select options for given fields. This would allow you to put, for example, |
|---|
| 107 |
a radiogroup with a few choices instead of the default textbox. |
|---|
| 108 |
|
|---|
| 109 |
Added connection manager to dApp, which maintains a set of open database |
|---|
| 110 |
connections that your forms can reference by name. Added Connection property |
|---|
| 111 |
to dForm. |
|---|
| 112 |
|
|---|
| 113 |
Fixed bugs in and improved dSplitter, dListControl, dControlItemMixin, and |
|---|
| 114 |
dListBox. |
|---|
| 115 |
|
|---|
| 116 |
Phwew! All that in 7 weeks. |
|---|
| 117 |
|
|---|
| 118 |
|
|---|
| 119 |
|
|---|
| 120 |
Dabo-0.4.2 (2005-10-07) (Revision 1418): |
|---|
| 121 |
Added PrimaryBizobj property to dForm, which can replace calls to getPrimaryBizobj(). |
|---|
| 122 |
|
|---|
| 123 |
Added Accepted property to dOkCancelDialog, which gets set automatically if the |
|---|
| 124 |
user pressed "OK". |
|---|
| 125 |
|
|---|
| 126 |
Added AutoSQL, UserSQL, CurrentSQL, LastSQL properties to dCursor and dBizobj. |
|---|
| 127 |
When time to requery, the SQL will come from UserSQL if set, or AutoSQL will |
|---|
| 128 |
be regenerated. |
|---|
| 129 |
|
|---|
| 130 |
Fixed a bug that kept changes to a new record from getting committed. |
|---|
| 131 |
|
|---|
| 132 |
Added DefaultValues property to bizobj. |
|---|
| 133 |
|
|---|
| 134 |
Added ListSelection and ListDeselection events to dListControl. Added properties |
|---|
| 135 |
MultipleSelect, HitIndex, LastSelectedIndex, HeaderVisible, HorizontalRules, |
|---|
| 136 |
and VerticalRules. Changed the behavior of both dListControl and dListBox so that merely selecting an item doesn't raise the Hit event; instead, it raises a ListSelection event, and if another item had been previously selected, it raises a ListDeselection event. Hit is only raised from double-clicking on an item, or by pressing Enter. |
|---|
| 137 |
|
|---|
| 138 |
Added new property to dTextBox: StrictDateEntry. Changed the code for |
|---|
| 139 |
interpreting dates entered by the user to allow for some less explicit |
|---|
| 140 |
formats (YYYYMMDD, YYMMDD, and MMDD). If StrictDateEntry is False (the |
|---|
| 141 |
default), these other formats will be used when interpreting dates |
|---|
| 142 |
entered by the user. |
|---|
| 143 |
|
|---|
| 144 |
Added field-level validation to the framework. |
|---|
| 145 |
|
|---|
| 146 |
Improved support for decimal.Decimal, both at the database level and in |
|---|
| 147 |
dTextBox. |
|---|
| 148 |
|
|---|
| 149 |
Added new auto event binding, which automatically binds events based on any |
|---|
| 150 |
defined callback functions. For example, if you have a method onMouseEnter() |
|---|
| 151 |
defined, the dEvents.MouseEnter will automatically be bound to that method. |
|---|
| 152 |
Inspired by PythonCard. |
|---|
| 153 |
|
|---|
| 154 |
Added RegID property to forms, that allows for object registration |
|---|
| 155 |
with the form. Not all objects require RegIDs, but if they have one, |
|---|
| 156 |
they must be unique among all objects in a form. A reference to that |
|---|
| 157 |
object can then be gotten from any other object by calling |
|---|
| 158 |
'self.Form.getObjectByRegID(<regid>)'. |
|---|
| 159 |
|
|---|
| 160 |
Linked RegID to the auto event binding, so that if a form has a method |
|---|
| 161 |
of onHit_cmdOK(), and has a button with a RegID of 'cmdOK', the |
|---|
| 162 |
cmdOk's Hit will get bound to the form's callback, automatically. |
|---|
| 163 |
|
|---|
| 164 |
Improved dGrid and dColumn. Many properties added, and you are now in much |
|---|
| 165 |
finer control over the display of grid column headers, grid cell attributes, |
|---|
| 166 |
grid cell editors and renderers, and the grid itself. |
|---|
| 167 |
|
|---|
| 168 |
Began work of allowing case-insensitive property values for properties that |
|---|
| 169 |
take string values, and for properties that take a limited number of values |
|---|
| 170 |
where the first letter is unique, you can set the property by just using the |
|---|
| 171 |
first letter. dTextBox.Alignment = "c" sets the property to "Center", for |
|---|
| 172 |
example. |
|---|
| 173 |
|
|---|
| 174 |
Modified dBizobj, dCursorMixin, and dBackend so that the user can specify |
|---|
| 175 |
the Unicode Encoding to use. Changed the default encoding from latin-1 to |
|---|
| 176 |
utf-8. |
|---|
| 177 |
|
|---|
| 178 |
Added feature to optionally draw sizer outlines on any form that uses dSizers. |
|---|
| 179 |
This is currently accessible via an option in the View menu when the base |
|---|
| 180 |
menu bar is in use, or you can turn it on/off programatically. |
|---|
| 181 |
|
|---|
| 182 |
Grids now remember the column that is sorted, and resort when next instantiated. |
|---|
| 183 |
|
|---|
| 184 |
Added support in dReportWriter for report groups and report variables, and |
|---|
| 185 |
dynamic band heights (based on the height of contained objects). Added showExpr, |
|---|
| 186 |
which is an expression that evaluates at runtime and if true, shows the object |
|---|
| 187 |
in the report, and not if false. |
|---|
| 188 |
|
|---|
| 189 |
Improved the automatic print preview report format in datanav. It now: |
|---|
| 190 |
|
|---|
| 191 |
+ prints column headers |
|---|
| 192 |
|
|---|
| 193 |
+ mirrors the font size, column width, cell vertical and horizontal |
|---|
| 194 |
alignment, and column height of the grid |
|---|
| 195 |
|
|---|
| 196 |
+ mirrors the font size, header height, vertical and horizontal |
|---|
| 197 |
alignment of the grid headers |
|---|
| 198 |
|
|---|
| 199 |
+ automatically reorients to landscape if the detail flows beyond the width |
|---|
| 200 |
of portrait |
|---|
| 201 |
|
|---|
| 202 |
+ stops printing more columns if doing so would result in overflowing the |
|---|
| 203 |
right margin |
|---|
| 204 |
|
|---|
| 205 |
Key bindings are now case-insensitive. |
|---|
| 206 |
|
|---|
| 207 |
Improved docstrings and API documentation. |
|---|
| 208 |
|
|---|
| 209 |
|
|---|
| 210 |
Dabo-0.4.1 (2005-08-30) (Revision 1226): |
|---|
| 211 |
|
|---|
| 212 |
Improved test framework for uiwx. Now you can run ui/uiwx/test.py and get |
|---|
| 213 |
almost all of the dabo controls in one form, and they are the same tests |
|---|
| 214 |
that you get when you run an individual control directly. |
|---|
| 215 |
|
|---|
| 216 |
Factored out the saving/restoring of user settings out of dApp into |
|---|
| 217 |
the separate dUserSettingProvider class, which can be subclassed or |
|---|
| 218 |
overridded by the developers. Added properties UserSettingProvider |
|---|
| 219 |
and UserSettingProviderClass to dApp. |
|---|
| 220 |
|
|---|
| 221 |
Dabo user settings are no longer saved to .userSettings.ini in the app |
|---|
| 222 |
directory, but are saved to the user's home directory (in ~.dabo/) or |
|---|
| 223 |
if on Windows, in <User Profile>/Application Data/Dabo/. |
|---|
| 224 |
|
|---|
| 225 |
Support for SQLite added. As of this moment, Dabo supports several major |
|---|
| 226 |
open-source database backends: MySQL, PostgreSQL, Firebird, and SQLite. |
|---|
| 227 |
Next on the list should be Oracle, Sybase, and MS-SQL. |
|---|
| 228 |
|
|---|
| 229 |
Started work implementing a Quick Report in the datanav library, which |
|---|
| 230 |
replaces the old HTML Print Preview. This uses the fledgling Dabo Report |
|---|
| 231 |
Writer to create a PDF rendition of the dataset. |
|---|
| 232 |
|
|---|
| 233 |
Added new property for all controls: StatusText. When set, and when the |
|---|
| 234 |
form has a status bar, that text will show in the form's status bar when |
|---|
| 235 |
the mouse enters the control. |
|---|
| 236 |
|
|---|
| 237 |
Expanded the dabo.ui.strToBmp() function to accept an optional scale factor |
|---|
| 238 |
or width/height values. If they are passed, the returned bitmap image is |
|---|
| 239 |
sized to those values. |
|---|
| 240 |
|
|---|
| 241 |
Added an optional parameter to the bizobj and cursor's getDataSet() method. |
|---|
| 242 |
If you send a list of field names, only those fields are returned. |
|---|
| 243 |
|
|---|
| 244 |
Fixed some lingering bugs in the dabo.ui.uiwx package and the datanav |
|---|
| 245 |
lib. dWizard works better now. Improved dGauge, dLine, dBox, dRadioBox, |
|---|
| 246 |
dListBox, dToolBar, and dSizers. |
|---|
| 247 |
|
|---|
| 248 |
Added simple decimal support to dTextBox. |
|---|
| 249 |
|
|---|
| 250 |
Work continues on dGrid, specifically dColumn is now better worked |
|---|
| 251 |
into the "Dabo Way". |
|---|
| 252 |
|
|---|
| 253 |
Added dabo.trace() function, that will drop you into pdb. |
|---|
| 254 |
|
|---|
| 255 |
dConnectInfo reworked to have better property names. |
|---|
| 256 |
|
|---|
| 257 |
Removed dependency on PIL and reportlab from Dabo. These are dependencies |
|---|
| 258 |
still, but only if you try to run a report. |
|---|
| 259 |
|
|---|
| 260 |
Added dabo.lib.StopWatch.StopWatch class, which is a light Python |
|---|
| 261 |
stopwatch with start(), stop(), reset() methods and Value property. |
|---|
| 262 |
|
|---|
| 263 |
This is a partial list. Both Ed and Paul have been very busy with Dabo |
|---|
| 264 |
since 0.4 a few weeks ago. Lots of bugfixes and enhancements were made, |
|---|
| 265 |
and we encourage everyone to upgrade. |
|---|
| 266 |
|
|---|
| 267 |
|
|---|
| 268 |
Dabo-0.4 (2005-08-08) (Revision 1132): |
|---|
| 269 |
|
|---|
| 270 |
Cleaned up the initialization of properties. No more initStyleProperties(); |
|---|
| 271 |
user code just puts their props in initProperties() or sends them to the |
|---|
| 272 |
constructor in the properties arg or as separate named arguments. The |
|---|
| 273 |
framework sorts out when the properties need to be set in the object |
|---|
| 274 |
construction cycle. |
|---|
| 275 |
|
|---|
| 276 |
Improved sizers by separating out the Halign and Valign properties, |
|---|
| 277 |
eliminating the need to use the 'alignment' flags parameter. Added the |
|---|
| 278 |
'Parent' property, making it easy to reference the control that 'owns' |
|---|
| 279 |
the sizer. Also added the convenience method 'append1x(item)', which is |
|---|
| 280 |
shorthand for writing 'append(item, 1, "expand")', since it is used so |
|---|
| 281 |
frequently. The grid sizers now have 'isRowGrowable()' and 'isColGrowable()' |
|---|
| 282 |
methods for checking the status of any row/column. |
|---|
| 283 |
|
|---|
| 284 |
New dGrid, with dColumn and Header objects available for reference. |
|---|
| 285 |
|
|---|
| 286 |
Lots of convenience functions written, such as those designed for simplified |
|---|
| 287 |
access to common dialogs, are now built into the dabo.ui module. Examples: |
|---|
| 288 |
getFile(), getColor(), getBitmap(), and the getString() functions, which all |
|---|
| 289 |
create, show and destroy the required dialog window, and then return the |
|---|
| 290 |
result. So, to present the user with a font selection dialog, just call |
|---|
| 291 |
dabo.ui.getFont(), and the selected font will be returned (or None if they |
|---|
| 292 |
canceled). Similarly, to show a common messagebox and get the response, |
|---|
| 293 |
just use dabo.ui.info(), dabo.ui.stop(), or dabo.ui.areYouSure(). |
|---|
| 294 |
|
|---|
| 295 |
doDefault() much faster now (thanks to Alex Martelli) |
|---|
| 296 |
|
|---|
| 297 |
Support for decimal.Decimal. |
|---|
| 298 |
|
|---|
| 299 |
New classes: dColorDialog, dToolBar. |
|---|
| 300 |
|
|---|
| 301 |
Work on the report writer and report designer progresses. The report designer |
|---|
| 302 |
is now in the daboide project, not here in dabo anymore. |
|---|
| 303 |
|
|---|
| 304 |
We finally have distutils support. To install Dabo, do the standard |
|---|
| 305 |
"python setup.py install". Thanks to limodou for submitting the patch. |
|---|
| 306 |
|
|---|
| 307 |
|
|---|
| 308 |
Dabo-0.3.2 (2005-03-21) (Revision 959): |
|---|
| 309 |
|
|---|
| 310 |
Work continued on the Dabo report writer and report designer. The |
|---|
| 311 |
writer will now read and write the rfxml file format, and will do some |
|---|
| 312 |
simple reports. The designer will edit the rfxml files, again, with simple |
|---|
| 313 |
formats. This isn't ready to use yet but the foundation is in place. |
|---|
| 314 |
|
|---|
| 315 |
cursorToXML() added. |
|---|
| 316 |
|
|---|
| 317 |
Encoding property added to databases. |
|---|
| 318 |
|
|---|
| 319 |
dBitmap introduced. |
|---|
| 320 |
dWizard introduced. |
|---|
| 321 |
dTreeView introduced. |
|---|
| 322 |
|
|---|
| 323 |
dGrid is being refactored, and is almost done. For a short time, it can |
|---|
| 324 |
be found as dGridX. |
|---|
| 325 |
|
|---|
| 326 |
We worked hard trying to get window closing not to segfault on Windows, |
|---|
| 327 |
to get icons to display correctly on Mac, and to optimize Dabo in some key |
|---|
| 328 |
bottleneck areas. We've greatly improved Dabo's performance on all platforms, |
|---|
| 329 |
and Dabo now behaves less differently on each platform. |
|---|
| 330 |
|
|---|
| 331 |
Improved data binding: controls don't need to bind to a bizobj, but to any |
|---|
| 332 |
object expression. |
|---|
| 333 |
|
|---|
| 334 |
Improved Firebird and PostgreSQL support. |
|---|
| 335 |
|
|---|
| 336 |
Lots of improvements and bug fixes, in all three tiers. |
|---|
| 337 |
|
|---|
| 338 |
|
|---|
| 339 |
Dabo-0.3.1 (2005-02-16) (Revision 802): |
|---|
| 340 |
|
|---|
| 341 |
Separated creation of dCursor from dBizobj. |
|---|
| 342 |
Added option to automatically create a dPanel in dForm. |
|---|
| 343 |
Further Daboized dListControl. |
|---|
| 344 |
Fixed display of a few of our icons on Mac. |
|---|
| 345 |
Added bindKey() method, which binds a keycombo like "Ctrl+D" to a function. |
|---|
| 346 |
Daboized dMenu, dMenuItem, and dMenuBar. |
|---|
| 347 |
Minimal Tkinter (dCheckbox) working again (testing only). |
|---|
| 348 |
Added ActiveControl property to dForm. |
|---|
| 349 |
Various dSizer improvements were made. |
|---|
| 350 |
We moved various things to better places in the source tree. |
|---|
| 351 |
Connection info now saved in XML format. |
|---|
| 352 |
Localization framework added. Courtesy Vladimir Sekissov. |
|---|
| 353 |
Added Children property, which contains a list of a container's children. |
|---|
| 354 |
dCommandButton is now known as dButton. |
|---|
| 355 |
|
|---|
| 356 |
|
|---|
| 357 |
Dabo-0.3 (2005-01-10): |
|---|
| 358 |
|
|---|
| 359 |
New UI controls added: |
|---|
| 360 |
dFileDialog.py |
|---|
| 361 |
dListBox.py |
|---|
| 362 |
dListControl.py |
|---|
| 363 |
dSplitForm.py |
|---|
| 364 |
dSplitter.py |
|---|
| 365 |
|
|---|
| 366 |
GridSizer added. Method calls to all sizers greatly simplified. |
|---|
| 367 |
|
|---|
| 368 |
Menus simplified, removing wx-specific calls. |
|---|
| 369 |
|
|---|
| 370 |
My favorite UI debugging tool: getMouseObject() |
|---|
| 371 |
|
|---|
| 372 |
Framework classes now consistently use the standard initialization |
|---|
| 373 |
methods: initProperties, initEvents, etc. |
|---|
| 374 |
|
|---|
| 375 |
Child requeries and transaction support added to bizobj |
|---|
| 376 |
|
|---|
| 377 |
Bizobjs now support the relationSpecs.rsxml format for adding child |
|---|
| 378 |
relations. |
|---|
| 379 |
|
|---|
| 380 |
Support for fulltext-type searches by word added. |
|---|
| 381 |
|
|---|
| 382 |
Auxiliary (one-shot) cursors added to main cursors for better support |
|---|
| 383 |
of different backends. |
|---|
| 384 |
|
|---|
| 385 |
Improved unicode support in cursors. |
|---|
| 386 |
|
|---|
| 387 |
Added support for PostgreSQL. Added template to ease creation of new |
|---|
| 388 |
backend support scripts. |
|---|
| 389 |
|
|---|
| 390 |
appWizard: added support for parent/child/grandchild/... relationships; |
|---|
| 391 |
improved FieldSpecEditor. |
|---|
| 392 |
|
|---|
| 393 |
appWizard/dDataNav* classes: |
|---|
| 394 |
changed all wx.Sizers to dSizers |
|---|
| 395 |
added "-ignore-" to visually indicate search criteria that will not be used |
|---|
| 396 |
added save/restore of values on search page. |
|---|
| 397 |
added 'Matches Words' option for fulltext searches |
|---|
| 398 |
fixed bugs with searches for boolean values |
|---|
| 399 |
|
|---|
| 400 |
Controls: |
|---|
| 401 |
Now auto-name themselves. Unique name enforcement added. |
|---|
| 402 |
Added _IsContainer attribute to distinguish controls that can add other controls to themselves. |
|---|
| 403 |
Added support for setting colors by name instead of RGB tuple. |
|---|
| 404 |
Fixed resizing bug that would not allow a resized object to be made smaller. |
|---|
| 405 |
|
|---|
| 406 |
|
|---|
| 407 |
Dabo-0.2 (2004-09-20): |
|---|
| 408 |
|
|---|
| 409 |
Continued improving FireBird database support, improved MySQL support. Added |
|---|
| 410 |
preliminary SQLite support. |
|---|
| 411 |
|
|---|
| 412 |
Save passwords encrypted. |
|---|
| 413 |
|
|---|
| 414 |
Added logger objects to send program output to, instead of directly to stdout. |
|---|
| 415 |
|
|---|
| 416 |
Began abstraction of Tkinter at purely an experimental level. |
|---|
| 417 |
|
|---|
| 418 |
Added some new controls, such as a better date control and a combo box. |
|---|
| 419 |
|
|---|
| 420 |
Brought in some Foxpro string functions from the openfox project. |
|---|
| 421 |
|
|---|
| 422 |
New event model, greatly simplifying the binding of events, the raising of events, |
|---|
| 423 |
and the subclassing of events to define new events. |
|---|
| 424 |
|
|---|
| 425 |
Added preliminary unicode support to the cursor level. |
|---|
| 426 |
|
|---|
| 427 |
|
|---|
| 428 |
Dabo-0.1.1 (2004-06-13): |
|---|
| 429 |
|
|---|
| 430 |
Dabo-0.1 (2004-05-10): |
|---|