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

Side by Side Diff: chrome/browser/ui/panels/panel.h

Issue 8744005: Refactor PanelManager to create PanelStrip. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: remove leftover override Created 9 years 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
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 CHROME_BROWSER_UI_PANELS_PANEL_H_ 5 #ifndef CHROME_BROWSER_UI_PANELS_PANEL_H_
6 #define CHROME_BROWSER_UI_PANELS_PANEL_H_ 6 #define CHROME_BROWSER_UI_PANELS_PANEL_H_
7 #pragma once 7 #pragma once
8 8
9 #include "chrome/browser/ui/browser_window.h" 9 #include "chrome/browser/ui/browser_window.h"
10 10
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 NativePanel* native_panel() { return native_panel_; } 200 NativePanel* native_panel() { return native_panel_; }
201 Browser* browser() const { return browser_; } 201 Browser* browser() const { return browser_; }
202 ExpansionState expansion_state() const { return expansion_state_; } 202 ExpansionState expansion_state() const { return expansion_state_; }
203 const gfx::Size& min_size() const { return min_size_; } 203 const gfx::Size& min_size() const { return min_size_; }
204 const gfx::Size& max_size() const { return max_size_; } 204 const gfx::Size& max_size() const { return max_size_; }
205 bool auto_resizable() const { return auto_resizable_; } 205 bool auto_resizable() const { return auto_resizable_; }
206 // The restored size is the size of the panel when it is expanded. 206 // The restored size is the size of the panel when it is expanded.
207 gfx::Size restored_size() const { return restored_size_; } 207 gfx::Size restored_size() const { return restored_size_; }
208 void set_restored_size(const gfx::Size& size) { restored_size_ = size; } 208 void set_restored_size(const gfx::Size& size) { restored_size_ = size; }
209 209
210 protected:
211 virtual void DestroyBrowser() OVERRIDE;
212
213 private:
214 friend class PanelManager;
215 friend class PanelBrowserTest;
216 FRIEND_TEST_ALL_PREFIXES(PanelBrowserTest, RestoredBounds);
217
218 // Panel can only be created using PanelManager::CreatePanel().
219 // |requested_size| is the desired size for the panel, but actual
220 // size may differ after panel layout.
221 Panel(Browser* browser, const gfx::Size& requested_size);
222
223 // Panel must be initialized to be "fully created" and ready for use. 210 // Panel must be initialized to be "fully created" and ready for use.
224 // Only called by PanelManager. 211 // Only called by PanelManager.
225 bool initialized() const { return initialized_; } 212 bool initialized() const { return initialized_; }
226 void Initialize(const gfx::Rect& bounds); 213 void Initialize(const gfx::Rect& bounds);
227 214
228 // This is different from BrowserWindow::SetBounds(): 215 // This is different from BrowserWindow::SetBounds():
229 // * SetPanelBounds() is only called by PanelManager to manage its position. 216 // * SetPanelBounds() is only called by PanelManager to manage its position.
230 // * SetBounds() is called by the API to try to change the bounds, which is 217 // * SetBounds() is called by the API to try to change the bounds, which is
231 // not allowed for Panel. 218 // not allowed for Panel.
232 void SetPanelBounds(const gfx::Rect& bounds); 219 void SetPanelBounds(const gfx::Rect& bounds);
233 220
234 // Sets whether the panel will auto resize according to its content. 221 // Sets whether the panel will auto resize according to its content.
235 void SetAutoResizable(bool resizable); 222 void SetAutoResizable(bool resizable);
236 223
237 // Sets minimum and maximum size for the panel. 224 // Sets minimum and maximum size for the panel.
238 void SetSizeRange(const gfx::Size& min_size, const gfx::Size& max_size); 225 void SetSizeRange(const gfx::Size& min_size, const gfx::Size& max_size);
239 226
227 protected:
228 virtual void DestroyBrowser() OVERRIDE;
229
230 private:
231 friend class PanelManager;
232 friend class PanelBrowserTest;
233 FRIEND_TEST_ALL_PREFIXES(PanelBrowserTest, RestoredBounds);
234
235 // Panel can only be created using PanelManager::CreatePanel().
236 // |requested_size| is the desired size for the panel, but actual
237 // size may differ after panel layout.
238 Panel(Browser* browser, const gfx::Size& requested_size);
239
240 // NULL might be returned if the tab has not been added. 240 // NULL might be returned if the tab has not been added.
241 RenderViewHost* GetRenderViewHost() const; 241 RenderViewHost* GetRenderViewHost() const;
242 242
243 // Configures the tab contents for auto resize, including configurations 243 // Configures the tab contents for auto resize, including configurations
244 // on the renderer and detecting renderer changes. 244 // on the renderer and detecting renderer changes.
245 void EnableTabContentsAutoResize(TabContents* tab_contents); 245 void EnableTabContentsAutoResize(TabContents* tab_contents);
246 246
247 // Configures the renderer for auto resize. 247 // Configures the renderer for auto resize.
248 void EnableRendererAutoResize(RenderViewHost* render_view_host); 248 void EnableRendererAutoResize(RenderViewHost* render_view_host);
249 249
(...skipping 25 matching lines...) Expand all
275 NativePanel* native_panel_; // Weak, owns us. 275 NativePanel* native_panel_; // Weak, owns us.
276 276
277 ExpansionState expansion_state_; 277 ExpansionState expansion_state_;
278 278
279 content::NotificationRegistrar registrar_; 279 content::NotificationRegistrar registrar_;
280 280
281 DISALLOW_COPY_AND_ASSIGN(Panel); 281 DISALLOW_COPY_AND_ASSIGN(Panel);
282 }; 282 };
283 283
284 #endif // CHROME_BROWSER_UI_PANELS_PANEL_H_ 284 #endif // CHROME_BROWSER_UI_PANELS_PANEL_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/ui/panels/panel_browsertest.cc » ('j') | chrome/browser/ui/panels/panel_browsertest.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698