Revision 34390 trunk/libraries/libUIComponent/src/org/gvsig/gui/beans/controls/comboscale/ComboScale.java

View differences:

ComboScale.java
48 48
	private boolean isScaleCombo;
49 49

  
50 50
	static private int eventId = Integer.MIN_VALUE;
51
	
52
	private long lastScaleValue=0;
51 53

  
52 54
	// jaume
53 55
	private class ComboScaleItem {
......
123 125
							StringBuffer sb = new StringBuffer((String) item);
124 126
							// remove any point in the number
125 127
							final String digits = "0123456789";
126
							int i = sb.charAt(0) == '-' ? 1 : 0;
128
							int i = 0;
129
							if ((sb.length() > 0) && (sb.charAt(0) == '-')){
130
								i = 1;
131
							}
127 132
							BitSet deleteChars=new BitSet();
128 133
							while (i < sb.length()) {
129 134
								if (digits.indexOf(sb.charAt(i))==-1)
......
137 142
							jComboBox.removeItem(item);
138 143
							try{
139 144
								scale = Long.parseLong(sb.toString());
145
								lastScaleValue = scale;
140 146
							}catch (NumberFormatException e1) {
147
								scale = lastScaleValue;
141 148
							}
142 149
						} else {
143 150
							scale = ((ComboScaleItem) jComboBox.getSelectedItem())
......
170 177
		bDoCallListeners = false;
171 178
		getJComboBox().setSelectedItem(new ComboScaleItem(item));
172 179
		bDoCallListeners = true;
180
		this.lastScaleValue=item;
173 181
	}
174 182

  
175 183
	/**

Also available in: Unified diff