dialogturndirection.cpp 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. #include "dialogturndirection.h"
  2. #include "ui_dialogturndirection.h"
  3. DialogTurnDirection::DialogTurnDirection(Road * pRoad,QWidget *parent) :
  4. QDialog(parent),
  5. ui(new Ui::DialogTurnDirection)
  6. {
  7. ui->setupUi(this);
  8. mpRoad = pRoad;
  9. ui->comboBox->addItem("NONE");
  10. ui->comboBox->addItem("Left");
  11. ui->comboBox->addItem("Right");
  12. ui->comboBox->addItem("Straight");
  13. RoadTurnDirection::TURNDIRECTION xturn;
  14. int nrtn = pRoad->GetRoadTurnDirection(xturn);
  15. ui->comboBox->setCurrentIndex(0);
  16. if(nrtn == 0)
  17. {
  18. ui->comboBox->setCurrentIndex(0);
  19. }
  20. else
  21. {
  22. if(xturn == RoadTurnDirection::LEFT)ui->comboBox->setCurrentIndex(1);
  23. if(xturn == RoadTurnDirection::RIGHT)ui->comboBox->setCurrentIndex(2);
  24. if(xturn == RoadTurnDirection::STRAIGHT)ui->comboBox->setCurrentIndex(3);
  25. }
  26. setWindowTitle(tr("Set Turn Direction"));
  27. }
  28. DialogTurnDirection::~DialogTurnDirection()
  29. {
  30. delete ui;
  31. }
  32. void DialogTurnDirection::on_pushButton_Set_clicked()
  33. {
  34. switch (ui->comboBox->currentIndex()) {
  35. case 0:
  36. mpRoad->ResetRoadTurnDirection();
  37. break;
  38. case 1:
  39. mpRoad->SetRoadTurnDirection(RoadTurnDirection::LEFT);
  40. break;
  41. case 2:
  42. mpRoad->SetRoadTurnDirection(RoadTurnDirection::RIGHT);
  43. break;
  44. case 3:
  45. mpRoad->SetRoadTurnDirection(RoadTurnDirection::STRAIGHT);
  46. break;
  47. default:
  48. mpRoad->ResetRoadTurnDirection();
  49. break;
  50. }
  51. this->accept();
  52. }