PA_SetPictureField


version 2003


PA_SetPictureField (tNum; fNum; newPicture; len; info)

Parameter Type Description
tNum short Table number of the field to access
fNum short Field number of the field to access
newPicture void* Pointer to the new picture data
len long Size of the picture in bytes
info PA_PictureInfo Picture info

Description

The routine PA_SetPictureField fills the picture field number fNum of the current record of the table number tNum with the data pointed to by newPicture , of size size . It then adds to the field the PictureInfo info .

If the field is not a picture field, the routine does nothing and sets an error in PA_GetLastError ().

Note that PA_SetPictureField duplicates newPicture , which still belongs to the plug-in after the call. To give the data without duplicating it, use PA_SetPictureHandleField .

Example

Fill the field content with the content of a picture variable (no error checking here)

   void BlobVariableToBlobField (PA_Variable v, short tNum, short fNum)
   {
      PA_Handle   pictureH;
      char      *ptr;
 
      if(PA_GetVariableKind(v) == eVK_Picture)
      {
   // Since we do not touch to the picture data, we do not have to duplicate it,
   // put it in the field, then dispose of it. We simply use the variable BLOB handle
         pictureH = PA_GetPictureHandleVariable(v);
 
   // Lock and transfer the data
         ptr = PA_LockHandle(pictureH);
         PA_SetPictureField(tNum, fNum, ptr, PA_GetHandleSize(pictureH));
         PA_UnlockHandle(pictureH);
      }
   }

See Also

PA_GetPictureField , PA_GetPictureHandleField , PA_SetPictureHandleField .

Error Handling

Use PA_GetLastError to see if an error occurred ( eER_InvalidFileNumber , eER_InvalidFieldNumber ).