wxPRINTBIN_USER
};
+const int wxPRINTMEDIA_DEFAULT = 0;
class WXDLLEXPORT wxPrintData: public wxObject
{
wxPrintQuality GetQuality() const { return m_printQuality; }
wxPrintBin GetBin() const { return m_bin; }
wxPrintMode GetPrintMode() const { return m_printMode; }
+ int GetMedia() const { return m_media; }
void SetNoCopies(int v) { m_printNoCopies = v; }
void SetCollate(bool flag) { m_printCollate = flag; }
void SetPaperSize(const wxSize& sz) { m_paperSize = sz; }
void SetQuality(wxPrintQuality quality) { m_printQuality = quality; }
void SetBin(wxPrintBin bin) { m_bin = bin; }
+ void SetMedia(int media) { m_media = media; }
void SetPrintMode(wxPrintMode printMode) { m_printMode = printMode; }
wxString GetFilename() const { return m_filename; }
private:
wxPrintBin m_bin;
+ int m_media;
wxPrintMode m_printMode;
int m_printNoCopies;
wxPrintData::wxPrintData()
{
m_bin = wxPRINTBIN_DEFAULT;
+ m_media = wxPRINTMEDIA_DEFAULT;
m_printMode = wxPRINT_MODE_PRINTER;
m_printOrientation = wxPORTRAIT;
m_printNoCopies = 1;
m_paperId = data.m_paperId;
m_paperSize = data.m_paperSize;
m_bin = data.m_bin;
+ m_media = data.m_media;
m_printMode = data.m_printMode;
m_filename = data.m_filename;
} else {
data.SetBin(wxPRINTBIN_DEFAULT);
}
-
+ if (devMode->dmFields & DM_MEDIATYPE)
+ {
+ wxASSERT(devMode->dmMediaType != wxPRINTMEDIA_DEFAULT);
+ data.SetMedia(devMode->dmMediaType);
+ }
//// Printer name
if (devMode->dmDeviceName[0] != 0)
// This syntax fixes a crash when using VS 7.1
devMode->dmFields |= DM_DEFAULTSOURCE;
}
-
+ if (data.GetMedia() != wxPRINTMEDIA_DEFAULT)
+ {
+ devMode->dmMediaType = data.GetMedia();
+ devMode->dmFields |= DM_MEDIATYPE;
+ }
GlobalUnlock(hDevMode);
}