示例#1
0
void History::replay(unsigned id) {

	//replay only outgoing call
	if (getMemento(id)->isCallMemento()) {
		std::string phoneNumber = getMemento(id)->getPeer();
		_userProfile.getActivePhoneLine()->makeCall(phoneNumber);
	}
}
示例#2
0
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)));
}