Changeset 5302 in josm


Ignore:
Timestamp:
Jun 25, 2012 10:16:36 PM (11 months ago)
Author:
Don-vip
Message:

fix #7756 - NPE in checkboxes creation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/io/ActionFlagsTableCell.java

    r5003 r5302  
    3636 */ 
    3737class ActionFlagsTableCell extends JPanel implements TableCellRenderer, TableCellEditor { 
    38     protected JCheckBox[] checkBoxes = new JCheckBox[2]; 
     38    protected final JCheckBox[] checkBoxes = new JCheckBox[2]; 
    3939    private CopyOnWriteArrayList<CellEditorListener> listeners; 
    4040 
     
    4949        listeners = new CopyOnWriteArrayList<CellEditorListener>(); 
    5050 
    51         setLayout(new GridBagLayout()); 
    5251        checkBoxes[0] = new JCheckBox(tr("Upload")); 
    5352        checkBoxes[1] = new JCheckBox(tr("Save")); 
     53        setLayout(new GridBagLayout()); 
    5454 
    5555        ActionMap am = getActionMap(); 
     
    7171 
    7272    protected void updateCheckboxes(Object v) { 
    73         boolean[] values; 
    74         if(v instanceof SaveLayerInfo) { 
    75             values = new boolean[2]; 
    76             values[0] = ((SaveLayerInfo) v).isDoUploadToServer(); 
    77             values[1] = ((SaveLayerInfo) v).isDoSaveToFile(); 
    78         } else { 
    79             values = (boolean[]) v; 
     73        if (checkBoxes[0] != null && checkBoxes[1] != null) { 
     74            boolean[] values; 
     75            if(v instanceof SaveLayerInfo) { 
     76                values = new boolean[2]; 
     77                values[0] = ((SaveLayerInfo) v).isDoUploadToServer(); 
     78                values[1] = ((SaveLayerInfo) v).isDoSaveToFile(); 
     79            } else { 
     80                values = (boolean[]) v; 
     81            } 
     82            checkBoxes[0].setSelected(values[0]); 
     83            checkBoxes[1].setSelected(values[1]); 
    8084        } 
    81         checkBoxes[0].setSelected(values[0]); 
    82         checkBoxes[1].setSelected(values[1]); 
    8385    } 
    8486 
Note: See TracChangeset for help on using the changeset viewer.