You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
237 lines
5.4 KiB
237 lines
5.4 KiB
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
|
|
// ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
|
|
// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
|
|
// PARTICULAR PURPOSE.
|
|
//
|
|
// Copyright 1998 - 2003 Microsoft Corporation. All Rights Reserved.
|
|
//
|
|
// FILE: Intrface.cpp
|
|
//
|
|
//
|
|
// PURPOSE: Header of interface for PScript4, PScript5, Unidrv4,
|
|
// Unidrv5 UI plug-ins.
|
|
//
|
|
//
|
|
// Functions:
|
|
//
|
|
//
|
|
//
|
|
//
|
|
// PLATFORMS: Windows 2000, Windows XP, Windows Server 2003
|
|
//
|
|
//
|
|
#ifndef _INTRFACE_H
|
|
#define _INTRFACE_H
|
|
|
|
|
|
#include "precomp.h"
|
|
#include "helper.h"
|
|
#include "features.h"
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// IOemUI2
|
|
//
|
|
class IOemUI2: public IPrintOemUI2
|
|
{
|
|
public:
|
|
// *** IUnknown methods ***
|
|
STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID FAR* ppvObj);
|
|
STDMETHOD_(ULONG,AddRef) (THIS);
|
|
STDMETHOD_(ULONG,Release) (THIS);
|
|
|
|
//
|
|
// Get OEM dll related information
|
|
//
|
|
|
|
STDMETHOD(GetInfo) (THIS_ DWORD dwMode, PVOID pBuffer, DWORD cbSize,
|
|
PDWORD pcbNeeded);
|
|
|
|
//
|
|
// OEMDevMode
|
|
//
|
|
|
|
STDMETHOD(DevMode) (THIS_ DWORD dwMode, POEMDMPARAM pOemDMParam) ;
|
|
|
|
//
|
|
// Method for publishing Driver interface.
|
|
//
|
|
STDMETHOD(PublishDriverInterface)(THIS_ IUnknown *pIUnknown);
|
|
|
|
//
|
|
// 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
|
|
);
|
|
|
|
//
|
|
// IPrintOemUI2 methods
|
|
//
|
|
|
|
//
|
|
// QueryJobAttributes
|
|
//
|
|
|
|
STDMETHOD(QueryJobAttributes) (THIS_
|
|
HANDLE hPrinter,
|
|
PDEVMODE pDevmode,
|
|
DWORD dwLevel,
|
|
LPBYTE lpAttributeInfo
|
|
);
|
|
|
|
//
|
|
// Hide Standard UI
|
|
//
|
|
|
|
STDMETHOD(HideStandardUI) (THIS_
|
|
DWORD dwMode
|
|
);
|
|
|
|
//
|
|
// DocumentEvent
|
|
//
|
|
|
|
STDMETHOD(DocumentEvent) (THIS_
|
|
HANDLE hPrinter,
|
|
HDC hdc,
|
|
INT iEsc,
|
|
ULONG cbIn,
|
|
PVOID pbIn,
|
|
ULONG cbOut,
|
|
PVOID pbOut,
|
|
PINT piResult
|
|
);
|
|
|
|
|
|
IOemUI2();
|
|
virtual ~IOemUI2();
|
|
|
|
protected:
|
|
LONG m_cRef; // Reference count
|
|
BOOL m_bHidingStandardUI; // Flag indicating if we are hiding the Standard UI.
|
|
// NOTE: Not all Driver UI versions support hinding
|
|
// the Standard Driver UI.
|
|
CUIHelper m_Helper; // Container for Driver UI Helper interface.
|
|
CFeatures m_Features; // Core Driver features and feature options.
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif
|