1// Copyright (c) 2011 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#include "ui/gfx/point.h" 6 7#if defined(OS_WIN) 8#include <windows.h> 9#endif 10 11#include "base/stringprintf.h" 12 13namespace gfx { 14 15Point::Point() : x_(0), y_(0) { 16} 17 18Point::Point(int x, int y) : x_(x), y_(y) { 19} 20 21#if defined(OS_WIN) 22Point::Point(DWORD point) { 23 POINTS points = MAKEPOINTS(point); 24 x_ = points.x; 25 y_ = points.y; 26} 27 28Point::Point(const POINT& point) : x_(point.x), y_(point.y) { 29} 30 31Point& Point::operator=(const POINT& point) { 32 x_ = point.x; 33 y_ = point.y; 34 return *this; 35} 36 37POINT Point::ToPOINT() const { 38 POINT p; 39 p.x = x_; 40 p.y = y_; 41 return p; 42} 43#elif defined(OS_MACOSX) 44Point::Point(const CGPoint& point) : x_(point.x), y_(point.y) { 45} 46 47CGPoint Point::ToCGPoint() const { 48 return CGPointMake(x_, y_); 49} 50#endif 51 52std::string Point::ToString() const { 53 return base::StringPrintf("%d,%d", x_, y_); 54} 55 56} // namespace gfx 57