I have created a script that begins with a modal window that lets the user select one or more check boxes in a list. The script works perfectly fine, the only problem is that the modal window has the "OK" button and no "Cancel" button. If the user exits the modal window using the X in the top corner, the first part of the script (that doesn't require any of the information from the check box list) still runs. How can I get this script to only run if the user clicks "OK"? The modal window script is below (sorry I know its very long):
Names Default To Here( 1 );
Win1 = New Window( "Base Count Selection",
<<Modal,
V List Box(
Spacer Box( size( 20, 20 ) ),
Text Box( "Select which bases to create count columns for.", <<Set Font Size( 10 ), <<Margin( 10, 10 ) ),
Text Box(
"The 'Select All' check boxes will create individual count columns for each of the bases of that type. The 'Total Count' option will create a separate column containing the total modified base count for each base type that is selected.
Note that thioates are counted as part of the base to the left. For example, in the sequence AGTGT*C the thioate is counted as a thioated T.",
<<Margin( 25, 0 ),
<<Set Width( 1220 )
),
Spacer Box( size( 20, 20 ) ),
h = H List Box(
Border Box( Left( 15 ), Right( 15 ), top( 15 ), bottom( 27 ), sides( 15 ),
V List Box(
Text Box( "Modified Bases", <<Set Font Size( 11 ) ),
Spacer Box( size( 10, 10 ) ),
Lineup Box( N Col( 5 ), spacing( 15, 1 ),
Text Box( "LNA Bases", <<Set Font Size( 10 ) ),
Text Box( "OMe Bases", <<Set Font Size( 10 ) ),
Text Box( "MOE Bases", <<Set Font Size( 10 ) ),
Text Box( "cEt BNA Bases", <<Set Font Size( 10 ) ),
Text Box( "Fluoro Bases", <<Set Font Size( 10 ) ),
Spacer Box( size( 10, 5 ) ),
Spacer Box( size( 10, 5 ) ),
Spacer Box( size( 10, 5 ) ),
Spacer Box( size( 10, 5 ) ),
Spacer Box( size( 10, 5 ) ),
lnacb = Check Box( {"+A", "+C", "+T", "+G"} ),
omecb = Check Box( {"mA", "mC", "mT", "mG"} ),
moecb = Check Box( {"MOErA", "MOErC", "MOErT", "MOErG", "MOErU"} ),
bnacb = Check Box( {"cEt A", "cEt C", "cEt T", "cEt G"} ),
flucb = Check Box( {"FA", "FC", "FU", "FG"} ),
Spacer Box( size( 10, 10 ) ),
Spacer Box( size( 10, 10 ) ),
Spacer Box( size( 10, 10 ) ),
Spacer Box( size( 10, 10 ) ),
Spacer Box( size( 10, 10 ) ),
lnaa = Check Box( "Select All", <<SetFunction( lnacb << Set All( (lnaa << Get), run script( 1 ) ) ) ),
omea = Check Box( "Select All", <<SetFunction( omecb << Set All( (omea << Get), run script( 1 ) ) ) ),
moea = Check Box( "Select All", <<SetFunction( moecb << Set All( (moea << Get), run script( 1 ) ) ) ),
bnaa = Check Box( "Select All", <<SetFunction( bnacb << Set All( (bnaa << Get), run script( 1 ) ) ) ),
flua = Check Box( "Select All", <<SetFunction( flucb << Set All( (flua << Get), run script( 1 ) ) ) ),
lnat = Check Box( "Total LNA Count" ),
omet = Check Box( "Total OMe Count" ),
moet = Check Box( "Total MOE Count" ),
bnat = Check Box( "Total cEt Count" ),
flut = Check Box( "Total Fluoro Count" )
)
),
<<Margin( Right( 10 ) )
),
b = Border Box( Left( 15 ), Right( 12 ), top( 15 ), bottom( 15 ), sides( 15 ),
V List Box(
H List Box(
Text Box( "Thioated Bases", <<Set Font Size( 11 ) ),
Spacer Box( size( 50, 10 ) ),
(all = Check Box( "Count All Thioates in Sequence" ))
),
Spacer Box( size( 10, 10 ) ),
Lineup Box( N Col( 5 ), spacing( 15, 1 ),
Text Box( "Thioated DNA", <<Set Font Size( 10 ) ),
Text Box( "Thioated LNA", <<Set Font Size( 10 ) ),
Text Box( "Thioated OMe", <<Set Font Size( 10 ) ),
Text Box( "Thioated MOE", <<Set Font Size( 10 ) ),
Text Box( "Thioated cEt", <<Set Font Size( 10 ) ),
Spacer Box( size( 10, 5 ) ),
Spacer Box( size( 10, 5 ) ),
Spacer Box( size( 10, 5 ) ),
Spacer Box( size( 10, 5 ) ),
Spacer Box( size( 10, 5 ) ),
thicb = Check Box( {"A*", "C*", "T*", "G*"} ),
lthicb = Check Box( {"+A*", "+C*", "+T*", "+G*"} ),
omethicb = Check Box( {"mA*", "mC*", "mT*", "mG*"} ),
moethicb = Check Box( {"MOErA*", "MOErC*", "MOErT*", "MOErG*"} ),
bthicb = Check Box( {"cEt A*", "cEt C*", "cEt T*", "cEt G*"} ),
Spacer Box( size( 9, 25 ) ),
Spacer Box( size( 9, 23 ) ),
Spacer Box( size( 9, 22 ) ),
Spacer Box( size( 9, 22 ) ),
Spacer Box( size( 9, 22 ) ),
thia = Check Box( "Select All", <<SetFunction( thicb << Set All( (thia << Get), run script( 1 ) ) ) ),
lthia = Check Box( "Select All", <<SetFunction( lthicb << Set All( (lthia << get), run script( 1 ) ) ) ),
omethia = Check Box( "Select All", <<SetFunction( omethicb << Set All( (omethia << Get), run script( 1 ) ) ) ),
moethia = Check Box( "Select All", <<SetFunction( moethicb << Set All( (moethia << Get), run script( 1 ) ) ) ),
bthia = Check Box( "Select All", <<SetFunction( bthicb << Set All( (bthia << Get), run script( 1 ) ) ) ),
H List Box( thit = Check Box( "" ), Text Box( "Total Thioated DNA Count", <<Set Width( 100 ), <<Set Wrap( 100 ) ) ),
H List Box( lthit = Check Box( "" ), Text Box( "Total Thioated LNA Count", <<Set Width( 100 ), <<Set Wrap( 100 ) ) ),
H List Box( omethit = Check Box( "" ), Text Box( "Total Thioated OMe Count", <<Set Width( 100 ), <<Set Wrap( 100 ) ) ),
H List Box( moethit = Check Box( "" ), Text Box( "Total Thioated MOE Count", <<Set Width( 100 ), <<Set Wrap( 100 ) ) ),
H List Box( bthit = Check Box( "" ), Text Box( "Total Thioated cEt Count", <<Set Width( 80 ), <<Set Wrap( 80 ) ) ),
)
)
)
),
Spacer Box( size( 25, 60 ) ),
)
);