| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- &GLOBAL-DEFINE SM_CXBEGINN 76
- &GLOBAL-DEFINE SM_CYBEGINN 77
- &GLOBAL-DEFINE SM_CXVIRTUALSCREEN 78
- &GLOBAL-DEFINE SM_CYVIRTUALSCREEN 79
- DEF VAR wx AS INT NO-UNDO.
- DEF VAR wy AS INT NO-UNDO.
- DEF VAR MaxX AS INT NO-UNDO.
- DEF VAR MaxY AS INT NO-UNDO.
- DEF VAR BegX AS INT NO-UNDO.
- DEF VAR BegY AS INT NO-UNDO.
- DEF VAR xString AS CHAR NO-UNDO.
- cBenutzerDaten = DYNAMIC-FUNCTION('getBenutzerDaten':U) NO-ERROR.
- cBenutzer = ENTRY(1, cBenutzerDaten, CHR(01)) NO-ERROR.
- iBenuSprcd = INTEGER(ENTRY(6, cBenutzerDaten, CHR(01))) NO-ERROR.
- cInstallation = DYNAMIC-FUNCTION('getInstallation':U) NO-ERROR.
- xString = DYNAMIC-FUNCTION('getFensterPosition':U, INPUT 'Fensterposition',
- INPUT Progname ) NO-ERROR.
- IF xString = ? OR
- xString = '' THEN DO:
- wx = 100.
- wy = 100.
- END.
- ELSE DO:
- wx = INTEGER(ENTRY(1, xString, CHR(01))) NO-ERROR .
- wy = INTEGER(ENTRY(2, xString, CHR(01))) NO-ERROR .
- END.
- RUN GetSystemMetrics ( {&SM_CXBEGINN}, OUTPUT BegX ).
- IF BegX = ? OR
- BegX = 0 THEN BegX = 1.
-
- RUN GetSystemMetrics ( {&SM_CYBEGINN}, OUTPUT BegY ).
- IF BegY = ? OR
- BegY = 0 THEN BegY = 1.
-
- RUN GetSystemMetrics ( {&SM_CXVIRTUALSCREEN}, OUTPUT MaxX ).
- IF MaxX = ? OR
- MaxX = 0 THEN MaxX = SESSION:FULL-WIDTH-PIXELS.
-
- RUN GetSystemMetrics ( {&SM_CYVIRTUALSCREEN}, OUTPUT MaxY ).
- IF MaxY = ? OR
- MaxY = 0 THEN MaxY = SESSION:FULL-HEIGHT-PIXELS.
-
- IF wx < BegX THEN wx = BegX + 20.
- IF wx > (BegX + MaxX - 20) THEN wx = MaxX - {&WINDOW-NAME}:WIDTH-PIXELS - 20.
-
- IF wy < BegY THEN wy = BegY + 20.
- IF wy > (MaxY - 20) THEN wy = MaxY - {&WINDOW-NAME}:HEIGHT-PIXELS - 20.
- {&WINDOW-NAME}:X = wx.
- {&WINDOW-NAME}:Y = wy.
-
|