Moved WinPrinter from private.h to printdlg.cpp.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_8_BRANCH@62189 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2009-09-28 16:02:08 +00:00
parent 05c0fe0df0
commit dff63abaf1
2 changed files with 46 additions and 46 deletions

View File

@@ -650,52 +650,6 @@ private:
DECLARE_NO_COPY_CLASS(GlobalPtrLock)
};
// smart pointer like class using OpenPrinter and ClosePrinter
class WinPrinter
{
public:
// default ctor
WinPrinter()
{
m_hPrinter = (HANDLE)NULL;
}
WinPrinter( const wxString& printerName )
{
Open( printerName );
}
~WinPrinter()
{
Close();
}
BOOL Open( const wxString& printerName, LPPRINTER_DEFAULTS pDefault=(LPPRINTER_DEFAULTS)NULL )
{
Close();
return OpenPrinter( (LPTSTR)printerName.wx_str(), &m_hPrinter, pDefault );
}
BOOL Close()
{
BOOL result = TRUE;
if( m_hPrinter )
{
result = ClosePrinter( m_hPrinter );
m_hPrinter = (HANDLE)NULL;
}
return result;
}
operator HANDLE() { return m_hPrinter; }
operator bool() { return m_hPrinter != (HANDLE)NULL; }
private:
HANDLE m_hPrinter;
DECLARE_NO_COPY_CLASS(WinPrinter);
};
// register the class when it is first needed and unregister it in dtor
class ClassRegistrar
{

View File

@@ -46,6 +46,52 @@
#include <print.h>
#endif
// smart pointer like class using OpenPrinter and ClosePrinter
class WinPrinter
{
public:
// default ctor
WinPrinter()
{
m_hPrinter = (HANDLE)NULL;
}
WinPrinter( const wxString& printerName )
{
Open( printerName );
}
~WinPrinter()
{
Close();
}
BOOL Open( const wxString& printerName, LPPRINTER_DEFAULTS pDefault=(LPPRINTER_DEFAULTS)NULL )
{
Close();
return OpenPrinter( (LPTSTR)printerName.wx_str(), &m_hPrinter, pDefault );
}
BOOL Close()
{
BOOL result = TRUE;
if( m_hPrinter )
{
result = ClosePrinter( m_hPrinter );
m_hPrinter = (HANDLE)NULL;
}
return result;
}
operator HANDLE() { return m_hPrinter; }
operator bool() { return m_hPrinter != (HANDLE)NULL; }
private:
HANDLE m_hPrinter;
DECLARE_NO_COPY_CLASS(WinPrinter);
};
//----------------------------------------------------------------------------
// wxWindowsPrintNativeData
//----------------------------------------------------------------------------