scripts/kconfig/qconf.cc
Source file repositories/reference/linux-study-clean/scripts/kconfig/qconf.cc
File Facts
- System
- Linux kernel
- Corpus path
scripts/kconfig/qconf.cc- Extension
.cc- Size
- 43176 bytes
- Lines
- 1863
- Domain
- Support Tooling And Documentation
- Bucket
- scripts
- Inferred role
- Support Tooling And Documentation: scripts
- Status
- atlas-only
Why This File Exists
Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
- Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
QActionQActionGroupQApplicationQCloseEventQDebugQFileDialogQLabelQLayoutQListQMenuQMenuBarQMessageBoxQRegularExpressionQScreenQToolBarstdlib.hxalloc.hlkc.hqconf.h
Detected Declarations
function updateAllfunction fixup_rootmenufunction usagefunction main
Annotated Snippet
if (list->mode == singleMode) {
/* a menuconfig entry is displayed differently
* depending whether it's at the view root or a child.
*/
if (sym && list->rootEntry == menu)
break;
setIcon(promptColIdx, menuIcon);
} else {
if (sym)
break;
setIcon(promptColIdx, QIcon());
}
goto set_prompt;
case M_COMMENT:
setIcon(promptColIdx, QIcon());
prompt = "*** " + prompt + " ***";
goto set_prompt;
case M_CHOICE:
setIcon(promptColIdx, QIcon());
sym = sym_calc_choice(menu);
if (sym)
setText(dataColIdx, sym->name);
goto set_prompt;
default:
;
}
if (!sym)
goto set_prompt;
setText(nameColIdx, sym->name);
type = sym_get_type(sym);
switch (type) {
case S_BOOLEAN:
case S_TRISTATE:
char ch;
if (!sym_is_changeable(sym) && list->optMode == normalOpt) {
setIcon(promptColIdx, QIcon());
break;
}
expr = sym_get_tristate_value(sym);
switch (expr) {
case yes:
if (sym_is_choice_value(sym))
setIcon(promptColIdx, choiceYesIcon);
else
setIcon(promptColIdx, symbolYesIcon);
ch = 'Y';
break;
case mod:
setIcon(promptColIdx, symbolModIcon);
ch = 'M';
break;
default:
if (sym_is_choice_value(sym))
setIcon(promptColIdx, choiceNoIcon);
else
setIcon(promptColIdx, symbolNoIcon);
ch = 'N';
break;
}
setText(dataColIdx, QChar(ch));
break;
case S_INT:
case S_HEX:
case S_STRING:
setText(dataColIdx, sym_get_string_value(sym));
break;
Annotation
- Immediate include surface: `QAction`, `QActionGroup`, `QApplication`, `QCloseEvent`, `QDebug`, `QFileDialog`, `QLabel`, `QLayout`.
- Detected declarations: `function updateAll`, `function fixup_rootmenu`, `function usage`, `function main`.
- Atlas domain: Support Tooling And Documentation / scripts.
- Implementation status: atlas-only.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.