Index: ui/aura_shell/examples/app_list.cc |
=================================================================== |
--- ui/aura_shell/examples/app_list.cc (revision 115517) |
+++ ui/aura_shell/examples/app_list.cc (working copy) |
@@ -1,163 +0,0 @@ |
-// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "base/basictypes.h" |
-#include "ui/aura_shell/app_list/app_list_item_group_model.h" |
-#include "ui/aura_shell/app_list/app_list_item_model.h" |
-#include "ui/aura_shell/app_list/app_list_item_view.h" |
-#include "ui/aura_shell/app_list/app_list_model.h" |
-#include "ui/aura_shell/app_list/app_list_view_delegate.h" |
-#include "ui/aura_shell/app_list/app_list_view.h" |
-#include "ui/aura_shell/examples/example_factory.h" |
-#include "ui/aura_shell/examples/toplevel_window.h" |
-#include "ui/views/examples/examples_window.h" |
- |
-namespace aura_shell { |
-namespace examples { |
- |
-namespace { |
- |
-class WindowTypeLauncherItem : public AppListItemModel { |
- public: |
- enum Type { |
- TOPLEVEL_WINDOW = 0, |
- NON_RESIZABLE_WINDOW, |
- LOCK_SCREEN, |
- WIDGETS_WINDOW, |
- EXAMPLES_WINDOW, |
- LAST_TYPE, |
- }; |
- |
- WindowTypeLauncherItem(Type type) : type_(type) { |
- SetIcon(GetIcon(type)); |
- SetTitle(GetTitle(type)); |
- } |
- |
- static SkBitmap GetIcon(Type type) { |
- static const SkColor kColors[] = { |
- SkColorSetA(SK_ColorRED, 0x4F), |
- SkColorSetA(SK_ColorGREEN, 0x4F), |
- SkColorSetA(SK_ColorBLUE, 0x4F), |
- SkColorSetA(SK_ColorYELLOW, 0x4F), |
- SkColorSetA(SK_ColorCYAN, 0x4F), |
- }; |
- |
- SkBitmap icon; |
- icon.setConfig(SkBitmap::kARGB_8888_Config, |
- AppListItemView::kIconSize, |
- AppListItemView::kIconSize); |
- icon.allocPixels(); |
- icon.eraseColor(kColors[static_cast<int>(type) % arraysize(kColors)]); |
- return icon; |
- } |
- |
- static std::string GetTitle(Type type) { |
- switch (type) { |
- case TOPLEVEL_WINDOW: |
- return "Create Window"; |
- case NON_RESIZABLE_WINDOW: |
- return "Create Non-Resizable Window"; |
- case LOCK_SCREEN: |
- return "Lock Screen"; |
- case WIDGETS_WINDOW: |
- return "Show Example Widgets"; |
- case EXAMPLES_WINDOW: |
- return "Open Views Examples Window"; |
- default: |
- return "Unknown window type."; |
- } |
- } |
- |
- void Activate(int event_flags) { |
- switch (type_) { |
- case TOPLEVEL_WINDOW: { |
- ToplevelWindow::CreateParams params; |
- params.can_resize = true; |
- ToplevelWindow::CreateToplevelWindow(params); |
- break; |
- } |
- case NON_RESIZABLE_WINDOW: { |
- ToplevelWindow::CreateToplevelWindow(ToplevelWindow::CreateParams()); |
- break; |
- } |
- case LOCK_SCREEN: { |
- CreateLockScreen(); |
- break; |
- } |
- case WIDGETS_WINDOW: { |
- CreateWidgetsWindow(); |
- break; |
- } |
- case EXAMPLES_WINDOW: { |
- views::examples::ShowExamplesWindow(false); |
- break; |
- } |
- default: |
- break; |
- } |
- } |
- |
- private: |
- Type type_; |
- |
- DISALLOW_COPY_AND_ASSIGN(WindowTypeLauncherItem); |
-}; |
- |
-class ExampleAppListViewDelegate : public AppListViewDelegate { |
- public: |
- ExampleAppListViewDelegate() {} |
- |
- private: |
- virtual void OnAppListItemActivated(AppListItemModel* item, |
- int event_flags) OVERRIDE { |
- static_cast<WindowTypeLauncherItem*>(item)->Activate(event_flags); |
- } |
- |
- DISALLOW_COPY_AND_ASSIGN(ExampleAppListViewDelegate); |
-}; |
- |
-AppListItemGroupModel* CreateGroup(const std::string& title, |
- WindowTypeLauncherItem::Type start_type, |
- WindowTypeLauncherItem::Type end_type) { |
- AppListItemGroupModel* group = new AppListItemGroupModel(title); |
- for (int i = static_cast<int>(start_type); |
- i < static_cast<int>(end_type); |
- ++i) { |
- WindowTypeLauncherItem::Type type = |
- static_cast<WindowTypeLauncherItem::Type>(i); |
- group->AddItem(new WindowTypeLauncherItem(type)); |
- } |
- return group; |
-} |
- |
-} // namespace |
- |
-void BuildAppListModel(AppListModel* model) { |
- model->AddGroup(CreateGroup("Windows", |
- WindowTypeLauncherItem::TOPLEVEL_WINDOW, |
- WindowTypeLauncherItem::WIDGETS_WINDOW)); |
- model->AddGroup(CreateGroup("Samples", |
- WindowTypeLauncherItem::WIDGETS_WINDOW, |
- WindowTypeLauncherItem::LAST_TYPE)); |
-} |
- |
-AppListViewDelegate* CreateAppListViewDelegate() { |
- return new ExampleAppListViewDelegate; |
-} |
- |
-// TODO(xiyuan): Remove this. |
-void CreateAppList(const gfx::Rect& bounds, |
- const ShellDelegate::SetWidgetCallback& callback) { |
- AppListModel* model = new AppListModel(); |
- BuildAppListModel(model); |
- |
- new aura_shell::AppListView( |
- model, |
- CreateAppListViewDelegate(), |
- bounds, |
- callback); |
-} |
- |
-} // namespace examples |
-} // namespace aura_shell |