… | |
… | |
1355 | |
1355 | |
1356 | my @border = |
1356 | my @border = |
1357 | map { new_from_file CFPlus::Texture CFPlus::find_rcfile $_, mipmap => 1 } |
1357 | map { new_from_file CFPlus::Texture CFPlus::find_rcfile $_, mipmap => 1 } |
1358 | qw(d1_border_top.png d1_border_right.png d1_border_left.png d1_border_bottom.png); |
1358 | qw(d1_border_top.png d1_border_right.png d1_border_left.png d1_border_bottom.png); |
1359 | |
1359 | |
|
|
1360 | my @icon = |
|
|
1361 | map { new_from_file CFPlus::Texture CFPlus::find_rcfile $_, mipmap => 1 } |
|
|
1362 | qw(x1_move.png x1_resize.png); |
|
|
1363 | |
1360 | sub new { |
1364 | sub new { |
1361 | my ($class, %arg) = @_; |
1365 | my ($class, %arg) = @_; |
1362 | |
1366 | |
1363 | my $self = $class->SUPER::new ( |
1367 | my $self = $class->SUPER::new ( |
1364 | bg => [1, 1, 1, 1], |
1368 | bg => [1, 1, 1, 1], |
… | |
… | |
1532 | glTexEnv GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE; |
1536 | glTexEnv GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE; |
1533 | |
1537 | |
1534 | my $border = $self->border; |
1538 | my $border = $self->border; |
1535 | |
1539 | |
1536 | glColor @{ $self->{border_bg} }; |
1540 | glColor @{ $self->{border_bg} }; |
1537 | $border[0]->draw_quad_alpha (0, 0, $w, $border); |
1541 | $border[0]->draw_quad_alpha ( 0, 0, $w, $border); |
1538 | $border[1]->draw_quad_alpha (0, $border, $border, $ch); |
1542 | $border[1]->draw_quad_alpha ( 0, $border, $border, $ch); |
1539 | $border[2]->draw_quad_alpha ($w - $border, $border, $border, $ch); |
1543 | $border[2]->draw_quad_alpha ($w - $border, $border, $border, $ch); |
1540 | $border[3]->draw_quad_alpha (0, $h - $border, $w, $border); |
1544 | $border[3]->draw_quad_alpha ( 0, $h - $border, $w, $border); |
|
|
1545 | |
|
|
1546 | # move |
|
|
1547 | my $w2 = ($w - $border) * .5; |
|
|
1548 | my $h2 = ($h - $border) * .5; |
|
|
1549 | $icon[0]->draw_quad_alpha ( 0, $h2, $border, $border); |
|
|
1550 | $icon[0]->draw_quad_alpha ($w - $border, $h2, $border, $border); |
|
|
1551 | $icon[0]->draw_quad_alpha ($w2 , $h - $border, $border, $border); |
|
|
1552 | |
|
|
1553 | # resize |
|
|
1554 | $icon[1]->draw_quad_alpha ( 0, 0, $border, $border); |
|
|
1555 | $icon[1]->draw_quad_alpha ($w - $border, 0, $border, $border) |
|
|
1556 | unless $self->{has_close_button}; |
|
|
1557 | $icon[1]->draw_quad_alpha ( 0, $h - $border, $border, $border); |
|
|
1558 | $icon[1]->draw_quad_alpha ($w - $border, $h - $border, $border, $border); |
1541 | |
1559 | |
1542 | if (@{$self->{bg}} < 4 || $self->{bg}[3]) { |
1560 | if (@{$self->{bg}} < 4 || $self->{bg}[3]) { |
1543 | glColor @{ $self->{bg} }; |
1561 | glColor @{ $self->{bg} }; |
1544 | |
1562 | |
1545 | # TODO: repeat texture not scale |
1563 | # TODO: repeat texture not scale |