Examples of DartClass


Examples of com.jetbrains.lang.dart.psi.DartClass

    invoke(project, editor, file, editor.getCaretModel().getOffset());
  }

  public void invoke(Project project, Editor editor, PsiFile file, int offset) {
    if (!FileModificationService.getInstance().prepareFileForWrite(file)) return;
    final DartClass dartClass =
      PsiTreeUtil.getParentOfType(file.findElementAt(offset), DartClassDefinition.class);
    if (dartClass == null) return;

    final List<DartComponent> candidates = new ArrayList<DartComponent>();
    collectCandidates(dartClass, candidates);
View Full Code Here

Examples of com.jetbrains.lang.dart.psi.DartClass

          }
          else if (DartComponentType.typeOf(dartComponent) == DartComponentType.METHOD) {
            final String nameToFind = dartComponent.getName();
            if (nameToFind == null) return true;

            DartClass dartClass = PsiTreeUtil.getParentOfType(dartComponent, DartClass.class);
            assert dartClass != null;

            processInheritors(dartClass, queryParameters, new Processor<PsiElement>() {
              @Override
              public boolean process(PsiElement element) {
View Full Code Here

Examples of com.jetbrains.lang.dart.psi.DartClass

    private static boolean processInheritors(final DartClass dartClass, final PsiElement context, final Processor<PsiElement> consumer) {
      final Set<DartClass> classSet = new THashSet<DartClass>();
      final LinkedList<DartClass> namesQueue = new LinkedList<DartClass>();
      namesQueue.add(dartClass);
      while (!namesQueue.isEmpty()) {
        final DartClass currentClass = namesQueue.pollFirst();
        final String currentClassName = currentClass.getName();
        if (currentClassName == null || !classSet.add(currentClass)) {
          continue;
        }
        final Collection<VirtualFile> files =
          FileBasedIndex.getInstance()
View Full Code Here

Examples of com.jetbrains.lang.dart.psi.DartClass

    if (!(element instanceof DartComponentName)) {
      return null;
    }
    final PsiElement parent = element.getParent();
    if (DartComponentType.typeOf(parent) == DartComponentType.METHOD) {
      final DartClass dartClass = PsiTreeUtil.getParentOfType(element, DartClass.class);
      return dartClass == null ? null : createOverrideMarker(dartClass, (DartComponent)parent);
    }
    return null;
  }
View Full Code Here

Examples of com.jetbrains.lang.dart.psi.DartClass

      icon,
      Pass.UPDATE_ALL,
      new Function<PsiElement, String>() {
        @Override
        public String fun(PsiElement element) {
          final DartClass superDartClass = PsiTreeUtil.getParentOfType(methodDeclaration, DartClass.class);
          if (superDartClass == null) return "null";
          if (overrides) {
            return DartBundle.message("overrides.method.in", methodDeclaration.getName(), superDartClass.getName());
          }
          return DartBundle.message("implements.method.in", methodDeclaration.getName(), superDartClass.getName());
        }
      },
      new GutterIconNavigationHandler<PsiElement>() {
        @Override
        public void navigate(MouseEvent e, PsiElement elt) {
View Full Code Here

Examples of com.jetbrains.lang.dart.psi.DartClass

            allRenames.put(constructor.getComponentName(), newName);
          }
        }
      }
      else if (parent instanceof DartComponent) {
        final DartClass dartClass = PsiTreeUtil.getParentOfType(parent, DartClass.class, true);
        final String componentName = ((DartComponent)parent).getName();
        if (componentName != null && dartClass != null && componentName.equals(dartClass.getName())) {
          allRenames.put(dartClass.getComponentName(), newName);
        }
        DefinitionsSearch.search(((DartComponent)parent).getComponentName()).forEach(new Processor<PsiElement>() {
          @Override
          public boolean process(PsiElement element) {
            if (element instanceof DartComponent) {
View Full Code Here

Examples of com.jetbrains.lang.dart.psi.DartClass

  @Override
  public PsiElement substituteElementToRename(@NotNull final PsiElement element,
                                              @NotNull Editor editor) {
    final PsiElement parent = element.getParent();
    if (parent instanceof DartComponent && DartComponentType.typeOf(parent) == DartComponentType.METHOD) {
      final DartClass dartClass = PsiTreeUtil.getParentOfType(parent, DartClass.class, true);
      final DartComponent superMethod = ContainerUtil.find(
        DartResolveUtil.findNamedSuperComponents(dartClass),
        new Condition<DartComponent>() {
          @Override
          public boolean value(DartComponent component) {
View Full Code Here

Examples of com.jetbrains.lang.dart.psi.DartClass

  public final DartClass getDartClass() {
    return (myElement instanceof DartClass) ? (DartClass)myElement : null;
  }

  public final boolean isValid() {
    final DartClass dartClass = getDartClass();
    return dartClass != null && dartClass.isValid();
  }
View Full Code Here

Examples of com.jetbrains.lang.dart.psi.DartClass

  }

  public final boolean update() {
    boolean changes = super.update();

    final DartClass dartClass = getDartClass();

    if (dartClass == null) {
      final String invalidPrefix = IdeBundle.message("node.hierarchy.invalid");
      if (!myHighlightedText.getText().startsWith(invalidPrefix)) {
        myHighlightedText.getBeginning().addText(invalidPrefix, HierarchyNodeDescriptor.getInvalidPrefixAttributes());
      }
      return true;
    }

    if (changes && myIsBase) {
      final LayeredIcon icon = new LayeredIcon(2);
      icon.setIcon(getIcon(), 0);
      icon.setIcon(AllIcons.Hierarchy.Base, 1, -AllIcons.Hierarchy.Base.getIconWidth() / 2, 0);
      setIcon(icon);
    }

    final CompositeAppearance oldText = myHighlightedText;

    myHighlightedText = new CompositeAppearance();

    TextAttributes classNameAttributes = null;
    if (myColor != null) {
      classNameAttributes = new TextAttributes(myColor, null, null, null, Font.PLAIN);
    }

    final String libraryName = DartResolveUtil.getLibraryName(dartClass.getContainingFile());
    myHighlightedText.getEnding().addText(dartClass.getName(), classNameAttributes);
    myHighlightedText.getEnding().addText(" (" + libraryName + ")", HierarchyNodeDescriptor.getPackageNameAttributes());
    myName = myHighlightedText.getText();

    if (!Comparing.equal(myHighlightedText, oldText)) {
      changes = true;
View Full Code Here

Examples of com.jetbrains.lang.dart.psi.DartClass

    super(project, new DartTypeHierarchyNodeDescriptor(project, null, dartClass, true));
  }

  @NotNull
  protected final Object[] buildChildren(@NotNull final HierarchyNodeDescriptor descriptor) {
    final DartClass dartClass = ((DartTypeHierarchyNodeDescriptor)descriptor).getDartClass();
    if (dartClass == null) {
      return ArrayUtil.EMPTY_OBJECT_ARRAY;
    }

    final List<DartClass> supers = new ArrayList<DartClass>();
    final DartType superClass = dartClass.getSuperClass();
    // looks like there's no sense in jumping to Object class
    if (superClass != null && !DartResolveUtil.OBJECT.equals(superClass.getName())) {
      final DartClassResolveResult dartClassResolveResult = DartResolveUtil.resolveClassByType(superClass);
      if (dartClassResolveResult.getDartClass() != null) {
        supers.add(dartClassResolveResult.getDartClass());
      }
    }

    List<DartClassResolveResult> implementsAndMixinsList =
      DartResolveUtil.resolveClassesByTypes(DartResolveUtil.getImplementsAndMixinsList(dartClass));
    for (DartClassResolveResult resolveResult : implementsAndMixinsList) {
      final DartClass resolveResultDartClass = resolveResult.getDartClass();
      if (resolveResultDartClass != null) {
        supers.add(resolveResultDartClass);
      }
    }

    if(supers.size() == 0) {
      final DartClassResolveResult dartClassResolveResult = dartClass.getSuperClassResolvedOrObjectClass();
      if(dartClassResolveResult != null) {
        final DartClass superDartClass = dartClassResolveResult.getDartClass();
        if (superDartClass != null && superDartClass.getName().equals(DartResolveUtil.OBJECT)) {
          supers.add(superDartClass);
        }
      }
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.