Warning, /education/gcompris/src/activities/piano_composition/LyricsArea.qml is written in an unsupported language. File is not indexed.
0001 /* GCompris - LyricsArea.qml
0002 *
0003 * SPDX-FileCopyrightText: 2018 Aman Kumar Gupta <gupta2140@gmail.com>
0004 *
0005 * Authors:
0006 * Beth Hadley <bethmhadley@gmail.com> (GTK+ version)
0007 * Johnny Jazeix <jazeix@gmail.com> (Qt Quick port)
0008 * Aman Kumar Gupta <gupta2140@gmail.com> (Qt Quick port)
0009 *
0010 * SPDX-License-Identifier: GPL-3.0-or-later
0011 */
0012 import QtQuick 2.12
0013 import GCompris 1.0
0014
0015 import "../../core"
0016
0017 Rectangle {
0018 id: lyricsArea
0019
0020 property string title: ""
0021 property string origin: ""
0022 property string lyrics: ""
0023
0024 border.width: 3
0025 radius: 5
0026 border.color: "black"
0027 opacity: 0.8
0028 visible: background.isLyricsMode
0029 Item {
0030 id: melodyTitle
0031 width: parent.width
0032 height: parent.height / 6
0033 GCText {
0034 id: titleText
0035 fontSizeMode: Text.Fit
0036 wrapMode: Text.WordWrap
0037 text: qsTr("Title: %1").arg(lyricsArea.title)
0038 anchors.fill: parent
0039 anchors.rightMargin: parent.width * 0.02
0040 anchors.leftMargin: parent.width * 0.02
0041 horizontalAlignment: Text.AlignHCenter
0042 verticalAlignment: Text.AlignVCenter
0043 font.bold: true
0044 color: "green"
0045 }
0046 }
0047
0048 Rectangle {
0049 id: titleUnderline
0050 width: titleText.contentWidth
0051 height: 3
0052 color: "black"
0053 anchors.top: melodyTitle.bottom
0054 anchors.horizontalCenter: melodyTitle.horizontalCenter
0055 }
0056
0057 Item {
0058 id: melodyOrigin
0059 width: parent.width
0060 height: parent.height / 8
0061 anchors.top: titleUnderline.bottom
0062 GCText {
0063 fontSizeMode: Text.Fit
0064 wrapMode: Text.WordWrap
0065 text: qsTr("Origin: %1").arg(lyricsArea.origin)
0066 anchors.fill: parent
0067 anchors.rightMargin: parent.width * 0.02
0068 anchors.leftMargin: parent.width * 0.02
0069 horizontalAlignment: Text.AlignHCenter
0070 verticalAlignment: Text.AlignVCenter
0071 font.italic: true
0072 color: "red"
0073 }
0074 }
0075
0076 Item {
0077 id: melodyLyrics
0078 width: parent.width
0079 height: parent.height - melodyTitle.height - melodyOrigin.height - 20
0080 anchors.top: melodyOrigin.bottom
0081 GCText {
0082 fontSizeMode: Text.Fit
0083 wrapMode: Text.WordWrap
0084 text: lyricsArea.lyrics
0085 anchors.fill: parent
0086 anchors.rightMargin: parent.width * 0.05
0087 anchors.leftMargin: parent.width * 0.05
0088 horizontalAlignment: Text.AlignHCenter
0089 verticalAlignment: Text.AlignVCenter
0090 }
0091 }
0092
0093 function resetLyricsArea() {
0094 lyricsArea.title = ""
0095 lyricsArea.origin = ""
0096 lyricsArea.lyrics = ""
0097 optionsRow.lyricsOrPianoModeIndex = 0
0098 }
0099
0100 function setLyrics(title, origin, lyrics) {
0101 resetLyricsArea()
0102 lyricsArea.title = title
0103 lyricsArea.origin = origin
0104 lyricsArea.lyrics = lyrics
0105 optionsRow.lyricsOrPianoModeIndex = 1
0106 }
0107 }