]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/_printfw.i
Fixed comment bug [ 1390056 ] Wrong Documentation for TransferFromWindow
[wxWidgets.git] / wxPython / src / _printfw.i
index 115834daf27eb06a81cc19c62f54b1d0eb631057..3db79113025fd629dec6897afb5affd20a421747 100644 (file)
@@ -100,11 +100,40 @@ public:
 
     %pythoncode { def __nonzero__(self): return self.Ok() }
 
+    //char* GetPrivData() const;
+    //int GetPrivDataLen() const;
+    //void SetPrivData( char *privData, int len );
+
+    %extend {
+        PyObject* GetPrivData() {
+            PyObject* data;
+            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            data = PyString_FromStringAndSize(self->GetPrivData(),
+                                              self->GetPrivDataLen());
+            wxPyEndBlockThreads(blocked);
+            return data;
+        }
+
+        void SetPrivData(PyObject* data) {
+            if (! PyString_Check(data)) {
+                wxPyBLOCK_THREADS(PyErr_SetString(PyExc_TypeError,
+                                                  "Expected string object"));
+                return /* NULL */ ;
+            }
+
+            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            self->SetPrivData(PyString_AS_STRING(data), PyString_GET_SIZE(data));
+            wxPyEndBlockThreads(blocked);
+        }
+    }
+    
 
     // NOTE: These are now inside of #if WXWIN_COMPATIBILITY_2_4, so be
     //       prepared to remove them...
     
     // PostScript-specific data
+// WXWIN_COMPATIBILITY_2_4
+#if 0
     const wxString& GetPrinterCommand();
     const wxString& GetPrinterOptions();
     const wxString& GetPreviewCommand();
@@ -123,6 +152,7 @@ public:
     void SetPrinterTranslateX(long x);
     void SetPrinterTranslateY(long y);
     void SetPrinterTranslation(long x, long y);
+#endif
 
 };
 
@@ -133,6 +163,7 @@ public:
     %nokwargs wxPageSetupDialogData;
     wxPageSetupDialogData();
     wxPageSetupDialogData(const wxPageSetupDialogData& data);  // for making copies
+    wxPageSetupDialogData(const wxPrintData& data); 
     ~wxPageSetupDialogData();
 
     void EnableHelp(bool flag);
@@ -140,6 +171,7 @@ public:
     void EnableOrientation(bool flag);
     void EnablePaper(bool flag);
     void EnablePrinter(bool flag);
+    
     bool GetDefaultMinMargins();
     bool GetEnableMargins();
     bool GetEnableOrientation();
@@ -155,11 +187,6 @@ public:
     wxSize GetPaperSize();
 
     wxPrintData& GetPrintData();
-//     %addmethods {
-//         %new wxPrintData* GetPrintData() {
-//             return new wxPrintData(self->GetPrintData());  // force a copy
-//         }
-//     }
 
     bool Ok();
 
@@ -171,8 +198,16 @@ public:
     void SetMinMarginBottomRight(const wxPoint& pt);
     void SetPaperId(wxPaperSize id);
     void SetPaperSize(const wxSize& size);
+    
     void SetPrintData(const wxPrintData& printData);
 
+    // Use paper size defined in this object to set the wxPrintData
+    // paper id
+    void CalculateIdFromPaperSize();
+
+    // Use paper id in wxPrintData to set this object's paper size
+    void CalculatePaperSizeFromId();
+
     %pythoncode { def __nonzero__(self): return self.Ok() }
 };
 
@@ -201,7 +236,8 @@ class wxPrintDialogData : public wxObject {
 public:
     %nokwargs wxPrintDialogData;
     wxPrintDialogData();
-    wxPrintDialogData(const wxPrintData& printData);  // for making copies
+    wxPrintDialogData(const wxPrintData& printData);
+    wxPrintDialogData(const wxPrintDialogData& printData);  // for making copies
     ~wxPrintDialogData();
 
     int GetFromPage() const;
@@ -215,9 +251,10 @@ public:
     bool GetPrintToFile() const;
 
     // WXWIN_COMPATIBILITY_2_4
+#if 0
     bool GetSetupDialog() const;
     void SetSetupDialog(bool flag);
-
+#endif
     void SetFromPage(int v);
     void SetToPage(int v);
     void SetMinPage(int v);
@@ -320,7 +357,7 @@ void wxPyPrintout::GetPageInfo(int *minPage, int *maxPage, int *pageFrom, int *p
     bool hadErr = false;
     bool found;
 
-    bool blocked = wxPyBeginBlockThreads();
+    wxPyBlock_t blocked = wxPyBeginBlockThreads();
     if ((found = wxPyCBH_findCallback(m_myInst, "GetPageInfo"))) {
         PyObject* result = wxPyCBH_callCallbackObj(m_myInst, Py_BuildValue("()"));
         if (result && PyTuple_Check(result) && PyTuple_Size(result) == 4) {
@@ -588,7 +625,7 @@ public:
     bool CLASS::CBNAME(wxPreviewCanvas* a, wxDC& b) {                                   \
         bool rval=false;                                                                \
         bool found;                                                                     \
-        bool blocked = wxPyBeginBlockThreads();                                         \
+        wxPyBlock_t blocked = wxPyBeginBlockThreads();                                         \
         if ((found = wxPyCBH_findCallback(m_myInst, #CBNAME))) {                        \
             PyObject* win = wxPyMake_wxObject(a,false);                                 \
             PyObject* dc  = wxPyMake_wxObject(&b,false);                                \
@@ -684,7 +721,7 @@ public:
 %{
 class wxPyPreviewFrame : public wxPreviewFrame
 {
-    DECLARE_CLASS(wxPyPreviewFrame);
+    DECLARE_CLASS(wxPyPreviewFrame)
 public:
     wxPyPreviewFrame(wxPrintPreview* preview, wxFrame* parent,
                      const wxString& title,
@@ -743,7 +780,7 @@ public:
 %{
 class wxPyPreviewControlBar : public wxPreviewControlBar
 {
-    DECLARE_CLASS(wxPyPreviewControlBar);
+    DECLARE_CLASS(wxPyPreviewControlBar)
 public:
     wxPyPreviewControlBar(wxPrintPreview *preview,
                           long buttons,