views.py 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. # Copyright (c) 2010-2024 openpyxl
  2. from openpyxl.descriptors import (
  3. Bool,
  4. Integer,
  5. Typed,
  6. Sequence
  7. )
  8. from openpyxl.descriptors.excel import ExtensionList
  9. from openpyxl.descriptors.serialisable import Serialisable
  10. class ChartsheetView(Serialisable):
  11. tagname = "sheetView"
  12. tabSelected = Bool(allow_none=True)
  13. zoomScale = Integer(allow_none=True)
  14. workbookViewId = Integer()
  15. zoomToFit = Bool(allow_none=True)
  16. extLst = Typed(expected_type=ExtensionList, allow_none=True)
  17. __elements__ = ()
  18. def __init__(self,
  19. tabSelected=None,
  20. zoomScale=None,
  21. workbookViewId=0,
  22. zoomToFit=True,
  23. extLst=None,
  24. ):
  25. self.tabSelected = tabSelected
  26. self.zoomScale = zoomScale
  27. self.workbookViewId = workbookViewId
  28. self.zoomToFit = zoomToFit
  29. class ChartsheetViewList(Serialisable):
  30. tagname = "sheetViews"
  31. sheetView = Sequence(expected_type=ChartsheetView, )
  32. extLst = Typed(expected_type=ExtensionList, allow_none=True)
  33. __elements__ = ('sheetView',)
  34. def __init__(self,
  35. sheetView=None,
  36. extLst=None,
  37. ):
  38. if sheetView is None:
  39. sheetView = [ChartsheetView()]
  40. self.sheetView = sheetView