< prev index next >

src/java.desktop/windows/native/libawt/windows/awt_PrintControl.cpp

Print this page

        

*** 768,797 **** AwtPrintControl::getToPageID); pd.nMinPage = (WORD)env->CallIntMethod(printCtrl, AwtPrintControl::getMinPageID); jint maxPage = env->CallIntMethod(printCtrl, AwtPrintControl::getMaxPageID); pd.nMaxPage = (maxPage <= (jint)((WORD)-1)) ? (WORD)maxPage : (WORD)-1; // In the event that the application displays the dialog before // installing a Printable, but sets a page range, then max page will be 1 // since the default state of a PrinterJob is an empty "Book" Pageable. // Windows pops up an error dialog in such a case which isn't very // forthcoming about the exact problem. // So if we detect this fix up such a problem here. if (pd.nMinPage > pd.nFromPage) pd.nMinPage = pd.nFromPage; if (pd.nMaxPage < pd.nToPage) pd.nMaxPage = pd.nToPage; ! if (pd.nFromPage > pd.nMinPage || pd.nToPage < pd.nMaxPage) { pd.Flags |= PD_PAGENUMS; } if (env->CallBooleanMethod(printCtrl, AwtPrintControl::getDestID)) { pd.Flags |= PD_PRINTTOFILE; } - jint selectType = env->CallIntMethod(printCtrl, - AwtPrintControl::getSelectID); // selectType identifies whether No selection (2D) or // SunPageSelection (AWT) if (selectType != 0) { pd.Flags |= selectType; --- 768,797 ---- AwtPrintControl::getToPageID); pd.nMinPage = (WORD)env->CallIntMethod(printCtrl, AwtPrintControl::getMinPageID); jint maxPage = env->CallIntMethod(printCtrl, AwtPrintControl::getMaxPageID); + jint selectType = env->CallIntMethod(printCtrl, + AwtPrintControl::getSelectID); pd.nMaxPage = (maxPage <= (jint)((WORD)-1)) ? (WORD)maxPage : (WORD)-1; // In the event that the application displays the dialog before // installing a Printable, but sets a page range, then max page will be 1 // since the default state of a PrinterJob is an empty "Book" Pageable. // Windows pops up an error dialog in such a case which isn't very // forthcoming about the exact problem. // So if we detect this fix up such a problem here. if (pd.nMinPage > pd.nFromPage) pd.nMinPage = pd.nFromPage; if (pd.nMaxPage < pd.nToPage) pd.nMaxPage = pd.nToPage; ! if (selectType != 0 && (pd.nFromPage > pd.nMinPage || pd.nToPage < pd.nMaxPage)) { pd.Flags |= PD_PAGENUMS; } if (env->CallBooleanMethod(printCtrl, AwtPrintControl::getDestID)) { pd.Flags |= PD_PRINTTOFILE; } // selectType identifies whether No selection (2D) or // SunPageSelection (AWT) if (selectType != 0) { pd.Flags |= selectType;
< prev index next >