app_list_view_delegate.h revision 5821806d5e7f356e8fa4b058a389a808ea183019
1// Copyright (c) 2012 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef CHROME_BROWSER_UI_APP_LIST_APP_LIST_VIEW_DELEGATE_H_ 6#define CHROME_BROWSER_UI_APP_LIST_APP_LIST_VIEW_DELEGATE_H_ 7 8#include <string> 9 10#include "base/basictypes.h" 11#include "base/compiler_specific.h" 12#include "base/memory/scoped_ptr.h" 13#include "chrome/browser/ui/app_list/app_list_controller.h" 14#include "ui/app_list/app_list_view_delegate.h" 15 16class AppsModelBuilder; 17class SearchBuilder; 18 19#if defined(USE_ASH) 20class AppSyncUIStateWatcher; 21#endif 22 23class AppListViewDelegate : public app_list::AppListViewDelegate { 24 public: 25 // The delegate will take ownership of the controller. 26 explicit AppListViewDelegate(AppListControllerDelegate* controller); 27 virtual ~AppListViewDelegate(); 28 29 private: 30 // Overridden from app_list::AppListViewDelegate: 31 virtual void SetModel(app_list::AppListModel* model) OVERRIDE; 32 virtual void ActivateAppListItem(app_list::AppListItemModel* item, 33 int event_flags) OVERRIDE; 34 virtual void StartSearch() OVERRIDE; 35 virtual void StopSearch() OVERRIDE; 36 virtual void OpenSearchResult(const app_list::SearchResult& result, 37 int event_flags) OVERRIDE; 38 virtual void InvokeSearchResultAction(const app_list::SearchResult& result, 39 int action_index, 40 int event_flags) OVERRIDE; 41 virtual void Close() OVERRIDE; 42 virtual void ViewClosing() OVERRIDE; 43 virtual void ViewActivationChanged(bool active) OVERRIDE; 44 45 scoped_ptr<AppsModelBuilder> apps_builder_; 46 scoped_ptr<SearchBuilder> search_builder_; 47 scoped_ptr<AppListControllerDelegate> controller_; 48 49#if defined(USE_ASH) 50 scoped_ptr<AppSyncUIStateWatcher> app_sync_ui_state_watcher_; 51#endif 52 53 DISALLOW_COPY_AND_ASSIGN(AppListViewDelegate); 54}; 55 56#endif // CHROME_BROWSER_UI_APP_LIST_APP_LIST_VIEW_DELEGATE_H_ 57