| Index: chrome/browser/bookmarks/bookmark_editor.h
|
| diff --git a/chrome/browser/bookmarks/bookmark_editor.h b/chrome/browser/bookmarks/bookmark_editor.h
|
| index 39e99eac533544b348867008edc45390edf2b1f5..5b3a6ab43042659f6df6f17999f589e6a85f6052 100644
|
| --- a/chrome/browser/bookmarks/bookmark_editor.h
|
| +++ b/chrome/browser/bookmarks/bookmark_editor.h
|
| @@ -27,7 +27,19 @@ class BookmarkEditor {
|
| };
|
|
|
| // Describes what the user is editing.
|
| - struct EditDetails {
|
| + class EditDetails {
|
| + public:
|
| + // Returns an EditDetails instance for the user editing the given bookmark.
|
| + static EditDetails EditNode(const BookmarkNode* node);
|
| +
|
| + // Returns an EditDetails instance for the user adding a bookmark within
|
| + // a given parent node.
|
| + static EditDetails AddNodeInFolder(const BookmarkNode* parent_node);
|
| +
|
| + // Returns an EditDetails instance for the user adding a folder within a
|
| + // given parent node.
|
| + static EditDetails AddFolder(const BookmarkNode* parent_node);
|
| +
|
| enum Type {
|
| // The user is editing an existing node in the model. The node the user
|
| // is editing is set in |existing_node|.
|
| @@ -43,34 +55,50 @@ class BookmarkEditor {
|
| NEW_FOLDER
|
| };
|
|
|
| - EditDetails();
|
| - explicit EditDetails(const BookmarkNode* node);
|
| ~EditDetails();
|
|
|
| // See description of enum value for details.
|
| - Type type;
|
| + const Type type;
|
|
|
| // If type == EXISTING_NODE this gives the existing node.
|
| const BookmarkNode* existing_node;
|
|
|
| + // If type == NEW_URL or type == NEW_FOLDER this gives the parent node
|
| + // to place the new node in.
|
| + const BookmarkNode* parent_node;
|
| +
|
| // If type == NEW_FOLDER, this is the urls/title pairs to add to the
|
| // folder.
|
| std::vector<std::pair<GURL, string16> > urls;
|
| +
|
| + private:
|
| + explicit EditDetails(Type node_type);
|
| };
|
|
|
| - // Shows the bookmark editor. The bookmark editor allows editing an
|
| + // Shows the bookmark editor. If --use-more-webui is enabled use the bookmark
|
| + // manager to add or edit bookmarks. The bookmark editor allows editing an
|
| // existing node or creating a new bookmark node (as determined by
|
| // |details.type|). If |configuration| is SHOW_TREE, a tree is shown allowing
|
| // the user to choose the parent of the node.
|
| // |parent| gives the initial parent to select in the tree for the node.
|
| // |parent| is only used if |details.existing_node| is null.
|
| - // TODO(flackr): Rename this to ShowNative and add cross platform Show method
|
| - // which will show a WebUI version of the dialog if --pure-views is set.
|
| static void Show(gfx::NativeWindow parent_window,
|
| Profile* profile,
|
| - const BookmarkNode* parent,
|
| const EditDetails& details,
|
| Configuration configuration);
|
| +
|
| + private:
|
| + // Shows the native bookmark editor.
|
| + // TODO(flackr): Remove parent argument.
|
| + static void ShowNative(gfx::NativeWindow parent_window,
|
| + Profile* profile,
|
| + const BookmarkNode* parent,
|
| + const EditDetails& details,
|
| + Configuration configuration);
|
| +
|
| + // Shows the WebUI bookmark editor.
|
| + static void ShowWebUI(Profile* profile,
|
| + const EditDetails& details);
|
| };
|
|
|
| #endif // CHROME_BROWSER_BOOKMARKS_BOOKMARK_EDITOR_H_
|
|
|