Función de devolución de llamada OEMCUIPCALLBACK (printoem.h)
El tipo de función OEMCUIPCALLBACK se usa para definir funciones de devolución de llamada especificadas por el método IPrintOemUI::CommonUIProp de un complemento de interfaz de usuario. La estructura se define en printoem.h.
Sintaxis
OEMCUIPCALLBACK Oemcuipcallback;
LONG Oemcuipcallback(
PCPSUICBPARAM unnamedParam1,
POEMCUIPPARAM unnamedParam2
)
{...}
Parámetros
unnamedParam1
Puntero a una estructura CPSUICBPARAM .
unnamedParam2
Puntero a una estructura OEMCUIPPARAM .
Valor devuelto
Consulte la sección Comentarios siguiente.
Comentarios
Se llama a una función de devolución de llamada especificada por un método IPrintOemUI::CommonUIProp cuando un usuario modifica una hoja de propiedades de impresora. El propósito de la función de devolución de llamada es procesar las modificaciones del usuario en los elementos de opción personalizados.
Cuando se modifica un elemento de hoja de propiedades, CPSUI llama al archivo DLL de la interfaz de impresora del controlador de impresora. Este archivo DLL contiene su propia función de devolución de llamada, de tipo _CPSUICALLBACK, que procesa los valores de opción contenidos en sus propias estructuras OPTITEM. A continuación, la función de devolución de llamada de la DLL de la interfaz de impresora llama a la función de devolución de llamada del complemento de interfaz de usuario. Si se proporcionan varios complementos de interfaz de usuario, se llama a cada función de devolución de llamada de cada complemento, a su vez, en el orden en que se instalaron los complementos.
La función de devolución de llamada recibe un puntero a una estructura CPSUICBPARAM . El miembro Reason de la estructura identifica el evento que provocó que se llamara a la función de devolución de llamada. La función también recibe un puntero a la misma estructura OEMCUIPPARAM que se usó cuando el método IPrintOemUI::CommonUIProp especificó la dirección de la función de devolución de llamada.
Los miembros pOptItem y pCurItem de la estructura CPSUICBPARAM identifican la opción modificada. La función de devolución de llamada puede usar estos punteros, junto con los miembros pOEMOptItems y cOEMOptItem de la estructura OEMCUIPPARAM, para determinar si la opción modificada es una propiedad del complemento de interfaz de usuario.
Cuando se llama a una función de devolución de llamada, debe determinar si alguna de sus estructuras OPTITEM personalizadas se ve afectada por el valor Reason especificado. Si lo son, la función debe procesar las opciones afectadas y devolver uno de los valores devueltos con prefijo CPSUI_ACTION descritos para el tipo de función _CPSUICALLBACK . De lo contrario, debe devolver CPSUICB_ACTION_NONE.
Las siguientes reglas adicionales se aplican a los valores devueltos de la función de devolución de llamada:
Si Reason contiene CPSUICB_REASON_APPLYNOW, la devolución de llamada debe devolver CPSUICB_ACTION_ITEMS_APPLIED o CPSUICB_ACTION_NO_APPLY_EXIT. En este último caso, la interfaz del controlador de impresora vuelve inmediatamente a CPSUI sin llamar a ninguna otra función de devolución de llamada del complemento de interfaz de usuario.
Si Reason contiene cualquier valor excepto CPSUICB_REASON_APPLYNOW, el valor devuelto debe ser uno de los siguientes:
CPSUICB_ACTION_REINIT_ITEMS
CPSUICB_ACTION_OPTIF_CHANGED
CPSUICB_ACTION_NONE
Estos valores devueltos se muestran en orden de disminución de prioridad. Si existen varios complementos de interfaz de usuario, el archivo DLL de la interfaz de impresora llama a la función de devolución de llamada de cada uno y guarda el valor devuelto de prioridad más alta y lo devuelve a CPSUI.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | printoem.h (include Printoem.h, Compstui.h) |