mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-29 19:45:01 +02:00
Cosmetics.
This commit is contained in:
parent
a5a8d0ed20
commit
415903e978
1 changed files with 37 additions and 29 deletions
|
@ -35,23 +35,27 @@ import org.eclipse.cdt.internal.ui.refactoring.utils.VisibilityEnum;
|
||||||
* the correct insertion point for the desired visibility.
|
* the correct insertion point for the desired visibility.
|
||||||
*
|
*
|
||||||
* @author Mirko Stocker
|
* @author Mirko Stocker
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
public class AddDeclarationNodeToClassChange {
|
public class AddDeclarationNodeToClassChange {
|
||||||
|
|
||||||
private final ICPPASTCompositeTypeSpecifier nodeClass;
|
private final ICPPASTCompositeTypeSpecifier nodeClass;
|
||||||
private final VisibilityEnum visibility;
|
private final VisibilityEnum visibility;
|
||||||
private ArrayList<IASTNode> fieldNodes = new ArrayList<IASTNode>();
|
private ArrayList<IASTNode> fieldNodes = new ArrayList<IASTNode>();
|
||||||
private final ModificationCollector collector;
|
private final ModificationCollector collector;
|
||||||
|
|
||||||
public static void createChange(ICPPASTCompositeTypeSpecifier nodeClass, VisibilityEnum visibility, IASTNode fieldNodes, boolean isField, ModificationCollector collector) {
|
public static void createChange(ICPPASTCompositeTypeSpecifier nodeClass,
|
||||||
|
VisibilityEnum visibility, IASTNode fieldNodes, boolean isField,
|
||||||
|
ModificationCollector collector) {
|
||||||
new AddDeclarationNodeToClassChange(nodeClass, visibility, fieldNodes, collector, isField);
|
new AddDeclarationNodeToClassChange(nodeClass, visibility, fieldNodes, collector, isField);
|
||||||
}
|
}
|
||||||
public static void createChange(ICPPASTCompositeTypeSpecifier nodeClass, VisibilityEnum visibility, ArrayList<IASTNode> fieldNodes, boolean isField, ModificationCollector collector) {
|
public static void createChange(ICPPASTCompositeTypeSpecifier nodeClass,
|
||||||
|
VisibilityEnum visibility, ArrayList<IASTNode> fieldNodes, boolean isField,
|
||||||
|
ModificationCollector collector) {
|
||||||
new AddDeclarationNodeToClassChange(nodeClass, visibility, fieldNodes, collector, isField);
|
new AddDeclarationNodeToClassChange(nodeClass, visibility, fieldNodes, collector, isField);
|
||||||
}
|
}
|
||||||
|
|
||||||
private AddDeclarationNodeToClassChange(ICPPASTCompositeTypeSpecifier nodeClass, VisibilityEnum visibility, ArrayList<IASTNode> fieldNodes, ModificationCollector collector, boolean isField) {
|
private AddDeclarationNodeToClassChange(ICPPASTCompositeTypeSpecifier nodeClass,
|
||||||
|
VisibilityEnum visibility, ArrayList<IASTNode> fieldNodes,
|
||||||
|
ModificationCollector collector, boolean isField) {
|
||||||
this.fieldNodes = fieldNodes;
|
this.fieldNodes = fieldNodes;
|
||||||
this.nodeClass = nodeClass;
|
this.nodeClass = nodeClass;
|
||||||
this.visibility = visibility;
|
this.visibility = visibility;
|
||||||
|
@ -59,7 +63,9 @@ public class AddDeclarationNodeToClassChange {
|
||||||
createRewrites(isField);
|
createRewrites(isField);
|
||||||
}
|
}
|
||||||
|
|
||||||
private AddDeclarationNodeToClassChange(ICPPASTCompositeTypeSpecifier nodeClass, VisibilityEnum visibility, IASTNode fieldNodes, ModificationCollector collector, boolean isField) {
|
private AddDeclarationNodeToClassChange(ICPPASTCompositeTypeSpecifier nodeClass,
|
||||||
|
VisibilityEnum visibility, IASTNode fieldNodes, ModificationCollector collector,
|
||||||
|
boolean isField) {
|
||||||
this.nodeClass = nodeClass;
|
this.nodeClass = nodeClass;
|
||||||
this.visibility = visibility;
|
this.visibility = visibility;
|
||||||
this.fieldNodes.add(fieldNodes);
|
this.fieldNodes.add(fieldNodes);
|
||||||
|
@ -89,11 +95,11 @@ public class AddDeclarationNodeToClassChange {
|
||||||
if (declaration instanceof IASTSimpleDeclaration) {
|
if (declaration instanceof IASTSimpleDeclaration) {
|
||||||
IASTSimpleDeclaration simple = (IASTSimpleDeclaration) declaration;
|
IASTSimpleDeclaration simple = (IASTSimpleDeclaration) declaration;
|
||||||
IASTDeclarator[] declarators = simple.getDeclarators();
|
IASTDeclarator[] declarators = simple.getDeclarators();
|
||||||
if(declarators.length > 0 && declarators[0] != null && declarators[0] instanceof IASTFunctionDeclarator){
|
if (declarators.length > 0 && declarators[0] != null &&
|
||||||
|
declarators[0] instanceof IASTFunctionDeclarator) {
|
||||||
if (currentVisibility.equals(visibility)) {
|
if (currentVisibility.equals(visibility)) {
|
||||||
lastFunctionDeclaration = i;
|
lastFunctionDeclaration = i;
|
||||||
}
|
}
|
||||||
|
|
||||||
} else if (declarators.length > 0 && declarators[0] != null) {
|
} else if (declarators.length > 0 && declarators[0] != null) {
|
||||||
if (currentVisibility.equals(visibility)) {
|
if (currentVisibility.equals(visibility)) {
|
||||||
lastFieldDeclaration = i;
|
lastFieldDeclaration = i;
|
||||||
|
@ -113,7 +119,8 @@ public class AddDeclarationNodeToClassChange {
|
||||||
createInsert(isField, nextFunctionDeclaration, nextFieldDeclaration, currentVisibility);
|
createInsert(isField, nextFunctionDeclaration, nextFieldDeclaration, currentVisibility);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void createInsert(boolean isField, IASTDeclaration nextFunctionDeclaration, IASTDeclaration nextFieldDeclaration, VisibilityEnum currentVisibility) {
|
private void createInsert(boolean isField, IASTDeclaration nextFunctionDeclaration,
|
||||||
|
IASTDeclaration nextFieldDeclaration, VisibilityEnum currentVisibility) {
|
||||||
if (isField) {
|
if (isField) {
|
||||||
if (nextFieldDeclaration != null) {
|
if (nextFieldDeclaration != null) {
|
||||||
insertBefore(nextFieldDeclaration);
|
insertBefore(nextFieldDeclaration);
|
||||||
|
@ -141,11 +148,11 @@ public class AddDeclarationNodeToClassChange {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void insertAtTheEnd(VisibilityEnum currentVisibility) {
|
private void insertAtTheEnd(VisibilityEnum currentVisibility) {
|
||||||
|
|
||||||
ASTRewrite rewrite = collector.rewriterForTranslationUnit(nodeClass.getTranslationUnit());
|
ASTRewrite rewrite = collector.rewriterForTranslationUnit(nodeClass.getTranslationUnit());
|
||||||
|
|
||||||
if (!currentVisibility.equals(visibility)) {
|
if (!currentVisibility.equals(visibility)) {
|
||||||
ICPPASTVisibilityLabel label = new CPPASTVisibilityLabel(visibility.getICPPASTVisiblityLabelVisibility());
|
ICPPASTVisibilityLabel label =
|
||||||
|
new CPPASTVisibilityLabel(visibility.getICPPASTVisiblityLabelVisibility());
|
||||||
rewrite.insertBefore(nodeClass, null, label, createEditDescription());
|
rewrite.insertBefore(nodeClass, null, label, createEditDescription());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -155,6 +162,7 @@ public class AddDeclarationNodeToClassChange {
|
||||||
}
|
}
|
||||||
|
|
||||||
private TextEditGroup createEditDescription() {
|
private TextEditGroup createEditDescription() {
|
||||||
return new TextEditGroup(NLS.bind(Messages.AddDeclarationNodeToClassChange_AddDeclaration, nodeClass.getName()));
|
return new TextEditGroup(NLS.bind(Messages.AddDeclarationNodeToClassChange_AddDeclaration,
|
||||||
|
nodeClass.getName()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue