Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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_VIEWS_FIND_BAR_VIEW_H_ | 5 #ifndef CHROME_BROWSER_UI_VIEWS_FIND_BAR_VIEW_H_ |
| 6 #define CHROME_BROWSER_UI_VIEWS_FIND_BAR_VIEW_H_ | 6 #define CHROME_BROWSER_UI_VIEWS_FIND_BAR_VIEW_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include "base/string16.h" | 9 #include "base/string16.h" |
| 10 #include "chrome/browser/ui/find_bar/find_notification_details.h" | 10 #include "chrome/browser/ui/find_bar/find_notification_details.h" |
| (...skipping 29 matching lines...) Expand all Loading... | |
| 40 CLOSE_TAG, // The Close button (the 'X'). | 40 CLOSE_TAG, // The Close button (the 'X'). |
| 41 }; | 41 }; |
| 42 | 42 |
| 43 explicit FindBarView(FindBarHost* host); | 43 explicit FindBarView(FindBarHost* host); |
| 44 virtual ~FindBarView(); | 44 virtual ~FindBarView(); |
| 45 | 45 |
| 46 // Gets/sets the text displayed in the text box. | 46 // Gets/sets the text displayed in the text box. |
| 47 string16 GetFindText() const; | 47 string16 GetFindText() const; |
| 48 void SetFindText(const string16& find_text); | 48 void SetFindText(const string16& find_text); |
| 49 | 49 |
| 50 // Gets the selected text in the text box. | |
| 51 string16 GetFindSelectedText() const; | |
| 52 | |
| 50 // Gets the match count text displayed in the text box. | 53 // Gets the match count text displayed in the text box. |
| 51 string16 GetMatchCountText() const; | 54 string16 GetMatchCountText() const; |
| 52 | 55 |
| 53 // Updates the label inside the Find text box that shows the ordinal of the | 56 // Updates the label inside the Find text box that shows the ordinal of the |
| 54 // active item and how many matches were found. | 57 // active item and how many matches were found. |
| 55 void UpdateForResult(const FindNotificationDetails& result, | 58 void UpdateForResult(const FindNotificationDetails& result, |
| 56 const string16& find_text); | 59 const string16& find_text); |
| 57 | 60 |
| 58 // Clears the current Match Count value in the Find text box. | 61 // Clears the current Match Count value in the Find text box. |
| 59 void ClearMatchCount(); | 62 void ClearMatchCount(); |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 98 : view_to_focus_on_mousedown_(view_to_focus_on_mousedown) {} | 101 : view_to_focus_on_mousedown_(view_to_focus_on_mousedown) {} |
| 99 | 102 |
| 100 private: | 103 private: |
| 101 virtual bool OnMousePressed(const views::MouseEvent& event); | 104 virtual bool OnMousePressed(const views::MouseEvent& event); |
| 102 | 105 |
| 103 views::Textfield* view_to_focus_on_mousedown_; | 106 views::Textfield* view_to_focus_on_mousedown_; |
| 104 | 107 |
| 105 DISALLOW_COPY_AND_ASSIGN(FocusForwarderView); | 108 DISALLOW_COPY_AND_ASSIGN(FocusForwarderView); |
| 106 }; | 109 }; |
| 107 | 110 |
| 111 // A wrapper of views::TextField that allows us to select all text when we | |
| 112 // get focus. Represents the text field where the user enters a search term. | |
| 113 class SearchTextfieldView : public views::Textfield { | |
|
Jay Civelli
2010/12/06 22:14:09
May be that could have been added as a property of
| |
| 114 public: | |
| 115 SearchTextfieldView(); | |
| 116 virtual ~SearchTextfieldView(); | |
| 117 | |
| 118 virtual void RequestFocus(); | |
| 119 | |
| 120 private: | |
| 121 DISALLOW_COPY_AND_ASSIGN(SearchTextfieldView); | |
| 122 }; | |
| 123 | |
| 108 // Returns the OS-specific view for the find bar that acts as an intermediary | 124 // Returns the OS-specific view for the find bar that acts as an intermediary |
| 109 // between us and the TabContentsView. | 125 // between us and the TabContentsView. |
| 110 FindBarHost* find_bar_host() const; | 126 FindBarHost* find_bar_host() const; |
| 111 | 127 |
| 112 #if defined(OS_LINUX) | 128 #if defined(OS_LINUX) |
| 113 // In gtk we get changed signals if we programatically set the text. If we | 129 // In GTK we get changed signals if we programmatically set the text. If we |
| 114 // don't ignore them we run into problems. For example, switching tabs back | 130 // don't ignore them we run into problems. For example, switching tabs back |
| 115 // to one with the find bar visible will cause a search to the next found | 131 // to one with the find bar visible will cause a search to the next found |
| 116 // text. Also if the find bar had been visible and then hidden and the user | 132 // text. Also if the find bar had been visible and then hidden and the user |
| 117 // switches back, found text will be highlighted again. | 133 // switches back, found text will be highlighted again. |
| 118 bool ignore_contents_changed_; | 134 bool ignore_contents_changed_; |
| 119 #endif | 135 #endif |
| 120 | 136 |
| 121 // The controls in the window. | 137 // The controls in the window. |
| 122 views::Textfield* find_text_; | 138 SearchTextfieldView* find_text_; |
| 123 views::Label* match_count_text_; | 139 views::Label* match_count_text_; |
| 124 FocusForwarderView* focus_forwarder_view_; | 140 FocusForwarderView* focus_forwarder_view_; |
| 125 views::ImageButton* find_previous_button_; | 141 views::ImageButton* find_previous_button_; |
| 126 views::ImageButton* find_next_button_; | 142 views::ImageButton* find_next_button_; |
| 127 views::ImageButton* close_button_; | 143 views::ImageButton* close_button_; |
| 128 | 144 |
| 129 DISALLOW_COPY_AND_ASSIGN(FindBarView); | 145 DISALLOW_COPY_AND_ASSIGN(FindBarView); |
| 130 }; | 146 }; |
| 131 | 147 |
| 132 #endif // CHROME_BROWSER_UI_VIEWS_FIND_BAR_VIEW_H_ | 148 #endif // CHROME_BROWSER_UI_VIEWS_FIND_BAR_VIEW_H_ |
| OLD | NEW |