Tizen 2.1 base
[framework/osp/uifw.git] / src / graphics / FGrpDimension.cpp
1 //
2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Flora License, Version 1.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 //     http://floralicense.org/license/
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an AS IS BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17
18 /*
19  * @file        FGrpDimension.cpp
20  * @brief       This is the implementation file for Dimension class.
21  *
22  * This file contains implementation of Point class.
23  *
24  */
25
26 #include <FGrpDimension.h>
27
28
29 namespace Tizen { namespace Graphics
30 {
31
32 Dimension::Dimension(void)
33         : width(0)
34         , height(0)
35         , __pImpl(null)
36 {
37 }
38
39 Dimension::Dimension(const Dimension & rhs)
40         : width(rhs.width)
41         , height(rhs.height)
42         , __pImpl(null)
43 {
44 }
45
46 Dimension::Dimension(int width_, int height_)
47         : width(width_)
48         , height(height_)
49         , __pImpl(null)
50 {
51 }
52
53 Dimension::~Dimension(void)
54 {
55 }
56
57 Dimension&
58 Dimension::operator= (const Dimension & rhs)
59 {
60         if (this == &rhs)
61         {
62                 return *this;
63         }
64
65         this->width = rhs.width;
66         this->height = rhs.height;
67         this->__pImpl = null;
68
69         return *this;
70 }
71
72 bool
73 Dimension::operator ==(const Dimension& rhs) const
74 {
75         return ((this->width == rhs.width && this->height == rhs.height) ? true : false);
76 }
77
78 bool
79 Dimension::operator !=(const Dimension& rhs) const
80 {
81         return (!operator ==(rhs));
82 }
83
84 bool
85 Dimension::Equals(const Tizen::Base::Object& rhs) const
86 {
87         if (&rhs == null)
88         {
89                 return false;
90         }
91
92         const Dimension* pDim = dynamic_cast <const Dimension*>(&rhs);
93
94         if (pDim == null)
95         {
96                 return false;
97         }
98
99         return (*this == *pDim);
100 }
101
102 int
103 Dimension::GetHashCode(void) const
104 {
105         int bits = this->width;
106
107         bits ^= this->height * 31;
108
109         return (((int) bits) ^ ((int) (bits >> 16)));
110 }
111
112 void
113 Dimension::SetSize(int width, int height)
114 {
115         this->width = width;
116         this->height = height;
117 }
118
119 }} // Tizen::Graphics