.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title ".::SWF::Button 3pm" .TH .::SWF::Button 3pm "2011-10-26" "perl v5.14.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SWF::Button \- SWF button class .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 4 \& use SWF::Button; \& $button = new SWF::Button(); \& $button\->setUp($shape1); \& $button\->setDown($shape2); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" Creates buttons for flash movies. Buttons are controlled by various methods for visible design and triggered actions, see below: .SH "METHODS" .IX Header "METHODS" .IP "new \fISWF::Button()\fR" 4 .IX Item "new SWF::Button()" Creates a new Button object. .ie n .IP "$button\->addShape($shape, \s-1FLAG\s0)" 4 .el .IP "\f(CW$button\fR\->addShape($shape, \s-1FLAG\s0)" 4 .IX Item "$button->addShape($shape, FLAG)" Adds \f(CW$shape\fR to the button. Using this method is not recommended, better use \fIaddCharacter()\fR, see next item for details. Also unlike \fIaddCharacter()\fR this method does not return any SWF::ButtonRecord objects .ie n .IP "$buttonrecord = $button\->addCharacter($character [, $flags])" 4 .el .IP "\f(CW$buttonrecord\fR = \f(CW$button\fR\->addCharacter($character [, \f(CW$flags\fR])" 4 .IX Item "$buttonrecord = $button->addCharacter($character [, $flags])" Adds character \f(CW$shape\fR to the button. Valid FLAGs are: .Sp .Vb 4 \& SWFBUTTON_HIT \& SWFBUTTON_UP \& SWFBUTTON_DOWN \& SWFBUTTON_OVER .Ve .Sp Unlike \fIaddShape()\fR this method returns an object of SWF::ButtonRecord class. The flag states can be combined using the binary or operator. .ie n .IP "$buttonrecord = $button\->setOver($shape)" 4 .el .IP "\f(CW$buttonrecord\fR = \f(CW$button\fR\->setOver($shape)" 4 .IX Item "$buttonrecord = $button->setOver($shape)" Shortcut for \f(CW$button\fR\->addCharacter($shape, \s-1SWFBUTTON_OVER\s0); .ie n .IP "$buttonrecord = $button\->setHit($shape)" 4 .el .IP "\f(CW$buttonrecord\fR = \f(CW$button\fR\->setHit($shape)" 4 .IX Item "$buttonrecord = $button->setHit($shape)" Shortcut for \f(CW$button\fR\->addCharacter($shape, \s-1SWFBUTTON_HIT\s0); .ie n .IP "$buttonrecord = $button\->setUp($shape)" 4 .el .IP "\f(CW$buttonrecord\fR = \f(CW$button\fR\->setUp($shape)" 4 .IX Item "$buttonrecord = $button->setUp($shape)" Shortcut for \f(CW$button\fR\->addCharacter($shape, \s-1SWFBUTTON_UP\s0); .ie n .IP "$buttonrecord = $button\->setDown($shape)" 4 .el .IP "\f(CW$buttonrecord\fR = \f(CW$button\fR\->setDown($shape)" 4 .IX Item "$buttonrecord = $button->setDown($shape)" Shortcut for \f(CW$button\fR\->addCharacter($shape, \s-1SWFBUTTON_DOWN\s0); .ie n .IP "$button\->addAction($action [,FLAG])" 4 .el .IP "\f(CW$button\fR\->addAction($action [,FLAG])" 4 .IX Item "$button->addAction($action [,FLAG])" .PD 0 .ie n .IP "$button\->setAction($action [,FLAG])" 4 .el .IP "\f(CW$button\fR\->setAction($action [,FLAG])" 4 .IX Item "$button->setAction($action [,FLAG])" .PD Adds \f(CW$action\fR object (see SWF::Action). Valid FLAGs are: .Sp .Vb 6 \& SWFBUTTON_MOUSEUP \& SWFBUTTON_MOUSEOVER \& SWFBUTTON_MOUSEOUT \& SWFBUTTON_MOUSEDOWN \& SWFBUTTON_DRAGOVER \& SWFBUTTON_DRAGOUT .Ve .Sp \&\s-1SWFBUTTON_MOUSEUP\s0 is the default value of \s-1FLAG\s0. .ie n .IP "$button\->setMenu(0|1)" 4 .el .IP "\f(CW$button\fR\->setMenu(0|1)" 4 .IX Item "$button->setMenu(0|1)" Parameter is 0 (off) or 1(on). Can be used for a slight different behavior of buttons. .ie n .IP "$soundinstance = $button\->addSound($sound, $flags)" 4 .el .IP "\f(CW$soundinstance\fR = \f(CW$button\fR\->addSound($sound, \f(CW$flags\fR)" 4 .IX Item "$soundinstance = $button->addSound($sound, $flags)" Plays a prepared SWF::Sound object and returns an object of SWF::SoundInstance. Once more valid flags are: .Sp .Vb 4 \& SWFBUTTON_MOUSEUP \& SWFBUTTON_MOUSEOVER \& SWFBUTTON_MOUSEOUT \& SWFBUTTON_MOUSEDOWN .Ve .Sp For example: .Sp .Vb 2 \& $sound = new SWF::Sound("wow.mp3", SWF_SOUND_MP3_COMPRESSED ); \& $soundinstance = $button\->addSound($sound, SWFBUTTON_MOUSEDOWN ); .Ve .ie n .IP "$button\->setScalingGrid($x, $y, $w, $h)" 4 .el .IP "\f(CW$button\fR\->setScalingGrid($x, \f(CW$y\fR, \f(CW$w\fR, \f(CW$h\fR)" 4 .IX Item "$button->setScalingGrid($x, $y, $w, $h)" This function (available from \s-1SWF\s0>=8) sets a 9 slice scaling grid: 1 2 3 4 5 6 7 8 9 X, y, w and h define a rectangle, which is the dimension of the center slice (5). All other slices are determined out of the characters bounds and the defined rect. While slice 5 is scaled vertical and horizontal, slice 2 and 8 are only scaled horizontal. Slice 4 and 6 only vertical. The 4 corner slices are not scaled (1, 3, 7, 9). .ie n .IP "$button\->\fIremoveScalingGrid()\fR" 4 .el .IP "\f(CW$button\fR\->\fIremoveScalingGrid()\fR" 4 .IX Item "$button->removeScalingGrid()" Removes scaling grid rectangles. .SH "AUTHOR" .IX Header "AUTHOR" wrapper written by .PP Soheil Seyfaie (soheil at users dot sourceforge dot net) Peter Liscovius (peterdd at users dot sourceforge dot net) and many others. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\s-1SWF\s0, SWF::Action, SWF::Shape, SWF::Movie, SWF::MovieClip, SWF::Constants, SWF::Sound, SWF::SoundInstance