| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 #ifndef VIEWS_WIDGET_WIDGET_WIN_H_ | 5 #ifndef VIEWS_WIDGET_WIDGET_WIN_H_ |
| 6 #define VIEWS_WIDGET_WIDGET_WIN_H_ | 6 #define VIEWS_WIDGET_WIDGET_WIN_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include <atlbase.h> | 9 #include <atlbase.h> |
| 10 #include <atlapp.h> | 10 #include <atlapp.h> |
| 11 #include <atlcrack.h> | 11 #include <atlcrack.h> |
| 12 #include <atlmisc.h> | 12 #include <atlmisc.h> |
| 13 | 13 |
| 14 #include <string> | 14 #include <string> |
| 15 #include <vector> | 15 #include <vector> |
| 16 | 16 |
| 17 #include "base/message_loop.h" | 17 #include "base/message_loop.h" |
| 18 #include "base/scoped_comptr_win.h" | 18 #include "base/scoped_comptr_win.h" |
| 19 #include "base/scoped_vector.h" | 19 #include "base/scoped_vector.h" |
| 20 #include "gfx/window_impl.h" | 20 #include "gfx/window_impl.h" |
| 21 #include "views/focus/focus_manager.h" | 21 #include "views/focus/focus_manager.h" |
| 22 #include "views/layout_manager.h" | 22 #include "views/layout_manager.h" |
| 23 #include "views/widget/widget.h" | 23 #include "views/widget/widget.h" |
| 24 | 24 |
| 25 namespace app { | 25 namespace app { |
| 26 namespace win { | 26 class ViewProp; |
| 27 class ScopedProp; | |
| 28 } | |
| 29 } | 27 } |
| 30 | 28 |
| 31 namespace gfx { | 29 namespace gfx { |
| 32 class CanvasSkia; | 30 class CanvasSkia; |
| 33 class Rect; | 31 class Rect; |
| 34 } | 32 } |
| 35 | 33 |
| 36 namespace views { | 34 namespace views { |
| 37 | 35 |
| 38 class DefaultThemeProvider; | 36 class DefaultThemeProvider; |
| (...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 227 virtual Widget* GetRootWidget() const; | 225 virtual Widget* GetRootWidget() const; |
| 228 virtual bool IsVisible() const; | 226 virtual bool IsVisible() const; |
| 229 virtual bool IsActive() const; | 227 virtual bool IsActive() const; |
| 230 virtual bool IsAccessibleWidget() const; | 228 virtual bool IsAccessibleWidget() const; |
| 231 virtual TooltipManager* GetTooltipManager(); | 229 virtual TooltipManager* GetTooltipManager(); |
| 232 virtual void GenerateMousePressedForView(View* view, | 230 virtual void GenerateMousePressedForView(View* view, |
| 233 const gfx::Point& point); | 231 const gfx::Point& point); |
| 234 virtual bool GetAccelerator(int cmd_id, menus::Accelerator* accelerator); | 232 virtual bool GetAccelerator(int cmd_id, menus::Accelerator* accelerator); |
| 235 virtual Window* GetWindow(); | 233 virtual Window* GetWindow(); |
| 236 virtual const Window* GetWindow() const; | 234 virtual const Window* GetWindow() const; |
| 237 virtual void SetNativeWindowProperty(const std::wstring& name, | 235 virtual void SetNativeWindowProperty(const char* name, void* value); |
| 238 void* value); | 236 virtual void* GetNativeWindowProperty(const char* name); |
| 239 virtual void* GetNativeWindowProperty(const std::wstring& name); | |
| 240 virtual ThemeProvider* GetThemeProvider() const; | 237 virtual ThemeProvider* GetThemeProvider() const; |
| 241 virtual ThemeProvider* GetDefaultThemeProvider() const; | 238 virtual ThemeProvider* GetDefaultThemeProvider() const; |
| 242 virtual FocusManager* GetFocusManager(); | 239 virtual FocusManager* GetFocusManager(); |
| 243 virtual void ViewHierarchyChanged(bool is_add, View *parent, | 240 virtual void ViewHierarchyChanged(bool is_add, View *parent, |
| 244 View *child); | 241 View *child); |
| 245 virtual bool ContainsNativeView(gfx::NativeView native_view); | 242 virtual bool ContainsNativeView(gfx::NativeView native_view); |
| 246 | 243 |
| 247 // Overridden from MessageLoop::Observer: | 244 // Overridden from MessageLoop::Observer: |
| 248 void WillProcessMessage(const MSG& msg); | 245 void WillProcessMessage(const MSG& msg); |
| 249 virtual void DidProcessMessage(const MSG& msg); | 246 virtual void DidProcessMessage(const MSG& msg); |
| (...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 480 // Whether or not we have capture the mouse. | 477 // Whether or not we have capture the mouse. |
| 481 bool has_capture_; | 478 bool has_capture_; |
| 482 | 479 |
| 483 // If true, the mouse is currently down. | 480 // If true, the mouse is currently down. |
| 484 bool is_mouse_down_; | 481 bool is_mouse_down_; |
| 485 | 482 |
| 486 // Are a subclass of WindowWin? | 483 // Are a subclass of WindowWin? |
| 487 bool is_window_; | 484 bool is_window_; |
| 488 | 485 |
| 489 private: | 486 private: |
| 490 typedef ScopedVector<app::win::ScopedProp> ScopedProps; | 487 typedef ScopedVector<app::ViewProp> ViewProps; |
| 491 | 488 |
| 492 // Implementation of GetWindow. Ascends the parents of |hwnd| returning the | 489 // Implementation of GetWindow. Ascends the parents of |hwnd| returning the |
| 493 // first ancestor that is a Window. | 490 // first ancestor that is a Window. |
| 494 static Window* GetWindowImpl(HWND hwnd); | 491 static Window* GetWindowImpl(HWND hwnd); |
| 495 | 492 |
| 496 // Resize the bitmap used to contain the contents of the layered window. This | 493 // Resize the bitmap used to contain the contents of the layered window. This |
| 497 // recreates the entire bitmap. | 494 // recreates the entire bitmap. |
| 498 void SizeContents(const gfx::Size& window_size); | 495 void SizeContents(const gfx::Size& window_size); |
| 499 | 496 |
| 500 // Paint into a DIB and then update the layered window with its contents. | 497 // Paint into a DIB and then update the layered window with its contents. |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 588 static const int kMaxAccessibilityViewEvents = 20; | 585 static const int kMaxAccessibilityViewEvents = 20; |
| 589 | 586 |
| 590 // A vector used to access views for which we have sent notifications to | 587 // A vector used to access views for which we have sent notifications to |
| 591 // accessibility clients. It is used as a circular queue. | 588 // accessibility clients. It is used as a circular queue. |
| 592 std::vector<View*> accessibility_view_events_; | 589 std::vector<View*> accessibility_view_events_; |
| 593 | 590 |
| 594 // The current position of the view events vector. When incrementing, | 591 // The current position of the view events vector. When incrementing, |
| 595 // we always mod this value with the max view events above . | 592 // we always mod this value with the max view events above . |
| 596 int accessibility_view_events_index_; | 593 int accessibility_view_events_index_; |
| 597 | 594 |
| 598 ScopedProps props_; | 595 ViewProps props_; |
| 599 | 596 |
| 600 DISALLOW_COPY_AND_ASSIGN(WidgetWin); | 597 DISALLOW_COPY_AND_ASSIGN(WidgetWin); |
| 601 }; | 598 }; |
| 602 | 599 |
| 603 } // namespace views | 600 } // namespace views |
| 604 | 601 |
| 605 #endif // VIEWS_WIDGET_WIDGET_WIN_H_ | 602 #endif // VIEWS_WIDGET_WIDGET_WIN_H_ |
| OLD | NEW |