root/chrome/browser/ui/views/tabs/tab_strip_observer.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


// Copyright 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CHROME_BROWSER_UI_VIEWS_TABS_TAB_STRIP_OBSERVER_H_
#define CHROME_BROWSER_UI_VIEWS_TABS_TAB_STRIP_OBSERVER_H_

#include "chrome/browser/ui/views/chrome_views_export.h"

class TabStrip;

////////////////////////////////////////////////////////////////////////////////
//
// TabStripObserver
//
//  Objects implement this interface when they wish to be notified of changes
//  to the TabStrip.
//
//  Register your TabStripObserver with the TabStrip using its
//  Add/RemoveObserver methods.
//
////////////////////////////////////////////////////////////////////////////////
class CHROME_VIEWS_EXPORT TabStripObserver {
 public:
  // A new tab was added to |tab_strip| at |index|.
  virtual void TabStripAddedTabAt(TabStrip* tab_strip, int index);

  // The tab at |from_index| was moved to |to_index| in |tab_strip|.
  virtual void TabStripMovedTab(TabStrip* tab_strip,
                                int from_index,
                                int to_index);

  // The tab at |index| was removed from |tab_strip|.
  virtual void TabStripRemovedTabAt(TabStrip* tab_strip, int index);

  // Sent when the |tabstrip| is about to be deleted and any reference held must
  // be dropped.
  virtual void TabStripDeleted(TabStrip* tab_strip);

 protected:
  virtual ~TabStripObserver() {}
};

#endif  // CHROME_BROWSER_UI_VIEWS_TABS_TAB_STRIP_OBSERVER_H_

/* [<][>][^][v][top][bottom][index][help] */