| 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 // TODO(rltoscano): Maybe clear print ticket when destination changes. Or | 8 // TODO(rltoscano): Maybe clear print ticket when destination changes. Or |
| 9 // better yet, carry over any print ticket state that is possible. I.e. if | 9 // better yet, carry over any print ticket state that is possible. I.e. if |
| 10 // destination changes, the new destination might not support duplex anymore, | 10 // destination changes, the new destination might not support duplex anymore, |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 170 | 170 |
| 171 /** | 171 /** |
| 172 * Print selection only ticket item. | 172 * Print selection only ticket item. |
| 173 * @type {!print_preview.ticket_items.SelectionOnly} | 173 * @type {!print_preview.ticket_items.SelectionOnly} |
| 174 * @private | 174 * @private |
| 175 */ | 175 */ |
| 176 this.selectionOnly_ = | 176 this.selectionOnly_ = |
| 177 new print_preview.ticket_items.SelectionOnly(this.documentInfo_); | 177 new print_preview.ticket_items.SelectionOnly(this.documentInfo_); |
| 178 | 178 |
| 179 /** | 179 /** |
| 180 * Vendor ticket items. |
| 181 * @type {!print_preview.ticket_items.VendorItems} |
| 182 * @private |
| 183 */ |
| 184 this.vendorItems_ = new print_preview.ticket_items.VendorItems( |
| 185 this.appState_, this.destinationStore_); |
| 186 |
| 187 /** |
| 180 * Keeps track of event listeners for the print ticket store. | 188 * Keeps track of event listeners for the print ticket store. |
| 181 * @type {!EventTracker} | 189 * @type {!EventTracker} |
| 182 * @private | 190 * @private |
| 183 */ | 191 */ |
| 184 this.tracker_ = new EventTracker(); | 192 this.tracker_ = new EventTracker(); |
| 185 | 193 |
| 186 /** | 194 /** |
| 187 * Whether the print preview has been initialized. | 195 * Whether the print preview has been initialized. |
| 188 * @type {boolean} | 196 * @type {boolean} |
| 189 * @private | 197 * @private |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 260 }, | 268 }, |
| 261 | 269 |
| 262 get pageRange() { | 270 get pageRange() { |
| 263 return this.pageRange_; | 271 return this.pageRange_; |
| 264 }, | 272 }, |
| 265 | 273 |
| 266 get selectionOnly() { | 274 get selectionOnly() { |
| 267 return this.selectionOnly_; | 275 return this.selectionOnly_; |
| 268 }, | 276 }, |
| 269 | 277 |
| 278 get vendorItems() { |
| 279 return this.vendorItems_; |
| 280 }, |
| 281 |
| 270 /** | 282 /** |
| 271 * @return {!print_preview.MeasurementSystem} Measurement system of the | 283 * @return {!print_preview.MeasurementSystem} Measurement system of the |
| 272 * local system. | 284 * local system. |
| 273 */ | 285 */ |
| 274 get measurementSystem() { | 286 get measurementSystem() { |
| 275 return this.measurementSystem_; | 287 return this.measurementSystem_; |
| 276 }, | 288 }, |
| 277 | 289 |
| 278 /** | 290 /** |
| 279 * Initializes the print ticket store. Dispatches an INITIALIZE event. | 291 * Initializes the print ticket store. Dispatches an INITIALIZE event. |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 328 if (this.appState_.hasField( | 340 if (this.appState_.hasField( |
| 329 print_preview.AppState.Field.IS_COLLATE_ENABLED)) { | 341 print_preview.AppState.Field.IS_COLLATE_ENABLED)) { |
| 330 this.collate_.updateValue(this.appState_.getField( | 342 this.collate_.updateValue(this.appState_.getField( |
| 331 print_preview.AppState.Field.IS_COLLATE_ENABLED)); | 343 print_preview.AppState.Field.IS_COLLATE_ENABLED)); |
| 332 } | 344 } |
| 333 if (this.appState_.hasField( | 345 if (this.appState_.hasField( |
| 334 print_preview.AppState.Field.IS_CSS_BACKGROUND_ENABLED)) { | 346 print_preview.AppState.Field.IS_CSS_BACKGROUND_ENABLED)) { |
| 335 this.cssBackground_.updateValue(this.appState_.getField( | 347 this.cssBackground_.updateValue(this.appState_.getField( |
| 336 print_preview.AppState.Field.IS_CSS_BACKGROUND_ENABLED)); | 348 print_preview.AppState.Field.IS_CSS_BACKGROUND_ENABLED)); |
| 337 } | 349 } |
| 350 if (this.appState_.hasField( |
| 351 print_preview.AppState.Field.VENDOR_OPTIONS)) { |
| 352 this.vendorItems_.updateValue(this.appState_.getField( |
| 353 print_preview.AppState.Field.VENDOR_OPTIONS)); |
| 354 } |
| 338 }, | 355 }, |
| 339 | 356 |
| 340 /** | 357 /** |
| 341 * @return {boolean} {@code true} if the stored print ticket is valid, | 358 * @return {boolean} {@code true} if the stored print ticket is valid, |
| 342 * {@code false} otherwise. | 359 * {@code false} otherwise. |
| 343 */ | 360 */ |
| 344 isTicketValid: function() { | 361 isTicketValid: function() { |
| 345 return this.isTicketValidForPreview() && | 362 return this.isTicketValidForPreview() && |
| 346 (!this.copies_.isCapabilityAvailable() || this.copies_.isValid()) && | 363 (!this.copies_.isCapabilityAvailable() || this.copies_.isValid()) && |
| 347 (!this.pageRange_.isCapabilityAvailable() || | 364 (!this.pageRange_.isCapabilityAvailable() || |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 401 height_microns: value.height_microns, | 418 height_microns: value.height_microns, |
| 402 is_continuous_feed: value.is_continuous_feed, | 419 is_continuous_feed: value.is_continuous_feed, |
| 403 vendor_id: value.vendor_id | 420 vendor_id: value.vendor_id |
| 404 }; | 421 }; |
| 405 } | 422 } |
| 406 if (this.landscape.isCapabilityAvailable() && | 423 if (this.landscape.isCapabilityAvailable() && |
| 407 this.landscape.isUserEdited()) { | 424 this.landscape.isUserEdited()) { |
| 408 cjt.print.page_orientation = | 425 cjt.print.page_orientation = |
| 409 {type: this.landscape.getValue() ? 'LANDSCAPE' : 'PORTRAIT'}; | 426 {type: this.landscape.getValue() ? 'LANDSCAPE' : 'PORTRAIT'}; |
| 410 } | 427 } |
| 428 if (this.vendorItems.isCapabilityAvailable() && |
| 429 this.vendorItems.isUserEdited()) { |
| 430 var items = this.vendorItems.ticketItems; |
| 431 cjt.print.vendor_ticket_item = []; |
| 432 for (var itemId in items) { |
| 433 if (items.hasOwnProperty(itemId)) { |
| 434 cjt.print.vendor_ticket_item.push( |
| 435 {id: itemId, value: items[itemId]}); |
| 436 } |
| 437 } |
| 438 } |
| 411 return JSON.stringify(cjt); | 439 return JSON.stringify(cjt); |
| 412 }, | 440 }, |
| 413 | 441 |
| 414 /** | 442 /** |
| 415 * Adds event listeners for the print ticket store. | 443 * Adds event listeners for the print ticket store. |
| 416 * @private | 444 * @private |
| 417 */ | 445 */ |
| 418 addEventListeners_: function() { | 446 addEventListeners_: function() { |
| 419 this.tracker_.add( | 447 this.tracker_.add( |
| 420 this.destinationStore_, | 448 this.destinationStore_, |
| (...skipping 28 matching lines...) Expand all Loading... |
| 449 */ | 477 */ |
| 450 onDestinationSelect_: function() { | 478 onDestinationSelect_: function() { |
| 451 // Reset user selection for certain ticket items. | 479 // Reset user selection for certain ticket items. |
| 452 if (this.capabilitiesHolder_.get() != null) { | 480 if (this.capabilitiesHolder_.get() != null) { |
| 453 this.customMargins_.updateValue(null); | 481 this.customMargins_.updateValue(null); |
| 454 if (this.marginsType_.getValue() == | 482 if (this.marginsType_.getValue() == |
| 455 print_preview.ticket_items.MarginsType.Value.CUSTOM) { | 483 print_preview.ticket_items.MarginsType.Value.CUSTOM) { |
| 456 this.marginsType_.updateValue( | 484 this.marginsType_.updateValue( |
| 457 print_preview.ticket_items.MarginsType.Value.DEFAULT); | 485 print_preview.ticket_items.MarginsType.Value.DEFAULT); |
| 458 } | 486 } |
| 487 this.vendorItems_.updateValue({}); |
| 459 } | 488 } |
| 460 }, | 489 }, |
| 461 | 490 |
| 462 /** | 491 /** |
| 463 * Called when the capabilities of the selected destination are ready. | 492 * Called when the capabilities of the selected destination are ready. |
| 464 * @private | 493 * @private |
| 465 */ | 494 */ |
| 466 onSelectedDestinationCapabilitiesReady_: function() { | 495 onSelectedDestinationCapabilitiesReady_: function() { |
| 467 var caps = this.destinationStore_.selectedDestination.capabilities; | 496 var caps = this.destinationStore_.selectedDestination.capabilities; |
| 468 var isFirstUpdate = this.capabilitiesHolder_.get() == null; | 497 var isFirstUpdate = this.capabilitiesHolder_.get() == null; |
| (...skipping 15 matching lines...) Expand all Loading... |
| 484 onDocumentInfoChange_: function() { | 513 onDocumentInfoChange_: function() { |
| 485 cr.dispatchSimpleEvent(this, PrintTicketStore.EventType.DOCUMENT_CHANGE); | 514 cr.dispatchSimpleEvent(this, PrintTicketStore.EventType.DOCUMENT_CHANGE); |
| 486 }, | 515 }, |
| 487 }; | 516 }; |
| 488 | 517 |
| 489 // Export | 518 // Export |
| 490 return { | 519 return { |
| 491 PrintTicketStore: PrintTicketStore | 520 PrintTicketStore: PrintTicketStore |
| 492 }; | 521 }; |
| 493 }); | 522 }); |
| OLD | NEW |