mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-22 10:27:03 +00:00
on going work on the printing component: rename PRINTSVC to PSSVC, getValuesFromPS to updateSettings, remove duplicate getWebBrowserPrint and start removing the duplicated code in printUtils.js and printPreviewBindings.xml that lays the print preview.
This commit is contained in:
parent
7c9765217b
commit
d6ee5838ef
@ -57,7 +57,7 @@
|
||||
oncommand="PrintUtils.print();"/>
|
||||
|
||||
<xul:button label="&pageSetup.label;" accesskey="&pageSetup.accesskey;"
|
||||
oncommand="PrintUtils.showPageSetup();"/>
|
||||
oncommand="this.doPageSetup();"/>
|
||||
|
||||
<xul:vbox align="center" pack="center">
|
||||
<xul:label value="&page.label;"/>
|
||||
@ -158,10 +158,10 @@
|
||||
|
||||
<constructor>
|
||||
<![CDATA[
|
||||
var print = getWebBrowserPrint();
|
||||
var print = PrintUtils.getWebBrowserPrint();
|
||||
this.mTotalPages.value = print.printPreviewNumPages;
|
||||
|
||||
this.getValuesFromPS();
|
||||
this.updateSettings();
|
||||
|
||||
// Hide the ``Print...'' button when the underlying gfx code does not
|
||||
// support multiple devicecontext to be used concurrently
|
||||
@ -216,13 +216,13 @@
|
||||
<method name="doPageSetup">
|
||||
<body>
|
||||
<![CDATA[
|
||||
var didOK = BrowserPrintSetup();
|
||||
var didOK = PrintUtils.showPageSetup();
|
||||
if (didOK) {
|
||||
// the changes that effect the UI
|
||||
this.getValuesFromPS();
|
||||
this.updateSettings();
|
||||
|
||||
// Now do PrintPreview
|
||||
var print = this.getWebBrowserPrint();
|
||||
var print = PrintUtils.getWebBrowserPrint();
|
||||
var settings = print.currentPrintSettings;
|
||||
this.doPrintPreview(print, settings, this.mTotalPages, null);
|
||||
}
|
||||
@ -236,7 +236,7 @@
|
||||
<parameter name="aHomeOrEnd"/>
|
||||
<body>
|
||||
<![CDATA[
|
||||
var print = this.getWebBrowserPrint();
|
||||
var print = PrintUtils.getWebBrowserPrint();
|
||||
var validInput = false;
|
||||
var total;
|
||||
|
||||
@ -430,7 +430,7 @@
|
||||
<parameter name="aValue"/>
|
||||
<body>
|
||||
<![CDATA[
|
||||
var print = this.getWebBrowserPrint();
|
||||
var print = PrintUtils.getWebBrowserPrint();
|
||||
var settings = print.currentPrintSettings;
|
||||
if (aValue == "ShrinkToFit") {
|
||||
if (!settings.shrinkToFit) {
|
||||
@ -481,7 +481,7 @@
|
||||
orientValue = kIPrintSettings.kLandscapeOrientation;
|
||||
}
|
||||
|
||||
var print = this.getWebBrowserPrint();
|
||||
var print = PrintUtils.getWebBrowserPrint();
|
||||
var settings = print.currentPrintSettings;
|
||||
settings.orientation = orientValue;
|
||||
this.doPrintPreview(print, settings, this.mTotalPages, null);
|
||||
@ -489,17 +489,7 @@
|
||||
</body>
|
||||
</method>
|
||||
|
||||
<method name="getWebBrowserPrint">
|
||||
<body>
|
||||
<![CDATA[
|
||||
var ifreq = _content.QueryInterface(
|
||||
Components.interfaces.nsIInterfaceRequestor);
|
||||
return ifreq.getInterface(Components.interfaces.nsIWebBrowserPrint);
|
||||
]]>
|
||||
</body>
|
||||
</method>
|
||||
|
||||
<method name="getValuesFromPS">
|
||||
<method name="updateSettings">
|
||||
<body>
|
||||
<![CDATA[
|
||||
var print = this.getWebBrowserPrint();
|
||||
|
@ -47,30 +47,23 @@ var PrintUtils = {
|
||||
{
|
||||
var didOK = false;
|
||||
try {
|
||||
var webBrowserPrint = this.getWebBrowserPrint();
|
||||
var printSettings = this.getPrintSettings();
|
||||
|
||||
var webBrowserPrint = null;
|
||||
if (_content) {
|
||||
var ifreq = _content.QueryInterface(Components.interfaces.nsIInterfaceRequestor);
|
||||
webBrowserPrint = ifreq.getInterface(Components.interfaces.nsIWebBrowserPrint);
|
||||
}
|
||||
|
||||
var PRINTPROMPTSVC = Components.classes["@mozilla.org/embedcomp/printingprompt-service;1"]
|
||||
.getService(Components.interfaces.nsIPrintingPromptService);
|
||||
didOK = PRINTPROMPTSVC.showPageSetup(window, printSettings, null);
|
||||
|
||||
if (didOK) {
|
||||
if (webBrowserPrint) {
|
||||
var PREF = Components.classes["@mozilla.org/preferences-service;1"]
|
||||
.getService(Components.interfaces.nsIPrefBranch);
|
||||
var isGlobal = PREF.getBoolPref("print.use_global_printsettings", false);
|
||||
var doSave = PREF.getBoolPref("print.save_print_settings", false);
|
||||
var PREF = Components.classes["@mozilla.org/preferences-service;1"]
|
||||
.getService(Components.interfaces.nsIPrefBranch);
|
||||
var isGlobal = PREF.getBoolPref("print.use_global_printsettings", false);
|
||||
var doSave = PREF.getBoolPref("print.save_print_settings", false);
|
||||
|
||||
if (isGlobal && doSave) {
|
||||
var PSSVC = Components.classes["@mozilla.org/gfx/printsettings-service;1"]
|
||||
.getService(Components.interfaces.nsIPrintSettingsService);
|
||||
PSSVC.savePrintSettingsToPrefs(printSettings, false, printSettings.kInitSaveNativeData);
|
||||
}
|
||||
if (isGlobal && doSave) {
|
||||
var PSSVC = Components.classes["@mozilla.org/gfx/printsettings-service;1"]
|
||||
.getService(Components.interfaces.nsIPrintSettingsService);
|
||||
PSSVC.savePrintSettingsToPrefs(printSettings, false, printSettings.kInitSaveNativeData);
|
||||
}
|
||||
}
|
||||
} catch (e) {
|
||||
@ -129,25 +122,25 @@ var PrintUtils = {
|
||||
}
|
||||
},
|
||||
|
||||
////////////////////////////////////////
|
||||
// "private" methods. Don't use them. //
|
||||
////////////////////////////////////////
|
||||
|
||||
getWebBrowserPrint: function ()
|
||||
{
|
||||
return _content.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
|
||||
.getInterface(Components.interfaces.nsIWebBrowserPrint);
|
||||
},
|
||||
|
||||
setPrinterDefaultsForSelectedPrinter: function (aPRINTSVC, aPrintSettings)
|
||||
////////////////////////////////////////
|
||||
// "private" methods. Don't use them. //
|
||||
////////////////////////////////////////
|
||||
|
||||
setPrinterDefaultsForSelectedPrinter: function (aPSSVC, aPrintSettings)
|
||||
{
|
||||
if (!aPrintSettings.printerName)
|
||||
aPrintSettings.printerName = aPRINTSVC.defaultPrinterName;
|
||||
aPrintSettings.printerName = aPSSVC.defaultPrinterName;
|
||||
|
||||
// First get any defaults from the printer
|
||||
aPRINTSVC.initPrintSettingsFromPrinter(aPrintSettings.printerName, aPrintSettings);
|
||||
aPSSVC.initPrintSettingsFromPrinter(aPrintSettings.printerName, aPrintSettings);
|
||||
// now augment them with any values from last time
|
||||
aPRINTSVC.initPrintSettingsFromPrefs(aPrintSettings, true, aPrintSettings.kInitSaveAll);
|
||||
aPSSVC.initPrintSettingsFromPrefs(aPrintSettings, true, aPrintSettings.kInitSaveAll);
|
||||
},
|
||||
|
||||
getPrintSettings: function ()
|
||||
@ -156,15 +149,14 @@ var PrintUtils = {
|
||||
var PREF = Components.classes["@mozilla.org/preferences-service;1"]
|
||||
.getService(Components.interfaces.nsIPrefBranch);
|
||||
try {
|
||||
var PSSVC = Components.classes["@mozilla.org/gfx/printsettings-service;1"]
|
||||
.getService(Components.interfaces.nsIPrintSettingsService);
|
||||
var isGlobal = PREF.getBoolPref("print.use_global_printsettings", false);
|
||||
|
||||
var PRINTSVC = Components.classes["@mozilla.org/gfx/printsettings-service;1"]
|
||||
.getService(Components.interfaces.nsIPrintSettingsService);
|
||||
if (isGlobal) {
|
||||
printSettings = PRINTSVC.globalPrintSettings;
|
||||
this.setPrinterDefaultsForSelectedPrinter(PRINTSVC, printSettings);
|
||||
printSettings = PSSVC.globalPrintSettings;
|
||||
this.setPrinterDefaultsForSelectedPrinter(PSSVC, printSettings);
|
||||
} else
|
||||
printSettings = PRINTSVC.newPrintSettings;
|
||||
printSettings = PSSVC.newPrintSettings;
|
||||
} catch (e) {
|
||||
dump("getPrintSettings: "+e+"\n");
|
||||
}
|
||||
@ -207,6 +199,12 @@ var PrintUtils = {
|
||||
// dump(e); // if you need to debug
|
||||
}
|
||||
|
||||
var printPreviewTB = document.getElementById("print-preview-toolbar");
|
||||
if (printPreviewTB) {
|
||||
printPreviewTB.updateSettings();
|
||||
return
|
||||
}
|
||||
|
||||
// show the toolbar after we go into print preview mode so
|
||||
// that we can initialize the toolbar with total num pages
|
||||
var printPreviewTB = document.createElementNS(XUL_NS, "toolbar");
|
||||
|
Loading…
x
Reference in New Issue
Block a user