[ANN] Dabo 0.4.2 released!

E

Ed Leafe

We are pleased to announce the 0.4.2 release of Dabo, the 3-tier
application framework for Python.

The primary focus of our work for this release has been a
tightening up of the various properties of many of the UI controls to
create a more consistent interface. Since these controls were
developed one at a time as needed, they had some subtle but
significant differences in the way they worked. This release
addresses a lot of those concerns.

We've also added auto-binding of methods to events. For example,
if you want to have your code react to MouseEnter event, all you need
to do is add a method named onMouseEnter(), and Dabo will bind it to
that event. Thanks to the PythonCard folks for this idea!

Work on the Report Writer continues to proceed; it now supports
groups and report variables. These improvements have been integrated
it into the wizard-generated apps, too.

Needless to say, there have also been a few bug fixes. A list of
all the changes follows my sig. You can grab the latest, as always,
from http://dabodev.com/download.

-- Ed Leafe
-- http://leafe.com
-- http://dabodev.com


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Dabo-0.4.2 (2005-10-07) (Revision 1418):
Added PrimaryBizobj property to dForm, which can replace calls to
getPrimaryBizobj().

Added Accepted property to dOkCancelDialog, which gets set
automatically if the
user pressed "OK".

Added AutoSQL, UserSQL, CurrentSQL, LastSQL properties to dCursor and
dBizobj.
When time to requery, the SQL will come from UserSQL if set, or
AutoSQL will
be regenerated.

Fixed a bug that kept changes to a new record from getting committed.

Added DefaultValues property to bizobj.

Added ListSelection and ListDeselection events to dListControl. Added
properties
MultipleSelect, HitIndex, LastSelectedIndex, HeaderVisible,
HorizontalRules,
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.

Added new property to dTextBox: StrictDateEntry. Changed the code for
interpreting dates entered by the user to allow for some less explicit
formats (YYYYMMDD, YYMMDD, and MMDD). If StrictDateEntry is False (the
default), these other formats will be used when interpreting dates
entered by the user.

Added field-level validation to the framework.

Improved support for decimal.Decimal, both at the database level and in
dTextBox.

Added new auto event binding, which automatically binds events based
on any
defined callback functions. For example, if you have a method
onMouseEnter()
defined, the dEvents.MouseEnter will automatically be bound to that
method.
Inspired by PythonCard.

Added RegID property to forms, that allows for object registration
with the form. Not all objects require RegIDs, but if they have one,
they must be unique among all objects in a form. A reference to that
object can then be gotten from any other object by calling
'self.Form.getObjectByRegID(<regid>)'.

Linked RegID to the auto event binding, so that if a form has a method
of onHit_cmdOK(), and has a button with a RegID of 'cmdOK', the
cmdOk's Hit will get bound to the form's callback, automatically.

Improved dGrid and dColumn. Many properties added, and you are now in
much
finer control over the display of grid column headers, grid cell
attributes,
grid cell editors and renderers, and the grid itself.

Began work of allowing case-insensitive property values for
properties that
take string values, and for properties that take a limited number of
values
where the first letter is unique, you can set the property by just
using the
first letter. dTextBox.Alignment = "c" sets the property to "Center",
for
example.

Modified dBizobj, dCursorMixin, and dBackend so that the user can
specify
the Unicode Encoding to use. Changed the default encoding from
latin-1 to
utf-8.

Added feature to optionally draw sizer outlines on any form that uses
dSizers.
This is currently accessible via an option in the View menu when the
base
menu bar is in use, or you can turn it on/off programatically.

Grids now remember the column that is sorted, and resort when next
instantiated.

Added support in dReportWriter for report groups and report
variables, and
dynamic band heights (based on the height of contained objects).
Added showExpr,
which is an expression that evaluates at runtime and if true, shows
the object
in the report, and not if false.

Improved the automatic print preview report format in datanav. It now:

+ prints column headers

+ mirrors the font size, column width, cell vertical and horizontal
alignment, and column height of the grid

+ mirrors the font size, header height, vertical and horizontal
alignment of the grid headers

+ automatically reorients to landscape if the detail flows
beyond the width
of portrait

+ stops printing more columns if doing so would result in
overflowing the
right margin

Key bindings are now case-insensitive.

Improved docstrings and API documentation.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads

Dabo 0.9.4 Released! 0
ANN: Dabo 0.5 released! 0
ANN: Dabo 0.9.3 released 0
Dabo 0.9.0 Released 1
[ANN] Dabo 0.4 Released 0
[ANN] Dabo 0.6 released 0
ANN: Dabo 0.7 released! 0
[ANN] Dabo 0.2 Released 2

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,483
Members
44,901
Latest member
Noble71S45

Latest Threads

Top