comparison flys-client/src/main/java/de/intevation/flys/client/client/ui/chart/StyleEditorWindow.java @ 1291:1d04f35b2cc0

New methods for color transformation (html to rgb; rgb to html). flys-client/trunk@2891 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Raimund Renkert <raimund.renkert@intevation.de>
date Wed, 05 Oct 2011 09:26:13 +0000
parents f4deeafa60b3
children bdc270ea6195
comparison
equal deleted inserted replaced
1290:f4deeafa60b3 1291:1d04f35b2cc0
139 FormItem f; 139 FormItem f;
140 if(type.equals("int")) { 140 if(type.equals("int")) {
141 SpinnerItem s = new SpinnerItem(name, dname); 141 SpinnerItem s = new SpinnerItem(name, dname);
142 s.setMin(1); 142 s.setMin(1);
143 s.setMax(10); 143 s.setMax(10);
144 s.setValue(value);
144 f = s; 145 f = s;
145 } 146 }
146 else if (type.equals("boolean")) { 147 else if (type.equals("boolean")) {
147 CheckboxItem c = new CheckboxItem(name, dname); 148 CheckboxItem c = new CheckboxItem(name, dname);
148 if(value.equals("true")) { 149 if(value.equals("true")) {
153 } 154 }
154 c.setLabelAsTitle(true); 155 c.setLabelAsTitle(true);
155 f = c; 156 f = c;
156 } 157 }
157 else if (type.equals("Color")) { 158 else if (type.equals("Color")) {
158 f = new ColorPickerItem(name, dname); 159 ColorPickerItem c = new ColorPickerItem(name, dname);
160 c.setValue(rgbToHtml(value));
161 f = c;
159 } 162 }
160 else if (type.equals("Dash")) { 163 else if (type.equals("Dash")) {
161 f = new ComboBoxItem(name, dname); 164 f = new ComboBoxItem(name, dname);
165 f.setValue(value);
162 } 166 }
163 else { 167 else {
164 f = new FormItem(); 168 f = new FormItem();
165 } 169 }
166 f.setValue(value);
167 f.setTitleStyle("color:#000; width:120px"); 170 f.setTitleStyle("color:#000; width:120px");
168 f.setTitleAlign(Alignment.LEFT); 171 f.setTitleAlign(Alignment.LEFT);
169 df.setFields(f); 172 df.setFields(f);
170 173
171 return df; 174 return df;
172 } 175 }
176
177 protected String rgbToHtml(String rgb) {
178 String[] parts = rgb.split(",");
179 int values[] = new int[parts.length];
180 for (int i = 0; i < parts.length; i++) {
181 parts[i] = parts[i].trim();
182 try {
183 values[i] = Integer.parseInt(parts[i]);
184 }
185 catch(NumberFormatException nfe) {
186 return "#000000";
187 }
188 }
189 String hex = "#";
190 for (int i = 0; i < values.length; i++) {
191 hex += Integer.toHexString(values[i]);
192 }
193 return hex;
194 }
195
196 protected String htmlToRgb(String html) {
197 if (!html.startsWith("#")) {
198 return "0, 0, 0";
199 }
200
201 GWT.log("sub: " + html.substring(1, 3));
202 int r = Integer.valueOf(html.substring(1, 3), 16);
203 int g = Integer.valueOf(html.substring(3, 5), 16);
204 int b = Integer.valueOf(html.substring(5, 7), 16);
205
206 return r + ", " + g + ", " + b;
207 }
208
173 } 209 }
174 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : 210 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org