Files
firestorm/Gameleap/code/mw4/Libraries/3dsmax4/Include/PrintManager.h
T
Cyd 2b8ca921cb Initial full mirror of c:\VWE (source + assets + toolchain + outputs) via Git LFS
Complete disaster-recovery snapshot: engine/game source, game data assets,
VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive.
Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false,
no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
2026-06-24 21:28:16 -05:00

52 lines
1.9 KiB
C++

// ****************************************************************************
//
// DESCRIPTION: Declaration of the Print Manager
// PATTERN : Singleton
// CREATED BY : Michael Pittman
// HISTORY : 12/21/1998
//
// ****************************************************************************
#pragma once
class PrintManager
{
private:
static PrintManager* m_instance; // Singleton instance
HDC m_hdc; // Device context of printer
int m_ncopies; // Number of copies to print
bool m_landscape; // Print in landscape?
PRINTDLG m_pinfo; // Printer info from PrintDlg
PAGESETUPDLG m_pgsetup; // Page Setup info from PageSetupDlg
DEVMODE m_devmode; // Device mode structure
TCHAR m_driver[128]; // Printer driver name
TCHAR m_device[33]; // Printer device name
bool m_use_pgsetup; // User has chosen page setup
PrintManager();
bool SetupPrintFromDialog(HWND parent);
bool SetupPrintExisting(void);
bool SetupPrintDefault(void);
public:
typedef enum { k_UseDefault, k_PromptUser, k_UseExisting } PrinterChoice;
~PrintManager();
// Access to the singleton
CoreExport static PrintManager* Instance(void);
// Query methods
CoreExport HDC GetPrinterDC(PrinterChoice getfrom = k_PromptUser);
CoreExport HDC GetDefaultPrinterDC(void) { return GetPrinterDC(k_UseDefault); }
CoreExport HDC GetExistingPrinterDC(void) { return GetPrinterDC(k_UseExisting); }
CoreExport void ReleasePrinterDC(HDC hdc);
CoreExport int NumberCopies(void) { return m_ncopies; }
CoreExport bool DoLandscape(void) { return m_landscape; }
// The standard print methods interface
CoreExport bool OnPageSetup(HWND parent);
};