Warning, /education/gcompris/src/activities/color_mix/ColorButton.qml is written in an unsupported language. File is not indexed.
0001 /* GCompris - ColorButton.qml 0002 * 0003 * SPDX-FileCopyrightText: 2014 Bruno Coudoin <bruno.coudoin@gcompris.net> 0004 * 0005 * Authors: 0006 * Bruno Coudoin <bruno.coudoin@gcompris.net> 0007 * 0008 * SPDX-License-Identifier: GPL-3.0-or-later 0009 */ 0010 import QtQuick 2.12 0011 0012 import "../../core" 0013 0014 Item { 0015 id: button 0016 height: parent.height / 4 0017 width: height 0018 z: 3 0019 0020 property alias source: buttonImage.source 0021 0022 signal clicked 0023 0024 Image { 0025 id: buttonImage 0026 anchors.centerIn: parent 0027 sourceSize.width: parent.width 0028 horizontalAlignment: Text.AlignHCenter 0029 verticalAlignment: Text.AlignVCenter 0030 } 0031 0032 MouseArea { 0033 id: mouseArea 0034 anchors.centerIn: parent 0035 enabled: !items.buttonsBlocked 0036 height: 2.3 * parent.height 0037 width: 2.3 * parent.width 0038 hoverEnabled: true 0039 0040 onClicked: button.clicked() 0041 } 0042 0043 states: [ 0044 State { 0045 name: "notclicked" 0046 PropertyChanges { 0047 target: button 0048 scale: 1.0 0049 } 0050 }, 0051 State { 0052 name: "clicked" 0053 when: mouseArea.pressed 0054 PropertyChanges { 0055 target: button 0056 scale: 0.9 0057 } 0058 }, 0059 State { 0060 name: "hover" 0061 when: mouseArea.containsMouse 0062 PropertyChanges { 0063 target: button 0064 scale: 1.1 0065 } 0066 } 0067 ] 0068 0069 Behavior on scale { NumberAnimation { duration: 70 } } 0070 }