HMG 3.4.3

HMG Unicode versions 3.1.x related

Moderator: Rathinagiri

Post Reply
User avatar
Posts: 5321
Joined: Tue Jul 29, 2008 6:30 pm
DBs Used: MariaDB, SQLite, SQLCipher and MySQL
Location: Sivakasi, India
Has thanked: 198 times
Been thanked: 210 times

HMG 3.4.3

Post by Rathinagiri »

I am profoundly happy and proud to announce our new version 3.4.3. This version is possible with the untiring efforts of our Dr. Claudio Soto. There are so many new features introduced in this version (especially in GridInPlaceEdit).

You can download this latest version from here (64 MB)

For 64 Bit developers, you have to download and install Harbour64 and MingW64 from here (15 MB) and here (71 MB)respecitvely.

Change Log from the last version:

Code: Select all

-HMG 3.4.3 2016/05/08
   - Updated MinGW C compiler (32 and 64-bit) to version 5.3.0 (release december 2015)
   - Updated Harbour 64-bit compiler to version nightly 2016-04-20
   - Updated Harbour compiler to version nightly 2016-05-07
   - New HMG_IsWin64(), returns TRUE if OS is of 64-bit (contrib by BPD2000)
   - New HFCL functions for RichEditBox (contrib by Kevin Carmody):
      - RichEditBox_LoadFileEx, RichEditBox_SaveFileEx
      - RichEditBox_HasNonAsciiChars, RichEditBox_HasNonAnsiChars
      - GetRichEditFileType, HMG_UTF16ByteSwap
      - see \SAMPLES\HFCL\WordScribe
   - New Numeric TextBox support comma ( , ) as decimal separator (contrib by Marek)
   - New Draw GRAPH in Bitmap (contrib by S. Rathinagiri):
      - see documentation and demo \SAMPLES\Controls\Graph\GRAPH_Bitmap
      - Note: It is highly recommended to use Graph Bitmap instead of Graph Command because the painting is much more efficient and does not produce flicker
   - New internal C function: HMG_Trace()
   - New function GetBinaryType ( cApplicationName ) --> nBinaryType (constants are defined in
      - SCS_32BIT_BINARY   // A 32-bit Windows-based application
      - SCS_64BIT_BINARY   // A 64-bit Windows-based application.
      - SCS_DOS_BINARY     // An MS-DOS – based application
      - SCS_OS216_BINARY   // A 16-bit OS/2-based application
      - SCS_PIF_BINARY     // A PIF file that executes an MS-DOS – based application
      - SCS_POSIX_BINARY   // A POSIX – based application
      - SCS_WOW_BINARY     // A 16-bit Windows-based application
   - Bos Taurus: new version 1.0.6
      - New functions(see doc):
         - BT_DrawTextEx (hDC, Row, Col, Width, Height, cText, cFontName, nFontSize, aFontColor, aBackColor, nTypeText, nAlingText, nOrientation)
         - BT_DrawTextSize (hDC, cText, cFontName, nFontSize, nTypeText) --> { nTextWidth, nTextHeight, A+B+C of first character, A, B, C }
         - BT_DrawPolygon (hDC, aPointY, aPointX, aColorRGBLine, nWidthLine)
         - BT_DrawPolyBezier (hDC, aPointY, aPointX, aColorRGBLine, nWidthLine)
         - BT_DrawArc (hDC, Row1, Col1, Row2, Col2, RowStartArc, ColStartArc, RowEndArc, ColEndArc, aColorRGBLine, nWidthLine)
         - BT_DrawChord (hDC, Row1, Col1, Row2, Col2, RowStartArc, ColStartArc, RowEndArc, ColEndArc, aColorRGBLine, nWidthLine, aColorRGBFill)
         - BT_DrawPie (hDC, Row1, Col1, Row2, Col2, RowStartArc, ColStartArc, RowEndArc, ColEndArc, aColorRGBLine, nWidthLine, aColorRGBFill)
   - New: now in Label control is possible to assign any data type or a list of data, e.g.
      - @ ... LABEL ... VALUE xDataType
      - Form.Label.Value := xDataType
      - Form.Label.Value := { xDataType, xDataType, ... }
   - New property HBITMAP in IMAGE control (set/get hBitmap into Image control)
   - New in GRID control:
      - now when loads a Grid control and column control is NIL converts automatically any data type in text, this avoids that column appears empty.
      - On InplaceEditEvent <OnInplaceEditEventProcedure>
      - Properties Available For OnInplaceEditEvent Procedure:
            - This.IsInplaceEditEventInit: Return .T. or .F.
            - This.IsInplaceEditEventRun: Return .T. or .F.
            - This.IsInplaceEditEventFinish: Return .T. or .F.
            - This.InplaceEditGridName: eg. “Grid_1”
            - This.InplaceEditParentName: eg. “Form_1”
            - This.InplaceEditControlHandle: Handle of InplaceEdit ColumnControl, eg. Handle of TEXTBOX, DATEPICKER, TIMEPICKER, COMBOBOX, SPINNER, CHECKBOX, etc.
            - This.InplaceEditControlIndex: Return nControlIndex
      - Now ON CLICK and ON KEY event of Gid control is available too in InplaceEdit state,
        for check if the event is fired in the Grid control or inside of InplaceEdit control you use the property This.IsInplaceEditEventRun       
      - see SAMPLES\Controls\Grid\GridInplaceEditEvent
- Documented in --> Advanced --> Memory, Processes and Threads
   - New RELEASE MEMORY, release unused memory (leak memory), test for example:
   - New HMG_GetObjectCount( [ nProcessId ] )
      - returns an array of 3 items with information about the number of system objects used for a process { nGDIObjects, nUserObjects, nKernelObjects }
   - Documented many undocumented functions
   - New: CREATE EVENT CODEBLOCK bCodeBlock [ HWND hWnd ] [ MSG nMsg ] [ STOREINDEX nIndex ]
   - New: HMG_PressKey( nVK1, nVK2, ... ) --> return array { nVK1, nVK2, ... }
         - Simulates the pressure of a key or a combination of keys (where nVK is a virtual key code)
   - New in HMG Debugger (see doc):
      - New hotkeys
      - Now you can switch between the ToolBar and the Main Menu at your convenience
      - Fixed minor bugs
      - added in dbgGUI.prg DoEvents() into large FOR-NEXT cycles
      - added a waiting message while the program loads
   - For a defensive programming (minimization of input errors)
      - New Class HMG_TString:
         - This class selects automatically the correct ANSI or Unicode string function depending of current code page,
           the use of this class create a more portable your code.
         - for default HMG a create instance of this class, you call with a pseudovariable oString (e.g. oString.Upper( cText ) )
         - create a new instance of class -> oStr := HMG_TStringNew(), use e.g. oStr.Upper( cText )
         - see documentation( DOC --> CLASSES --> HMG_TString )
   - New: CHECK TYPE [ SOFT ] <var1> AS <type1> [ , <var2> AS <type2> [, <varN> AS <typeN> ] ]
      <var> = var name
      - see documentation( DOC --> Advanced --> CHECK TYPE )
   - New IDE ver 1.1
      - now the IDE not convert to lowercase the name of the PRG files
      - eliminated the maximum limit of 10000 milliseconds in the Timer control imposed for the IDE
      - Zero value in MAXLENGTH property of the controls RichEdit, TextBox and EditBox is equal a NIL value
      - now double click on the Run or Debug buttons not abort the IDE
   - Fixed bug in SetGridQueryData() in Win XP (reported by Eduardo Luis)
   - Fixed bug in TrackPopupMenu() (reported by Esgici and Mustafa)
   - Fixed bug in Transparent Label (reported by Emzampi)
   - Fixed bug in Transparent property of BT_DrawText() function (reported by Andres Gonzales)
   - Fixed bug in DynamicBackColor and DynamicForeColor of the Grid control when used with database (reported by Luis Vasquez)
   - Fixed bug in Set/Get Image in column one of Grid control (introduced in HMG.3.4.1) (reported by Zoltan Miszler)
   - Fixed bug in OnCheckBoxClicked of Grid control (reported by Rathinagiri)
   - Fixed bug in Picture property of ToolBar Button (reported by Pablo César)
   - Fixed bug in updating the Value property when an item is deleted in the Grid control (reported by TopsMarc)
   - Fixed bug in updating record pointer in database in the Grid control (reported by TopsMarc)
   - Fixed bug in Hotkey Alt+S and Alt+U of the Grid control (reported by PiotrM)
   - Fixed bug in ToolTip CustomDraw (reported by Eduardo Luis and Kevin Carmody)
East or West HMG is the Best.
South or North HMG is worth.
...the possibilities are endless.

User avatar
Posts: 80
Joined: Wed Apr 06, 2016 5:57 am
Location: Belgium (Flanders)
Been thanked: 1 time

Post by TopsMarc »

Thank you very much to the HMG development team :D

Posts: 220
Joined: Tue May 19, 2009 7:10 am
Been thanked: 9 times

Post by jayadevu »

Thanks Team HMG for your tireless efforts.

Warm regards,


User avatar
Posts: 3408
Joined: Thu Sep 11, 2008 5:31 am
Location: Myszków, Poland
Has thanked: 268 times
Been thanked: 172 times

Post by mol »

Wow! Thanks!

User avatar
Posts: 4537
Joined: Wed Jul 30, 2008 9:17 pm
DBs Used: DBF
Location: iskenderun / Turkiye
Has thanked: 409 times
Been thanked: 118 times

Post by esgici »

mol wrote:Wow! Thanks!

User avatar
Posts: 2576
Joined: Sun Nov 25, 2012 2:44 pm
DBs Used: 1 MySQL - MariaDB
Location: Belgium
Has thanked: 865 times
Been thanked: 161 times

Post by serge_girard »

Thanks to all !


User avatar
Posts: 3408
Joined: Thu Sep 11, 2008 5:31 am
Location: Myszków, Poland
Has thanked: 268 times
Been thanked: 172 times

Post by mol »

Something is wrong with IDE_ANSI in installation. There are no .ANS language files.

Posts: 23
Joined: Sat Apr 02, 2016 4:53 pm
DBs Used: DBF
Location: Bratislava, Slovak Republic
Has thanked: 11 times
Been thanked: 1 time

Post by jozef »

Perfect !!!

Thank you.


User avatar
Posts: 326
Joined: Sat Jun 29, 2013 1:26 pm
Location: Algerie
Has thanked: 13 times
Been thanked: 15 times

Post by tonton2 »

mol wrote:Wow! Thanks!
L'Algerie vous salut

User avatar
Posts: 1172
Joined: Sat Sep 10, 2011 4:07 am
Location: India
Has thanked: 257 times
Been thanked: 153 times

Post by bpd2000 »

serge_girard wrote:Thanks to all !

Convert Dream into Reality through HMG

Post Reply