Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / chrome / browser / ui / cocoa / content_settings / cookie_tree_node.h
blob1af0a7534672d2d3c271b9f1184f39b848e1a85e
1 // Copyright (c) 2011 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.
5 #import <Cocoa/Cocoa.h>
7 #include "base/mac/scoped_nsobject.h"
8 #include "chrome/browser/browsing_data/cookies_tree_model.h"
9 #include "chrome/browser/ui/cocoa/content_settings/cookie_details.h"
11 @interface CocoaCookieTreeNode : NSObject {
12 base::scoped_nsobject<NSString> title_;
13 base::scoped_nsobject<NSMutableArray> children_;
14 base::scoped_nsobject<CocoaCookieDetails> details_;
15 CookieTreeNode* treeNode_; // weak
18 // Designated initializer.
19 - (id)initWithNode:(CookieTreeNode*)node;
21 // Re-sets all the members of the node based on |treeNode_|.
22 - (void)rebuild;
24 // Common getters..
25 - (NSString*)title;
26 - (CocoaCookieDetailsType)nodeType;
27 - (ui::TreeModelNode*)treeNode;
29 // |-mutableChildren| exists so that the CookiesTreeModelObserverBridge can
30 // operate on the children. Note that this lazily creates children.
31 - (NSMutableArray*)mutableChildren;
32 - (NSArray*)children;
33 - (BOOL)isLeaf;
35 - (CocoaCookieDetails*)details;
37 @end