102 lines
2.5 KiB
Plaintext
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
|