singlecompareroadwidget.cpp 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. #include "singlecompareroadwidget.h"
  2. #include "ui_singlecompareroadwidget.h"
  3. SingleCompareRoadWidget::SingleCompareRoadWidget(QWidget *parent)
  4. : QWidget(parent)
  5. , ui(new Ui::SingleCompareRoadWidget)
  6. , m_nIndex(0)
  7. {
  8. ui->setupUi(this);
  9. connect(ui->btnDel, &QPushButton::clicked, this, [this]{emit deleted(m_nIndex);});
  10. }
  11. SingleCompareRoadWidget::~SingleCompareRoadWidget()
  12. {
  13. delete ui;
  14. }
  15. bool SingleCompareRoadWidget::isDelBtnVisible() const
  16. {
  17. return ui->btnDel->isVisible();
  18. }
  19. void SingleCompareRoadWidget::setDelBtnVisible(bool bVisible)
  20. {
  21. ui->btnDel->setVisible(bVisible);
  22. }
  23. /* 设置声卡通道列表 */
  24. void SingleCompareRoadWidget::setSoundCardRoadList(const QList<SoundCardRoadInfo_t>& listRoad)
  25. {
  26. ui->comboBox_soundCardNum->clear();
  27. for(const auto& road : listRoad)
  28. {
  29. /* 显示的内容 声卡名:通道号 */
  30. QString str = QString("%1:%2").arg(road.strSoundCardName).arg(road.roadInfo.nRoadNum);
  31. ui->comboBox_soundCardNum->addItem(str, QVariant::fromValue(road));
  32. }
  33. }
  34. int SingleCompareRoadWidget::getIndex() const
  35. {
  36. return m_nIndex;
  37. }
  38. void SingleCompareRoadWidget::setIndex(int nIndex)
  39. {
  40. if(nIndex <= 0) return;
  41. m_nIndex = nIndex;
  42. QString str = nIndex == 1 ? "主" : QString::number(nIndex);
  43. ui->labelRoadName->setText(QString("<font color='red'>*</font>%1通道名称:").arg(str));
  44. ui->labelDriverNum->setText(QString("<font color='red'>*</font>%1通道声卡设备编号:").arg(str));
  45. ui->checkBox->setText(QString("%1通道开启录音").arg(str));
  46. }
  47. /* 获取通道名称 */
  48. QString SingleCompareRoadWidget::getRoadName() const
  49. {
  50. return ui->lineEditRoadName->text();
  51. }
  52. /* 获取声卡录音通道编号 */
  53. SoundCardRoadInfo_t SingleCompareRoadWidget::getSoundCardRoadInfo()
  54. {
  55. SoundCardRoadInfo_t roadInfo;
  56. roadInfo = ui->comboBox_soundCardNum->currentData().value<SoundCardRoadInfo_t>();
  57. return roadInfo;
  58. }
  59. /* 是否开启录音 */
  60. bool SingleCompareRoadWidget::isRecordEnabled() const
  61. {
  62. return ui->checkBox->isChecked();
  63. }