… | |
… | |
898 | glClear GL_COLOR_BUFFER_BIT; |
898 | glClear GL_COLOR_BUFFER_BIT; |
899 | |
899 | |
900 | { |
900 | { |
901 | package CFPlus::UI::Base; |
901 | package CFPlus::UI::Base; |
902 | |
902 | |
903 | ($draw_x, $draw_y, $draw_w, $draw_h) = |
903 | local ($draw_x, $draw_y, $draw_w, $draw_h) = |
904 | (0, 0, $self->{w}, $self->{h}); |
904 | (0, 0, $self->{w}, $self->{h}); |
905 | } |
905 | } |
906 | |
906 | |
907 | $self->_render; |
907 | $self->_render; |
908 | }; |
908 | }; |
… | |
… | |
1968 | $self->{cursor} = 0; |
1968 | $self->{cursor} = 0; |
1969 | } elsif ($sym == CFPlus::SDLK_END) { |
1969 | } elsif ($sym == CFPlus::SDLK_END) { |
1970 | $self->{cursor} = length $text; |
1970 | $self->{cursor} = length $text; |
1971 | } elsif ($uni == 21) { # ctrl-u |
1971 | } elsif ($uni == 21) { # ctrl-u |
1972 | $text = ""; |
1972 | $text = ""; |
|
|
1973 | $self->{cursor} = 0; |
1973 | } elsif ($uni == 27) { |
1974 | } elsif ($uni == 27) { |
1974 | $self->emit ('escape'); |
1975 | $self->emit ('escape'); |
1975 | } elsif ($uni) { |
1976 | } elsif ($uni) { |
1976 | substr $text, $self->{cursor}++, 0, chr $uni; |
1977 | substr $text, $self->{cursor}++, 0, chr $uni; |
1977 | } else { |
1978 | } else { |
… | |
… | |
2957 | my ($W, $H) = @{$self->{children}[0]}{qw(w h)}; |
2958 | my ($W, $H) = @{$self->{children}[0]}{qw(w h)}; |
2958 | |
2959 | |
2959 | $self->{texture} ||= new_from_opengl CFPlus::Texture $W, $H, sub { |
2960 | $self->{texture} ||= new_from_opengl CFPlus::Texture $W, $H, sub { |
2960 | glClearColor 0, 0, 0, 0; |
2961 | glClearColor 0, 0, 0, 0; |
2961 | glClear GL_COLOR_BUFFER_BIT; |
2962 | glClear GL_COLOR_BUFFER_BIT; |
|
|
2963 | |
|
|
2964 | { |
|
|
2965 | package CFPlus::UI::Base; |
|
|
2966 | |
|
|
2967 | local ($draw_x, $draw_y, $draw_w, $draw_h) = |
|
|
2968 | (0, 0, $self->{w}, $self->{h}); |
|
|
2969 | } |
2962 | |
2970 | |
2963 | my $top = int $self->{children}[1]{range}[0]; |
2971 | my $top = int $self->{children}[1]{range}[0]; |
2964 | |
2972 | |
2965 | my $paridx = 0; |
2973 | my $paridx = 0; |
2966 | my $top_paragraph; |
2974 | my $top_paragraph; |
… | |
… | |
3835 | } |
3843 | } |
3836 | |
3844 | |
3837 | 1 |
3845 | 1 |
3838 | }; |
3846 | }; |
3839 | |
3847 | |
3840 | my $tooltip = "$spell->{message}$TOOLTIP_ALL"; |
3848 | my $tooltip = (CFPlus::asxml $spell->{message}) . $TOOLTIP_ALL; |
3841 | |
3849 | |
3842 | #TODO: add path info to tooltip |
3850 | #TODO: add path info to tooltip |
3843 | #$self->add (6, $row, new CFPlus::UI::Label text => $spell->{path}); |
3851 | #$self->add (6, $row, new CFPlus::UI::Label text => $spell->{path}); |
3844 | |
3852 | |
3845 | $self->add (0, $row, new CFPlus::UI::Face |
3853 | $self->add (0, $row, new CFPlus::UI::Face |
… | |
… | |
4123 | glLoadIdentity; |
4131 | glLoadIdentity; |
4124 | |
4132 | |
4125 | { |
4133 | { |
4126 | package CFPlus::UI::Base; |
4134 | package CFPlus::UI::Base; |
4127 | |
4135 | |
4128 | ($draw_x, $draw_y, $draw_w, $draw_h) = |
4136 | local ($draw_x, $draw_y, $draw_w, $draw_h) = |
4129 | (0, 0, $self->{w}, $self->{h}); |
4137 | (0, 0, $self->{w}, $self->{h}); |
4130 | } |
4138 | } |
4131 | |
4139 | |
4132 | $self->_draw; |
4140 | $self->_draw; |
4133 | } |
4141 | } |