def getToolTip(self, tvRowId, tvColId):
        # override tool tip when appropriate
        if tvColId == "#7":  # footnote column
            try:
                modelFact = self.modelXbrl.modelObject(tvRowId) # this is a fact object
                footnoteRels = self.footnotesRelationshipSet.fromModelObject(modelFact)
                if footnoteRels:
                    fns = []
                    for i, footnoteRel in enumerate(footnoteRels):
                        modelObject = footnoteRel.toModelObject
                        if isinstance(modelObject, ModelResource):
                            fns.append("Footnote {}: {}".format(
                               i+1,
                               modelObject.stringValue))
                        elif isinstance(modelObject, ModelFact):
                            fns.append("Footnoted fact {}: {} context: {} value: {}".format(
                                i+1,
                                modelObject.qname,
                                modelObject.contextID,
                                modelObject.value))
                    return "\n".join(fns)
                else:
                    return None
            except (AttributeError, __HOLE__):
                pass
        return None
dataset/ETHPy150Open Arelle/Arelle/arelle/ViewWinFactList.py/ViewFactList.getToolTip