hyperlink.py 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. from openpyxl.descriptors.serialisable import Serialisable
  2. from openpyxl.descriptors import (
  3. String,
  4. Sequence,
  5. )
  6. from openpyxl.descriptors.excel import Relation
  7. class Hyperlink(Serialisable):
  8. tagname = "hyperlink"
  9. ref = String()
  10. location = String(allow_none=True)
  11. tooltip = String(allow_none=True)
  12. display = String(allow_none=True)
  13. id = Relation()
  14. target = String(allow_none=True)
  15. __attrs__ = ("ref", "location", "tooltip", "display", "id")
  16. def __init__(self,
  17. ref=None,
  18. location=None,
  19. tooltip=None,
  20. display=None,
  21. id=None,
  22. target=None,
  23. ):
  24. self.ref = ref
  25. self.location = location
  26. self.tooltip = tooltip
  27. self.display = display
  28. self.id = id
  29. self.target = target
  30. class HyperlinkList(Serialisable):
  31. tagname = "hyperlinks"
  32. __expected_type = Hyperlink
  33. hyperlink = Sequence(expected_type=__expected_type)
  34. def __init__(self, hyperlink=()):
  35. self.hyperlink = hyperlink