lmi
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi] 'Window' menu problem, and unexpected solution


From: Greg Chicares
Subject: [lmi] 'Window' menu problem, and unexpected solution
Date: Thu, 01 Dec 2005 05:03:14 +0000
User-agent: Mozilla Thunderbird 1.0.2 (Windows/20050317)

Vadim--Can you shed any light on this?

Because lmi presents an mdi interface, it ought to have a 'Window' menu,
at least on msw. This is important because some users know of no other
way to navigate among open mdi child windows when the current window is
maximized. I could tell them about Ctrl[-Shift]-F6, but they'd think I
was joking: they don't know the keyboard shortcuts built into the
operating system, and they'd generally rather use a mouse anyway.

Well, lmi has a 'Window' menu, and there's code to support it. It worked
a year ago. It doesn't work now: that menu can't even be pulled down. I
suspect it broke when we upgraded from wx-2.5.1 to wx-2.5.4 .

I was working today in the vicinity of that code, and discovered a
solution that surprised me--in 'docmdichildframe_ex.cpp', change this:

-    ::SendMessage(client_handle, WM_MDISETMENU, 0, (LPARAM)window_menu_handle);
-    ::DrawMenuBar(client_handle);
+    (void)client_handle;      // Prevent 'never used' warning.
+    (void)window_menu_handle; // Prevent 'never used' warning.

and it seems to work perfectly again.

Did someone enhance wx to fix the same thing I did? Here's a very brief
description of the main problem I was working around:

  // Enhance class wxDocMDIChildFrame to support MDI without requiring
  // the parent MDI frame window to display a 'Window' menu when it has
  // no MDI child, as recommended in msw platform documentation.

IOW, there was a pointless 'Window' menu when no child window existed.

I looked here
  http://cvs.wxwidgets.org/viewcvs.cgi/wxWidgets/src/msw/mdi.cpp
and tentatively concluded that some revision in [1.113, 1.127] is
likely to contain the fix. But looking up the sf defect reports is
parctically impossible right now because sf.net is almost unreachable,
so I thought I'd ask whether you recall such a change.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]