Changeset 7116


Ignore:
Timestamp:
10/22/10 22:59:21 (9 years ago)
Author:
aivar
Message:

Tidied up, made all the listeners anonymous inner classes. Added setters and get/set chiSquare.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/maven/projects/slim-plugin/src/main/java/loci/slim/ui/UserInterfacePanel.java

    r7111 r7116  
    7474 */ 
    7575 
    76 public class UserInterfacePanel implements IUserInterfacePanel, ItemListener { 
     76public class UserInterfacePanel implements IUserInterfacePanel { 
    7777    // Unicode special characters 
    7878    private static final Character CHI    = '\u03c7'; 
     
    175175    JCheckBox m_startParam3; 
    176176 
     177    JButton m_quitButton; 
    177178    JButton m_fitButton; 
    178179 
     
    214215        buttonPanel.setBorder(BorderFactory.createEmptyBorder(0, 10, 10, 10)); 
    215216        buttonPanel.add(Box.createHorizontalGlue()); 
    216         //buttonPanel.add(new JButton("Panic Button")); 
    217         //buttonPanel.add(Box.createRigidArea(new Dimension(10, 0))); 
     217        m_quitButton = new JButton("Quit"); 
     218        m_quitButton.addActionListener( 
     219            new ActionListener() { 
     220                public void actionPerformed(ActionEvent e) { 
     221                    m_listener.quit(); 
     222                } 
     223            } 
     224        ); 
     225        buttonPanel.add(m_quitButton); 
     226        buttonPanel.add(Box.createRigidArea(new Dimension(10, 0))); 
    218227        m_fitButton = new JButton("Do Fit"); 
    219         m_fitButton.addActionListener(new FitButtonListener()); 
     228        m_fitButton.addActionListener( 
     229            new ActionListener() { 
     230                public void actionPerformed(ActionEvent e) { 
     231                    String text = (String)e.getActionCommand(); 
     232                    if (text.equals("Do Fit")){ 
     233                        setFitButtonState(false); 
     234                        if (null != m_listener) { 
     235                            m_listener.doFit(); 
     236                        } 
     237                    } 
     238                    else{ 
     239                        setFitButtonState(true); 
     240                        if (null != m_listener) { 
     241                            m_listener.cancelFit(); 
     242                        } 
     243                    } 
     244                } 
     245            } 
     246        ); 
    220247        buttonPanel.add(m_fitButton); 
    221248 
     
    239266 
    240267        }); 
    241         m_frame.setVisible(true); 
    242268    } 
    243269 
     
    275301        fitPanel.add(functionLabel); 
    276302        m_functionComboBox = new JComboBox(FUNCTION_ITEMS); 
    277         m_functionComboBox.addItemListener(this); 
     303        m_functionComboBox.addItemListener( 
     304            new ItemListener() { 
     305                public void itemStateChanged(ItemEvent e) { 
     306                    CardLayout cl = (CardLayout)(m_cardPanel.getLayout()); 
     307                    cl.show(m_cardPanel, (String)e.getItem()); 
     308                } 
     309            } 
     310        ); 
    278311        fitPanel.add(m_functionComboBox); 
    279312 
     
    390423 
    391424        m_startParam1 = new JCheckBox("Use as starting parameters for fit"); 
     425     m_startParam1.setSelected(true); 
     426     m_startParam1.setEnabled(false); 
     427 
    392428        panel.add("South", m_startParam1); 
    393429        return panel; 
     
    475511 
    476512        m_startParam2 = new JCheckBox("Use as starting parameters for fit"); 
     513      m_startParam2.setSelected(true); 
     514      m_startParam2.setEnabled(false); 
    477515        panel.add("South", m_startParam2); 
    478516        return panel; 
     
    583621 
    584622        m_startParam3 = new JCheckBox("Use as starting parameters for fit"); 
     623      m_startParam2.setSelected(true); 
     624      m_startParam2.setEnabled(false); 
    585625        panel.add("South", m_startParam3); 
    586626        return panel; 
     
    684724    public int getThreshold() { 
    685725        return parseInt(m_thresholdField); 
     726    } 
     727 
     728    public void setThreshold(int threshold) { 
     729        m_thresholdField.setText("" + threshold); 
    686730    } 
    687731 
     
    734778        String function = (String) m_functionComboBox.getSelectedItem(); 
    735779        if (function.equals(SINGLE_COMPONENT)) { 
    736             m_a1Param1.setText("" + params[0]); 
    737             m_t1Param1.setText("" + params[1]); 
    738             m_cParam1.setText("" + params[2]); 
     780            m_a1Param1.setText("" + (float) params[0]); 
     781            m_t1Param1.setText("" + (float) params[1]); 
     782            m_cParam1.setText( "" + (float) params[2]); 
    739783        } 
    740784        else if (function.equals(DOUBLE_COMPONENT)) { 
    741             m_a1Param2.setText("" + params[0]); 
    742             m_t1Param2.setText("" + params[1]); 
    743             m_a2Param2.setText("" + params[2]); 
    744             m_t2Param2.setText("" + params[3]); 
    745             m_cParam2.setText("" + params[4]); 
     785            m_a1Param2.setText("" + (float) params[0]); 
     786            m_t1Param2.setText("" + (float) params[1]); 
     787            m_a2Param2.setText("" + (float) params[2]); 
     788            m_t2Param2.setText("" + (float) params[3]); 
     789            m_cParam2.setText( "" + (float) params[4]); 
    746790        } 
    747791        else if (function.equals(TRIPLE_COMPONENT)) { 
    748             m_a1Param3.setText("" + params[0]); 
    749             m_t1Param3.setText("" + params[1]); 
    750             m_a2Param3.setText("" + params[2]); 
    751             m_t2Param3.setText("" + params[3]); 
    752             m_a3Param3.setText("" + params[4]); 
    753             m_t3Param3.setText("" + params[5]); 
    754             m_cParam3.setText("" + params[6]); 
     792            m_a1Param3.setText("" + (float) params[0]); 
     793            m_t1Param3.setText("" + (float) params[1]); 
     794            m_a2Param3.setText("" + (float) params[2]); 
     795            m_t2Param3.setText("" + (float) params[3]); 
     796            m_a3Param3.setText("" + (float) params[4]); 
     797            m_t3Param3.setText("" + (float) params[5]); 
     798            m_cParam3.setText( "" + (float) params[6]); 
    755799         } 
     800    } 
     801 
     802    public void setFunctionParameters(int function, double params[]) { 
     803        switch (function) { 
     804            case 0: 
     805                m_a1Param1.setText("" + (float) params[0]); 
     806                m_t1Param1.setText("" + (float) params[1]); 
     807                m_cParam1.setText( "" + (float) params[2]); 
     808                break; 
     809            case 1: 
     810                m_a1Param2.setText("" + (float) params[0]); 
     811                m_t1Param2.setText("" + (float) params[1]); 
     812                m_a2Param2.setText("" + (float) params[2]); 
     813                m_t2Param2.setText("" + (float) params[3]); 
     814                m_cParam2.setText( "" + (float) params[4]); 
     815                break; 
     816            case 2: 
     817                m_a1Param3.setText("" + (float) params[0]); 
     818                m_t1Param3.setText("" + (float) params[1]); 
     819                m_a2Param3.setText("" + (float) params[2]); 
     820                m_t2Param3.setText("" + (float) params[3]); 
     821                m_a3Param3.setText("" + (float) params[4]); 
     822                m_t3Param3.setText("" + (float) params[5]); 
     823                m_cParam3.setText( "" + (float) params[6]); 
     824                break; 
     825        } 
    756826    } 
    757827 
     
    787857    } 
    788858 
    789     public void itemStateChanged(ItemEvent e) { //TODO this class is a listener, vs inner class (below), vs anonymous inner class 
    790         CardLayout cl = (CardLayout)(m_cardPanel.getLayout()); 
    791         cl.show(m_cardPanel, (String)e.getItem()); 
     859    public void setChiSquare(double chiSquare) { 
     860        String function = (String) m_functionComboBox.getSelectedItem(); 
     861        if (function.equals(SINGLE_COMPONENT)) { 
     862            m_chiSqParam1.setText("" + (float) chiSquare); 
     863        } 
     864        else if (function.equals(DOUBLE_COMPONENT)) { 
     865            m_chiSqParam2.setText("" + (float) chiSquare); 
     866        } 
     867        else if (function.equals(TRIPLE_COMPONENT)) { 
     868            m_chiSqParam3.setText("" + (float) chiSquare); 
     869         } 
    792870    } 
    793871 
     
    802880        return value; 
    803881    } 
    804  
    805     private class FitButtonListener implements ActionListener { 
    806         public void actionPerformed(ActionEvent e){ 
    807             String text = (String)e.getActionCommand(); 
    808             if (text.equals("Do Fit")){ 
    809                 setFitButtonState(false); 
    810                 if (null != m_listener) { 
    811                     m_listener.doFit(); 
    812                 } 
    813             } 
    814             else{ 
    815                 setFitButtonState(true); 
    816                 if (null != m_listener) { 
    817                     m_listener.cancelFit(); 
    818                 } 
    819             } 
    820         } 
    821     } 
    822  
    823882} 
Note: See TracChangeset for help on using the changeset viewer.