OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 cr.define('print_preview', function() { | 5 cr.define('print_preview', function() { |
6 'use strict'; | 6 'use strict'; |
7 | 7 |
8 /** | 8 /** |
9 * Creates a PrintHeader object. This object encapsulates all the elements | 9 * Creates a PrintHeader object. This object encapsulates all the elements |
10 * and logic related to the top part of the left pane in print_preview.html. | 10 * and logic related to the top part of the left pane in print_preview.html. |
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
142 * Updates the summary element based on the currently selected user options. | 142 * Updates the summary element based on the currently selected user options. |
143 * @private | 143 * @private |
144 */ | 144 */ |
145 updateSummary_: function() { | 145 updateSummary_: function() { |
146 if (!this.printTicketStore_.isTicketValid()) { | 146 if (!this.printTicketStore_.isTicketValid()) { |
147 this.getChildElement('.summary').innerHTML = ''; | 147 this.getChildElement('.summary').innerHTML = ''; |
148 return; | 148 return; |
149 } | 149 } |
150 | 150 |
151 var summaryLabel = | 151 var summaryLabel = |
152 localStrings.getString('printPreviewSheetsLabelSingular'); | 152 loadTimeData.getString('printPreviewSheetsLabelSingular'); |
153 var pagesLabel = localStrings.getString('printPreviewPageLabelPlural'); | 153 var pagesLabel = loadTimeData.getString('printPreviewPageLabelPlural'); |
154 | 154 |
155 var saveToPdf = this.destinationStore_.selectedDestination && | 155 var saveToPdf = this.destinationStore_.selectedDestination && |
156 this.destinationStore_.selectedDestination.id == | 156 this.destinationStore_.selectedDestination.id == |
157 print_preview.Destination.GooglePromotedId.SAVE_AS_PDF; | 157 print_preview.Destination.GooglePromotedId.SAVE_AS_PDF; |
158 if (saveToPdf) { | 158 if (saveToPdf) { |
159 summaryLabel = localStrings.getString('printPreviewPageLabelSingular'); | 159 summaryLabel = loadTimeData.getString('printPreviewPageLabelSingular'); |
160 } | 160 } |
161 | 161 |
162 var numPages = this.printTicketStore_.pageRange.getPageNumberSet().size; | 162 var numPages = this.printTicketStore_.pageRange.getPageNumberSet().size; |
163 var numSheets = numPages; | 163 var numSheets = numPages; |
164 if (!saveToPdf && this.printTicketStore_.duplex.getValue()) { | 164 if (!saveToPdf && this.printTicketStore_.duplex.getValue()) { |
165 numSheets = Math.ceil(numPages / 2); | 165 numSheets = Math.ceil(numPages / 2); |
166 } | 166 } |
167 | 167 |
168 var copies = this.printTicketStore_.copies.getValueAsNumber(); | 168 var copies = this.printTicketStore_.copies.getValueAsNumber(); |
169 numSheets *= copies; | 169 numSheets *= copies; |
170 numPages *= copies; | 170 numPages *= copies; |
171 | 171 |
172 if (numSheets > 1) { | 172 if (numSheets > 1) { |
173 summaryLabel = saveToPdf ? pagesLabel : | 173 summaryLabel = saveToPdf ? pagesLabel : |
174 localStrings.getString('printPreviewSheetsLabelPlural'); | 174 loadTimeData.getString('printPreviewSheetsLabelPlural'); |
175 } | 175 } |
176 | 176 |
177 var html; | 177 var html; |
178 if (numPages != numSheets) { | 178 if (numPages != numSheets) { |
179 html = localStrings.getStringF('printPreviewSummaryFormatLong', | 179 html = loadTimeData.getStringF('printPreviewSummaryFormatLong', |
180 '<b>' + numSheets + '</b>', | 180 '<b>' + numSheets + '</b>', |
181 '<b>' + summaryLabel + '</b>', | 181 '<b>' + summaryLabel + '</b>', |
182 numPages, | 182 numPages, |
183 pagesLabel); | 183 pagesLabel); |
184 } else { | 184 } else { |
185 html = localStrings.getStringF('printPreviewSummaryFormatShort', | 185 html = loadTimeData.getStringF('printPreviewSummaryFormatShort', |
186 '<b>' + numSheets + '</b>', | 186 '<b>' + numSheets + '</b>', |
187 '<b>' + summaryLabel + '</b>'); | 187 '<b>' + summaryLabel + '</b>'); |
188 } | 188 } |
189 | 189 |
190 // Removing extra spaces from within the string. | 190 // Removing extra spaces from within the string. |
191 html = html.replace(/\s{2,}/g, ' '); | 191 html = html.replace(/\s{2,}/g, ' '); |
192 this.getChildElement('.summary').innerHTML = html; | 192 this.getChildElement('.summary').innerHTML = html; |
193 }, | 193 }, |
194 | 194 |
195 /** | 195 /** |
196 * Called when the print button is clicked. Dispatches a PRINT_DOCUMENT | 196 * Called when the print button is clicked. Dispatches a PRINT_DOCUMENT |
197 * common event. | 197 * common event. |
198 * @private | 198 * @private |
199 */ | 199 */ |
200 onPrintButtonClick_: function() { | 200 onPrintButtonClick_: function() { |
201 if (this.destinationStore_.selectedDestination.id != | 201 if (this.destinationStore_.selectedDestination.id != |
202 print_preview.Destination.GooglePromotedId.SAVE_AS_PDF) { | 202 print_preview.Destination.GooglePromotedId.SAVE_AS_PDF) { |
203 this.getChildElement('button.print').classList.add('loading'); | 203 this.getChildElement('button.print').classList.add('loading'); |
204 this.getChildElement('button.cancel').classList.add('loading'); | 204 this.getChildElement('button.cancel').classList.add('loading'); |
205 this.getChildElement('.summary').innerHTML = | 205 this.getChildElement('.summary').innerHTML = |
206 localStrings.getString('printing'); | 206 loadTimeData.getString('printing'); |
207 } | 207 } |
208 cr.dispatchSimpleEvent(this, PrintHeader.EventType.PRINT_BUTTON_CLICK); | 208 cr.dispatchSimpleEvent(this, PrintHeader.EventType.PRINT_BUTTON_CLICK); |
209 }, | 209 }, |
210 | 210 |
211 /** | 211 /** |
212 * Called when the cancel button is clicked. Dispatches a | 212 * Called when the cancel button is clicked. Dispatches a |
213 * CLOSE_PRINT_PREVIEW event. | 213 * CLOSE_PRINT_PREVIEW event. |
214 * @private | 214 * @private |
215 */ | 215 */ |
216 onCancelButtonClick_: function() { | 216 onCancelButtonClick_: function() { |
217 cr.dispatchSimpleEvent(this, PrintHeader.EventType.CANCEL_BUTTON_CLICK); | 217 cr.dispatchSimpleEvent(this, PrintHeader.EventType.CANCEL_BUTTON_CLICK); |
218 }, | 218 }, |
219 | 219 |
220 /** | 220 /** |
221 * Called when a new destination is selected. Updates the text on the print | 221 * Called when a new destination is selected. Updates the text on the print |
222 * button. | 222 * button. |
223 * @private | 223 * @private |
224 */ | 224 */ |
225 onDestinationSelect_: function() { | 225 onDestinationSelect_: function() { |
226 var isSaveLabel = this.destinationStore_.selectedDestination && | 226 var isSaveLabel = this.destinationStore_.selectedDestination && |
227 (this.destinationStore_.selectedDestination.id == | 227 (this.destinationStore_.selectedDestination.id == |
228 print_preview.Destination.GooglePromotedId.SAVE_AS_PDF || | 228 print_preview.Destination.GooglePromotedId.SAVE_AS_PDF || |
229 this.destinationStore_.selectedDestination.id == | 229 this.destinationStore_.selectedDestination.id == |
230 print_preview.Destination.GooglePromotedId.DOCS); | 230 print_preview.Destination.GooglePromotedId.DOCS); |
231 this.getChildElement('button.print').textContent = | 231 this.getChildElement('button.print').textContent = |
232 localStrings.getString(isSaveLabel ? 'saveButton' : 'printButton'); | 232 loadTimeData.getString(isSaveLabel ? 'saveButton' : 'printButton'); |
233 if (this.destinationStore_.selectedDestination) { | 233 if (this.destinationStore_.selectedDestination) { |
234 this.getChildElement('button.print').focus(); | 234 this.getChildElement('button.print').focus(); |
235 } | 235 } |
236 }, | 236 }, |
237 | 237 |
238 /** | 238 /** |
239 * Called when the print ticket has changed. Disables the print button if | 239 * Called when the print ticket has changed. Disables the print button if |
240 * any of the settings are invalid. | 240 * any of the settings are invalid. |
241 * @private | 241 * @private |
242 */ | 242 */ |
243 onTicketChange_: function() { | 243 onTicketChange_: function() { |
244 this.updatePrintButtonEnabledState_(); | 244 this.updatePrintButtonEnabledState_(); |
245 this.updateSummary_(); | 245 this.updateSummary_(); |
246 if (document.activeElement == null || | 246 if (document.activeElement == null || |
247 document.activeElement == document.body) { | 247 document.activeElement == document.body) { |
248 this.getChildElement('button.print').focus(); | 248 this.getChildElement('button.print').focus(); |
249 } | 249 } |
250 } | 250 } |
251 }; | 251 }; |
252 | 252 |
253 // Export | 253 // Export |
254 return { | 254 return { |
255 PrintHeader: PrintHeader | 255 PrintHeader: PrintHeader |
256 }; | 256 }; |
257 }); | 257 }); |
OLD | NEW |