[Previous] [Contents] [Index] [Next]

ApGetImageRes()

Extract the image data from a widget in a widget database

Synopsis:

#include <Ap.h>

PhImage_t *ApGetImageRes( 
              ApDBase_t const *dbase, 
              char const *wgt_name );

Library:

Ap

Description:

ApGetImageRes() lets you extract images from a widget in a PhAB widget database.

The dbase argument is the widget database pointer returned from ApOpenDBase(). The wgt_name argument is the name of widget within the database that has the image you're trying to extract.

This function is mainly used to perform simple animation. You can create a series of tiles, using any widget that supports images, in a PhAB widget database; to create the animation, cycle through the tiles by pulling out the images in sequence, updating another widget that is visible within the application window.

Returns:

A pointer to a PhImage_t structure, or NULL if the widget or image data couldn't be found.


Note: This function returns a pointer into the widget database; don't close the database while still using the image. If you must close the widget database, do the following first:
  1. Copy the image data and palette.
  2. Update the PhImage_t structure to point to the new copies of the data.

Examples:

PhImage_t   *image;

mydbase = ApOpenDBase( ABM_mypicture );
image = ApGetImageRes( mydbase, "myimage" );

/* update the label widget with the new image */

if ( image ) {
    PtSetResource( ABW_label_wgt, Pt_ARG_LABEL_IMAGE, 
                   image, 0 );
}

Classification:

Photon

Safety:
Interrupt handler No
Signal handler No
Thread No

See also:

ApOpenDBase(), ApOpenDBaseFile(), PgDrawPhImage(), PgDrawPhImagemx(), PhCreateImage(), PhImage_t, PhMakeGhostBitmap(), PhMakeTransBitmap(), PhMakeTransparent(), PhReleaseImage(), PmMemCreateMC(), PmMemFlush(), PxLoadImage()

"Images" and "Animation" in the Raw Drawing and Animation chapter of the Photon Programmer's Guide


[Previous] [Contents] [Index] [Next]