Skip to content

LoopLog: Show covered child nodes dimmed in treeview #45

Description

@maddes8cht

Description

In the LoopLog treeview, multiple elements can now be selected at once (multi-select). If a user selects a parent node together with one or more of its child nodes, the child nodes are ignored in the preview output (see the preview filtering issue, _prune_contained).

Visually, those still-selected child nodes are currently indistinguishable from the parent selection in the treeview. For better feedback, child nodes that are "covered" by a selected parent should be shown slightly dimmed in the treeview.

Behavior:

  • The parent node stays selected.
  • Covered child nodes stay selected but appear dimmed.
  • Removing the parent selection restores the normal selection of the child nodes — behavior identical to today, only with the additional preview filtering.

Technical notes

  • ttk.Treeview paints selected rows with a theme background color; per-item foreground tags (via tag_configure + item(..., tags=...)) may be covered by it or ignored depending on the theme.
  • A clean rendering may require a custom treeview style/theme approach — platform-dependent and costly.
  • The dimming logic must be recomputed on every selection event (child dimmed ⇔ parent selected) and stay consistent with the _prune_contained logic from the preview filtering.

Verification

Manual: select a parent + child → the child appears dimmed; deselect the parent → the child is normally selected again. python -m pytest tests\test_all.py -q

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions