Пример #1
0
    void UserPickerWidget::receivedUserAccounts(QList<QPair<uint, QString> > accounts) {
        bool serverOk = !_serverProblemsPreventLogin;

        std::sort(
            accounts.begin(), accounts.end(),
            [](const QPair<uint,QString>& u1, const QPair<uint,QString>& u2) {
                return u1.second < u2.second;
            }
        );

        _ui->loadingUserListLabel->setVisible(false);

        if (accounts.size() <= 0) {
            _ui->noUserAccountsYetLabel->setVisible(serverOk);
        }
        else {
            for (int i = 0; i < accounts.size(); ++i) {
                QString username = accounts[i].second;

                QCommandLinkButton* button =
                    new QCommandLinkButton(_ui->usersListFrame);
                button->setText(username);
                button->setDescription(QString(tr("Login as %1")).arg(username));

                connect(
                    button, &QCommandLinkButton::clicked,
                    [=]() { emit accountClicked(username); }
                );

                _ui->usersListLayout->addWidget(button);
            }
        }

        _ui->createNewAccountButton->setEnabled(serverOk);
    }
Пример #2
0
 void retranslateUi(QMainWindow *Detection)
 {
     Detection->setWindowTitle(QApplication::translate("Detection", "Detection", 0, QApplication::UnicodeUTF8));
     actionE_xit->setText(QApplication::translate("Detection", "E&xit", 0, QApplication::UnicodeUTF8));
     action_Load_Map->setText(QApplication::translate("Detection", "&Load Map...", 0, QApplication::UnicodeUTF8));
     action_Connect->setText(QApplication::translate("Detection", "&Connect...", 0, QApplication::UnicodeUTF8));
     action_Disconnect->setText(QApplication::translate("Detection", "&Disconnect", 0, QApplication::UnicodeUTF8));
     ugvFeedLabel->setText(QApplication::translate("Detection", "No UGV Video.", 0, QApplication::UnicodeUTF8));
     connectionButton->setText(QApplication::translate("Detection", "Connect", 0, QApplication::UnicodeUTF8));
     uavFeedLabel->setText(QApplication::translate("Detection", "No UAV Video.", 0, QApplication::UnicodeUTF8));
     ugvMapLabel->setText(QApplication::translate("Detection", "No Uploaded Map.", 0, QApplication::UnicodeUTF8));
     label_2->setText(QApplication::translate("Detection", "UAV:", 0, QApplication::UnicodeUTF8));
     uavTakeoffLandButton->setText(QApplication::translate("Detection", "Take-off", 0, QApplication::UnicodeUTF8));
     label->setText(QApplication::translate("Detection", "UGV Speed:", 0, QApplication::UnicodeUTF8));
     label_3->setText(QApplication::translate("Detection", "UGV:", 0, QApplication::UnicodeUTF8));
     ugvSpeakerButton->setText(QApplication::translate("Detection", "Speakers On", 0, QApplication::UnicodeUTF8));
     label_4->setText(QApplication::translate("Detection", "Status", 0, QApplication::UnicodeUTF8));
     label_5->setText(QApplication::translate("Detection", "Connect to SAUVER:", 0, QApplication::UnicodeUTF8));
     menuFile->setTitle(QApplication::translate("Detection", "&File", 0, QApplication::UnicodeUTF8));
     menu_Tools->setTitle(QApplication::translate("Detection", "&Tools", 0, QApplication::UnicodeUTF8));
     menu_Help->setTitle(QApplication::translate("Detection", "&Help", 0, QApplication::UnicodeUTF8));
 } // retranslateUi
Пример #3
0
void MainWindow::createMenus(int parentMenu)
{
    if ( ui->scrollAreaWidgetContents->layout() != NULL ) // очистка кнопок
    {
        QLayoutItem* item;
        while ((item = ui->scrollAreaWidgetContents->layout()->takeAt(0) ) != NULL )
        {
            delete item->widget();
            delete item;
        }
        delete ui->scrollAreaWidgetContents->layout();
    }
    if (! dal_main->checkConnection())
    {
        QMessageBox::warning(this, tr("Ошибка соединения"), tr("Соединение не установлено"));
        return;
    }
    QSqlQuery *query = new QSqlQuery("SELECT * FROM is_menus WHERE menu_parent = " + QString::number(parentMenu), dal_main->db);
    query->exec();
    query->first();
    //    qDebug()<<query->lastError()<<query->size();
    ui->groupBox->setVisible(true);
    ui->scrollArea->setMinimumSize(900, 400);
    //    ui->scrollArea->setMaximumSize(800, 500);
    //    ui->groupBox_menu->setMinimumSize(800, 1000);
    QGridLayout *menuLayout = new QGridLayout(ui->scrollAreaWidgetContents);
    ui->scrollAreaWidgetContents->setLayout(menuLayout);
    int row = 0;
    int column = 0;
    //    QList<QCommandLinkButton*> list;
    //    QSequentialAnimationGroup *anim = new QSequentialAnimationGroup;
    for (int i = 0; i < query->size(); ++i)
    {
        QCommandLinkButton* mbtn = new QCommandLinkButton(query->value(1).toString());
        //        QPushButton* mbtn = new QPushButton(query->value(1).toString());
        mbtn->setText(query->value(1).toString());
        mbtn->setMinimumSize(265,70);
        mbtn->setMaximumSize(265,70);
        mbtn->setIcon(QIcon(":/img/img/" + query->value(2).toString()));
        mbtn->setIconSize(QSize(30,60));
        mbtn->setToolTip(query->value(5).toString());
        QGraphicsDropShadowEffect * ef =  new QGraphicsDropShadowEffect; // эффект тени
        ef->setBlurRadius(20);
        mbtn->setGraphicsEffect(ef);
        connect(mbtn,SIGNAL(clicked()),SLOT(menuClick()));
        //        QGraphicsOpacityEffect* fade_effect = new QGraphicsOpacityEffect(mbtn);
        //        mbtn->setGraphicsEffect(fade_effect);
        //        QPropertyAnimation *animation = new QPropertyAnimation(fade_effect, "opacity");
        //        animation->setEasingCurve(QEasingCurve::InOutQuad);
        //        animation->setDuration(100);
        //        animation->setStartValue(0.01);
        //        animation->setEndValue(1.0);
        //        anim->addAnimation(animation);
        menuLayout->addWidget(mbtn,row,column);
        if(column<2)
            column++;
        else
        {
            column = 0;
            row++;
        }
        query->next();
    }
    //    anim->start();
    //    *555-050-*
    //        *909-0-*
    ui->frame->setVisible(false);
}
Пример #4
0
int main(int argc, char **argv)
{
    QApplication app(argc, argv);
    Window *view = new Window();
    QWidget *container = QWidget::createWindowContainer(view);
    QSize screenSize = view->screen()->size();
    container->setMinimumSize(QSize(200, 100));
    container->setMaximumSize(screenSize);

    QWidget *widget = new QWidget;
    QHBoxLayout *hLayout = new QHBoxLayout(widget);
    QVBoxLayout *vLayout = new QVBoxLayout();
    vLayout->setAlignment(Qt::AlignTop);
    hLayout->addWidget(container, 1);
    hLayout->addLayout(vLayout);

    widget->setWindowTitle(QStringLiteral("Basic shapes"));

    Qt3DCore::QAspectEngine engine;
    engine.registerAspect(new Qt3DRender::QRenderAspect());
    Qt3DInput::QInputAspect *input = new Qt3DInput::QInputAspect;
    engine.registerAspect(input);
    QVariantMap data;
    data.insert(QStringLiteral("surface"), QVariant::fromValue(static_cast<QSurface *>(view)));
    data.insert(QStringLiteral("eventSource"), QVariant::fromValue(view));
    engine.setData(data);

    // Root entity
    Qt3DCore::QEntity *rootEntity = new Qt3DCore::QEntity();

    // Camera
    Qt3DCore::QCamera *cameraEntity = new Qt3DCore::QCamera(rootEntity);
    cameraEntity->setObjectName(QStringLiteral("cameraEntity"));

    cameraEntity->lens()->setPerspectiveProjection(45.0f, 16.0f/9.0f, 0.1f, 1000.0f);
    cameraEntity->setPosition(QVector3D(0, 0, -20.0f));
    cameraEntity->setUpVector(QVector3D(0, 1, 0));
    cameraEntity->setViewCenter(QVector3D(0, 0, 0));
    input->setCamera(cameraEntity);

    // FrameGraph
    Qt3DRender::QFrameGraph *frameGraph = new Qt3DRender::QFrameGraph();
    Qt3DRender::QForwardRenderer *forwardRenderer = new Qt3DRender::QForwardRenderer();

    forwardRenderer->setCamera(cameraEntity);
    forwardRenderer->setClearColor(QColor(QRgb(0x4d4d4f)));
    frameGraph->setActiveFrameGraph(forwardRenderer);

    // Setting the FrameGraph
    rootEntity->addComponent(frameGraph);

    // Scenemodifier
    SceneModifier *modifier = new SceneModifier(rootEntity);

    // Set root object of the scene
    engine.setRootEntity(rootEntity);

    // Create control widgets
    QCommandLinkButton *info = new QCommandLinkButton();
    info->setText(QStringLiteral("Qt3D ready-made meshes"));
    info->setDescription(QStringLiteral("Qt3D provides several ready-made meshes, like torus, cylinder, cube and sphere."));
    info->setIconSize(QSize(0,0));

    QCheckBox *torusCB = new QCheckBox(widget);
    torusCB->setChecked(true);
    torusCB->setText(QStringLiteral("Torus"));

    QCheckBox *cylinderCB = new QCheckBox(widget);
    cylinderCB->setChecked(true);
    cylinderCB->setText(QStringLiteral("Cylinder"));

    QCheckBox *cuboidCB = new QCheckBox(widget);
    cuboidCB->setChecked(true);
    cuboidCB->setText(QStringLiteral("Cuboid"));

    QCheckBox *sphereCB = new QCheckBox(widget);
    sphereCB->setChecked(true);
    sphereCB->setText(QStringLiteral("Sphere"));

    vLayout->addWidget(info);
    vLayout->addWidget(torusCB);
    vLayout->addWidget(cylinderCB);
    vLayout->addWidget(cuboidCB);
    vLayout->addWidget(sphereCB);

    QObject::connect(torusCB, &QCheckBox::stateChanged,
                     modifier, &SceneModifier::enableTorus);
    QObject::connect(cylinderCB, &QCheckBox::stateChanged,
                     modifier, &SceneModifier::enableCylinder);
    QObject::connect(cuboidCB, &QCheckBox::stateChanged,
                     modifier, &SceneModifier::enableCuboid);
    QObject::connect(sphereCB, &QCheckBox::stateChanged,
                     modifier, &SceneModifier::enableSphere);

    torusCB->setChecked(true);
    cylinderCB->setChecked(true);
    cuboidCB->setChecked(true);
    sphereCB->setChecked(true);

    // Show window
    widget->show();
    widget->resize(1200, 800);

    // Update the aspect ratio
    QSize widgetSize =  container->size();
    float aspectRatio = float(widgetSize.width()) / float(widgetSize.height());
    cameraEntity->lens()->setPerspectiveProjection(45.0f, aspectRatio, 0.1f, 1000.0f);

    return app.exec();
}