]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/cmndata.cpp
use best size instead of hard coded 80*26 in SetSize(wxSIZE_AUTO)
[wxWidgets.git] / src / common / cmndata.cpp
index 08e3e0cf090da7938781d7af2f342b0bba1d405d..dfad53794b6a76859b52d7794fdfe6ae66843595 100644 (file)
@@ -17,7 +17,7 @@
 // headers
 // ----------------------------------------------------------------------------
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
     #pragma implementation "cmndata.h"
 #endif
 
 #endif // wxUSE_PRINTING_ARCHITECTURE
 
 #ifdef __WXMSW__
-    #include <windows.h>
+    #include <windowsx.h>
     #include "wx/msw/private.h"
 
-    #if !defined(__WIN32__)
-        #include <print.h>
+    #if defined(__WXWINCE__) && !wxUSE_SMARTPHONE
         #include <commdlg.h>
-    #endif // Win16
+    #endif
 
     #if defined(__WATCOMC__) || defined(__SYMANTEC__) || defined(__SALFORDC__)
         #include <windowsx.h>
@@ -214,6 +213,10 @@ wxPrintData::wxPrintData()
     m_printerTranslateX = 0;
     m_printerTranslateY = 0;
     m_printMode = wxPRINT_MODE_FILE;
+
+#ifdef wxUSE_STREAMS
+    m_outputstream = NULL;
+#endif
 }
 
 wxPrintData::wxPrintData(const wxPrintData& printData)
@@ -327,7 +330,11 @@ void wxPrintData::ConvertToNative()
         pd.lStructSize    = 66;
 #else
         memset(&pd, 0, sizeof(PRINTDLG));
+#ifdef __WXWINCE__
+        pd.cbStruct    = sizeof(PRINTDLG);
+#else
         pd.lStructSize    = sizeof(PRINTDLG);
+#endif
 #endif
 
         pd.hwndOwner      = (HWND)NULL;
@@ -709,6 +716,9 @@ void wxPrintData::operator=(const wxPrintData& data)
     m_printQuality = data.m_printQuality;
     m_paperId = data.m_paperId;
     m_paperSize = data.m_paperSize;
+#ifdef wxUSE_STREAMS
+    m_outputstream = data.m_outputstream;
+#endif
 
     // PostScript-specific data
     m_printerCommand = data.m_printerCommand;
@@ -773,10 +783,10 @@ wxPrintDialogData::wxPrintDialogData(const wxPrintData& printData)
 #ifdef __WXMSW__
     m_printDlgData = NULL;
 #endif
-    m_printFromPage = 0;
+    m_printFromPage = 1;
     m_printToPage = 0;
-    m_printMinPage = 0;
-    m_printMaxPage = 0;
+    m_printMinPage = 1;
+    m_printMaxPage = 9999;
     m_printNoCopies = 1;
     m_printAllPages = FALSE;
     m_printCollate = FALSE;
@@ -894,7 +904,7 @@ void wxPrintDialogData::ConvertToNative()
         pd->Flags |= PD_NOSELECTION;
     if ( !m_printEnablePageNumbers )
         pd->Flags |= PD_NOPAGENUMS;
-    else if ( (!m_printAllPages) && (!m_printSelection) )
+    else if ( (!m_printAllPages) && (!m_printSelection) && (m_printFromPage != 0) && (m_printToPage != 0))
         pd->Flags |= PD_PAGENUMS;
     if ( m_printEnableHelp )
         pd->Flags |= PD_SHOWHELP;