Ticket #17295: 17295.patch
| File 17295.patch, 2.2 KB (added by , 7 years ago) |
|---|
-
src/org/openstreetmap/josm/gui/dialogs/validator/ValidatorTreePanel.java
195 195 = OsmValidator.getErrorsBySeverityMessageDescription(errors, filterToUse); 196 196 197 197 final List<TreePath> expandedPaths = new ArrayList<>(); 198 final List<TreePath> severityPaths = new ArrayList<>(); 198 199 for (Entry<Severity, Map<String, Map<String, List<TestError>>>> entry: errorsBySeverityMessageDescription.entrySet()) { 199 200 Severity severity = entry.getKey(); 200 201 Map<String, Map<String, List<TestError>>> errorsByMessageDescription = entry.getValue(); … … 202 203 // Severity node 203 204 final DefaultMutableTreeNode severityNode = new GroupTreeNode(severity); 204 205 rootNode.add(severityNode); 206 TreePath severityPath = new TreePath(new Object[] {rootNode, severityNode}); 207 severityPaths.add(severityPath); 205 208 206 209 if (oldExpandedRows.contains(severity)) { 207 expandedPaths.add( new TreePath(new Object[] {rootNode, severityNode}));210 expandedPaths.add(severityPath); 208 211 } 209 212 210 213 final Map<String, List<TestError>> errorsWithEmptyMessageByDescription = errorsByMessageDescription.get(""); … … 271 274 } 272 275 273 276 valTreeModel.setRoot(rootNode); 277 boolean hasExpanded = false; 274 278 for (TreePath path : expandedPaths) { 275 279 this.expandPath(path); 280 hasExpanded = true; 276 281 } 277 282 278 283 if (selRow >= 0 && selRow < getRowCount()) { 279 284 setSelectionRow(selRow); 280 285 scrollRowToVisible(selRow); 286 hasExpanded = true; 281 287 } 282 288 if (!hasExpanded && !severityPaths.isEmpty()) { 289 for (TreePath path : severityPaths) { 290 expandPath(path); 291 if (getRowCount() > 10) 292 break; 293 } 294 } 283 295 invalidationListeners.fireEvent(Runnable::run); 284 296 } 285 297
