Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
catalogentry.cpp
Go to the documentation of this file.
1// Copyright (C) 2026 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
3
4#include "catalogentry.h"
5
7
8/*!
9 \struct IR::CatalogEntry
10 \internal
11 \brief A single entry in a catalog page such as the classes index,
12 the examples index, or a group's members table.
13
14 CatalogEntry carries the fields that legacy HtmlGenerator reads
15 when rendering an annotated-list row: the display name, the
16 pre-resolved link target, and a brief description. A since-version
17 stamp and a deprecation flag round out the shape so catalog
18 renderers can mark versioned or deprecated entries without
19 reaching back into Node state.
20
21 CatalogEntry is a QDocLib value type with no Node, Generator,
22 Config, or Tree dependencies. Driver-side extraction populates
23 it; the list-expander pass consumes it.
24
25 \sa CatalogEntryGroup
26*/
27
28/*!
29 \variable IR::CatalogEntry::name
30 Display name of the entry, as returned by node->fullName(relative)
31 at extraction time. The name is relative-aware: common prefixes
32 with the current page are stripped when the page context allows.
33*/
34
35/*!
36 \variable IR::CatalogEntry::href
37 Pre-resolved link target. Resolved by HrefResolver at extraction
38 time so catalog expansion avoids a second pass through the link
39 resolver. Empty when the entry is suppressed by the inclusion
40 policy.
41*/
42
43/*!
44 \variable IR::CatalogEntry::brief
45 Plain-text brief description. For code-backed nodes such as
46 classes, this comes from Doc::trimmedBriefText; for text pages
47 such as example index pages, it comes from
48 Node::reconstitutedBrief with a fallback to Doc::briefText. The
49 brief is flattened to text at extraction time because legacy
50 catalog rendering doesn't apply inline formatting within catalog
51 tables.
52*/
53
54/*!
55 \variable IR::CatalogEntry::since
56 The version string declared via \\since on the documented entity,
57 or empty when no since stamp is present.
58*/
59
60/*!
61 \variable IR::CatalogEntry::isDeprecated
62 True when the documented entity is marked deprecated. Catalog
63 renderers can use this to apply a strike-through style or to
64 filter the entry, matching whichever behavior the consuming
65 template prescribes.
66*/
67
68/*!
69 \struct IR::CatalogEntryGroup
70 \internal
71 \brief A labeled group of catalog entries, used by variants such
72 as \\generatelist annotatedexamples that partition their entries
73 by module or by category.
74
75 CatalogEntryGroup pairs a display label and an anchor identifier
76 with a list of entries. The list-expander pass emits one
77 SectionHeading plus one Table per group when rendering a grouped
78 catalog variant.
79
80 \sa CatalogEntry
81*/
82
83/*!
84 \variable IR::CatalogEntryGroup::label
85 Display label for the group. For the annotated-examples variant,
86 this is the owning module's index title; future grouped variants
87 may use a different grouping key.
88*/
89
90/*!
91 \variable IR::CatalogEntryGroup::anchorId
92 A slug derived from the label, suitable for use as an HTML anchor
93 and for cross-page navigation. Pre-computed at extraction time so
94 rendering stays free of text munging.
95*/
96
97/*!
98 \variable IR::CatalogEntryGroup::entries
99 The list of CatalogEntry values belonging to this group, already
100 sorted per the originating \\generatelist directive.
101*/
102
103QT_END_NAMESPACE
Combined button and popup list for selecting options.