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; |