SWF::Button(3)

NAME
SWF::Button - SWF button class

SYNOPSIS
        use SWF::Button;
        $button = new SWF::Button();
        $button->setUp($shape1);
        $button->setDown($shape2);

DESCRIPTION
Creates buttons for flash movies. Buttons are controlled by various methods for visible design and triggered actions, see below:

METHODS

new SWF::Button()
    Creates a new Button object.

$button->addShape($shape, FLAG)
    Adds $shape to the button. Using this method is not recommended, better use addCharacter(), see next item for details. Also unlike addCharacter() this method does not return any SWF::ButtonRecord objects

$buttonrecord = $button->addCharacter($character [, $flags])
    Adds character $shape to the button. Valid FLAGs are:

            SWFBUTTON_HIT
            SWFBUTTON_UP
            SWFBUTTON_DOWN
            SWFBUTTON_OVER

    Unlike addShape() this method returns an object of SWF::ButtonRecord class. The flag states can be combined using the binary or operator.

$buttonrecord = $button->setOver($shape)
    Shortcut for $button->addCharacter($shape, SWFBUTTON_OVER);

$buttonrecord = $button->setHit($shape)
    Shortcut for $button->addCharacter($shape, SWFBUTTON_HIT);

$buttonrecord = $button->setUp($shape)
    Shortcut for $button->addCharacter($shape, SWFBUTTON_UP);

$buttonrecord = $button->setDown($shape)
    Shortcut for $button->addCharacter($shape, SWFBUTTON_DOWN);

$button->addAction($action [,FLAG])
$button->setAction($action [,FLAG])
    Adds $action object (see SWF::Action). Valid FLAGs are:

            SWFBUTTON_MOUSEUP
            SWFBUTTON_MOUSEOVER
            SWFBUTTON_MOUSEOUT
            SWFBUTTON_MOUSEDOWN
            SWFBUTTON_DRAGOVER
            SWFBUTTON_DRAGOUT

    SWFBUTTON_MOUSEUP is the default value of FLAG.

$button->setMenu(0|1)
    Parameter is 0 (off) or 1(on). Can be used for a slight different behavior of buttons.

$soundinstance = $button->addSound($sound, $flags)
    Plays a prepared SWF::Sound object and returns an object of SWF::SoundInstance. Once more valid flags are:

            SWFBUTTON_MOUSEUP
            SWFBUTTON_MOUSEOVER
            SWFBUTTON_MOUSEOUT
            SWFBUTTON_MOUSEDOWN

    For example:

            $sound = new SWF::Sound("wow.mp3", SWF_SOUND_MP3_COMPRESSED );
            $soundinstance = $button->addSound($sound, SWFBUTTON_MOUSEDOWN );

$button->setScalingGrid($x, $y, $w, $h)
    This function (available from SWF>=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).

$button->removeScalingGrid()
    Removes scaling grid rectangles.

AUTHOR
wrapper written by

Soheil Seyfaie (soheil at users dot sourceforge dot net) Peter Liscovius (peterdd at users dot sourceforge dot net) and many others.

SEE ALSO
SWF, SWF::Action, SWF::Shape, SWF::Movie, SWF::MovieClip, SWF::Constants, SWF::Sound, SWF::SoundInstance