OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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_COCOA_BROWSER_WINDOW_COCOA_H_ | 5 #ifndef CHROME_BROWSER_COCOA_BROWSER_WINDOW_COCOA_H_ |
6 #define CHROME_BROWSER_COCOA_BROWSER_WINDOW_COCOA_H_ | 6 #define CHROME_BROWSER_COCOA_BROWSER_WINDOW_COCOA_H_ |
7 | 7 |
8 #include "base/scoped_ptr.h" | 8 #include "base/scoped_ptr.h" |
9 #include "chrome/browser/browser_window.h" | 9 #include "chrome/browser/browser_window.h" |
| 10 #include "chrome/browser/bookmarks/bookmark_model.h" |
| 11 #include "chrome/browser/cocoa/bookmark_menu_bridge.h" |
10 | 12 |
| 13 class Browser; |
11 @class BrowserWindowController; | 14 @class BrowserWindowController; |
12 @class NSWindow; | 15 @class NSWindow; |
| 16 @class NSMenu; |
13 | 17 |
14 class StatusBubbleMac; | 18 class StatusBubbleMac; |
15 | 19 |
16 // An implementation of BrowserWindow for Cocoa. Bridges between C++ and | 20 // An implementation of BrowserWindow for Cocoa. Bridges between C++ and |
17 // the Cocoa NSWindow. Cross-platform code will interact with this object when | 21 // the Cocoa NSWindow. Cross-platform code will interact with this object when |
18 // it needs to manipulate the window. | 22 // it needs to manipulate the window. |
19 | 23 |
20 class BrowserWindowCocoa : public BrowserWindow { | 24 class BrowserWindowCocoa : public BrowserWindow { |
21 public: | 25 public: |
22 BrowserWindowCocoa(BrowserWindowController* controller, NSWindow* window); | 26 BrowserWindowCocoa(Browser* browser, |
| 27 BrowserWindowController* controller, |
| 28 NSWindow* window); |
23 virtual ~BrowserWindowCocoa(); | 29 virtual ~BrowserWindowCocoa(); |
24 | 30 |
25 // Overridden from BrowserWindow | 31 // Overridden from BrowserWindow |
26 virtual void Init(); | 32 virtual void Init(); |
27 virtual void Show(); | 33 virtual void Show(); |
28 virtual void SetBounds(const gfx::Rect& bounds); | 34 virtual void SetBounds(const gfx::Rect& bounds); |
29 virtual void Close(); | 35 virtual void Close(); |
30 virtual void Activate(); | 36 virtual void Activate(); |
31 virtual bool IsActive() const; | 37 virtual bool IsActive() const; |
32 virtual void FlashFrame(); | 38 virtual void FlashFrame(); |
(...skipping 23 matching lines...) Expand all Loading... |
56 virtual void ShowBookmarkBubble(const GURL& url, bool already_bookmarked); | 62 virtual void ShowBookmarkBubble(const GURL& url, bool already_bookmarked); |
57 virtual void ShowReportBugDialog(); | 63 virtual void ShowReportBugDialog(); |
58 virtual void ShowClearBrowsingDataDialog(); | 64 virtual void ShowClearBrowsingDataDialog(); |
59 virtual void ShowImportDialog(); | 65 virtual void ShowImportDialog(); |
60 virtual void ShowSearchEnginesDialog(); | 66 virtual void ShowSearchEnginesDialog(); |
61 virtual void ShowPasswordManager(); | 67 virtual void ShowPasswordManager(); |
62 virtual void ShowSelectProfileDialog(); | 68 virtual void ShowSelectProfileDialog(); |
63 virtual void ShowNewProfileDialog(); | 69 virtual void ShowNewProfileDialog(); |
64 virtual void ShowHTMLDialog(HtmlDialogContentsDelegate* delegate, | 70 virtual void ShowHTMLDialog(HtmlDialogContentsDelegate* delegate, |
65 void* parent_window); | 71 void* parent_window); |
| 72 |
66 protected: | 73 protected: |
67 virtual void DestroyBrowser(); | 74 virtual void DestroyBrowser(); |
68 | 75 |
69 private: | 76 private: |
| 77 Browser* browser_; |
70 BrowserWindowController* controller_; // weak, owns us | 78 BrowserWindowController* controller_; // weak, owns us |
71 NSWindow* window_; // weak, owned by |controller_| | 79 NSWindow* window_; // weak, owned by |controller_| |
72 | |
73 // The status bubble manager. Always non-NULL. | 80 // The status bubble manager. Always non-NULL. |
74 scoped_ptr<StatusBubbleMac> status_bubble_; | 81 scoped_ptr<StatusBubbleMac> status_bubble_; |
| 82 BookmarkMenuBridge bookmark_menu_bridge_; |
75 }; | 83 }; |
76 | 84 |
77 #endif // CHROME_BROWSER_COCOA_BROWSER_WINDOW_COCOA_H_ | 85 #endif // CHROME_BROWSER_COCOA_BROWSER_WINDOW_COCOA_H_ |
OLD | NEW |