OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef ATHENA_HOME_PUBLIC_APP_MODEL_BUILDER_H_ | 5 #ifndef ATHENA_HOME_PUBLIC_APP_MODEL_BUILDER_H_ |
6 #define ATHENA_HOME_PUBLIC_APP_MODEL_BUILDER_H_ | 6 #define ATHENA_HOME_PUBLIC_APP_MODEL_BUILDER_H_ |
7 | 7 |
8 #include "athena/common/athena_export.h" | 8 #include "athena/athena_export.h" |
9 | 9 |
10 namespace app_list { | 10 namespace app_list { |
11 class AppListModel; | 11 class AppListModel; |
12 } // namespace app_list | 12 } // namespace app_list |
13 | 13 |
14 namespace athena { | 14 namespace athena { |
15 | 15 |
16 // An interface to fill the list of apps in the home card. | 16 // An interface to fill the list of apps in the home card. |
17 // TODO(mukai): integrate the interface with chrome/browser/ui/app_list/ | 17 // TODO(mukai): integrate the interface with chrome/browser/ui/app_list/ |
18 // extension_app_model_builder. | 18 // extension_app_model_builder. |
19 class ATHENA_EXPORT AppModelBuilder { | 19 class ATHENA_EXPORT AppModelBuilder { |
20 public: | 20 public: |
21 virtual ~AppModelBuilder() {} | 21 virtual ~AppModelBuilder() {} |
22 | 22 |
23 // Fills |model| with the currently available app_list::AppListItems. | 23 // Fills |model| with the currently available app_list::AppListItems. |
24 virtual void PopulateApps(app_list::AppListModel* model) = 0; | 24 virtual void PopulateApps(app_list::AppListModel* model) = 0; |
25 }; | 25 }; |
26 | 26 |
27 } // namespace athena | 27 } // namespace athena |
28 | 28 |
29 #endif // ATHENA_HOME_PUBLIC_APP_MODEL_BUILDER_H_ | 29 #endif // ATHENA_HOME_PUBLIC_APP_MODEL_BUILDER_H_ |
OLD | NEW |