MCPcopy Create free account
hub / github.com/ProgerXP/Notepad2e / ContractionState

Class ContractionState

scintilla/src/ContractionState.h:17–62  ·  view source on GitHub ↗

*/

Source from the content-addressed store, hash-verified

15/**
16 */
17class 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
33public:
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}

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected