Home | History | Annotate | Download | only in cocoa
      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