1// Copyright 2013 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 CHROME_BROWSER_UI_COCOA_AUTOFILL_AUTOFILL_SUGGESTION_CONTAINER_H_ 6#define CHROME_BROWSER_UI_COCOA_AUTOFILL_AUTOFILL_SUGGESTION_CONTAINER_H_ 7 8#import <Cocoa/Cocoa.h> 9 10#include "base/mac/scoped_nsobject.h" 11#import "chrome/browser/ui/cocoa/autofill/autofill_layout.h" 12 13namespace autofill { 14 class AutofillDialogViewDelegate; 15} 16 17@class AutofillTextField; 18 19// Container for the data suggested for a particular input section. 20@interface AutofillSuggestionContainer : NSViewController<AutofillLayout> { 21 @private 22 // The spacer at the top of the suggestion. 23 base::scoped_nsobject<NSBox> spacer_; 24 25 // The label that holds the suggestion description text. 26 base::scoped_nsobject<NSTextView> label_; 27 28 // The input set by ShowTextfield. 29 base::scoped_nsobject<AutofillTextField> inputField_; 30 31 autofill::AutofillDialogViewDelegate* delegate_; // Not owned. 32} 33 34// Auxiliary textfield. See showInputField: for details. 35@property (readonly, nonatomic) AutofillTextField* inputField; 36 37// Set the main suggestion text and the corresponding |icon|. The text is set to 38// |verticallyCompactText| if that can fit without wrapping. Otherwise, the text 39// is set to |horizontallyCompactText|, with possibly additional wrapping 40// imposed by the dialog's size constraints. 41// NOTE: The implementation assumes that all other elements' sizes are already 42// known. Hence, -showInputField:withIcon: should be called prior to calling 43// this method, if it is going to be called at all. 44- (void) 45 setSuggestionWithVerticallyCompactText:(NSString*)verticallyCompactText 46 horizontallyCompactText:(NSString*)horizontallyCompactText 47 icon:(NSImage*)icon 48 maxWidth:(CGFloat)maxWidth; 49 50// Shows an auxiliary textfield to the right of the suggestion icon and 51// text. This is currently only used to show a CVC field for the CC section. 52- (void)showInputField:(NSString*)text withIcon:(NSImage*)icon; 53 54@end 55 56#endif // CHROME_BROWSER_UI_COCOA_AUTOFILL_AUTOFILL_SUGGESTION_CONTAINER_H_ 57