| OLD | NEW | 
 | (Empty) | 
|    1 /* |  | 
|    2  * Copyright (C) 2009 Google Inc. All rights reserved. |  | 
|    3  * |  | 
|    4  * Redistribution and use in source and binary forms, with or without |  | 
|    5  * modification, are permitted provided that the following conditions are |  | 
|    6  * met: |  | 
|    7  * |  | 
|    8  *     * Redistributions of source code must retain the above copyright |  | 
|    9  * notice, this list of conditions and the following disclaimer. |  | 
|   10  *     * Redistributions in binary form must reproduce the above |  | 
|   11  * copyright notice, this list of conditions and the following disclaimer |  | 
|   12  * in the documentation and/or other materials provided with the |  | 
|   13  * distribution. |  | 
|   14  *     * Neither the name of Google Inc. nor the names of its |  | 
|   15  * contributors may be used to endorse or promote products derived from |  | 
|   16  * this software without specific prior written permission. |  | 
|   17  * |  | 
|   18  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |  | 
|   19  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |  | 
|   20  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |  | 
|   21  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |  | 
|   22  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |  | 
|   23  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |  | 
|   24  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |  | 
|   25  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |  | 
|   26  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |  | 
|   27  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |  | 
|   28  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |  | 
|   29  */ |  | 
|   30  |  | 
|   31 #ifndef WebSize_h |  | 
|   32 #define WebSize_h |  | 
|   33  |  | 
|   34 #include "WebCommon.h" |  | 
|   35  |  | 
|   36 #if WEBKIT_IMPLEMENTATION |  | 
|   37 #include "IntSize.h" |  | 
|   38 #else |  | 
|   39 #include <base/gfx/rect.h> |  | 
|   40 #endif |  | 
|   41  |  | 
|   42 namespace WebKit { |  | 
|   43  |  | 
|   44 struct WebSize { |  | 
|   45     int width; |  | 
|   46     int height; |  | 
|   47  |  | 
|   48     bool isEmpty() const { return width <= 0 || height <= 0; } |  | 
|   49  |  | 
|   50     WebSize() |  | 
|   51         : width(0) |  | 
|   52         , height(0) |  | 
|   53     { |  | 
|   54     } |  | 
|   55  |  | 
|   56     WebSize(int width, int height) |  | 
|   57         : width(width) |  | 
|   58         , height(height) |  | 
|   59     { |  | 
|   60     } |  | 
|   61  |  | 
|   62 #if WEBKIT_IMPLEMENTATION |  | 
|   63     WebSize(const WebCore::IntSize& s) |  | 
|   64         : width(s.width()) |  | 
|   65         , height(s.height()) |  | 
|   66     { |  | 
|   67     } |  | 
|   68  |  | 
|   69     WebSize& operator=(const WebCore::IntSize& s) |  | 
|   70     { |  | 
|   71         width = s.width(); |  | 
|   72         height = s.height(); |  | 
|   73         return *this; |  | 
|   74     } |  | 
|   75  |  | 
|   76     operator WebCore::IntSize() const |  | 
|   77     { |  | 
|   78         return WebCore::IntSize(width, height); |  | 
|   79     } |  | 
|   80 #else |  | 
|   81     WebSize(const gfx::Size& s) |  | 
|   82         : width(s.width()) |  | 
|   83         , height(s.height()) |  | 
|   84     { |  | 
|   85     } |  | 
|   86  |  | 
|   87     WebSize& operator=(const gfx::Size& s) |  | 
|   88     { |  | 
|   89         width = s.width(); |  | 
|   90         height = s.height(); |  | 
|   91         return *this; |  | 
|   92     } |  | 
|   93  |  | 
|   94     operator gfx::Size() const |  | 
|   95     { |  | 
|   96         return gfx::Size(width, height); |  | 
|   97     } |  | 
|   98 #endif |  | 
|   99 }; |  | 
|  100  |  | 
|  101 inline bool operator==(const WebSize& a, const WebSize& b) |  | 
|  102 { |  | 
|  103     return a.width == b.width && a.height == b.height; |  | 
|  104 } |  | 
|  105  |  | 
|  106 inline bool operator!=(const WebSize& a, const WebSize& b) |  | 
|  107 { |  | 
|  108     return !(a == b); |  | 
|  109 } |  | 
|  110  |  | 
|  111 } // namespace WebKit |  | 
|  112  |  | 
|  113 #endif |  | 
| OLD | NEW |