| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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 #import "ios/chrome/browser/ui/ntp/new_tab_page_bar_item.h" | 5 #import "ios/chrome/browser/ui/ntp/new_tab_page_bar_item.h" |
| 6 | 6 |
| 7 #include "base/mac/objc_property_releaser.h" | 7 #if !defined(__has_feature) || !__has_feature(objc_arc) |
| 8 #error "This file requires ARC support." |
| 9 #endif |
| 8 | 10 |
| 9 @implementation NewTabPageBarItem { | 11 @implementation NewTabPageBarItem |
| 10 // Title of the button. | 12 @synthesize title; |
| 11 NSString* title_; | 13 @synthesize identifier; |
| 12 // A numeric identifier. | 14 @synthesize image; |
| 13 NSUInteger identifier_; | 15 @synthesize view; |
| 14 // Tabbar image. | |
| 15 UIImage* image_; | |
| 16 // New tab page view. | |
| 17 __unsafe_unretained UIView* view_; // weak | |
| 18 base::mac::ObjCPropertyReleaser propertyReleaser_NewTabPageBarItem_; | |
| 19 } | |
| 20 | |
| 21 @synthesize title = title_; | |
| 22 @synthesize identifier = identifier_; | |
| 23 @synthesize image = image_; | |
| 24 @synthesize view = view_; | |
| 25 | 16 |
| 26 + (NewTabPageBarItem*)newTabPageBarItemWithTitle:(NSString*)title | 17 + (NewTabPageBarItem*)newTabPageBarItemWithTitle:(NSString*)title |
| 27 identifier:(NSUInteger)identifier | 18 identifier:(NSUInteger)identifier |
| 28 image:(UIImage*)image { | 19 image:(UIImage*)image { |
| 29 NewTabPageBarItem* item = [[[NewTabPageBarItem alloc] init] autorelease]; | 20 NewTabPageBarItem* item = [[NewTabPageBarItem alloc] init]; |
| 30 if (item) { | 21 if (item) { |
| 31 item.title = title; | 22 item.title = title; |
| 32 item.identifier = identifier; | 23 item.identifier = identifier; |
| 33 item.image = image; | 24 item.image = image; |
| 34 } | 25 } |
| 35 return item; | 26 return item; |
| 36 } | 27 } |
| 37 | 28 |
| 38 - (id)init { | |
| 39 self = [super init]; | |
| 40 if (self) { | |
| 41 propertyReleaser_NewTabPageBarItem_.Init(self, [NewTabPageBarItem class]); | |
| 42 } | |
| 43 return self; | |
| 44 } | |
| 45 | |
| 46 @end | 29 @end |
| OLD | NEW |