FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour Bug in 2007 menu and MDI
Posts: 9020
Joined: Thu Oct 06, 2005 08:17 PM
Bug in 2007 menu and MDI
Posted: Tue Nov 27, 2007 09:32 AM
In the following sample, please:

- press ALT-1 and the system menu will popup instead of Changed1 menu

- then press ALT and the MDICHILD icon will disappear

#include "Fivewin.ch"


FUNCTION MAIN()

    LOCAL oWnd, oMenu

    MENU oMenu 2007
        MENUITEM "Test&1"
        MENUITEM "Test&2"
        MENUITEM "Test&3"
    ENDMENU

    DEFINE WINDOW oWnd MDI;
           TITLE "MDI Test";
           MENU oMenu

    ACTIVATE WINDOW oWnd;
             ON INIT CREATECHILD( oWnd )

    RETURN NIL


STATIC FUNCTION CREATECHILD( oMdi )

    LOCAL oWnd, oMenu

    MENU oMenu 2007
        MENUITEM "Changed&1"
        MENUITEM "Changed&2"
        MENUITEM "Changed&3"
    ENDMENU

    DEFINE WINDOW oWnd MDICHILD OF oMdi;
           TITLE "MDI Child Test";
           MENU oMenu

    ACTIVATE WINDOW oWnd;
             VALID !GETKEYSTATE( VK_ESCAPE );
             MAXIMIZED

    RETURN NIL


EMG
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Bug in 2007 menu and MDI
Posted: Wed Nov 28, 2007 08:28 AM

Enrico,

If the mdichild is not maximized then it works fine.

It looks as a Windows bug when using all menuitems as ownerdraw, as FWH does not change the way the menu commands are processed :-(

The erase of the icon is our fault as we paint the entire horizontal bar. We need to check if a mdichild is maximized and then don't paint in that area

regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion