use of net.sf.mzmine.framework.listener.DelayedDocumentListener in project mzmine2 by mzmine.
the class MSMSLibrarySubmissionWindow method addListener.
private void addListener() {
// listen for changes in masslist selection and preprocessing
MassListComponent mc = getMassListComponent();
mc.addDocumentListener(new DelayedDocumentListener(e -> updateSettingsOnAllSelectors()));
DoubleComponent nc = getNoiseLevelComponent();
nc.addDocumentListener(new DelayedDocumentListener(e -> updateSettingsOnAllSelectors()));
IntegerComponent minc = getMinSignalComponent();
minc.addDocumentListener(new DelayedDocumentListener(e -> updateSettingsOnAllSelectors()));
ComboComponent<ScanSortMode> sortc = getComboSortMode();
sortc.addItemListener(e -> updateSortModeOnAllSelectors());
IntegerComponent mslevel = getMSLevelComponent();
mslevel.addDocumentListener(new DelayedDocumentListener(e -> {
updateParameterSetFromComponents();
Integer level = paramMeta.getParameter(LibraryMetaDataParameters.MS_LEVEL).getValue();
setFragmentScan(level != null && level > 1);
}));
}
use of net.sf.mzmine.framework.listener.DelayedDocumentListener in project mzmine2 by mzmine.
the class KovatsIndexExtractionDialog method addDialogComponents.
@Override
protected void addDialogComponents() {
super.addDialogComponents();
mainPanel.removeAll();
mainPanel.getParent().remove(mainPanel);
ddlKovats = new DelayedDocumentListener(e -> updateKovatsList());
DelayedDocumentListener ddlUpdateChart = new DelayedDocumentListener(e -> updateChart());
newMainPanel = new JPanel(new MigLayout("fill", "[right][grow,fill]", ""));
getContentPane().add(newMainPanel, BorderLayout.SOUTH);
JPanel pnCenter = new JPanel(new BorderLayout());
getContentPane().add(pnCenter, BorderLayout.CENTER);
pnChart = new JPanel(new BorderLayout());
pnCenter.add(pnChart, BorderLayout.CENTER);
Box sizedummy = new Box(BoxLayout.X_AXIS);
sizedummy.setMinimumSize(new Dimension(200, 450));
sizedummy.setPreferredSize(new Dimension(200, 450));
pnChart.add(sizedummy, BorderLayout.CENTER);
// left: Kovats: min max and list
JPanel west = new JPanel(new BorderLayout());
newMainPanel.add(west);
// add min max
JPanel pnKovatsParam = new JPanel(new FlowLayout(FlowLayout.CENTER, 5, 5));
west.add(pnKovatsParam, BorderLayout.NORTH);
minc = (IntegerComponent) getComponentForParameter(KovatsIndexExtractionParameters.minKovats);
maxc = (IntegerComponent) getComponentForParameter(KovatsIndexExtractionParameters.maxKovats);
minc.addDocumentListener(ddlKovats);
maxc.addDocumentListener(ddlKovats);
pnKovatsParam.add(new JLabel("Min carbon:"));
pnKovatsParam.add(minc);
pnKovatsParam.add(new JLabel("Max carbon:"));
pnKovatsParam.add(maxc);
// kovats list
JPanel pnKovatsSelect = new JPanel(new BorderLayout());
west.add(pnKovatsSelect, BorderLayout.CENTER);
comboKovats = (MultiChoiceComponent) getComponentForParameter(KovatsIndexExtractionParameters.kovats);
comboKovats.addValueChangeListener(() -> handleKovatsSelectionChange());
pnKovatsSelect.add(comboKovats, BorderLayout.CENTER);
// center: Chart and parameters
JPanel center = new JPanel(new BorderLayout());
newMainPanel.add(center);
// all parameters on peak pick panel
JPanel pnSouth = new JPanel(new BorderLayout());
center.add(pnSouth, BorderLayout.SOUTH);
JPanel pnPeakPick = new JPanel(new MigLayout("", "[right][]", ""));
pnSouth.add(pnPeakPick, BorderLayout.CENTER);
valuesComponent = (StringComponent) getComponentForParameter(KovatsIndexExtractionParameters.pickedKovatsValues);
MZRangeComponent mzc = (MZRangeComponent) getComponentForParameter(KovatsIndexExtractionParameters.mzRange);
RTRangeComponent rtc = (RTRangeComponent) getComponentForParameter(KovatsIndexExtractionParameters.rtRange);
DoubleComponent noisec = (DoubleComponent) getComponentForParameter(KovatsIndexExtractionParameters.noiseLevel);
DoubleComponent edgeRatioC = (DoubleComponent) getComponentForParameter(KovatsIndexExtractionParameters.ratioTopEdge);
valuesComponent.addDocumentListener(new DelayedDocumentListener(e -> kovatsValuesChanged()));
valuesComponent.setLayout(new GridLayout(1, 1));
pnCenter.add(valuesComponent, BorderLayout.SOUTH);
JPanel pnButtonFlow = new JPanel();
pnPeakPick.add(pnButtonFlow, "cell 0 0 2 1");
JButton btnUpdateChart = new JButton("Update chart");
btnUpdateChart.addActionListener(e -> updateChart());
pnButtonFlow.add(btnUpdateChart);
JButton btnPickRT = new JButton("Pick peaks");
btnPickRT.addActionListener(e -> pickRetentionTimes());
pnButtonFlow.add(btnPickRT);
JButton btnSaveFile = new JButton("Save to file");
btnSaveFile.setToolTipText("Save Kovats index file");
btnSaveFile.addActionListener(e -> saveToFile());
pnButtonFlow.add(btnSaveFile);
JButton btnLoad = new JButton("Load");
btnLoad.setToolTipText("Load Kovats index file");
btnLoad.addActionListener(e -> loadFile());
pnButtonFlow.add(btnLoad);
JButton btnCombineFiles = new JButton("Combine files");
btnCombineFiles.setToolTipText("Select multiple Kovats index files to be combined into one");
btnCombineFiles.addActionListener(e -> combineFiles());
pnButtonFlow.add(btnCombineFiles);
// add combo for raw data file
dataFiles = MZmineCore.getProjectManager().getCurrentProject().getDataFiles();
comboDataFileName = new JComboBox<RawDataFile>(dataFiles);
comboDataFileName2 = new JComboBox<RawDataFile>(dataFiles);
cbSecondRaw = new JCheckBox();
initRawDataFileSelection();
pnPeakPick.add(new JLabel("Raw data file(s)"), "cell 0 1");
pnPeakPick.add(comboDataFileName);
cbSecondRaw.addItemListener(e -> useSecondDataFile(cbSecondRaw.isSelected()));
pnPeakPick.add(cbSecondRaw, "cell 0 2");
pnPeakPick.add(comboDataFileName2);
// direct alkane selection < CxH2x+1 >
JPanel pnAlkaneSelect = new JPanel();
Dimension dim = new Dimension(SIZE, SIZE);
JButton btnPrevAlkane = new JButton(iconPrev);
btnPrevAlkane.addActionListener(e -> setMzRangeByAlkane(-1));
btnPrevAlkane.setPreferredSize(dim);
btnPrevAlkane.setMaximumSize(dim);
JButton btnNextAlkane = new JButton(iconNext);
btnNextAlkane.addActionListener(e -> setMzRangeByAlkane(1));
btnNextAlkane.setPreferredSize(dim);
btnNextAlkane.setMaximumSize(dim);
lbCurrentAlkane = new JLabel("");
cbCurrentAlkaneSubH = new JCheckBox("-H");
cbCurrentAlkaneSubH.setSelected(true);
cbCurrentAlkaneSubH.addItemListener(e -> setMzRangeByAlkane(0));
pnAlkaneSelect.add(btnPrevAlkane);
pnAlkaneSelect.add(lbCurrentAlkane);
pnAlkaneSelect.add(btnNextAlkane);
pnAlkaneSelect.add(cbCurrentAlkaneSubH);
pnPeakPick.add(pnAlkaneSelect, "cell 1 3");
pnPeakPick.add(new JLabel("m/z range"), "cell 0 4");
pnPeakPick.add(mzc);
pnPeakPick.add(new JLabel(KovatsIndexExtractionParameters.rtRange.getName()), "cell 0 5");
pnPeakPick.add(rtc);
pnPeakPick.add(new JLabel(KovatsIndexExtractionParameters.noiseLevel.getName()), "cell 0 6");
pnPeakPick.add(noisec);
pnPeakPick.add(new JLabel(KovatsIndexExtractionParameters.ratioTopEdge.getName()), "cell 0 7");
pnPeakPick.add(edgeRatioC);
// add listeners
comboDataFileName.addItemListener(e -> updateChart());
mzc.addDocumentListener(ddlUpdateChart);
rtc.addDocumentListener(ddlUpdateChart);
// show
revalidate();
updateMinimumSize();
pack();
updateChart();
}
use of net.sf.mzmine.framework.listener.DelayedDocumentListener in project mzmine2 by mzmine.
the class HistogramPanel method addListener.
private void addListener() {
ddlRepaint = new DelayedDocumentListener(e -> repaint());
// ranges
DelayedDocumentListener ddlx = new DelayedDocumentListener(e -> applyXRange());
DelayedDocumentListener ddly = new DelayedDocumentListener(e -> applyYRange());
txtRangeX.getDocument().addDocumentListener(ddlx);
txtRangeXEnd.getDocument().addDocumentListener(ddlx);
txtRangeY.getDocument().addDocumentListener(ddly);
txtRangeYEnd.getDocument().addDocumentListener(ddly);
cbThirdSQRT.addItemListener(e -> updateHistograms());
cbExcludeSmallerNoise.addItemListener(e -> updateHistograms());
txtBinWidth.getDocument().addDocumentListener(new DelayedDocumentListener(e -> updateHistograms()));
txtBinShift.getDocument().addDocumentListener(new DelayedDocumentListener(e -> updateHistograms()));
// add gaussian?
cbGaussianFit.addItemListener(e -> updateGaussian());
}
use of net.sf.mzmine.framework.listener.DelayedDocumentListener in project mzmine2 by mzmine.
the class JFontSpecs method addListener.
public void addListener(final Consumer<FontSpecs> f) {
ColorChangedListener ccl = e -> f.accept(getFontSpecs());
ItemListener il = e -> f.accept(getFontSpecs());
dl = new DelayedDocumentListener() {
@Override
public void documentChanged(DocumentEvent e) {
f.accept(getFontSpecs());
}
};
fontBox.addItemListener(il);
styleBox.addItemListener(il);
txtSize.getDocument().addDocumentListener(dl);
color.addColorChangedListener(ccl);
}
use of net.sf.mzmine.framework.listener.DelayedDocumentListener in project mzmine2 by mzmine.
the class LocalSpectralDBSearchParameters method showSetupDialog.
@Override
public ExitCode showSetupDialog(Window parent, boolean valueCheckRequired) {
if ((getParameters() == null) || (getParameters().length == 0))
return ExitCode.OK;
ParameterSetupDialog dialog = new ParameterSetupDialog(parent, valueCheckRequired, this);
int level = getParameter(msLevel).getValue() == null ? 2 : getParameter(msLevel).getValue();
IntegerComponent msLevelComp = (IntegerComponent) dialog.getComponentForParameter(msLevel);
JComponent mzTolPrecursor = dialog.getComponentForParameter(mzTolerancePrecursor);
mzTolPrecursor.setEnabled(level > 1);
msLevelComp.addDocumentListener(new DelayedDocumentListener(e -> {
try {
int level2 = Integer.parseInt(msLevelComp.getText());
mzTolPrecursor.setEnabled(level2 > 1);
} catch (Exception ex) {
// do nothing user might be still typing
mzTolPrecursor.setEnabled(false);
}
}));
dialog.setVisible(true);
return dialog.getExitCode();
}
Aggregations