當前位置: 首頁>>代碼示例>>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;未經允許,請勿轉載。