/*!
    \qmltype BoxPanel
    \inherits Item
    \inqmlmodule org.deepin.dtk
    \ingroup QML_TYPES
    \brief 提供一个盒子面板控件.

    BoxPanel 提供一个通用的盒子面板控件，它自带了内置的内外阴影特效，被
    使用在 Button 和 ButtonBox 控件中作为基础控件使用。 BoxPanel 通常
    被用作控件的背景，默认情况下，该控件在亮色主题下的效果如下图所示：

    \image images/BoxPanelExample1.png

    通过更改 BoxPanel 的属性，可以改变 BoxPanel 的圆角大小、背景颜色、阴影颜色、模糊系数等等。
    例如下述代码，可以将 BoxPanel 的颜色修改为渐变色：

    \qml
    BoxPanel {
        width: 200
        height: 200

        radius: width / 2
        color1: D.Palette {
            normal: "#228B22"
        }
        color2: D.Palette {
            normal: "#00CED1"
        }
    }
    \endqml

    效果如下图所示：
    \image images/BoxPanelExample2.png

    当然如果不满足阴影和边框的效果，也可以通过控制阴影的大小实现自定义阴影，
    如下述代码所示：
    \qml
    BoxPanel {
        width: 200
        height: 200

        radius: width / 2
        color1: Palette {
            normal: "#228B22"
        }
        color2: Palette {
            normal: "#00CED1"
        }

        outsideBorderColor: Palette {
            normal: "#008B8B"
        }

        dropShadowColor: Palette {
            normal: "#008080"
        }

        innerShadowColor1: Palette {
            normal: "#006400"
        }

        innerShadowColor2: Palette {
            normal: "#87CEFA"
        }

        boxShadowBlur: 10
        innerShadowOffsetY1: -2
    }
    \endqml

    效果如下图所示：
    \image images/BoxPanelExample3.png
 */

/*!
    \qmlproperty int org.deepin.dtk::BoxPanel::radius

    \c radius 盒子面板的圆角大小。默认情况下, radius 的值跟系统风格中的圆角值保持一致。
 */

/*!
    \qmlproperty Palette org.deepin.dtk::BoxPanel::color1

    \c color1 属性代表 BoxPanel 控件背景的渐变色1， 当 color1 属性和 color2 属性相同时，
    BoxPanel 的背景为一个纯色背景。
 */

/*!
    \qmlproperty Palette org.deepin.dtk::BoxPanel::color2

    \c color2 属性和 color1 属性类似，表示 BoxPanel 控件的第二背景色，当 color2 的颜色与 color1
    不同时，表示该背景色为渐变色。
 */

/*!
    \qmlproperty Palette org.deepin.dtk::BoxPanel::outsideBorderColor

    \c outsideBorderColor 属性表示 BoxPanel 控件的外边框颜色
 */

/*!
    \qmlproperty Palette org.deepin.dtk::BoxPanel::dropShadowColor

    \c dropShadowColor 属性表示 BoxPanel 控件的阴影颜色
 */

/*!
    \qmlproperty Palette org.deepin.dtk::BoxPanel::innerShadowColor1

    \c innerShadowColor1 属性表示 BoxPanel 控件的第一内阴影色， BoxPanel 共有两种
    内阴影，innerShadowColor1 是可以变化内阴影，可通过控制 innerShadowOffsetY1 属性
    调整第一内阴影的 y 坐标偏移量。
 */

/*!
    \qmlproperty Palette org.deepin.dtk::BoxPanel::innerShadowColor2

    \c innerShadowColor2 属性表示 BoxPanel 控件的第二内阴影色，第二内阴影为固定的内阴影
    其位置固定在 BoxPanel 控件内，阴影效果除阴影颜色外不允许外部改变。
 */

/*!
    \qmlproperty int org.deepin.dtk::BoxPanel::boxShadowBlur

    \c boxShadowBlur 属性表示 BoxPanel 控件的阴影模糊系数，默认情况下该系数大小为 6。
    扩大和缩小该系数能够增加和缩小阴影的模糊范围。
 */

/*!
    \qmlproperty int org.deepin.dtk::BoxPanel::boxShadowOffsetY

    \c boxShadowOffsetY 属性表示 BoxPanel 控件的阴影 y 坐标偏移量。默认情况下，该偏移量的值
    为 BoxPanel 的阴影会向下偏移 4 个像素的大小。
 */

/*!
    \qmlproperty int org.deepin.dtk::BoxPanel::innerShadowOffsetY1

    \c innerShadowOffsetY1 属性表示 BoxPanel 控件第一内阴影的 y 坐标偏移量。
 */
