Files
Gen4_R-Car_Trace32/2_Trunk/demo/practice/dialogs/dialog_choosebox.cmm
2025-10-14 09:52:32 +09:00

102 lines
2.5 KiB
Plaintext

; --------------------------------------------------------------------------------
; @Title: Example for dialog with multiple choose boxes
; @Description: Shows a dialog with choose boxes
; @Keywords: choosebox, dialog, practice
; @Author: REI
; @Copyright: (C) 1989-2021 Lauterbach GmbH, licensed for use with TRACE32(R) only
; --------------------------------------------------------------------------------
; $Id: dialog_choosebox.cmm 18691 2021-12-15 18:51:36Z rweiss $
DIALOG
(
HEADER "CHOOSEBOX Demo"
POS 1. 0. 28. 1.
TEXT "Select Options:"
;choosebox group for Selection A
POS 0. 1. 29. 1.
LINE "Selection A:"
POS 1. 2. 10. 1.
OptionA.1: CHOOSEBOX "OptionA1" ""
OptionA.2: CHOOSEBOX "OptionA2" ""
;choosebox group for Selection B
POS 0. 4. 29. 1.
LINE "Selection B:"
POS 1. 5. 10. 1.
OptionB.1: CHOOSEBOX "OptionB1" ""
OptionB.2: CHOOSEBOX "OptionB2" ""
OptionB.3: CHOOSEBOX "OptionB3" "GOSUB OnChooseboxClicked_B3"
POS 14. 5. 10.
OptionB.4: CHOOSEBOX "OptionB4" "DIALOG.OK ""Thank you for choosing option B4"""
OptionB.5: CHOOSEBOX "OptionB5" ""
OptionB.6: CHOOSEBOX "OptionB6" ""
;buttons OK (Default) and Cancel
POS 1. 9. 10. 1.
DEFBUTTON "OK" "GOSUB OnOK"
POS 14. 9. 10. 1.
BUTTON "Cancel" "GOSUB OnCancel"
;dialog open event
INIT "GOSUB SetDefaults"
;dialog close event
CLOSE "GOSUB OnCancel"
;subroutines
SUBROUTINE SetDefaults
(
;diable OptionB6
DIALOG.DISABLE OptionB.6
;set default selections
DIALOG.Set OptionA.1
DIALOG.Set OptionB.2
)
SUBROUTINE OnChooseboxClicked_B3
(
PRINT "Option B3 was selected"
)
SUBROUTINE OnOK
(
IF DIALOG.BOOLEAN(OptionA.1)
&SelectionA="OptionA1"
IF DIALOG.BOOLEAN(OptionA.2)
&SelectionA="OptionA2"
IF DIALOG.BOOLEAN(OptionB.1)
&SelectionB="OptionB1"
IF DIALOG.BOOLEAN(OptionB.2)
&SelectionB="OptionB2"
IF DIALOG.BOOLEAN(OptionB.3)
&SelectionB="OptionB3"
IF DIALOG.BOOLEAN(OptionB.4)
&SelectionB="OptionB4"
IF DIALOG.BOOLEAN(OptionB.5)
&SelectionB="OptionB5"
IF DIALOG.BOOLEAN(OptionB.6)
&SelectionB="OptionB6"
;check for illegal selection combinations
IF ("&SelectionA"=="OptionA1")&&("&SelectionB"=="OptionB5")
(
DIALOG.OK "OptionB5 not allowed when OptionA1 is selected"
GOSUB SetDefaults
)
ELSE
(
;close dialog window
DIALOG.END
;print result
DIALOG.OK "SelectionA: &SelectionA" "SelectionB: &SelectionB"
)
)
SUBROUTINE OnCancel
(
DIALOG.END
DIALOG.OK "Cancelled"
)
)
ENDDO