oboy/src/qt/main.qml

98 lines
2.4 KiB
QML
Raw Normal View History

2016-03-06 21:33:37 +01:00
import QtQuick 2.5
import QtQuick.Controls 1.4
import QtQuick.Dialogs 1.2
2019-05-15 14:03:53 +02:00
import com.oboy.oboy 1.0
2016-03-06 21:33:37 +01:00
ApplicationWindow {
2016-04-18 23:06:17 +02:00
id: root
2016-03-06 21:33:37 +01:00
visible: true
width: 256
height: 128
title: qsTr("OBoy")
menuBar: MenuBar {
Menu {
title: qsTr("File")
MenuItem {
text: qsTr("&Open")
2019-05-14 13:54:41 +02:00
onTriggered: fileDialog.open();
2016-03-06 21:33:37 +01:00
}
MenuItem {
text: qsTr("Exit")
onTriggered: Qt.quit();
}
}
Menu {
title: qsTr("View")
MenuItem {
text: qsTr("Background maps")
2019-07-05 14:20:17 +02:00
enabled: oboy.loaded
2016-04-18 23:06:17 +02:00
onTriggered: {
console.log("Background maps");
var component = Qt.createComponent("BackgroundMap.qml")
var bgMap = component.createObject(root)
bgMap.show()
}
2016-03-06 21:33:37 +01:00
}
2019-07-17 13:46:31 +02:00
MenuItem {
text: qsTr("VRAM Explorer")
enabled: oboy.loaded
onTriggered: {
var component = Qt.createComponent("vram_explorer.qml")
var vram_explorer = component.createObject(root)
vram_explorer.show()
}
}
2016-03-06 21:33:37 +01:00
}
2019-05-08 23:09:31 +02:00
Menu {
title: qsTr("Help")
MenuItem {
text: qsTr("About")
onTriggered: {
var component = Qt.createComponent("About.qml")
var about = component.createObject(root)
about.show()
}
}
}
2016-03-06 21:33:37 +01:00
}
2019-05-15 14:03:53 +02:00
OBoy {
id: oboy
2019-07-05 14:20:17 +02:00
objectName: "qml_oboy"
2019-05-15 14:03:53 +02:00
}
2016-03-06 21:33:37 +01:00
MainForm {
anchors.fill: parent
2019-05-14 13:54:41 +02:00
openButton.onClicked: fileDialog.open()
2019-06-07 14:25:34 +02:00
openButton.text: oboy.loaded ? "Loaded" : "Open ROM"
2016-03-06 21:33:37 +01:00
}
MessageDialog {
id: messageDialog
title: qsTr("May I have your attention, please?")
function show(caption) {
messageDialog.text = caption;
messageDialog.open();
}
}
2016-04-18 23:06:17 +02:00
2019-05-14 13:54:41 +02:00
FileDialog {
id: fileDialog
nameFilters: [ "Game Boy ROMs (*.gb)" ]
title: "Please choose a file"
folder: shortcuts.home
onAccepted: {
2019-05-15 14:03:53 +02:00
console.log("You chose: " + fileDialog.fileUrl)
oboy.load(fileDialog.fileUrl)
2019-05-14 13:54:41 +02:00
}
onRejected: {
console.log("Canceled")
}
}
2016-03-06 21:33:37 +01:00
}