Files
wagic/projects/mtg/qml/QmlWagic/main.qml
Xawotihs 12a431ff8c - Merged QWidget and QML Qt frontends, just define QT_WIDGET to select the QWidget one
- Coded a resource package download GUI based on QWidget
- Removed compilation warning on unused variable
- Updated Maemo desktop file to start directly the binary
- Updated .pro file
- Updated version macros to be able to compose the resource package file
- Updated QML interface for Android
- Updated QML interface to not contain the name of the resource package
- Updated the file downloader class to be able to get the resource package hash from the google code server
- Updated the file downloaded class to verify the resource package hash from the remote server at each startup to be able to perform automatic update
- Defined several JGE operation as static to clean up the wagic wrapper
2012-01-15 18:50:38 +00:00

177 lines
4.6 KiB
QML

import CustomComponents 1.0
import QtQuick 1.1
Rectangle {
id: main
width: 480
height: 272
state: fileDownloader.state_string
color: "black"
states: [
State {
name: "DOWNLOADING_HASH"
PropertyChanges {
target: column1; visible: false
}
PropertyChanges {
target: wagic; visible: false
}
},
State {
name: "DOWNLOADING_FILE"
PropertyChanges {
target: column1; visible: true
}
PropertyChanges {
target: wagic; visible: false
}
},
State {
name: "DOWNLOADED"
PropertyChanges {
target: column1; visible: false
}
PropertyChanges {
target: wagic; visible: true; focus: true
}
}
]
Column{
id: column1
x: -48
y: 0
width: 480
height: 272
anchors.horizontalCenterOffset: 1
scale: 1
anchors.horizontalCenter: parent.horizontalCenter
spacing: 15
Image {
id: logo
fillMode: Image.PreserveAspectFit
anchors.horizontalCenter: parent.horizontalCenter
source: "http://wagic.googlecode.com/svn/trunk/projects/mtg/bin/Res/graphics/menutitle.png"
}
Text {
text: qsTr("Downloading resources")
font.bold: true
color: "white"
anchors.horizontalCenter: parent.horizontalCenter
wrapMode: Text.WordWrap
}
ProgressBar {
id: progressbar
height: 40
value: fileDownloader.received
anchors.horizontalCenter: parent.horizontalCenter
}
}
WagicCore {
id: wagic
anchors.fill: parent
visible: false
active: Qt.application.active
}
/*
Rectangle {
id: wagic
anchors.fill: parent
color: "red"
visible: false
}
*/
MouseArea {
id: mousearea
hoverEnabled: true
anchors.fill: parent
acceptedButtons: Qt.LeftButton | Qt.RightButton | Qt.MiddleButton
property int lastTick: 0
property int lastX: 0
property int lastY: 0
onPositionChanged: {
wagic.pixelInput(
(mouse.x*wagic.nominalWidth)/width,
(mouse.y*wagic.nominalHeight)/height)
}
onPressed: {
wagic.pixelInput(
(mouse.x*wagic.nominalWidth)/width,
(mouse.y*wagic.nominalHeight)/height)
if(mouse.button == Qt.LeftButton) {
lastTick = wagic.getTick()
lastX = mouse.x
lastY = mouse.y
} else if(mouse.button == Qt.MiddleButton)
wagic.doCancel()
else if(mouse.button == Qt.RightButton)
wagic.doNext()
}
onReleased: {
if(mouse.button == Qt.LeftButton) {
var currentTick = wagic.getTick()
if(currentTick - lastTick <= 250 )
{
if(Math.abs(lastX-mouse.x) < 50 && Math.abs(lastY-mouse.y) < 50 )
{
wagic.doOK()
// wagic.done()
}
}
else if(currentTick - lastTick >= 250)
{
wagic.doScroll(mouse.x - lastX, mouse.y - lastY)
}
} else if(mouse.button == Qt.MiddleButton)
wagic.done()
else if(mouse.button == Qt.RightButton)
wagic.done()
}
onPressAndHold: {
if(Math.abs(lastX-mouse.x)<50 && Math.abs(lastY-mouse.y)<50)
{
wagic.doMenu()
}
}
}
function resize(){
if(width/height <= wagic.nominalRatio)
{
mousearea.x = 0
mousearea.y = -((width/wagic.nominalRatio)-height)/2
mousearea.width = width
mousearea.height = width / wagic.nominalRatio
}
else
{
mousearea.x = -(height*wagic.nominalRatio-width)/2
mousearea.y = 0
mousearea.width = height * wagic.nominalRatio
mousearea.height = height
}
}
onWidthChanged: {
mousearea.anchors.fill = undefined
resize()
}
onHeightChanged: {
mousearea.anchors.fill = undefined
resize()
}
}