]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/cocoa/printdlg.mm
fixing class
[wxWidgets.git] / src / osx / cocoa / printdlg.mm
index 0efddce852e6fe357967e7100874c32531f1ac1f..ef9268b37720e23f41a34bc004fc95c496991772 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////////////
-// Name:        src/osx/carbon/printdlg.cpp
+// Name:        src/osx/cocoa/printdlg.mm
 // Purpose:     wxPrintDialog, wxPageSetupDialog
 // Author:      Stefan Csomor
 // Modified by:
 // Purpose:     wxPrintDialog, wxPageSetupDialog
 // Author:      Stefan Csomor
 // Modified by:
@@ -14,6 +14,7 @@
 #if wxUSE_PRINTING_ARCHITECTURE
 
 #include "wx/printdlg.h"
 #if wxUSE_PRINTING_ARCHITECTURE
 
 #include "wx/printdlg.h"
+#include "wx/testing.h"
 
 #ifndef WX_PRECOMP
     #include "wx/object.h"
 
 #ifndef WX_PRECOMP
     #include "wx/object.h"
@@ -33,10 +34,10 @@ IMPLEMENT_CLASS(wxOSXCocoaPrintData, wxOSXPrintData)
 wxOSXCocoaPrintData::wxOSXCocoaPrintData()
 {
     m_macPrintInfo = [[NSPrintInfo alloc] init];
 wxOSXCocoaPrintData::wxOSXCocoaPrintData()
 {
     m_macPrintInfo = [[NSPrintInfo alloc] init];
-    // TODO add 10.4 code
     m_macPageFormat = (PMPageFormat) [m_macPrintInfo PMPageFormat];
     m_macPrintSettings = (PMPrintSettings) [m_macPrintInfo PMPrintSettings];
     m_macPrintSession = (PMPrintSession) [m_macPrintInfo PMPrintSession] ;
     m_macPageFormat = (PMPageFormat) [m_macPrintInfo PMPageFormat];
     m_macPrintSettings = (PMPrintSettings) [m_macPrintInfo PMPrintSettings];
     m_macPrintSession = (PMPrintSession) [m_macPrintInfo PMPrintSession] ;
+    PMGetPageFormatPaper(m_macPageFormat, &m_macPaper);
 }
 
 wxOSXCocoaPrintData::~wxOSXCocoaPrintData()
 }
 
 wxOSXCocoaPrintData::~wxOSXCocoaPrintData()
@@ -46,14 +47,12 @@ wxOSXCocoaPrintData::~wxOSXCocoaPrintData()
 
 void wxOSXCocoaPrintData::UpdateFromPMState()
 {
 
 void wxOSXCocoaPrintData::UpdateFromPMState()
 {
-    // TODO add 10.4 code
     [m_macPrintInfo updateFromPMPageFormat];
     [m_macPrintInfo updateFromPMPrintSettings];
 }
 
 void wxOSXCocoaPrintData::UpdateToPMState()
 {
     [m_macPrintInfo updateFromPMPageFormat];
     [m_macPrintInfo updateFromPMPrintSettings];
 }
 
 void wxOSXCocoaPrintData::UpdateToPMState()
 {
-    // TODO add 10.4 code
     m_macPageFormat = (PMPageFormat) [m_macPrintInfo PMPageFormat];
     m_macPrintSettings = (PMPrintSettings) [m_macPrintInfo PMPrintSettings];
     m_macPrintSession = (PMPrintSession) [m_macPrintInfo PMPrintSession] ;
     m_macPageFormat = (PMPageFormat) [m_macPrintInfo PMPageFormat];
     m_macPrintSettings = (PMPrintSettings) [m_macPrintInfo PMPrintSettings];
     m_macPrintSession = (PMPrintSession) [m_macPrintInfo PMPrintSession] ;
@@ -61,12 +60,19 @@ void wxOSXCocoaPrintData::UpdateToPMState()
 
 int wxMacPrintDialog::ShowModal()
 {
 
 int wxMacPrintDialog::ShowModal()
 {
+    WX_TESTING_SHOW_MODAL_HOOK();
+
     m_printDialogData.GetPrintData().ConvertToNative();
 
     int result = wxID_CANCEL;
 
     NSPrintPanel* panel = [NSPrintPanel printPanel];
     NSPrintInfo* printInfo = ((wxOSXCocoaPrintData*)m_printDialogData.GetPrintData().GetNativeData())->GetNSPrintInfo();
     m_printDialogData.GetPrintData().ConvertToNative();
 
     int result = wxID_CANCEL;
 
     NSPrintPanel* panel = [NSPrintPanel printPanel];
     NSPrintInfo* printInfo = ((wxOSXCocoaPrintData*)m_printDialogData.GetPrintData().GetNativeData())->GetNSPrintInfo();
+
+    NSMutableDictionary* dict = [printInfo printSettings];
+    [dict setValue:[NSNumber numberWithInt:m_printDialogData.GetMinPage()] forKey:@"com_apple_print_PrintSettings_PMFirstPage"];
+    [dict setValue:[NSNumber numberWithInt:m_printDialogData.GetMaxPage()] forKey:@"com_apple_print_PrintSettings_PMLastPage"];
+
     if ( (NSInteger)[panel runModalWithPrintInfo:printInfo] == NSOKButton )
     {
         result = wxID_OK;
     if ( (NSInteger)[panel runModalWithPrintInfo:printInfo] == NSOKButton )
     {
         result = wxID_OK;
@@ -79,6 +85,8 @@ int wxMacPrintDialog::ShowModal()
 
 int wxMacPageSetupDialog::ShowModal()
 {
 
 int wxMacPageSetupDialog::ShowModal()
 {
+    WX_TESTING_SHOW_MODAL_HOOK();
+
     m_pageSetupData.GetPrintData().ConvertToNative();
     ((wxOSXCocoaPrintData*)m_pageSetupData.GetPrintData().GetNativeData())->TransferFrom( &m_pageSetupData );
 
     m_pageSetupData.GetPrintData().ConvertToNative();
     ((wxOSXCocoaPrintData*)m_pageSetupData.GetPrintData().GetNativeData())->TransferFrom( &m_pageSetupData );