| line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
|
1
|
|
|
|
|
|
|
package Devel::ebug::Wx::View::Multi; |
|
2
|
|
|
|
|
|
|
|
|
3
|
1
|
|
|
1
|
|
799
|
use strict; |
|
|
1
|
|
|
|
|
1
|
|
|
|
1
|
|
|
|
|
33
|
|
|
4
|
1
|
|
|
1
|
|
5
|
use base qw(Devel::ebug::Wx::View::Base); |
|
|
1
|
|
|
|
|
2
|
|
|
|
1
|
|
|
|
|
366
|
|
|
5
|
|
|
|
|
|
|
|
|
6
|
|
|
|
|
|
|
__PACKAGE__->mk_accessors( qw(_tag _index) ); |
|
7
|
|
|
|
|
|
|
|
|
8
|
0
|
|
|
0
|
0
|
|
sub is_multiview { 1 } |
|
9
|
|
|
|
|
|
|
|
|
10
|
|
|
|
|
|
|
sub description { |
|
11
|
0
|
|
|
0
|
0
|
|
my( $self ) = @_; |
|
12
|
0
|
|
|
|
|
|
my $description_base = $self->description_base; |
|
13
|
|
|
|
|
|
|
|
|
14
|
0
|
0
|
|
|
|
|
return $description_base unless ref $self; |
|
15
|
0
|
|
|
|
|
|
$self->tag; # hack to set _index... |
|
16
|
0
|
|
|
|
|
|
return sprintf "%s %d", $description_base, $self->_index; |
|
17
|
|
|
|
|
|
|
} |
|
18
|
|
|
|
|
|
|
|
|
19
|
|
|
|
|
|
|
sub tag { |
|
20
|
0
|
|
|
0
|
0
|
|
my( $self ) = @_; |
|
21
|
0
|
|
|
|
|
|
my $tag_base = $self->tag_base; |
|
22
|
|
|
|
|
|
|
|
|
23
|
0
|
0
|
|
|
|
|
return $tag_base unless ref $self; |
|
24
|
0
|
0
|
|
|
|
|
return $self->_tag if $self->_tag; |
|
25
|
|
|
|
|
|
|
# generate an unused tag |
|
26
|
0
|
|
|
|
|
|
my $vm = $self->wxebug->view_manager_service; |
|
27
|
0
|
|
|
|
|
|
for( my $index = 1; $index < 1000; ++$index ) { |
|
28
|
0
|
|
|
|
|
|
my $tag = $tag_base . $index; |
|
29
|
0
|
0
|
|
|
|
|
next if $vm->has_view( $tag ); |
|
30
|
0
|
|
|
|
|
|
$self->_index( $index ); |
|
31
|
0
|
|
|
|
|
|
return $self->_tag( $tag ); |
|
32
|
|
|
|
|
|
|
} |
|
33
|
|
|
|
|
|
|
} |
|
34
|
|
|
|
|
|
|
|
|
35
|
|
|
|
|
|
|
sub set_layout_state { |
|
36
|
0
|
|
|
0
|
0
|
|
my( $self, $state ) = @_; |
|
37
|
0
|
|
|
|
|
|
$self->SUPER::set_layout_state( $state ); |
|
38
|
0
|
|
|
|
|
|
$self->_tag( $state->{multi}{tag} ); |
|
39
|
0
|
|
|
|
|
|
$self->_index( $state->{multi}{index} ); |
|
40
|
|
|
|
|
|
|
# must do it _AFTER_ setting the tag |
|
41
|
0
|
|
|
|
|
|
$self->register_view; |
|
42
|
|
|
|
|
|
|
} |
|
43
|
|
|
|
|
|
|
|
|
44
|
|
|
|
|
|
|
sub get_layout_state { |
|
45
|
0
|
|
|
0
|
0
|
|
my( $self ) = @_; |
|
46
|
0
|
|
|
|
|
|
my $state = $self->SUPER::get_layout_state; |
|
47
|
0
|
|
|
|
|
|
$state->{multi}{tag} = $self->tag; |
|
48
|
0
|
|
|
|
|
|
$state->{multi}{index} = $self->_index; |
|
49
|
|
|
|
|
|
|
|
|
50
|
0
|
|
|
|
|
|
return $state; |
|
51
|
|
|
|
|
|
|
} |
|
52
|
|
|
|
|
|
|
|
|
53
|
|
|
|
|
|
|
1; |
|
54
|
|
|
|
|
|
|
|