diff options
Diffstat (limited to '.venv/lib/python3.12/site-packages/openpyxl/worksheet/pagebreak.py')
-rw-r--r-- | .venv/lib/python3.12/site-packages/openpyxl/worksheet/pagebreak.py | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/openpyxl/worksheet/pagebreak.py b/.venv/lib/python3.12/site-packages/openpyxl/worksheet/pagebreak.py new file mode 100644 index 00000000..ad50a321 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/openpyxl/worksheet/pagebreak.py @@ -0,0 +1,94 @@ +# Copyright (c) 2010-2024 openpyxl + +from openpyxl.descriptors.serialisable import Serialisable +from openpyxl.descriptors import ( + Integer, + Bool, + Sequence, +) + + +class Break(Serialisable): + + tagname = "brk" + + id = Integer(allow_none=True) + min = Integer(allow_none=True) + max = Integer(allow_none=True) + man = Bool(allow_none=True) + pt = Bool(allow_none=True) + + def __init__(self, + id=0, + min=0, + max=16383, + man=True, + pt=None, + ): + self.id = id + self.min = min + self.max = max + self.man = man + self.pt = pt + + +class RowBreak(Serialisable): + + tagname = "rowBreaks" + + count = Integer(allow_none=True) + manualBreakCount = Integer(allow_none=True) + brk = Sequence(expected_type=Break, allow_none=True) + + __elements__ = ('brk',) + __attrs__ = ("count", "manualBreakCount",) + + def __init__(self, + count=None, + manualBreakCount=None, + brk=(), + ): + self.brk = brk + + + def __bool__(self): + return len(self.brk) > 0 + + + def __len__(self): + return len(self.brk) + + + @property + def count(self): + return len(self) + + + @property + def manualBreakCount(self): + return len(self) + + + def append(self, brk=None): + """ + Add a page break + """ + vals = list(self.brk) + if not isinstance(brk, Break): + brk = Break(id=self.count+1) + vals.append(brk) + self.brk = vals + + +PageBreak = RowBreak + + +class ColBreak(RowBreak): + + tagname = "colBreaks" + + count = RowBreak.count + manualBreakCount = RowBreak.manualBreakCount + brk = RowBreak.brk + + __attrs__ = RowBreak.__attrs__ |