private static List<RangeMarker> variablesToPositions(TemplateVariable[] variables) { List<RangeMarker> positions= new ArrayList<>(5); for (int i= 0; i != variables.length; i++) { int[] offsets= variables[i].getOffsets(); for (int j= 0; j != offsets.length; j++) positions.add(new RangeMarker(offsets[j], 0)); } return positions; }
private static List<RangeMarker> variablesToPositions(TemplateVariable[] variables) { List<RangeMarker> positions= new ArrayList<>(5); for (int i= 0; i != variables.length; i++) { int[] offsets= variables[i].getOffsets(); for (int j= 0; j != offsets.length; j++) positions.add(new RangeMarker(offsets[j], 0)); } return positions; }
private static int[] variablesToOffsets(TemplateVariable[] variables, int start) { List<Integer> list = new ArrayList<>(); for (int i = 0; i != variables.length; i++) { int[] offsets = variables[i].getOffsets(); for (int j = 0; j != offsets.length; j++) { list.add(Integer.valueOf(offsets[j])); } } int[] offsets = new int[list.size()]; for (int i = 0; i != offsets.length; i++) { offsets[i] = list.get(i).intValue() + start; } Arrays.sort(offsets); return offsets; }
private static void positionsToVariables(List<RangeMarker> positions, TemplateVariable[] variables) { Iterator<RangeMarker> iterator= positions.iterator(); for (int i= 0; i != variables.length; i++) { TemplateVariable variable= variables[i]; int[] offsets= new int[variable.getOffsets().length]; for (int j= 0; j != offsets.length; j++) offsets[j]= iterator.next().getOffset(); variable.setOffsets(offsets); } } }
private static void positionsToVariables(List<RangeMarker> positions, TemplateVariable[] variables) { Iterator<RangeMarker> iterator= positions.iterator(); for (int i= 0; i != variables.length; i++) { TemplateVariable variable= variables[i]; int[] offsets= new int[variable.getOffsets().length]; for (int j= 0; j != offsets.length; j++) offsets[j]= iterator.next().getOffset(); variable.setOffsets(offsets); } } }
@Override protected void validateVariables(TemplateVariable[] variables) throws TemplateException { // check for multiple cursor variables for (int i= 0; i < variables.length; i++) { TemplateVariable var= variables[i]; if (var.getType().equals(GlobalTemplateVariables.Cursor.NAME)) { if (var.getOffsets().length > 1) { throw new TemplateException(JavaTemplateMessages.ContextType_error_multiple_cursor_variables); } } } }
@Override protected void validateVariables(TemplateVariable[] variables) throws TemplateException { // check for multiple cursor variables for (int i= 0; i < variables.length; i++) { TemplateVariable var= variables[i]; if (var.getType().equals(GlobalTemplateVariables.Cursor.NAME)) { if (var.getOffsets().length > 1) { throw new TemplateException(JavaTemplateMessages.ContextType_error_multiple_cursor_variables); } } } }
protected void validateVariables(TemplateVariable[] variables) throws TemplateException { // check for multiple cursor variables for (int i= 0; i < variables.length; i++) { TemplateVariable var= variables[i]; if (var.getType().equals(GlobalTemplateVariables.Cursor.NAME)) { if (var.getOffsets().length > 1) { throw new TemplateException(JavaTemplateMessages.ContextType_error_multiple_cursor_variables); } } } }
private static void positionsToVariables(List positions, TemplateVariable[] variables) { Iterator iterator = positions.iterator(); for (int i = 0; i != variables.length; i++) { TemplateVariable variable = variables[i]; int[] offsets = new int[variable.getOffsets().length]; for (int j = 0; j != offsets.length; j++) { offsets[j] = ((TextEdit) iterator.next()).getOffset(); } variable.setOffsets(offsets); } } }
private int getCaretOffset(TemplateBuffer buffer) { TemplateVariable[] variables= buffer.getVariables(); for (int i= 0; i != variables.length; i++) { TemplateVariable variable= variables[i]; if (variable.getType().equals(GlobalTemplateVariables.Cursor.NAME)) return variable.getOffsets()[0]; } return buffer.getString().length(); }
private static void positionsToVariables(Position[] positions, TemplateVariable[] variables, int start) { for (int i = 0; i != variables.length; i++) { TemplateVariable variable = variables[i]; int[] offsets = new int[variable.getOffsets().length]; for (int j = 0; j != offsets.length; j++) { offsets[j] = positions[j].getOffset() - start; } variable.setOffsets(offsets); } }
private int getCaretOffset(TemplateBuffer buffer) { TemplateVariable[] variables= buffer.getVariables(); for (int i= 0; i != variables.length; i++) { TemplateVariable variable= variables[i]; if (variable.getType().equals(GlobalTemplateVariables.Cursor.NAME)) return variable.getOffsets()[0]; } return buffer.getString().length(); }
private int getCaretOffset(TemplateBuffer buffer) { TemplateVariable[] variables= buffer.getVariables(); for (int i= 0; i != variables.length; i++) { TemplateVariable variable= variables[i]; if (variable.getType().equals(GlobalTemplateVariables.Cursor.NAME)) return variable.getOffsets()[0]; } return buffer.getString().length(); }
private int getCaretOffset(TemplateBuffer buffer) { TemplateVariable[] variables= buffer.getVariables(); for (int i= 0; i != variables.length; i++) { TemplateVariable variable= variables[i]; if (variable.getType().equals(GlobalTemplateVariables.Cursor.NAME)) return variable.getOffsets()[0]; } return buffer.getString().length(); }
private int getCaretOffset(TemplateBuffer buffer) { TemplateVariable[] variables= buffer.getVariables(); for (int i= 0; i != variables.length; i++) { TemplateVariable variable= variables[i]; if (variable.getType().equals(GlobalTemplateVariables.Cursor.NAME)) return variable.getOffsets()[0]; } return buffer.getString().length(); }
private int getCaretOffset(TemplateBuffer buffer) { TemplateVariable[] variables = buffer.getVariables(); for (int i = 0; i != variables.length; i++) { TemplateVariable variable = variables[i]; if (variable.getType().equals(GlobalTemplateVariables.Cursor.NAME)) { return variable.getOffsets()[0]; } } return buffer.getString().length(); }
private static List variablesToPositions(TemplateVariable[] variables) { List positions = new ArrayList(5); for (int i = 0; i != variables.length; i++) { int[] offsets = variables[i].getOffsets(); // trim positions off whitespace String value = variables[i].getDefaultValue(); int wsStart = 0; while (wsStart < value.length() && Character.isWhitespace(value.charAt(wsStart))) { wsStart++; } variables[i].getValues()[0] = value.substring(wsStart); for (int j = 0; j != offsets.length; j++) { offsets[j] += wsStart; positions.add(new RangeMarker(offsets[j], 0)); } } return positions; }
private void removeRangeMarkers(List<TypedPosition> positions, IDocument document, TemplateVariable[] variables) throws MalformedTreeException, BadLocationException, BadPositionCategoryException { // revert previous changes for (Iterator<TypedPosition> it= positions.iterator(); it.hasNext();) { TypedPosition position= it.next(); // remove and re-add in order to not confuse ExclusivePositionUpdater document.removePosition(CATEGORY, position); final String original= position.getType(); if (original != null) { document.replace(position.getOffset(), position.getLength(), original); position.setLength(original.length()); } document.addPosition(position); } Iterator<TypedPosition> it= positions.iterator(); for (int i= 0; i != variables.length; i++) { TemplateVariable variable= variables[i]; int[] offsets= new int[variable.getOffsets().length]; for (int j= 0; j != offsets.length; j++) offsets[j]= it.next().getOffset(); variable.setOffsets(offsets); } } }
private void removeRangeMarkers(List<TypedPosition> positions, IDocument document, TemplateVariable[] variables) throws MalformedTreeException, BadLocationException, BadPositionCategoryException { // revert previous changes for (Iterator<TypedPosition> it= positions.iterator(); it.hasNext();) { TypedPosition position= it.next(); // remove and re-add in order to not confuse ExclusivePositionUpdater document.removePosition(CATEGORY, position); final String original= position.getType(); if (original != null) { document.replace(position.getOffset(), position.getLength(), original); position.setLength(original.length()); } document.addPosition(position); } Iterator<TypedPosition> it= positions.iterator(); for (int i= 0; i != variables.length; i++) { TemplateVariable variable= variables[i]; int[] offsets= new int[variable.getOffsets().length]; for (int j= 0; j != offsets.length; j++) offsets[j]= it.next().getOffset(); variable.setOffsets(offsets); } } }
private void removeRangeMarkers(List positions, IDocument document, TemplateVariable[] variables) throws MalformedTreeException, BadLocationException, BadPositionCategoryException { // revert previous changes for (Iterator it= positions.iterator(); it.hasNext();) { TypedPosition position= (TypedPosition) it.next(); // remove and re-add in order to not confuse ExclusivePositionUpdater document.removePosition(CATEGORY, position); final String original= position.getType(); if (original != null) { document.replace(position.getOffset(), position.getLength(), original); position.setLength(original.length()); } document.addPosition(position); } Iterator it= positions.iterator(); for (int i= 0; i != variables.length; i++) { TemplateVariable variable= variables[i]; int[] offsets= new int[variable.getOffsets().length]; for (int j= 0; j != offsets.length; j++) offsets[j]= ((Position) it.next()).getOffset(); variable.setOffsets(offsets); } } }