Home | History | Annotate | Download | only in browser
      1 // Copyright 2014 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 COMPONENTS_BOOKMARKS_BROWSER_BASE_BOOKMARK_MODEL_OBSERVER_H_
      6 #define COMPONENTS_BOOKMARKS_BROWSER_BASE_BOOKMARK_MODEL_OBSERVER_H_
      7 
      8 #include "base/basictypes.h"
      9 #include "base/compiler_specific.h"
     10 #include "components/bookmarks/browser/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 BookmarkModelLoaded(BookmarkModel* model,
     22                                    bool ids_reassigned) OVERRIDE;
     23   virtual void BookmarkModelBeingDeleted(BookmarkModel* model) OVERRIDE;
     24   virtual void BookmarkNodeMoved(BookmarkModel* model,
     25                                  const BookmarkNode* old_parent,
     26                                  int old_index,
     27                                  const BookmarkNode* new_parent,
     28                                  int new_index) OVERRIDE;
     29   virtual void BookmarkNodeAdded(BookmarkModel* model,
     30                                  const BookmarkNode* parent,
     31                                  int index) OVERRIDE;
     32   virtual void BookmarkNodeRemoved(BookmarkModel* model,
     33                                    const BookmarkNode* parent,
     34                                    int old_index,
     35                                    const BookmarkNode* node,
     36                                    const std::set<GURL>& removed_urls) OVERRIDE;
     37   virtual void BookmarkAllUserNodesRemoved(
     38       BookmarkModel* model,
     39       const std::set<GURL>& removed_urls) OVERRIDE;
     40   virtual void BookmarkNodeChanged(BookmarkModel* model,
     41                                    const BookmarkNode* node) OVERRIDE;
     42   virtual void BookmarkNodeFaviconChanged(BookmarkModel* model,
     43                                           const BookmarkNode* node) OVERRIDE;
     44   virtual void BookmarkNodeChildrenReordered(BookmarkModel* model,
     45                                              const BookmarkNode* node) OVERRIDE;
     46 
     47  protected:
     48   virtual ~BaseBookmarkModelObserver() {}
     49 
     50  private:
     51   DISALLOW_COPY_AND_ASSIGN(BaseBookmarkModelObserver);
     52 };
     53 
     54 #endif  // COMPONENTS_BOOKMARKS_BROWSER_BASE_BOOKMARK_MODEL_OBSERVER_H_
     55