- UI_CUSTOM_POPUP_INFIELD

Wenn man im Parameter-Script keine VALUES-Liste definieren kann, weil die Parameter eventuell dort nicht verwendet werden dürfen (z.B. Werte aus REQUESTs), kann man die Values-Liste auch mit dem Befehl UI_CUSTOM_POPUP_INFIELD im User Interface definieren.

Die Beispiele im Handbuch beschränken sich auf hierarchische, mehrfach gegliederte, deswegen hier ein Beispiel ohne Hierarchiestufen mit einer Zahlenfolge, wie bei einem klassischen VALUES-Befehl:

GDL
FOR i = 1 TO int_anz
	PUT i
NEXT i

UI_CUSTOM_POPUP_INFIELD "int_teilen_feld", dx, dy, inL, inH, 0, 0, 1, "", ! storeHiddenId, treeDepth, groupingMethod, selectedValDescription GET(NSP)

 

- Etikett auf Ursprung setzen

GDL
add2 LABEL_POSITION[2][1] + LABEL_POSITION[3][1],
	 LABEL_POSITION[2][2] + LABEL_POSITION[3][2]

- Rotation Undo Routine für Fenster

Fenster Rotations-Routine (JS): 2D + 3D, um sämtliche Drehungen, Spiegelungen und Verschiebungen zu neutralisieren:
a) 2D

GDL
! ---------------------------------------------------------------------- !
! ---------------------------------------------------------------------- !
! ----- 2016 b-prisma R O T A T I O N   U N D O   R O U T I N E -------- !

!	TEXT2 0,0,SYMB_MIRRORED != V~

!	TEXT2 0,-0.2,WIDO_REVEAL_SIDE != E~

!	TEXT2 0,-0.4,SYMB_ROTANGLE != W~

!	TEXT2 0,0.2, W~

bRotated = round_int (SYMB_ROTANGLE) = 180
IF NOT(SYMB_MIRRORED) AND NOT(WIDO_REVEAL_SIDE) AND NOT(bRotated) THEN		! 0, 0, 0
	ADD2 0, 0
	MUL2 1, 1	
ENDIF

IF SYMB_MIRRORED AND NOT(WIDO_REVEAL_SIDE) AND NOT(bRotated) THEN		! 1, 0, 0
	ADD2 0, 0
	MUL2 1, 1	! K A N N   M A N   S P I E G E L N
ENDIF

IF NOT(SYMB_MIRRORED) AND NOT(WIDO_REVEAL_SIDE) AND bRotated THEN		! 0, 0, 1
	MUL2 -1, -1
	ADD2 0,  - ac_wido_sill * 2 + C_
ENDIF

IF SYMB_MIRRORED AND WIDO_REVEAL_SIDE AND bRotated THEN					! 1, 1, 1
	MUL2 -1, -1
	ADD2 0, gs_frame_thk
ENDIF

IF SYMB_MIRRORED AND WIDO_REVEAL_SIDE AND NOT(bRotated) THEN			! 1, 1, 0
	ADD2 0, - ac_wido_sill * 2 + C_ - gs_frame_thk
	MUL2 1, 1
ENDIF

IF SYMB_MIRRORED AND NOT(WIDO_REVEAL_SIDE) AND bRotated THEN			! 1, 0, 1
	MUL2 -1, -1
	ADD2 0, - ac_wido_sill * 2 + C_ 
ENDIF

IF NOT(SYMB_MIRRORED) AND WIDO_REVEAL_SIDE AND NOT(bRotated) THEN		! 0, 1, 0
	ADD2 0, - ac_wido_sill * 2 + C_ - gs_frame_thk
	MUL2 1, 1
ENDIF

IF NOT(SYMB_MIRRORED) AND WIDO_REVEAL_SIDE AND bRotated THEN			! 0, 1, 1
	MUL2 -1, -1
	ADD2 0,  gs_frame_thk
ENDIF

! ............

DEL 2

! ---------------------------------------------------------------------- ! 
! ---------------------------------------------------------------------- !

b) 3D

GDL
! ---------------------------------------------------------------------- !
! ---------------------------------------------------------------------- !

! ----- 2016 b-prisma R O T A T I O N   U N D O   R O U T I N E -------- !

bRotated = round_int (SYMB_ROTANGLE) = 180
IF NOT(SYMB_MIRRORED) AND NOT(WIDO_REVEAL_SIDE) AND NOT(bRotated) THEN		! 0, 0, 0
	ADDz 0
	MULz 1
ENDIF

IF SYMB_MIRRORED AND NOT(WIDO_REVEAL_SIDE) AND NOT(bRotated) THEN		! 1, 0, 0
	ADDz 0
	MULz 1		! K A N N   M A N   S P I E G E L N
ENDIF

IF NOT(SYMB_MIRRORED) AND NOT(WIDO_REVEAL_SIDE) AND bRotated THEN		! 0, 0, 1
	MUL -1, 1,  -1
	ADDz  ac_wido_sill * 2 - C_
ENDIF

IF SYMB_MIRRORED AND WIDO_REVEAL_SIDE AND bRotated THEN					! 1, 1, 1
	MUL -1, 1,  -1
	ADDz - gs_frame_thk
ENDIF

IF SYMB_MIRRORED AND WIDO_REVEAL_SIDE AND NOT(bRotated) THEN			! 1, 1, 0
	ADDz  ac_wido_sill * 2 - C_ + gs_frame_thk
	MULz 1
ENDIF

IF SYMB_MIRRORED AND NOT(WIDO_REVEAL_SIDE) AND bRotated THEN			! 1, 0, 1
	MUL -1, 1,  -1
	ADDz  ac_wido_sill * 2 - C_ 
ENDIF

IF NOT(SYMB_MIRRORED) AND WIDO_REVEAL_SIDE AND NOT(bRotated) THEN		! 0, 1, 0
	ADDz ac_wido_sill * 2 - C_ + gs_frame_thk
	MULz 1
ENDIF

IF NOT(SYMB_MIRRORED) AND WIDO_REVEAL_SIDE AND bRotated THEN			! 0, 1, 1
	MUL -1, 1,  -1
	ADDz - gs_frame_thk
ENDIF

! ............

DEL 2

! ---------------------------------------------------------------------- ! 
! -------------------------------------------------------------------- !