FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index WhatsNew / Novedades New FTDN July / Julio 2008 (8.07)
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
New FTDN July / Julio 2008 (8.07)
Posted: Sat Jul 26, 2008 08:08 AM
July 2008
=======

* Enhancement: function GradientFill() now allows to specify horizontal or vertical painting. Please review samples\TestGrd2.prg

* New: Class TDialog TRANSPARENT clause admits the use of bitmaps (not as brushes). Please review samples\TestTrn2.prg

* New: samples\MyDLL.prg and samples\TestMyDL.prg show how to build a Harbour self contained DLL and how to use it.

* New: Class TReg32 Method GetBinary( cSubKey ). It retrieves binary values from the registry.

* Fix: Class TActiveX added missing lines in function OleInvoke().

* Enhancement: Class TActiveX improved used functions OleSetproperty(), OleGetProperty() and OleInvoke().

* Fix: Class TComboBox Method DrawItem(), its working fine now when a popup menu is used as a popup of the combobox.

* Enhancement: Class TSay was not properly setting the default text width when creating the SAY or later on when changing its text. Now it is fine.

* Fix: Class TWBrowse was not providing the column index when lCellStyle is true and a codeblock is used for nClrText and/or nClrPane. Now it is fine.

* Fix: FWPPC function lRmDir() properly implemented. Please review samples\folder.prg example.

* New: Class TControl Method LDblClick(), it detects if a control is in design mode (clause DESIGN) and avoids to leave the mouse captured.

* New: function cValToStr( uVal, cPicture ), similar to FWH cValToChar() but allows the use of a PICTURE mask, including extended pictures masks for dates values.

* New: function WheelScroll( [nLines] ) --> nLines, sets or retrieves the amount of lines to use for the mouse wheel scroll. Actually used from Class TXBrowse.

* Enhancement: Class TSmtp with enhancements from different FiveWin users. This class has been around for some time and finally we include its changes in the original FiveWin Class TSmtp. Thanks to all its contributors. Some minor editing and changes added.

* Enhancement: fwh\makes\BorMake.zip has been updated with new Harbour libraries names. It has been tested here and it is working fine.

* New: function GradientFill( hDC, nTop, nLeft, nBottom, nRight, aGradient ) where aGradient can contain any number of gradients and should be specified the following way:
{ { nPart, nClrStart, nClrEnd }, { nPart, nClrStart, nClrEnd }, ... }
nPart is to be specified as 0.25, 0.5, etc. and should agregate to 1.

This function is used from Class TXBrowse, Class TBar and Class TBtnBmp. Please review samples\TestGrad.prg

* Fix: MsgBar items prompts, using 2007 clause, were not properly centered. Now it is ok.

* Fix: Class TWBrowse Method Resize() was changing the selected cell if DATA lCellStyle is .T.. Now it is ok.

* New: We are actually porting the Class TXBrowse to FWPPC. Still is a work in development, but if you are interested in beta testing it, please contact us.

* XBROWSE:

1. Post Edit navigation:
(a) If get is exited with up or down arrow, cursor is moved to previous or next row as the case may be.
(b) If lFastEdit is true, cursor goes to the next editable cell in the same row. If the edited cell is the last editable cell in the rown, cursor goes to the first editable cell of the next row.

2. Tooltips for headers: New data cToolTip of TXBrwColumn can be assigned with a toolip as character value / array / codeblock. The tooltip will be shown when mouse hovers on the header of the column.

3. Mouse Wheel: Now mouse wheel works only when the mouse is in the browse's data area and number of lines scrolled depends on the window's settings. Thanks to suggestions from Manuel Mercado and James Bott.

3. SetArray( <hash> ) is implemented for xharbour.

4. User speicified date formats can be assigned to oCol:cEditPicture and dates will be shown in the specified format will be used for display in xbrowse and export to excel. The formats are the same that are used for formatting dates in excel. ( eg dd/mm/yyyy, mmmm dd yyyy, etc )

5. Sorting RDD. Repeated click on the header toggles ascending / descending order of the sort even for RDD ( if the RDD supports ), in the same way like arrays and recordsets

6. Sorting on columns is possible for TDatabase ( and similar objects ) set with SetoDbf(...) or with commands, by assigning data name to oCol:cSortOrder. This works if the data object contains method by name SetOrder( <corder> )

7. In earlier versions a column object can be retrieved by oBrw:oCol( <cHeader> ). Now it is possible to retrieve a column object with new syntax oBrw:cHeader. It is also possible to create new columns with this syntax.

Example:
oBrw:SalePrice := { || oBrw:Value / oBrw:Value }
Above stament adds a new column with the header 'SALEPRICE' whose value is the value of column with header 'SALES' divided by the value in the column with header 'QUANTITY'.
oBrw:nEditType := EDIT_GET
Column with header 'SALES' is set to editmode.

8. New Function XBROWSE( [cAlias/aData/oRs/oDbf], [cTitle], [lAutoSort], [bSetUp] ) for quick browse of any datasource.
Example:
use customer
xbrowse()
or
xbrowse( aArray / oRs / oDbf / cAlias / hHash )
Additional features can be provided by the programmer through bSetUp codeblock, which receives the browse object as parameter.
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1445
Joined: Mon Oct 10, 2005 02:38 PM
Re: New FTDN July / Julio 2008
Posted: Mon Jul 28, 2008 11:09 PM
Antonio Linares wrote:July 2008
=======

3. Mouse Wheel: Now mouse wheel works only when the mouse is in the browse's data area and number of lines scrolled depends on the window's settings. Thanks to suggestions from Manuel Mercado and James Bott.


Antonio,

esta caracter铆stica tambi茅n la tiene el GET MULTILINE, u otros controles parecidos como el que usa ''RichEdit''?

Saludos
Carlos G.

Un Saludo

Carlos G.



FiveWin 25.12 + Harbour 3.2.0dev (r2502110321), BCC 7.7 Windows 11 Home

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
New FTDN July / Julio 2008 (8.07)
Posted: Mon Jul 28, 2008 11:35 PM

Carlos,

De momento la hemos estado probando en la clase TXBrowse.

La idea es usarla en todas las clases en las que se pueda usar el mousewheel.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1445
Joined: Mon Oct 10, 2005 02:38 PM
New FTDN July / Julio 2008 (8.07)
Posted: Tue Jul 29, 2008 12:31 PM
Antonio Linares wrote:Carlos,

De momento la hemos estado probando en la clase TXBrowse.

La idea es usarla en todas las clases en las que se pueda usar el mousewheel.


Gracias.
Carlos G.

Un Saludo

Carlos G.



FiveWin 25.12 + Harbour 3.2.0dev (r2502110321), BCC 7.7 Windows 11 Home

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
New FTDN July / Julio 2008 (8.07)
Posted: Tue Jul 29, 2008 10:40 PM
Julio 2008
========

* Mejora: La funcion GradientFill() ahora permite especificar pintado horizontal 贸 vertical. Por favor revisad samples\TestGrd2.prg

* Nuevo: Class TDialog la cla煤sula TRANSPARENT de la Clase TDialog admite el uso de bitmaps (no como bruhses). Por favor revisad samples\TestTrn2.prg

* Nuevo: Nuevos ejemplos samples\MyDLL.prg y samples\TestMyDL.prg, que muestran como construir una DLL con Harbour y como usarla.

* Nuevo: Nuevo m茅todo GetBinary( cSubKey ) en la clase TReg32. Devuelve un valor binario desde el registro.

* Correcci贸n: Se han a帽adido unas l铆neas olvidadas a la funci贸n OleInvoke() de la clase TActiveX.

* Mejora: Se han mejorado las funciones OleSetproperty(), OleGetProperty() y OleInvoke() en la clase TActiveX.

* Correcci贸n: En el m茅todo DrawItem() de la clase TComboBox, ahora funciona perfectamente cuando un men煤 desplegable se utliza como
desplegable del "combobox".

* Mejora: En la clase TSay, no se estaba poniendo por defecto el ancho correcto del texto cuando se creaba el SAY o despu茅s cuando se cambiaba el texto. Ahora funciona correctamente.

* Correcci贸n: En la clase TWBrowse, no se estaba proporcionando la columna 铆ndice cuando lCellStyle es .T. y se usaba un bloque de c贸digo para nClrText y/贸 nClrPane. Ahora est谩 correcta.

* Correcci贸n: En FWPPC, se ha implementado correctamente la funci贸n lRmDir(). Por favor, revise el ejemplo samples\folder.prg.

* Nuevo: En la clase TControl, nuevo m茅todo LDblClick(), detecta si un control est谩 en modo dise帽o (clausula DESIGN) y evita dejar el rat贸n capturado.

* Nuevo: Nueva funci贸n cValToStr( uVal, cPicture ), similar a la funci贸n cValToChar() de FWH, pero que permite el uso de una m谩scara PICTURE, incluyendo m谩scaras extendidas para valores de fechas.

* Nuevo: Nueva funci贸n WheelScroll( [nLines] ) --> nLines, pone o devuelve la cantidad de l铆neas a usar por la rueda del rat贸n en su deplazamiento (scroll). Actualmente se usa en la clase TXBrowse.

* Mejora: Mejoras en la clase TSmtp original de Fivewin, se han usado las mejoras sobre la clase de diferentes usuarios de Fivewin. Gracias a todos los que han contribuido. Se han a帽adido algunos peque帽os cambios en la edici贸n.

* Mejora: Se ha actualizado el fichero FWH\makes\BorMake.zip con los nombres nuevos de las librerias de Harbour. Se han comprobado en
FiveTechSoft y est谩n funcionando correctamente.

* Nuevo: Nueva funci贸n GradientFill( hDC, nTop, nLeft, nBottom, nRight, aGradient ), d贸nde aGradient puede contener cualquier n煤mero de
gradientes y deber铆a ser especificado de la siguiente manera: { { nPart, nClrStart, nClrEnd }, { nPart, nClrStart, nClrEnd }, ... }
nPart se especifica como 0.25, 0.5, etc..., y deber铆a agregarse a 1.

Esta funci贸n se usa en las clases TXBrowse, TBar y TBtnBmp. Por favor, revise el ejemplo samples\TestGrad.prg.

* Nuevo: Estamos portando la clase TXBrowse a FWPPC. Todav铆a est谩 en fase de desarrollo, pero si est谩 interesado en probarla, por favor contacte con nosotros.

* XBROWSE:

1. Navegaci贸n post edici贸n:

(a) Si nos salimos de un GET con las flechas arriba 贸 abajo, el cursor se desplaza a la fila previa o a la siguiente seg煤n sea el caso.
(b) Si lFastEdit es .T., el cursor se desplaza a la siguiente celda editable en la misma fila. Si la celda editable es la 煤ltima en la fila, el cursor se desplazar谩 a la primera celda editable de la siguiente fila.

2. Descripciones "Tooltips" en la cabeceras:

Nuevo data cToolTip de la clase TXBrwColumn puede ser asignado con una descripci贸n "tooltip" como un valor car谩cter / matriz / bloque de c贸digo. La descripci贸n "tooltip" ser谩 mostrada cuando el rat贸n se situe en la cabecera de la columna.

3. Rueda del rat贸n:

Ahora la rueda del rat贸n s贸lo funciona cuando el rat贸n est谩 en el area de datos del "browse" y el n煤mero de l铆neas desplazadas depende de la
configuraci贸n de la ventana. Gracias por la sugerencia a Manuel Mercado y a James Bott.

4. Se ha implementado la funci贸n SetArray( <hash> ) para xHarbour.

5. Se pueden asignar formatos de fechas especificados por el usuario a oCol:cEditPicture y las fechas se mostrar谩n en el formato especificado
y ser谩n usados al mostrar el xBrowse y al exportar a Excel. Los formatos son los mismos que los utilizados para el formateo de las fechas en
Excel. ( Ejemplo dd/mm/yyyy, mmmm dd yyyy, etc ).

6. Ordenaci贸n RDD. Los "clicks" repetidos sobre la cabecera cambia el orden ascendente/descendente de la ordenaci贸n incluso para el RDD (si el
RDD lo soporta), de la misma manera que lo har铆a con matrices y "recordsets".

7. La ordenaci贸n de columnas es posible en la clase TDatabase ( y en objetos similares ) con SetoDbf(...) o con comandos, asignando el nombre de la data a oCol:cSortOrder. Esto funciona si el objeto de datos contiene el nombre de m茅todo SetOrder (<corder>).

8. En versiones previas un objeto columna pod铆a ser devuelto por oBrw:oCol( <cHeader> ). Ahora es podible devolverlo con la nueva sintaxis oBrw:cHeader. Tambi茅n es posible crear nuevas columnas con esta sintaxis.

Ejemplo:

oBrw:SalePrice := { || oBrw:Value / oBrw:Value }

A帽ade una nueva columna con el encabezado 'SALEPRICE' cuyo valor es el valor de la columna con el encabezado de 'SALES' dividido por el valor de la columna con el encabezado de 'QUANTITY'.

oBrw:nEditType := EDIT_GET

La columna con el encabezado igual a 'SALES' es puesta en modo de edici贸n.

9. Nueva funci贸n XBROWSE( [cAlias/aData/oRs/oDbf], [cTitle], [lAutoSort], [bSetUp] ) para crear r谩pidamente una xBrowse desde cualquier fuente de datos.

Ejemplo:

use customer
xbrowse()



xbrowse( aArray / oRs / oDbf / cAlias / hHash )

Caracter铆sticas adicionales pueden ser proporcionadas por el programador a trav茅s del bloque de c贸digo bSetUp, el cual recibe el objeto "browse" como par谩metro.
regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion