Changeset 1670 in josm for trunk/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java
- Timestamp:
- 2009-06-15T20:22:46+02:00 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java
r1624 r1670 36 36 import org.openstreetmap.josm.data.osm.Node; 37 37 import org.openstreetmap.josm.data.osm.OsmPrimitive; 38 import org.openstreetmap.josm.data.osm.OsmPrimitiveType; 38 39 import org.openstreetmap.josm.data.osm.Relation; 39 40 import org.openstreetmap.josm.data.osm.RelationMember; … … 44 45 import org.openstreetmap.josm.gui.dialogs.ConflictDialog; 45 46 import org.openstreetmap.josm.io.OsmServerObjectReader; 47 import org.openstreetmap.josm.io.OsmTransferException; 46 48 import org.openstreetmap.josm.tools.GBC; 47 49 import org.openstreetmap.josm.tools.Shortcut; … … 145 147 String key = propertyData.getValueAt(i, 0).toString(); 146 148 String value = propertyData.getValueAt(i, 1).toString(); 147 if (key.length() > 0 && value.length() > 0) clone.put(key, value); 149 if (key.length() > 0 && value.length() > 0) { 150 clone.put(key, value); 151 } 148 152 } 149 153 refreshTables(); … … 175 179 { 176 180 sel = new ArrayList<OsmPrimitive>(cnt); 177 for (int i : memberTable.getSelectedRows()) 181 for (int i : memberTable.getSelectedRows()) { 178 182 sel.add((OsmPrimitive)memberTable.getValueAt(i, 1)); 183 } 179 184 } 180 185 else … … 182 187 cnt = memberTable.getRowCount(); 183 188 sel = new ArrayList<OsmPrimitive>(cnt); 184 for (int i = 0; i < cnt; ++i) 189 for (int i = 0; i < cnt; ++i) { 185 190 sel.add((OsmPrimitive)memberTable.getValueAt(i, 1)); 191 } 186 192 } 187 193 Main.ds.setSelected(sel); … … 239 245 240 246 buttonPanel.add(createButton(marktr("Add Selected"),"addselected", 241 tr("Add all currently selected objects as members"), KeyEvent.VK_D, new ActionListener() {247 tr("Add all currently selected objects as members"), KeyEvent.VK_D, new ActionListener() { 242 248 public void actionPerformed(ActionEvent e) { 243 249 addSelected(); … … 246 252 247 253 buttonPanel.add(createButton(marktr("Remove Selected"),"removeselected", 248 tr("Remove all currently selected objects from relation"), KeyEvent.VK_S, new ActionListener() {254 tr("Remove all currently selected objects from relation"), KeyEvent.VK_S, new ActionListener() { 249 255 public void actionPerformed(ActionEvent e) { 250 256 deleteSelected(); … … 259 265 260 266 buttonPanel.add(createButton(marktr("Remove"),"remove", 261 tr("Remove the member in the current table row from this relation"), KeyEvent.VK_M, new ActionListener() {267 tr("Remove the member in the current table row from this relation"), KeyEvent.VK_M, new ActionListener() { 262 268 public void actionPerformed(ActionEvent e) { 263 269 int[] rows = memberTable.getSelectedRows(); … … 273 279 274 280 buttonPanel.add(createButton(marktr("Download Members"),"downloadincomplete", 275 tr("Download all incomplete ways and nodes in relation"), KeyEvent.VK_K, new ActionListener() {281 tr("Download all incomplete ways and nodes in relation"), KeyEvent.VK_K, new ActionListener() { 276 282 public void actionPerformed(ActionEvent e) { 277 283 downloadRelationMembers(); … … 303 309 protected void buttonAction(ActionEvent evt) { 304 310 String a = evt.getActionCommand(); 305 if(applyChangesText.equals(a)) 311 if(applyChangesText.equals(a)) { 306 312 applyChanges(); 313 } 307 314 308 315 setVisible(false); … … 348 355 break; 349 356 } else if (m.member instanceof Relation) { 350 if (m.member == this.relation) 357 if (m.member == this.relation) { 351 358 break; 359 } 352 360 m = ((Relation)m.member).lastMember(); 353 361 depth++; … … 366 374 break; 367 375 } else if (m.member instanceof Relation) { 368 if (m.member == this.relation) 376 if (m.member == this.relation) { 369 377 break; 378 } 370 379 m = ((Relation)(m.member)).firstMember(); 371 380 depth++; … … 374 383 } 375 384 } 376 if (way2 != null) 385 if (way2 != null) { 377 386 break; 387 } 378 388 } 379 389 } … … 404 414 } 405 415 406 // end of section to determine linkedness. 416 // end of section to determine linkedness. 407 417 408 418 memberData.addRow(new Object[]{em.role, em.member, linked ? tr("yes") : tr("no")}); … … 416 426 private SideButton createButton(String name, String iconName, String tooltip, int mnemonic, ActionListener actionListener) { 417 427 return 418 428 new SideButton(name, iconName, "relationEditor", 419 429 tooltip, 420 430 Shortcut.registerShortcut("relationeditor:"+iconName, … … 422 432 mnemonic, 423 433 Shortcut.GROUP_MNEMONIC), 424 actionListener425 434 actionListener 435 ); 426 436 } 427 437 … … 483 493 for (RelationMember rm : clone.members) { 484 494 if (rm != null) { 485 while (m[i] != null) i++; 495 while (m[i] != null) { 496 i++; 497 } 486 498 m[i++] = rm; 487 499 } … … 509 521 } 510 522 if (download) { 511 OsmServerObjectReader reader = new OsmServerObjectReader(clone.id, Osm ServerObjectReader.TYPE_REL, true);523 OsmServerObjectReader reader = new OsmServerObjectReader(clone.id, OsmPrimitiveType.RELATION, true); 512 524 try { 513 525 DataSet dataSet = reader.parseOsm(); … … 515 527 final MergeVisitor visitor = new MergeVisitor(Main.main 516 528 .editLayer().data, dataSet); 517 for (final OsmPrimitive osm : dataSet.allPrimitives()) 529 for (final OsmPrimitive osm : dataSet.allPrimitives()) { 518 530 osm.visit(visitor); 531 } 519 532 visitor.fixReferences(); 520 533 521 534 // copy the merged layer's data source info 522 for (DataSource src : dataSet.dataSources) 535 for (DataSource src : dataSet.dataSources) { 523 536 Main.main.editLayer().data.dataSources.add(src); 537 } 524 538 Main.main.editLayer().fireDataChange(); 525 539 … … 530 544 JOptionPane.showMessageDialog(Main.parent, 531 545 tr("There were conflicts during import.")); 532 if (!dlg.isVisible()) 546 if (!dlg.isVisible()) { 533 547 dlg.action 534 535 }536 537 } catch (SAXException e) {548 .actionPerformed(new ActionEvent(this, 0, "")); 549 } 550 } 551 } catch(OsmTransferException e) { 538 552 e.printStackTrace(); 539 JOptionPane.showMessageDialog(this,tr("Error parsing server response.")+": "+e.getMessage(), 540 tr("Error"), JOptionPane.ERROR_MESSAGE); 541 } catch (IOException e) { 542 e.printStackTrace(); 543 JOptionPane.showMessageDialog(this,tr("Cannot connect to server.")+": "+e.getMessage(), 544 tr("Error"), JOptionPane.ERROR_MESSAGE); 553 if (e.getCause() != null) { 554 if (e.getCause() instanceof SAXException) { 555 JOptionPane.showMessageDialog(this,tr("Error parsing server response.")+": "+e.getCause().getMessage(), 556 tr("Error"), JOptionPane.ERROR_MESSAGE); 557 } else if(e.getCause() instanceof IOException) { 558 JOptionPane.showMessageDialog(this,tr("Cannot connect to server.")+": "+e.getCause().getMessage(), 559 tr("Error"), JOptionPane.ERROR_MESSAGE); 560 } 561 } else { 562 JOptionPane.showMessageDialog(this,tr("Error when communicating with server.")+": "+e.getMessage(), 563 tr("Error"), JOptionPane.ERROR_MESSAGE); 564 } 545 565 } 546 566 }
Note:
See TracChangeset
for help on using the changeset viewer.