Qml/Main: add error handling to installation
This commit is contained in:
parent
e94d11f138
commit
0cd631c92c
2 changed files with 34 additions and 1 deletions
|
|
@ -38,10 +38,40 @@ Kirigami.ApplicationWindow {
|
|||
selectedNameFilter.index: 0
|
||||
|
||||
onAccepted: {
|
||||
installInfoDialog.open();
|
||||
QModInstaller.statusChanged.connect(() => {
|
||||
switch (QModInstaller.status) {
|
||||
case "initialized":
|
||||
if (QModInstaller.installed) {
|
||||
installInfoMessage.text = "This mod is already installed!";
|
||||
installInfoDialog.open();
|
||||
}
|
||||
break;
|
||||
case "NoModExceptionError":
|
||||
installInfoMessage.text = "This file does not have a mod";
|
||||
installInfoDialog.open();
|
||||
break;
|
||||
case "UnsupportedArchiveTypeError":
|
||||
installInfoMessage.text = "I don't know how to unpack this file, sorry :(";
|
||||
installInfoDialog.open();
|
||||
break;
|
||||
}
|
||||
});
|
||||
QModInstaller.modPath = selectedFile;
|
||||
}
|
||||
}
|
||||
|
||||
Kirigami.Dialog {
|
||||
id: installInfoDialog
|
||||
title: "Add mod"
|
||||
standardButtons: Kirigami.Dialog.Ok
|
||||
padding: Kirigami.Units.largeSpacing
|
||||
Controls.Label {
|
||||
id: installInfoMessage
|
||||
text: "You should never see this text"
|
||||
}
|
||||
}
|
||||
|
||||
pageStack.columnView.columnResizeMode: Kirigami.ColumnView.SingleColumn
|
||||
pageStack.initialPage: Kirigami.ScrollablePage {
|
||||
title: "Mods"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue