Subj : Using Prf* routines in window procs To : Vitus Jensen From : Herbert Rosenau Date : Sat Jun 10 2000 12:13 pm Am 10.06.00 00:39 schrieb Vitus Jensen VJ> So the current design will not change: WM_MOVE updates memory VJ> structures about the profile contents Absolutly needless! VJ> and WM_SAVEAPPLICATION uses PrfWriteProfileData() to dump the VJ> changed entries to disk. WinQueryWindowPos() for frame window size and position does the same without having any overhead on management the info. Only size/position of child windows NOT depending on current FRAME size are object of separat handling. Presentation params of each window can inspected at any tim with WinQuerypresParams(), ALL window depending information can be queried at any time by WinQueryWindowWords(), WinQueryUlong().... So you never need to hold lists of them by yourself. Any change the user my do is announced before! By that: In WM_MOVE/WM_SIZE you my modify the size and coordinates of the actual (new size/position in MPARAMS to your need - and then let do PM the annouced (SIZE/MOVE) action. WM_MOVE: The point defined by x/y is changed, the point defined by cx/cy my or my not changed. WM_SIZE: the point defined by x/y is NOT changed, the point defined by cx/cy is object of change. You my - disallow or restrict the announced action by direct manipulation the new coordinate pairs of the message if you like to do so. Both messages are a announce for the action, so you can manipulate it as you (the programmer) likes to do - before the action is really done. You should never send one of the messages! Instead use WinSetWindowPosition, because WinSetWindowPosition does the announcements, then invalidates ALL required rectangles and then sends WM_DRAW to all windows for redrawing. --- Sqed/32 1.15/development 322: * Origin: Es ist nicht alles rund, was Ecken hat ... (2:2476/493) .