mirror of https://github.com/lianthony/NT4.0
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.
400 lines
10 KiB
400 lines
10 KiB
/*++
|
|
|
|
Copyright (c) 1991 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
printman.hxx
|
|
|
|
Abstract:
|
|
|
|
This module contains the declarations for the PRINT_MANAGER class.
|
|
The PRINT_MANAGER class is responsible for displayning the Printer
|
|
Setup Dialog, for printing a registry.
|
|
|
|
|
|
Author:
|
|
|
|
Jaime Sasson (jaimes) 18-Sep-1991
|
|
|
|
|
|
Environment:
|
|
|
|
|
|
|
|
--*/
|
|
|
|
|
|
#if !defined( _PRINT_MANAGER_ )
|
|
|
|
#define _PRINT_MANAGER_
|
|
|
|
#include "regedir.hxx"
|
|
#include "ulib.hxx"
|
|
#include "uapp.hxx"
|
|
#include "timeinfo.hxx"
|
|
#include "wstring.hxx"
|
|
#include "regresls.hxx"
|
|
#include "regfdesc.hxx"
|
|
#include "regdesc.hxx"
|
|
#include "regioreq.hxx"
|
|
#include "regiodls.hxx"
|
|
#include "regiodsc.hxx"
|
|
|
|
|
|
DECLARE_CLASS( PRINT_MANAGER );
|
|
|
|
|
|
class PRINT_MANAGER : public OBJECT {
|
|
|
|
|
|
public:
|
|
|
|
|
|
DECLARE_CONSTRUCTOR( PRINT_MANAGER );
|
|
|
|
DECLARE_CAST_MEMBER_FUNCTION( PRINT_MANAGER );
|
|
|
|
VIRTUAL
|
|
~PRINT_MANAGER(
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
Initialize(
|
|
IN HWND Owner
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintRegistry(
|
|
IN HANDLE Instance,
|
|
IN HWND hWnd,
|
|
IN HWND MDIHandle,
|
|
IN PREGEDIT_INTERNAL_REGISTRY InternalRegistry,
|
|
IN PCREGEDIT_NODE StartNode DEFAULT NULL
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintToTextFile(
|
|
IN HANDLE Instance,
|
|
IN HWND hWnd,
|
|
IN HWND MDIHandle,
|
|
IN PREGEDIT_INTERNAL_REGISTRY InternalRegistry,
|
|
IN PCREGEDIT_NODE StartNode DEFAULT NULL
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrinterSetupDialog(
|
|
);
|
|
|
|
private:
|
|
|
|
DECLARE_DLGPROC( PRINT_MANAGER, PrintDlgProc );
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
InitializeTextMetrics(
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
BuildHeaderFooter(
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
EndPrint(
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintDataRegBinary(
|
|
IN PCBYTE Buffer,
|
|
IN ULONG Size,
|
|
IN BOOLEAN PrintDataLabel DEFAULT TRUE
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintDataRegMultiSz(
|
|
IN PCBYTE Buffer,
|
|
IN ULONG Size
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintDataRegResourceList(
|
|
IN PCBYTE Buffer,
|
|
IN ULONG Size
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintFullResourceDescriptor(
|
|
IN PCFULL_DESCRIPTOR FullDescriptor,
|
|
IN ULONG DescriptorNumber,
|
|
IN BOOLEAN PrintDescriptorNumber DEFAULT TRUE
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintPartialDescriptor(
|
|
IN PCPARTIAL_DESCRIPTOR FullDescriptor,
|
|
IN ULONG DescriptorNumber
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintInterruptDescriptor(
|
|
IN PCINTERRUPT_DESCRIPTOR Descriptor
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintPortDescriptor(
|
|
IN PCPORT_DESCRIPTOR Descriptor
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintMemoryDescriptor(
|
|
IN PCMEMORY_DESCRIPTOR Descriptor
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintDmaDescriptor(
|
|
IN PCDMA_DESCRIPTOR Descriptor
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintDeviceSpecificDescriptor(
|
|
IN PCDEVICE_SPECIFIC_DESCRIPTOR Descriptor
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintDataRegRequirementsList(
|
|
IN PCBYTE Buffer,
|
|
IN ULONG Size
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintIoResourceList(
|
|
IN PCIO_DESCRIPTOR_LIST DescriptorList,
|
|
IN ULONG ListNumber
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintIoDescriptor(
|
|
IN PCIO_DESCRIPTOR IoDescriptor,
|
|
IN ULONG DescriptorNumber
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintIoInterruptDescriptor(
|
|
IN PCIO_INTERRUPT_DESCRIPTOR Descriptor
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintIoPortDescriptor(
|
|
IN PCIO_PORT_DESCRIPTOR Descriptor
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintIoMemoryDescriptor(
|
|
IN PCIO_MEMORY_DESCRIPTOR Descriptor
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintIoDmaDescriptor(
|
|
IN PCIO_DMA_DESCRIPTOR Descriptor
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintDataRegSz(
|
|
IN PCBYTE Data,
|
|
IN ULONG Size
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintDataRegUlong(
|
|
IN PCBYTE Data,
|
|
IN ULONG Size
|
|
);
|
|
|
|
NONVIRTUAL
|
|
VOID
|
|
PrintErrorDialog(
|
|
IN LONG ErrorCode
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintNode(
|
|
IN PCREGEDIT_NODE Node
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintString(
|
|
IN PCWSTRING String,
|
|
IN BOOLEAN Indent DEFAULT TRUE
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintStringTruncate(
|
|
IN PCWSTRING String
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintSubTree(
|
|
IN PCREGEDIT_NODE Node
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintValue(
|
|
IN PCREGEDIT_FORMATTED_VALUE_ENTRY Value,
|
|
IN ULONG ValueNumber
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
PrintValueType(
|
|
IN PCWSTRING ValueType
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
StartPrint(
|
|
IN PCWSTRING String
|
|
);
|
|
|
|
STATIC
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
EXPORT
|
|
AbortProc(
|
|
IN HDC PrinterDC,
|
|
IN SHORT Code
|
|
);
|
|
|
|
|
|
static BOOLEAN _UserAbort;
|
|
static HWND _DlgPrint;
|
|
|
|
HWND _hWnd;
|
|
|
|
PRINTDLG _pd;
|
|
PCWSTRING _PredefinedKey;
|
|
|
|
BOOLEAN _InitTextMetrics;
|
|
TEXTMETRIC _TextMetrics;
|
|
ULONG _TopMargin;
|
|
ULONG _CharacterHeight;
|
|
ULONG _BottomMargin;
|
|
ULONG _LinesPerPage;
|
|
|
|
ULONG _LeftMargin;
|
|
ULONG _CharacterWidth;
|
|
ULONG _RightMargin;
|
|
ULONG _CharactersPerLine;
|
|
|
|
ULONG _CurrentLine;
|
|
ULONG _CurrentPage;
|
|
PREGEDIT_INTERNAL_REGISTRY _IR;
|
|
|
|
PWSTRING _StringNodeName;
|
|
PWSTRING _StringClassName;
|
|
PWSTRING _StringTitleIndex;
|
|
PWSTRING _StringTitle;
|
|
PWSTRING _StringLastWriteTime;
|
|
PWSTRING _StringValue;
|
|
PWSTRING _StringValueName;
|
|
PWSTRING _StringValueTitleIndex;
|
|
PWSTRING _StringValueTitle;
|
|
PWSTRING _StringValueType;
|
|
PWSTRING _StringDataLength;
|
|
PWSTRING _StringData;
|
|
PWSTRING _StringTypeRegSZ;
|
|
PWSTRING _StringTypeRegExpandSZ;
|
|
PWSTRING _StringTypeRegMultiSZ;
|
|
PWSTRING _StringTypeRegBinary;
|
|
PWSTRING _StringTypeRegDWORD;
|
|
PWSTRING _StringTypeRegFullResourceDescriptor;
|
|
PWSTRING _StringTypeRegResourceList;
|
|
PWSTRING _StringTypeRegResourceRequirementsList;
|
|
PWSTRING _StringTypeRegColorRGB;
|
|
PWSTRING _StringTypeRegFileName;
|
|
PWSTRING _StringTypeRegFileTime;
|
|
PWSTRING _StringTypeRegUnknown;
|
|
PWSTRING _StringValueNoName;
|
|
PWSTRING _StringNodeNoClass;
|
|
PWSTRING _StringAllFiles;
|
|
PWSTRING _StringTextFiles;
|
|
PWSTRING _StringStarDotStar;
|
|
PWSTRING _StringStarDotTxt;
|
|
PWSTRING _StringFullDescriptor;
|
|
PWSTRING _StringPartialDescriptor;
|
|
PWSTRING _StringInterfaceType;
|
|
PWSTRING _StringBusNumber;
|
|
PWSTRING _StringVersion;
|
|
PWSTRING _StringRevision;
|
|
|
|
PWSTRING _StringResource;
|
|
PWSTRING _StringDisposition;
|
|
PWSTRING _StringType;
|
|
PWSTRING _StringStart;
|
|
PWSTRING _StringLength;
|
|
PWSTRING _StringLevel;
|
|
PWSTRING _StringVector;
|
|
PWSTRING _StringAffinity;
|
|
PWSTRING _StringChannel;
|
|
PWSTRING _StringPort;
|
|
PWSTRING _StringReserved1;
|
|
PWSTRING _StringReserved2;
|
|
PWSTRING _StringDevSpecificData;
|
|
|
|
PWSTRING _StringIoInterfaceType;
|
|
PWSTRING _StringIoBusNumber;
|
|
PWSTRING _StringIoSlotNumber;
|
|
PWSTRING _StringIoListNumber;
|
|
PWSTRING _StringIoOption;
|
|
PWSTRING _StringIoDescriptorNumber;
|
|
PWSTRING _StringIoAlignment;
|
|
PWSTRING _StringIoMinimumAddress;
|
|
PWSTRING _StringIoMaximumAddress;
|
|
PWSTRING _StringIoMinimumVector;
|
|
PWSTRING _StringIoMaximumVector;
|
|
PWSTRING _StringIoMinimumChannel;
|
|
PWSTRING _StringIoMaximumChannel;
|
|
|
|
DSTRING _Separator;
|
|
DSTRING _StringFooter;
|
|
DSTRING _EmptyLine;
|
|
DSTRING _IndentString;
|
|
DSTRING _DateTimeSeparator;
|
|
|
|
BOOLEAN _PrintToFile;
|
|
int _FileHandle;
|
|
|
|
|
|
};
|
|
|
|
|
|
#endif // _PRINT_MANAGER_
|