bool Fl_GroupAniSwitch::generate_img( Fl_Group* src, Fl_RGB_Image* &dst )
{
    if ( src != NULL )
    {
        Fl_Image_Surface* imgsurf = new Fl_Image_Surface( src->w(), src->h(), 0 );

        if ( imgsurf != NULL )
        {
            imgsurf->set_current();
            imgsurf->draw( src );
            dst = imgsurf->image();

            Fl_Display_Device::display_device()->set_current();

            delete imgsurf;

            if ( dst != NULL )
                return true;
        }
    }

    return false;
}