diff options
author | pinkerton@chromium.org <pinkerton@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-07 18:43:09 +0000 |
---|---|---|
committer | pinkerton@chromium.org <pinkerton@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-07 18:43:09 +0000 |
commit | 93a2c7241cddc33af51cdc3daea03e414f544ec8 (patch) | |
tree | 1864bba1f4c906e7d67ac378814455ec24d8a992 /chrome/browser/cocoa/toolbar_controller.h | |
parent | 2e8f3dd5dbec1c494778713c47a42f6589ecbc86 (diff) | |
download | chromium_src-93a2c7241cddc33af51cdc3daea03e414f544ec8.zip chromium_src-93a2c7241cddc33af51cdc3daea03e414f544ec8.tar.gz chromium_src-93a2c7241cddc33af51cdc3daea03e414f544ec8.tar.bz2 |
Hook up the prefs for the optional home buttons and page/wrench buttons. Move default registration of this pref out of platform code and into shared code to avoid having to do it in at least 3 places. Fix gradient buttons to not draw their borders unless asked.
BUG=13151
TEST=showing/hiding home button and page/wrench buttons should work. Menus for page/wrench should work except for a few straggler items that aren't yet implemented even in the main menubar.
Review URL: http://codereview.chromium.org/155151
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20052 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/cocoa/toolbar_controller.h')
-rw-r--r-- | chrome/browser/cocoa/toolbar_controller.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/chrome/browser/cocoa/toolbar_controller.h b/chrome/browser/cocoa/toolbar_controller.h index 1aa38bb..236f777 100644 --- a/chrome/browser/cocoa/toolbar_controller.h +++ b/chrome/browser/cocoa/toolbar_controller.h @@ -10,10 +10,14 @@ #include "base/scoped_ptr.h" #include "base/scoped_nsobject.h" #import "chrome/browser/cocoa/command_observer_bridge.h" +#include "chrome/common/pref_member.h" class CommandUpdater; class LocationBar; class LocationBarViewMac; +namespace ToolbarControllerInternal { +class PrefObserverBridge; +} class Profile; class TabContents; class ToolbarModel; @@ -40,14 +44,25 @@ class ToolbarView; scoped_ptr<LocationBarViewMac> locationBarView_; scoped_nsobject<LocationBarFieldEditor> locationBarFieldEditor_; // strong + // Used for monitoring the optional toolbar button prefs. + scoped_ptr<ToolbarControllerInternal::PrefObserverBridge> prefObserver_; + BooleanPrefMember showHomeButton_; + BooleanPrefMember showPageOptionButtons_; + + IBOutlet NSMenu* pageMenu_; + IBOutlet NSMenu* wrenchMenu_; + // The ordering is important for unit tests. If new items are added or the // ordering is changed, make sure to update |-toolbarViews| and the // corresponding enum in the unit tests. IBOutlet NSButton* backButton_; IBOutlet NSButton* forwardButton_; IBOutlet NSButton* reloadButton_; + IBOutlet NSButton* homeButton_; IBOutlet NSButton* starButton_; IBOutlet NSButton* goButton_; + IBOutlet NSButton* pageButton_; + IBOutlet NSButton* wrenchButton_; IBOutlet NSTextField* locationBar_; } @@ -83,12 +98,19 @@ class ToolbarView; // state. - (void)setIsLoading:(BOOL)isLoading; +// Actions for the optional menu buttons for the page and wrench menus. These +// will show a menu while the mouse is down. +- (IBAction)showPageMenu:(id)sender; +- (IBAction)showWrenchMenu:(id)sender; + @end // A set of private methods used by tests, in the absence of "friends" in ObjC. @interface ToolbarController(PrivateTestMethods) // Returns an array of views in the order of the outlets above. - (NSArray*)toolbarViews; +- (void)showOptionalHomeButton; +- (void)showOptionalPageWrenchButtons; @end #endif // CHROME_BROWSER_COCOA_TOOLBAR_CONTROLLER_H_ |