<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Project HwGUI</title><link>https://sourceforge.net/p/hwgui/</link><description>Recent changes to Project HwGUI</description><atom:link href="https://sourceforge.net/p/hwgui/feed.rss" rel="self"/><language>en</language><lastBuildDate>Sun, 15 Nov 2026 15:25:57 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/hwgui/feed.rss" rel="self" type="application/rss+xml"/><item><title>  * source/winapi/control.c</title><link>https://sourceforge.net/p/hwgui/code/4074/</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;source/winapi/control.c     * hwg_DarkGroupProc(): WM_ERASEBKGND no longer fills the whole group       box. The group box is above its siblings in the Z-order and is       WS_EX_TRANSPARENT, so it was painted after them and wiped out       owner-draw SAYs placed inside it (they showed once, then went       black). Only the frame band is erased now.   * source/winapi/hcontrol.prg     * HStatic:Paint(): in dark mode a bordered SAY without BACKCOLOR uses       the edit palette, soft white text and a grey border. BACKCOLOR and       TEXTCOLOR given by the program still take precedence.     * HGroup:New(): added WS_CLIPSIBLINGS.   * source/winapi/hcwindow.prg     * onCtlColor(): in dark mode HSTATIC/HLINE now honor TEXTCOLOR and       BACKCOLOR given by the program (the theme palette is only the       default).     + Added ContrastColor() to pick black/white text when only BACKCOLOR       is given.&lt;br/&gt;&lt;a href="/p/hwgui/code/4074/"&gt;View Changes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">itamarlins</dc:creator><pubDate>Sun, 15 Nov 2026 15:25:57 -0000</pubDate><guid isPermaLink="false">https://sourceforge.net/p/hwgui/code/4074/</guid></item><item><title>  * source\winapi\dialog.c: Added Owner-Draw menu support inside dialogs.</title><link>https://sourceforge.net/p/hwgui/code/4073/</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;source\winapi\dialog.c: Added Owner-Draw menu support inside dialogs.      * Added WM_MEASUREITEM and WM_DRAWITEM handling in both        s_ModalDlgProc and s_DlgProc.      * Delegated rendering to hwg_OnMenuMeasureItem() and        hwg_OnMenuDrawItem() from menu_c.c.   * source/winapi/menu_c.c     ! Owner-draw menus: submenu arrow now drawn with the item text color       (visible in Dark Mode) and the system arrow is clipped out.     ! hwg_OnMenuDrawItem(): owner HMENU taken from dis-&amp;gt;hwndItem instead       of wParam (submenu detection and checkmark state were failing).     + Added bSubMenu flag to HWG_MENU_ITEM_OD; menu bar items get no arrow.&lt;br/&gt;&lt;a href="/p/hwgui/code/4073/"&gt;View Changes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">itamarlins</dc:creator><pubDate>Sat, 14 Nov 2026 23:55:28 -0000</pubDate><guid isPermaLink="false">https://sourceforge.net/p/hwgui/code/4073/</guid></item><item><title>   * utils\bincnt\addbatitem.prg: Fixed critical container corruption on delete.</title><link>https://sourceforge.net/p/hwgui/code/4072/</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;utils\bincnt\addbatitem.prg: Fixed critical container corruption on delete.                 * HBinC:Del() was only blanking the object's name in memory                   instead of removing it from the internal array.                 * Added hb_ADel( ::aObjects, n, .T. ) to physically shrink                   the array. This prevents HBinC:Add() from miscalculating                   the next object's offset and overwriting the file header                   when the last item is deleted.&lt;br/&gt;&lt;a href="/p/hwgui/code/4072/"&gt;View Changes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">itamarlins</dc:creator><pubDate>Sat, 14 Nov 2026 18:44:44 -0000</pubDate><guid isPermaLink="false">https://sourceforge.net/p/hwgui/code/4072/</guid></item><item><title>  * hwgui.hbp</title><link>https://sourceforge.net/p/hwgui/code/4071/</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;hwgui.hbp     + Added {zig}-cflag=-DHWG_ZIG_CFGUARD_STUB   * source/winapi/window.c     ! Added a stub for __guard_dispatch_icall_dummy, enabled only with       HWG_ZIG_CFGUARD_STUB (zig cc, Windows x64).       Static linking with zig pulls in mingw_cfguard_support.obj from       libmingw32, which references this symbol but nothing defines it:       "lld-link: error: undefined symbol: __guard_dispatch_icall_dummy".       The stub is the "no Control Flow Guard" dispatcher (jmp *%rax).       MSYS2 clang and gcc builds are not affected.&lt;br/&gt;&lt;a href="/p/hwgui/code/4071/"&gt;View Changes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">itamarlins</dc:creator><pubDate>Fri, 13 Nov 2026 14:11:05 -0000</pubDate><guid isPermaLink="false">https://sourceforge.net/p/hwgui/code/4071/</guid></item><item><title>   * contrib\activex\htmlfunc.c, contrib\qhtm\hwg_qhtm.c,</title><link>https://sourceforge.net/p/hwgui/code/4070/</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;contrib\activex\htmlfunc.c, contrib\qhtm\hwg_qhtm.c,      source\common\editor\hcedit_w.c, source\winapi\registry.c:                 * Replaced _WIN32_WINNT 0x0400/0x400 with #ifndef guard                   + 0x0A00 (Windows 10) fallback. Eliminates the                   -Wmacro-redefined warning from Clang/Zig when the                   command line already defines -D_WIN32_WINNT=0x0A00.&lt;br/&gt;&lt;a href="/p/hwgui/code/4070/"&gt;View Changes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">itamarlins</dc:creator><pubDate>Fri, 13 Nov 2026 00:49:13 -0000</pubDate><guid isPermaLink="false">https://sourceforge.net/p/hwgui/code/4070/</guid></item><item><title>* source/winapi/window.c: Fixed owner-draw menu message routing.</title><link>https://sourceforge.net/p/hwgui/code/4069/</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;source/winapi/window.c: Fixed owner-draw menu message routing.                 * Intercepted WM_MEASUREITEM and WM_DRAWITEM in s_MainWndProc,                   s_FrameWndProc, and s_MDIChildWndProc.                 * Routed these messages to hwg_OnMenuMeasureItem() and                   hwg_OnMenuDrawItem() before dispatching to the Harbour ONEVENT.                 * This fixes the issue where context menus rendered as empty                   grey bars with default arrows on Windows 10.&lt;br/&gt;&lt;a href="/p/hwgui/code/4069/"&gt;View Changes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">itamarlins</dc:creator><pubDate>Thu, 12 Nov 2026 20:04:38 -0000</pubDate><guid isPermaLink="false">https://sourceforge.net/p/hwgui/code/4069/</guid></item><item><title>   * samples\xmlparseerror.prg: small fix.</title><link>https://sourceforge.net/p/hwgui/code/4068/</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;samples\xmlparseerror.prg: small fix.&lt;br/&gt;&lt;a href="/p/hwgui/code/4068/"&gt;View Changes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">itamarlins</dc:creator><pubDate>Thu, 12 Nov 2026 13:43:48 -0000</pubDate><guid isPermaLink="false">https://sourceforge.net/p/hwgui/code/4068/</guid></item><item><title>   * source\common\xml\xmlparse.c: Completed unfinished error-offset feature.</title><link>https://sourceforge.net/p/hwgui/code/4067/</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;source\common\xml\xmlparse.c: Completed unfinished error-offset feature.                 * Fixed -Wunused-but-set-variable warning by making ulOffset                   functional and exposing it to Harbour.                 * Added HBXML_GETERROROFFSET() to return the exact byte position                   where the XML parsing error occurred.                 * Added HBXML_GETERRORDESC() to translate internal error codes                   into human-readable English descriptions.                 * Added HBXML_GETERRORLINE() to convert the byte offset into                   line and column numbers for easier debugging.                 * Reset ulOffset at the beginning of HBXML_GETDOC() to prevent                   error state leakage between parsing sessions.    * samples\xmlparseerror.prg: New sample demonstrating XML error handling.                 * Added XmlErrorMsg() helper that reports error code, description,                   byte offset, line, and column in a single message.                 * Added XmlErrorSnippet() helper that shows the XML content around                   the error position with a &lt;span&gt;[HERE]&lt;/span&gt; marker.                 * Demonstrates three common failure modes: missing quote on                   attribute, mismatched closing tag, and unclosed tag.&lt;br/&gt;&lt;a href="/p/hwgui/code/4067/"&gt;View Changes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">itamarlins</dc:creator><pubDate>Thu, 12 Nov 2026 12:54:44 -0000</pubDate><guid isPermaLink="false">https://sourceforge.net/p/hwgui/code/4067/</guid></item><item><title>   * source\winapi\menu_c.c: Applied global font to all menu levels.</title><link>https://sourceforge.net/p/hwgui/code/4066/</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;source\winapi\menu_c.c: Applied global font to all menu levels.                 * Added hwg_ApplyOwnerDrawToMenu() to recursively apply owner-draw                   to titles and existing submenus when Hwg_SetMenuFont() is called.                 * Enforced MFT_OWNERDRAW on submenu titles (MF_POPUP) to ensure                   they inherit the custom font size.    * source\winapi\menu.prg: Global font inheritance.                 * Added STATIC variables _cGlobalFontFace and _nGlobalFontSize.                 * Updated Hwg_DefineMenuItem() and Hwg_BeginMenu() to inherit the                   global font when no explicit FONT clause is provided.                 * Updated hwg_BuildMenu() to pass font parameters to submenu titles.&lt;br/&gt;&lt;a href="/p/hwgui/code/4066/"&gt;View Changes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">itamarlins</dc:creator><pubDate>Thu, 12 Nov 2026 00:16:23 -0000</pubDate><guid isPermaLink="false">https://sourceforge.net/p/hwgui/code/4066/</guid></item><item><title>  * source\winapi\menu_c.c: Implemented Owner-Draw menu support for custom fonts and bitmaps.</title><link>https://sourceforge.net/p/hwgui/code/4065/</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;source\winapi\menu_c.c: Implemented Owner-Draw menu support for custom fonts and bitmaps.                 * Added MFT_OWNERDRAW conversion, handling WM_MEASUREITEM and WM_DRAWITEM                   to render text with custom fonts and sizes.                 * Added TransparentBlt and DrawState support to render bitmaps,                   removing background colors and graying out icons on disabled items.                 * Added native checkmark rendering (DFCS_MENUCHECK) synchronized with                   the internal owner-draw table and GetMenuState.                 * Added DT_PREFIX handling to support keyboard accelerators (&amp;amp;).    * source\winapi\menu.prg: Updated menu definitions to support Owner-Draw features.                 * Extended Hwg_DefineMenuItem, Hwg_AddMenuItem, and the internal                   hwg_BuildMenu to process font attributes and bitmaps.                 * Added submenu detection using ValType() to navigate nested menus.                 * Added safe bitmap loading to avoid crashes on missing image files.    * include\guilib.ch: Added the FONT clause to the Menu system commands.                 * MENUITEM and MENUITEMCHECK now accept:                   &lt;span&gt;[ FONT &amp;lt;cfont&amp;gt; [, &amp;lt;nfontsize&amp;gt; [, &amp;lt;nfontweight&amp;gt; [, &amp;lt;litalic&amp;gt; ] ] ] ]&amp;lt;/litalic&amp;gt;&amp;lt;/nfontweight&amp;gt;&amp;lt;/nfontsize&amp;gt;&amp;lt;/cfont&amp;gt;&lt;/span&gt;                 * Usage example:                   MENUITEM "Open" ID 102 ACTION OpenFile() ;                            FONT "Segoe UI", 12, 700 BITMAP "open.bmp"    * samples\menufont.prg: Added new sample demonstrating custom menu fonts and bitmaps.                 * Shows how to use Hwg_SetMenuFont() for global defaults.                 * Demonstrates mixing items with FONT, BITMAP, and checkmarks.                 * Uses HWG_CHECKMENUITEM() to toggle states dynamically.&lt;br/&gt;&lt;a href="/p/hwgui/code/4065/"&gt;View Changes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">itamarlins</dc:creator><pubDate>Wed, 11 Nov 2026 21:14:45 -0000</pubDate><guid isPermaLink="false">https://sourceforge.net/p/hwgui/code/4065/</guid></item></channel></rss>