public override bool IsAvailable(IUserDataHolder cache)
{
using (ReadLockCookie.Create())
{
if (Provider.SelectedElement != null)
{
_superType = TypeHelper.CreateTypeByCLRName(SuperTypeName, Provider.PsiModule, Provider.SelectedElement.GetResolveContext());
if (_superType.GetTypeElement() != null)
{
_classDeclaration = Provider.SelectedElement.Parent as IClassDeclaration;
}
}
}
// !_classDeclaration.IsStatic doesn't work, IsStatic is returns true
return _classDeclaration != null && !_classDeclaration.IsStaticEx() && _classDeclaration.SuperTypes.IsEmpty();
}