private ProjectionSummary createProjectionSummary() { ProjectionSummary summary= new ProjectionSummary(fViewer, fAnnotationAccess); if (fSummarizableTypes != null) { int size= fSummarizableTypes.size(); for (int i= 0; i < size; i++) summary.addAnnotationType(fSummarizableTypes.get(i)); } return summary; }
private void internalUpdateSummaries(IProgressMonitor monitor) { IAnnotationModel visualAnnotationModel= fProjectionViewer.getVisualAnnotationModel(); if (visualAnnotationModel == null) return; removeSummaries(monitor, visualAnnotationModel); if (isCanceled(monitor)) return; createSummaries(monitor, visualAnnotationModel); }
private void processModelChanged(IAnnotationModel model, AnnotationModelEvent event) { if (model == fProjectionAnnotationModel) { if (fProjectionSummary != null) fProjectionSummary.updateSummaries(); processCatchupRequest(event); } else if (model == getAnnotationModel() && fProjectionSummary != null) fProjectionSummary.updateSummaries(); } }
while (e.hasNext()) { Annotation annotation= e.next(); AnnotationBag bag= findBagForType(map, annotation.getType()); if (bag != null) { Position position= model.getPosition(annotation); if (includes(summaryRegions, position)) bag.add(annotation);
Position summaryAnchor= fProjectionViewer.computeCollapsedRegionAnchor(position); if (summaryAnchor != null) createSummary(additions, summaryRegions, summaryAnchor); if (isCanceled(monitor)) return; if (visualAnnotationModel instanceof IAnnotationModelExtension) { IAnnotationModelExtension extension= (IAnnotationModelExtension)visualAnnotationModel; if (!isCanceled(monitor)) extension.replaceAnnotations(null, additions); } else { AnnotationBag bag= (AnnotationBag) e1.next(); Position position= additions.get(bag); if (isCanceled(monitor)) return; visualAnnotationModel.addAnnotation(bag, position);
private void removeSummaries(IProgressMonitor monitor, IAnnotationModel visualAnnotationModel) { IAnnotationModelExtension extension= null; List<Annotation> bags= null; if (visualAnnotationModel instanceof IAnnotationModelExtension) { extension= (IAnnotationModelExtension)visualAnnotationModel; bags= new ArrayList<>(); } Iterator<Annotation> e= visualAnnotationModel.getAnnotationIterator(); while (e.hasNext()) { Annotation annotation= e.next(); if (annotation instanceof AnnotationBag) { if (bags == null) visualAnnotationModel.removeAnnotation(annotation); else bags.add(annotation); } if (isCanceled(monitor)) return; } if (bags != null && bags.size() > 0) { Annotation[] deletions= new Annotation[bags.size()]; bags.toArray(deletions); if (!isCanceled(monitor)) extension.replaceAnnotations(deletions, null); } }
while (e.hasNext()) { Annotation annotation= e.next(); AnnotationBag bag= findBagForType(map, annotation.getType()); if (bag != null) { Position position= model.getPosition(annotation); if (includes(summaryRegions, position)) bag.add(annotation);
Position summaryAnchor= fProjectionViewer.computeCollapsedRegionAnchor(position); if (summaryAnchor != null) createSummary(additions, summaryRegions, summaryAnchor); if (isCanceled(monitor)) return; if (visualAnnotationModel instanceof IAnnotationModelExtension) { IAnnotationModelExtension extension= (IAnnotationModelExtension)visualAnnotationModel; if (!isCanceled(monitor)) extension.replaceAnnotations(null, additions); } else { AnnotationBag bag= (AnnotationBag) entry.getKey(); Position position= entry.getValue(); if (isCanceled(monitor)) return; visualAnnotationModel.addAnnotation(bag, position);
private void removeSummaries(IProgressMonitor monitor, IAnnotationModel visualAnnotationModel) { IAnnotationModelExtension extension= null; List<Annotation> bags= null; if (visualAnnotationModel instanceof IAnnotationModelExtension) { extension= (IAnnotationModelExtension)visualAnnotationModel; bags= new ArrayList<>(); } Iterator<Annotation> e= visualAnnotationModel.getAnnotationIterator(); while (e.hasNext()) { Annotation annotation= e.next(); if (annotation instanceof AnnotationBag) { if (bags == null) visualAnnotationModel.removeAnnotation(annotation); else bags.add(annotation); } if (isCanceled(monitor)) return; } if (bags != null && bags.size() > 0) { Annotation[] deletions= new Annotation[bags.size()]; bags.toArray(deletions); if (!isCanceled(monitor)) extension.replaceAnnotations(deletions, null); } }
private void internalUpdateSummaries(IProgressMonitor monitor) { IAnnotationModel visualAnnotationModel= fProjectionViewer.getVisualAnnotationModel(); if (visualAnnotationModel == null) return; removeSummaries(monitor, visualAnnotationModel); if (isCanceled(monitor)) return; createSummaries(monitor, visualAnnotationModel); }
private ProjectionSummary createProjectionSummary() { ProjectionSummary summary= new ProjectionSummary(fViewer, fAnnotationAccess); if (fSummarizableTypes != null) { int size= fSummarizableTypes.size(); for (int i= 0; i < size; i++) summary.addAnnotationType(fSummarizableTypes.get(i)); } return summary; }
private void processModelChanged(IAnnotationModel model, AnnotationModelEvent event) { if (model == fProjectionAnnotationModel) { if (fProjectionSummary != null) fProjectionSummary.updateSummaries(); processCatchupRequest(event); } else if (model == getAnnotationModel() && fProjectionSummary != null) fProjectionSummary.updateSummaries(); } }