App-SeismicUnixGui

 view release on metacpan or  search on metacpan

lib/App/SeismicUnixGui/misc/param_widgets_neutral.pm  view on Meta::CPAN

#		|| $param_widgets_color_href->{_is_flow_listbox_color_w}
#		|| $param_widgets_color_href->{_is_user_built_flow} )
#	{
#
#		$param_widgets_color_href->{_first_idx} = $ref_hash->{_param_flow_first_idx};
#		$param_widgets_color_href->{_length}    = $ref_hash->{_param_flow_length};
#
#		# bck
#		#		$param_widgets_color_href->{_first_idx} = $ref_hash->{_param_flow_first_idx};
#		#		$param_widgets_color_href->{_length}    = $ref_hash->{_param_flow_length};
#
#		print("3. param_widgets_neutral,range, (user-built-flow)  first idx:$param_widgets_color_href->{_first_idx}, and length:$param_widgets_color_href->{_length}\n");
#	}
#
#	# button for L_SU and no button for project selector
#	elsif ($ref_hash->{_is_superflow_select_button}
#		|| $ref_hash->{_is_superflow} )
#	{
#
#		$param_widgets_color_href->{_first_idx} = $ref_hash->{_superflow_first_idx};
#		$param_widgets_color_href->{_length}    = $ref_hash->{_superflow_length};
#
#		print("4. param_widgets_neutral,range, (superflows) first idx:$param_widgets_color_href->{_first_idx}, and length:$param_widgets_color_href->{_length}\n");
#
#	}
#	else {
#		# print("6. param_widgets_neutral,range, _missing ref_hash NADA\n");
#	}
#
#	# print("6. param_widgets_neutral,range, _values_w_aref:  $param_widgets_color_href->{_values_w_aref}\n");
#	return ();
#}

=head2 sub redisplay_check_buttons 
    
    update colors in check button boxes

=cut

sub redisplay_check_buttons {
	my ($self)        = @_;
	my $button_w_aref = $param_widgets_color_href->{_check_buttons_w_aref};
	my $first         = $param_widgets_color_href->{_first_idx};
	my $length        = scalar @{ $param_widgets_color_href->{_check_buttons_settings_aref} };

	# my $length 			= $param_widgets_color_href->{_length};
	my $settings_aref = $param_widgets_color_href->{_check_buttons_settings_aref};

	# print("1. param_widgets_neutral,redisplay_check_buttons,settings @{$settings_aref}[0]\n");
	# print("2. param_widgets_neutral,redisplay_check_buttons,settings @{$param_widgets_color_href->{_check_buttons_settings_aref}}[0]\n");
	# print("2. param_widgets_neutral,redisplay_check_buttons,length: $length\n");

	if ( $button_w_aref && $settings_aref ) {

		for ( my $i = $first; $i < $length; $i++ ) {

			@$button_w_aref[$i]->configure(
				-onvalue          => 'on',
				-offvalue         => 'off',
				-selectcolor      => 'green',
				-activebackground => 'red',
				-background       => 'red',
				-variable         => \@$settings_aref[$i],
			);
		}
	}
	else {
		print("param_widgets_neutral, redisplay_check_buttons missing parameters\n");
	}
	return ();
}

=head2 sub redisplay_labels 

  print("1. redisplay, resdisplay_labels, text is @{$label_array_ref}[$i]\n");
  print("redisplay, resdisplay_labels, i is $i\n");
  print("2. redisplay, resdisplay_labels, text is @{$LSU->{_label_array_ref}}[$i]\n");

=cut

sub redisplay_labels {
	my ($self)        = @_;
	my $labels_w_aref = $param_widgets_color_href->{_labels_w_aref};
	my $labels_aref   = $param_widgets_color_href->{_labels_aref};
	my $first         = $param_widgets_color_href->{_first_idx};
	my $length        = scalar @{ $param_widgets_color_href->{_labels_aref} };

#	print("param_widgets_neutral,redisplay_labels, length=$length\n");
#	print("param_widgets_neutral,redisplay_labels, first=$first\n");
	
	if (length $labels_w_aref) {
		
		for ( my $i = $first; $i < $length; $i++ ) {

#			print("i:$i   param_widgets_neutral2,redisplay_labels length:$length\n");
#			print(" text is @{$labels_aref}[$i]\n");
#            print(" label array widget $labels_w_aref\n");
            
			@$labels_w_aref[$i]->configure( -text => @$labels_aref[$i], );
		}
	}
	else {
		print("param_widgets_neutral,redisplay labels, Warning parameters or labels_w_aref missing \n");
	}
	return ();
}

=head2 sub redisplay_values 

  display parameter values without quotes
  although internally we always have quotes for strings
  and no quotes if the value looks like a number
  
  i/p: 2 array references
  o/p: array reference

  N.B. This is an ENTRY widget
  textvariables must be a reference in order
  for -validatecommand to work. BEWARE!

  DB



( run in 1.697 second using v1.01-cache-2.11-cpan-f56aa216473 )