OLD | NEW |
1 // Copyright (c) 2010 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_CONTROLS_TEXTFIELD_NATIVE_TEXTFIELD_WIN_H_ | 5 #ifndef VIEWS_CONTROLS_TEXTFIELD_NATIVE_TEXTFIELD_WIN_H_ |
6 #define VIEWS_CONTROLS_TEXTFIELD_NATIVE_TEXTFIELD_WIN_H_ | 6 #define VIEWS_CONTROLS_TEXTFIELD_NATIVE_TEXTFIELD_WIN_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <atlbase.h> | 9 #include <atlbase.h> |
10 #include <atlapp.h> | 10 #include <atlapp.h> |
11 #include <atlcrack.h> | 11 #include <atlcrack.h> |
12 #include <atlctrls.h> | 12 #include <atlctrls.h> |
13 #include <atlmisc.h> | 13 #include <atlmisc.h> |
14 #include <oleacc.h> | 14 #include <oleacc.h> |
15 #include <tom.h> // For ITextDocument, a COM interface to CRichEditCtrl | 15 #include <tom.h> // For ITextDocument, a COM interface to CRichEditCtrl |
16 #include <vsstyle.h> | 16 #include <vsstyle.h> |
17 | 17 |
18 #include "base/win/scoped_comptr.h" | 18 #include "base/win/scoped_comptr.h" |
19 #include "gfx/insets.h" | 19 #include "gfx/insets.h" |
20 #include "ui/base/models/simple_menu_model.h" | 20 #include "ui/base/models/simple_menu_model.h" |
21 #include "views/controls/textfield/native_textfield_wrapper.h" | 21 #include "views/controls/textfield/native_textfield_wrapper.h" |
22 | 22 |
23 namespace views { | 23 namespace views { |
24 | 24 |
25 class Menu2; | 25 class Menu2; |
26 class NativeViewHost; | 26 class NativeViewHost; |
27 class Textfield; | 27 class Textfield; |
| 28 class TextRange; |
28 | 29 |
29 static const int kDefaultEditStyle = WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN | | 30 static const int kDefaultEditStyle = WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN | |
30 WS_CLIPSIBLINGS; | 31 WS_CLIPSIBLINGS; |
31 | 32 |
32 // TODO(beng): make a subclass of NativeControlWin instead. | 33 // TODO(beng): make a subclass of NativeControlWin instead. |
33 class NativeTextfieldWin | 34 class NativeTextfieldWin |
34 : public CWindowImpl<NativeTextfieldWin, CRichEditCtrl, | 35 : public CWindowImpl<NativeTextfieldWin, CRichEditCtrl, |
35 CWinTraits<kDefaultEditStyle> >, | 36 CWinTraits<kDefaultEditStyle> >, |
36 public CRichEditCommands<NativeTextfieldWin>, | 37 public CRichEditCommands<NativeTextfieldWin>, |
37 public NativeTextfieldWrapper, | 38 public NativeTextfieldWrapper, |
(...skipping 21 matching lines...) Expand all Loading... |
59 virtual void UpdateFont(); | 60 virtual void UpdateFont(); |
60 virtual void UpdateIsPassword(); | 61 virtual void UpdateIsPassword(); |
61 virtual void UpdateEnabled(); | 62 virtual void UpdateEnabled(); |
62 virtual gfx::Insets CalculateInsets(); | 63 virtual gfx::Insets CalculateInsets(); |
63 virtual void UpdateHorizontalMargins(); | 64 virtual void UpdateHorizontalMargins(); |
64 virtual void UpdateVerticalMargins(); | 65 virtual void UpdateVerticalMargins(); |
65 virtual bool SetFocus(); | 66 virtual bool SetFocus(); |
66 virtual View* GetView(); | 67 virtual View* GetView(); |
67 virtual gfx::NativeView GetTestingHandle() const; | 68 virtual gfx::NativeView GetTestingHandle() const; |
68 virtual bool IsIMEComposing() const; | 69 virtual bool IsIMEComposing() const; |
| 70 virtual void GetSelectedRange(TextRange* range) const; |
| 71 virtual void SelectRange(const TextRange& range); |
| 72 virtual size_t GetCursorPosition() const; |
69 virtual bool HandleKeyPressed(const views::KeyEvent& e); | 73 virtual bool HandleKeyPressed(const views::KeyEvent& e); |
70 virtual bool HandleKeyReleased(const views::KeyEvent& e); | 74 virtual bool HandleKeyReleased(const views::KeyEvent& e); |
71 virtual void HandleWillGainFocus(); | 75 virtual void HandleWillGainFocus(); |
72 virtual void HandleDidGainFocus(); | 76 virtual void HandleDidGainFocus(); |
73 virtual void HandleWillLoseFocus(); | 77 virtual void HandleWillLoseFocus(); |
74 | 78 |
75 // Overridden from ui::SimpleMenuModel::Delegate: | 79 // Overridden from ui::SimpleMenuModel::Delegate: |
76 virtual bool IsCommandIdChecked(int command_id) const; | 80 virtual bool IsCommandIdChecked(int command_id) const; |
77 virtual bool IsCommandIdEnabled(int command_id) const; | 81 virtual bool IsCommandIdEnabled(int command_id) const; |
78 virtual bool GetAcceleratorForCommandId(int command_id, | 82 virtual bool GetAcceleratorForCommandId(int command_id, |
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
257 | 261 |
258 // The accessibility state of this object. | 262 // The accessibility state of this object. |
259 int accessibility_state_; | 263 int accessibility_state_; |
260 | 264 |
261 DISALLOW_COPY_AND_ASSIGN(NativeTextfieldWin); | 265 DISALLOW_COPY_AND_ASSIGN(NativeTextfieldWin); |
262 }; | 266 }; |
263 | 267 |
264 } // namespace views | 268 } // namespace views |
265 | 269 |
266 #endif // VIEWS_CONTROLS_TEXTFIELD_NATIVE_TEXTFIELD_WIN_H_ | 270 #endif // VIEWS_CONTROLS_TEXTFIELD_NATIVE_TEXTFIELD_WIN_H_ |
OLD | NEW |