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.
161 lines
4.4 KiB
161 lines
4.4 KiB
#ifndef __PRNTUIFN_HPP__
|
|
#define __PRNTUIFN_HPP__
|
|
|
|
/*++
|
|
|
|
Copyright (C) 2000 Microsoft Corporation
|
|
All rights reserved.
|
|
|
|
Module Name:
|
|
prntuifn.hpp
|
|
|
|
Abstract:
|
|
This file contains the declararion of the class
|
|
dealing printui functionality and it currently contains
|
|
the following interfaces
|
|
o QueueCreate
|
|
o PrinterPropPages
|
|
o DocumentDefaults
|
|
|
|
Author:
|
|
Khaled Sedky (khaleds) 31-Jan-2000
|
|
|
|
|
|
Revision History:
|
|
--*/
|
|
#ifndef __LDERROR_HPP__
|
|
#include "lderror.hpp"
|
|
#endif
|
|
|
|
#ifndef __BASECLS_HPP__
|
|
#include "basecls.hpp"
|
|
#endif
|
|
|
|
#ifndef __LDFUNCS_HPP__
|
|
#include "ldfuncs.hpp"
|
|
#endif
|
|
|
|
//
|
|
// Forward declarations
|
|
//
|
|
class TLoad64BitDllsMgr;
|
|
|
|
class TPrintUIMgr : public TClassID,
|
|
public TLd64BitDllsErrorHndlr,
|
|
public TRefCntMgr
|
|
{
|
|
public:
|
|
|
|
TPrintUIMgr(
|
|
IN TLoad64BitDllsMgr *pIpLdrObj
|
|
);
|
|
|
|
~TPrintUIMgr(
|
|
VOID
|
|
);
|
|
|
|
DWORD
|
|
QueueCreate(
|
|
IN HWND hWnd,
|
|
IN LPCWSTR pszPrinterName,
|
|
IN INT CmdShow,
|
|
IN LPARAM lParam
|
|
);
|
|
|
|
DWORD
|
|
PrinterPropPages(
|
|
IN HWND hWnd,
|
|
IN LPCWSTR pszPrinterName,
|
|
IN INT CmdShow,
|
|
IN LPARAM lParam
|
|
);
|
|
|
|
DWORD
|
|
DocumentDefaults(
|
|
IN HWND hWnd,
|
|
IN LPCWSTR pszPrinterName,
|
|
IN INT CmdShow,
|
|
IN LPARAM lParam
|
|
);
|
|
|
|
DWORD
|
|
PrinterSetup(
|
|
IN HWND hWnd,
|
|
IN UINT uAction,
|
|
IN UINT cchPrinterName,
|
|
IN OUT LPWSTR pszPrinterName,
|
|
OUT UINT* pcchPrinterName,
|
|
IN LPCWSTR pszServerName
|
|
);
|
|
|
|
DWORD
|
|
ServerPropPages(
|
|
IN HWND hWnd,
|
|
IN LPCWSTR pszPrinterName,
|
|
IN INT CmdShow,
|
|
IN LPARAM lParam
|
|
);
|
|
|
|
static DWORD
|
|
AsyncPrintUIMethod(
|
|
IN PVOID InThrdData
|
|
);
|
|
|
|
enum EPrintUIOp
|
|
{
|
|
KQueueCreateOp = 0,
|
|
KPrinterPropPagesOp,
|
|
KDocumentDefaultsOp,
|
|
KServerPropPagesOp
|
|
};
|
|
|
|
struct SPRINTUITHREADDATA
|
|
{
|
|
HWND hWnd;
|
|
LPCWSTR pszName;
|
|
LPARAM lParam;
|
|
HANDLE hLib;
|
|
TLoad64BitDllsMgr *pLdrObj;
|
|
PFNPRINTUIMETHOD pfn;
|
|
TPrintUIMgr::EPrintUIOp Op;
|
|
int CmdShow;
|
|
};
|
|
typedef struct SPRINTUITHREADDATA SPrintUIThreadData;
|
|
|
|
struct SPRINTERSETUPTHRDDATA
|
|
{
|
|
HWND hWnd;
|
|
LPWSTR pszPrinterName;
|
|
LPCWSTR pszServerName;
|
|
HANDLE hLib;
|
|
TLoad64BitDllsMgr *pLdrObj;
|
|
UINT* pcchPrinterName;
|
|
PFNPRINTUIPRINTERSETUP pfn;
|
|
UINT uAction;
|
|
UINT cchPrinterName;
|
|
};
|
|
typedef struct SPRINTERSETUPTHRDDATA SPrinterSetupThrdData;
|
|
|
|
protected:
|
|
DWORD
|
|
PrintUIMethod(
|
|
IN LPCSTR Method,
|
|
IN HWND hWnd,
|
|
IN LPCWSTR pszName,
|
|
IN INT CmdShow,
|
|
IN LPARAM lParam,
|
|
IN LPTHREAD_START_ROUTINE pThrdFn,
|
|
IN TPrintUIMgr::EPrintUIOp Op
|
|
);
|
|
|
|
private:
|
|
|
|
HWND
|
|
GetForeGroundWindow(
|
|
VOID
|
|
);
|
|
|
|
TLoad64BitDllsMgr *m_pLdrObj;
|
|
};
|
|
|
|
#endif //__PRNTUIFN_HPP__
|