import QtQuick 2.1
import QtQuick.Dialogs 1.1

Item {
    property color button_color;

    ColorDialog {
        id: colorDialog
        title: qsTr("Choose a color")
        modality: Qt.ApplicationModal
        visible: false

        //This is a workaround to a Qt 5.2 bug.
        onCurrentColorChanged: colorDialog.color = colorDialog.currentColor;
        onAccepted: button_color = color;
    }
    Rectangle{
        radius: 10
        anchors.fill: parent
        color: button_color

        Text{
            id: text_color
            anchors.centerIn: parent
            z: 1.1
            text: button_color
        }

        Rectangle{
            anchors.centerIn: parent
            width: text_color.width * 1.4
            height: text_color.height * 1.4
            radius: 10
            border.color: "black"
            border.width: 2
            color: "white"
        }
    }
    MouseArea{
        anchors.fill: parent
        onClicked: colorDialog.visible = true;
    }
}