GBrowse

 view release on metacpan or  search on metacpan

conf/plugins/PrimerDesigner.pm  view on Meta::CPAN

		  -onClick => "oPrimerDesigner.scroll('right', 1)"
     ),
     ' ',
    );

  my $str	= join('', @lines);
  return span({-id=>'span'},$str);

}

sub get_zoomincrement {
  my $self = shift;
  my $zoom = $self->setting('fine zoom') || DEFAULT_FINE_ZOOM;
  $zoom;
}

sub zoomBar {
  my $self = shift;
  my ($length,$max,$item_label) = @_;
  $item_label ||= '';

  my %seen;
  my @r         = sort {$a<=>$b} $self->data_source->get_ranges();
  $max         *= $self->data_source->unit_divider;

  my @ranges	= grep {!$seen{$self->data_source->unit_label($_)}++ && $_<=$max} sort {$b<=>$a} @r,$length;
  my %labels    = map {$_=>$item_label.$self->data_source->unit_label($_)} @ranges;
  return popup_menu(-class   => 'searchtitle',
		    -name    => 'span',
		    -values  => \@ranges,
		    -labels  => \%labels,
		    -default => $length,
		    -force   => 1,
		    -onChange => "oPrimerDesigner.scroll('set span',this.options[this.selectedIndex].value)",
		   );
}

#NML: holdovers from Bio::Graphics::Browser
#need to see if there are contemporary versions in new modules
sub fatal_error {
    #my $self = shift;
    print CGI::header('text/plain'),"@_\n";
    exit 0;
}

sub render_panel {

    my $render = shift;
    my $segment = shift;
    #my $postgrid = shift;
    my $extra_args = shift;
    my @panels;

    my $region   = $render->region;
    my $features = $region->features;
    my $title    = $render->generate_title($features);
    my $output;
    my @post_load = $render->get_post_load_functions;

    $output .= $render->render_html_start($title,@post_load);
    $output .= $render->render_busy_signal;

    push @panels, $output;

    #my %extra_args = @$extra_args;
    #my $postgrid = $extra_args{'postgrid'};

    my $scale_bar_html = $render->scale_bar( $segment, 'detail', $extra_args );

    push @panels, 
	div({-id=>'primer_panel', -style=>'padding:12px;position:relative'},
	    $scale_bar_html,
	    $render->render_detailview_panels($segment)
	);

    my $main_page = join('',@panels);

    my $tracks        = $render->render_tracks_section;

    return $render->sender_tabbed_pages($main_page,$tracks);

    return $main_page;

}

sub sender_tabbed_pages {
    my $self = shift;
    my ($main_html,$tracks_html,$community_tracks_html,$custom_tracks_html,$settings_html,) = @_;
    my $uses_database = $self->user_tracks->database;
    
    my $main_title             = $self->translate('MAIN_PAGE');
    my $tracks_title           = $self->translate('SELECT_TRACKS');
    my $community_tracks_title = $self->translate('COMMUNITY_TRACKS_PAGE') if $uses_database;
    my $custom_tracks_title    = $self->translate('CUSTOM_TRACKS_PAGE');
    my $settings_title         = $self->translate('SETTINGS_PAGE');

    my $html = '';
    $html   .= div({-id=>'tabbed_section', -class=>'tabbed'},
		   #div({-id=>'tabbed_menu',-class=>'tabmenu'},
	           span({style=>'display:none', id=>'main_page_select'},               $main_title),
	           span({style=>'display:none', id=>'track_page_select'},              $tracks_title),
		   #$uses_database? span({id=>'community_tracks_page_select'},   $community_tracks_title) : "",
		   #span({id=>'custom_tracks_page_select'},      $custom_tracks_title),
		   #span({id=>'settings_page_select'},           $settings_title),
	       #),
	   div({-id=>'main_page',            -class=>'tabbody'}, $main_html),
	   #div({-id=>'track_page',           -class=>'tabbody'}, $tracks_html),
	   #$uses_database?div({-id=>'community_tracks_page',-class=>'tabbody'}, $community_tracks_html) : "",
	   #div({-id=>'custom_tracks_page',   -class=>'tabbody'}, $custom_tracks_html),
	   #div({-id=>'settings_page',        -class=>'tabbody'}, $settings_html),
	);
    return $html;
}

1;



( run in 1.153 second using v1.01-cache-2.11-cpan-ceb78f64989 )