app_list_view_controller.h revision 2a99a7e74a7f215066514fe81d2bfa6639d9eddd
1// Copyright 2013 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 UI_APP_LIST_COCOA_APP_LIST_VIEW_CONTROLLER_H_ 6#define UI_APP_LIST_COCOA_APP_LIST_VIEW_CONTROLLER_H_ 7 8#import <Cocoa/Cocoa.h> 9 10#include "base/memory/scoped_nsobject.h" 11#include "base/memory/scoped_ptr.h" 12#import "ui/app_list/cocoa/apps_pagination_model_observer.h" 13 14namespace app_list { 15class AppListViewDelegate; 16} 17 18@class AppsGridController; 19 20// Controller for the top-level view of the app list UI. It creates and hosts an 21// AppsGridController (displaying an AppListModel), and pager control for 22// navigating between pages in the grid. 23@interface AppListViewController : 24 NSViewController<AppsPaginationModelObserver> { 25 @private 26 scoped_nsobject<AppsGridController> appsGridController_; 27 scoped_nsobject<NSSegmentedControl> pagerControl_; 28 scoped_ptr<app_list::AppListViewDelegate> delegate_; 29} 30 31- (AppsGridController*)appsGridController; 32 33- (NSSegmentedControl*)pagerControl; 34 35- (app_list::AppListViewDelegate*)delegate; 36 37- (void)setDelegate:(scoped_ptr<app_list::AppListViewDelegate>)newDelegate; 38 39@end 40 41#endif // UI_APP_LIST_COCOA_APP_LIST_VIEW_CONTROLLER_H_ 42