Пример #1
0
void ExternalToolDialog::browse()
{
	ui_.output->clear();

	QString tool = ui_.tool_name->text();

	if (tool == "BedInfo")
	{
		QString filename = getFileName("Select BED file", "BED files (*.bed)");
		if (filename=="") return;
		startTool("-in " + filename);
	}
	else if (tool == "FastaInfo")
	{
		QString filename = getFileName("Select FastA file", "FastA files (*.fa *.fasta)");
		if (filename=="") return;
		startTool("-in " + filename);
	}
	else if (tool == "SampleGender")
	{
		QString filename = getFileName("Select BAM file", "BAM files (*.bam)");
		if (filename=="") return;
		startTool("-in " + filename);
	}
	else if (tool == "SampleCorrelation")
	{
		QString header = "Select variant list";
		QString filter = "GSvar files (*.GSvar)";
		if (args_!="")
		{
			header = "Select BAM file";
			filter = "BAM files (*.bam)";
		}
		QString filename1 = getFileName(header , filter);
		if (filename1=="") return;
		QString filename2 = getFileName(header , filter);
		if (filename2=="") return;
		startTool("-in1 " + filename1 + " -in2 " + filename2);
	}
	else if (tool == "SampleDiff")
	{
		QString filename1 = getFileName("Select variant list", "GSvar files (*.GSvar)");
		if (filename1=="") return;
		QString filename2 = getFileName("Select variant list", "GSvar files (*.GSvar)");
		if (filename2=="") return;
		startTool("-in1 " + filename1 + " -in2 " + filename2);
	}
	else
	{
		THROW(ProgrammingException, "Unknown tool '" + tool + "' requested in ExternalToolDialog!");
	}
}
Пример #2
0
void handle_tool(const ComType com, const HandleTool *data) {
	Tool *tool = resolveTool(data->toolId);
	
	if(tool == 0) {
		//TODO: Add exceptionhandling.
		return;
	}
	
	if(data->start) {
		startTool(tool);
	} else {
		stopTool(tool);
	}
}
bool ClangStaticAnalyzerPlugin::initialize(const QStringList &arguments, QString *errorString)
{
    // Register objects in the plugin manager's object pool
    // Load settings
    // Add actions to menus
    // Connect to other plugins' signals
    // In the initialize method, a plugin can be sure that the plugins it
    // depends on have initialized their members.

    Q_UNUSED(arguments);
    Q_UNUSED(errorString);

    auto panelFactory = new ProjectExplorer::ProjectPanelFactory();
    panelFactory->setPriority(100);
    panelFactory->setDisplayName(tr("Clang Static Analyzer Settings"));
    panelFactory->setSimpleCreateWidgetFunction<ProjectSettingsWidget>(QIcon());
    ProjectExplorer::ProjectPanelFactory::registerFactory(panelFactory);

    auto tool = m_analyzerTool = new ClangStaticAnalyzerTool(this);
    addAutoReleasedObject(new ClangStaticAnalyzerRunControlFactory(m_analyzerTool));
    addAutoReleasedObject(new ClangStaticAnalyzerOptionsPage);

    AnalyzerManager::registerToolbar(ClangStaticAnalyzerPerspectiveId, tool->createWidgets());

    auto runControlCreator = [tool](ProjectExplorer::RunConfiguration *runConfiguration,
                                    Core::Id runMode) {
        return tool->createRunControl(runConfiguration, runMode);
    };

    const QString toolTip = tr("Clang Static Analyzer uses the analyzer from the clang project "
                               "to find bugs.");

    AnalyzerManager::registerPerspective(ClangStaticAnalyzerPerspectiveId, {
        { ClangStaticAnalyzerDockId, Core::Id(), Perspective::SplitVertical }
    });

    ActionDescription desc;
    desc.setText(tr("Clang Static Analyzer"));
    desc.setToolTip(toolTip);
    desc.setRunMode(Constants::CLANGSTATICANALYZER_RUN_MODE);
    desc.setPerspectiveId(ClangStaticAnalyzerPerspectiveId);
    desc.setRunControlCreator(runControlCreator);
    desc.setCustomToolStarter([tool](ProjectExplorer::RunConfiguration *rc) {
        tool->startTool(rc);
    });
    desc.setMenuGroup(Analyzer::Constants::G_ANALYZER_TOOLS);
    AnalyzerManager::registerAction(ClangStaticAnalyzerActionId, desc);

    return true;
}
void runningHandleActors() {
    Treadmill *treadmills[4] = {getFirstTreadmill(), getSecondTreadmill(), getThirdTreadmill(), getFourthTreadmill()};
    Tool *tools[2] = {getFirstTool(), getSecondTool()};
    Pusher *pushers[2] = {getFirstPusher(), getSecondPusher()};

    //first stage
    if(stageOne.isRunning)
    {
        startTreadmill(treadmills[0]);
        short i = 0;
        for(i; i < 3; i++)
        {
            if(stageOne.itemPositions[i] > -1)
            {
                stageOne.itemPositions[i] += totalSystem.timeDiffSinceLastCall;
            }
        }
    }
    else
    {
        stopTreadmill(treadmills[0]);
    }

    //second stage
    switch(stageTwo.pusherDir)
    {
        case 0: runBackwardsPusher(pushers[0]); break;
        case 1: stopPusher(pushers[0]); break;
        case 2: runForwardPusher(pushers[0]); break;
    }

    //third stage
    if(stageThree.isTMRunning)
    {
        startTreadmill(treadmills[1]);
        short i = 0;
        for(i; i < 3; i++)
        {
            if(stageThree.itemPositions[i] > -1)
            {
                stageThree.itemPositions[i] += totalSystem.timeDiffSinceLastCall;
            }
        }
        if(stageThree.isToolTime)
        {
            stageThree.tMRuntimeLeftForCentering -= totalSystem.timeDiffSinceLastCall;
        }
    }
    else
    {
        stopTreadmill(treadmills[1]);
    }

    if(stageThree.isToolRunning)
    {
        startTool(tools[0]);
        stageThree.toolRuntimeLeft -= totalSystem.timeDiffSinceLastCall;
    }
    else
    {
        stopTool(tools[0]);
    }

    //fourth stage
    if(stageFour.isTMRunning)
    {
        startTreadmill(treadmills[2]);
        short i = 0;
        for(i; i < 3; i++)
        {
            if(stageFour.itemPositions[i] > -1)
            {
                stageFour.itemPositions[i] += totalSystem.timeDiffSinceLastCall;
            }
        }
        if(stageFour.isToolTime)
        {
            stageFour.tMRuntimeLeftForCentering -= totalSystem.timeDiffSinceLastCall;
        }
    }
    else
    {
        stopTreadmill(treadmills[2]);
    }

    if(stageFour.isToolRunning)
    {
        startTool(tools[1]);
        stageFour.toolRuntimeLeft -= totalSystem.timeDiffSinceLastCall;
    }
    else
    {
        stopTool(tools[1]);
    }

    //fifth stage
    switch(stageFive.pusherDir)
    {
        case 0: runBackwardsPusher(pushers[1]); break;
        case 1: stopPusher(pushers[1]); break;
        case 2: runForwardPusher(pushers[1]); break;
    }

    //sixth stage
    if(stageSix.isRunning)
    {
        startTreadmill(getFourthTreadmill());
    }
    else
    {
        stopTreadmill(getFourthTreadmill());
    }
}
Пример #5
0
void QgsGrassEdit::editAttributes( void )
{
  startTool( QgsGrassEdit::EDIT_ATTRIBUTES );
}
Пример #6
0
void QgsGrassEdit::editCats( void )
{
  startTool( QgsGrassEdit::EDIT_CATS );
}
Пример #7
0
void QgsGrassEdit::deleteLine( void )
{
  startTool( QgsGrassEdit::DELETE_LINE );
}
Пример #8
0
void QgsGrassEdit::moveLine( void )
{
  startTool( QgsGrassEdit::MOVE_LINE );
}
Пример #9
0
void QgsGrassEdit::splitLine( void )
{
  startTool( QgsGrassEdit::SPLIT_LINE );
}
Пример #10
0
void QgsGrassEdit::deleteVertex( void )
{
  startTool( QgsGrassEdit::DELETE_VERTEX );
}
Пример #11
0
void QgsGrassEdit::addVertex( void )
{
  startTool( QgsGrassEdit::ADD_VERTEX );
}
Пример #12
0
void QgsGrassEdit::moveVertex( void )
{
  startTool( QgsGrassEdit::MOVE_VERTEX );
}
Пример #13
0
void QgsGrassEdit::newCentroid( void )
{
  startTool( QgsGrassEdit::NEW_CENTROID );
}
Пример #14
0
void QgsGrassEdit::newBoundary( void )
{
  QgsDebugMsg( "entered." );
  startTool( QgsGrassEdit::NEW_BOUNDARY );
}
Пример #15
0
void QgsGrassEdit::newLine( void )
{
  QgsDebugMsg( "entered." );
  startTool( QgsGrassEdit::NEW_LINE );
}
Пример #16
0
void QgsGrassEdit::newPoint( void )
{
  startTool( QgsGrassEdit::NEW_POINT );
}