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 |