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


Java FormReferenceProvider类代码示例

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


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

示例1: buildVisitor

import com.intellij.uiDesigner.binding.FormReferenceProvider; //导入依赖的package包/类
@NotNull
public PsiElementVisitor buildVisitor(@NotNull final ProblemsHolder holder, boolean isOnTheFly) {
  return new JavaElementVisitor() {
    @Override
    public void visitAssignmentExpression(PsiAssignmentExpression expression) {
      PsiExpression lExpression = expression.getLExpression();
      if (lExpression instanceof PsiReferenceExpression) {
        PsiReferenceExpression lExpr = (PsiReferenceExpression)lExpression;
        PsiElement lElement = lExpr.resolve();
        if (!(lElement instanceof PsiField)) {
          return;
        }
        PsiField field = (PsiField) lElement;
        PsiReference formReference = FormReferenceProvider.getFormReference(field);
        if (!(formReference instanceof FieldFormReference)) {
          return;
        }
        FieldFormReference ref = (FieldFormReference) formReference;
        if (ref.isCustomCreate()) {
          return;
        }

        PsiMethod method = PsiTreeUtil.getParentOfType(expression, PsiMethod.class);
        if (method != null && AsmCodeGenerator.SETUP_METHOD_NAME.equals(method.getName())) {
          return;
        }
        holder.registerProblem(expression, UIDesignerBundle.message("inspection.bound.field.message"));
      }
    }
  };
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:32,代码来源:BoundFieldAssignmentInspection.java

示例2: buildVisitor

import com.intellij.uiDesigner.binding.FormReferenceProvider; //导入依赖的package包/类
@NotNull
public PsiElementVisitor buildVisitor(@NotNull final ProblemsHolder holder, boolean isOnTheFly) {
  return new JavaElementVisitor() {
    @Override
    public void visitAssignmentExpression(PsiAssignmentExpression expression) {
      if (expression.getLExpression() instanceof PsiReferenceExpression) {
        PsiMethod method = PsiTreeUtil.getParentOfType(expression, PsiMethod.class);
        if (method != null && AsmCodeGenerator.SETUP_METHOD_NAME.equals(method.getName())) {
          return;
        }
        PsiReferenceExpression lExpr = (PsiReferenceExpression) expression.getLExpression();
        PsiElement lElement = lExpr.resolve();
        if (lElement instanceof PsiField) {
          PsiField field = (PsiField) lElement;
          PsiReference formReference = FormReferenceProvider.getFormReference(field);
          if (formReference instanceof FieldFormReference) {
            FieldFormReference ref = (FieldFormReference) formReference;
            if (!ref.isCustomCreate()) {
              holder.registerProblem(expression, UIDesignerBundle.message("inspection.bound.field.message"),
                                     new LocalQuickFix[0]);
            }
          }
        }
      }
    }
  };
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:28,代码来源:BoundFieldAssignmentInspection.java


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