void setupAmountWidget(QLineEdit *widget, QWidget *parent) { QDoubleValidator *amountValidator = new QDoubleValidator(parent); amountValidator->setDecimals(8); amountValidator->setBottom(0.0); widget->setValidator(amountValidator); widget->setAlignment(Qt::AlignRight|Qt::AlignVCenter); }
QWidget*CoordinateItemDelegate::createEditor( QWidget* parent, const QStyleOptionViewItem&, const QModelIndex& index ) const { QLineEdit* lineEdit = new QLineEdit( parent ); QDoubleValidator* validator = new QDoubleValidator(); if ( !index.data( MinRadiusRole ).isNull() ) validator->setBottom( index.data( MinRadiusRole ).toDouble() ); lineEdit->setValidator( validator ); return lineEdit; }
void setupAmountWidget(QLineEdit *widget, QWidget *parent) { QDoubleValidator *amountValidator = new QDoubleValidator(parent); amountValidator->setDecimals(8); amountValidator->setBottom(0.0); widget->setValidator(amountValidator); widget->setAlignment(Qt::AlignRight|Qt::AlignVCenter); widget->setStyleSheet("color: white; background: transparent"); }
/* Dialog box for editing initial state parameters. The dialog * has a separate page for each method of entering the initial * state. Currently just two methods are supported: state vector * and Keplerian elements. */ InitialStateThreebodyEditorDialog::InitialStateThreebodyEditorDialog(QWidget* parent) : QDialog(parent) { setupUi(this); // Set up the coordinate system combo box //coordinateSystemCombo->addItem(tr("Planet fixed"), (int) sta::COORDSYS_BODYFIXED); coordinateSystemCombo->addItem(tr("Co-Rotating normalized"), (int) sta::COORDSYS_ROT_NORM); coordinateSystemCombo->addItem(tr("Co-Rotating"), (int) sta::COORDSYS_ROT); coordinateSystemCombo->addItem(tr("Inertial body-centred"), (int) sta::COORDSYS_BODYFIXED); //coordinateSystemCombo->addItem(tr("Ecliptic (J2000)"), (int) sta::COORDSYS_ECLIPTIC_J2000); // Set up the input validators QDoubleValidator* doubleValidator = new QDoubleValidator(this); QDoubleValidator* angleValidator = new QDoubleValidator(this); angleValidator->setBottom(-360.0); angleValidator->setTop(360.0); QDoubleValidator* positiveAngleValidator = new QDoubleValidator(this); positiveAngleValidator->setBottom(0.0); positiveAngleValidator->setTop(360.0); QDoubleValidator* positiveDoubleValidator = new QDoubleValidator(this); positiveDoubleValidator->setBottom(0.0); QDoubleValidator* zeroToOneValidator = new QDoubleValidator(this); zeroToOneValidator->setBottom(0.0); zeroToOneValidator->setTop(0.9999); positionXEdit->setValidator(doubleValidator); positionYEdit->setValidator(doubleValidator); positionZEdit->setValidator(doubleValidator); velocityXEdit->setValidator(doubleValidator); velocityYEdit->setValidator(doubleValidator); velocityZEdit->setValidator(doubleValidator); semimajorAxisEdit->setValidator(positiveDoubleValidator); eccentricityEdit->setValidator(zeroToOneValidator); inclinationEdit->setValidator(angleValidator); raanEdit->setValidator(positiveAngleValidator); argOfPeriapsisEdit->setValidator(positiveAngleValidator); trueAnomalyEdit->setValidator(positiveAngleValidator); }
/* Dialog box for editing location parameters: central body, * latitude, longitude, and altitude. */ LocationEditorDialog::LocationEditorDialog(QWidget* parent) : QDialog(parent) { setupUi(this); // Set up the input validators QDoubleValidator* doubleValidator = new QDoubleValidator(this); QDoubleValidator* angleValidator = new QDoubleValidator(this); angleValidator->setBottom(-360.0); angleValidator->setTop(360.0); latitudeEdit->setValidator(angleValidator); longitudeEdit->setValidator(angleValidator); altitudeEdit->setValidator(doubleValidator); }
// Default constructor QGAppParamInputReal::QGAppParamInputReal(qgar::QgarAppParamDescr * descr, QGAppDialogMediator * med, QWidget * parent, QGridLayout * layout) : QGAbstractAppParamInput(descr, med, parent, layout) { //-- create value box and validator _value = new QLineEdit(this); QDoubleValidator * valid = new QDoubleValidator(_value); _value->setValidator(valid); _value->setAlignment(Qt::AlignRight); _value->setSizePolicy(QSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum)); //-- Set value bounds and default value if (_descr->defaultValue() != "") _value->setText(_descr->defaultValue().c_str()); double val; bool ok; val = QString(_descr->minValue().c_str()).toDouble(&ok); if (ok) valid->setBottom(val); val = QString(_descr->maxValue().c_str()).toDouble(&ok); if (ok) valid->setTop(val); this->setEnabled(enabled()); _layout->addWidget(_value); // Connect line edit to the slot that fwds notification to the // mediator connect(_value, SIGNAL(textChanged(const QString&)), SLOT(valueChanged())); }
void ICParameterRange::UpdateConfigRangeValidator(uint type, double min, double max) { if(!configsRangeCache_.contains(type)) return; QDoubleValidator* dv = static_cast<QDoubleValidator*>(configsRangeCache_.value(type)); if(dv != NULL) { dv->setBottom(min); dv->setTop(max); return; } QIntValidator* iv = static_cast<QIntValidator*>(configsRangeCache_.value(type)); if(iv != NULL) { iv->setBottom(min); iv->setTop(max); } }
void ICParameterRange::UpdateConfigRangeValidator(const ICAddrWrapper *addr, double value) { // QMap<const ICAddrWrapper*, uint>::iterator p = addrToMaxValidator_.find(addr); value /= qPow(10, addr->Decimal()); QList<uint> vs = addrToMaxValidator_.values(addr); for(int i = 0; i != vs.size(); ++i) { if(!configsRangeCache_.contains(vs.at(i))) continue; QDoubleValidator* dv = static_cast<QDoubleValidator*>(configsRangeCache_.value(vs.at(i))); if(dv != NULL) { dv->setTop(value); // ++p; continue; } QIntValidator* iv = static_cast<QIntValidator*>(configsRangeCache_.value(vs.at(i))); if(iv != NULL) { iv->setTop(value); } } vs = addrToMinValidator_.values(addr); for(int i = 0; i != vs.size(); ++i) { if(!configsRangeCache_.contains(vs.at(i))) continue; QDoubleValidator* dv = static_cast<QDoubleValidator*>(configsRangeCache_.value(vs.at(i))); if(dv != NULL) { dv->setBottom(value); // ++p; continue; } QIntValidator* iv = static_cast<QIntValidator*>(configsRangeCache_.value(vs.at(i))); if(iv != NULL) { iv->setBottom(value); } } }
picPunto::picPunto(QWidget *parent) : QDialog(parent) { cnt = 0; QStringList txtformats; QGridLayout *mainLayout = new QGridLayout; //readSettings(); QPushButton *filebut = new QPushButton(tr("File...")); fileedit = new QLineEdit(); QDoubleValidator *val = new QDoubleValidator(0); val->setBottom ( 0.0 ); scaleedit = new QLineEdit(); scaleedit->setValidator(val); QFormLayout *flo = new QFormLayout; flo->addRow( filebut, fileedit); flo->addRow( tr("Scale:"), scaleedit); mainLayout->addLayout(flo, 0, 0); QHBoxLayout *loacceptcancel = new QHBoxLayout; QPushButton *acceptbut = new QPushButton(tr("Accept")); loacceptcancel->addStretch(); loacceptcancel->addWidget(acceptbut); QPushButton *cancelbut = new QPushButton(tr("Cancel")); loacceptcancel->addWidget(cancelbut); mainLayout->addLayout(loacceptcancel, 1, 0); setLayout(mainLayout); readSettings(); connect(cancelbut, SIGNAL(clicked()), this, SLOT(reject())); connect(acceptbut, SIGNAL(clicked()), this, SLOT(checkAccept())); connect(filebut, SIGNAL(clicked()), this, SLOT(dptFile())); }
void Advanced::prepareUi() { Selection *s = new Selection(this); connect(ui->actionOpen, SIGNAL(triggered()), this, SLOT(openRaster())); connect(ui->actionSave_Reprojection, SIGNAL(triggered()), this, SLOT(saveReprojection())); connect(ui->actionSelection_Screen, SIGNAL(triggered()), s, SLOT(showSelection())); connect(ui->actionSelection_Screen, SIGNAL(triggered()), this, SLOT(close())); connect(ui->actionExit, SIGNAL(triggered()), this, SLOT(close())); connect(ui->actionLoad_Projection_Info, SIGNAL(triggered()), this, SLOT(loadParams())); connect(ui->actionSave_Projection_Info, SIGNAL(triggered()), this, SLOT(saveParams())); connect(ui->actionToggle_Preview, SIGNAL(triggered()), this, SLOT(togglePreview())); connect(ui->actionAbout_dRasterBlaster, SIGNAL(triggered()), s, SLOT(about())); connect(ui->actionAbout_Qt, SIGNAL(triggered()), s, SLOT(aboutQt())); connect(ui->actionEdit_Author, SIGNAL(triggered()), s, SLOT(showEditAuthor())); connect(ui->actionUser_Guide, SIGNAL(triggered()), s, SLOT(showUserGuide())); connect(ui->fillEnable, SIGNAL(stateChanged(int)), this, SLOT(fillEnable(int))); connect(ui->noDataValueEnable, SIGNAL(stateChanged(int)), this, SLOT(noDataEnable(int))); //Validators QIntValidator *intValid = new QIntValidator(this); intValid->setBottom(0); QDoubleValidator *doubleValid = new QDoubleValidator(this); doubleValid->setNotation(QDoubleValidator::StandardNotation); doubleValid->setBottom(0.0); ui->Rows->setValidator(intValid); ui->Cols->setValidator(intValid); ui->FillValue->setValidator(intValid); ui->noDataValue->setValidator(intValid); ui->pixelSize->setValidator(doubleValid); //projections p; //p.callGenerate(_UTM); //ui->tabProjectionInfo->setLayout(p.projVLayout); }
QWidget * ExtArgNumber::createEditor(QWidget * parent) { QString storeValue; QString text = defaultValue(); if ( _argument->storeval ) { QString storeValue = _argument->storeval; if ( storeValue.length() > 0 && storeValue.compare(text) != 0 ) text = storeValue; } textBox = (QLineEdit *)ExtArgText::createEditor(parent); textBox->disconnect(SIGNAL(textChanged(QString))); if ( _argument->arg_type == EXTCAP_ARG_INTEGER || _argument->arg_type == EXTCAP_ARG_UNSIGNED ) { QIntValidator * textValidator = new QIntValidator(parent); if ( _argument->range_start != NULL ) { int val = 0; if ( _argument->arg_type == EXTCAP_ARG_INTEGER ) val = extcap_complex_get_int(_argument->range_start); else if ( _argument->arg_type == EXTCAP_ARG_UNSIGNED ) { guint tmp = extcap_complex_get_uint(_argument->range_start); if ( tmp > G_MAXINT ) { g_log(LOG_DOMAIN_CAPTURE, G_LOG_LEVEL_DEBUG, "Defined value for range_start of %s exceeds valid integer range", _argument->call ); val = G_MAXINT; } else val = (gint)tmp; } textValidator->setBottom(val); } if ( _argument->arg_type == EXTCAP_ARG_UNSIGNED && textValidator->bottom() < 0 ) { g_log(LOG_DOMAIN_CAPTURE, G_LOG_LEVEL_DEBUG, "%s sets negative bottom range for unsigned value, setting to 0", _argument->call ); textValidator->setBottom(0); } if ( _argument->range_end != NULL ) { int val = 0; if ( _argument->arg_type == EXTCAP_ARG_INTEGER ) val = extcap_complex_get_int(_argument->range_end); else if ( _argument->arg_type == EXTCAP_ARG_UNSIGNED ) { guint tmp = extcap_complex_get_uint(_argument->range_end); if ( tmp > G_MAXINT ) { g_log(LOG_DOMAIN_CAPTURE, G_LOG_LEVEL_DEBUG, "Defined value for range_end of %s exceeds valid integer range", _argument->call ); val = G_MAXINT; } else val = (gint)tmp; } textValidator->setTop(val); } textBox->setValidator(textValidator); } else if ( _argument->arg_type == EXTCAP_ARG_DOUBLE ) { QDoubleValidator * textValidator = new QDoubleValidator(parent); if ( _argument->range_start != NULL ) textValidator->setBottom(extcap_complex_get_double(_argument->range_start)); if ( _argument->range_end != NULL ) textValidator->setTop(extcap_complex_get_double(_argument->range_end)); textBox->setValidator(textValidator); } textBox->setText(text.trimmed()); connect(textBox, SIGNAL(textChanged(QString)), SLOT(onStringChanged(QString))); return textBox; }
TLMCoSimulationDialog::TLMCoSimulationDialog(MainWindow *pMainWindow) : QDialog(pMainWindow) { resize(450, 350); mpMainWindow = pMainWindow; setIsTLMCoSimulationRunning(false); // simulation widget heading mpHeadingLabel = Utilities::getHeadingLabel(""); mpHeadingLabel->setElideMode(Qt::ElideMiddle); // Horizontal separator mpHorizontalLine = Utilities::getHeadingLine(); // TLM Plugin Path mpTLMPluginPathLabel = new Label(tr("TLM Plugin Path:")); mpTLMPluginPathTextBox = new QLineEdit; mpBrowseTLMPluginPathButton = new QPushButton(Helper::browse); mpBrowseTLMPluginPathButton->setAutoDefault(false); connect(mpBrowseTLMPluginPathButton, SIGNAL(clicked()), SLOT(browseTLMPluginPath())); // tlm manager groupbox mpTLMManagerGroupBox = new QGroupBox(tr("TLM Manager")); // TLM Manager Process mpManagerProcessLabel = new Label(tr("Manager Process:")); mpManagerProcessTextBox = new QLineEdit; mpBrowseManagerProcessButton = new QPushButton(Helper::browse); mpBrowseManagerProcessButton->setAutoDefault(false); connect(mpBrowseManagerProcessButton, SIGNAL(clicked()), SLOT(browseManagerProcess())); // TLM Monitor Process mpMonitorProcessLabel = new Label(tr("Monitor Process:")); mpMonitorProcessTextBox = new QLineEdit; mpBrowseMonitorProcessButton = new QPushButton(Helper::browse); mpBrowseMonitorProcessButton->setAutoDefault(false); connect(mpBrowseMonitorProcessButton, SIGNAL(clicked()), SLOT(browseMonitorProcess())); // manager server port mpServerPortLabel = new Label(tr("Server Port:")); mpServerPortLabel->setToolTip(tr("Set the server network port for communication with the simulation tools")); mpServerPortTextBox = new QLineEdit("11111"); // manager monitor port mpMonitorPortLabel = new Label(tr("Monitor Port:")); mpMonitorPortLabel->setToolTip(tr("Set the port for monitoring connections")); mpMonitorPortTextBox = new QLineEdit("12111"); // tlm manager debug mode mpManagerDebugModeCheckBox = new QCheckBox(tr("Debug Mode")); // tlm manager layout QGridLayout *pTLMManagerGridLayout = new QGridLayout; pTLMManagerGridLayout->addWidget(mpManagerProcessLabel, 0, 0); pTLMManagerGridLayout->addWidget(mpManagerProcessTextBox, 0, 1); pTLMManagerGridLayout->addWidget(mpBrowseManagerProcessButton, 0, 2); pTLMManagerGridLayout->addWidget(mpServerPortLabel, 1, 0); pTLMManagerGridLayout->addWidget(mpServerPortTextBox, 1, 1, 1, 2); pTLMManagerGridLayout->addWidget(mpMonitorPortLabel, 2, 0); pTLMManagerGridLayout->addWidget(mpMonitorPortTextBox, 2, 1, 1, 2); pTLMManagerGridLayout->addWidget(mpManagerDebugModeCheckBox, 3, 0, 1, 3); mpTLMManagerGroupBox->setLayout(pTLMManagerGridLayout); // tlm monitor groupBox mpTLMMonitorGroupBox = new QGroupBox(tr("TLM Monitor")); // number of steps mpNumberOfStepsLabel = new Label(tr("Number Of Steps:")); mpNumberOfStepsTextBox = new QLineEdit; // time step size mpTimeStepSizeLabel = new Label(tr("Time Step Size:")); mpTimeStepSizeTextBox = new QLineEdit; // tlm monitor debug mode mpMonitorDebugModeCheckBox = new QCheckBox(tr("Debug Mode")); // tlm monitor layout QGridLayout *pTLMMonitorGridLayout = new QGridLayout; pTLMMonitorGridLayout->addWidget(mpMonitorProcessLabel, 0, 0); pTLMMonitorGridLayout->addWidget(mpMonitorProcessTextBox, 0, 1); pTLMMonitorGridLayout->addWidget(mpBrowseMonitorProcessButton, 0, 2); pTLMMonitorGridLayout->addWidget(mpNumberOfStepsLabel, 1, 0); pTLMMonitorGridLayout->addWidget(mpNumberOfStepsTextBox, 1, 1, 1, 2); pTLMMonitorGridLayout->addWidget(mpTimeStepSizeLabel, 2, 0); pTLMMonitorGridLayout->addWidget(mpTimeStepSizeTextBox, 2, 1, 1, 2); pTLMMonitorGridLayout->addWidget(mpMonitorDebugModeCheckBox, 3, 0, 1, 3); mpTLMMonitorGroupBox->setLayout(pTLMMonitorGridLayout); // Create the buttons // show TLM Co-simulation output window button mpShowTLMCoSimulationOutputWindowButton = new QPushButton(tr("Show TLM Co-Simulation Output Window")); mpShowTLMCoSimulationOutputWindowButton->setAutoDefault(false); connect(mpShowTLMCoSimulationOutputWindowButton, SIGNAL(clicked()), this, SLOT(showTLMCoSimulationOutputWindow())); // run TLM co-simulation button. mpRunButton = new QPushButton(Helper::simulate); mpRunButton->setAutoDefault(true); connect(mpRunButton, SIGNAL(clicked()), this, SLOT(runTLMCoSimulation())); // cancel TLM co-simulation dialog button. mpCancelButton = new QPushButton(Helper::cancel); mpCancelButton->setAutoDefault(false); connect(mpCancelButton, SIGNAL(clicked()), this, SLOT(reject())); // adds buttons to the button box mpButtonBox = new QDialogButtonBox(Qt::Horizontal); mpButtonBox->addButton(mpRunButton, QDialogButtonBox::ActionRole); mpButtonBox->addButton(mpCancelButton, QDialogButtonBox::ActionRole); // validators QIntValidator *pIntegerValidator = new QIntValidator(this); pIntegerValidator->setBottom(0); mpServerPortTextBox->setValidator(pIntegerValidator); mpMonitorPortTextBox->setValidator(pIntegerValidator); mpNumberOfStepsTextBox->setValidator(pIntegerValidator); QDoubleValidator *pDoubleValidator = new QDoubleValidator(this); pDoubleValidator->setBottom(0); mpTimeStepSizeTextBox->setValidator(pDoubleValidator); // layout QGridLayout *pMainLayout = new QGridLayout; pMainLayout->setAlignment(Qt::AlignLeft | Qt::AlignTop); pMainLayout->addWidget(mpHeadingLabel, 0, 0, 1, 3); pMainLayout->addWidget(mpHorizontalLine, 1, 0, 1, 3); pMainLayout->addWidget(mpTLMPluginPathLabel, 2, 0); pMainLayout->addWidget(mpTLMPluginPathTextBox, 2, 1); pMainLayout->addWidget(mpBrowseTLMPluginPathButton, 2, 2); pMainLayout->addWidget(mpTLMManagerGroupBox, 3, 0, 1, 3); pMainLayout->addWidget(mpTLMMonitorGroupBox, 4, 0, 1, 3); pMainLayout->addWidget(mpShowTLMCoSimulationOutputWindowButton, 5, 0, 1, 3); pMainLayout->addWidget(mpButtonBox, 6, 0, 1, 3, Qt::AlignRight); setLayout(pMainLayout); // create TLMCoSimulationOutputWidget mpTLMCoSimulationOutputWidget = new TLMCoSimulationOutputWidget(mpMainWindow); int xPos = QApplication::desktop()->availableGeometry().width() - mpTLMCoSimulationOutputWidget->frameSize().width() - 20; int yPos = QApplication::desktop()->availableGeometry().height() - mpTLMCoSimulationOutputWidget->frameSize().height() - 20; mpTLMCoSimulationOutputWidget->setGeometry(xPos, yPos, mpTLMCoSimulationOutputWidget->width(), mpTLMCoSimulationOutputWidget->height()); }
void AbstractAnimationWindow::createActions() { // actions and widgets for the toolbar int toolbarIconSize = OptionsDialog::instance()->getGeneralSettingsPage()->getToolbarIconSizeSpinBox()->value(); // choose file action mpAnimationChooseFileAction = new QAction(QIcon(":/Resources/icons/open.svg"), Helper::animationChooseFile, this); mpAnimationChooseFileAction->setStatusTip(Helper::animationChooseFileTip); connect(mpAnimationChooseFileAction, SIGNAL(triggered()),this, SLOT(chooseAnimationFileSlotFunction())); // initialize action mpAnimationInitializeAction = new QAction(QIcon(":/Resources/icons/initialize.svg"), Helper::animationInitialize, this); mpAnimationInitializeAction->setStatusTip(Helper::animationInitializeTip); mpAnimationInitializeAction->setEnabled(false); connect(mpAnimationInitializeAction, SIGNAL(triggered()),this, SLOT(initSlotFunction())); // animation play action mpAnimationPlayAction = new QAction(QIcon(":/Resources/icons/play_animation.svg"), Helper::animationPlay, this); mpAnimationPlayAction->setStatusTip(Helper::animationPlayTip); mpAnimationPlayAction->setEnabled(false); connect(mpAnimationPlayAction, SIGNAL(triggered()),this, SLOT(playSlotFunction())); // animation pause action mpAnimationPauseAction = new QAction(QIcon(":/Resources/icons/pause.svg"), Helper::animationPause, this); mpAnimationPauseAction->setStatusTip(Helper::animationPauseTip); mpAnimationPauseAction->setEnabled(false); connect(mpAnimationPauseAction, SIGNAL(triggered()),this, SLOT(pauseSlotFunction())); // animation slide mpAnimationSlider = new QSlider(Qt::Horizontal); mpAnimationSlider->setMinimum(0); mpAnimationSlider->setMaximum(100); mpAnimationSlider->setSliderPosition(0); mpAnimationSlider->setEnabled(false); connect(mpAnimationSlider, SIGNAL(valueChanged(int)),this, SLOT(sliderSetTimeSlotFunction(int))); // animation time QDoubleValidator *pDoubleValidator = new QDoubleValidator(this); pDoubleValidator->setBottom(0); mpAnimationTimeLabel = new Label; mpAnimationTimeLabel->setText(tr("Time [s]:")); mpTimeTextBox = new QLineEdit("0.0"); mpTimeTextBox->setMaximumSize(QSize(toolbarIconSize*2, toolbarIconSize)); mpTimeTextBox->setEnabled(false); mpTimeTextBox->setValidator(pDoubleValidator); connect(mpTimeTextBox, SIGNAL(returnPressed()),this, SLOT(jumpToTimeSlotFunction())); // animation speed mpAnimationSpeedLabel = new Label; mpAnimationSpeedLabel->setText(tr("Speed:")); mpSpeedComboBox = new QComboBox; mpSpeedComboBox->setEditable(true); mpSpeedComboBox->addItems(QStringList() << "10" << "5" << "2" << "1" << "0.5" << "0.2" << "0.1"); mpSpeedComboBox->setCurrentIndex(3); mpSpeedComboBox->setMaximumSize(QSize(toolbarIconSize*2, toolbarIconSize)); mpSpeedComboBox->setEnabled(false); mpSpeedComboBox->setValidator(pDoubleValidator); mpSpeedComboBox->setCompleter(0); connect(mpSpeedComboBox, SIGNAL(currentIndexChanged(int)),this, SLOT(setSpeedSlotFunction())); connect(mpSpeedComboBox->lineEdit(), SIGNAL(textChanged(QString)),this, SLOT(setSpeedSlotFunction())); // perspective drop down mpPerspectiveDropDownBox = new QComboBox; mpPerspectiveDropDownBox->addItem(QIcon(":/Resources/icons/perspective0.svg"), QString("Isometric")); mpPerspectiveDropDownBox->addItem(QIcon(":/Resources/icons/perspective1.svg"),QString("Side")); mpPerspectiveDropDownBox->addItem(QIcon(":/Resources/icons/perspective2.svg"),QString("Front")); mpPerspectiveDropDownBox->addItem(QIcon(":/Resources/icons/perspective3.svg"),QString("Top")); connect(mpPerspectiveDropDownBox, SIGNAL(activated(int)), this, SLOT(setPerspective(int))); // rotate camera left action mpRotateCameraLeftAction = new QAction(QIcon(":/Resources/icons/rotateCameraLeft.svg"), tr("Rotate Left"), this); mpRotateCameraLeftAction->setStatusTip(tr("Rotates the camera left")); connect(mpRotateCameraLeftAction, SIGNAL(triggered()), this, SLOT(rotateCameraLeft())); // rotate camera right action mpRotateCameraRightAction = new QAction(QIcon(":/Resources/icons/rotateCameraRight.svg"), tr("Rotate Right"), this); mpRotateCameraRightAction->setStatusTip(tr("Rotates the camera right")); connect(mpRotateCameraRightAction, SIGNAL(triggered()), this, SLOT(rotateCameraRight())); }