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

Side by Side Diff: chrome/browser/toolbar_model.h

Issue 5544002: Move a bunch more browser stuff around.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 10 years 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 | « chrome/browser/notifications/balloon_collection.cc ('k') | chrome/browser/toolbar_model.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 #ifndef CHROME_BROWSER_TOOLBAR_MODEL_H__
6 #define CHROME_BROWSER_TOOLBAR_MODEL_H__
7 #pragma once
8
9 #include <string>
10
11 #include "base/basictypes.h"
12
13 class Browser;
14 class NavigationController;
15
16 // This class is the model used by the toolbar, location bar and autocomplete
17 // edit. It populates its states from the current navigation entry retrieved
18 // from the navigation controller returned by GetNavigationController().
19 class ToolbarModel {
20 public:
21 // TODO(wtc): unify ToolbarModel::SecurityLevel with SecurityStyle. We
22 // don't need two sets of security UI levels. SECURITY_STYLE_AUTHENTICATED
23 // needs to be refined into three levels: warning, standard, and EV.
24 enum SecurityLevel {
25 NONE = 0, // HTTP/no URL/user is editing
26 EV_SECURE, // HTTPS with valid EV cert
27 SECURE, // HTTPS (non-EV)
28 SECURITY_WARNING, // HTTPS, but unable to check certificate revocation
29 // status or with insecure content on the page
30 SECURITY_ERROR, // Attempted HTTPS and failed, page not authenticated
31 NUM_SECURITY_LEVELS,
32 };
33
34 explicit ToolbarModel(Browser* browser);
35 ~ToolbarModel();
36
37 // Returns the text that should be displayed in the location bar.
38 std::wstring GetText() const;
39
40 // Returns the security level that the toolbar should display.
41 SecurityLevel GetSecurityLevel() const;
42
43 // Returns the resource_id of the icon to show to the left of the address,
44 // based on the current URL. This doesn't cover specialized icons while the
45 // user is editing; see AutocompleteEditView::GetIcon().
46 int GetIcon() const;
47
48 // Returns the name of the EV cert holder. Only call this when the security
49 // level is EV_SECURE.
50 std::wstring GetEVCertName() const;
51
52 // Getter/setter of whether the text in location bar is currently being
53 // edited.
54 void set_input_in_progress(bool value) { input_in_progress_ = value; }
55 bool input_in_progress() const { return input_in_progress_; }
56
57 private:
58 // Returns the navigation controller used to retrieve the navigation entry
59 // from which the states are retrieved.
60 // If this returns NULL, default values are used.
61 NavigationController* GetNavigationController() const;
62
63 Browser* browser_;
64
65 // Whether the text in the location bar is currently being edited.
66 bool input_in_progress_;
67
68 DISALLOW_IMPLICIT_CONSTRUCTORS(ToolbarModel);
69 };
70
71 #endif // CHROME_BROWSER_TOOLBAR_MODEL_H__
OLDNEW
« no previous file with comments | « chrome/browser/notifications/balloon_collection.cc ('k') | chrome/browser/toolbar_model.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698