function setCustomColor($index, $red, $green, $blue)
    {
        // Match a HTML #xxyyzz style parameter
        /*if (defined $_[1] and $_[1] =~ /^#(\w\w)(\w\w)(\w\w)/ ) {
            @_ = ($_[0], hex $1, hex $2, hex $3);
        }*/

        // Check that the colour index is the right range
        if ($index < 8 or $index > 64) {
            // TODO: assign real error codes
            return $this->raiseError("Color index $index outside range: 8 <= index <= 64");
        }

        // Check that the colour components are in the right range
        if (($red   < 0 or $red   > 255) ||
            ($green < 0 or $green > 255) ||
            ($blue  < 0 or $blue  > 255))
        {
            return $this->raiseError("Color component outside range: 0 <= color <= 255");
        }

        $index -= 8; // Adjust colour index (wingless dragonfly)

        // Set the RGB value
        $this->_palette[$index] = array($red, $green, $blue, 0);
        return($index + 8);
    }
function setCustomColor($index, $red, $green, $blue)
    {
        // Match a HTML #xxyyzz style parameter
        /*if (defined $_[1] and $_[1] =~ /^#(\w\w)(\w\w)(\w\w)/ ) {
            @_ = ($_[0], hex $1, hex $2, hex $3);
        }*/

        // Check that the colour index is the right range
        if ($index < 8 or $index > 64) {
            // TODO: assign real error codes
            return $this->raiseError("Color index $index outside range: 8 <= index <= 64");
        }

        // Check that the colour components are in the right range
        if (($red   < 0 or $red   > 255) ||
            ($green < 0 or $green > 255) ||
            ($blue  < 0 or $blue  > 255))
        {
            return $this->raiseError("Color component outside range: 0 <= color <= 255");
        }

        $index -= 8; // Adjust colour index (wingless dragonfly)

        // Set the RGB value
        $this->_palette[$index] = array($red, $green, $blue, 0);
        return($index + 8);
    }
function setCustomColor ( $ index , $ red , $ green , $ blue ) { // Match a HTML #xxyyzz style parameter
 /*if (defined $_[1] and $_[1] =~ /^#(\w\w)(\w\w)(\w\w)/ ) {
            @_ = ($_[0], hex $1, hex $2, hex $3);
        }*/ // Check that the colour index is the right range
 if ( $ index < 8 or $ index > 64 ) { // TODO: assign real error codes
 return $ this -> raiseError ( "Color index $index outside range: 8 <= index <= 64" ) ; } // Check that the colour components are in the right range
 if ( ( $ red < 0 or $ red > 255 ) || ( $ green < 0 or $ green > 255 ) || ( $ blue < 0 or $ blue > 255 ) ) { return $ this -> raiseError ( "Color component outside range: 0 <= color <= 255" ) ; } $ index -= 8 ; // Adjust colour index (wingless dragonfly)
 // Set the RGB value
 $ this -> _palette [ $ index ] = array ( $ red , $ green , $ blue , 0 ) ; return ( $ index + 8 ) ; }
Change the RGB components of the elements in the colour palette.

@access public
@param integer $index colour index
@param integer $red   red RGB value [0-255]
@param integer $green green RGB value [0-255]
@param integer $blue  blue RGB value [0-255]
@return integer The palette index for the custom color
Change the RGB components of the elements in the colour palette .