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

Side by Side Diff: ui/views/widget/native_widget.h

Issue 6286013: V2 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 10 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 | « ui/views/views.gyp ('k') | ui/views/widget/native_widget_listener.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Property Changes:
Added: svn:eol-style
+ LF
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 #ifndef UI_VIEWS_WIDGET_NATIVE_WIDGET_H_
6 #define UI_VIEWS_WIDGET_NATIVE_WIDGET_H_
7
8 #include "ui/views/native_types.h"
9
10 namespace gfx{
11 class Path;
12 class Rect;
13 }
14
15 namespace ui {
16 namespace internal {
17 class NativeWidgetListener;
18 }
19 class View;
20 class Widget;
21
22 ////////////////////////////////////////////////////////////////////////////////
23 // NativeWidget interface
24 //
25 // An interface implemented by an object that encapsulates rendering, event
26 // handling and widget management provided by an underlying native toolkit.
27 //
28 class NativeWidget {
29 public:
30 virtual ~NativeWidget() {}
31
32 static NativeWidget* CreateNativeWidget(
33 internal::NativeWidgetListener* listener);
34
35 // See Widget for documentation and notes.
36 virtual void InitWithNativeViewParent(gfx::NativeView parent,
37 const gfx::Rect& bounds) = 0;
38 virtual void InitWithWidgetParent(Widget* parent,
39 const gfx::Rect& bounds) = 0;
40 virtual void InitWithViewParent(View* parent, const gfx::Rect& bounds) = 0;
41 virtual void SetNativeWindowProperty(const char* name, void* value) = 0;
42 virtual void* GetNativeWindowProperty(const char* name) const = 0;
43 virtual gfx::Rect GetWindowScreenBounds() const = 0;
44 virtual gfx::Rect GetClientAreaScreenBounds() const = 0;
45 virtual void SetBounds(const gfx::Rect& bounds) = 0;
46 virtual void SetShape(const gfx::Path& shape) = 0;
47 virtual gfx::NativeView GetNativeView() const = 0;
48 virtual void Show() = 0;
49 virtual void Hide() = 0;
50 virtual void Close() = 0;
51 virtual void MoveAbove(NativeWidget* other) = 0;
52 virtual void SetAlwaysOnTop(bool always_on_top) = 0;
53 virtual bool IsVisible() const = 0;
54 virtual bool IsActive() const = 0;
55
56 virtual void SetMouseCapture() = 0;
57 virtual void ReleaseMouseCapture() = 0;
58 virtual bool HasMouseCapture() const = 0;
59 virtual bool ShouldReleaseCaptureOnMouseReleased() const = 0;
60
61 virtual void Invalidate() = 0;
62 virtual void InvalidateRect(const gfx::Rect& invalid_rect) = 0;
63 virtual void Paint() = 0;
64 };
65
66 } // namespace ui
67
68 #endif // UI_VIEWS_WIDGET_NATIVE_WIDGET_H_
69
OLDNEW
« no previous file with comments | « ui/views/views.gyp ('k') | ui/views/widget/native_widget_listener.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698