Chromium Code Reviews| Index: chrome/browser/resources/print_preview/margin_settings.js |
| diff --git a/chrome/browser/resources/print_preview/margin_settings.js b/chrome/browser/resources/print_preview/margin_settings.js |
| index a81606cc01136a9242378ab1aaa424482acf698c..1155f95294f25a2ac8ac294011e4fb5c0f3b20e0 100644 |
| --- a/chrome/browser/resources/print_preview/margin_settings.js |
| +++ b/chrome/browser/resources/print_preview/margin_settings.js |
| @@ -151,13 +151,19 @@ cr.define('print_preview', function() { |
| MarginSettings.POINTS_PER_INCH = 72; |
| // Minimum allowed distance in points between top-bottom, left-right margins. |
| MarginSettings.MINIMUM_MARGINS_DISTANCE = 36; |
| - // Margin list values. |
| + // Margin list values. Matches enum MarginType in |
| + // printing/print_job_constants.h. |
| MarginSettings.MARGINS_VALUE_DEFAULT = 0; |
| MarginSettings.MARGINS_VALUE_NO_MARGINS = 1; |
| - MarginSettings.MARGINS_VALUE_CUSTOM = 2; |
| - MarginSettings.MARGINS_VALUE_MINIMUM = 3; |
| - // Default Margins option index. |
| - MarginSettings.DEFAULT_MARGINS_OPTION_INDEX = 0; |
| + MarginSettings.MARGINS_VALUE_MINIMUM = 2; |
| + MarginSettings.MARGINS_VALUE_CUSTOM = 3; |
| + |
| + // Indices in the dropdown correspoding to margins type. |
| + MarginSettings.OPTION_INDEX_DEFAULT = 0; |
| + MarginSettings.OPTION_INDEX_NO_MARGINS = 1; |
| + MarginSettings.OPTION_INDEX_MINIMUM = 2; |
| + MarginSettings.OPTION_INDEX_CUSTOM = 3; |
| + |
| // Group name corresponding to the top margin. |
| MarginSettings.TOP_GROUP = 'top'; |
| // Group name corresponding to the left margin. |
| @@ -185,6 +191,20 @@ cr.define('print_preview', function() { |
| MarginSettings.useMetricSystem = measurementSystem == 0; |
| }; |
| + /** |
| + * @type {Object} Maps margin type values to indices within the drop-down |
| + * margin list. |
| + */ |
| + MarginSettings.valueToIndex = {}; |
|
kmadhusu
2011/11/01 17:17:57
Is there any specific reason to create this object
dpapad
2011/11/01 17:29:14
It happens to be the same, but this is not a const
|
| + MarginSettings.valueToIndex[MarginSettings.MARGINS_VALUE_DEFAULT] = |
| + MarginSettings.OPTION_INDEX_DEFAULT; |
| + MarginSettings.valueToIndex[MarginSettings.MARGINS_VALUE_NO_MARGINS] = |
| + MarginSettings.OPTION_INDEX_NO_MARGINS; |
| + MarginSettings.valueToIndex[MarginSettings.MARGINS_VALUE_MINIMUM] = |
| + MarginSettings.OPTION_INDEX_MINIMUM; |
| + MarginSettings.valueToIndex[MarginSettings.MARGINS_VALUE_CUSTOM] = |
| + MarginSettings.OPTION_INDEX_CUSTOM; |
| + |
| cr.addSingletonGetter(MarginSettings); |
| MarginSettings.prototype = { |
| @@ -210,6 +230,13 @@ cr.define('print_preview', function() { |
| }, |
| /** |
| + * @param {number} The index to be selected within |this.marginList_|. |
| + */ |
| + set selectedMarginsIndex(index) { |
| + this.marginList_.selectedIndex = index; |
| + }, |
| + |
| + /** |
| * @return {number} The total width of the plugin in points. |
| */ |
| get totalWidthInPoints() { |
| @@ -596,7 +623,7 @@ cr.define('print_preview', function() { |
| resetMarginsIfNeeded: function() { |
| if (this.isCustomMarginsSelected()) { |
| this.marginList_.options[ |
| - MarginSettings.DEFAULT_MARGINS_OPTION_INDEX].selected = true; |
| + MarginSettings.OPTION_INDEX_DEFAULT].selected = true; |
| this.removeCustomMarginEventListeners_(); |
| this.forceDisplayingMarginLines_ = true; |
| this.lastSelectedOption_ = MarginSettings.MARGINS_VALUE_DEFAULT; |