|
|
|
@ -76,106 +76,6 @@ TrackingPage::retranslate()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
TrackingPage::enableTrackingOption( TrackingType t, bool enabled )
|
|
|
|
|
{
|
|
|
|
|
QWidget* group = nullptr;
|
|
|
|
|
|
|
|
|
|
switch ( t )
|
|
|
|
|
{
|
|
|
|
|
case TrackingType::NoTracking:
|
|
|
|
|
// Nothing to do, this **has** no widget
|
|
|
|
|
return;
|
|
|
|
|
case TrackingType::InstallTracking:
|
|
|
|
|
group = ui->installGroup;
|
|
|
|
|
break;
|
|
|
|
|
case TrackingType::MachineTracking:
|
|
|
|
|
group = ui->machineGroup;
|
|
|
|
|
break;
|
|
|
|
|
case TrackingType::UserTracking:
|
|
|
|
|
group = ui->userGroup;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ( group != nullptr )
|
|
|
|
|
{
|
|
|
|
|
if ( enabled )
|
|
|
|
|
{
|
|
|
|
|
group->show();
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
group->hide();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
cWarning() << "unknown tracking option" << int( t );
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool
|
|
|
|
|
TrackingPage::getTrackingOption( TrackingType t )
|
|
|
|
|
{
|
|
|
|
|
bool enabled = false;
|
|
|
|
|
|
|
|
|
|
// A tracking type is enabled if it is checked, or
|
|
|
|
|
// any higher level is checked.
|
|
|
|
|
#define ch( x ) ui->x->isChecked()
|
|
|
|
|
switch ( t )
|
|
|
|
|
{
|
|
|
|
|
case TrackingType::NoTracking:
|
|
|
|
|
return false;
|
|
|
|
|
case TrackingType::InstallTracking:
|
|
|
|
|
enabled = ch( installRadio ) || ch( machineRadio ) || ch( userRadio );
|
|
|
|
|
break;
|
|
|
|
|
case TrackingType::MachineTracking:
|
|
|
|
|
enabled = ch( machineRadio ) || ch( userRadio );
|
|
|
|
|
break;
|
|
|
|
|
case TrackingType::UserTracking:
|
|
|
|
|
enabled = ch( userRadio );
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
#undef ch
|
|
|
|
|
return enabled;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
TrackingPage::setTrackingPolicy( TrackingType t, QString url )
|
|
|
|
|
{
|
|
|
|
|
QToolButton* button = nullptr;
|
|
|
|
|
switch ( t )
|
|
|
|
|
{
|
|
|
|
|
case TrackingType::NoTracking:
|
|
|
|
|
cWarning() << "Cannot configure NoTracking widget";
|
|
|
|
|
return;
|
|
|
|
|
case TrackingType::InstallTracking:
|
|
|
|
|
button = ui->installPolicyButton;
|
|
|
|
|
break;
|
|
|
|
|
case TrackingType::MachineTracking:
|
|
|
|
|
button = ui->machinePolicyButton;
|
|
|
|
|
break;
|
|
|
|
|
case TrackingType::UserTracking:
|
|
|
|
|
button = ui->userPolicyButton;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ( button != nullptr )
|
|
|
|
|
if ( url.isEmpty() )
|
|
|
|
|
{
|
|
|
|
|
button->hide();
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
connect( button, &QToolButton::clicked, [ url ] { QDesktopServices::openUrl( url ); } );
|
|
|
|
|
cDebug() << "Tracking policy" << int( t ) << "set to" << url;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
cWarning() << "unknown tracking option" << int( t );
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
TrackingPage::setGeneralPolicy( QString url )
|
|
|
|
|
{
|
|
|
|
|