fixed current processed server selection after import/install new server
This commit is contained in:
parent
4f7ba4c9a8
commit
2a03834bb2
5 changed files with 24 additions and 0 deletions
|
@ -15,6 +15,10 @@ ServersModel::ServersModel(std::shared_ptr<Settings> settings, QObject *parent)
|
||||||
auto defaultContainer = ContainerProps::containerFromString(m_servers.at(serverIndex).toObject().value(config_key::defaultContainer).toString());
|
auto defaultContainer = ContainerProps::containerFromString(m_servers.at(serverIndex).toObject().value(config_key::defaultContainer).toString());
|
||||||
emit ServersModel::defaultContainerChanged(defaultContainer);
|
emit ServersModel::defaultContainerChanged(defaultContainer);
|
||||||
});
|
});
|
||||||
|
connect(this, &ServersModel::currentlyProcessedServerIndexChanged, this, [this](const int serverIndex) {
|
||||||
|
auto defaultContainer = ContainerProps::containerFromString(m_servers.at(serverIndex).toObject().value(config_key::defaultContainer).toString());
|
||||||
|
emit ServersModel::defaultContainerChanged(defaultContainer);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
int ServersModel::rowCount(const QModelIndex &parent) const
|
int ServersModel::rowCount(const QModelIndex &parent) const
|
||||||
|
@ -269,6 +273,7 @@ void ServersModel::removeServer()
|
||||||
if (m_settings->serversCount() == 0) {
|
if (m_settings->serversCount() == 0) {
|
||||||
setDefaultServerIndex(-1);
|
setDefaultServerIndex(-1);
|
||||||
}
|
}
|
||||||
|
setCurrentlyProcessedServerIndex(m_defaultServerIndex);
|
||||||
endResetModel();
|
endResetModel();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -26,6 +26,22 @@ ListView {
|
||||||
id: containersRadioButtonGroup
|
id: containersRadioButtonGroup
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Connections {
|
||||||
|
target: ServersModel
|
||||||
|
|
||||||
|
function onCurrentlyProcessedServerIndexChanged() {
|
||||||
|
menuContent.checkCurrentItem()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function checkCurrentItem() {
|
||||||
|
var item = menuContent.itemAtIndex(currentIndex)
|
||||||
|
if (item !== null) {
|
||||||
|
var radioButton = item.children[0].children[0]
|
||||||
|
radioButton.checked = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
delegate: Item {
|
delegate: Item {
|
||||||
implicitWidth: rootWidth
|
implicitWidth: rootWidth
|
||||||
implicitHeight: content.implicitHeight
|
implicitHeight: content.implicitHeight
|
||||||
|
|
|
@ -31,6 +31,7 @@ PageType {
|
||||||
containersDropDown.rootButtonClickedFunction()
|
containersDropDown.rootButtonClickedFunction()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function onForceCloseDrawer() {
|
function onForceCloseDrawer() {
|
||||||
buttonContent.state = "collapsed"
|
buttonContent.state = "collapsed"
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,6 +42,7 @@ PageType {
|
||||||
function onInstallServerFinished(finishedMessage) {
|
function onInstallServerFinished(finishedMessage) {
|
||||||
if (!ConnectionController.isConnected) {
|
if (!ConnectionController.isConnected) {
|
||||||
ServersModel.setDefaultServerIndex(ServersModel.getServersCount() - 1);
|
ServersModel.setDefaultServerIndex(ServersModel.getServersCount() - 1);
|
||||||
|
ServersModel.currentlyProcessedIndex = ServersModel.defaultIndex
|
||||||
}
|
}
|
||||||
|
|
||||||
PageController.goToStartPage()
|
PageController.goToStartPage()
|
||||||
|
|
|
@ -26,6 +26,7 @@ PageType {
|
||||||
function onImportFinished() {
|
function onImportFinished() {
|
||||||
if (!ConnectionController.isConnected) {
|
if (!ConnectionController.isConnected) {
|
||||||
ServersModel.setDefaultServerIndex(ServersModel.getServersCount() - 1);
|
ServersModel.setDefaultServerIndex(ServersModel.getServersCount() - 1);
|
||||||
|
ServersModel.currentlyProcessedIndex = ServersModel.defaultIndex
|
||||||
}
|
}
|
||||||
|
|
||||||
PageController.goToStartPage()
|
PageController.goToStartPage()
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue