3f66f6a5b3
This keyword is not expanded by Git which means it's not replaced with the correct revision value in the releases made using git-based scripts and it's confusing to have lines with unexpanded "$Id$" in the released files. As expanding them with Git is not that simple (it could be done with git archive and export-subst attribute) and there are not many benefits in having them in the first place, just remove all these lines. If nothing else, this will make an eventual transition to Git simpler. Closes #14487. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
257 lines
7.8 KiB
C++
257 lines
7.8 KiB
C++
/////////////////////////////////////////////////////////////////////////////
|
|
// Name: wx/generic/prntdlgg.h
|
|
// Purpose: wxGenericPrintDialog, wxGenericPrintSetupDialog,
|
|
// wxGenericPageSetupDialog
|
|
// Author: Julian Smart
|
|
// Modified by:
|
|
// Created: 01/02/97
|
|
// Copyright: (c) Julian Smart
|
|
// Licence: wxWindows licence
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef __PRINTDLGH_G_
|
|
#define __PRINTDLGH_G_
|
|
|
|
#include "wx/defs.h"
|
|
|
|
#if wxUSE_PRINTING_ARCHITECTURE
|
|
|
|
#include "wx/dialog.h"
|
|
#include "wx/cmndata.h"
|
|
#include "wx/prntbase.h"
|
|
#include "wx/printdlg.h"
|
|
#include "wx/listctrl.h"
|
|
|
|
#include "wx/dc.h"
|
|
#if wxUSE_POSTSCRIPT
|
|
#include "wx/dcps.h"
|
|
#endif
|
|
|
|
class WXDLLIMPEXP_FWD_CORE wxTextCtrl;
|
|
class WXDLLIMPEXP_FWD_CORE wxButton;
|
|
class WXDLLIMPEXP_FWD_CORE wxCheckBox;
|
|
class WXDLLIMPEXP_FWD_CORE wxComboBox;
|
|
class WXDLLIMPEXP_FWD_CORE wxStaticText;
|
|
class WXDLLIMPEXP_FWD_CORE wxRadioBox;
|
|
class WXDLLIMPEXP_FWD_CORE wxPageSetupDialogData;
|
|
|
|
// ----------------------------------------------------------------------------
|
|
// constants
|
|
// ----------------------------------------------------------------------------
|
|
|
|
// This is not clear why all these enums start with 10 or 30 but do not change it
|
|
// without good reason to avoid some subtle backwards compatibility breakage
|
|
|
|
enum
|
|
{
|
|
wxPRINTID_STATIC = 10,
|
|
wxPRINTID_RANGE,
|
|
wxPRINTID_FROM,
|
|
wxPRINTID_TO,
|
|
wxPRINTID_COPIES,
|
|
wxPRINTID_PRINTTOFILE,
|
|
wxPRINTID_SETUP
|
|
};
|
|
|
|
enum
|
|
{
|
|
wxPRINTID_LEFTMARGIN = 30,
|
|
wxPRINTID_RIGHTMARGIN,
|
|
wxPRINTID_TOPMARGIN,
|
|
wxPRINTID_BOTTOMMARGIN
|
|
};
|
|
|
|
enum
|
|
{
|
|
wxPRINTID_PRINTCOLOUR = 10,
|
|
wxPRINTID_ORIENTATION,
|
|
wxPRINTID_COMMAND,
|
|
wxPRINTID_OPTIONS,
|
|
wxPRINTID_PAPERSIZE,
|
|
wxPRINTID_PRINTER
|
|
};
|
|
|
|
#if wxUSE_POSTSCRIPT
|
|
|
|
//----------------------------------------------------------------------------
|
|
// wxPostScriptNativeData
|
|
//----------------------------------------------------------------------------
|
|
|
|
class WXDLLIMPEXP_CORE wxPostScriptPrintNativeData: public wxPrintNativeDataBase
|
|
{
|
|
public:
|
|
wxPostScriptPrintNativeData();
|
|
virtual ~wxPostScriptPrintNativeData();
|
|
|
|
virtual bool TransferTo( wxPrintData &data );
|
|
virtual bool TransferFrom( const wxPrintData &data );
|
|
|
|
virtual bool Ok() const { return IsOk(); }
|
|
virtual bool IsOk() const { return true; }
|
|
|
|
const wxString& GetPrinterCommand() const { return m_printerCommand; }
|
|
const wxString& GetPrinterOptions() const { return m_printerOptions; }
|
|
const wxString& GetPreviewCommand() const { return m_previewCommand; }
|
|
const wxString& GetFontMetricPath() const { return m_afmPath; }
|
|
double GetPrinterScaleX() const { return m_printerScaleX; }
|
|
double GetPrinterScaleY() const { return m_printerScaleY; }
|
|
long GetPrinterTranslateX() const { return m_printerTranslateX; }
|
|
long GetPrinterTranslateY() const { return m_printerTranslateY; }
|
|
|
|
void SetPrinterCommand(const wxString& command) { m_printerCommand = command; }
|
|
void SetPrinterOptions(const wxString& options) { m_printerOptions = options; }
|
|
void SetPreviewCommand(const wxString& command) { m_previewCommand = command; }
|
|
void SetFontMetricPath(const wxString& path) { m_afmPath = path; }
|
|
void SetPrinterScaleX(double x) { m_printerScaleX = x; }
|
|
void SetPrinterScaleY(double y) { m_printerScaleY = y; }
|
|
void SetPrinterScaling(double x, double y) { m_printerScaleX = x; m_printerScaleY = y; }
|
|
void SetPrinterTranslateX(long x) { m_printerTranslateX = x; }
|
|
void SetPrinterTranslateY(long y) { m_printerTranslateY = y; }
|
|
void SetPrinterTranslation(long x, long y) { m_printerTranslateX = x; m_printerTranslateY = y; }
|
|
|
|
#if wxUSE_STREAMS
|
|
wxOutputStream *GetOutputStream() { return m_outputStream; }
|
|
void SetOutputStream( wxOutputStream *output ) { m_outputStream = output; }
|
|
#endif
|
|
|
|
private:
|
|
wxString m_printerCommand;
|
|
wxString m_previewCommand;
|
|
wxString m_printerOptions;
|
|
wxString m_afmPath;
|
|
double m_printerScaleX;
|
|
double m_printerScaleY;
|
|
long m_printerTranslateX;
|
|
long m_printerTranslateY;
|
|
#if wxUSE_STREAMS
|
|
wxOutputStream *m_outputStream;
|
|
#endif
|
|
|
|
private:
|
|
DECLARE_DYNAMIC_CLASS(wxPostScriptPrintNativeData)
|
|
};
|
|
|
|
// ----------------------------------------------------------------------------
|
|
// Simulated Print and Print Setup dialogs for non-Windows platforms (and
|
|
// Windows using PostScript print/preview)
|
|
// ----------------------------------------------------------------------------
|
|
|
|
class WXDLLIMPEXP_CORE wxGenericPrintDialog : public wxPrintDialogBase
|
|
{
|
|
public:
|
|
wxGenericPrintDialog(wxWindow *parent,
|
|
wxPrintDialogData* data = NULL);
|
|
wxGenericPrintDialog(wxWindow *parent, wxPrintData* data);
|
|
|
|
virtual ~wxGenericPrintDialog();
|
|
|
|
void OnSetup(wxCommandEvent& event);
|
|
void OnRange(wxCommandEvent& event);
|
|
void OnOK(wxCommandEvent& event);
|
|
|
|
virtual bool TransferDataFromWindow();
|
|
virtual bool TransferDataToWindow();
|
|
|
|
virtual int ShowModal();
|
|
|
|
wxPrintData& GetPrintData()
|
|
{ return m_printDialogData.GetPrintData(); }
|
|
|
|
wxPrintDialogData& GetPrintDialogData() { return m_printDialogData; }
|
|
wxDC *GetPrintDC();
|
|
|
|
public:
|
|
// wxStaticText* m_printerMessage;
|
|
wxButton* m_setupButton;
|
|
// wxButton* m_helpButton;
|
|
wxRadioBox* m_rangeRadioBox;
|
|
wxTextCtrl* m_fromText;
|
|
wxTextCtrl* m_toText;
|
|
wxTextCtrl* m_noCopiesText;
|
|
wxCheckBox* m_printToFileCheckBox;
|
|
// wxCheckBox* m_collateCopiesCheckBox;
|
|
|
|
wxPrintDialogData m_printDialogData;
|
|
|
|
protected:
|
|
void Init(wxWindow *parent);
|
|
|
|
private:
|
|
DECLARE_EVENT_TABLE()
|
|
DECLARE_DYNAMIC_CLASS(wxGenericPrintDialog)
|
|
};
|
|
|
|
class WXDLLIMPEXP_CORE wxGenericPrintSetupDialog : public wxDialog
|
|
{
|
|
public:
|
|
// There are no configuration options for the dialog, so we
|
|
// just pass the wxPrintData object (no wxPrintSetupDialogData class needed)
|
|
wxGenericPrintSetupDialog(wxWindow *parent, wxPrintData* data);
|
|
virtual ~wxGenericPrintSetupDialog();
|
|
|
|
void Init(wxPrintData* data);
|
|
|
|
void OnPrinter(wxListEvent& event);
|
|
|
|
virtual bool TransferDataFromWindow();
|
|
virtual bool TransferDataToWindow();
|
|
|
|
virtual wxComboBox *CreatePaperTypeChoice();
|
|
|
|
public:
|
|
wxListCtrl* m_printerListCtrl;
|
|
wxRadioBox* m_orientationRadioBox;
|
|
wxTextCtrl* m_printerCommandText;
|
|
wxTextCtrl* m_printerOptionsText;
|
|
wxCheckBox* m_colourCheckBox;
|
|
wxComboBox* m_paperTypeChoice;
|
|
|
|
wxPrintData m_printData;
|
|
wxPrintData& GetPrintData() { return m_printData; }
|
|
|
|
// After pressing OK, write data here.
|
|
wxPrintData* m_targetData;
|
|
|
|
private:
|
|
DECLARE_EVENT_TABLE()
|
|
DECLARE_CLASS(wxGenericPrintSetupDialog)
|
|
};
|
|
#endif
|
|
// wxUSE_POSTSCRIPT
|
|
|
|
class WXDLLIMPEXP_CORE wxGenericPageSetupDialog : public wxPageSetupDialogBase
|
|
{
|
|
public:
|
|
wxGenericPageSetupDialog(wxWindow *parent = NULL,
|
|
wxPageSetupDialogData* data = NULL);
|
|
virtual ~wxGenericPageSetupDialog();
|
|
|
|
virtual bool TransferDataFromWindow();
|
|
virtual bool TransferDataToWindow();
|
|
|
|
virtual wxPageSetupDialogData& GetPageSetupDialogData();
|
|
|
|
void OnPrinter(wxCommandEvent& event);
|
|
wxComboBox *CreatePaperTypeChoice(int* x, int* y);
|
|
|
|
public:
|
|
wxButton* m_printerButton;
|
|
wxRadioBox* m_orientationRadioBox;
|
|
wxTextCtrl* m_marginLeftText;
|
|
wxTextCtrl* m_marginTopText;
|
|
wxTextCtrl* m_marginRightText;
|
|
wxTextCtrl* m_marginBottomText;
|
|
wxComboBox* m_paperTypeChoice;
|
|
|
|
wxPageSetupDialogData m_pageData;
|
|
|
|
private:
|
|
DECLARE_EVENT_TABLE()
|
|
DECLARE_DYNAMIC_CLASS_NO_COPY(wxGenericPageSetupDialog)
|
|
};
|
|
|
|
#endif
|
|
|
|
#endif
|
|
// __PRINTDLGH_G_
|