I'm curious to know how you handle multiple displays and placement of windows/dialogs. Any code you'd be willing to share would be helpful. A specific example:
When I start the program, it appears on the main screen (Display 1). I then drag the window to the alternate display (Display 2) to continue work. As I click options and bring up new windows, they will appear on the primary display (Display 1). What I am looking to do (using MOVE_WINDOW@) is force the window to display, appropriately, on Display 2. Or, if the user has manually moved this window to a specific location (regardless of which display), the window will re-appear at that location the next time it is invoked.
As I see it, there are a couple of stumbling blocks. First, the coordinates of the secondary display are 'unknown'. I see Windows API's that can be used to query the system, and reveal the coordinates and characteristics of multiple displays (one at a time) and that would be helpful. But these routines are not in the WIN32API. It is possible to determine what display is being used assuming the same size display for a multiple display system, and knowing the last window position. And maybe that's all the information needed for the new coordinate calculation.
If %ud (or equivalent) worked on a %ww when the window was created, then I can see a way clear to get this behavior. I can only see this working if a separate set of callbacks are created for each window/dialog that might be created.
Thanks, Bill