Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(737)

Side by Side Diff: chrome/browser/tabs/tab_strip_model_order_controller.h

Issue 4694008: Make pink's TabContentsWrapper change compile on Windows.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 10 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_TABS_TAB_STRIP_MODEL_ORDER_CONTROLLER_H_ 5 #ifndef CHROME_BROWSER_TABS_TAB_STRIP_MODEL_ORDER_CONTROLLER_H_
6 #define CHROME_BROWSER_TABS_TAB_STRIP_MODEL_ORDER_CONTROLLER_H_ 6 #define CHROME_BROWSER_TABS_TAB_STRIP_MODEL_ORDER_CONTROLLER_H_
7 #pragma once 7 #pragma once
8 8
9 #include "chrome/browser/tabs/tab_strip_model.h" 9 #include "chrome/browser/tabs/tab_strip_model.h"
10 #include "chrome/common/page_transition_types.h" 10 #include "chrome/common/page_transition_types.h"
11 11
12 class TabContents; 12 class TabContentsWrapper;
13 13
14 /////////////////////////////////////////////////////////////////////////////// 14 ///////////////////////////////////////////////////////////////////////////////
15 // TabStripModelOrderController 15 // TabStripModelOrderController
16 // 16 //
17 // An object that allows different types of ordering and reselection to be 17 // An object that allows different types of ordering and reselection to be
18 // heuristics plugged into a TabStripModel. 18 // heuristics plugged into a TabStripModel.
19 // 19 //
20 class TabStripModelOrderController : public TabStripModelObserver { 20 class TabStripModelOrderController : public TabStripModelObserver {
21 public: 21 public:
22 explicit TabStripModelOrderController(TabStripModel* tabstrip); 22 explicit TabStripModelOrderController(TabStripModel* tabstrip);
23 virtual ~TabStripModelOrderController(); 23 virtual ~TabStripModelOrderController();
24 24
25 // Sets the insertion policy. Default is INSERT_AFTER. 25 // Sets the insertion policy. Default is INSERT_AFTER.
26 void set_insertion_policy(TabStripModel::InsertionPolicy policy) { 26 void set_insertion_policy(TabStripModel::InsertionPolicy policy) {
27 insertion_policy_ = policy; 27 insertion_policy_ = policy;
28 } 28 }
29 TabStripModel::InsertionPolicy insertion_policy() const { 29 TabStripModel::InsertionPolicy insertion_policy() const {
30 return insertion_policy_; 30 return insertion_policy_;
31 } 31 }
32 32
33 // Determine where to place a newly opened tab by using the supplied 33 // Determine where to place a newly opened tab by using the supplied
34 // transition and foreground flag to figure out how it was opened. 34 // transition and foreground flag to figure out how it was opened.
35 int DetermineInsertionIndex(TabContents* new_contents, 35 int DetermineInsertionIndex(TabContentsWrapper* new_contents,
36 PageTransition::Type transition, 36 PageTransition::Type transition,
37 bool foreground); 37 bool foreground);
38 38
39 // Returns the index to append tabs at. 39 // Returns the index to append tabs at.
40 int DetermineInsertionIndexForAppending(); 40 int DetermineInsertionIndexForAppending();
41 41
42 // Determine where to shift selection after a tab is closed. 42 // Determine where to shift selection after a tab is closed.
43 int DetermineNewSelectedIndex(int removed_index) const; 43 int DetermineNewSelectedIndex(int removed_index) const;
44 44
45 // Overridden from TabStripModelObserver: 45 // Overridden from TabStripModelObserver:
46 virtual void TabSelectedAt(TabContents* old_contents, 46 virtual void TabSelectedAt(TabContentsWrapper* old_contents,
47 TabContents* new_contents, 47 TabContentsWrapper* new_contents,
48 int index, 48 int index,
49 bool user_gesture); 49 bool user_gesture);
50 50
51 private: 51 private:
52 // Returns a valid index to be selected after the tab at |removing_index| is 52 // Returns a valid index to be selected after the tab at |removing_index| is
53 // closed. If |index| is after |removing_index|, |index| is adjusted to 53 // closed. If |index| is after |removing_index|, |index| is adjusted to
54 // reflect the fact that |removing_index| is going away. 54 // reflect the fact that |removing_index| is going away.
55 int GetValidIndex(int index, int removing_index) const; 55 int GetValidIndex(int index, int removing_index) const;
56 56
57 TabStripModel* tabstrip_; 57 TabStripModel* tabstrip_;
58 58
59 TabStripModel::InsertionPolicy insertion_policy_; 59 TabStripModel::InsertionPolicy insertion_policy_;
60 60
61 DISALLOW_COPY_AND_ASSIGN(TabStripModelOrderController); 61 DISALLOW_COPY_AND_ASSIGN(TabStripModelOrderController);
62 }; 62 };
63 63
64 #endif // CHROME_BROWSER_TABS_TAB_STRIP_MODEL_ORDER_CONTROLLER_H_ 64 #endif // CHROME_BROWSER_TABS_TAB_STRIP_MODEL_ORDER_CONTROLLER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698