1a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck// Copyright (c) 2011 The Chromium Authors. All rights reserved. 2a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck// Use of this source code is governed by a BSD-style license that can be 3a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck// found in the LICENSE file. 4a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck 5a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck#include "ui/gfx/point.h" 6a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck 7a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck#if defined(OS_WIN) 8a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck#include <windows.h> 9a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck#endif 10a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck 11a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck#include "base/stringprintf.h" 12a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck 13a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Recknamespace gfx { 14a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck 15a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John ReckPoint::Point() : x_(0), y_(0) { 16a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck} 17a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck 18a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John ReckPoint::Point(int x, int y) : x_(x), y_(y) { 19a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck} 20a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck 21a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck#if defined(OS_WIN) 22a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John ReckPoint::Point(DWORD point) { 23a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck POINTS points = MAKEPOINTS(point); 24a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck x_ = points.x; 25a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck y_ = points.y; 26a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck} 27a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck 28a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John ReckPoint::Point(const POINT& point) : x_(point.x), y_(point.y) { 29a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck} 30a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck 31a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John ReckPoint& Point::operator=(const POINT& point) { 32a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck x_ = point.x; 33a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck y_ = point.y; 34a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck return *this; 35a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck} 36a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck 37a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John ReckPOINT Point::ToPOINT() const { 38a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck POINT p; 39a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck p.x = x_; 40a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck p.y = y_; 41a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck return p; 42a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck} 43a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck#elif defined(OS_MACOSX) 44a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John ReckPoint::Point(const CGPoint& point) : x_(point.x), y_(point.y) { 45a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck} 46a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck 47a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John ReckCGPoint Point::ToCGPoint() const { 48a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck return CGPointMake(x_, y_); 49a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck} 50a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck#endif 51a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck 52a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reckstd::string Point::ToString() const { 53a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck return base::StringPrintf("%d,%d", x_, y_); 54a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck} 55a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck 56a7dee89fba4aaa5f0be152cfc7c7b9b5cff98d51John Reck} // namespace gfx 57