Only allow waking PCs that are not online and paired

This commit is contained in:
Cameron Gutman 2018-07-31 22:10:38 -07:00
commit 017362a5d1
3 changed files with 7 additions and 2 deletions

View file

@ -147,6 +147,8 @@ GridView {
MenuItem {
text: "Wake PC"
onTriggered: computerModel.wakeComputer(index)
visible: !model.online && model.wakeable
height: visible ? implicitHeight : 0
}
MenuItem {
text: "Delete PC"
@ -247,7 +249,7 @@ GridView {
// don't allow edits to the rest of the window while open
modality:Qt.WindowModal
property int pcIndex : -1;
text:"Are you sure you want to unpair from this PC?"
text:"Are you sure you want to remove this PC?"
standardButtons: StandardButton.Yes |StandardButton.No
onYes: {
console.log("deleting PC pairing for PC at index: " + pcIndex)
@ -257,7 +259,6 @@ GridView {
}
}
Dialog {
id: addPcDialog
property string label: "Enter the IP address of your GameStream PC"

View file

@ -46,6 +46,8 @@ QVariant ComputerModel::data(const QModelIndex& index, int role) const
return computer->pairState == NvComputer::PS_PAIRED;
case BusyRole:
return computer->currentGameId != 0;
case WakeableRole:
return !computer->macAddress.isEmpty();
case AddPcRole:
return false;
default:
@ -74,6 +76,7 @@ QHash<int, QByteArray> ComputerModel::roleNames() const
names[PairedRole] = "paired";
names[BusyRole] = "busy";
names[AddPcRole] = "addPc";
names[WakeableRole] = "wakeable";
return names;
}

View file

@ -13,6 +13,7 @@ class ComputerModel : public QAbstractListModel
OnlineRole,
PairedRole,
BusyRole,
WakeableRole,
AddPcRole
};