From ae35100db0302f629251d4a8b4f976bea8afbdd3 Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Tue, 25 Aug 2015 00:26:06 -0500 Subject: Add preliminary cryptographic card support to the TDE hardware device manager --- kcontrol/hwmanager/devicepropsdlg.cpp | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'kcontrol/hwmanager/devicepropsdlg.cpp') diff --git a/kcontrol/hwmanager/devicepropsdlg.cpp b/kcontrol/hwmanager/devicepropsdlg.cpp index 12de8cea9..b14177ca3 100644 --- a/kcontrol/hwmanager/devicepropsdlg.cpp +++ b/kcontrol/hwmanager/devicepropsdlg.cpp @@ -283,6 +283,9 @@ DevicePropertiesDialog::DevicePropertiesDialog(TDEGenericDevice* device, TQWidge if (m_device->type() != TDEGenericDeviceType::Event) { base->tabBarWidget->removePage(base->tabEvent); } + if (m_device->type() != TDEGenericDeviceType::CryptographicCard) { + base->tabBarWidget->removePage(base->tabCryptographicCard); + } if (m_device->type() == TDEGenericDeviceType::CPU) { connect(base->comboCPUGovernor, TQT_SIGNAL(activated(const TQString &)), this, TQT_SLOT(setCPUGovernor(const TQString &))); @@ -753,6 +756,38 @@ void DevicePropertiesDialog::populateDeviceInformation() { } base->labelEventSwitchActive->setText(activeSwitches); } + + if (m_device->type() == TDEGenericDeviceType::CryptographicCard) { + TDECryptographicCardDevice* cdevice = static_cast(m_device); + + connect(cdevice, TQT_SIGNAL(cardInserted()), this, TQT_SLOT(cryptographicCardInserted())); + connect(cdevice, TQT_SIGNAL(cardRemoved()), this, TQT_SLOT(cryptographicCardRemoved())); + + updateCryptographicCardStatusDisplay(); + } + } +} + +void DevicePropertiesDialog::cryptographicCardInserted() { + updateCryptographicCardStatusDisplay(); +} + +void DevicePropertiesDialog::cryptographicCardRemoved() { + updateCryptographicCardStatusDisplay(); +} + +void DevicePropertiesDialog::updateCryptographicCardStatusDisplay() { + TDECryptographicCardDevice* cdevice = static_cast(m_device); + + int status = cdevice->cardPresent(); + if ((status < 0) ||(status > 1)) { + base->labelCardStatus->setText(i18n("Unknown")); + } + else if (status == 0) { + base->labelCardStatus->setText(i18n("Empty")); + } + else if (status == 1) { + base->labelCardStatus->setText(i18n("Inserted") + TQString("
") + i18n("ATR: %1").arg(cdevice->cardATR())); } } -- cgit v1.2.1