]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/gnome/gprint.h
Added __WXMAC_OSX__ guards around the CFRunLoop calls, CFRunLoop not available on...
[wxWidgets.git] / include / wx / gtk / gnome / gprint.h
index 2dce890414716052207a51f32f94b69e0cce5fbf..3b8859c17b59df98e34c0e52810e8f4b00f1ad0d 100644 (file)
@@ -10,8 +10,8 @@
 #ifndef __gprint_H__
 #define __gprint_H__
 
-#if defined(__GNUG__) && !defined(__APPLE__)
-    #pragma interface "gprint.h"
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
+#pragma interface
 #endif
 
 // Include wxWindows' headers
@@ -46,6 +46,7 @@ public:
     virtual bool Ok() const { return true; }
     
     GnomePrintConfig* GetPrintConfig() { return m_config; }
+    void SetPrintJob( GnomePrintJob *job ) { m_job = job; }
     GnomePrintJob* GetPrintJob() { return m_job; }
     
     
@@ -77,7 +78,10 @@ public:
                                                   wxPrintDialogData *data = NULL );
     virtual wxPrintDialogBase *CreatePrintDialog( wxWindow *parent, 
                                                   wxPrintData *data );
-                                                  
+
+    virtual wxPageSetupDialogBase *CreatePageSetupDialog( wxWindow *parent,
+                                                          wxPageSetupDialogData * data = NULL );
+          
     virtual bool HasPrintSetupDialog();
     virtual wxDialog *CreatePrintSetupDialog( wxWindow *parent, wxPrintData *data );
     virtual bool HasOwnPrintToFile();
@@ -90,14 +94,58 @@ public:
 };
 
 //----------------------------------------------------------------------------
-// wxGnomePrintSetupDialog
+// wxGnomePrintDialog
+//----------------------------------------------------------------------------
+
+class wxGnomePrintDialog: public wxPrintDialogBase
+{
+public:
+    wxGnomePrintDialog( wxWindow *parent,
+                         wxPrintDialogData* data = NULL );
+    wxGnomePrintDialog( wxWindow *parent, wxPrintData* data);
+    ~wxGnomePrintDialog();
+
+    wxPrintData& GetPrintData()
+        { return m_printDialogData.GetPrintData(); }
+    wxPrintDialogData& GetPrintDialogData()
+        { return m_printDialogData; }
+        
+    wxDC *GetPrintDC();
+
+    virtual int ShowModal();
+
+    virtual bool Validate();
+    virtual bool TransferDataToWindow();
+    virtual bool TransferDataFromWindow();
+
+private:    
+    // Implement some base class methods to do nothing to avoid asserts and
+    // GTK warnings, since this is not a real wxDialog.
+    virtual void DoSetSize(int WXUNUSED(x), int WXUNUSED(y),
+                           int WXUNUSED(width), int WXUNUSED(height),
+                           int WXUNUSED(sizeFlags) = wxSIZE_AUTO) {}
+    virtual void DoMoveWindow(int WXUNUSED(x), int WXUNUSED(y),
+                              int WXUNUSED(width), int WXUNUSED(height)) {}
+                              
+    void Init();
+    wxPrintDialogData   m_printDialogData;
+    
+private:
+    DECLARE_DYNAMIC_CLASS(wxGnomePrintDialog)
+};
+
+//----------------------------------------------------------------------------
+// wxGnomePageSetupDialog
 //----------------------------------------------------------------------------
 
-class wxGnomePrintSetupDialog: public wxDialog
+class wxGnomePageSetupDialog: public wxPageSetupDialogBase
 {
 public:
-    wxGnomePrintSetupDialog( wxWindow *parent, wxPrintData *data );
-    ~wxGnomePrintSetupDialog();
+    wxGnomePageSetupDialog( wxWindow *parent,
+                            wxPageSetupDialogData* data = NULL );
+    ~wxGnomePageSetupDialog();
+
+    virtual wxPageSetupDialogData& GetPageSetupDialogData();
 
     virtual int ShowModal();
 
@@ -113,8 +161,11 @@ private:
                            int WXUNUSED(sizeFlags) = wxSIZE_AUTO) {}
     virtual void DoMoveWindow(int WXUNUSED(x), int WXUNUSED(y),
                               int WXUNUSED(width), int WXUNUSED(height)) {}
+                              
+    wxPageSetupDialogData   m_pageDialogData;
+    
 private:
-    DECLARE_DYNAMIC_CLASS(wxGnomePrintSetupDialog)
+    DECLARE_DYNAMIC_CLASS(wxGnomePageSetupDialog)
 };
 
 //----------------------------------------------------------------------------
@@ -137,6 +188,7 @@ public:
     
 private:
     GnomePrintContext *m_gpc;
+    bool               m_native_preview;
 
 private:
     DECLARE_DYNAMIC_CLASS(wxGnomePrinter)