Chromium Code Reviews| Index: chrome/browser/resources/print_preview/data/ticket_items/page_range.js |
| diff --git a/chrome/browser/resources/print_preview/data/ticket_items/page_range.js b/chrome/browser/resources/print_preview/data/ticket_items/page_range.js |
| index 2fc715217f0b56c82e52de1eafb0d87717850f69..d5b2b6ab839eff2d7e6c68b7902b2538cd989bb2 100644 |
| --- a/chrome/browser/resources/print_preview/data/ticket_items/page_range.js |
| +++ b/chrome/browser/resources/print_preview/data/ticket_items/page_range.js |
| @@ -24,13 +24,21 @@ cr.define('print_preview.ticket_items', function() { |
| this.documentInfo_ = documentInfo; |
| }; |
| + /** |
| + * Impossibly large page number. |
| + * @type {number} |
| + * @const |
| + * @private |
| + */ |
| + PageRange.MAX_PAGE_NUMBER_ = 1000000000; |
| + |
| PageRange.prototype = { |
| __proto__: print_preview.ticket_items.TicketItem.prototype, |
| /** @override */ |
| wouldValueBeValid: function(value) { |
| - return value == '' || |
| - isPageRangeTextValid(value, this.documentInfo_.pageCount); |
| + return null != pageRangeTextToPageRanges(value, |
| + this.documentInfo_.pageCount); |
| }, |
| /** |
| @@ -38,13 +46,9 @@ cr.define('print_preview.ticket_items', function() { |
| * page range string. |
| */ |
| getPageNumberSet: function() { |
|
Toscano
2013/02/12 01:39:05
Let's get rid of this method and expose only getPa
|
| - if (this.isValid()) { |
| - return print_preview.PageNumberSet.parse( |
| - this.getValue(), this.documentInfo_.pageCount); |
| - } else { |
| - return print_preview.PageNumberSet.parse( |
| - this.getDefaultValueInternal(), this.documentInfo_.pageCount); |
| - } |
| + var pageNumberList = pageRangeTextToPageList( |
| + this.getValue(), this.documentInfo_.pageCount); |
| + return new print_preview.PageNumberSet(pageNumberList); |
| }, |
| /** @override */ |
| @@ -60,7 +64,28 @@ cr.define('print_preview.ticket_items', function() { |
| /** @override */ |
| getCapabilityNotAvailableValueInternal: function() { |
| return ''; |
| - } |
| + }, |
| + |
| + /** |
| + * @return {!Array.<object.<{from: number, to: number}>>} A list of page |
| + * ranges. |
| + */ |
| + getPageRanges: function() { |
| + var page_ranges = pageRangeTextToPageRanges(this.getValue()); |
| + return page_ranges ? page_ranges : []; |
| + }, |
| + |
| + /** |
| + * @return {!Array.<object.<{from: number, to: number}>>} A list of page |
| + * ranges suitable for use in the native layer. |
| + * TODO(vitalybuka): this should be removed when native layer switched to |
| + * page ranges. |
| + */ |
| + getDocumentPageRanges: function() { |
|
Toscano
2013/02/12 01:39:05
We shouldn't need this one. A PageNumberSet produc
Vitaly Buka (NO REVIEWS)
2013/02/12 01:45:30
we still pass intervals to native code
On 2013/0
|
| + var page_ranges = pageRangeTextToPageRanges(this.getValue(), |
| + this.documentInfo_.pageCount); |
| + return page_ranges ? page_ranges : []; |
| + }, |
| }; |
| // Export |