KinectRecorderWindow::KinectRecorderWindow(int fps, KinectDevice* device) : QMainWindow() , fps_(fps) , device_(device) , widget_viewer_(new KinectViewerWidget(fps, device)) { widget_viewer_->setMinimumSize(1280, 480); widget_viewer_->setMaximumSize(1280, 480); setCentralWidget(widget_viewer_); QDockWidget *dock = new QDockWidget(this); dock->setAllowedAreas(Qt::BottomDockWidgetArea); dock->setFeatures(QDockWidget::NoDockWidgetFeatures); widget_record_ = new RecordInterfaceWidget(dock); connect(widget_record_, SIGNAL(dialogOpened()), widget_viewer_, SLOT(pause())); connect(widget_record_, SIGNAL(dialogClosed()), widget_viewer_, SLOT(resume())); connect(widget_record_, SIGNAL(destroyed(QObject*)), this, SLOT(close())); connect(widget_record_, SIGNAL(startRecord(std::string)), this, SLOT(recordStarted(std::string))); connect(widget_record_, SIGNAL(finishRecord()), this, SLOT(recordFinished())); widget_record_->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed); dock->setWidget(widget_record_); addDockWidget(Qt::BottomDockWidgetArea, dock); setWindowTitle("Kinect viewer"); move(100, 100); setAttribute(Qt::WA_DeleteOnClose); }
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow), m_plugins(PluginRegistry::instance()) { ui->setupUi(this); connect(ui->actionEdit, SIGNAL(triggered(bool)), this, SLOT(openEdit())); connect(ui->actionRecord, SIGNAL(triggered(bool)), this, SLOT(openRecord())); connect(ui->actionPlugins, SIGNAL(triggered(bool)), this, SLOT(openPlugins())); connect(ui->recordPage, SIGNAL(recordFinished()), this, SLOT(editRequests())); QToolButton *openButton = static_cast<QToolButton *>(ui->toolBar->widgetForAction(ui->actionOpen)); openButton->setPopupMode(QToolButton::MenuButtonPopup); QAction *openSeparator = new QAction(this); openSeparator->setSeparator(true); openButton->addAction(openSeparator); QToolButton *saveButton = static_cast<QToolButton *>(ui->toolBar->widgetForAction(ui->actionSave)); saveButton->setPopupMode(QToolButton::MenuButtonPopup); saveButton->addAction(ui->actionSaveAs); connect(ui->actionNew, SIGNAL(triggered(bool)), ui->editPage, SLOT(newProject())); connect(ui->actionOpen, SIGNAL(triggered(bool)), this, SLOT(loadProject())); connect(ui->actionSave, SIGNAL(triggered(bool)), this, SLOT(saveProject())); connect(ui->actionSaveAs, SIGNAL(triggered(bool)), this, SLOT(saveProjectAs())); selectAction(ui->actionEdit); updateOpenMenu(); connect(&m_plugins, SIGNAL(toolPluginLoaded(QObject *)), ui->editPage, SLOT(addToolToToolbar(QObject *))); PostMonster::APIFunctions api; api.evalScript = WorkEngine::evalScript; api.serializeRequest = Common::serializeRequest; api.deserializeRequest = Common::deserializeRequest; api.serializeResponse = Common::serializeResponse; api.deserializeResponse = Common::deserializeResponse; api.defaultEncodings = Common::encodings; api.dpiScaleFactor = Common::dpiScaleFactor; m_plugins.loadPlugins(api); if (m_plugins.tool("http")) { PostMonster::HttpToolPluginInterface *httpTool = static_cast<PostMonster::HttpToolPluginInterface *>(m_plugins.tool("http")); ui->editPage->setRequestsModel(httpTool, &m_requestsModel); ui->recordPage->setRequestsModel(httpTool, &m_requestsModel); } connect(ui->editPage, &EditForm::debugStatusChanged, ui->actionNew, &QAction::setDisabled); connect(ui->editPage, &EditForm::debugStatusChanged, ui->actionOpen, &QAction::setDisabled); connect(ui->editPage, &EditForm::debugStatusChanged, ui->actionRecord, &QAction::setDisabled); foreach (QToolBar *toolBar, findChildren<QToolBar *>()) { toolBar->setIconSize(toolBar->iconSize() * Common::dpiScaleFactor()); }