Roxen.git/
server/
modules/
graphics/
gbutton.pike
Branch:
Tag:
Non-build tags
All tags
No tags
2000-02-21
2000-02-21 18:57:05 by Per Hedbor <ph@opera.com>
185bd4050b2c52d3f52781d9407b50f7faada672 (
25
lines) (+
15
/-
10
)
[
Show
|
Annotate
]
Branch:
5.2
Bugfixed left and right layer support
Rev: server/modules/graphics/gbutton.pike:1.30
25:
// must also be aligned left or right.
-
constant cvs_version = "$Id: gbutton.pike,v 1.
29
2000/02/21
17
:
50
:
48
per Exp $";
+
constant cvs_version = "$Id: gbutton.pike,v 1.
30
2000/02/21
18
:
57
:
05
per Exp $";
constant thread_safe = 1; #include <module.h>
388:
if( background ) button->paste_mask( background->image(), background->alpha() );
-
// fix transparency (somewhat)
-
if( !equal( args->pagebg, args->bg ) )
-
button->paste_alpha_color( mask->alpha()->invert()->threshold( 200 ),
-
args->pagebg );
-
-
+
// Draw icon. if (icon) {
443:
if( sizeof( l ) ) { object q = Image.lay( l );
+
q->set_offset( 0, 0 );
object b2 = Image.Image( button->xsize()+q->xsize(), button->ysize(), @args->pagebg );
-
b2->paste( button, q->xsize() );
+
b2->paste( button, q->xsize()
,0
);
b2->paste_mask( q->image(), q->alpha() ); button = b2;
-
mask
= Image.lay( ({q, mask
->set_offset( q->xsize(),0 )
}
) );
+
mask->set_offset( q->xsize(),
0 )
;
+
mask = Image.lay( ({q, mask}
) );
} }
464:
if( sizeof( l ) ) { object q = Image.lay( l );
+
q->set_offset( 0, 0 );
object b2 = Image.Image( button->xsize()+q->xsize(), button->ysize(), @args->pagebg ); b2->paste( button ); b2->paste_mask( q->image(), q->alpha(), button->xsize(), 0 ); button = b2;
-
mask = Image.lay( ({q
->set_offset( mask->xsize(),0), mask }) );
+
q
->set_offset( mask->xsize(),0)
;
+
mask = Image.lay( ({q
, mask }) );
} }
-
+
// fix transparency (somewhat)
+
if( !equal( args->pagebg, args->bg ) )
+
button->paste_alpha_color( mask->alpha()->invert()->threshold( 200 ),
+
args->pagebg );
+
+
return ([ "img":button,