Compartir a través de


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)