root/chrome/browser/ui/cocoa/content_settings/cookie_details_view_controller.h

/* [<][>][^][v][top][bottom][index][help] */
// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#import <Cocoa/Cocoa.h>

#include "net/cookies/cookie_monster.h"

@class CocoaCookieTreeNode;
@class GTMUILocalizerAndLayoutTweaker;

// Controller for the view that displays the details of a cookie,
// used both in the cookie prompt dialog as well as the
// show cookies preference sheet of content settings preferences.
@interface CookieDetailsViewController : NSViewController {
 @private
  // Allows direct access to the object controller for
  // the displayed cookie information.
  IBOutlet NSObjectController* objectController_;

  // This explicit reference to the layout tweaker is
  // required because it's necessary to reformat the view when
  // the content object changes, since the content object may
  // alter the widths of some of the fields displayed in the view.
  IBOutlet GTMUILocalizerAndLayoutTweaker* tweaker_;
}

@property(nonatomic, readonly) BOOL hasExpiration;

- (id)init;

// Configures the cookie detail view that is managed by the controller
// to display the information about a single cookie, the information
// for which is explicitly passed in the parameter |content|.
- (void)setContentObject:(id)content;

// Adjust the size of the view to exactly fix the information text fields
// that are visible inside it.
- (void)shrinkViewToFit;

// Called by the cookie tree dialog to establish a binding between
// the the detail view's object controller and the tree controller.
// This binding allows the cookie tree to use the detail view unmodified.
- (void)configureBindingsForTreeController:(NSTreeController*)controller;

// Action sent by the expiration date popup when the user
// selects the menu item "When I close my browser".
- (IBAction)setCookieDoesntHaveExplicitExpiration:(id)sender;

// Action sent by the expiration date popup when the user
// selects the menu item with an explicit date/time of expiration.
- (IBAction)setCookieHasExplicitExpiration:(id)sender;

@end


/* [<][>][^][v][top][bottom][index][help] */