]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/carbon/printdlg.cpp
switched to MacOS 8.5+ implementation for submenus
[wxWidgets.git] / src / mac / carbon / printdlg.cpp
index 5fd25c56da379eb19f774b98aead95e3751994e2..ec13b9745533f2553212d8034d8396b6ebe47442 100644 (file)
 #include "wx/dcprint.h"
 #include "wx/msgdlg.h"
 #include "wx/mac/uma.h"
+#ifndef __DARWIN__
+    #include "Printing.h"
+#endif
+
+#if defined(TARGET_CARBON) && !defined(__DARWIN__)
+#  if PM_USE_SESSION_APIS
+#    include <PMCore.h>
+#  endif
+#  include <PMApplication.h>
+#endif
 
 // Use generic page setup dialog: use your own native one if one exists.
 
@@ -61,8 +71,10 @@ bool wxPrintDialog::Create(wxWindow *p, wxPrintDialogData* data)
 
 wxPrintDialog::~wxPrintDialog()
 {
-    if (m_destroyDC && m_printerDC)
+    if (m_destroyDC && m_printerDC) {
         delete m_printerDC;
+        m_printerDC = NULL;
+    }
 }
 
 int wxPrintDialog::ShowModal()
@@ -72,11 +84,11 @@ int wxPrintDialog::ShowModal()
        wxString message ;
 
 #if !TARGET_CARBON     
-       err = ::UMAPrOpen() ;
+       err = ::UMAPrOpen(NULL) ;
        if ( err == noErr )
        {
                m_printDialogData.ConvertToNative() ;
-               if  ( ::PrJobDialog( (THPrint) m_printDialogData.GetPrintData().m_macPrintInfo ) )
+               if  ( ::PrJobDialog( (THPrint) m_printDialogData.GetPrintData().m_macPrintSettings ) )
                {
                        m_printDialogData.ConvertFromNative() ;
                        result = wxID_OK ;
@@ -89,7 +101,7 @@ int wxPrintDialog::ShowModal()
                wxMessageDialog dialog( NULL , message  , "", wxICON_HAND | wxOK) ;
                dialog.ShowModal();
        }
-       ::UMAPrClose() ;
+       ::UMAPrClose(NULL) ;
 #else
   #if PM_USE_SESSION_APIS
     PMPrintSession macPrintSession = kPMNoReference;
@@ -224,11 +236,11 @@ int wxPageSetupDialog::ShowModal()
        wxString message ;
 
 #if !TARGET_CARBON
-       err = ::UMAPrOpen() ;
+       err = ::UMAPrOpen(NULL) ;
        if ( err == noErr )
        {
                m_pageSetupData.ConvertToNative() ;
-               if  ( ::PrStlDialog(  (THPrint) m_pageSetupData.GetPrintData().m_macPrintInfo ) )
+               if  ( ::PrStlDialog(  (THPrint) m_pageSetupData.GetPrintData().m_macPrintSettings ) )
                {
                        m_pageSetupData.ConvertFromNative() ;
                        result = wxID_OK ;
@@ -241,7 +253,7 @@ int wxPageSetupDialog::ShowModal()
                wxMessageDialog dialog( NULL , message , "", wxICON_HAND | wxOK) ;
                dialog.ShowModal();
        }
-       ::UMAPrClose() ;
+       ::UMAPrClose(NULL) ;
 #else
   #if PM_USE_SESSION_APIS
     PMPrintSession macPrintSession = kPMNoReference;