void filesDropped (const StringArray& files, int, int) override
 {
     setText (getText() + files.joinIntoString (isMultiline ? "\n" : ", "), sendNotificationSync);
     showEditor();
 }
Пример #2
0
void MainWindow::on_actionOpen_Project_triggered()
{
    if(project_open)
        on_actionClose_Project_triggered();

    if(project_open)
        return;

    editor = new DocumentEditorView(this);
    editor->hide();

    QDomDocument doc;
    QString filename = QFileDialog::getOpenFileName(this, QString("Choose Project"), ".", "TRX Project (*.trx)");
    QFile file(filename);
    current_project_directory =  QFileInfo(filename).absoluteDir();
    current_project_name = QFileInfo(filename).baseName();

    qDebug() << "filename: " << filename;

    if (!file.open(QIODevice::ReadOnly | QFile::Text))
        return;

    QString message;

    if (!doc.setContent(&file ,false, &message)) {
        file.close();
        return;
    }

    file.close();

    QDomElement docEl = doc.documentElement();

    QString docName = docEl.toElement().firstChild().nodeValue();
    qDebug() << docEl.toElement().firstChild().nodeValue();

    QDomNode child = docEl.firstChild().nextSibling();
    qDebug() << child.toElement().firstChild().nodeValue();

    qDebug() << QFileInfo(filename).absoluteDir().filePath(child.toElement().firstChild().nodeValue());
    requirements = DocumentView::loadDocument(QFileInfo(filename).absoluteDir().filePath(child.toElement().firstChild().nodeValue()));
    requirements->hide();
    traceability = new TraceabilityView(requirements, this);
    ui->centralWidget->layout()->addWidget(traceability);

    QObject::connect(ui->showReq, SIGNAL(pressed()), this, SLOT(showRequirements()));
    QObject::connect(ui->showEdit, SIGNAL(pressed()), this, SLOT(showEditor()));
    QObject::connect(ui->showTrace, SIGNAL(pressed()), this, SLOT(showTraceability()));
    QObject::connect(editor, SIGNAL(docAdded(DocumentView*)), traceability, SLOT(addModels(DocumentView*)));
    QObject::connect(editor, SIGNAL(removeDocument(int)), traceability, SLOT(removeDocument(int)));

    QHash<DocumentView*, QStandardItemModel*> *traceModelList = traceability->getTraceModelList();
    bool modelset = false;
    child = child.nextSibling();
    while (!child.isNull())
    {
        QDomNode subchild = child.firstChild();
        qDebug() << subchild.toElement().firstChild().nodeValue();
        DocumentView* docview = DocumentView::loadDocument(current_project_directory.dirName() + "/" + subchild.toElement().firstChild().nodeValue());
        subchild = subchild.nextSibling();
        qDebug() << subchild.toElement().firstChild().nodeValue();
        QStandardItemModel *matrix = TraceabilityView::loadMatrix(current_project_directory.dirName() + "/" + subchild.toElement().firstChild().nodeValue()+ "_matrix");

        //traceability->addModels(docview, matrix);
        editor->addLoadedTab(docview);
        matrix->setHorizontalHeaderLabels(docview->getHeader());
        traceModelList->insert(docview, matrix);

        if(!modelset){
            traceability->setMatrixModel(matrix);
            modelset = true;
        }

        child = child.nextSibling();
    }


    traceability->addRowToDocument(requirements, -1);
    traceability->updateReqListModel();
    project_open = true;
    ui->frame_2->hide();
    ui->frame->show();
}
Пример #3
0
 void AbstractInputWidget::mouseDoubleClickEvent(QMouseEvent *)
 {
   showEditor();
 }
Пример #4
0
void Label::focusGained (FocusChangeType cause)
{
    if (editSingleClick && cause == focusChangedByTabKey)
        showEditor();
}
Пример #5
0
void Label::mouseDoubleClick (const MouseEvent& e)
{
    if (editDoubleClick && ! e.mods.isPopupMenu())
        showEditor();
}
Пример #6
0
 void filesDropped (const StringArray& files, int, int)
 {
     setText (getText() + files.joinIntoString (isMultiline ? "\n" : ", "), true);
     showEditor();
 }
Пример #7
0
void K3bDataFileView::slotRenameItem()
{
  if( currentItem() )
    showEditor( (K3bListViewItem*)currentItem(), 0 );
}
Пример #8
0
void PolycodeFrame::handleEvent(Event *event) {
	
	if(event->getDispatcher() == currentFileSelector && event->getEventType() == "UIEvent") {
		PolycodeEditor *editor = editorManager->openEditors[currentFileSelector->getSelectedIndex()];
		editorManager->setCurrentEditor(editor, false);
		showEditor(editor);
	}
	
	if(event->getDispatcher() == editorManager) {	
		currentFileSelector->clearItems();
		
		for(int i=0; i < editorManager->openEditors.size(); i++) {
			OSFileEntry entry(editorManager->openEditors[i]->getFilePath(), OSFileEntry::TYPE_FILE);
			currentFileSelector->addComboItem(entry.name);
			if(editorManager->getCurrentEditor() == editorManager->openEditors[i]) {
				currentFileSelector->setSelectedIndex(i);
			}
			
		}
	}
	
	if(event->getDispatcher() == projectManager) {
		currentProjectTitle->setText(projectManager->getActiveProject()->getProjectName());
	}
	
	if(event->getDispatcher() == aboutOKButton && event->getEventType() == "UIEvent") {
		hideModal();
	}
	
	if(event->getDispatcher() == fileDialog && event->getEventType() == "UIEvent") {
		fileBrowserRoot->removeChild(fileDialog);
		fileDialogBlocker->visible = false;
		fileDialogBlocker->enabled = false;
	}

	if(event->getDispatcher() == CoreServices::getInstance()->getCore()->getInput()) {
		switch(event->getEventCode()) {
			case InputEvent::EVENT_MOUSEUP:
				if(isDragging) {
					if(editorHolder->currentEditor) {
						InputEvent *inputEvent = (InputEvent*) event;						
						Number posX = inputEvent->mousePosition.x;
						Number posY = inputEvent->mousePosition.y;			
						editorHolder->currentEditor->handleDroppedFile(draggedFile, posX, posY);
					}
				}
				isDragging = false;
				dragEntity->visible = false;
			break;
			case InputEvent::EVENT_MOUSEMOVE:
				if(isDragging) {
					dragEntity->setPosition(((InputEvent*)event)->mousePosition);
				}
			break;	
		}
	}

	if(event->getDispatcher() == projectBrowser->treeContainer->getRootNode()) {
		switch (event->getEventCode()) {
			case UITreeEvent::DRAG_START_EVENT:
			{
				UITreeEvent *treeEvent = (UITreeEvent*) event;
				BrowserUserData *data = (BrowserUserData*)treeEvent->selection->getUserData();
				draggedFile = data->fileEntry;
				dragLabel->setText(data->fileEntry.name);
				dragEntity->visible = true;
				isDragging = true;
//				printf("START DRAG: %s\n", data->fileEntry.name.c_str());
			}
			break;
		}
	}

	if(event->getDispatcher() == modalChild) {
		if(event->getEventType() == "UIEvent" && event->getEventCode() == UIEvent::CLOSE_EVENT) {
			willHideModal = true;
		}
	} else {
		if(event->getEventType() == "UIEvent" && event->getEventCode() == UIEvent::CLICK_EVENT && event->getDispatcher() == newProjectButton) {

			newProjectWindow->ResetForm();
			showModal(newProjectWindow);

		}	
		
	if(event->getEventType() == "UIEvent" && event->getEventCode() == UIEvent::CLICK_EVENT && event->getDispatcher() == examplesButton) {

			newProjectWindow->ResetForm();
			showModal(exampleBrowserWindow);

		}			
		
	}
}