Revision 34390 trunk/libraries/libUIComponent/src/org/gvsig/gui/beans/controls/comboscale/ComboScale.java
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