示例#1
0
文件: mainwindow.cpp 项目: jabouzi/qt
MainWindow::MainWindow(QWidget *parent)
  : QDialog(parent)
{

  QCoreApplication::setOrganizationName("DBooker");
  QCoreApplication::setOrganizationDomain("www.d-booker.fr");
  QCoreApplication::setApplicationName("Enginio Toolbox");

  QHBoxLayout *outerLayout = new QHBoxLayout(this);
  QWidget *mainWidget = new QWidget;
  QVBoxLayout *mainWidgetLayout = new QVBoxLayout(mainWidget);

  mainWidgetLayout->addWidget(createSetupWidget());

  QTabWidget *actionWidget = new QTabWidget;
  actionWidget->setDisabled(true);
  addExportPage(actionWidget);
  addImportPage(actionWidget);
  addRemovePage(actionWidget);
  mainWidgetLayout->addWidget(actionWidget);

  outerLayout->addWidget(mainWidget);
  outerLayout->addWidget(createLogWidget());

  mainWidget->setMaximumWidth(400);

  connect (m_objectType, &QLineEdit::textChanged,
           [=](const QString &text){
                actionWidget->setDisabled(text.isEmpty());
           });

  connect(m_importFileButton, &QPushButton::clicked, this, &MainWindow::onImportFile);
  connect(m_importButton, &QPushButton::clicked, this, &MainWindow::onImport);
  connect(m_exportFileButton, &QPushButton::clicked, this, &MainWindow::onExportFile);
  connect(m_exportButton, &QPushButton::clicked, this, &MainWindow::onExport);
  connect(m_removeButton, &QPushButton::clicked, this, &MainWindow::onRemove);

  m_client = new EnginioClient(this);

  connect(m_client, &EnginioClient::error, this, &MainWindow::enginioError);
  connect(m_client, &EnginioClient::finished, this, &MainWindow::enginioFinished);
}