DOCUMENTATION
SYNOPSIS
PERL PERL PROGRAM NAME: run_button.pm
AUTHOR: Juan Lorenzo
DATE: May 16 2018
DESCRIPTION
BASED ON:
previous version (V 0.2) of the main L_SU.pl (V 0.3)
USE
NOTES
Examples
CHANGES and their DATES refactoring of 2017 version of L_SU.pl
TODO: Encapsulate better
gets from
$decisions
$run_button
sets
$pre_req_ok
calls
$gui_history ->set4run_button_start();
$gui_history ->set4run_button();
$decisions ->set4run_select($run_button);
$gui_history ->set4run_button_end();
$whereami ->in_gui();
message box: $message
$run_button = $gui_history->get_hash_ref();
Notes from bash
declare variables
8 off
sub _messages Show warnings or errors in a message box Message box is defined in main where it is also made invisible (withdraw) Here we turn on the message box (deiconify, raise) The message does not release the program until OK is clicked and wait variable changes from yes to no.
_Run_pre_built_superflow
only useful for saved superflow configuration files
decisions.pm tests:
_has_used_SaveAs_file_button
_has_used_Save_button
foreach my $key (sort keys %$run_button) {
print (" run_button,_Run_pre_built_superflow: key is $key, value is $run_button->{$key}\n");
}
sub _Run_user_built_flow for saved regular flows
foreach my $key (sort keys %$run_button) {
print (" run_button,_Run_pre_built_superflow: key is $key, value is $run_button->{$key}\n");
}
sub _get_flow_type
user_built_flow
or
pre_built_superflow
sub director
prior to running
determine if we are dealing with superflow
(" menubutton" widget)
- collect and/or access flow parameters
Analysis:
i/p: $parameter_values_frame
i/p: $run_button_messages
i/p: $message
i/p: $param_flow
i/p: $run_button
i/p: $config_superflows
# o/p: $conditions_gui ->set4start_of_run_button(); # o/p: $gui_history ->set4_run_button # o/p: $gui_history ->set4end_of_run_button(); $run_button = $gui_history->get_hash_ref(); o/p: _check4changes();
o/p: $run_button
o/p: $files_LSU
Run can be of 2 types
dialog type can only be Run (Main menu)
i.e. 'either'
or
Run (perl program of user-built flow
or
Run pre-built superflow configuration files
my $run_dialog_type = $file_dialog_type->{_Run} ;
sub get_all_hash_ref
return ALL values of the private hash, supposedly
improtant external widgets have not been reset.. only conditions
are reset
TODO: perhaps it is better to have a specific method
to return one specific widget address at a time?
}
sub set_flow_type
user_built_flow
or
pre_built_superflow
sub set_hash_ref bring in important widget addresses
sub set_flow_name_out
user-built flow name
sub set_prog_name_sref
in order to know what
_spec file to read for
behaviors
THis program has a pre-existing module