Home | History | Annotate | Download | only in autofill
      1 // Copyright (c) 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_LAYOUT_VIEW_H_
      6 #define CHROME_BROWSER_UI_COCOA_AUTOFILL_LAYOUT_VIEW_H_
      7 
      8 #import <Cocoa/Cocoa.h>
      9 
     10 #include "base/memory/scoped_ptr.h"
     11 
     12 class SimpleGridLayout;
     13 
     14 // A view that carries its own layout manager. Re-layouts on setFrame:.
     15 @interface LayoutView : NSView {
     16  @private
     17   scoped_ptr<SimpleGridLayout> layout_;
     18 }
     19 
     20 // Sets a layout manager and takes ownership of it.
     21 - (void)setLayoutManager:(scoped_ptr<SimpleGridLayout>)layout;
     22 
     23 // Return a pointer to layout manager, still owned by the view.
     24 - (SimpleGridLayout*)layoutManager;
     25 
     26 // Re-layout subviews according to layout manager.
     27 - (void)performLayout;
     28 
     29 // Query the layout manager for the best height for specified |width|.
     30 - (CGFloat)preferredHeightForWidth:(CGFloat)width;
     31 
     32 @end
     33 
     34 #endif  // CHROME_BROWSER_UI_COCOA_AUTOFILL_LAYOUT_VIEW_H_
     35