diff options
author | kmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-10 20:40:28 +0000 |
---|---|---|
committer | kmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-10 20:40:28 +0000 |
commit | 810f807eb6136de803bd7204d50b34f271f171d9 (patch) | |
tree | 895f4d8751a5c93f1568a95ae51f8a1b66ce38a5 /chrome/browser | |
parent | e484b4ec2b99863f79a3175849322ab0c7d77229 (diff) | |
download | chromium_src-810f807eb6136de803bd7204d50b34f271f171d9.zip chromium_src-810f807eb6136de803bd7204d50b34f271f171d9.tar.gz chromium_src-810f807eb6136de803bd7204d50b34f271f171d9.tar.bz2 |
C++ readability change for kmadhusu.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/5054003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68883 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser')
-rw-r--r-- | chrome/browser/printing/print_preview_tab_controller.cc | 146 | ||||
-rw-r--r-- | chrome/browser/printing/print_preview_tab_controller.h | 30 |
2 files changed, 88 insertions, 88 deletions
diff --git a/chrome/browser/printing/print_preview_tab_controller.cc b/chrome/browser/printing/print_preview_tab_controller.cc index 2cc8514..bf7c9cc 100644 --- a/chrome/browser/printing/print_preview_tab_controller.cc +++ b/chrome/browser/printing/print_preview_tab_controller.cc @@ -16,6 +16,12 @@ namespace printing { +PrintPreviewTabController::PrintPreviewTabController() + : waiting_for_new_preview_page_(false) { +} + +PrintPreviewTabController::~PrintPreviewTabController() {} + // static PrintPreviewTabController* PrintPreviewTabController::GetInstance() { if (!g_browser_process) @@ -23,14 +29,6 @@ PrintPreviewTabController* PrintPreviewTabController::GetInstance() { return g_browser_process->print_preview_tab_controller(); } -PrintPreviewTabController::PrintPreviewTabController() - : waiting_for_new_preview_page_(false) { -} - -PrintPreviewTabController::~PrintPreviewTabController() { - preview_tab_map_.clear(); -} - TabContents* PrintPreviewTabController::GetOrCreatePreviewTab( TabContents* initiator_tab, int browser_window_id ) { DCHECK(initiator_tab); @@ -45,72 +43,6 @@ TabContents* PrintPreviewTabController::GetOrCreatePreviewTab( return CreatePrintPreviewTab(initiator_tab, browser_window_id); } -// static -bool PrintPreviewTabController::IsPrintPreviewTab(TabContents* tab) { - const GURL& url = tab->GetURL(); - return (url.SchemeIs(chrome::kChromeUIScheme) && - url.host() == chrome::kChromeUIPrintHost); -} - -TabContents* PrintPreviewTabController::GetInitiatorTab( - TabContents* preview_tab) { - PrintPreviewTabMap::iterator it = preview_tab_map_.find(preview_tab); - if (it != preview_tab_map_.end()) - return preview_tab_map_[preview_tab]; - return NULL; -} - -TabContents* PrintPreviewTabController::GetPrintPreviewForTab( - TabContents* tab) { - PrintPreviewTabMap::iterator it = preview_tab_map_.find(tab); - if (it != preview_tab_map_.end()) - return tab; - - for (it = preview_tab_map_.begin(); it != preview_tab_map_.end(); ++it) { - if (it->second == tab) - return it->first; - } - return NULL; -} - -void PrintPreviewTabController::AddObservers(TabContents* tab) { - registrar_.Add(this, NotificationType::TAB_CONTENTS_DESTROYED, - Source<TabContents>(tab)); - registrar_.Add(this, NotificationType::NAV_ENTRY_COMMITTED, - Source<NavigationController>(&tab->controller())); -} - -void PrintPreviewTabController::RemoveObservers(TabContents* tab) { - registrar_.Remove(this, NotificationType::TAB_CONTENTS_DESTROYED, - Source<TabContents>(tab)); - registrar_.Remove(this, NotificationType::NAV_ENTRY_COMMITTED, - Source<NavigationController>(&tab->controller())); -} - -TabContents* PrintPreviewTabController::CreatePrintPreviewTab( - TabContents* initiator_tab, int browser_window_id) { - Browser* current_browser = BrowserList::FindBrowserWithID(browser_window_id); - // Add a new tab next to initiator tab. - browser::NavigateParams params(current_browser, - GURL(chrome::kChromeUIPrintURL), - PageTransition::LINK); - params.disposition = NEW_FOREGROUND_TAB; - params.tabstrip_index = current_browser->tabstrip_model()-> - GetWrapperIndex(initiator_tab) + 1; - browser::Navigate(¶ms); - TabContentsWrapper* preview_tab = params.target_contents; - preview_tab->tab_contents()->Activate(); - - // Add an entry to the map. - preview_tab_map_[preview_tab->tab_contents()] = initiator_tab; - waiting_for_new_preview_page_ = true; - - AddObservers(initiator_tab); - AddObservers(preview_tab->tab_contents()); - - return preview_tab->tab_contents(); -} - void PrintPreviewTabController::Observe(NotificationType type, const NotificationSource& source, const NotificationDetails& details) { @@ -190,4 +122,70 @@ void PrintPreviewTabController::Observe(NotificationType type, RemoveObservers(initiator_tab); } +// static +bool PrintPreviewTabController::IsPrintPreviewTab(TabContents* tab) { + const GURL& url = tab->GetURL(); + return (url.SchemeIs(chrome::kChromeUIScheme) && + url.host() == chrome::kChromeUIPrintHost); +} + +TabContents* PrintPreviewTabController::GetInitiatorTab( + TabContents* preview_tab) { + PrintPreviewTabMap::iterator it = preview_tab_map_.find(preview_tab); + if (it != preview_tab_map_.end()) + return preview_tab_map_[preview_tab]; + return NULL; +} + +TabContents* PrintPreviewTabController::GetPrintPreviewForTab( + TabContents* tab) { + PrintPreviewTabMap::iterator it = preview_tab_map_.find(tab); + if (it != preview_tab_map_.end()) + return tab; + + for (it = preview_tab_map_.begin(); it != preview_tab_map_.end(); ++it) { + if (it->second == tab) + return it->first; + } + return NULL; +} + +TabContents* PrintPreviewTabController::CreatePrintPreviewTab( + TabContents* initiator_tab, int browser_window_id) { + Browser* current_browser = BrowserList::FindBrowserWithID(browser_window_id); + // Add a new tab next to initiator tab. + browser::NavigateParams params(current_browser, + GURL(chrome::kChromeUIPrintURL), + PageTransition::LINK); + params.disposition = NEW_FOREGROUND_TAB; + params.tabstrip_index = current_browser->tabstrip_model()-> + GetWrapperIndex(initiator_tab) + 1; + browser::Navigate(¶ms); + TabContentsWrapper* preview_tab = params.target_contents; + preview_tab->tab_contents()->Activate(); + + // Add an entry to the map. + preview_tab_map_[preview_tab->tab_contents()] = initiator_tab; + waiting_for_new_preview_page_ = true; + + AddObservers(initiator_tab); + AddObservers(preview_tab->tab_contents()); + + return preview_tab->tab_contents(); +} + +void PrintPreviewTabController::AddObservers(TabContents* tab) { + registrar_.Add(this, NotificationType::TAB_CONTENTS_DESTROYED, + Source<TabContents>(tab)); + registrar_.Add(this, NotificationType::NAV_ENTRY_COMMITTED, + Source<NavigationController>(&tab->controller())); +} + +void PrintPreviewTabController::RemoveObservers(TabContents* tab) { + registrar_.Remove(this, NotificationType::TAB_CONTENTS_DESTROYED, + Source<TabContents>(tab)); + registrar_.Remove(this, NotificationType::NAV_ENTRY_COMMITTED, + Source<NavigationController>(&tab->controller())); +} + } // namespace printing diff --git a/chrome/browser/printing/print_preview_tab_controller.h b/chrome/browser/printing/print_preview_tab_controller.h index 5be6118..a3d01ea 100644 --- a/chrome/browser/printing/print_preview_tab_controller.h +++ b/chrome/browser/printing/print_preview_tab_controller.h @@ -2,7 +2,14 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +// For print preview, a print preview (PP) tab is linked with the initiator tab +// that initiated the printing operation. If the tab initiates a second +// printing operation while the first print preview tab is still open, that PP +// tab is focused/activated. There may be more than one PP tab open. There is a +// 1:1 relationship between PP tabs and initiating tabs. This class manages PP +// tabs and initiator tabs. #ifndef CHROME_BROWSER_PRINTING_PRINT_PREVIEW_TAB_CONTROLLER_H_ + #define CHROME_BROWSER_PRINTING_PRINT_PREVIEW_TAB_CONTROLLER_H_ #pragma once @@ -17,22 +24,16 @@ class TabContents; namespace printing { -// For print preview, a print preview (PP) tab is linked with the initiator tab -// that initiated the printing operation. If the tab initiates a second -// printing operation while the first print preview tab is still open, that PP -// tab is focused/activated. There may be more than one PP tab open. There is a -// 1:1 relationship between PP tabs and initiating tabs. This class manages PP -// tabs and initiator tabs. class PrintPreviewTabController - : public base::RefCounted<PrintPreviewTabController>, - public NotificationObserver { + : public base::RefCounted<PrintPreviewTabController>, + public NotificationObserver { public: - static PrintPreviewTabController* GetInstance(); - PrintPreviewTabController(); virtual ~PrintPreviewTabController(); + static PrintPreviewTabController* GetInstance(); + // Get/Create the print preview tab for |initiator_tab|. // |browser_window_id| is the browser window containing |initiator_tab|. TabContents* GetOrCreatePreviewTab( @@ -49,6 +50,11 @@ class PrintPreviewTabController private: friend class base::RefCounted<PrintPreviewTabController>; + // 1:1 relationship between initiator tab and print preview tab. + // Key: Preview tab. + // Value: Initiator tab. + typedef std::map<TabContents*, TabContents*> PrintPreviewTabMap; + // Returns initiator tab for |preview_tab|. // Returns NULL if no initiator tab exists for |preview_tab|. TabContents* GetInitiatorTab(TabContents* preview_tab); @@ -66,10 +72,6 @@ class PrintPreviewTabController void AddObservers(TabContents* tab); void RemoveObservers(TabContents* tab); - // 1:1 relationship between initiator tab and print preview tab. - // Key: Preview tab. - // Value: Initiator tab. - typedef std::map<TabContents*, TabContents*> PrintPreviewTabMap; PrintPreviewTabMap preview_tab_map_; // A registrar for listening notifications. |