当前位置: 首页>>代码示例>>Java>>正文


Java DomElementXmlDescriptor类代码示例

本文整理汇总了Java中com.intellij.xml.impl.dom.DomElementXmlDescriptor的典型用法代码示例。如果您正苦于以下问题:Java DomElementXmlDescriptor类的具体用法?Java DomElementXmlDescriptor怎么用?Java DomElementXmlDescriptor使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


DomElementXmlDescriptor类属于com.intellij.xml.impl.dom包,在下文中一共展示了DomElementXmlDescriptor类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getDescriptor

import com.intellij.xml.impl.dom.DomElementXmlDescriptor; //导入依赖的package包/类
@Override
@Nullable
public XmlElementDescriptor getDescriptor(final XmlTag tag) {
  Project project = tag.getProject();
  if (project.isDefault()) return null;
  
  final DomInvocationHandler<?,?> handler = DomManagerImpl.getDomManager(project).getDomHandler(tag);
  if (handler != null) {
    final DefinesXml definesXml = handler.getAnnotation(DefinesXml.class);
    if (definesXml != null) {
      return new DomElementXmlDescriptor(handler);
    }
    final PsiElement parent = tag.getParent();
    if (parent instanceof XmlTag) {
      final XmlElementDescriptor descriptor = ((XmlTag)parent).getDescriptor();

      if (descriptor instanceof DomElementXmlDescriptor) {
        return descriptor.getElementDescriptor(tag, (XmlTag)parent);
      }
    }
  }

  return null;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:25,代码来源:DomDescriptorProvider.java

示例2: getDescriptor

import com.intellij.xml.impl.dom.DomElementXmlDescriptor; //导入依赖的package包/类
@Nullable
public XmlElementDescriptor getDescriptor(final XmlTag tag) {
  Project project = tag.getProject();
  if (project.isDefault()) return null;
  final DomElement domElement = DomManager.getDomManager(project).getDomElement(tag);
  if (domElement != null) {
    final DefinesXml definesXml = domElement.getAnnotation(DefinesXml.class);
    if (definesXml != null) {
      return new DomElementXmlDescriptor(domElement);
    }
    final PsiElement parent = tag.getParent();
    if (parent instanceof XmlTag) {
      final XmlElementDescriptor descriptor = ((XmlTag)parent).getDescriptor();

      if (descriptor instanceof DomElementXmlDescriptor) {
        return descriptor.getElementDescriptor(tag, (XmlTag)parent);
      }
    }
  }

  return null;
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:23,代码来源:DomDescriptorProvider.java

示例3: getDescriptor

import com.intellij.xml.impl.dom.DomElementXmlDescriptor; //导入依赖的package包/类
@Nullable
private static XmlElementDescriptor getDescriptor(DomElement domElement, XmlTag tag, @Nullable String baseClassName) {
  AndroidFacet facet = AndroidFacet.getInstance(domElement);
  if (facet == null) return null;
  final String name = domElement.getXmlTag().getName();
  final PsiClass aClass = baseClassName != null
                          ? SimpleClassMapConstructor.findClassByTagName(facet, name, baseClassName)
                          : null;
  final Icon icon = getIconForTag(name, domElement);

  final DefinesXml definesXml = domElement.getAnnotation(DefinesXml.class);
  if (definesXml != null) {
    return new AndroidXmlTagDescriptor(aClass, new DomElementXmlDescriptor(domElement), baseClassName, icon);
  }
  final PsiElement parent = tag.getParent();
  if (parent instanceof XmlTag) {
    final XmlElementDescriptor parentDescriptor = ((XmlTag)parent).getDescriptor();

    if (parentDescriptor != null && parentDescriptor instanceof AndroidXmlTagDescriptor) {
      XmlElementDescriptor domDescriptor = parentDescriptor.getElementDescriptor(tag, (XmlTag)parent);
      if (domDescriptor != null) {
        return new AndroidXmlTagDescriptor(aClass, domDescriptor, baseClassName, icon);
      }
    }
  }
  return null;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:28,代码来源:AndroidDomElementDescriptorProvider.java


注:本文中的com.intellij.xml.impl.dom.DomElementXmlDescriptor类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。