|
dBASE
PLUS b1804 - Features and Fixes - since version 2.21 (b1755)
As of 11/22/2004 (page updated 08/01/2005)
New Features
and Enhancements in dBASE PLUS 2.50
======================================================================================
New and enhanced
mouse events
- QAID: 2175 - New
events - onMouseOver() and onMouseOut() for all form components,
Form and Subform. Both events receive the following parameters:
flags, col, row onMouseOver() fires when the mouse enters a control,
form, or subform onMouseOut() fires when the mouse leaves a control,
form, or subform
- QAID: 3423 - The
col and row values passed to all mouse events have been changed
to use standard signed mouse coordinates instead of unsigned values.
dBL Code to adjust unsigned values to signed values is no longer
needed.
Grid Class
- QAID: 108 - New grid
column control events: beforeCellPaint() and onCellPaint() These
events allow a grid cell's color, font, and other attributes to
be modified on a cell by cell basis. The value to be displayed
is accessible within these events and can be used to modify the
cell conditionally. These events are surfaced for each of the
grid columnEditor controls:
- columnEntryField
- columnSpinBox
- columnComboBox
- columnCheckBox
- columnEditor
- columnHeadingControl
- QAID: 4890 - New
property - grid.colorRowHeader to set the color of the row header.
The foreground color specifies the color of the indicator arrow
or plus sign. The background color specifies the row header background
color. The default setting is: WindowText/BtnFace
- QAID: 115 - When
designing a form in the form designer a grid component's scroll
bars will now be enabled. This will allow the developer to scroll
the grid horizontally in order to bring the column they are working
on into view. Once in view, if columns have been defined, they
can click on the column to select it into the Inspector and directly
modify the columns properties, methods, and events.
dQuery
- Graphics, buttons
and background have been changed in dQuery 2.5 to create a new,
more modern and accessible GUI.
- dQuery now offers
two graphic interfaces: the expert Developer version based on
the Inspector; and a new "business-user" interface based on easy-to-use
dialogs.
- dQuery no longer destroys
Parent/Child relations during certain operations, such as filtering
or setting indexes, unless it has to, due to the changes made.
- dQuery now supports
importing and exporting to tables that have Autoincrement fields.
- dQuery now allows
you to create indexes and perform other table-level operations,
even if a report is currently using the table.
- dQuery 2.5 has a
number of new and revamped dialogs called from context-sensitive
right-click menus when in the "Business-User Mode"
- Date searches have
been improved, especially for non-dBASE tables.
- The Excel export
has been rewritten and improved.
- Many outputs, such
as tab- and comma- delimited text now allow you to use field names
as the first row in the output file.
- dQuery 2.5 offers
a new format for exporting data as text: Simple Columnar Report
- The Print Wizard
has been upgraded to include a "Preview" button that allows you
to preview onscreen before printing.
- The dQuery 2.5 Print
Wizard now supplies much more information when you print the "Object
Tree" of the dataModule, including indexes, parent-child relations,
filters and the dataModule's Multi-Table View.
- You can now edit
an existing SQL file from within dQuery.
- All dQuery 2.5 reports
now use the standard Windows Print dialog before printing.
- Support for SQL Server
tables has been improved.
- More than 100 bugs
have been fixed.
Array Class
- QAID: 4767 - Array.dir()
and array.dirext() can now return a file count greater than 32K
Treeview
- QAID: 3987 - Modified
Treeview so that expanding or collapsing a tree node (clicking
on + or -) does not change the currently selected item (unless
the currently selected item is among those being collapsed).
- QAID: 4962 - treeview.canExpand
and treeview.onExpand events now receive a parameter, oItem, providing
an object reference for the treeitem whose + or - has been clicked.
Expanding or collapsing a treeitem by clicking on its + or - no
longer selects the item that is expanded or collapsed. THIS MAY
REQUIRE CHANGES TO EXISTING CODE.
- QAID: 4803 - Treeview
control can now display images using more than 16 colors. Images
using anywhere from 4 bit color up to 32 bit color are now supported.
Report
- QAID: 4907 - The
default value of the report autoSort property has been changed
to 'false'. Previously, it was 'true'. THIS MAY REQUIRE CHANGES
TO EXISTING REPORTS
BDE Usage
- QAID: 4133 - Implemented
fix to prevent inappropriate "Insufficient Disk Space"
errors from occurring due to the BDE using truncated disk free
space data. This fix is similar to one provided by a 3rd party
on the Borland Web Site, but is integrated into dBASE PLUS and
does not require an external DLL file.
Project Explorer
- QAID: 5064 - dBASE
PLUS Project Explorer now supports creating deployers for dBASE
applications using Inno Setup and ScriptMaker. An "Inno"
tab is now surfaced in the Project Explorer for non-web projects
that can be used to create Inno Setup installers using ScriptMaker.
Basic Instructions:
Install Inno Setup
Install ScriptMaker
To use it…
1. Setup a project as usual.
2. Fill out forms on Inno tab.
3. Generate the script on the Script tab (lightning bolt icon).
4. Open ScriptMaker (icon next to the generate script one).
5. In ScriptMaker, click the Inno button under Compiler.
This will generate the installer in the source directory\Output\setup.exe.
Inspector
- QAID: 5052 - Inspector
defaults changed to increase size and expand categories
_app Object
Procedure files
- QAID: 4765 - SET
PROCEDURE TO <procedurefile> has been changed to assume
ADDITIVE was specified.
Report Designer
- QAID: 4963 - The
detailBand, headerBand, and footerBand are now visible in the
Report Designer when they are empty (if their height is not zero).
The margins are now painted to correctly show the page edge.
In the left outline view the rectangle that used to be labeled
as pageTemplate1 is now correctly labeled as: Available Page
(report.pageTemplate1 margins)
The stream frame is no longer allowed to be resized larger
than the margins of the pageTemplate.
A page-template margins rubber band is now available when
clicking on the page-template area to allow setting the margins
by resizing the rubber band rectangle.
Re-sizing the pageTemplate margins with the mouse now correctly
sets the pageTemplate's margin properties rather than its height
and width properties.
Error Handling
- Error handling in
the dBASE PLUS byte code interpreter has been enhanced to catch
Memory Access Violation errors and provide file name, procedure,
and line number information. Previously, these kinds of exceptions
were triggering critical errors, which displayed a message that
dBASE or Windows had encountered an internal error. The additional
information is helpful when diagnosing the source of the error.
CHOOSEPRINTER()
Function and choosePrinter() method
- QAID: 5046 - The
CHOOSEPRINTER() function and method have been enhanced to accept
a second parameter which allows you to choose between displaying
the Print Setup dialog and the standard Windows Print dialog.
The choosePrinter() method of the printer object will now
default to default to displaying the standard Windows Print
dialog instead of the "Print Setup" dialog when the printer
object is attached to a report object. In addition, choosePrinter()
will now carry any start and end page settings in the report
object into the Print dialog and any start and end page settings
made in the dialog will be carried back into the report object.
Fixes in
dBASE PLUS 2.50 since 2.21
======================================================================================
Grid
- QAID: 5030 - Fixed
GPF's triggered by interaction of Grid with Rowsets.
- Prevented GPF
due to a query attempting to release a rowset twice when the
rowset had a field displaying in a grid.
- Prevented GPF
in grid due to accessing invalid rowset and bookmark pointers
- QAID: 4854 - Fixed
problem in grid where after switching the position of two columns,
clicking on the row headers in the grid causes the current grid
cell to alternate between the moved columns.
Error Handling
Report
- QAID: 4819 - Fixed
regression in printing in dBASE PLUS 2.21 where the wrong data
would print if starting a report on a page other than 1.
Report Designer
- QAID: 5032 - Removed
ReportViewer component from the Report Designer's Component Palette.
- QAID: 5000 - Fixed
bug in Report Designer when quickly clicking the mouse on a component,
the would continue to move with the mouse after releasing the
mouse button.
- QAID: 4892 - Fixed
GDI resource leak after editing a report in the report designer
- QAID: 4900 - After
editing report in the report designer, dBASE will now run the
new version of the report, instead of continuing to run the old
version.
Treeview
- QAID: 4994 - Fixed
problem in treeview when clicking on treeitem text or image that
caused mouse up event not to fire and delayed mouse down event
firing. If the mouse was double-clicked, two mouse up events were
fired for each mouse down event.
Subform
- QAID: 4998 - Fixed
bug in subform's SetFocus() code so that calling setFocus() will
always fire the subform's onGotFocus() event. Previously, if a
subform already had focus, it would not fire its onGotFocus()
event even when its setFocus() method was called.
- QAID: 5005 - Fixed
bug in subform message handling that prevented the Edit menu's
Cut, Copy, and Paste options from working when focus was on a
control on a subform.
- QAID: 4960 - Fixed
GPF and/or memory access violations that could occur when releasing
subforms. In certain situations the parent form was being released
before its subforms.
- QAID: 4834 - Fixed
subform so that when it gets focus it now ensures that the dBASE
Frame window also is activated (i.e. titlebar displays in active
colors).
- QAID: 2125 - Fixed
a problem where a subform can sometimes cause the menu associated
with its parent form to contain incorrectly disabled menu items.
ActiveX
- QAID: 5001 - Fixed
certain instances of the ActiveX "Control is not Licensed"
error. This fixes errors that occurred when placing an instance
of the csXImage ActiveX control on a Form in the Form Designer.
The fix may work with other controls that use a simple design
time license file and do not have a runtime license.
Table Designer
- QAID: 5007 - Fixed
GPF that occured when closing Table Designer after widening numeric
field in a level 7 dBASE Table. This crash would occur if user
widened a numeric field and then saved. During the save process,
if a record contained a value of all spaces in the modified field,
a GPF would occur.
- QAID: 4523 - Fixed
problem in Table Designer and Inspector which allowed the highlighted
field or control to appear twice if a a vertical scrollbar exists
and you click on the scroll bar below the scrollbar slider.
Query
- QAID: 4992 - Fixed
GPF and/or memory access violations that could occur when releasing
a query object. In certain situations, field objects belonging
to the query's rowset were left with invalid pointers to an internal
data driver object that was released prematurely.
Form
- QAID: 4974 - Fixed
form.persistent so that it does not increment the procedure file
reference count if file has already been loaded via a SET PROCEDURE
call. If file is already loaded, setting form.persistent to true
will ensure that the procedure file is marked as persistent. If
the procedure file is not found to be already loaded, and the
form is open, then setting form.persistent to true will perform
an implicit set procedure to <filename> persistent.
- QAID: 4983 - Fixed
problem in form readModal() that sometimes caused a form or subform
to remain disabled after readModal() returns. This could happen
if other forms or subforms are created or destroyed during the
readModal().
Array
- QAID: 1219 - Fixed
GPF that occurs when issuing array.dirext() with a large number
of files in the directory.
Navigator
- QAID: 4808 - Fixed
GPF that was occurring in Navigator when user presses letter keys
and no files listed start with the letter that was pressed.
ComboBox
- QAID: 3912 - Fixed
the problem with a ComboBox value not being saved when the Delete
or Backspace key clears the window text resulting in a string
of zero length.
Code Streaming
- QAID: 4880 - Fixed
comment and formatting problems that can occur when streaming
code from within the Form Designer or Report Designer.
Comment lines entered in a multi-line /*...*/ comment block
using the Source Editor were showing as blank after opening
the form in the Form Designer or after attempting to save from
the Source Editor when open in the Form Designer.
In addition, comments beginning with && or note were
also changed to blank lines under the above conditions.
Radio Buttons
- QAID: 4750 - Fixed
problem with RadioButtons so that they work as a group even if
components from another page on a form are intermingled in the
source file with the members of the radiobutton group. However,
using the up and down arrow keys to move between radiobuttons
in a group does not work if the members of the group are not contiguous
in the source file.
Also fixed RadioButtons so that named groups now work properly.
Named groups can be created by setting each radiobutton's group
property to the same text string.
|
|
|
|
|