summaryrefslogtreecommitdiffstats
path: root/ui/aura_shell/launcher/launcher_model.cc
diff options
context:
space:
mode:
Diffstat (limited to 'ui/aura_shell/launcher/launcher_model.cc')
-rw-r--r--ui/aura_shell/launcher/launcher_model.cc43
1 files changed, 14 insertions, 29 deletions
diff --git a/ui/aura_shell/launcher/launcher_model.cc b/ui/aura_shell/launcher/launcher_model.cc
index 58ab9d3..43a6d00 100644
--- a/ui/aura_shell/launcher/launcher_model.cc
+++ b/ui/aura_shell/launcher/launcher_model.cc
@@ -5,36 +5,22 @@
#include "ui/aura_shell/launcher/launcher_model.h"
#include "ui/aura_shell/launcher/launcher_model_observer.h"
-#include "views/view.h"
namespace aura_shell {
-LauncherModel::LauncherModel() : selected_index_(-1) {
+LauncherModel::LauncherModel() {
}
LauncherModel::~LauncherModel() {
- for (Items::iterator i = items_.begin(); i != items_.end(); ++i) {
- delete i->view;
- i->view = NULL;
- }
}
-void LauncherModel::AddItem(views::View* view, int index, bool draggable) {
+void LauncherModel::Add(int index, const LauncherItem& item) {
DCHECK(index >= 0 && index <= item_count());
- Item item;
- item.view = view;
- item.draggable = draggable;
items_.insert(items_.begin() + index, item);
FOR_EACH_OBSERVER(LauncherModelObserver, observers_,
LauncherItemAdded(index));
}
-void LauncherModel::RemoveItem(views::View* view) {
- int index = IndexOfItemByView(view);
- if (index != -1)
- RemoveItemAt(index);
-}
-
void LauncherModel::RemoveItemAt(int index) {
DCHECK(index >= 0 && index < item_count());
items_.erase(items_.begin() + index);
@@ -42,22 +28,21 @@ void LauncherModel::RemoveItemAt(int index) {
LauncherItemRemoved(index));
}
-void LauncherModel::SetSelectedIndex(int index) {
- if (index == selected_index_)
- return;
- DCHECK(selected_index_ == -1 ||
- (selected_index_ >= 0 && selected_index_ < item_count()));
- selected_index_ = index;
+void LauncherModel::SetTabbedImages(int index,
+ const LauncherTabbedImages& images) {
+ DCHECK(index >= 0 && index < item_count());
+ DCHECK_EQ(TYPE_TABBED, items_[index].type);
+ items_[index].tab_images = images;
FOR_EACH_OBSERVER(LauncherModelObserver, observers_,
- LauncherSelectionChanged());
+ LauncherItemImagesChanged(index));
}
-int LauncherModel::IndexOfItemByView(views::View* view) {
- for (Items::const_iterator i = items_.begin(); i != items_.end(); ++i) {
- if (i->view == view)
- return i - items_.begin();
- }
- return -1;
+void LauncherModel::SetAppImage(int index, const SkBitmap& image) {
+ DCHECK(index >= 0 && index < item_count());
+ DCHECK_EQ(TYPE_APP, items_[index].type);
+ items_[index].app_image = image;
+ FOR_EACH_OBSERVER(LauncherModelObserver, observers_,
+ LauncherItemImagesChanged(index));
}
void LauncherModel::AddObserver(LauncherModelObserver* observer) {