Página 1 de 1

Hwgui atualizada 08-08-2026

Enviado: 08 Ago 2026 12:44
por Itamar M. Lins Jr.
Olá!
Adicionado a opção Enable/Disable na (Tab Control)
Creio que foram "comitadas" todas as contribuições oferecidas pelo Deivid no SVN da Hwgui.
Falta essa opção no Linux, em adamento. Pq não é só mudar no fonte, tem que testar também.

Código: Selecionar todos

2026-08-08 12:39 UTC-0300 Itamar Lins <itamarlins at gmail.com>
    * source\winapi\control.c
    * source\winapi\dialog.c
    * source\winapi\htab.prg
      - Add Tab Control Enable/Diasable option. Windows OS
        Thanks to Deivid José de Souza. 
        Compatible with old version of Hwgui 2.17 
      - See https://pctoledo.org/viewtopic.php?p=170966#p170966

Re: Hwgui atualizada 08-08-2026

Enviado: 08 Ago 2026 21:42
por Itamar M. Lins Jr.
Olá!
E vamos nós lá pro Linux!

Código: Selecionar todos

2026-08-08 21:35 UTC-0300 Itamar Lins <itamarlins at gmail.com>
    * source/gtk/window.c
      - Add custom GLib/GTK log handler 'hwg_gtk_log_handler' inside HB_FUNC( HWG_GTK_INIT ).
        Suppressed benign focus-change and window-quit legacy runtime assertions to keep
        the terminal environment clean.
        Silenced warnings list:
          - g_object_ref: assertion 'G_IS_OBJECT (object)' failed
          - g_object_freeze_notify: assertion 'G_IS_OBJECT (object)' failed
          - IA__gtk_widget_has_default: assertion 'GTK_IS_WIDGET (widget)' failed
          - IA__gtk_widget_get_receives_default: assertion 'GTK_IS_WIDGET (widget)' failed
          - IA__gtk_widget_send_focus_change: assertion 'GTK_IS_WIDGET (widget)' failed
          - g_object_notify: assertion 'G_IS_OBJECT (object)' failed
          - g_object_thaw_notify: assertion 'G_IS_OBJECT (object)' failed
          - g_object_unref: assertion 'G_IS_OBJECT (object)' failed
          - IA__gtk_main_quit: assertion 'main_loops != NULL' failed

2026-08-08 20:45 UTC-0300 Itamar Lins <itamarlins at gmail.com>
    * source/gtk/control.c
    * source/gtk/htab.prg
      - Add Tab Control Enable/Disable support and cross-platform compatibility layer. Linux/GTK OS.
        Fixed edge-clicking navigation vulnerability on disabled tab labels by introducing
        signal interception inside switch-page handler.
        Thanks to Deivid José de Souza.
        Tests with Ubuntu 26.10(Kubuntu) KDE(Wayland)

2026-08-08 17:27 UTC-0300 Itamar Lins <itamarlins at gmail.com>
    * include/guilib.h:
      - Conditionally included "incomp_pointer.h" for Linux/Unix environments
        to apply global compiler warning suppressions.
    * include/incomp_pointer.h:
      - Added global GCC diagnostics to suppress GTK 2.0 deprecated warnings
        and Harfbuzz macro redefinition conflicts (`HB_DEPRECATED`).
    * source/gtk/herrsys.prg:
      - Included "guilib.h" inside the BEGINDUMP block to enforce clean
        compilation logs on the errorsys module.

2026-08-08 16:03 UTC-0300 Itamar Lins <itamarlins at gmail.com>
    * source/gtk/hbrowse.prg:
      - Fixed a critical BASE/1066 parameter error inside METHOD Edit() when
        using SQLMIX RDD. Explicitly checked DbInfo(DBI_ISREADONLY) against .T.
        to handle NIL values gracefully.

2026-08-08 16:03 UTC-0300 Itamar Lins <itamarlins at gmail.com>
    * source/gtk/herrsys.prg:
      - Fixed a crash on exit by replacing the Harbour-level DIALOG with a native
        C GtkMessageDialog, separating it from the unstable object tree during panic mode.
      - Implemented a native GTK signal callback to capture the close event.
      - Replaced the traditional Harbour QUIT with a low-level kernel exit (_exit(0))
        inside C, preventing background widgets from triggering recursive error loops.
      - Added global recursion protection (`lInError`) and temporary ErrorBlock deactivation.