X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=gtkconsole%2FScreen.pm;h=daf151b7442b4ee801acdf9854876580e102dce2;hb=f63d598af3f797b56b8d5e23ec4ff5254192eee9;hp=ce53dc299b4b07fcaac301b6094e681f13fb4f30;hpb=1483f78fa8fff9f1d97e59127064f1e5d84da78c;p=spider.git diff --git a/gtkconsole/Screen.pm b/gtkconsole/Screen.pm index ce53dc29..daf151b7 100644 --- a/gtkconsole/Screen.pm +++ b/gtkconsole/Screen.pm @@ -1,9 +1,7 @@ # -# Generic screen generator -# # This produces the Gtk for all the little sub-screens # -# $Id$ +# # # Copyright (c) 2006 Dirk Koopman G1TLH # @@ -26,8 +24,8 @@ INIT { $cell->set(text => sprintf("%.1f", $info), xalign => 1.0); } ); - - + + Gtk2::SimpleList->add_column_type( 'tt', type => 'Glib::Scalar', renderer => 'Gtk2::CellRendererText', @@ -101,18 +99,18 @@ sub new { my $pkg = shift; my %args = @_; - + my $list = Gtk2::SimpleList->new(@{$args{fields}}); $list->set_rules_hint(1) if $args{hint}; $list->set_name($args{pkgname} || __PACKAGE__); - + my $scroll = Gtk2::ScrolledWindow->new (undef, undef); $scroll->set_shadow_type ($args{shadow_type} || 'etched-out'); $scroll->set_policy (exists $args{policy} ? @{$args{policy}} : qw(automatic automatic)); $scroll->set_size_request (@{$args{size}}) if exists $args{size}; $scroll->add($list); $scroll->set_border_width(exists $args{border_width} ? $args{border_width} : 2); - + my $self = $pkg->SUPER::new(scroller => $scroll, list => $list, widget => $scroll, maxsize => ($args{maxsize} || 100)); $list->get_model->signal_connect('row-inserted', \&_row_inserted, $self); @@ -129,7 +127,7 @@ sub add_data { my $self = shift; my $list = $self->{list}; - + push @{$list->{data}}, ref $_[0] ? $_[0] : [ @_ ]; shift @{$list->{data}} if @{$list->{data}} > $self->{maxsize}; }