Search in sources :

Example 1 with MZminePreferences

use of net.sf.mzmine.desktop.preferences.MZminePreferences in project mzmine2 by mzmine.

the class MainMenu method actionPerformed.

/**
 * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
 */
@Override
public void actionPerformed(ActionEvent e) {
    Object src = e.getSource();
    MZmineRunnableModule module = moduleMenuItems.get(src);
    if (module != null) {
        ParameterSet moduleParameters = MZmineCore.getConfiguration().getModuleParameters(module.getClass());
        RawDataFile[] selectedFiles = MZmineCore.getDesktop().getSelectedDataFiles();
        if (selectedFiles.length > 0) {
            for (Parameter<?> p : moduleParameters.getParameters()) {
                if (p instanceof RawDataFilesParameter) {
                    RawDataFilesParameter rdp = (RawDataFilesParameter) p;
                    rdp.setValue(RawDataFilesSelectionType.GUI_SELECTED_FILES);
                }
            }
        }
        PeakList[] selectedPeakLists = MZmineCore.getDesktop().getSelectedPeakLists();
        if (selectedPeakLists.length > 0) {
            for (Parameter<?> p : moduleParameters.getParameters()) {
                if (p instanceof PeakListsParameter) {
                    PeakListsParameter plp = (PeakListsParameter) p;
                    plp.setValue(PeakListsSelectionType.GUI_SELECTED_PEAKLISTS);
                }
            }
        }
        logger.finest("Setting parameters for module " + module.getName());
        ExitCode exitCode = moduleParameters.showSetupDialog(MZmineCore.getDesktop().getMainWindow(), true);
        if (exitCode == ExitCode.OK) {
            ParameterSet parametersCopy = moduleParameters.cloneParameterSet();
            logger.finest("Starting module " + module.getName() + " with parameters " + parametersCopy);
            ArrayList<Task> tasks = new ArrayList<Task>();
            MZmineProject project = MZmineCore.getProjectManager().getCurrentProject();
            module.runModule(project, parametersCopy, tasks);
            MZmineCore.getTaskController().addTasks(tasks.toArray(new Task[0]));
        }
        return;
    }
    if (src == projectExit) {
        MZmineCore.getDesktop().exitMZmine();
    }
    if (src == projectSaveParameters) {
        JFileChooser chooser = new JFileChooser();
        int returnVal = chooser.showSaveDialog(MZmineCore.getDesktop().getMainWindow());
        if (returnVal == JFileChooser.APPROVE_OPTION) {
            File configFile = chooser.getSelectedFile();
            try {
                MZmineCore.getConfiguration().saveConfiguration(configFile);
            } catch (Exception ex) {
                MZmineCore.getDesktop().displayException(MZmineCore.getDesktop().getMainWindow(), ex);
            }
        }
    }
    if (src == projectLoadParameters) {
        JFileChooser chooser = new JFileChooser();
        int returnVal = chooser.showOpenDialog(MZmineCore.getDesktop().getMainWindow());
        if (returnVal == JFileChooser.APPROVE_OPTION) {
            File configFile = chooser.getSelectedFile();
            try {
                MZmineCore.getConfiguration().loadConfiguration(configFile);
            } catch (Exception ex) {
                MZmineCore.getDesktop().displayException(MZmineCore.getDesktop().getMainWindow(), ex);
            }
        }
    }
    if (src == projectSampleParameters) {
        ProjectParametersSetupDialog dialog = new ProjectParametersSetupDialog();
        dialog.setVisible(true);
    }
    if (src == projectPreferences) {
        MZminePreferences preferences = MZmineCore.getConfiguration().getPreferences();
        preferences.showSetupDialog(MZmineCore.getDesktop().getMainWindow(), true);
    }
    if (src == showAbout) {
        MainWindow mainWindow = (MainWindow) MZmineCore.getDesktop();
        mainWindow.showAboutDialog();
    }
    if (src == checkUpdate) {
        // Check for updated version
        NewVersionCheck NVC = new NewVersionCheck(CheckType.MENU);
        new Thread(NVC).start();
    }
}
Also used : ParameterSet(net.sf.mzmine.parameters.ParameterSet) ProjectOpeningTask(net.sf.mzmine.modules.projectmethods.projectload.ProjectOpeningTask) Task(net.sf.mzmine.taskcontrol.Task) MZmineRunnableModule(net.sf.mzmine.modules.MZmineRunnableModule) ProjectParametersSetupDialog(net.sf.mzmine.project.parameterssetup.ProjectParametersSetupDialog) ExitCode(net.sf.mzmine.util.ExitCode) ArrayList(java.util.ArrayList) NewVersionCheck(net.sf.mzmine.main.NewVersionCheck) MZminePreferences(net.sf.mzmine.desktop.preferences.MZminePreferences) JFileChooser(javax.swing.JFileChooser) RawDataFile(net.sf.mzmine.datamodel.RawDataFile) MZmineProject(net.sf.mzmine.datamodel.MZmineProject) PeakListsParameter(net.sf.mzmine.parameters.parametertypes.selectors.PeakListsParameter) PeakList(net.sf.mzmine.datamodel.PeakList) RawDataFile(net.sf.mzmine.datamodel.RawDataFile) File(java.io.File) RawDataFilesParameter(net.sf.mzmine.parameters.parametertypes.selectors.RawDataFilesParameter)

Aggregations

File (java.io.File)1 ArrayList (java.util.ArrayList)1 JFileChooser (javax.swing.JFileChooser)1 MZmineProject (net.sf.mzmine.datamodel.MZmineProject)1 PeakList (net.sf.mzmine.datamodel.PeakList)1 RawDataFile (net.sf.mzmine.datamodel.RawDataFile)1 MZminePreferences (net.sf.mzmine.desktop.preferences.MZminePreferences)1 NewVersionCheck (net.sf.mzmine.main.NewVersionCheck)1 MZmineRunnableModule (net.sf.mzmine.modules.MZmineRunnableModule)1 ProjectOpeningTask (net.sf.mzmine.modules.projectmethods.projectload.ProjectOpeningTask)1 ParameterSet (net.sf.mzmine.parameters.ParameterSet)1 PeakListsParameter (net.sf.mzmine.parameters.parametertypes.selectors.PeakListsParameter)1 RawDataFilesParameter (net.sf.mzmine.parameters.parametertypes.selectors.RawDataFilesParameter)1 ProjectParametersSetupDialog (net.sf.mzmine.project.parameterssetup.ProjectParametersSetupDialog)1 Task (net.sf.mzmine.taskcontrol.Task)1 ExitCode (net.sf.mzmine.util.ExitCode)1