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

Side by Side Diff: ui/aura_shell/launcher/launcher_model.cc

Issue 8247012: Positions the launcher in the bottom left corner. Adds ShellDelegate (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Tweaks Created 9 years, 2 months 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 #include "ui/aura_shell/launcher/launcher_model.h" 5 #include "ui/aura_shell/launcher/launcher_model.h"
6 6
7 #include "ui/aura_shell/launcher/launcher_model_observer.h" 7 #include "ui/aura_shell/launcher/launcher_model_observer.h"
8 #include "views/view.h"
9 8
10 namespace aura_shell { 9 namespace aura_shell {
11 10
12 LauncherModel::LauncherModel() : selected_index_(-1) { 11 LauncherModel::LauncherModel() {
13 } 12 }
14 13
15 LauncherModel::~LauncherModel() { 14 LauncherModel::~LauncherModel() {
16 for (Items::iterator i = items_.begin(); i != items_.end(); ++i) {
17 delete i->view;
18 i->view = NULL;
19 }
20 } 15 }
21 16
22 void LauncherModel::AddItem(views::View* view, int index, bool draggable) { 17 void LauncherModel::Add(int index, const LauncherItem& item) {
23 DCHECK(index >= 0 && index <= item_count()); 18 DCHECK(index >= 0 && index <= item_count());
24 Item item;
25 item.view = view;
26 item.draggable = draggable;
27 items_.insert(items_.begin() + index, item); 19 items_.insert(items_.begin() + index, item);
28 FOR_EACH_OBSERVER(LauncherModelObserver, observers_, 20 FOR_EACH_OBSERVER(LauncherModelObserver, observers_,
29 LauncherItemAdded(index)); 21 LauncherItemAdded(index));
30 } 22 }
31 23
32 void LauncherModel::RemoveItem(views::View* view) {
33 int index = IndexOfItemByView(view);
34 if (index != -1)
35 RemoveItemAt(index);
36 }
37
38 void LauncherModel::RemoveItemAt(int index) { 24 void LauncherModel::RemoveItemAt(int index) {
39 DCHECK(index >= 0 && index < item_count()); 25 DCHECK(index >= 0 && index < item_count());
40 items_.erase(items_.begin() + index); 26 items_.erase(items_.begin() + index);
41 FOR_EACH_OBSERVER(LauncherModelObserver, observers_, 27 FOR_EACH_OBSERVER(LauncherModelObserver, observers_,
42 LauncherItemRemoved(index)); 28 LauncherItemRemoved(index));
43 } 29 }
44 30
45 void LauncherModel::SetSelectedIndex(int index) { 31 void LauncherModel::SetTabbedImages(int index,
46 if (index == selected_index_) 32 const LauncherTabbedImages& images) {
47 return; 33 DCHECK(index >= 0 && index < item_count());
48 DCHECK(selected_index_ == -1 || 34 DCHECK_EQ(TYPE_TABBED, items_[index].type);
49 (selected_index_ >= 0 && selected_index_ < item_count())); 35 items_[index].tab_images = images;
50 selected_index_ = index;
51 FOR_EACH_OBSERVER(LauncherModelObserver, observers_, 36 FOR_EACH_OBSERVER(LauncherModelObserver, observers_,
52 LauncherSelectionChanged()); 37 LauncherItemImagesChanged(index));
53 } 38 }
54 39
55 int LauncherModel::IndexOfItemByView(views::View* view) { 40 void LauncherModel::SetAppImage(int index, const SkBitmap& image) {
56 for (Items::const_iterator i = items_.begin(); i != items_.end(); ++i) { 41 DCHECK(index >= 0 && index < item_count());
57 if (i->view == view) 42 DCHECK_EQ(TYPE_APP, items_[index].type);
58 return i - items_.begin(); 43 items_[index].app_image = image;
59 } 44 FOR_EACH_OBSERVER(LauncherModelObserver, observers_,
60 return -1; 45 LauncherItemImagesChanged(index));
61 } 46 }
62 47
63 void LauncherModel::AddObserver(LauncherModelObserver* observer) { 48 void LauncherModel::AddObserver(LauncherModelObserver* observer) {
64 observers_.AddObserver(observer); 49 observers_.AddObserver(observer);
65 } 50 }
66 51
67 void LauncherModel::RemoveObserver(LauncherModelObserver* observer) { 52 void LauncherModel::RemoveObserver(LauncherModelObserver* observer) {
68 observers_.RemoveObserver(observer); 53 observers_.RemoveObserver(observer);
69 } 54 }
70 55
71 } // namespace aura_shell 56 } // namespace aura_shell
OLDNEW
« no previous file with comments | « ui/aura_shell/launcher/launcher_model.h ('k') | ui/aura_shell/launcher/launcher_model_observer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698