- } elsif ($self->{user}->wantdxitu) {
- $loc = ' ' . sprintf("%2d", $_[10]) if defined $_[10];
- $comment = substr($comment, 0, $clth-3) . ' ' . sprintf("%2d", $_[8]) if defined $_[8];
- } elsif ($self->{user}->wantdxcq) {
- $loc = ' ' . sprintf("%2d", $_[11]) if defined $_[11];
- $comment = substr($comment, 0, $clth-3) . ' ' . sprintf("%2d", $_[9]) if defined $_[9];
- } elsif ($self->{user}->wantusstate) {
- $loc = ' ' . $_[13] if $_[13];
- $comment = substr($comment, 0, $clth-3) . ' ' . $_[12] if $_[12];
+ }
+ if (!$slot2 && $self->{user}->wantusstate) {
+ $slot2 = " $_[13]" if $_[13];
+ }
+ unless ($slot2) {
+ if ($self->{user}->wantdxitu) {
+ $slot2 = sprintf(" %2d", $_[10]) if defined $_[10];
+ } elsif ($self->{user}->wantdxcq) {
+ $slot2 = sprintf(" %2d", $_[11]) if defined $_[11];
+ }
+ }
+
+ my $o = sprintf("%-9s", $_[4] . ':');
+ my $qrg = sprintf "%8.1f", $_[0];
+ if (length $qrg >= 9) {
+ while (length($o)+length($qrg) > 17 && $o =~ / $/) {
+ chop $o;
+ }
+ }
+ my $spot = sprintf "%-12s", $_[1];
+ my $front = "DX de $o $qrg $spot";
+ while (length($front) > 38 && $front =~ / $/) {
+ chop $front;