| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "ui/views/controls/resize_area.h" | 5 #include "ui/views/controls/resize_area.h" |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "ui/accessibility/ax_view_state.h" | 8 #include "ui/accessibility/ax_view_state.h" |
| 9 #include "ui/base/cursor/cursor.h" |
| 9 #include "ui/base/resource/resource_bundle.h" | 10 #include "ui/base/resource/resource_bundle.h" |
| 10 #include "ui/views/controls/resize_area_delegate.h" | 11 #include "ui/views/controls/resize_area_delegate.h" |
| 11 | 12 |
| 12 #if defined(USE_AURA) | |
| 13 #include "ui/base/cursor/cursor.h" | |
| 14 #endif | |
| 15 | |
| 16 namespace views { | 13 namespace views { |
| 17 | 14 |
| 18 const char ResizeArea::kViewClassName[] = "ResizeArea"; | 15 const char ResizeArea::kViewClassName[] = "ResizeArea"; |
| 19 | 16 |
| 20 //////////////////////////////////////////////////////////////////////////////// | 17 //////////////////////////////////////////////////////////////////////////////// |
| 21 // ResizeArea | 18 // ResizeArea |
| 22 | 19 |
| 23 ResizeArea::ResizeArea(ResizeAreaDelegate* delegate) | 20 ResizeArea::ResizeArea(ResizeAreaDelegate* delegate) |
| 24 : delegate_(delegate), | 21 : delegate_(delegate), |
| 25 initial_position_(0) { | 22 initial_position_(0) { |
| 26 } | 23 } |
| 27 | 24 |
| 28 ResizeArea::~ResizeArea() { | 25 ResizeArea::~ResizeArea() { |
| 29 } | 26 } |
| 30 | 27 |
| 31 const char* ResizeArea::GetClassName() const { | 28 const char* ResizeArea::GetClassName() const { |
| 32 return kViewClassName; | 29 return kViewClassName; |
| 33 } | 30 } |
| 34 | 31 |
| 35 gfx::NativeCursor ResizeArea::GetCursor(const ui::MouseEvent& event) { | 32 gfx::NativeCursor ResizeArea::GetCursor(const ui::MouseEvent& event) { |
| 36 if (!enabled()) | 33 return enabled() ? ui::kCursorEastWestResize : gfx::kNullCursor; |
| 37 return gfx::kNullCursor; | |
| 38 #if defined(USE_AURA) | |
| 39 return ui::kCursorEastWestResize; | |
| 40 #elif defined(OS_WIN) | |
| 41 static HCURSOR g_resize_cursor = LoadCursor(NULL, IDC_SIZEWE); | |
| 42 return g_resize_cursor; | |
| 43 #endif | |
| 44 } | 34 } |
| 45 | 35 |
| 46 bool ResizeArea::OnMousePressed(const ui::MouseEvent& event) { | 36 bool ResizeArea::OnMousePressed(const ui::MouseEvent& event) { |
| 47 if (!event.IsOnlyLeftMouseButton()) | 37 if (!event.IsOnlyLeftMouseButton()) |
| 48 return false; | 38 return false; |
| 49 | 39 |
| 50 // The resize area obviously will move once you start dragging so we need to | 40 // The resize area obviously will move once you start dragging so we need to |
| 51 // convert coordinates to screen coordinates so that we don't lose our | 41 // convert coordinates to screen coordinates so that we don't lose our |
| 52 // bearings. | 42 // bearings. |
| 53 gfx::Point point(event.x(), 0); | 43 gfx::Point point(event.x(), 0); |
| (...skipping 25 matching lines...) Expand all Loading... |
| 79 | 69 |
| 80 void ResizeArea::ReportResizeAmount(int resize_amount, bool last_update) { | 70 void ResizeArea::ReportResizeAmount(int resize_amount, bool last_update) { |
| 81 gfx::Point point(resize_amount, 0); | 71 gfx::Point point(resize_amount, 0); |
| 82 View::ConvertPointToScreen(this, &point); | 72 View::ConvertPointToScreen(this, &point); |
| 83 resize_amount = point.x() - initial_position_; | 73 resize_amount = point.x() - initial_position_; |
| 84 delegate_->OnResize(base::i18n::IsRTL() ? -resize_amount : resize_amount, | 74 delegate_->OnResize(base::i18n::IsRTL() ? -resize_amount : resize_amount, |
| 85 last_update); | 75 last_update); |
| 86 } | 76 } |
| 87 | 77 |
| 88 } // namespace views | 78 } // namespace views |
| OLD | NEW |