Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / components / bookmarks / browser / base_bookmark_model_observer.h
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   void BookmarkModelLoaded(BookmarkModel* model, bool ids_reassigned) override;
22   void BookmarkModelBeingDeleted(BookmarkModel* model) override;
23   void BookmarkNodeMoved(BookmarkModel* model,
24                          const BookmarkNode* old_parent,
25                          int old_index,
26                          const BookmarkNode* new_parent,
27                          int new_index) override;
28   void BookmarkNodeAdded(BookmarkModel* model,
29                          const BookmarkNode* parent,
30                          int index) override;
31   void BookmarkNodeRemoved(BookmarkModel* model,
32                            const BookmarkNode* parent,
33                            int old_index,
34                            const BookmarkNode* node,
35                            const std::set<GURL>& removed_urls) override;
36   void BookmarkAllUserNodesRemoved(BookmarkModel* model,
37                                    const std::set<GURL>& removed_urls) override;
38   void BookmarkNodeChanged(BookmarkModel* model,
39                            const BookmarkNode* node) override;
40   void BookmarkNodeFaviconChanged(BookmarkModel* model,
41                                   const BookmarkNode* node) override;
42   void BookmarkNodeChildrenReordered(BookmarkModel* model,
43                                      const BookmarkNode* node) override;
44
45  protected:
46   ~BaseBookmarkModelObserver() override {}
47
48  private:
49   DISALLOW_COPY_AND_ASSIGN(BaseBookmarkModelObserver);
50 };
51
52 #endif  // COMPONENTS_BOOKMARKS_BROWSER_BASE_BOOKMARK_MODEL_OBSERVER_H_