OLD | NEW |
---|---|
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 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 | 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 CHROME_BROWSER_UI_PANELS_NATIVE_PANEL_H_ | 5 #ifndef CHROME_BROWSER_UI_PANELS_NATIVE_PANEL_H_ |
6 #define CHROME_BROWSER_UI_PANELS_NATIVE_PANEL_H_ | 6 #define CHROME_BROWSER_UI_PANELS_NATIVE_PANEL_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include "chrome/browser/ui/panels/panel.h" | 9 #include "chrome/browser/ui/panels/panel.h" |
10 #include "ui/gfx/native_widget_types.h" | 10 #include "ui/gfx/native_widget_types.h" |
11 | 11 |
12 class FindBar; | 12 class FindBar; |
13 class NativePanelTesting; | 13 class NativePanelTesting; |
14 class Panel; | |
jianli
2011/08/09 21:10:23
We already include panel.h. I think this is remove
prasadt
2011/08/09 23:05:04
Done.
| |
14 | 15 |
15 namespace gfx { | 16 namespace gfx { |
16 class Rect; | 17 class Rect; |
17 } // namespace gfx | 18 } // namespace gfx |
18 | 19 |
19 // An interface for a class that implements platform-specific behavior for panel | 20 // An interface for a class that implements platform-specific behavior for panel |
20 // windows. We use this interface for two reasons: | 21 // windows. We use this interface for two reasons: |
21 // 1. We don't want to use BrowserWindow as the interface between shared panel | 22 // 1. We don't want to use BrowserWindow as the interface between shared panel |
22 // code and platform-specific code. BrowserWindow has a lot of methods, most | 23 // code and platform-specific code. BrowserWindow has a lot of methods, most |
23 // of which we don't use and simply stub out with NOTIMPLEMENTED(). | 24 // of which we don't use and simply stub out with NOTIMPLEMENTED(). |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
55 virtual bool IsPanelActive() const = 0; | 56 virtual bool IsPanelActive() const = 0; |
56 virtual gfx::NativeWindow GetNativePanelHandle() = 0; | 57 virtual gfx::NativeWindow GetNativePanelHandle() = 0; |
57 virtual void UpdatePanelTitleBar() = 0; | 58 virtual void UpdatePanelTitleBar() = 0; |
58 virtual void ShowTaskManagerForPanel() = 0; | 59 virtual void ShowTaskManagerForPanel() = 0; |
59 virtual FindBar* CreatePanelFindBar() = 0; | 60 virtual FindBar* CreatePanelFindBar() = 0; |
60 virtual void NotifyPanelOnUserChangedTheme() = 0; | 61 virtual void NotifyPanelOnUserChangedTheme() = 0; |
61 virtual void DrawAttention() = 0; | 62 virtual void DrawAttention() = 0; |
62 virtual bool IsDrawingAttention() const = 0; | 63 virtual bool IsDrawingAttention() const = 0; |
63 virtual Browser* GetPanelBrowser() const = 0; | 64 virtual Browser* GetPanelBrowser() const = 0; |
64 virtual void DestroyPanelBrowser() = 0; | 65 virtual void DestroyPanelBrowser() = 0; |
65 | |
66 // Returns a pointer to the testing interface to the native panel. | |
67 virtual NativePanelTesting* GetNativePanelTesting() = 0; | |
68 }; | 66 }; |
69 | 67 |
70 // A NativePanel utility interface used for accessing elements of the | 68 // A NativePanel utility interface used for accessing elements of the |
71 // native panel used only by test automation. | 69 // native panel used only by test automation. |
72 class NativePanelTesting { | 70 class NativePanelTesting { |
73 public: | 71 public: |
72 static NativePanelTesting* Create(NativePanel* native_panel); | |
74 | 73 |
75 protected: | 74 virtual void TitlebarLeftButtonPress(gfx::Point point) = 0; |
jianli
2011/08/09 21:10:23
It would be better to call it either TitlebarLeftB
prasadt
2011/08/09 23:05:04
I changed the name to PressLeftMouseButtonTitlebar
| |
76 virtual ~NativePanelTesting() {} | 75 virtual void TitlebarLeftButtonRelease() = 0; |
76 virtual void TitlebarDrag(int delta_x, int delta_y) = 0; | |
77 virtual void TitlebarCancelDrag() = 0; | |
78 virtual void TitlebarFinishDrag() = 0; | |
77 }; | 79 }; |
78 | 80 |
79 #endif // CHROME_BROWSER_UI_PANELS_NATIVE_PANEL_H_ | 81 #endif // CHROME_BROWSER_UI_PANELS_NATIVE_PANEL_H_ |
OLD | NEW |