Index: chrome/browser/dom_ui/browser_options_handler.h |
diff --git a/chrome/browser/dom_ui/browser_options_handler.h b/chrome/browser/dom_ui/browser_options_handler.h |
index 6c37bd5253a8d20fcafcc83a2dff7ba74cba8f2d..794b5253b7ea091476a2a29dd1bd48a5ce0bbf26 100644 |
--- a/chrome/browser/dom_ui/browser_options_handler.h |
+++ b/chrome/browser/dom_ui/browser_options_handler.h |
@@ -6,14 +6,18 @@ |
#define CHROME_BROWSER_DOM_UI_BROWSER_OPTIONS_HANDLER_H_ |
#pragma once |
arv (Not doing code reviews)
2010/07/27 19:02:31
Can you do this in a separate patch?
stuartmorgan
2010/07/27 20:07:23
I'm not doing that; you're looking at the diff bet
|
+#include "app/table_model_observer.h" |
#include "chrome/browser/dom_ui/options_ui.h" |
#include "chrome/browser/search_engines/template_url_model.h" |
#include "chrome/browser/shell_integration.h" |
+class CustomHomePagesTableModel; |
+ |
// Chrome browser options page UI handler. |
class BrowserOptionsHandler : public OptionsPageUIHandler, |
public ShellIntegration::DefaultBrowserObserver, |
- public TemplateURLModelObserver { |
+ public TemplateURLModelObserver, |
+ public TableModelObserver { |
public: |
BrowserOptionsHandler(); |
virtual ~BrowserOptionsHandler(); |
@@ -31,6 +35,12 @@ class BrowserOptionsHandler : public OptionsPageUIHandler, |
// TemplateURLModelObserver implementation. |
virtual void OnTemplateURLModelChanged(); |
+ // TableModelObserver implementation. |
+ virtual void OnModelChanged(); |
+ virtual void OnItemsChanged(int start, int length); |
+ virtual void OnItemsAdded(int start, int length); |
+ virtual void OnItemsRemoved(int start, int length); |
+ |
private: |
// Makes this the default browser. Called from DOMUI. |
void BecomeDefaultBrowser(const Value* value); |
@@ -38,6 +48,12 @@ class BrowserOptionsHandler : public OptionsPageUIHandler, |
// Sets the search engine at the given index to be default. Called from DOMUI. |
void SetDefaultSearchEngine(const Value* value); |
+ // Removes the startup page at the given indexes. Called from DOMUI. |
+ void RemoveStartupPages(const Value* value); |
+ |
+ // Sets the startup page set to the current pages. Called from DOMUI. |
+ void SetStartupPagesToCurrentPages(const Value* value); |
+ |
// Returns the string ID for the given default browser state. |
int StatusStringIdForState(ShellIntegration::DefaultBrowserState state); |
@@ -48,10 +64,24 @@ class BrowserOptionsHandler : public OptionsPageUIHandler, |
// Updates the UI with the given state for the default browser. |
void SetDefaultBrowserUIString(int status_string_id); |
+ // Loads the current set of custom startup pages and reports it to the DOMUI. |
+ void UpdateStartupPages(); |
+ |
+ // Loads the possible default search engine list and reports it to the DOMUI. |
+ void UpdateSearchEngines(); |
+ |
+ // Writes the current set of startup pages to prefs. |
+ void SaveStartupPagesPref(); |
+ |
scoped_refptr<ShellIntegration::DefaultBrowserWorker> default_browser_worker_; |
TemplateURLModel* template_url_model_; // Weak. |
+ // TODO(stuartmorgan): Once there are no other clients of |
+ // CustomHomePagesTableModel, consider changing it to something more like |
+ // TemplateURLModel. |
+ scoped_ptr<CustomHomePagesTableModel> startup_custom_pages_table_model_; |
+ |
DISALLOW_COPY_AND_ASSIGN(BrowserOptionsHandler); |
}; |