public GenerateToStringDialog(Shell shell, CompilationUnitEditor editor, IType type, IVariableBinding[] fields, IVariableBinding[] inheritedFields, IVariableBinding[] selectedFields, IMethodBinding[] methods, IMethodBinding[] inheritededMethods) throws JavaModelException { super(shell, new BindingLabelProvider(), new GenerateToStringContentProvider(fields, inheritedFields, methods, inheritededMethods), editor, type, false); setEmptyListMessage(JavaUIMessages.GenerateHashCodeEqualsDialog_no_entries); List<Object> selected= new ArrayList<Object>(Arrays.asList(selectedFields)); if (selectedFields.length == fields.length && selectedFields.length > 0) selected.add(getContentProvider().getParent(selectedFields[0])); setInitialElementSelections(selected); setTitle(JavaUIMessages.GenerateToStringDialog_dialog_title); setMessage(JavaUIMessages.GenerateToStringDialog_select_fields_to_include); setValidator(new GenerateToStringValidator(fields.length + inheritedFields.length, methods.length + inheritededMethods.length)); setSize(60, 18); setInput(new Object()); fGenerationSettings= new ToStringGenerationSettings(getDialogSettings()); }
@Override public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection selection= (IStructuredSelection)getTreeViewer().getSelection(); Object selected= selection.size() > 0 ? selection.toList().get(0) : null; GenerateToStringContentProvider cp= (GenerateToStringContentProvider)getContentProvider(); fButtonControls[UP_INDEX].setEnabled(cp.canMoveUp(selected)); fButtonControls[DOWN_INDEX].setEnabled(cp.canMoveDown(selected)); }
@Override protected void buttonPressed(int buttonId) { super.buttonPressed(buttonId); switch (buttonId) { case UP_BUTTON: { GenerateToStringContentProvider contentProvider= (GenerateToStringContentProvider)getTreeViewer().getContentProvider(); List<?> selection= ((IStructuredSelection)getTreeViewer().getSelection()).toList(); if (selection.size() > 0) contentProvider.up(selection.get(0), getTreeViewer()); updateOKStatus(); break; } case DOWN_BUTTON: { GenerateToStringContentProvider contentProvider= (GenerateToStringContentProvider)getTreeViewer().getContentProvider(); List<?> selection= ((IStructuredSelection)getTreeViewer().getSelection()).toList(); if (selection.size() > 0) contentProvider.down(selection.get(0), getTreeViewer()); updateOKStatus(); break; } case SORT_BUTTON: { GenerateToStringContentProvider contentProvider= (GenerateToStringContentProvider)getTreeViewer().getContentProvider(); contentProvider.sort(); getTreeViewer().refresh(); updateOKStatus(); break; } } }
@Override protected void buttonPressed(int buttonId) { super.buttonPressed(buttonId); switch (buttonId) { case UP_BUTTON: { GenerateToStringContentProvider contentProvider= (GenerateToStringContentProvider)getTreeViewer().getContentProvider(); List<?> selection= ((IStructuredSelection)getTreeViewer().getSelection()).toList(); if (selection.size() > 0) contentProvider.up(selection.get(0), getTreeViewer()); updateOKStatus(); break; } case DOWN_BUTTON: { GenerateToStringContentProvider contentProvider= (GenerateToStringContentProvider)getTreeViewer().getContentProvider(); List<?> selection= ((IStructuredSelection)getTreeViewer().getSelection()).toList(); if (selection.size() > 0) contentProvider.down(selection.get(0), getTreeViewer()); updateOKStatus(); break; } case SORT_BUTTON: { GenerateToStringContentProvider contentProvider= (GenerateToStringContentProvider)getTreeViewer().getContentProvider(); contentProvider.sort(); getTreeViewer().refresh(); updateOKStatus(); break; } } }
private Object[] getContainingArray(Object element) { if (element instanceof String) return mainNodes; if (element instanceof IVariableBinding) { if (getElementPosition(element, fFields) >= 0) return fFields; if (getElementPosition(element, fInheritedFields) >= 0) return fInheritedFields; } if (element instanceof IMethodBinding) { if (getElementPosition(element, fMethods) >= 0) return fMethods; if (getElementPosition(element, fInheritedMethods) >= 0) return fInheritedMethods; } return EMPTY; }
private Object[] getContainingArray(Object element) { if (element instanceof String) return mainNodes; if (element instanceof IVariableBinding) { if (getElementPosition(element, fFields) >= 0) return fFields; if (getElementPosition(element, fInheritedFields) >= 0) return fInheritedFields; } if (element instanceof IMethodBinding) { if (getElementPosition(element, fMethods) >= 0) return fMethods; if (getElementPosition(element, fInheritedMethods) >= 0) return fInheritedMethods; } return EMPTY; }
public GenerateToStringDialog(Shell shell, CompilationUnitEditor editor, IType type, IVariableBinding[] fields, IVariableBinding[] inheritedFields, IVariableBinding[] selectedFields, IMethodBinding[] methods, IMethodBinding[] inheritededMethods) throws JavaModelException { super(shell, new BindingLabelProvider(), new GenerateToStringContentProvider(fields, inheritedFields, methods, inheritededMethods), editor, type, false); setEmptyListMessage(JavaUIMessages.GenerateHashCodeEqualsDialog_no_entries); List<Object> selected= new ArrayList<>(Arrays.asList(selectedFields)); if (selectedFields.length == fields.length && selectedFields.length > 0) selected.add(getContentProvider().getParent(selectedFields[0])); setInitialElementSelections(selected); setTitle(JavaUIMessages.GenerateToStringDialog_dialog_title); setMessage(JavaUIMessages.GenerateToStringDialog_select_fields_to_include); setValidator(new GenerateToStringValidator(fields.length + inheritedFields.length, methods.length + inheritededMethods.length)); setSize(60, 18); setInput(new Object()); fGenerationSettings= new ToStringGenerationSettings(getDialogSettings()); }
public void up(Object element, CheckboxTreeViewer tree) { move(element, tree, -1); }
public void down(Object element, CheckboxTreeViewer tree) { move(element, tree, 1); }
public boolean canMoveUp(Object element) { return getElementPosition(element, getContainingArray(element)) > 0; }
public void up(Object element, CheckboxTreeViewer tree) { move(element, tree, -1); }
public void down(Object element, CheckboxTreeViewer tree) { move(element, tree, 1); }
public boolean canMoveUp(Object element) { return getElementPosition(element, getContainingArray(element)) > 0; }
@Override public Object getParent(Object element) { Object[] array= getContainingArray(element); if (array == fFields) return fieldsNode; if (array == fInheritedFields) return inheritedFieldsNode; if (array == fMethods) return methodsNode; if (array == fInheritedMethods) return inheritedMethodsNode; return null; }
@Override public Object getParent(Object element) { Object[] array= getContainingArray(element); if (array == fFields) return fieldsNode; if (array == fInheritedFields) return inheritedFieldsNode; if (array == fMethods) return methodsNode; if (array == fInheritedMethods) return inheritedMethodsNode; return null; }
private void move(Object element, CheckboxTreeViewer tree, int direction) { Object[] array= getContainingArray(element); int position= getElementPosition(element, array); Object temp= array[position]; array[position]= array[position + direction]; array[position + direction]= temp; tree.setSelection(new StructuredSelection(element)); tree.refresh(); }
@Override public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection selection= (IStructuredSelection)getTreeViewer().getSelection(); Object selected= selection.size() > 0 ? selection.toList().get(0) : null; GenerateToStringContentProvider cp= (GenerateToStringContentProvider)getContentProvider(); fButtonControls[UP_INDEX].setEnabled(cp.canMoveUp(selected)); fButtonControls[DOWN_INDEX].setEnabled(cp.canMoveDown(selected)); }
public boolean canMoveDown(Object element) { Object[] array= getContainingArray(element); int position= getElementPosition(element, array); return position != -1 && position != array.length - 1; }
public boolean canMoveDown(Object element) { Object[] array= getContainingArray(element); int position= getElementPosition(element, array); return position != -1 && position != array.length - 1; }
private void move(Object element, CheckboxTreeViewer tree, int direction) { Object[] array= getContainingArray(element); int position= getElementPosition(element, array); Object temp= array[position]; array[position]= array[position + direction]; array[position + direction]= temp; tree.setSelection(new StructuredSelection(element)); tree.refresh(); }