void QgsGPSDeviceDialog::on_pbnNewDevice_clicked() { std::map<QString, QgsGPSDevice*>::const_iterator iter = mDevices.begin(); QString deviceName = tr( "New device %1" ); int i = 1; for ( ; iter != mDevices.end(); ++i ) iter = mDevices.find( deviceName.arg( i ) ); deviceName = deviceName.arg( i - 1 ); mDevices[deviceName] = new QgsGPSDevice; writeDeviceSettings(); slotUpdateDeviceList( deviceName ); emit devicesChanged(); }
QgsGPSDeviceDialog::QgsGPSDeviceDialog( std::map < QString, QgsGPSDevice* > & devices ) : QDialog( 0, QgisGui::ModalDialogFlags ) , mDevices( devices ) { setupUi( this ); setAttribute( Qt::WA_DeleteOnClose ); // Manually set the relative size of the two main parts of the // device dialog box. QObject::connect( lbDeviceList, SIGNAL( currentItemChanged( QListWidgetItem*, QListWidgetItem* ) ), this, SLOT( slotSelectionChanged( QListWidgetItem* ) ) ); slotUpdateDeviceList(); }
QgsGPSDeviceDialog::QgsGPSDeviceDialog( std::map < QString, QgsGPSDevice * > &devices ) : QDialog( nullptr, QgsGuiUtils::ModalDialogFlags ) , mDevices( devices ) { setupUi( this ); setAttribute( Qt::WA_DeleteOnClose ); // Manually set the relative size of the two main parts of the // device dialog box. QObject::connect( lbDeviceList, &QListWidget::currentItemChanged, this, &QgsGPSDeviceDialog::slotSelectionChanged ); slotUpdateDeviceList(); }
void QgsGPSDeviceDialog::on_pbnDeleteDevice_clicked() { if ( QMessageBox::warning( this, tr( "Are you sure?" ), tr( "Are you sure that you want to delete this device?" ), QMessageBox::Ok | QMessageBox::Cancel ) == QMessageBox::Ok ) { std::map<QString, QgsGPSDevice*>::iterator iter = mDevices.find( lbDeviceList->currentItem()->text() ); if ( iter != mDevices.end() ) { delete iter->second; mDevices.erase( iter ); writeDeviceSettings(); slotUpdateDeviceList(); emit devicesChanged(); } } }
void QgsGPSDeviceDialog::on_pbnUpdateDevice_clicked() { if ( lbDeviceList->count() > 0 ) { std::map<QString, QgsGPSDevice*>::iterator iter = mDevices.find( lbDeviceList->currentItem()->text() ); if ( iter != mDevices.end() ) { delete iter->second; mDevices.erase( iter ); mDevices[leDeviceName->text()] = new QgsGPSDevice( leWptDown->text(), leWptUp->text(), leRteDown->text(), leRteUp->text(), leTrkDown->text(), leTrkUp->text() ); writeDeviceSettings(); slotUpdateDeviceList( leDeviceName->text() ); emit devicesChanged(); } } }
void App::initDeviceManagerView() { // Create but don't show dm m_dmView = new DeviceManagerView(workspace()); m_dmView->initView(); m_dmView->resize(500, 300); QString config; settings()->get(KEY_DEVICE_MANAGER_OPEN, config); if (config == Settings::trueValue()) { m_dmView->show(); m_toolsMenu->setItemChecked(ID_VIEW_DEVICE_MANAGER, true); } else { m_dmView->hide(); m_toolsMenu->setItemChecked(ID_VIEW_DEVICE_MANAGER, false); } connect(m_dmView, SIGNAL(closed()), this, SLOT(slotDeviceManagerViewClosed())); connect(m_doc, SIGNAL(deviceListChanged()), m_dmView->deviceManager(), SLOT(slotUpdateDeviceList())); }