+sub set_label {
+ my ($self, $prefix, $row, $text, $size) = @_;
+
+ ++$row if defined $row && $row =~ /\A\d+\z/xms;
+ $size //= 'value';
+
+ my $name = defined $row ? $prefix.$row : $prefix;
+ my $label = $self->get_object($name)
+ or croak "Can't get label named $name";
+ $label->set_markup('<span font_desc="' . $self->{$size.'_size'} . '"'
+ . ' weight="bold">' . $text . '</span>');
+}
+
+sub set_image {
+ my ($self, $prefix, $row, $imgset, $value) = @_;
+
+ ++$row if defined $row && $row =~ /\A\d+\z/xms;
+
+ my $name = defined $row ? $prefix.$row : $prefix;
+
+ my $image = $self->get_object($name)
+ or croak "Can't get image named $name";
+
+ my $set = $self->{$imgset.'_images'};
+ my $pixbuf = (ref($set) eq 'ARRAY')
+ ? $set->[$value]
+ : $set->{$value};
+
+ $image->set_from_pixbuf($pixbuf);
+}
+