Ignore:
Timestamp:
03/23/11 20:28:55 (9 years ago)
Author:
aivar
Message:

Moved loading an Excitation and setting up the ExcitationPanel to SLIMProcessor.

Location:
trunk/projects/slim-plugin/src/main/java/loci/slim/ui
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/projects/slim-plugin/src/main/java/loci/slim/ui/ExcitationGraph.java

    r7668 r7671  
    125125 
    126126        // create the chart 
    127         JFreeChart chart = createChart(start, stop, bins, timeInc, values); 
     127        JFreeChart chart = createChart(bins, timeInc, values); 
    128128        ChartPanel chartPanel = new ChartPanel(chart, true, true, true, false, true); 
    129129        chartPanel.setDomainZoomable(false); 
     
    190190     * Creates the chart 
    191191     * 
    192      * @param start time bin 
    193      * @param stop time bin 
    194192     * @param bins number of bins 
    195193     * @param timeInc time increment per bin 
     
    197195     * @return the chart 
    198196     */ 
    199     JFreeChart createChart(int start, int stop, int bins, double timeInc, float[] values) { 
     197    JFreeChart createChart(int bins, double timeInc, float[] values) { 
    200198 
    201199        // create chart data 
    202         createDataset(start, stop, bins, timeInc, values); 
     200        createDataset(bins, timeInc, values); 
    203201 
    204202        // make a horizontal axis 
     
    235233     * Creates the data set for the chart 
    236234     * 
    237      * @param start time bin 
    238      * @param stop time bin 
    239235     * @param bins number of time bins 
    240236     * @param timeInc time increment per time bin 
    241237     * @param data from the fit 
    242238     */ 
    243     private void createDataset(int start, int stop, int bins, double timeInc, float[] values) { 
     239    private void createDataset(int bins, double timeInc, float[] values) { 
    244240        XYSeries series = new XYSeries("Data"); 
    245241        double yData, yFitted; 
  • trunk/projects/slim-plugin/src/main/java/loci/slim/ui/IUserInterfacePanelListener.java

    r7668 r7671  
    3636 
    3737/** 
    38  * TODO 
    39  * 
    40  * <dl><dt><b>Source code:</b></dt> 
    41  * <dd><a href="http://dev.loci.wisc.edu/trac/software/browser/trunk/projects/slim-plugin/src/main/java/loci/slim/ui/IUserInterfacePanelListener.java">Trac</a>, 
    42  * <a href="http://dev.loci.wisc.edu/svn/software/trunk/projects/slim-plugin/src/main/java/loci/slim/ui/IUserInterfacePanelListener.java">SVN</a></dd></dl> 
     38 * Listens for user input that triggers changes external to the ui panel. 
    4339 * 
    4440 * @author Aivar Grislis grislis at wisc.edu 
     
    6056     */ 
    6157    public void quit(); 
     58 
     59    /** 
     60     * Loads an excitation curve from file. 
     61     * 
     62     * @param fileName 
     63     * @return whether successful 
     64     */ 
     65    public boolean loadExcitation(String fileName); 
     66 
     67    /** 
     68     * Creates an excitation curve from currrent X, Y and saves to file. 
     69     * 
     70     * @param fileName 
     71     * @return whether successful 
     72     */ 
     73    public boolean createExcitation(String fileName); 
     74 
     75    /** 
     76     * Cancels the current excitation curve, if any. 
     77     * 
     78     */ 
     79    public void cancelExcitation(); 
    6280} 
  • trunk/projects/slim-plugin/src/main/java/loci/slim/ui/UserInterfacePanel.java

    r7668 r7671  
    6464import ij.gui.GenericDialog; 
    6565 
    66 import loci.slim.Excitation; 
    67 import loci.slim.ExcitationFileHandler; 
    6866import loci.slim.ui.IUserInterfacePanel.FitAlgorithm; 
    6967import loci.slim.ui.IUserInterfacePanel.FitFunction; 
    7068import loci.slim.ui.IUserInterfacePanel.FitRegion; 
    71 import loci.slim.analysis.SLIMAnalysis; 
    72 import loci.slim.binning.SLIMBinning; 
    7369 
    7470/** 
    75  * TODO 
    76  * 
    77  * <dl><dt><b>Source code:</b></dt> 
    78  * <dd><a href="http://dev.loci.wisc.edu/trac/software/browser/trunk/projects/slim-plugin/src/main/java/loci/slim/ui/UserInterfacePanel.java">Trac</a>, 
    79  * <a href="http://dev.loci.wisc.edu/svn/software/trunk/projects/slim-plugin/src/main/java/loci/slim/ui/UserInterfacePanel.java">SVN</a></dd></dl> 
     71 * Main user interface panel for the fit. 
    8072 * 
    8173 * @author Aivar Grislis grislis at wisc.edu 
     
    127119     
    128120    public IUserInterfacePanelListener m_listener; 
    129  
    130     private ExcitationPanel m_excitationPanel; 
    131121 
    132122    int m_fittedParameterCount = 0; 
     
    381371    } 
    382372 
    383     float[] m_values = null; 
    384  
    385373    /* 
    386374     * Creates a panel that has some settings that control the fit. 
     
    434422            new ActionListener() { 
    435423                public void actionPerformed(ActionEvent e) { 
    436                     Excitation excitation = null; 
    437  
    438424                    String selectedItem = (String) m_excitationComboBox.getSelectedItem(); 
    439                     System.out.println("selected " + selectedItem); 
     425                    boolean isExcitationLoaded = false; 
    440426                    if (EXCITATION_NONE.equals(selectedItem)) { 
    441                         if (null != m_excitationPanel) { 
    442                             m_excitationPanel.quit(); 
    443                             m_excitationPanel = null; 
     427                        if (null != m_listener) { 
     428                            m_listener.cancelExcitation(); 
    444429                        } 
    445430                    } 
    446431                    else if (EXCITATION_FILE.equals(selectedItem)) { 
    447432                        String fileName = getFileName("Load Excitation File", ""); 
    448                         if (null != fileName) { 
    449                             excitation = ExcitationFileHandler.getInstance().loadExcitation(fileName); 
    450                         } 
    451                         if (null != excitation) { 
    452                             m_values = excitation.getValues(); 
     433                        if (null != fileName && null != m_listener) { 
     434                            isExcitationLoaded = m_listener.loadExcitation(fileName); 
    453435                        } 
    454436                    } 
    455437                    else if (EXCITATION_CREATE.equals(selectedItem)) { 
    456438                        String fileName = getFileName("Save Excitation File", ""); 
    457                         if (null != fileName) { 
    458                             if (null != m_values) { 
    459                                 excitation = ExcitationFileHandler.getInstance().createExcitation(fileName, m_values); 
    460                             } 
     439                        if (null != fileName && null != m_listener) { 
     440                            isExcitationLoaded = m_listener.createExcitation(fileName); 
    461441                        } 
    462442                    } 
    463443 
    464                     if (null == excitation) { 
    465                         m_excitationComboBox.setSelectedItem(EXCITATION_NONE); 
     444                    if (isExcitationLoaded) { 
     445                        m_excitationComboBox.setSelectedItem(EXCITATION_FILE); 
    466446                    } 
    467447                    else { 
    468                         m_excitationComboBox.setSelectedItem(EXCITATION_FILE); 
    469                         m_excitationPanel = new ExcitationPanel(excitation); 
     448                        m_excitationComboBox.setSelectedItem(EXCITATION_NONE); 
    470449                    } 
    471450                } 
Note: See TracChangeset for help on using the changeset viewer.