class members refactoring refactoring
[fedora-idea.git] / lang-api / src / com / intellij / refactoring / classMembers / MemberInfoModel.java
blob8f99501e44bf29d7d61b3e17af7474898ac2aadc
1 /*
2 * Created by IntelliJ IDEA.
3 * User: dsl
4 * Date: 09.07.2002
5 * Time: 14:58:46
6 * To change template for new class use
7 * Code Style | Class Templates options (Tools | IDE Options).
8 */
9 package com.intellij.refactoring.classMembers;
11 import com.intellij.psi.PsiElement;
12 import org.jetbrains.annotations.NotNull;
15 public interface MemberInfoModel<T extends PsiElement, M extends MemberInfoBase<T>> extends MemberInfoChangeListener<T, M> {
16 int OK = 0;
17 int WARNING = 1;
18 int ERROR = 2;
20 boolean isMemberEnabled(M member);
22 boolean isCheckedWhenDisabled(M member);
24 boolean isAbstractEnabled(M member);
26 boolean isAbstractWhenDisabled(M member);
28 /**
29 * Returns state of abstract checkbox for particular abstract member.
30 * @param member MemberInfo for an ABSTRACT member
31 * @return TRUE if fixed and true, FALSE if fixed and false, null if dont care
33 Boolean isFixedAbstract(M member);
35 int checkForProblems(@NotNull M member);
37 String getTooltipText(M member);