using System; using System.Collections; using System.Drawing; using DevComponents.UI.ContentManager; namespace DevComponents.DotNetBar { /// /// Represents class for default layout of the BubbleButton objects. /// public class BubbleButtonLayoutManager:BlockLayoutManager { /// /// Creates new instance of the class. /// public BubbleButtonLayoutManager() { } /// /// Resizes the content block and sets it's Bounds property to reflect new size. /// /// Content block to resize. public override void Layout(IBlock block, Size availableSize) { BubbleButton button=block as BubbleButton; BubbleBar bar=button.GetBubbleBar(); if(bar==null) { if(button.Site!=null && button.Site.DesignMode) return; throw new InvalidOperationException("BubbleBar object could not be found for button named: '"+button.Name+"' in BubbleButtonLayoutManager.Layout"); } Size defaultSize=Dpi.ImageSize(bar.ImageSizeNormal); button.SetDisplayRectangle(new Rectangle(button.DisplayRectangle.Location,defaultSize)); } public override Rectangle FinalizeLayout(Rectangle containerBounds, Rectangle blocksBounds, ArrayList lines) { return (blocksBounds); } } }