Home | History | Annotate | Download | only in bookmarks
      1 // Copyright (c) 2012 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_BOOKMARKS_BASE_BOOKMARK_MODEL_OBSERVER_H_
      6 #define CHROME_BROWSER_BOOKMARKS_BASE_BOOKMARK_MODEL_OBSERVER_H_
      7 
      8 #include "base/basictypes.h"
      9 #include "base/compiler_specific.h"
     10 #include "chrome/browser/bookmarks/bookmark_model_observer.h"
     11 
     12 // Base class for a BookmarkModelObserver implementation. All mutations of the
     13 // model funnel into the method BookmarkModelChanged.
     14 class BaseBookmarkModelObserver : public BookmarkModelObserver {
     15  public:
     16   BaseBookmarkModelObserver() {}
     17 
     18   virtual void BookmarkModelChanged() = 0;
     19 
     20   // BookmarkModelObserver:
     21   virtual void Loaded(BookmarkModel* model, bool ids_reassigned) OVERRIDE;
     22   virtual void BookmarkModelBeingDeleted(BookmarkModel* model) OVERRIDE;
     23   virtual void BookmarkNodeMoved(BookmarkModel* model,
     24                                  const BookmarkNode* old_parent,
     25                                  int old_index,
     26                                  const BookmarkNode* new_parent,
     27                                  int new_index) OVERRIDE;
     28   virtual void BookmarkNodeAdded(BookmarkModel* model,
     29                                  const BookmarkNode* parent,
     30                                  int index) OVERRIDE;
     31   virtual void BookmarkNodeRemoved(BookmarkModel* model,
     32                                    const BookmarkNode* parent,
     33                                    int old_index,
     34                                    const BookmarkNode* node) OVERRIDE;
     35   virtual void BookmarkAllNodesRemoved(BookmarkModel* model) OVERRIDE;
     36   virtual void BookmarkNodeChanged(BookmarkModel* model,
     37                                    const BookmarkNode* node) OVERRIDE;
     38   virtual void BookmarkNodeFaviconChanged(BookmarkModel* model,
     39                                           const BookmarkNode* node) OVERRIDE;
     40   virtual void BookmarkNodeChildrenReordered(BookmarkModel* model,
     41                                              const BookmarkNode* node) OVERRIDE;
     42 
     43  protected:
     44   virtual ~BaseBookmarkModelObserver() {}
     45 
     46  private:
     47   DISALLOW_COPY_AND_ASSIGN(BaseBookmarkModelObserver);
     48 };
     49 
     50 #endif  // CHROME_BROWSER_BOOKMARKS_BASE_BOOKMARK_MODEL_OBSERVER_H_
     51