1 // Copyright (c) 2009 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 #import "chrome/browser/ui/cocoa/command_observer_bridge.h" 6 7 #include "base/logging.h" 8 9 CommandObserverBridge::CommandObserverBridge( 10 id<CommandObserverProtocol> observer, CommandUpdater* commands) 11 : observer_(observer), commands_(commands) { 12 DCHECK(observer_ && commands_); 13 } 14 15 CommandObserverBridge::~CommandObserverBridge() { 16 // Unregister the notifications 17 commands_->RemoveCommandObserver(this); 18 } 19 20 void CommandObserverBridge::ObserveCommand(int command) { 21 commands_->AddCommandObserver(command, this); 22 } 23 24 void CommandObserverBridge::EnabledStateChangedForCommand(int command, 25 bool enabled) { 26 [observer_ enabledStateChangedForCommand:command 27 enabled:enabled ? YES : NO]; 28 } 29