| OLD | NEW |
| (Empty) |
| 1 // Copyright 2017 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 IOS_CHROME_BROWSER_UI_SUGGESTIONS_SUGGESTIONS_EXPANDABLE_ITEM_H_ | |
| 6 #define IOS_CHROME_BROWSER_UI_SUGGESTIONS_SUGGESTIONS_EXPANDABLE_ITEM_H_ | |
| 7 | |
| 8 #import "ios/chrome/browser/ui/collection_view/cells/collection_view_item.h" | |
| 9 #import "ios/chrome/browser/ui/suggestions/expandable_item.h" | |
| 10 #import "ios/third_party/material_components_ios/src/components/CollectionCells/
src/MaterialCollectionCells.h" | |
| 11 | |
| 12 @class SuggestionsExpandableCell; | |
| 13 | |
| 14 // Delegate for the SuggestionsExpandableCell. The delegate will take care of | |
| 15 // the expansion/collapsing of the cell. | |
| 16 @protocol SuggestionsExpandableCellDelegate | |
| 17 | |
| 18 - (void)expandCell:(UICollectionViewCell*)cell; | |
| 19 - (void)collapseCell:(UICollectionViewCell*)cell; | |
| 20 | |
| 21 @end | |
| 22 | |
| 23 // Item for an expandable article in the suggestions. An expandable article can | |
| 24 // be expanded, displaying more informations/interactions. | |
| 25 @interface SuggestionsExpandableItem | |
| 26 : CollectionViewItem<SuggestionsExpandableArticle> | |
| 27 | |
| 28 // Init the article with a |title|, a |subtitle| an |image| and some |detail| | |
| 29 // displayed only when the article is expanded. |type| is the type of the item. | |
| 30 - (instancetype)initWithType:(NSInteger)type | |
| 31 title:(NSString*)title | |
| 32 subtitle:(NSString*)subtitle | |
| 33 image:(UIImage*)image | |
| 34 detailText:(NSString*)detail NS_DESIGNATED_INITIALIZER; | |
| 35 | |
| 36 - (instancetype)initWithType:(NSInteger)type NS_UNAVAILABLE; | |
| 37 | |
| 38 // Delegate for the configured cells. | |
| 39 @property(nonatomic, weak) id<SuggestionsExpandableCellDelegate> delegate; | |
| 40 | |
| 41 @end | |
| 42 | |
| 43 // Corresponding cell of an expandable article. | |
| 44 @interface SuggestionsExpandableCell : MDCCollectionViewCell | |
| 45 | |
| 46 @property(nonatomic, weak) id<SuggestionsExpandableCellDelegate> delegate; | |
| 47 @property(nonatomic, readonly, strong) UILabel* titleLabel; | |
| 48 @property(nonatomic, readonly, strong) UILabel* subtitleLabel; | |
| 49 @property(nonatomic, readonly, strong) UILabel* detailLabel; | |
| 50 @property(nonatomic, strong) UIImageView* imageView; | |
| 51 | |
| 52 - (void)expand; | |
| 53 - (void)collapse; | |
| 54 | |
| 55 @end | |
| 56 | |
| 57 #endif // IOS_CHROME_BROWSER_UI_SUGGESTIONS_SUGGESTIONS_EXPANDABLE_ITEM_H_ | |
| OLD | NEW |