--- deliantra/Deliantra-Client/DC/UI.pm 2006/07/23 16:11:56 1.335 +++ deliantra/Deliantra-Client/DC/UI.pm 2006/07/23 16:46:06 1.336 @@ -369,8 +369,8 @@ if ($self->{aspect}) { my ($ow, $oh) = ($w, $h); - $w = List::Util::min $w, int $h * $self->{aspect}; - $h = List::Util::min $h, int $w / $self->{aspect}; + $w = List::Util::min $w, CFClient::ceil $h * $self->{aspect}; + $h = List::Util::min $h, CFClient::ceil $w / $self->{aspect}; # use alignment to adjust x, y @@ -2055,42 +2055,6 @@ ############################################################################# -package CFClient::UI::ImageButton; - -our @ISA = CFClient::UI::Image::; - -use CFClient::OpenGL; - -my %textures; - -sub new { - my $class = shift; - - my $self = $class->SUPER::new ( - padding_x => 4, - padding_y => 4, - fg => [1, 1, 1], - active_fg => [0, 0, 1], - can_hover => 1, - align => 0, - valign => 0, - can_events => 1, - @_ - ); -} - -sub invoke_button_up { - my ($self, $ev, $x, $y) = @_; - - $self->emit ("activate") - if $x >= 0 && $x < $self->{w} - && $y >= 0 && $y < $self->{h}; - - 1 -} - -############################################################################# - package CFClient::UI::CheckBox; our @ISA = CFClient::UI::DrawBG::; @@ -2239,6 +2203,42 @@ } ############################################################################# + +package CFClient::UI::ImageButton; + +our @ISA = CFClient::UI::Image::; + +use CFClient::OpenGL; + +my %textures; + +sub new { + my $class = shift; + + my $self = $class->SUPER::new ( + padding_x => 4, + padding_y => 4, + fg => [1, 1, 1], + active_fg => [0, 0, 1], + can_hover => 1, + align => 0, + valign => 0, + can_events => 1, + @_ + ); +} + +sub invoke_button_up { + my ($self, $ev, $x, $y) = @_; + + $self->emit ("activate") + if $x >= 0 && $x < $self->{w} + && $y >= 0 && $y < $self->{h}; + + 1 +} + +############################################################################# package CFClient::UI::VGauge;