*/
| 15 | /** |
| 16 | */ |
| 17 | class ContractionState { |
| 18 | // These contain 1 element for every document line. |
| 19 | RunStyles *visible; |
| 20 | RunStyles *expanded; |
| 21 | RunStyles *heights; |
| 22 | Partitioning *displayLines; |
| 23 | int linesInDocument; |
| 24 | |
| 25 | void EnsureData(); |
| 26 | |
| 27 | bool OneToOne() const { |
| 28 | // True when each document line is exactly one display line so need for |
| 29 | // complex data structures. |
| 30 | return visible == 0; |
| 31 | } |
| 32 | |
| 33 | public: |
| 34 | ContractionState(); |
| 35 | virtual ~ContractionState(); |
| 36 | |
| 37 | void Clear(); |
| 38 | |
| 39 | int LinesInDoc() const; |
| 40 | int LinesDisplayed() const; |
| 41 | int DisplayFromDoc(int lineDoc) const; |
| 42 | int DocFromDisplay(int lineDisplay) const; |
| 43 | |
| 44 | void InsertLine(int lineDoc); |
| 45 | void InsertLines(int lineDoc, int lineCount); |
| 46 | void DeleteLine(int lineDoc); |
| 47 | void DeleteLines(int lineDoc, int lineCount); |
| 48 | |
| 49 | bool GetVisible(int lineDoc) const; |
| 50 | bool SetVisible(int lineDocStart, int lineDocEnd, bool visible); |
| 51 | bool HiddenLines() const; |
| 52 | |
| 53 | bool GetExpanded(int lineDoc) const; |
| 54 | bool SetExpanded(int lineDoc, bool expanded); |
| 55 | int ContractedNext(int lineDocStart) const; |
| 56 | |
| 57 | int GetHeight(int lineDoc) const; |
| 58 | bool SetHeight(int lineDoc, int height); |
| 59 | |
| 60 | void ShowAll(); |
| 61 | void Check() const; |
| 62 | }; |
| 63 | |
| 64 | #ifdef SCI_NAMESPACE |
| 65 | } |
nothing calls this directly
no outgoing calls
no test coverage detected