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

Side by Side Diff: chrome/browser/views/frame/embedded_non_client_view.h

Issue 10973: Test the feasibility of turning Chrome into a multi-process ActiveX control Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: Created 12 years, 1 month 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
(Empty)
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef CHROME_BROWSER_VIEWS_FRAME_EMBEDDED_NON_CLIENT_VIEW_H_
6 #define CHROME_BROWSER_VIEWS_FRAME_EMBEDDED_NON_CLIENT_VIEW_H_
7
8 #include "chrome/browser/views/frame/embedded_frame.h"
9 #include "chrome/browser/views/tab_icon_view.h"
10 #include "chrome/views/non_client_view.h"
11 #include "chrome/views/button.h"
12
13 class BrowserView;
14 class EmbeddedFrame;
15 class TabContents;
16 class TabStrip;
17 namespace views {
18 class WindowResources;
19 }
20
21 class EmbeddedNonClientView : public views::NonClientView,
22 public views::BaseButton::ButtonListener,
23 public TabIconView::TabContentsProvider {
24 public:
25 // Constructs a non-client view for an EmbeddedFrame.
26 EmbeddedNonClientView(EmbeddedFrame* frame, BrowserView* browser_view);
27 virtual ~EmbeddedNonClientView();
28
29 protected:
30 // Overridden from TabIconView::TabContentsProvider:
31 virtual TabContents* GetCurrentTabContents();
32 virtual SkBitmap GetFavIcon();
33
34 // Overridden from views::BaseButton::ButtonListener:
35 virtual void ButtonPressed(views::BaseButton* sender);
36
37 // Overridden from views::NonClientView:
38 virtual gfx::Rect CalculateClientAreaBounds(int width, int height) const;
39 virtual gfx::Size CalculateWindowSizeForClientSize(int width,
40 int height) const;
41 virtual CPoint GetSystemMenuPoint() const;
42 virtual int NonClientHitTest(const gfx::Point& point);
43 virtual void GetWindowMask(const gfx::Size& size, gfx::Path* window_mask);
44 virtual void EnableClose(bool enable);
45 virtual void ResetWindowControls();
46
47 // Overridden from views::View:
48 virtual void Paint(ChromeCanvas* canvas);
49 virtual void Layout();
50 virtual gfx::Size GetPreferredSize();
51 virtual void ViewHierarchyChanged(bool is_add,
52 views::View* parent,
53 views::View* embedded);
54 virtual bool GetAccessibleRole(VARIANT* role);
55 virtual bool GetAccessibleName(std::wstring* name);
56 virtual void SetAccessibleName(const std::wstring& name);
57
58 private:
59 // The frame that hosts this view.
60 EmbeddedFrame* frame_;
61
62 // The BrowserView hosted within this View.
63 BrowserView* browser_view_;
64
65 // The accessible name of this view.
66 std::wstring accessible_name_;
67
68 DISALLOW_EVIL_CONSTRUCTORS(EmbeddedNonClientView);
69 };
70
71 #endif // #ifndef CHROME_BROWSER_VIEWS_FRAME_EMBEDDED_NON_CLIENT_VIEW_H_
72
OLDNEW
« no previous file with comments | « chrome/browser/views/frame/embedded_frame.cc ('k') | chrome/browser/views/frame/embedded_non_client_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698