mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-22 23:05:36 +08:00
Ref T275, detect when objects have been deleted in view and using that signal in setup component
This commit is contained in:
@@ -39,6 +39,8 @@ namespace BlackGui
|
||||
connect(ui->pb_Reload, &QPushButton::clicked, this, &CInterpolationSetupComponent::reloadSetup);
|
||||
connect(ui->tvp_InterpolationSetup, &CInterpolationSetupView::doubleClicked, this, &CInterpolationSetupComponent::onRowDoubleClicked);
|
||||
connect(ui->tvp_InterpolationSetup, &CInterpolationSetupView::modelChanged, this, &CInterpolationSetupComponent::onModelChanged);
|
||||
connect(ui->tvp_InterpolationSetup, &CInterpolationSetupView::modelDataChanged, this, &CInterpolationSetupComponent::onModelChanged);
|
||||
connect(ui->tvp_InterpolationSetup, &CInterpolationSetupView::objectsDeleted, this, &CInterpolationSetupComponent::onObjectsDeleted);
|
||||
connect(ui->rb_Callsign, &QRadioButton::released, this, &CInterpolationSetupComponent::onModeChanged);
|
||||
connect(ui->rb_Global, &QRadioButton::released, this, &CInterpolationSetupComponent::onModeChanged);
|
||||
if (sGui && sGui->getIContextSimulator())
|
||||
@@ -228,5 +230,21 @@ namespace BlackGui
|
||||
{
|
||||
this->displaySetupsPerCallsign();
|
||||
}
|
||||
|
||||
void CInterpolationSetupComponent::onObjectsDeleted(const CVariant &deletedObjects)
|
||||
{
|
||||
if (deletedObjects.canConvert<CInterpolationSetupList>())
|
||||
{
|
||||
const CInterpolationSetupList deletedSetups = deletedObjects.value<CInterpolationSetupList>();
|
||||
if (deletedSetups.isEmpty()) { return; }
|
||||
|
||||
// make sure the setups are really deleted
|
||||
// it can be they are already in the container, but there is no guarantee
|
||||
CInterpolationSetupList setups = ui->tvp_InterpolationSetup->container();
|
||||
setups.removeByCallsigns(deletedSetups.getCallsigns());
|
||||
const bool set = this->setSetupsToContext(setups);
|
||||
Q_UNUSED(set);
|
||||
}
|
||||
}
|
||||
} // ns
|
||||
} // ns
|
||||
|
||||
Reference in New Issue
Block a user