[Bio] / WebApplication / WebComponent / Info.pm Repository:
ViewVC logotype

View of /WebApplication/WebComponent/Info.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.4 - (download) (as text) (annotate)
Wed Sep 3 21:01:19 2008 UTC (11 years, 4 months ago) by parrello
Branch: MAIN
CVS Tags: mgrast_dev_08112011, rast_rel_2009_05_18, mgrast_dev_08022011, rast_rel_2014_0912, mgrast_dev_03052011, mobedac_release_05302012, mgrast_dev_05262011, rast_rel_2008_12_18, mgrast_dev_04082011, rast_rel_2010_0928, rast_2008_0924, mgrast_version_3_2, mgrast_dev_12152011, mgrast_dev_06072011, rast_rel_2008_09_30, rast_rel_2009_0925, rast_rel_2010_0526, rast_rel_2014_0729, mgrast_dev_02212011, rast_rel_2010_1206, mgrast_release_3_0, mgrast_dev_03252011, rast_rel_2010_0118, mgrast_rel_2008_0924, mgrast_rel_2008_1110_v2, rast_rel_2009_02_05, rast_rel_2011_0119, mgrast_rel_2008_0625, mgrast_release_3_0_4, mgrast_release_3_0_2, mgrast_release_3_0_3, mgrast_release_3_0_1, mgrast_dev_03312011, mgrast_release_3_1_2, mgrast_release_3_1_1, mgrast_release_3_1_0, mgrast_dev_04132011, rast_rel_2008_10_09, mgrast_dev_04012011, rast_release_2008_09_29, mgrast_rel_2008_0923, mgrast_rel_2008_0919, rast_rel_2009_07_09, rast_rel_2010_0827, mgrast_rel_2008_1110, myrast_33, rast_rel_2011_0928, rast_rel_2008_09_29, mgrast_rel_2008_0917, rast_rel_2008_10_29, mgrast_dev_04052011, mgrast_dev_02222011, rast_rel_2009_03_26, mgrast_dev_10262011, rast_rel_2008_11_24, HEAD
Changes since 1.3: +2 -2 lines
Converted URLs.

package WebComponent::Info;

# Info - component for a collapsable info field

use strict;
use warnings;

use WebConfig;

use base qw( WebComponent );

1;


=pod

=head1 NAME

Info - component for a collapsable info field

=head1 DESCRIPTION

WebComponent for a collapsable info field

=head1 METHODS

=over 4


=item * B<new> ()

Called when the object is initialized. Expands SUPER::new.

=cut

sub new {

  my $self = shift->SUPER::new(@_);
  
  $self->{content} = "";
  $self->{width} = "70%";
  $self->{default} = 1;
  $self->{title} = undef;

  return $self;
}

=item * B<output> ()

Returns the html output of the Info component.

=cut

sub output {
  my ($self) = @_;

  my $class_1 = "info_button_show";
  my $class_2 = "info_show";
  unless ($self->default()) {
    $class_1 = "info_button_hide";
    $class_2 = "info_hide";
  }

  my $title = '';
  if (defined($self->title)) {
    $title = "<td style='padding-top: 3px;padding-right: 2px;'>" . $self->title . "</td>";
  }

  my $info = qq~<div style="width: ~ . $self->width() . qq~; padding: 0px; margin-bottom: 5px;"><table class="info"><tr><td class='info'><div onclick="info_field('~ . $self->id() . qq~');" id="info_button_~ . $self->id() . qq~" class="$class_1"><img src='~.IMAGES.qq~wac_infobulb.png'></div></td><td class='info'><div id="info_~ . $self->id() . qq~" class="$class_2">~ . $self->content() . qq~</div></td>~ . $title . qq~</tr></table></div>~;

  return $info;
}

=item * B<width> (I<width>)

Getter / Setter for the width attribute.
This determines the width of the component as used by the css width attribute.

=cut

sub width {
  my ($self, $width) = @_;

  if (defined($width)) {
    $self->{width} = $width;
  }

  return $self->{width};
}

=item * B<content> (I<content>)

Getter / Setter for the content attribute.
This determines the content of the component.

=cut

sub content {
  my ($self, $content) = @_;

  if (defined($content)) {
    $self->{content} = $content;
  }

  return $self->{content};
}

=item * B<default> (I<default>)

Getter / Setter for the default attribute.
This determines whether the info component is initially expanded or collapsed.

=cut

sub default {
  my ($self, $default) = @_;

  if (defined($default)) {
    $self->{default} = $default;
  }

  return $self->{default};
}

=item * B<title> (I<title>)

Getter / Setter for the title attribute.
This determines whether the info component will have a title to the right of it
when collapsed.

=cut

sub title {
  my ($self, $title) = @_;

  if (defined($title)) {
    $self->{title} = $title;
  }

  return $self->{title};
}

sub require_css {
  return "$FIG_Config::cgi_url/Html/Info.css";
}

sub require_javascript {
  return ["$FIG_Config::cgi_url/Html/Info.js"];
}

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3