# class guip::ArrayPanel

## Overview

Sequentially sorts its children in a column. More…

    #include <ArrayPanel.h>

    class ArrayPanel: public Window {
    public:
        // fields

        static CEGUI::String WidgetTypeName;

        // construction

        ArrayPanel(const CEGUI::String& type, const CEGUI::String& name);

        // methods

        void SetElementSpacing(double spacing);
        double GetElementSpacing() const;
        void SetPadding(double padding);
        double GetPadding() const;
        void SetAutoUpdateLayoutEnabled(bool is_enabled);
        bool IsAutoUpdateLayoutEnabled() const;
        void UpdateLayout();

    protected:
        // methods

        virtual void addChild_impl(CEGUI::Element* element);
    };

## Detailed Documentation

Sequentially sorts its children in a column.

### Fields

    static CEGUI::String WidgetTypeName

Unique gui system identifier.

### Methods

    void SetElementSpacing(double spacing)

Changes spacing - vertical pixel space between two consequential children windows.

    double GetElementSpacing() const

Returns current spacing - vertical pixel space between two consequential children windows.

    void SetPadding(double padding)

Changes padding. Padding defines spacing on top, right and left of panel.

    double GetPadding() const

Returns current padding. Padding defines spacing on top, right and left of panel.

    void SetAutoUpdateLayoutEnabled(bool is_enabled)

Allows automatic layout updating whenever a child is added/removed. Default true.

When disabled, you must call UpdateLayout() when you finish adding/removing children.

    bool IsAutoUpdateLayoutEnabled() const

Whether automatic layout updating is enabled.

    void UpdateLayout()

Updates layout manually. Should be used only when auto update layout is disabled.