… | |
… | |
909 | } |
909 | } |
910 | |
910 | |
911 | sub _draw { |
911 | sub _draw { |
912 | my ($self) = @_; |
912 | my ($self) = @_; |
913 | |
913 | |
914 | my ($w, $h) = @$self{qw(w h)}; |
|
|
915 | |
|
|
916 | my $tex = $self->{texture} |
914 | my $tex = $self->{texture} |
917 | or return; |
915 | or return; |
918 | |
916 | |
919 | glEnable GL_TEXTURE_2D; |
917 | glEnable GL_TEXTURE_2D; |
920 | glTexEnv GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE; |
918 | glTexEnv GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE; |
921 | glColor 0, 0, 0, 1; |
919 | glColor 0, 0, 0, 1; |
922 | |
920 | |
923 | $tex->draw_quad_alpha_premultiplied (0, 0, $w, $h); |
921 | $tex->draw_quad_alpha_premultiplied (0, 0); |
924 | |
922 | |
925 | glDisable GL_TEXTURE_2D; |
923 | glDisable GL_TEXTURE_2D; |
926 | } |
924 | } |
927 | |
925 | |
928 | ############################################################################# |
926 | ############################################################################# |
… | |
… | |
1618 | #active_bg => none |
1616 | #active_bg => none |
1619 | #font => default_font |
1617 | #font => default_font |
1620 | #text => initial text |
1618 | #text => initial text |
1621 | #markup => initial narkup |
1619 | #markup => initial narkup |
1622 | #max_w => maximum pixel width |
1620 | #max_w => maximum pixel width |
|
|
1621 | #style => 0, # render flags |
1623 | ellipsise => 3, # end |
1622 | ellipsise => 3, # end |
1624 | layout => (new CFPlus::Layout), |
1623 | layout => (new CFPlus::Layout), |
1625 | fontsize => 1, |
1624 | fontsize => 1, |
1626 | align => -1, |
1625 | align => -1, |
1627 | valign => -1, |
1626 | valign => -1, |
… | |
… | |
1778 | }; |
1777 | }; |
1779 | |
1778 | |
1780 | my $w = List::Util::min $self->{w} + 4, $size->[0]; |
1779 | my $w = List::Util::min $self->{w} + 4, $size->[0]; |
1781 | my $h = List::Util::min $self->{h} + 2, $size->[1]; |
1780 | my $h = List::Util::min $self->{h} + 2, $size->[1]; |
1782 | |
1781 | |
1783 | $self->{layout}->render ($self->{ox}, $self->{oy}); |
1782 | $self->{layout}->render ($self->{ox}, $self->{oy}, $self->{style}); |
1784 | } |
1783 | } |
1785 | |
1784 | |
1786 | ############################################################################# |
1785 | ############################################################################# |
1787 | |
1786 | |
1788 | package CFPlus::UI::EntryBase; |
1787 | package CFPlus::UI::EntryBase; |
… | |
… | |
1949 | utf8::encode $text; |
1948 | utf8::encode $text; |
1950 | |
1949 | |
1951 | @$self{qw(cur_x cur_y cur_h)} = $self->{layout}->cursor_pos (length $text) |
1950 | @$self{qw(cur_x cur_y cur_h)} = $self->{layout}->cursor_pos (length $text) |
1952 | } |
1951 | } |
1953 | |
1952 | |
1954 | glColor @{$self->{fg}}; |
|
|
1955 | glBegin GL_LINES; |
1953 | glBegin GL_LINES; |
1956 | glVertex $self->{cur_x} + $self->{ox}, $self->{cur_y} + $self->{oy}; |
1954 | glVertex 0.5 + $self->{cur_x} + $self->{ox}, $self->{cur_y} + $self->{oy}; |
1957 | glVertex $self->{cur_x} + $self->{ox}, $self->{cur_y} + $self->{oy} + $self->{cur_h}; |
1955 | glVertex 0.5 + $self->{cur_x} + $self->{ox}, $self->{cur_y} + $self->{oy} + $self->{cur_h}; |
1958 | glEnd; |
1956 | glEnd; |
1959 | } |
1957 | } |
1960 | } |
1958 | } |
1961 | |
1959 | |
1962 | package CFPlus::UI::Entry; |
1960 | package CFPlus::UI::Entry; |
… | |
… | |
2997 | |
2995 | |
2998 | $self->add (new CFPlus::UI::Label |
2996 | $self->add (new CFPlus::UI::Label |
2999 | markup => $tooltip, |
2997 | markup => $tooltip, |
3000 | max_w => ($widget->{tooltip_width} || 0.25) * $::WIDTH, |
2998 | max_w => ($widget->{tooltip_width} || 0.25) * $::WIDTH, |
3001 | fontsize => 0.8, |
2999 | fontsize => 0.8, |
3002 | fg => [0, 0, 0, 1], |
3000 | style => 1, # FLAG_INVERSE |
3003 | ellipsise => 0, |
3001 | ellipsise => 0, |
3004 | font => ($widget->{tooltip_font} || $::FONT_PROP), |
3002 | font => ($widget->{tooltip_font} || $::FONT_PROP), |
3005 | ); |
3003 | ); |
3006 | } |
3004 | } |
3007 | |
3005 | |