PA_GetTextVariable


version 2003


PA_GetTextVariable (aVariable; theText) → long

Parameter Type Description
aVariable PA_Variable Variable to access
theText char * Content of the text
Function result long Length of theText. 0 if the variable is not text kind

Description

The routine PA_GetTextVariable puts the content of the variable aVariable in the data pointed to by theText and returns its length (max 32000).

If aVariable has not the kind eVK_Text , the routine returns 0 and theText is returned unchanged.

If text size is unknown, call the function a first time with theText equal to zero. The returned value will be the size of the needed buffer. Allocate the buffer and call the function again with the correct buffer.

NOTE

:

Depending of default settings or of previous calls to PA_UseMacCharacters or PA_UseANSICharacters , theText will contain Macintosh or ANSI characters.

Example

Get a text variable.

   char   *theText;
   long   textSize;
 
   // First call the routine with a nil pointer to get the text size
      textSize = PA_GetTextVariable(aVariable, 0L);
   // Then allocate the buffer
      theText = malloc(textSize);
   // If it is ok, get the text value
      textSize = PA_GetTextVariable(aVariable, theText);
   // Work with the text
      /* . . . */
   // Cleanup
      free(theText);

Error Handling

PA_GetLastError

keeps the last error that occurred before calling the routine.