aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/doc/src/internal/textEdit.dot
blob: 19986bcc218354bbc33e49b0714f77a1c569d02b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
digraph G {
    node [
        shape=record
    ]

    textedit[label="ℚTextEdit"]
    texteditpriv[label="ℚTextEditPrivate"]
    texteditextra[label="{ℚTextEditPrivate::ExtraData|padding...}"]
    textctrl[label="ℚTextControl"]
    qqpxm[label="ℚPixmap"]

    subgraph cluster_1 {
        label = "swappable document"
        color=green

        doc[label="QTextDocument"]
        docpriv[label="QTextDocumentPrivate"]
        doclayout[label="QTextDocumentLayout"]
        qqtih[label="{ℚTextImageHandler||QSizeF intrinsicSize(doc, pos, format)}"]

        doc -> docpriv [arrowtail=diamond, dir=back];
        doc -> doclayout[arrowhead=vee, label="creates lazily", style="dotted", color="blue"]
    }

    subgraph cluster_2 {
        label = "lazily constructed"
        color=grey

        qqdoc[label="{ℚTextDocument||textDocument()\nsetTextDocument()}"]
        qqdocpriv[label="ℚTextDocumentPrivate"]

        qqdoc -> qqdocpriv[arrowtail=diamond, dir=back]
    }

    textedit -> texteditpriv[arrowtail=diamond, dir=back]
    texteditpriv -> texteditextra[arrowtail=diamond, dir=back]
    texteditpriv -> doc[arrowtail=odiamond, dir=back]
    texteditpriv -> qqdoc[arrowtail=odiamond, dir=back]
    texteditpriv -> textctrl[arrowtail=diamond, dir=back]
    texteditpriv -> qqpxm[arrowtail=diamond, dir=back, headlabel = "n", label="pixmapsInProgress"]
    texteditpriv -> qqtih[arrowhead=vee, label="creates", style="dotted", color="blue"]
    texteditpriv -> qqdoc[arrowhead=vee, label="creates", style="dotted", color="blue"]
    texteditpriv -> doc[arrowhead=vee, label="creates", style="dotted", color="blue"]
    textedit -> qqpxm[arrowhead=vee, label="creates", style="dotted", color="blue"]
    qqtih -> doc[arrowhead=vee, label="parent", style="dashed"]
    doc -> textedit[arrowhead=vee, label="parent", style="dashed"]
    qqdoc -> textedit[arrowhead=vee, label="parent", style="dashed"]
    doclayout -> doc[arrowhead=vee, label="parent", style="dashed"]
    docpriv -> doclayout[arrowtail=diamond, dir=back]
    doclayout -> qqtih[arrowtail=odiamond, dir=back, label="registered handler", style="dashed"]  # storage is complex
    qqdocpriv -> doc[arrowtail=odiamond, dir=back, taillabel="QPointer"]
}