Exemplo n.º 1
0
FormListAerodroms::FormListAerodroms(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::FormListAerodroms)
{
    ui->setupUi(this);

    setWindowFlags(Qt::Tool | Qt::WindowTitleHint | Qt::WindowStaysOnTopHint |Qt::WindowCloseButtonHint);

    QHeaderView *qhv=ui->tableWidget->horizontalHeader();
    qhv->setSectionResizeMode(QHeaderView::ResizeToContents);

    domAerodroms.clear();
    openXML(tr("./xml/")+XML_AERODROMS);
}
	// 导入场景
	bool XMLSceneSerializer::importScene(DataStreamPtr& stream, IScene* scene)
	{
		m_scene = scene;
		// 打开XML文件
		if(!openXML(stream))
			return false;
		// 遍历所有Scene
		for (TiXmlElement* element = m_xmlDoc->RootElement()->FirstChildElement("Scene");
			element != 0; element = element->NextSiblingElement("Scene"))
		{
			readScene(element);
		}
		return true;
	}
Exemplo n.º 3
0
StegoFrame::StegoFrame(QWidget* parent) : QMainWindow(parent) {
  QSplitter *central = new QSplitter(Qt::Vertical);
  QScrollArea *hscroll = new QScrollArea();
  QScrollArea *pscroll = new QScrollArea();
  QDomElement stegoDom;
  
  model = new StegoModel();
  model->addView(this);
  
  hw = new HistogramWidget(this, model);
  pw = new PairWidget(this, model);

  fdock = new FeatureDock(this, model);
  cdock = new ConfigDock(hw, pw, this);
//   gdock = new GraphDock(this);
//   tdock = new TableDock(this, model);
  ldial = new LoadDialog(this);
  
  hscroll->setWidgetResizable(1);
  hscroll->setAlignment(Qt::AlignLeft);
//   hscroll->setBackgroundRole(QPalette::Dark);
  hscroll->setWidget(hw);
  pscroll->setWidgetResizable(1);
  pscroll->setAlignment(Qt::AlignLeft);
//   pscroll->setBackgroundRole(QPalette::Dark);
  pscroll->setWidget(pw);
  central->addWidget(hscroll);
  central->addWidget(pscroll);
//   scroll1->setWidget(central);
//   central->show();
  
  setCentralWidget(central);
  addDockWidget(Qt::LeftDockWidgetArea, fdock);
  addDockWidget(Qt::BottomDockWidgetArea, cdock);
//   addDockWidget(Qt::BottomDockWidgetArea, gdock);
//   addDockWidget(Qt::BottomDockWidgetArea, tdock);
  
  openFeaturesAction = new QAction(tr("Open"), this);
  loadFeaturesAction = new QAction(tr("Load"), this);
  openDocAction = new QAction(tr("Open"), this);
  saveDocAction = new QAction(tr("Save"), this);
  mmdAction  = new QAction(tr("MMDs"), this);
  svmAction  = new QAction(tr("SVM classification"), this);
  muAction   = new QAction(tr("Mus"), this);
  
  fdial = new QFileDialog(this);
  fdial->setFileMode(QFileDialog::ExistingFiles);
  fdial->setNameFilter(tr("Features (*.fv)"));
  fdial->setAcceptMode(QFileDialog::AcceptOpen);
  fdial->setDirectory(tr("."));
  
  docMenu = menuBar()->addMenu(tr("Document"));
  fileMenu = menuBar()->addMenu(tr("Features"));
  calcMenu = menuBar()->addMenu(tr("Calculate"));
  fileMenu->addAction(openFeaturesAction);
  fileMenu->addAction(loadFeaturesAction);
  docMenu->addAction(openDocAction);
  docMenu->addAction(saveDocAction);
  calcMenu->addAction(muAction);
  calcMenu->addAction(mmdAction);
  calcMenu->addAction(svmAction);
  
  progress = new QProgressBar(statusBar());
  statusLabel = new QLabel(tr("Ready."));
  statusBar()->addPermanentWidget(statusLabel, 9);
  statusBar()->addPermanentWidget(progress, 1);
  
  connect(openFeaturesAction, SIGNAL(triggered(bool)), this, SLOT(openCollection()));
  connect(loadFeaturesAction, SIGNAL(triggered(bool)), ldial, SLOT(open()));
  connect(saveDocAction, SIGNAL(triggered(bool)), this, SLOT(saveXML()));
  connect(mmdAction, SIGNAL(triggered(bool)), this, SLOT(calcMMDs()));
  connect(svmAction, SIGNAL(triggered(bool)), this, SLOT(classify()));
  connect(muAction, SIGNAL(triggered(bool)), this, SLOT(calcMus()));
  connect(ldial, SIGNAL(accepted()), this, SLOT(loadFeatures()));
  
  document = new QDomDocument();
  xmlFile = new QFile("stegodoc.xml");
  if (xmlFile->exists()) {
    openXML();
//     if (document->firstChildElement().tagName() != QString("stegosaurus"))
//       printf("lol \n");
    sets = document->firstChildElement().firstChildElement(QString("sets"));
    if (sets.isNull()) {
      sets = document->createElement(QString("sets"));
      stegoDom.appendChild(sets);
    }
    mmds = document->firstChildElement().firstChildElement(QString("mmds"));
    if (sets.isNull()) {
      sets = document->createElement(QString("mmds"));
      stegoDom.appendChild(sets);
    }
  } else {
    stegoDom = document->createElement(QString("stegosaurus"));
    sets = document->createElement(QString("sets"));
    stegoDom.appendChild(sets);
    document->appendChild(stegoDom);
  }
  
  setMinimumSize(1280, 720);
  setWindowTitle("Stegosaurus");
}