nsTextFrame::GetCursor(const nsPoint& aPoint, nsIFrame::Cursor& aCursor)
nsTextFrame::GetCursor(nsIPresContext* aPresContext, nsPoint& aPoint, PRInt32& aCursor)
nsTextFrame::GetCursor(const nsPoint& aPoint,                       nsIFrame::Cursor& aCursor){  FillCursorInformationFromStyle(GetStyleUserInterface(), aCursor);    if (NS_STYLE_CURSOR_AUTO == aCursor.mCursor) {    aCursor.mCursor = NS_STYLE_CURSOR_TEXT;    // If tabindex >= 0, use default cursor to indicate it's not selectable    nsIFrame *ancestorFrame = this;    while ((ancestorFrame = ancestorFrame->GetParent()) != nsnull) {      nsIContent *ancestorContent = ancestorFrame->GetContent();      if (ancestorContent && ancestorContent->HasAttr(kNameSpaceID_None, nsHTMLAtoms::tabindex)) {        nsAutoString tabIndexStr;        ancestorContent->GetAttr(kNameSpaceID_None, nsHTMLAtoms::tabindex, tabIndexStr);        if (!tabIndexStr.IsEmpty()) {          PRInt32 rv, tabIndexVal = tabIndexStr.ToInteger(&rv);          if (NS_SUCCEEDED(rv) && tabIndexVal >= 0) {            aCursor.mCursor = NS_STYLE_CURSOR_DEFAULT;            break;          }        }      }    }  }  return NS_OK;}