Lines 115-120
Link Here
|
115 |
import org.eclipse.jdt.internal.corext.fix.CleanUpConstants; |
115 |
import org.eclipse.jdt.internal.corext.fix.CleanUpConstants; |
116 |
import org.eclipse.jdt.internal.corext.fix.ControlStatementsFix; |
116 |
import org.eclipse.jdt.internal.corext.fix.ControlStatementsFix; |
117 |
import org.eclipse.jdt.internal.corext.fix.ConvertLoopFix; |
117 |
import org.eclipse.jdt.internal.corext.fix.ConvertLoopFix; |
|
|
118 |
import org.eclipse.jdt.internal.corext.fix.SortModifiersFix; |
118 |
import org.eclipse.jdt.internal.corext.fix.IProposableFix; |
119 |
import org.eclipse.jdt.internal.corext.fix.IProposableFix; |
119 |
import org.eclipse.jdt.internal.corext.fix.LinkedProposalModel; |
120 |
import org.eclipse.jdt.internal.corext.fix.LinkedProposalModel; |
120 |
import org.eclipse.jdt.internal.corext.fix.VariableDeclarationFix; |
121 |
import org.eclipse.jdt.internal.corext.fix.VariableDeclarationFix; |
Lines 139-144
Link Here
|
139 |
import org.eclipse.jdt.internal.ui.JavaPluginImages; |
140 |
import org.eclipse.jdt.internal.ui.JavaPluginImages; |
140 |
import org.eclipse.jdt.internal.ui.fix.ControlStatementsCleanUp; |
141 |
import org.eclipse.jdt.internal.ui.fix.ControlStatementsCleanUp; |
141 |
import org.eclipse.jdt.internal.ui.fix.ConvertLoopCleanUp; |
142 |
import org.eclipse.jdt.internal.ui.fix.ConvertLoopCleanUp; |
|
|
143 |
import org.eclipse.jdt.internal.ui.fix.SortModifiersCleanUp; |
142 |
import org.eclipse.jdt.internal.ui.fix.VariableDeclarationCleanUp; |
144 |
import org.eclipse.jdt.internal.ui.fix.VariableDeclarationCleanUp; |
143 |
import org.eclipse.jdt.internal.ui.javaeditor.JavaEditor; |
145 |
import org.eclipse.jdt.internal.ui.javaeditor.JavaEditor; |
144 |
import org.eclipse.jdt.internal.ui.text.correction.proposals.ASTRewriteCorrectionProposal; |
146 |
import org.eclipse.jdt.internal.ui.text.correction.proposals.ASTRewriteCorrectionProposal; |
Lines 201-206
Link Here
|
201 |
|| getConvertIterableLoopProposal(context, coveringNode, null) |
203 |
|| getConvertIterableLoopProposal(context, coveringNode, null) |
202 |
|| getRemoveBlockProposals(context, coveringNode, null) |
204 |
|| getRemoveBlockProposals(context, coveringNode, null) |
203 |
|| getMakeVariableDeclarationFinalProposals(context, null) |
205 |
|| getMakeVariableDeclarationFinalProposals(context, null) |
|
|
206 |
|| getSortModifiersProposals(context, null) |
204 |
|| getMissingCaseStatementProposals(context, coveringNode, null) |
207 |
|| getMissingCaseStatementProposals(context, coveringNode, null) |
205 |
|| getConvertStringConcatenationProposals(context, null); |
208 |
|| getConvertStringConcatenationProposals(context, null); |
206 |
} |
209 |
} |
Lines 239-244
Link Here
|
239 |
getConvertIterableLoopProposal(context, coveringNode, resultingCollections); |
242 |
getConvertIterableLoopProposal(context, coveringNode, resultingCollections); |
240 |
getRemoveBlockProposals(context, coveringNode, resultingCollections); |
243 |
getRemoveBlockProposals(context, coveringNode, resultingCollections); |
241 |
getMakeVariableDeclarationFinalProposals(context, resultingCollections); |
244 |
getMakeVariableDeclarationFinalProposals(context, resultingCollections); |
|
|
245 |
getSortModifiersProposals(context, resultingCollections); |
242 |
getConvertStringConcatenationProposals(context, resultingCollections); |
246 |
getConvertStringConcatenationProposals(context, resultingCollections); |
243 |
getMissingCaseStatementProposals(context, coveringNode, resultingCollections); |
247 |
getMissingCaseStatementProposals(context, coveringNode, resultingCollections); |
244 |
} |
248 |
} |
Lines 1872-1877
Link Here
|
1872 |
resultingCollections.add(proposal); |
1876 |
resultingCollections.add(proposal); |
1873 |
return true; |
1877 |
return true; |
1874 |
} |
1878 |
} |
|
|
1879 |
|
1880 |
private static boolean getSortModifiersProposals(IInvocationContext context, Collection resultingCollections) { |
1881 |
SelectionAnalyzer analyzer= new SelectionAnalyzer(Selection.createFromStartLength(context.getSelectionOffset(), context.getSelectionLength()), false); |
1882 |
context.getASTRoot().accept(analyzer); |
1883 |
ASTNode[] selectedNodes= analyzer.getSelectedNodes(); |
1884 |
if (selectedNodes.length == 0) |
1885 |
return false; |
1886 |
|
1887 |
IProposableFix fix= SortModifiersFix.createFix(context.getASTRoot(), selectedNodes); |
1888 |
if (fix == null) |
1889 |
return false; |
1890 |
|
1891 |
if (resultingCollections == null) |
1892 |
return true; |
1893 |
|
1894 |
Image image= JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_CHANGE); |
1895 |
Map options= new Hashtable(); |
1896 |
options.put(CleanUpConstants.VARIABLE_DECLARATIONS_SORT_MODIFIERS, CleanUpOptions.TRUE); |
1897 |
SortModifiersCleanUp cleanUp= new SortModifiersCleanUp(options); |
1898 |
FixCorrectionProposal proposal= new FixCorrectionProposal(fix, cleanUp, 5, image, context); |
1899 |
resultingCollections.add(proposal); |
1900 |
return true; |
1901 |
} |
1875 |
|
1902 |
|
1876 |
private static boolean getInlineLocalProposal(IInvocationContext context, final ASTNode node, Collection proposals) throws CoreException { |
1903 |
private static boolean getInlineLocalProposal(IInvocationContext context, final ASTNode node, Collection proposals) throws CoreException { |
1877 |
if (!(node instanceof SimpleName)) |
1904 |
if (!(node instanceof SimpleName)) |