Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(98)

Side by Side Diff: views/widget/widget_delegate.h

Issue 7054052: Move more from Window onto Widget. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « views/widget/widget.cc ('k') | views/widget/widget_delegate.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 VIEWS_WIDGET_WIDGET_DELEGATE_H_ 5 #ifndef VIEWS_WIDGET_WIDGET_DELEGATE_H_
6 #define VIEWS_WIDGET_WIDGET_DELEGATE_H_ 6 #define VIEWS_WIDGET_WIDGET_DELEGATE_H_
7 #pragma once 7 #pragma once
8 8
9 #include <string> 9 #include <string>
10 10
11 #include "base/memory/scoped_ptr.h" 11 #include "base/memory/scoped_ptr.h"
12 #include "ui/base/accessibility/accessibility_types.h" 12 #include "ui/base/accessibility/accessibility_types.h"
13 13
14 class SkBitmap; 14 class SkBitmap;
15 15
16 namespace gfx { 16 namespace gfx {
17 class Rect; 17 class Rect;
18 } 18 }
19 19
20 namespace views { 20 namespace views {
21 class ClientView; 21 class ClientView;
22 class DialogDelegate; 22 class DialogDelegate;
23 class NonClientFrameView; 23 class NonClientFrameView;
24 class View; 24 class View;
25 class Widget;
25 class Window; 26 class Window;
26 27
27 // WidgetDelegate interface 28 // WidgetDelegate interface
28 // Handles events on Widgets in context-specific ways. 29 // Handles events on Widgets in context-specific ways.
29 class WidgetDelegate { 30 class WidgetDelegate {
30 public: 31 public:
31 WidgetDelegate(); 32 WidgetDelegate();
32 33
33 // Called whenever the widget is activated or deactivated. 34 // Called whenever the widget is activated or deactivated.
34 // TODO(beng): This should be consolidated with 35 // TODO(beng): This should be consolidated with
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
130 virtual void OnWindowActivationChanged(bool active) {} 131 virtual void OnWindowActivationChanged(bool active) {}
131 132
132 // Called when the user begins/ends to change the bounds of the window. 133 // Called when the user begins/ends to change the bounds of the window.
133 virtual void OnWindowBeginUserBoundsChange() {} 134 virtual void OnWindowBeginUserBoundsChange() {}
134 virtual void OnWindowEndUserBoundsChange() {} 135 virtual void OnWindowEndUserBoundsChange() {}
135 136
136 // Returns the View that is contained within this Window. 137 // Returns the View that is contained within this Window.
137 virtual View* GetContentsView(); 138 virtual View* GetContentsView();
138 139
139 // Called by the Window to create the Client View used to host the contents 140 // Called by the Window to create the Client View used to host the contents
140 // of the window. 141 // of the widget.
141 virtual ClientView* CreateClientView(Window* window); 142 virtual ClientView* CreateClientView(Widget* widget);
142 143
143 // Called by the Widget to create the NonClient Frame View for this widget. 144 // Called by the Widget to create the NonClient Frame View for this widget.
144 // Return NULL to use the default one. 145 // Return NULL to use the default one.
145 virtual NonClientFrameView* CreateNonClientFrameView(); 146 virtual NonClientFrameView* CreateNonClientFrameView();
146 147
147 // Returns true if the window can be notified with the work area change. 148 // Returns true if the window can be notified with the work area change.
148 // Otherwise, the work area change for the top window will be processed by 149 // Otherwise, the work area change for the top window will be processed by
149 // the default window manager. In some cases, like panel, we would like to 150 // the default window manager. In some cases, like panel, we would like to
150 // manage the positions by ourselves. 151 // manage the positions by ourselves.
151 virtual bool WillProcessWorkAreaChange() const; 152 virtual bool WillProcessWorkAreaChange() const;
152 153
153 Window* window() const { return window_; } 154 Window* window() const { return window_; }
154 155
155 protected: 156 protected:
156 virtual ~WidgetDelegate() {} 157 virtual ~WidgetDelegate() {}
157 158
158 private: 159 private:
159 friend class Window; 160 friend class Window;
160 // The Window this delegate is bound to. Weak reference. 161 // The Window this delegate is bound to. Weak reference.
161 Window* window_; 162 Window* window_;
162 }; 163 };
163 164
164 } // namespace views 165 } // namespace views
165 166
166 #endif // VIEWS_WIDGET_WIDGET_DELEGATE_H_ 167 #endif // VIEWS_WIDGET_WIDGET_DELEGATE_H_
167 168
OLDNEW
« no previous file with comments | « views/widget/widget.cc ('k') | views/widget/widget_delegate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698