void History::replay(unsigned id) { //replay only outgoing call if (getMemento(id)->isCallMemento()) { std::string phoneNumber = getMemento(id)->getPeer(); _userProfile.getActivePhoneLine()->makeCall(phoneNumber); } }
void MainWindow::createGUIWidgets(const QString modelFilePath ) { cameras_ = Cameras::getInstance(); connect(cameras_.get(), SIGNAL(cameraAdded(int, QString)), this, SLOT(addItemToCameraListWidget(int, QString))); connect(cameras_.get(), SIGNAL(cameraNameModified(int, QString)), this, SLOT(modifyCameraNameInListWidget(int, QString))); connect(cameras_.get(), SIGNAL(cameraDeleted(int)), this, SLOT(deleteItemInCameraListWidget(int))); connect(cameras_.get(), SIGNAL(setSelectedCameraPropertiesInMainWindow(int, float, QString)), this, SLOT(updateSelectedCameraProperties(int, float, QString))); connect(this, SIGNAL(cameraListDoubleClicked(int)), cameras_.get(), SLOT(setSelectedCamera(int))); //ListWidget lblCamerasList_ = new QLabel("Cameras"); lstWidgetCameras_ = new QListWidget(); connect(lstWidgetCameras_, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(onlstWidgetCamerasDoubleClicked(QModelIndex))); //Selected Camera Info Widgets lblCameraName_ = new QLabel("Name"); lnEditCameraName_ = new QLineEdit(); lblCameraName_->setBuddy(lnEditCameraName_); lnEditCameraName_->setEnabled(false); connect(lnEditCameraName_, SIGNAL(textEdited(QString)), cameras_.get(), SLOT(setSelectedCameraName(QString))); cameraNameLayout_ = new QHBoxLayout(); cameraNameLayout_->addWidget(lblCameraName_); cameraNameLayout_->addWidget(lnEditCameraName_); lblFOV_ = new QLabel("FOVx"); lblFOVValue_ = new QLabel("0"); sliderCameraFOVx_ = new QSlider(Qt::Horizontal); sliderCameraFOVx_->setValue(0); sliderCameraFOVx_->setEnabled(false); connect(sliderCameraFOVx_, SIGNAL(valueChanged(int)), lblFOVValue_, SLOT(setNum(int))); connect(sliderCameraFOVx_, SIGNAL(sliderMoved(int)), cameras_.get(), SLOT(setSelectedCameraFOV(int))); connect(sliderCameraFOVx_, SIGNAL(sliderPressed()), cameras_.get(), SLOT(setMemento())); fovLayout_ = new QHBoxLayout(); fovLayout_->addWidget(lblFOV_); fovLayout_->addWidget(lblFOVValue_); fovLayout_->addWidget(sliderCameraFOVx_); lblAspectRatio_ = new QLabel("Aspect Ratio"); spnBoxCameraAspectRatio_ = new QDoubleSpinBox(); spnBoxCameraAspectRatio_->setEnabled(false); spnBoxCameraAspectRatio_->setSingleStep(0.1); connect(spnBoxCameraAspectRatio_, SIGNAL(valueChanged(double)), cameras_.get(), SLOT(setSelectedCameraAspectRatio(double))); aspectRatioLayout_ = new QHBoxLayout(); aspectRatioLayout_->addWidget(lblAspectRatio_); aspectRatioLayout_->addWidget(spnBoxCameraAspectRatio_); selectedCameraInfoLayout_ = new QVBoxLayout(); selectedCameraInfoLayout_->addLayout(cameraNameLayout_); selectedCameraInfoLayout_->addLayout(fovLayout_); selectedCameraInfoLayout_->addLayout(aspectRatioLayout_); //Buttons Widgets btnUndo_ = new QPushButton(); btnUndo_->resize(64, 64); btnUndo_->setIcon(QPixmap(":/assets/images/undo.png", 0, Qt::AutoColor)); btnUndo_->setIconSize(QSize(32, 32)); connect(btnUndo_, SIGNAL(clicked()), cameras_.get(), SLOT(getMemento())); btnDeleteCamera_ = new QPushButton(); btnDeleteCamera_->resize(64, 64); btnDeleteCamera_->setIcon(QPixmap(":/assets/images/delete.png", 0, Qt::AutoColor)); btnDeleteCamera_->setIconSize(QSize(32, 32)); connect(btnDeleteCamera_, SIGNAL(pressed()), cameras_.get(), SLOT(deleteSelectedCamera())); btnCameraDragAndDrop_ = new QPushButton(); btnCameraDragAndDrop_->resize(64, 64); btnCameraDragAndDrop_->setIcon(QPixmap(":/assets/images/camera.png", 0, Qt::AutoColor)); btnCameraDragAndDrop_->setIconSize(QSize(32, 32)); connect(btnCameraDragAndDrop_, SIGNAL(pressed()), this, SLOT(onBtnCameraDragAndDropPressed())); buttonsLayout_ = new QHBoxLayout(); buttonsLayout_->addStretch(); buttonsLayout_->addWidget(btnDeleteCamera_); buttonsLayout_->addWidget(btnUndo_); buttonsLayout_->addWidget(btnCameraDragAndDrop_); //Checkbox Widget chkBoxCamera180FOV_ = new QCheckBox("Show Full Coverage"); chkBoxCamera180FOV_->setChecked(false); //MainWindow OpenGL Widgets QGLFormat format; format.setVersion(3,3); format.setProfile(QGLFormat::CoreProfile); format.setSampleBuffers(true); format.setSamples(4); glMainView_ = new MainView(format, modelFilePath); glCameraView_ = new CameraView(glMainView_); dockWidgetCameraView_ = new QDockWidget(); dockWidgetCameraView_->setAllowedAreas(Qt::NoDockWidgetArea); dockWidgetCameraView_->setFeatures(QDockWidget::DockWidgetMovable | QDockWidget::DockWidgetFloatable); dockWidgetCameraView_->setWidget(glCameraView_); dockWidgetCameraView_->setWindowTitle("Selected Camera View"); connect(dockWidgetCameraView_, SIGNAL(topLevelChanged(bool)), this, SLOT(cameraViewWidgetUndocked(bool))); //Left Layout leftMainWidget_ = new QWidget(); leftMainLayout_ = new QVBoxLayout(leftMainWidget_); leftMainLayout_->addWidget(lblCamerasList_); leftMainLayout_->addWidget(lstWidgetCameras_); leftMainLayout_->addLayout(buttonsLayout_); leftMainLayout_->addLayout(selectedCameraInfoLayout_); leftMainLayout_->addWidget(chkBoxCamera180FOV_); leftMainLayout_->addStretch(10); leftMainLayout_->addWidget(dockWidgetCameraView_); const float LEFT_MAIN_LAYOUT_WIDTH_FACTOR = 1 / 3.75f; leftMainWidget_->setFixedWidth(this->width() * LEFT_MAIN_LAYOUT_WIDTH_FACTOR); mainLayout_ = new QHBoxLayout(); mainLayout_->addWidget(leftMainWidget_); mainLayout_->addWidget(glMainView_); centralWidget_ = new QWidget(); centralWidget_->setLayout(mainLayout_); this->setCentralWidget(centralWidget_); //now all QObjects created using "new" in this class are owned by MainWindow connect(chkBoxCamera180FOV_, SIGNAL(toggled(bool)), glMainView_, SLOT(toggelShowCamera180FOVView(bool))); }