using System.Drawing;
using DevComponents.DotNetBar.SuperGrid.Style;
namespace DevComponents.DotNetBar.SuperGrid
{
    /// 
    /// Provides the layout information for grid layout pass
    /// 
    public class GridLayoutInfo
    {
        #region Public variables
        /// 
        /// Gets or sets the Graphics object of the control.
        /// 
        public Graphics Graphics;
        /// 
        /// Gets or sets whether right-to-left layout is in effect.
        /// 
        public bool RightToLeft;
        /// 
        /// Gets the client bounds for the layout i.e. client bounds of SuperGridControl.
        /// 
        public Rectangle ClientBounds;
        /// 
        /// Gets the default visual styles for grid elements.
        /// 
        public DefaultVisualStyles DefaultVisualStyles;
        #endregion
        /// 
        /// Initializes a new instance of the GridLayoutInfo class.
        /// 
        /// 
        /// 
        public GridLayoutInfo(Graphics graphics, Rectangle clientBounds)
        {
            Graphics = graphics;
            ClientBounds = clientBounds;
        }
    }
    /// 
    /// Provides the layout state information for grid layout pass
    /// 
    public class GridLayoutStateInfo
    {
        #region Public variables
        /// 
        /// Gets or sets the layout GridPanel
        /// 
        public GridPanel GridPanel;
        /// 
        /// Gets or sets the IndentLevel
        /// 
        public int IndentLevel;
        #endregion
        internal int PassCount;
        /// 
        /// Initializes a new instance of the GridLayoutStateInfo class
        /// 
        public GridLayoutStateInfo(GridPanel gridPanel, int indentLevel)
        {
            GridPanel = gridPanel;
            IndentLevel = indentLevel;
        }
    }
}