Lookup XML attribute using the property (for a particular layout)
This commit is contained in:
+2
-1
@@ -21,7 +21,8 @@ import com.intellij.openapi.util.Key
|
||||
public object AndroidConst {
|
||||
val ANDROID_USER_PACKAGE: Key<String> = Key.create<String>("ANDROID_USER_PACKAGE")
|
||||
val SYNTHETIC_FILENAME: String = "ANDROIDXML"
|
||||
val SYNTHETIC_PACKAGE: String = "kotlinx.android.synthetic."
|
||||
val SYNTHETIC_PACKAGE: String = "kotlinx.android.synthetic"
|
||||
val SYNTHETIC_PACKAGE_PATH_LENGTH = SYNTHETIC_PACKAGE.count { it == '.' } + 1
|
||||
|
||||
val ANDROID_NAMESPACE: String = "android"
|
||||
val ID_ATTRIBUTE_NO_NAMESPACE: String = "id"
|
||||
|
||||
+2
-1
@@ -26,12 +26,13 @@ import com.intellij.openapi.vfs.*
|
||||
import com.intellij.openapi.components.*
|
||||
import com.intellij.openapi.extensions.*
|
||||
import com.intellij.openapi.module.*
|
||||
import org.jetbrains.kotlin.psi.JetProperty
|
||||
|
||||
public abstract class AndroidResourceManager(val project: Project) {
|
||||
|
||||
public abstract val androidModuleInfo: AndroidModuleInfo?
|
||||
|
||||
public open fun idToXmlAttribute(id: String): PsiElement? = null
|
||||
public open fun propertyToXmlAttribute(property: JetProperty): PsiElement? = null
|
||||
|
||||
public fun getLayoutXmlFiles(): Map<String, List<PsiFile>> {
|
||||
val info = androidModuleInfo
|
||||
|
||||
+2
-2
@@ -84,7 +84,7 @@ public abstract class AndroidUIXmlProcessor(protected val project: Project) {
|
||||
|
||||
public fun parse(generateCommonFiles: Boolean = true): List<String> {
|
||||
val commonFiles = if (generateCommonFiles) {
|
||||
val clearCacheFile = renderLayoutFile("kotlinx.android.synthetic") {} +
|
||||
val clearCacheFile = renderLayoutFile(AndroidConst.SYNTHETIC_PACKAGE) {} +
|
||||
renderClearCacheFunction("Activity") + renderClearCacheFunction("Fragment")
|
||||
listOf(clearCacheFile, FLEXIBLE_TYPE_FILE)
|
||||
} else listOf()
|
||||
@@ -132,7 +132,7 @@ public abstract class AndroidUIXmlProcessor(protected val project: Project) {
|
||||
}
|
||||
|
||||
private fun PsiFile.genSyntheticPackageName(): String {
|
||||
return AndroidConst.SYNTHETIC_PACKAGE + getName().substringBefore('.')
|
||||
return AndroidConst.SYNTHETIC_PACKAGE + "." + getName().substringBefore('.')
|
||||
}
|
||||
|
||||
private fun KotlinStringWriter.writeSyntheticProperty(receiver: String, widget: AndroidWidget, stubCall: String) {
|
||||
|
||||
Reference in New Issue
Block a user