- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / browser / resources / print_preview / data / size.js
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
3 // found in the LICENSE file.
4
5 cr.define('print_preview', function() {
6   'use strict';
7
8   /**
9    * Immutable two-dimensional size.
10    * @param {number} width Width of the size.
11    * @param {number} height Height of the size.
12    * @constructor
13    */
14   function Size(width, height) {
15     /**
16      * Width of the size.
17      * @type {number}
18      * @private
19      */
20     this.width_ = width;
21
22     /**
23      * Height of the size.
24      * @type {number}
25      * @private
26      */
27     this.height_ = height;
28   };
29
30   Size.prototype = {
31     /** @return {number} Width of the size. */
32     get width() {
33       return this.width_;
34     },
35
36     /** @return {number} Height of the size. */
37     get height() {
38       return this.height_;
39     },
40
41     /**
42      * @param {print_preview.Size} other Other size object to compare against.
43      * @return {boolean} Whether this size object is equal to another.
44      */
45     equals: function(other) {
46       return other != null &&
47           this.width_ == other.width_ &&
48           this.height_ == other.height_;
49     }
50   };
51
52   // Export
53   return {
54     Size: Size
55   };
56 });