![]() |
![]() |
![]() |
![]() |
![]() |
This version of this document is no longer maintained. For the latest documentation, see http://www.qnx.com/developers/docs. |
Extract data from a print context
void * PpGetPC( PpPrintContext_t *pc,
int member,
const void ** const data);
ph
Use this function to query the attributes of a print context.
![]() |
Don't extract values directly from the data structure. Your application might not work if the structure changes in the future. |
Use the following data types when getting the value of the members of the print context:
| Member | Data |
|---|---|
| Pp_PC_COLLATING_MODE | Address of a char * ( value ) |
| Pp_PC_COLOR_MODE | Address of a char * ( value ) |
| Pp_PC_CONTROL | Address of a PpPCControl_t * |
| Pp_PC_COPIES | Address of a char * ( value ) |
| Pp_PC_DATE | Address of a char * (string) |
| Pp_PC_DEVICE | Address of a char * (string) |
| Pp_PC_DITHERING | Address of a char * ( value ) |
| Pp_PC_DO_PREVIEW | Address of a char * ( value ) |
| Pp_PC_DRIVER | Address of a char * (string) |
| Pp_PC_DUPLEX | Address of a char * ( value ) |
| Pp_PC_FILENAME | Address of a char * (string) |
| Pp_PC_INKTYPE | Address of a char * ( value ) |
| Pp_PC_INTENSITY | Address of a ulong_t * |
| Pp_PC_JOB_NAME | Address of a char * (string) |
| Pp_PC_MARGINS | Address of a PhRect_t * |
| Pp_PC_MAX_DEST_SIZE | Address of a ulong_t |
| Pp_PC_NAME | Address of a char * (string) |
| Pp_PC_NONPRINT_MARGINS | Address of a PhRect_t * |
| Pp_PC_ORIENTATION | Address of a char * ( value ) |
| Pp_PC_PAGE_NUM | Address of a ulong_t |
| Pp_PC_PAGE_RANGE | Address of a PpPageRange_t * |
| Pp_PC_PAPER_SIZE | Address of a PhDim_t * |
| Pp_PC_PAPER_SOURCE | Address of a char * ( value ) |
| Pp_PC_PAPER_TYPE | Address of a char * ( value ) |
| Pp_PC_PREVIEW_APP | Address of a char * (string) |
| Pp_PC_PRINTER_RESOLUTION | Address of a PhDim_t * |
| Pp_PC_PROP_APP | Address of a char * (string) |
| Pp_PC_REVERSED | Address of a char ( value ) |
| Pp_PC_SCALE | Address of a PhPoint_t * |
| Pp_PC_SOURCE_COLORS | Address of a ulong_t * |
| Pp_PC_SOURCE_OFFSET | Address of a PhPoint_t * |
| Pp_PC_SOURCE_RESOLUTION | Address of a PhDim_t * |
| Pp_PC_SOURCE_SIZE | Address of a PhDim_t * |
| Pp_PC_USER_ID | Address of a char * (string) |
A pointer to the requested data, or NULL if an unrecognized member was specified.
int get_it( PtWidget_t *widget, ApInfo_t *apinfo,
PtCallbackInfo_t *cbinfo )
{
PhDim_t *dim;
void *pc_data;
PpPrintContext_t *pc;
/* Eliminate 'unreferenced' warnings */
widget = widget, apinfo = apinfo, cbinfo = cbinfo;
pc = PpCreatePC();
// Pop up the standard print dialog to fill in the PC
PtPrintSelection( NULL, NULL,
"Select Printer", pc, 0 );
// Get some stuff from the pc
// A string:
PpGetPC( pc, Pp_PC_NAME, &pc_data );
printf( "printer: %s\n", (char *)pc_data );
// A structure ( PhDim_t ):
PpGetPC( pc, Pp_PC_PAPER_SIZE, &pc_data );
printf( "paper height: %d, width: %d\n",
((PhDim_t *)pc_data)->h, ((PhDim_t *)pc_data)->w );
// A long value:
PpGetPC( pc, Pp_PC_INTENSITY, &pc_data );
printf( "intensity: %ld\n", *(long *)pc_data );
// A number stored in a char:
PpGetPC( pc, Pp_PC_COPIES, &pc_data );
printf( "copies : %d\n", *(char *)pc_data );
// Of course, the correct type can be used to
// get the member:
PpGetPC( pc, Pp_PC_PAPER_SIZE, &dim );
printf( "paper height: %d, width: %d\n", dim->h, dim->w );
PpReleasePC( pc );
return Pt_CONTINUE;
}
Photon
| Safety: | |
|---|---|
| Interrupt handler | No |
| Signal handler | No |
| Thread | No |
PhDim_t, PhPoint_t, PhRect_t, PpContinueJob(), PpCreatePC(), PpEndJob(), PpGetCanvas(), PpLoadDefaultPrinter(), PpLoadPrinter(), PpPrintContext_t, PpPrintNewPage(), PpReleasePC(), PpPrintWidget(), PpSetCanvas(), PpSetPC(), PpSuspendJob()
Printing in the Photon Programmer's Guide
![]() |
![]() |
![]() |
![]() |