Skip to content

Latest commit

 

History

History
161 lines (153 loc) · 18.5 KB

coverage.md

File metadata and controls

161 lines (153 loc) · 18.5 KB
title ckVision Documentation Coverage
author C. Klukas
date 2026-08-09
format report
description Machine-checked traceability from every public widget header to client documentation and evidence.

Documentation coverage

This matrix is deliberately checked by doc_widget_coverage. It maps every public widget header to the client guide, a real example, generated screenshot, and executable test family. Screenshots are generated, not committed artwork.

Most Screenshot entries now name a widget-* figure: a focused cut-out of the widget, written by tools/docgen/capture_widget_shots from a scene in tools/docgen/widget_shots_*.cpp. Those scenes are compiled examples in their own right — the widget gallery quotes each one as that widget's usage sample — which is why they appear in the Compiled example column as widget_shots.

Public header Client guide Compiled example Screenshot Test family
include/cvision/widgets/application_shell.hpp Hello hello hello-initial test_hello_golden
include/cvision/widgets/big_clock.hpp Gallery widget_shots widget-bigclockview test_big_clock
include/cvision/widgets/button.hpp Gallery forms/widget_shots widget-button test_widgets, test_forms_smoke
include/cvision/widgets/canvas.hpp Graphics graphics/widget_shots widget-canvas/widget-canvas-no-graphics test_graphics_smoke
include/cvision/widgets/combo_box.hpp Gallery forms/workbench/widget_shots widget-combobox/widget-combobox-open test_combo_box
include/cvision/widgets/command_presentation.hpp Commands hello/widget_shots widget-toolbar/hello-menu-open test_command
include/cvision/widgets/common_components.hpp Gallery forms/workbench/widget_shots widget-calendarview/widget-clockview/widget-wizard/widget-notificationcenter/widget-tooltip test_common_components, test_tooltip_controller
include/cvision/widgets/desktop.hpp Object model gallery/widget_shots widget-desktop test_desktop
include/cvision/widgets/dialog.hpp Dialogs forms/widget_shots widget-dialogdescriptor test_dialog
include/cvision/widgets/dialog_presentation.hpp Dialogs forms/widget_shots widget-messagebox test_dialog_presentation
include/cvision/widgets/date_time_dialog.hpp Dialogs widget_shots widget-datedialog/widget-timedialog test_date_time_dialog
include/cvision/widgets/directory_picker.hpp Platform services forms/widget_shots widget-directorypicker test_directory_picker
include/cvision/widgets/editor_document.hpp Editor editor/widget_shots widget-texteditor/editor-initial test_editor_document
include/cvision/widgets/editor_search.hpp Editor editor/widget_shots widget-texteditor/editor-search test_editor_search
include/cvision/widgets/editor_window.hpp Editor editor/widget_shots widget-editorwindow/editor-close-confirm test_editor_window
include/cvision/widgets/file_editor_controller.hpp Editor editor editor-initial/editor-close-confirm test_file_editor_controller
include/cvision/widgets/file_dialog.hpp Platform services filebrowser/widget_shots widget-filedialog test_file_dialog
include/cvision/widgets/flow_view.hpp Flow content workbench/widget_shots widget-flowview test_flow_view, test_workbench_smoke
include/cvision/widgets/help_viewer.hpp Dialogs forms/widget_shots widget-helpviewer test_help_viewer
include/cvision/widgets/image_view.hpp Graphics graphics/widget_shots widget-imageview/graphics-no-graphics-image test_graphics_smoke
include/cvision/widgets/input_presentation.hpp Gallery forms/widget_shots InputLine/ComboBox/SearchBox appearance variants test_widgets, test_combo_box, test_common_components
include/cvision/widgets/input_presentation_internal.hpp internal field paint support forms/widget_shots InputLine/ComboBox appearance variants test_widgets, test_combo_box
include/cvision/widgets/input_line.hpp Gallery forms/widget_shots widget-inputline test_widgets
include/cvision/widgets/key_chord_capture.hpp Gallery workbench/widget_shots widget-keychordcapture test_key_chord_capture, test_workbench_smoke
include/cvision/widgets/frame_text.hpp Gallery widget_shots, EditorWindow widget-frametext test_frame_text
include/cvision/widgets/label.hpp Gallery layouts/widget_shots widget-label test_widgets
include/cvision/widgets/list_view.hpp Data views filebrowser/widget_shots widget-listview test_list_view
include/cvision/widgets/memo.hpp Gallery workbench/widget_shots widget-memo test_memo
include/cvision/widgets/menu.hpp Hello hello/widget_shots widget-menubar/widget-menubar-overflow/widget-dropdownmenu test_menu
include/cvision/widgets/message_box.hpp Dialogs hello/forms/widget_shots widget-messagebox test_message_box
include/cvision/widgets/mnemonic.hpp Gallery forms/widget_shots widget-label/widget-checkgroup/widget-radiogroup test_mnemonic
include/cvision/widgets/mnemonic_internal.hpp internal mnemonic paint support forms/hello/widget_shots widget-dropdownmenu/widget-checkgroup/widget-radiogroup test_mnemonic, test_menu
include/cvision/widgets/option_group.hpp Gallery forms/widget_shots widget-checkgroup/widget-radiogroup test_option_group
include/cvision/widgets/paged_strip.hpp Gallery widget_shots widget-pagedstrip test_paged_strip
include/cvision/widgets/popup_list.hpp Gallery forms/widget_shots widget-popuplist test_popup_list
include/cvision/widgets/orientation.hpp Gallery layouts/widget_shots widget-scrollbar test_scrollbar
include/cvision/widgets/progress_paint_internal.hpp Advanced progress shared internal drawing widget-progress test_progress
include/cvision/widgets/progress_tasks.hpp Advanced progress progress_lab/appearance_progress widget-progressview-normal, widget-activityindicator-normal test_progress_tasks
include/cvision/widgets/progress.hpp Gallery workbench/widget_shots widget-progress test_progress
include/cvision/widgets/scroll_viewport.hpp Gallery gallery/widget_shots widget-scrollviewport test_scroll_viewport
include/cvision/widgets/scrollbar.hpp Gallery gallery/widget_shots widget-scrollbar test_scrollbar
include/cvision/widgets/splitter.hpp Layout layouts/filebrowser/widget_shots widget-splitter test_splitter
include/cvision/widgets/standard_strings.hpp Dialogs forms/widget_shots widget-filedialog/widget-helpviewer test_standard_strings
include/cvision/widgets/static_text.hpp Gallery layouts/widget_shots widget-statictext test_widgets
include/cvision/widgets/status_line.hpp Hello hello/forms/widget_shots widget-statusline test_status_line, test_hello_golden, test_forms_smoke
include/cvision/widgets/tab_control.hpp Gallery workbench/graphics/widget_shots widget-tabcontrol test_tab_control
include/cvision/widgets/table.hpp Data views workbench/widget_shots widget-table/widget-table-editing test_table
include/cvision/widgets/cell_grid.hpp Data views widget_shots widget-cellgrid test_cell_grid
include/cvision/widgets/terminal_report_dialog.hpp Gallery spin/widget_shots widget-terminalreportdialog test_terminal_report_dialog
include/cvision/widgets/terminal_scrollbar.hpp Embedded terminal ckvision_terminal interactive session test_terminal_scrollbar
include/cvision/widgets/terminal_view.hpp Embedded terminal ckvision_terminal terminal-initial test_terminal_view, test_terminal_app, terminal_redraw_contract
include/cvision/widgets/text_layout.hpp Gallery editor/widget_shots widget-textview/widget-memo test_text_layout
include/cvision/widgets/text_view.hpp Gallery workbench/widget_shots widget-textview test_text_view
include/cvision/widgets/theme_editor.hpp Themes workbench/widget_shots widget-themeeditor test_theme_editor, test_workbench_smoke
include/cvision/widgets/text_editor.hpp Editor; TODO editor/todo/widget_shots widget-texteditor/todo-note-editor test_text_editor, test_todo_smoke
include/cvision/widgets/syntax_profile.hpp Editor editor/widget_shots widget-texteditor/editor-json test_syntax_profile
include/cvision/widgets/syntax_cache.hpp Editor editor/widget_shots widget-texteditor test_syntax_cache
include/cvision/widgets/tree_view.hpp Data views filebrowser/widget_shots widget-treeview test_tree_view
include/cvision/widgets/window.hpp Object model gallery/widget_shots widget-window test_window
include/cvision/widgets/window_list_dialog.hpp Gallery gallery/widget_shots widget-windowlistdialog test_window_list_dialog
include/cvision/widgets/minimized_window_stub.hpp Gallery widget_shots widget-minimizedwindowstub test_minimized_window_stub
include/cvision/widgets/window_switcher_bar.hpp Gallery widget_shots widget-windowswitcherbar test_window_switcher_bar

Interaction scripts

Every public view type is also driven by at least one Application-level interaction script, and interaction_script_coverage checks this table against the tests (tools/docgen/check_interaction_scripts.py, with a --self-test). A script is a CK_TEST that reaches the view in a real Application and sends it input the way a terminal does: through Application::dispatch, HeadlessTerminal::inject_event or Application::step. The gate requires, for each row:

  • the view type is one the documentation-coverage gate enumerates, and every such type has a row;
  • the named case exists in the named file under tests/;
  • the case calls dispatch, inject_event or step, directly or through a helper the same test file defines;
  • the case never calls a view's on_key, on_key_release, on_mouse, on_text or on_paste handler itself, directly or through such a helper;
  • the case names the "Reached through" identifier: the type itself, or the factory, example or fixture that builds it.
View type Script test case Reached through
BigClockView test_big_clock.cpp any_key_or_a_click_on_a_focused_face_asks_for_it_to_be_dismissed BigClockView
BreadcrumbBar test_common_components.cpp a_scripted_breadcrumb_bar_walks_and_activates_its_segments BreadcrumbBar
Button test_disabled_state.cpp a_press_on_a_disabled_button_never_fires_it_and_reaches_its_enabled_container Button
CalendarDropdown test_common_components.cpp a_hosted_date_picker_opens_the_calendar_and_tracks_its_typed_selection CalendarDropdown
CalendarView test_common_components.cpp a_scripted_calendar_view_moves_by_keys_and_selects_the_clicked_day CalendarView
Canvas test_canvas.cpp a_scripted_canvas_redraws_at_its_new_pixel_size_and_forwards_both_coordinate_spaces Canvas
CellGrid test_cell_grid.cpp a_scripted_cell_grid_is_walked_selected_and_activated_through_dispatched_input CellGrid
CheckGroup test_option_group.cpp alt_and_the_caption_letter_focus_the_group_from_anywhere_in_its_window CheckGroup
ClockView test_common_components.cpp a_clock_repaints_when_the_time_changes_and_not_on_every_tick ClockView
ComboBox test_combo_box.cpp a_combo_drops_a_popup_list_and_takes_the_row_chosen_from_it ComboOnDesktop
CommandPalette test_common_components.cpp a_scripted_command_palette_filters_as_typed_and_runs_the_highlighted_command CommandPalette
DatePicker test_common_components.cpp a_hosted_date_picker_opens_the_calendar_and_tracks_its_typed_selection DatePicker
Desktop test_m8_integration.cpp clicking_deep_content_in_a_background_window_raises_and_activates_it_through_dispatch Desktop
DropdownMenu test_menu.cpp the_whole_menu_system_is_operable_by_mouse_alone MenuScript
EditorWindow test_editor_window.cpp a_scripted_editor_window_marks_typed_changes_and_keeps_its_close_control_vetoed EditorWindow
FlowView test_flow_view.cpp a_scripted_flow_view_scrolls_and_activates_links_by_key_by_click_and_by_wheel FlowView
FrameText test_frame_text.cpp a_scripted_frame_text_follows_its_window_through_a_click_that_deactivates_it FrameText
ImageView test_application.cpp a_frame_carrying_a_picture_is_not_followed_by_another_until_the_host_is_ready ImageView
InputLine test_widgets.cpp a_scripted_input_line_edits_selects_copies_recalls_and_undoes_through_dispatched_keys InputLine
KeyChordCapture test_key_chord_capture.cpp a_scripted_chord_capture_shadows_the_bound_command_only_while_it_captures KeyChordCapture
Label test_widgets.cpp alt_mnemonic_on_a_window_focuses_the_labels_buddy Label
ListView test_list_view.cpp a_scripted_list_view_searches_walks_and_activates_by_key_and_by_timed_double_click ListView
Memo test_memo.cpp a_scripted_memo_edits_scrolls_copies_and_undoes_through_dispatched_keys Memo
MenuBar test_menu.cpp the_whole_menu_system_is_operable_by_keyboard_alone MenuScript
MinimizedWindowStub test_minimized_window_stub.cpp a_parked_window_can_be_got_back_without_a_mouse MinimizedWindowStub
NotificationCenter test_common_components.cpp a_scripted_notification_center_expires_toasts_and_dismisses_by_escape_and_click NotificationCenter
PagedStrip test_paged_strip.cpp a_scripted_paged_strip_pages_and_activates_items_through_dispatched_clicks PagedStrip
PopupList test_popup_list.cpp a_popup_list_hangs_under_its_anchor_and_is_as_wide_as_its_longest_item PopupList
ActivityIndicator test_progress_lab.cpp progress_lab_variants_run_pause_reset_and_resize ProgressLabApp
ProgressView test_progress_lab.cpp progress_lab_variants_run_pause_reset_and_resize ProgressLabApp
Progress test_progress.cpp a_scripted_progress_bar_shows_each_state_its_host_sets_between_steps Progress
PropertyInspector test_common_components.cpp a_scripted_property_inspector_edits_a_value_in_place PropertyInspector
RadioGroup test_option_group.cpp alt_and_the_caption_letter_focus_the_group_from_anywhere_in_its_window RadioGroup
ScrollViewport test_scroll_viewport.cpp application_routes_wheel_events_over_descendant_content_to_the_scroll_viewport ScrollViewport
Scrollbar test_scrollbar.cpp a_scripted_scrollbar_steps_pages_and_drags_through_dispatched_input Scrollbar
SearchBox test_help_viewer.cpp enter_in_the_search_box_does_not_dismiss_the_help_window SearchBox
Slider test_common_components.cpp a_scripted_slider_follows_keys_and_a_proportional_click Slider
SpinBox test_common_components.cpp a_scripted_spin_box_steps_by_keys_by_explicit_steppers_and_by_the_wheel SpinBox
Splitter test_splitter.cpp a_scripted_splitter_moves_its_divider_by_keys_and_by_a_dispatched_drag Splitter
StaticText test_wp36.cpp wrapped_static_text_reallocates_height_through_a_hosted_dialog_content_tree StaticText
StatusLine test_status_line.cpp a_scripted_status_line_runs_its_command_by_click_and_by_chord_in_an_application_shell ApplicationShell
TabControl test_tab_control.cpp a_scripted_tab_control_switches_pages_by_arrows_mnemonics_and_clicks TabControl
Table test_table.cpp a_scripted_table_sorts_on_a_header_click_and_edits_a_typed_cell_from_the_keyboard Table
TerminalView test_terminal_view.cpp terminal_view_reencodes_private_child_sixel_only_through_the_outer_presenter TerminalView
TextEditor test_text_editor.cpp text_editor_paints_host_highlights_and_places_a_virtual_caret_past_the_text TextEditor
TextView test_text_view.cpp a_scripted_text_view_scrolls_and_follows_links_through_dispatched_input TextView
TimePicker test_common_components.cpp a_scripted_time_picker_steps_its_fields_and_shows_either_clock_face TimePicker
ToolBar test_common_components.cpp a_scripted_tool_bar_click_runs_its_command_only_while_it_is_enabled ToolBar
Tooltip test_common_components.cpp a_scripted_tooltip_appears_and_leaves_with_the_frames_its_host_steps Tooltip
TreeView test_tree_view.cpp a_scripted_tree_view_expands_walks_and_activates_through_dispatched_input TreeView
Window test_m8_integration.cpp clicking_deep_content_in_a_background_window_raises_and_activates_it_through_dispatch Window
WindowSwitcherBar test_window_switcher_bar.cpp a_lengthening_title_shows_at_once_but_its_button_waits_out_the_grow_delay WindowSwitcherBar
Wizard test_common_components.cpp a_scripted_wizard_goes_forward_back_and_finishes_only_when_allowed Wizard