Moved methods for package-directory relation into IDEA
This commit is contained in:
@@ -187,8 +187,6 @@ public fun JetElement.getQualifiedElementSelector(): JetElement? {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public fun PsiDirectory.getPackage(): PsiPackage? = JavaDirectoryService.getInstance()!!.getPackage(this)
|
|
||||||
|
|
||||||
public fun JetModifierListOwner.isPrivate(): Boolean = hasModifier(JetTokens.PRIVATE_KEYWORD)
|
public fun JetModifierListOwner.isPrivate(): Boolean = hasModifier(JetTokens.PRIVATE_KEYWORD)
|
||||||
|
|
||||||
public fun JetSimpleNameExpression.getReceiverExpression(): JetExpression? {
|
public fun JetSimpleNameExpression.getReceiverExpression(): JetExpression? {
|
||||||
@@ -308,13 +306,6 @@ public inline fun <reified T : JetElement, R> flatMapDescendantsOfTypeVisitor(ac
|
|||||||
return forEachDescendantOfTypeVisitor<T> { accumulator.addAll(map(it)) }
|
return forEachDescendantOfTypeVisitor<T> { accumulator.addAll(map(it)) }
|
||||||
}
|
}
|
||||||
|
|
||||||
public fun PsiFile.getFqNameByDirectory(): FqName {
|
|
||||||
val qualifiedNameByDirectory = getParent()?.getPackage()?.getQualifiedName()
|
|
||||||
return qualifiedNameByDirectory?.let { FqName(it) } ?: FqName.ROOT
|
|
||||||
}
|
|
||||||
|
|
||||||
public fun JetFile.packageMatchesDirectory(): Boolean = getPackageFqName() == getFqNameByDirectory()
|
|
||||||
|
|
||||||
public fun JetAnnotationsContainer.collectAnnotationEntriesFromStubOrPsi(): List<JetAnnotationEntry> =
|
public fun JetAnnotationsContainer.collectAnnotationEntriesFromStubOrPsi(): List<JetAnnotationEntry> =
|
||||||
when (this) {
|
when (this) {
|
||||||
is StubBasedPsiElementBase<*> -> getStub()?.collectAnnotationEntriesFromStubElement() ?: collectAnnotationEntriesFromPsi()
|
is StubBasedPsiElementBase<*> -> getStub()?.collectAnnotationEntriesFromStubElement() ?: collectAnnotationEntriesFromPsi()
|
||||||
|
|||||||
@@ -0,0 +1,33 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2010-2015 JetBrains s.r.o.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.jetbrains.kotlin.idea.core
|
||||||
|
|
||||||
|
import com.intellij.psi.JavaDirectoryService
|
||||||
|
import com.intellij.psi.PsiDirectory
|
||||||
|
import com.intellij.psi.PsiFile
|
||||||
|
import com.intellij.psi.PsiPackage
|
||||||
|
import org.jetbrains.kotlin.name.FqName
|
||||||
|
import org.jetbrains.kotlin.psi.JetFile
|
||||||
|
|
||||||
|
public fun PsiDirectory.getPackage(): PsiPackage? = JavaDirectoryService.getInstance()!!.getPackage(this)
|
||||||
|
|
||||||
|
public fun PsiFile.getFqNameByDirectory(): FqName {
|
||||||
|
val qualifiedNameByDirectory = getParent()?.getPackage()?.getQualifiedName()
|
||||||
|
return qualifiedNameByDirectory?.let { FqName(it) } ?: FqName.ROOT
|
||||||
|
}
|
||||||
|
|
||||||
|
public fun JetFile.packageMatchesDirectory(): Boolean = getPackageFqName() == getFqNameByDirectory()
|
||||||
@@ -21,7 +21,7 @@ import com.intellij.openapi.roots.JavaProjectRootsUtil
|
|||||||
import com.intellij.psi.util.PsiTreeUtil
|
import com.intellij.psi.util.PsiTreeUtil
|
||||||
import com.intellij.refactoring.util.ConflictsUtil
|
import com.intellij.refactoring.util.ConflictsUtil
|
||||||
import com.intellij.psi.PsiFileFactory
|
import com.intellij.psi.PsiFileFactory
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.getPackage
|
import org.jetbrains.kotlin.idea.core.getPackage
|
||||||
import org.jetbrains.kotlin.idea.JetFileType
|
import org.jetbrains.kotlin.idea.JetFileType
|
||||||
import com.intellij.openapi.project.Project
|
import com.intellij.openapi.project.Project
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
|||||||
+2
-2
@@ -20,8 +20,8 @@ import com.intellij.openapi.editor.Editor
|
|||||||
import org.jetbrains.kotlin.idea.core.refactoring.canRefactor
|
import org.jetbrains.kotlin.idea.core.refactoring.canRefactor
|
||||||
import org.jetbrains.kotlin.idea.intentions.JetSelfTargetingOffsetIndependentIntention
|
import org.jetbrains.kotlin.idea.intentions.JetSelfTargetingOffsetIndependentIntention
|
||||||
import org.jetbrains.kotlin.psi.JetPackageDirective
|
import org.jetbrains.kotlin.psi.JetPackageDirective
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.getFqNameByDirectory
|
import org.jetbrains.kotlin.idea.core.getFqNameByDirectory
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.packageMatchesDirectory
|
import org.jetbrains.kotlin.idea.core.packageMatchesDirectory
|
||||||
|
|
||||||
public class ChangePackageToMatchDirectoryIntention : JetSelfTargetingOffsetIndependentIntention<JetPackageDirective>(
|
public class ChangePackageToMatchDirectoryIntention : JetSelfTargetingOffsetIndependentIntention<JetPackageDirective>(
|
||||||
javaClass(), "", "Change file's package to match directory"
|
javaClass(), "", "Change file's package to match directory"
|
||||||
|
|||||||
+1
-1
@@ -27,7 +27,7 @@ import com.intellij.refactoring.util.RefactoringMessageUtil
|
|||||||
import org.jetbrains.kotlin.idea.core.refactoring.canRefactor
|
import org.jetbrains.kotlin.idea.core.refactoring.canRefactor
|
||||||
import org.jetbrains.kotlin.idea.intentions.JetSelfTargetingOffsetIndependentIntention
|
import org.jetbrains.kotlin.idea.intentions.JetSelfTargetingOffsetIndependentIntention
|
||||||
import org.jetbrains.kotlin.psi.JetPackageDirective
|
import org.jetbrains.kotlin.psi.JetPackageDirective
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.packageMatchesDirectory
|
import org.jetbrains.kotlin.idea.core.packageMatchesDirectory
|
||||||
|
|
||||||
public class MoveFileToPackageMatchingDirectoryIntention : JetSelfTargetingOffsetIndependentIntention<JetPackageDirective>(
|
public class MoveFileToPackageMatchingDirectoryIntention : JetSelfTargetingOffsetIndependentIntention<JetPackageDirective>(
|
||||||
javaClass(), "", "Move file to package-matching directory"
|
javaClass(), "", "Move file to package-matching directory"
|
||||||
|
|||||||
+2
-2
@@ -36,8 +36,8 @@ import org.jetbrains.kotlin.idea.refactoring.move.updatePackageDirective
|
|||||||
import org.jetbrains.kotlin.name.FqName
|
import org.jetbrains.kotlin.name.FqName
|
||||||
import org.jetbrains.kotlin.psi.JetFile
|
import org.jetbrains.kotlin.psi.JetFile
|
||||||
import org.jetbrains.kotlin.psi.JetNamedDeclaration
|
import org.jetbrains.kotlin.psi.JetNamedDeclaration
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.getPackage
|
import org.jetbrains.kotlin.idea.core.getPackage
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.packageMatchesDirectory
|
import org.jetbrains.kotlin.idea.core.packageMatchesDirectory
|
||||||
|
|
||||||
public class MoveKotlinFileHandler : MoveFileHandler() {
|
public class MoveKotlinFileHandler : MoveFileHandler() {
|
||||||
private var packageNameInfo: PackageNameInfo? = null
|
private var packageNameInfo: PackageNameInfo? = null
|
||||||
|
|||||||
+1
-1
@@ -35,7 +35,7 @@ import org.jetbrains.kotlin.idea.core.refactoring.isInJavaSourceRoot
|
|||||||
import org.jetbrains.kotlin.idea.refactoring.move.moveFilesOrDirectories
|
import org.jetbrains.kotlin.idea.refactoring.move.moveFilesOrDirectories
|
||||||
import org.jetbrains.kotlin.idea.refactoring.move.moveTopLevelDeclarations.ui.MoveKotlinTopLevelDeclarationsDialog
|
import org.jetbrains.kotlin.idea.refactoring.move.moveTopLevelDeclarations.ui.MoveKotlinTopLevelDeclarationsDialog
|
||||||
import org.jetbrains.kotlin.psi.*
|
import org.jetbrains.kotlin.psi.*
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.getPackage
|
import org.jetbrains.kotlin.idea.core.getPackage
|
||||||
import java.util.HashSet
|
import java.util.HashSet
|
||||||
import java.util.LinkedHashSet
|
import java.util.LinkedHashSet
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -53,7 +53,7 @@ import org.jetbrains.kotlin.idea.search.projectScope
|
|||||||
import org.jetbrains.kotlin.psi.JetFile
|
import org.jetbrains.kotlin.psi.JetFile
|
||||||
import org.jetbrains.kotlin.psi.JetModifierListOwner
|
import org.jetbrains.kotlin.psi.JetModifierListOwner
|
||||||
import org.jetbrains.kotlin.psi.JetNamedDeclaration
|
import org.jetbrains.kotlin.psi.JetNamedDeclaration
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.getPackage
|
import org.jetbrains.kotlin.idea.core.getPackage
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.isAncestor
|
import org.jetbrains.kotlin.psi.psiUtil.isAncestor
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.isInsideOf
|
import org.jetbrains.kotlin.psi.psiUtil.isInsideOf
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.isPrivate
|
import org.jetbrains.kotlin.psi.psiUtil.isPrivate
|
||||||
|
|||||||
+1
-1
@@ -24,7 +24,7 @@ import com.intellij.ui.NonFocusableCheckBox
|
|||||||
import com.intellij.util.ui.UIUtil
|
import com.intellij.util.ui.UIUtil
|
||||||
import org.jetbrains.kotlin.idea.core.refactoring.isInJavaSourceRoot
|
import org.jetbrains.kotlin.idea.core.refactoring.isInJavaSourceRoot
|
||||||
import org.jetbrains.kotlin.psi.JetFile
|
import org.jetbrains.kotlin.psi.JetFile
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.packageMatchesDirectory
|
import org.jetbrains.kotlin.idea.core.packageMatchesDirectory
|
||||||
import java.awt.GridBagConstraints
|
import java.awt.GridBagConstraints
|
||||||
import java.awt.Insets
|
import java.awt.Insets
|
||||||
import javax.swing.JCheckBox
|
import javax.swing.JCheckBox
|
||||||
|
|||||||
Reference in New Issue
Block a user