| 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 #include "base/mac/objc_release_properties.h" |
| 8 | 8 |
| 9 @implementation NewTabPageBarItem { | 9 @implementation NewTabPageBarItem { |
| 10 // Title of the button. | 10 // Title of the button. |
| 11 NSString* title_; | 11 NSString* title_; |
| 12 // A numeric identifier. | 12 // A numeric identifier. |
| 13 NSUInteger identifier_; | 13 NSUInteger identifier_; |
| 14 // Tabbar image. | 14 // Tabbar image. |
| 15 UIImage* image_; | 15 UIImage* image_; |
| 16 // New tab page view. | 16 // New tab page view. |
| 17 __unsafe_unretained UIView* view_; // weak | 17 __unsafe_unretained UIView* view_; // weak |
| 18 base::mac::ObjCPropertyReleaser propertyReleaser_NewTabPageBarItem_; | |
| 19 } | 18 } |
| 20 | 19 |
| 21 @synthesize title = title_; | 20 @synthesize title = title_; |
| 22 @synthesize identifier = identifier_; | 21 @synthesize identifier = identifier_; |
| 23 @synthesize image = image_; | 22 @synthesize image = image_; |
| 24 @synthesize view = view_; | 23 @synthesize view = view_; |
| 25 | 24 |
| 26 + (NewTabPageBarItem*)newTabPageBarItemWithTitle:(NSString*)title | 25 + (NewTabPageBarItem*)newTabPageBarItemWithTitle:(NSString*)title |
| 27 identifier:(NSUInteger)identifier | 26 identifier:(NSUInteger)identifier |
| 28 image:(UIImage*)image { | 27 image:(UIImage*)image { |
| 29 NewTabPageBarItem* item = [[[NewTabPageBarItem alloc] init] autorelease]; | 28 NewTabPageBarItem* item = [[[NewTabPageBarItem alloc] init] autorelease]; |
| 30 if (item) { | 29 if (item) { |
| 31 item.title = title; | 30 item.title = title; |
| 32 item.identifier = identifier; | 31 item.identifier = identifier; |
| 33 item.image = image; | 32 item.image = image; |
| 34 } | 33 } |
| 35 return item; | 34 return item; |
| 36 } | 35 } |
| 37 | 36 |
| 38 - (id)init { | 37 - (void)dealloc { |
| 39 self = [super init]; | 38 base::mac::ReleaseProperties(self); |
| 40 if (self) { | 39 [super dealloc]; |
| 41 propertyReleaser_NewTabPageBarItem_.Init(self, [NewTabPageBarItem class]); | |
| 42 } | |
| 43 return self; | |
| 44 } | 40 } |
| 45 | 41 |
| 46 @end | 42 @end |
| OLD | NEW |