| HMG 3.x Changelog |
|
|
Página 5 de 5 26/12/2006
- Actualizado: Compilador Harbour. Ver detalles en: "\hmg\harbour\Harbour Compiler Changelog.Txt" 27/06/2006
- Nuevo: Modificador /C para 'Compile.Bat'. Permite la creación de aplicaciones de modo consola/mixtas. - Solucionado: TAB. Considerando que ComCtl32.dll version 6 (API estilo XP) no soporta controles TAB verticales (estilo TCS_VERTICAL) la propiedad 'Vertical' será ignorada cuando el estilo XP esté activo y el estilo 'buttons' no se haya seleccionado. - Solucionado: TAB. Problemas con el color de fondo con algunos controles 'tab-child', cuando se usa el estilo 'buttons' y el estilo XP está activo. (bug introducido en la versión 2.0.019). - Solucionado: BROWSE. Ingreso de fechas nulas en la edición de campos no permitida. - Solucionado: Función Tone() no funciona. - Solucionado: Problemas al mostrar los mensajes de error en aplicaciones GUI que no tienen una ventana principal definida. 14/06/2006
- Nuevo: Modificador /C para 'Compile.Bat'. Permite la creación de aplicaciones de modo consola/mixtas. - Solucionado: Los siguientes controles 'tab-child' no se mostraban correctamente cuando el estilo XP esta activo: - Label - Frame - RadioGroup - Slider - CheckBox - HyperLink - Solucionado: Las aplicaciones GUI muestran una ventana de consola en sistemas Win9x. 07/06/2006
- Actualizado: Binarios del Compilador Harbour. Detalles en directorio \hmg\horbour\changelog,txt. - Modificado: El comando SET CODEPAGE, soporta más nuevos lenguajes en esta versión: SET CODEPAGE TO ENGLISH | SPANISH | BULGARIAN | GERMAN | GREEK | HUNGARIAN | POLISH | PORTUGUESE | RUSSIAN | SERBIAN | SLOVENIAN 06/06/2006
- Actualizado: Binearios del Compilador Harbour (cambios muy importantes y soluciones a problemas). Detalles en el directorio \hmg\horbour\changelog,txt. - Nuevo: Comando SET CODEPAGE. Estable la página de código actual. SET CODEPAGE TO ENGLISH | SPANISH - Nuevo: Soporte para lenguaje Checoslovaco (SET LANGUAGE TO CZECH). Gracias a Vojtech Obrdlik. - Solucionado: Control STATUSBAR. Respuesta lenya de los iconos de estado del teclado. - Solucionado: Control DATEPICKER. Problemas con el evento OnChange (reportado por Chris). 08/04/2006
- Nuevo: Propiedad 'ShowHeaders', cláusula 'NoHeaders' para el control GRID. - Solucionado: Problemas con el evento ACTION del control StatusBar. - Solucionado: Verificación de errores en el control 'ToolBar Button'. - Solucionado: Error tipográfico en la función MiniGuiVersion(). - Solucionado: Problemas con scroll originado con la rueda del mouse en ventanas de dimensiones virtuales. - Solucionado: Problemas en compile.bat con el soporte para la libreria 'codepage'. - Solucionado: Problemas con scroll originado con la rueda del mouse en la ventana de vista preliminar de impresión. 31/03/2006
- Solucionado: Problemas con el evento ACTION de los ítems especiales de StatusBar. - Solucionado: Problemas SET LANGUAGE con los mensajes del sistema de impresión. - Solucionado: Conflicto entre la propiedad BREAK y la sentencia BREAK de la estructura BEGIN SEQUENCE. Gracias a Fernando Yurisich. - Solucionado: BROWSE. La ventana de edición de campos memo muestra el nombre de la columna en lugar de 'Edit memo' como título. Gracias a Fernando Yurisich. - Actualizado: Mensajes en Francés del sistema de impresión. Gracias a 'c.jouniauxdiv'. 24/03/2006
- Solucionado: Problemas con @...PRINT TO. - Solucionado: Ejemplo ODBC. String de conexión actualizada. 06/03/2006
- Nuevo: Cláusula NOFIXED para el comando DO REPORT y reportes externos. basado en una contribución de Ciro Vargas Clemov. - Nuevo: Cláusula STOREPATH para el comando COMPRESS. - Cambiado: La librería Codepage es enlazada por default en esta versión. - Solucionado: Objetos OLE descargados incorrectamente. - Solucionado: Problemas en las funciones aPrinters() y GetPrinter() con impresoras de red en Windows 2000. Gracias a: Ciro Vargas Clemov, Luigi Ferraris y Pierpaolo Martinello. - Solucionado: Problemas de configuración en el ejemplo CONTROL FINANCIERO. 28/02/2006
- Solucionado: problemas con las funciones GetPrintableAreaWith()y GetPrintableAreaHeight() (bug introducido en 2.0.010). - Solucionado: Problemas con el metodo 'release' (windows). Bug introducido en 2.0.010. - Solucionado: Problemas en la vista preliminar con la ventana 'Go To Page'. - Nuevo: Cláusula NAME para el comando START PRINTDOC. Esta cláusula permite establecer un nombre personalizado para el trabajo de impresión (es el nombre mostrado por el spooler de windows). START PRINTDOC [ NAME ] - Nuevo: Comando SET TOOLTIPSTYLE. SET TOOLTIPSTYLE STANDARD | BALLOON - New: SET TOOLTIPBACKCOLOR. Establece el color de fondo para los tooltips. (**) SET TOOLTIPBACKCOLOR - New: SET TOOLTIPFORECOLOR. Establece el color de fuente para los tooltips. (**) SET TOOLTIPFORECOLOR - Nuevo: Metodo 'Print' (ventanas). Ver ejemplo: \hmg\samples\maindemo (syntax I). (*) - Nuevo: Metodo 'Capture' (ventanas). Este metodo guarda una copia de la ventana especificada (.bmp) en la carpeta actual. Ver ejemplo: \hmg\samples\maindemo (syntax I). (*) - Nuevo: Comando PRINT GRAPH. PRINT GRAPH [ OF ] [ PREVIEW ] [ DIALOG ] Imprime gráficos de tipo BARS, POINTS, LINES y PIE creados con el comando DRAW GRAPH en la ventana especificada. Ver ejemplos: \hmg\samples\graph_3 and \hmg\samples\graph_4. (*) (*) Basado en una contribución de Ciro Vargas Clemov. (**) Based encodigo publicado en el sitio de Marcos Antonio Gambeta (http://geocities.yahoo.com.br/marcosgambeta). 22/02/2006
- Solucionado: Problemas de impresión en Win9x. - Solucionado: Problemas en la vista preliminar de impresión con algunos tamaños de papel no usuales. - Modificado: GetPrinter() muestra las impresoras ordenadas y la impresora por defecto es seleccionada al inicio (Gracias a Ciro Vargas Clemov). La ventana es ahora mas ancha para evitar el truncamiento de nombres de impresora más largos. - Nuevo: Cláusulas opcionales RIGHT y CENTER para el comando @...PRINT. 17/02/2006
- Optimizado: Administración de variables internas de HMG. Todas las variables públicas usadas por HMG fueron reemplazadas por un array público único que contiene todos los datos de uso interno. Este array se denomina _HMG_SYSDATA. Una referencia completa del uso de cada elemento en este array se encuentra al inicio del archivo 'h_init.prg' ubicado en la carpeta SOURCE. A partir de este cambio el uso de memoria para una aplicación HMG típica se redujo aproximadamente 100k y el tamaño de los ejecutables aproximadamente 50k. - Nuevo: Soporte para HMG User Components. He creado una interfase estándar para permitir a los usuarios de HMG crear sus propios componentes (por ejemplo controles) sin necesidad de modificar la librería. Referencia de HMG User Components: - InstallEventHandler ( ) Cada vez que un evento es iniciado por el sistema, la función especificada será invocada. Esta función recibirá los siguientes parámetros: hWnd, nMsg, wParam, lParam Si ña función procesa el mensaje, esta debe retornar un valor diferente de NIL. De lo contrario, debe retornar NIL. - InstallMethodHandler(,) Cada vez que el método especificado sea invocado, el procedimiento será ejecutado. Si este procedimiento procesa el método, debe asignarse .T. al 'user process flag' ( _HMG_SYSDATA [63] ). De lo contrario debe asignárseLe .F. - InstallPropertyHandler(,,) Cuando se le asigne un valor a la propiedad especificada se invocará con todos los parámetros originales. Cuando el valor de la propiedad especificada sea leído, será invocada con todos los parámetros originales. En ambos casos, si se procesa la función, debe asignarse .T. al 'user process flag' ( _HMG_SYSDATA [63] ). De lo contrario debe asignárseLe .F. - Otras Consideraciones: Si los componentes creados requieren directivas #command (por ejemplo un control) las definiciones deben agregarse al archivo i_UsrInit.ch ubicado en la carpeta INCLUDE. Estas definiciones deben incluir marcadores de inicio y fin que serán usados para la creación de procedimientos automáticos de instalación y mantenimiento para los componentes. El formato para el marcador de inicio es: #define BASEDEF_ El formato para el marcador de finalización es: #undef BASEDEF_ Si se han creado métodos o propiedades con nuevos nombres (no especificados actualmente en la definición del comando DECLARE WINDOW en el archivo i_windows.ch) debe agregarse las directivas de traducción para ellas en el archivo i_UsrSOOP.ch ubicado en la carpeta INCLUDE. Estas definiciones deben incluir marcadores de inicio y fin y las directivas de traducción deben seguir reglas especiales. El formato para el marcador de inicio es el siguiente: #define SOOP_ ;; EL formato para las directivas #translate de los métodos es: #xtranslate . . MethodName => Domethod ( <"Window">, <"Control"> , "MethodName" ) ;; El formato para las directivas #translate de las propiedades es: #xtranslate . . PropName => GetProperty ( <"Window">, <"Control"> , "PropName" ) ;; #xtranslate . . PropName := => SetProperty ( <"Window">, <"Control"> , "PropName" , ) ;; El formato para el marcador de finalización es: #undef SOOP_ ;; - Ejemplo: c:\hmg\samples\user_components - Solucionado: Warnings reportados por Harbour al construir la librería. - Solucionado: Problemas varios en algunos ejemplos de BROWSE y GRID. - Solucionado: Definicion del comando TOOLBAR (estilos de fuente). 25/01/2006
- Changed: From this release, build number is at the end of version number. This way '2.0.009' is used instead '2.0 build 009'. Besides that 'ALPHA' and 'BETA' denominations will not be used anymore, 'Stable' and 'Test' will be used to indicate the status of a specific release. - Fixed: EXECUTE (WAIT) command definition bug. - Fixed: BROWSE bug. The problem arises when DynamicBackColor property is not Nil and a column is resized. - Fixed: TEXTBOX / EDITBOX controls. Non consistent behavior about control's content selection when focus is received. - Fixed: Print Preview. Thumbails background problems (bug introduced in build 008). - Updated: Harbour compiler binaries. 18/12/2005
- Fixed: BROWSE repositioning (row/col properties) problems. - Fixed: DYNAMICFORECOLOR, INPUTMASK and FORMAT properties not available in splitchild BROWSE (standard syntax). - Fixed: BROWSE (valid property) xHarbour compatibility issue. - Fixed: GRID. Edit problems when grid is inside tab. - Fixed: STATUSBAR control. RELEASE method problems when CLOCK or KEYBOARD items are used. - Fixed: STATUSBAR control. When created outside of WINDOW...END WINDOW structure and CLOCK / KEYBOARD special items are used a runtime error on internal timers creation arises. - Fixed: IMAGE control. Memory leak at PICTURE property change. 08/12/2005
- Fixed: When toolbar button is disabled, hot key associated to the button (if any) was not deactivated. - Fixed/Updated: MySql access libraries. MySql support is working now for LibMySql.dll distributed with 4.1 and 5.0 MySql versions. - Changed: ADS support libraries will be not included in main HMG distribution nor linked by default anymore. These libraries will be available for download separately. - Updated: Harbour compiler binaries. This build solves various known problems and includes new features like SWITCH and FOR EACH structures and support for date constants. Look at \hmg\harbour\changelog.txt for details.
- Fixed: 'This.Cell()' object reference not working. - Fixed: GRID. FontName and Fontsize used in cell editing are the same as control. - Fixed: BROWSE. FontName and Fontsize used in cell editing are the same as control. - Fixed: GRID. 'UpDown' style for datepicker edit control not working. - Fixed: GRID. Using 0 as value for a COMBOBOX column causes program crash. - Fixed: GRID. Some cosmetic problems with edit controls. - Fixed: GRID_11, GRID_12, GRID_14, GRID_16 samples. Fixed / Update: Harbour MiniGUI IDE. - Linker and resource compiler errors not shown in 'post-build' error report window. - New properties (introduced in 2.0) dor GRID and BROWSE controls are supported now 24/10/2005
- Changed: MiniPrint library source code (a modified/optimized version) is now included as an integral part of MiniGUI library. This code is experimental and will be changed / optimized in the future. Please, do not use these sources as an example of MiniGUI programming, since some techniques used there relies hardly on MiniGUI internals and could be non-stable or reliable applied to other environments (outside print modules). The same applies to modifications to the code. You don't need to use the "#include 'miniprint.ch'" anymore, but that is supported for backwards compatibility. - Updated: Harbour Compiler Binaries. There is various important changes. The most relevant is the synchronization of RDD system with xHarbour. - New: 'ColumnValid' property for GRID control. Codeblock array (one element per column) is evaluated at cell editing. This.CellValue variable are available at codeblock evaluation. Sample: COLUMNVALID { ; { || This.CellValue > 100 } , ; { || This.CellValue = Date() } , ; Nil , ; Nil , ; Nil ; } See \hmg\samples\grid\grid_14 \hmg\samples\grid\grid_15 - New: 'ColumnWhen' property for GRID control. Codeblock array (one element per column) is evaluated at cell editing. This.CellValue variable are available at codeblock evaluation. Sample: COLUMNWHEN { ; { || This.CellValue >= 'M' } , ; { || This.CellValue >= 'C' } , ; { || ! Empty ( This.CellValue ) } ; } See \hmg\samples\grid\grid_16 \hmg\samples\grid\grid_17 - New: GetPrintableAreaWidth() Function. Returns the current printable area width in milimeters. - New: GetPrintableAreaHeight() Function. Returns the current printable area height in milimeters. - New: GetPrintableAreaHorizontalOffset() Function. Returns the current printable area horizontal offset (distance from paper edge to begining of printable area) in milimeters. - New: GetPrintableAreaVerticalOffset() Function. Returns the current printable area vertical offset (distance from paper edge to begining of printable area) in milimeters. - Updated: Harbour MiniGUI IDE. Build processing has been changed according requirements of new Harbour RDD structure. An installer is provided now (download at www.geociries.com/harbour_minigui). - Updated: HMG application build batch files according requirements of new Harbour RDD structure.
- New: Cell ( nRow , nCol ) property for GRID control (read(write). - New: Edit routines for GRID control. Editing is now 'in-cell'. - New: 'DynamicForeColor' / 'DynamicBackColor' properties for GRID control. Codeblock array (one element per column) evaluated for each cell at any grid change. This.CellRowIndex, This.CellColIndex and This.CellValue variables are available at codeblock evaluation. Sample: bColor := { || if ( This.CellRowIndex/2 == int(This.CellRowIndex/2) , ; RGB (128,128,128) , RGB (192,192,192) ) } DYNAMICBACKCOLOR { bColor , bColor, bColor, bColor, bColor, bColor } See \hmg\samples\grid\grid_10 \hmg\samples\grid\grid_11 \hmg\samples\grid\grid_12 - New: EDITCONTROLS Property for GRID. You can specify control type and behavior for cell edit. EDITCONTROLS { aControlDef1 , aControlDef2 , ... aControlDefN } Control Definition Array: ------------------------- TEXTBOX { cControlType , cDataType , cInputMask , cFormat } cControlType = 'TEXTBOX' (Required) cDataType = 'CHARACTER' , 'NUMERIC' , 'DATE' (Required) cInputMask = cInputMask (Optional) cFormat = cFormat (Optional) DATEPICKER { cControlType , cControlStyle } cControlType = 'DATEPICKER' (Required) cControlStyle = 'DROPDOWN' , 'UPDOWN' (Required) COMBOBOX { cControlType , acItems } cControlType 'COMBOBOX' (Required) acItems (Required) SPINNER { cControlType , nRangeMin , nRangeMax } cControlType 'SPINNER' (Required) nRangeMin (Required) nRangeMax (Required) CHECKBOX { cControlType , cCheckedLabel , cUnCheckedLabel } cControlType 'CHECKBOX' (Required) cCheckedLabel (Required) cUnCheckedLabel (Required) Data type for each column will depend control specified. NUMERIC TEXTBOX : NUMERIC DATE TEXTBOX : DATE CHARACTER TEXTBOX : CHARACTER SPINNER : NUMERIC COMBOBOX : NUMERIC CHECKBOX : LOGICAL Sample: @ 10,10 GRID Grid_1 ; WIDTH 620 ; HEIGHT 330 ; HEADERS {'Column 1','Column 2','Column 3','Column 4',; 'Column 5'} ; WIDTHS {140,140,140,140,140} ; ITEMS aRows ; EDIT ; COLUMNCONTROLS { {'TEXTBOX','NUMERIC','$ 999,999.99'},; {'DATEPICKER','DROPDOWN'} ,; {'COMBOBOX',{'One','Two','Three'}} , ; { 'SPINNER' , 1 , 20 } , ; { 'CHECKBOX' , 'Yes' , 'No' } } See \hmg\samples\grid\grid_9 \hmg\samples\grid\grid_10 - New: 'LEGENDSWIDTH' clause (optional) for DRAW GRAPH commands (BARS/LINES/POINTS types). - Fixed: '!' template symbol allows digits. - Fixed: BROWSE control, default Inputmask incorrect for floating point fields. - Fixed: DRAW GRAPH commands, when data series values are all '0', program crash (divide by zero error). - Fixed: DRAW GRAPH commands, labels backcolor incorrect when window backcolor is not the default. - Fixed: Automatic Inputmask for edit Browse fail for numeric fields with no decimals. - Changed: BROWSE edit is always inplace without regarding about 'InPlace' value (Edit and Inplace properties has now the same meaning).
- New: 'InputMask' property for BROWSE control. This must be defined as a character array (one element per column). The same rules as TEXTBOX are applied. Sample: INPUTMASK { '$99.9', '!!!!!!!!!!' , '!!!!!!!!!!' ) - New: 'Format' property for BROWSE control. This must be defined as a character array (one element per column). The same rules as TEXTBOX are applied. Sample: FORMAT { 'E' , '' , '' } - Fixed: Append record causes crash when DynamicBackColor / DynamicForecolor used in Browse control. - Fixed: 'DynamicBackColor' and 'DynamicForeColor' Borwse properties accept color arrays now, being, this way, consistent with MiniGUI general color handling. - Fixed: BROWSE control, when 'InPlaceEdit' style is used, program crash if you use keep ENTER key pressed. - Fixed: BROWSE control, when 'DynamicbackColor' / 'DynamicForeColor' properties are used along images, program crash.
- Enhanced: 'AllowEdit' Borwse property can be read and written at runtime now. - Enhanced: 'AllowDelete' Borwse property can be read and written at runtime now. - Enhanced: 'AllowAppend' Borwse property can be read and written at runtime now. - New: GetProgramFileName() Function - New: 'DynamicForeColor' property for BROWSE control. Codeblock array (one element per column) evaluated for each cell at browse refresh allowing total control of foreground color (the value returned by the codeblock). Sample: bColor := { || if ( recno()/2 == int(recno()/2) , RGB (128,128,128) , ; RGB (192,192,192) ) } DYNAMICFORECOLOR { bColor , bColor, bColor, bColor, bColor, bColor } - Fixed: 'No new line at end of file' warning. - Fixed: Registry support not available. - Fixed: Grid lines corruption when up and down buttons are used to scroll. - Changed: Harbour MiniGUI IDE and Harbour MiniPrint library are distributed separately. You must download them at Harbour MiniGUI site: www.geocities.com/harbour_minigui - Changed: dll files required for ADS, MYSQL and ZIP samples must be downloaded from sites indicated in readme.txt files located at corresponding folders.
- New: 'DynamicBackColor' property for BROWSE control. Codeblock array (one element per column) evaluated for each cell at browse refresh allowing total control of background color (the value returned by the codeblock). Sample: bColor := { || if ( recno()/2 == int(recno()/2) , RGB (128,128,128) , ; RGB (192,192,192) ) } DYNAMICBACKCOLOR { bColor , bColor, bColor, bColor, bColor, bColor } - New: 'When' property for BROWSE control. This is a codeblock array (one element per column) evaluated prior to cell edit. Sample (Full Record Edit). Expressions may contain other fields temporary values: WHEN { { || Test->Code == 10 } , , { || MemVar.Test.Married == .t. },,,} Sample (InPlace Edit). Expressions MAY NOT contain other fields temporary values (Memvar.*), since edition is per individual field): WHEN { { || Test->Code == 10 } , ,{ || Test->Married == .t. } , , , } - New: IMAGESIZE clause for TOOLBAR control. If not specified it is calculated automatically. - New: STRICTWIDTH clause for TOOLBAR control. Forces buttons width, preventing automatic width changes. - New: TOOLTIP clause for TOOLBAR BUTTON control - New: TOP clause for STATUSBAR control. Allows to locate status bar at the top of the window. - New: RIGHTALIGN property for HYPERLINK control - New: CENTERALIGN property for HYPERLINK control - New: GetStartUpFolder() Function. - New: JPG and GIF resource types supported by IMAGE and TOOLBAR controls (you must use JPG and GIF as resource types in resource file). - New: Function 'CallDll32'. This is simpler that DynaCall used in previous versions (DECLARE command uses it now). DECLARE syntax and format are preserved for backwards compatibility, but, it is recommended to use CallDll32 function instead. Syntax: CallDll32 ( cFunctionName , cDllName , ... ... ) This code author is Vic McClung (I've made a slight change to make it run under Harbour) SInce this is new code and it has not been fully tested yet, problems could arise. If find some trouble please send to me a report according directions in 'BugReport.Txt' file. - Optimized / Rewrote from the scratch: TOOLBAR control. - Optimized / Rewrote from the scratch: STATUSBAR control. - Optimized / Rewrote from the scratch: HELP commands. - Optimized / Rewrote from the scratch: RICHEDITBOX control. - Optimized / Redesigned: HYPERLINK control (Works on top of label control now). - Changed: Zip Support. Considering that hbzlib has some license restrictions I've decided to not include in HMG distribution anymore. From now, Zip support will rely on 'xzip.dll' a freeware Zip Component (http://xstandard.com) You must considering the following: - xzip.dll must be located at the application folder. - Clauses PASSWORD and CREATEDIR of UNCOMPRESS command are not available anymore, since that features are not supported by this component. - The following contributed modules has been separated from main library and compiled as individual libraries. The source code for these contributions is available at \source folder. - libcrypt.a: Crypto Library. Contributor: Grigory Filatov - libedit.a: EDIT command support library. Contributor: Cristobal Molla - libeditex.a: EDIT EXTENDED command support library. Contributor: Cristobal Molla - libreport.a: DO REPORT command support library. Contributor: Ciro vargas Clemow - libgraph.a: DRAW commands support library. Contributors: Grigory Filatov / Rathinagiri - libregistry.a:Registry commands support library. Contributor: Grigory Filatov - libini.a: INI commands support library. Contributors: Grigory Filatov / Janusz Pora - HbPrinter library will not be included in Harbour MiniGUI distribution anymore.
|
|||||||
| Modificado el ( viernes, 02 de abril de 2010 ) | |||||||
HMG 3.X Lista de Cambios 
