98 lines
2.4 KiB
QML
98 lines
2.4 KiB
QML
import QtQuick 2.5
|
|
import QtQuick.Controls 1.4
|
|
import QtQuick.Dialogs 1.2
|
|
import com.oboy.oboy 1.0
|
|
|
|
ApplicationWindow {
|
|
id: root
|
|
visible: true
|
|
width: 256
|
|
height: 128
|
|
title: qsTr("OBoy")
|
|
|
|
menuBar: MenuBar {
|
|
Menu {
|
|
title: qsTr("File")
|
|
MenuItem {
|
|
text: qsTr("&Open")
|
|
onTriggered: fileDialog.open();
|
|
}
|
|
MenuItem {
|
|
text: qsTr("Exit")
|
|
onTriggered: Qt.quit();
|
|
}
|
|
}
|
|
|
|
Menu {
|
|
title: qsTr("View")
|
|
MenuItem {
|
|
text: qsTr("Background maps")
|
|
enabled: oboy.loaded
|
|
onTriggered: {
|
|
console.log("Background maps");
|
|
var component = Qt.createComponent("BackgroundMap.qml")
|
|
var bgMap = component.createObject(root)
|
|
bgMap.show()
|
|
}
|
|
}
|
|
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()
|
|
}
|
|
}
|
|
}
|
|
|
|
Menu {
|
|
title: qsTr("Help")
|
|
MenuItem {
|
|
text: qsTr("About")
|
|
onTriggered: {
|
|
var component = Qt.createComponent("About.qml")
|
|
var about = component.createObject(root)
|
|
about.show()
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
OBoy {
|
|
id: oboy
|
|
objectName: "qml_oboy"
|
|
}
|
|
|
|
MainForm {
|
|
anchors.fill: parent
|
|
openButton.onClicked: fileDialog.open()
|
|
openButton.text: oboy.loaded ? "Loaded" : "Open ROM"
|
|
}
|
|
|
|
MessageDialog {
|
|
id: messageDialog
|
|
title: qsTr("May I have your attention, please?")
|
|
|
|
function show(caption) {
|
|
messageDialog.text = caption;
|
|
messageDialog.open();
|
|
}
|
|
}
|
|
|
|
FileDialog {
|
|
id: fileDialog
|
|
nameFilters: [ "Game Boy ROMs (*.gb)" ]
|
|
title: "Please choose a file"
|
|
folder: shortcuts.home
|
|
onAccepted: {
|
|
console.log("You chose: " + fileDialog.fileUrl)
|
|
oboy.load(fileDialog.fileUrl)
|
|
}
|
|
onRejected: {
|
|
console.log("Canceled")
|
|
}
|
|
}
|
|
}
|