|
|
/*++
Copyright (c) 1996-2003 Microsoft Corporation
Module Name:
comoem.h
Abstract:
Implementation of OEMGetInfo and OEMDevMode. Shared by all Unidrv OEM test dll's.
Environment:
Windows 2000, Windows XP, Windows Server 2003
Revision History:
Created it.
--*/
////////////////////////////////////////////////////////////////////////////////
//
// IOemUI
//
class IOemUI: public IPrintOemUI { public: // *** IUnknown methods ***
STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID FAR* ppvObj); STDMETHOD_(ULONG,AddRef) (THIS); STDMETHOD_(ULONG,Release) (THIS);
//
// Method for publishing Driver interface.
//
STDMETHOD(PublishDriverInterface)(THIS_ IUnknown *pIUnknown);
//
// Get OEM dll related information
//
STDMETHOD(GetInfo) (THIS_ DWORD dwMode, PVOID pBuffer, DWORD cbSize, PDWORD pcbNeeded);
//
// OEMDevMode
//
STDMETHOD(DevMode) (THIS_ DWORD dwMode, POEMDMPARAM pOemDMParam) ;
//
// OEMCommonUIProp
//
STDMETHOD(CommonUIProp) (THIS_ DWORD dwMode, POEMCUIPPARAM pOemCUIPParam );
//
// OEMDocumentPropertySheets
//
STDMETHOD(DocumentPropertySheets) (THIS_ PPROPSHEETUI_INFO pPSUIInfo, LPARAM lParam );
//
// OEMDevicePropertySheets
//
STDMETHOD(DevicePropertySheets) (THIS_ PPROPSHEETUI_INFO pPSUIInfo, LPARAM lParam );
//
// OEMDevQueryPrintEx
//
STDMETHOD(DevQueryPrintEx) (THIS_ POEMUIOBJ poemuiobj, PDEVQUERYPRINT_INFO pDQPInfo, PDEVMODE pPublicDM, PVOID pOEMDM );
//
// OEMDeviceCapabilities
//
STDMETHOD(DeviceCapabilities) (THIS_ POEMUIOBJ poemuiobj, HANDLE hPrinter, PWSTR pDeviceName, WORD wCapability, PVOID pOutput, PDEVMODE pPublicDM, PVOID pOEMDM, DWORD dwOld, DWORD *dwResult );
//
// OEMUpgradePrinter
//
STDMETHOD(UpgradePrinter) (THIS_ DWORD dwLevel, PBYTE pDriverUpgradeInfo );
//
// OEMPrinterEvent
//
STDMETHOD(PrinterEvent) (THIS_ PWSTR pPrinterName, INT iDriverEvent, DWORD dwFlags, LPARAM lParam );
//
// OEMDriverEvent
//
STDMETHOD(DriverEvent)(THIS_ DWORD dwDriverEvent, DWORD dwLevel, LPBYTE pDriverInfo, LPARAM lParam ); //
// OEMQueryColorProfile
//
STDMETHOD( QueryColorProfile) (THIS_ HANDLE hPrinter, POEMUIOBJ poemuiobj, PDEVMODE pPublicDM, PVOID pOEMDM, ULONG ulReserved, VOID *pvProfileData, ULONG *pcbProfileData, FLONG *pflProfileData);
//
// OEMFontInstallerDlgProc
//
STDMETHOD(FontInstallerDlgProc) (THIS_ HWND hWnd, UINT usMsg, WPARAM wParam, LPARAM lParam ); //
// UpdateExternalFonts
//
STDMETHOD(UpdateExternalFonts) (THIS_ HANDLE hPrinter, HANDLE hHeap, PWSTR pwstrCartridges );
IOemUI() { m_cRef = 1; m_pOEMHelp = NULL; m_OemSheetData.pfnComPropSheet = NULL; m_OemSheetData.pOEMCUIParam=NULL; m_OemSheetData.hComPropSheet=INVALID_HANDLE_VALUE; m_OemSheetData.hmyPlugin=INVALID_HANDLE_VALUE; };
~IOemUI();
protected: LONG m_cRef; IPrintOemDriverUI* m_pOEMHelp;
//
//Used to link common ui in device settings tab and the OEM plugin tab.
//
OEMSHEETDATA m_OemSheetData; };
|