diff options
author | sky@google.com <sky@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-11-07 04:31:35 +0000 |
---|---|---|
committer | sky@google.com <sky@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-11-07 04:31:35 +0000 |
commit | b504899244b4264994d4daae2bee660706dba652 (patch) | |
tree | eda190cb35dfff7f700a4c636730ff2487cb35d8 /chrome/browser/views/bookmark_manager_view.h | |
parent | e562de106eeab2667eeb6922ddf2d771a0efa55d (diff) | |
download | chromium_src-b504899244b4264994d4daae2bee660706dba652.zip chromium_src-b504899244b4264994d4daae2bee660706dba652.tar.gz chromium_src-b504899244b4264994d4daae2bee660706dba652.tar.bz2 |
Adds import/export of bookmarks to bookmarks.html file.
BUG=1649
TEST=bring up bookmark manager and try out import/export from the
tools menu. Note that import ALWAYS creates a new folder under
the 'Other bookmarks folder' with the name of Imported (x). This
is by design.
Review URL: http://codereview.chromium.org/9471
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4968 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/views/bookmark_manager_view.h')
-rw-r--r-- | chrome/browser/views/bookmark_manager_view.h | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/chrome/browser/views/bookmark_manager_view.h b/chrome/browser/views/bookmark_manager_view.h index 8a28eac..0aa83dd 100644 --- a/chrome/browser/views/bookmark_manager_view.h +++ b/chrome/browser/views/bookmark_manager_view.h @@ -5,9 +5,11 @@ #ifndef CHROME_BROWSER_VIEWS_BOOKMARK_MANAGER_VIEW_H_ #define CHROME_BROWSER_VIEWS_BOOKMARK_MANAGER_VIEW_H_ +#include "base/ref_counted.h" #include "base/task.h" #include "chrome/browser/bookmarks/bookmark_context_menu.h" #include "chrome/browser/bookmarks/bookmark_model.h" +#include "chrome/browser/shell_dialogs.h" #include "chrome/views/table_view.h" #include "chrome/views/text_field.h" #include "chrome/views/tree_view.h" @@ -39,7 +41,9 @@ class BookmarkManagerView : public views::View, public views::TextField::Controller, public BookmarkModelObserver, public views::ContextMenuController, - public views::ViewMenuDelegate { + public views::ViewMenuDelegate, + public views::MenuDelegate, + public SelectFileDialog::Listener { public: explicit BookmarkManagerView(Profile* profile); virtual ~BookmarkManagerView(); @@ -56,6 +60,9 @@ class BookmarkManagerView : public views::View, // selected and node is selected in the table. void SelectInTree(BookmarkNode* node); + // Expands all the children of the selected folder. + void ExpandAll(BookmarkNode* node); + // Returns the selected folder, which may be null. BookmarkNode* GetSelectedFolder(); @@ -137,6 +144,13 @@ class BookmarkManagerView : public views::View, // ViewMenuDelegate. virtual void RunMenu(views::View* source, const CPoint& pt, HWND hwnd); + // MenuDelegate. + virtual void ExecuteCommand(int id); + + // SelectFileDialog::Listener. + virtual void FileSelected(const std::wstring& path, void* params); + virtual void FileSelectionCanceled(void* params); + // Creates the table model to use when searching. This returns NULL if there // is no search text. BookmarkTableModel* CreateSearchTableModel(); @@ -167,6 +181,14 @@ class BookmarkManagerView : public views::View, int y, BookmarkContextMenu::ConfigurationType config); + // Shows the tools menu. + void ShowToolsMenu(HWND host, int x, int y); + + // Shows the import/export file chooser. These invoke + // FileSelected/FileSelectionCanceled when done. + void ShowImportBookmarksFileChooser(); + void ShowExportBookmarksFileChooser(); + Profile* profile_; BookmarkTableView* table_view_; BookmarkFolderTreeView* tree_view_; @@ -175,6 +197,9 @@ class BookmarkManagerView : public views::View, views::TextField* search_tf_; views::SingleSplitView* split_view_; + // Import/export file dialog. + scoped_refptr<SelectFileDialog> select_file_dialog_; + // Factory used for delaying search. ScopedRunnableMethodFactory<BookmarkManagerView> search_factory_; |