Skip to content

feat: phase 2 stratigraphic column changes - #133

Open
lachlangrose wants to merge 7 commits into
feat/shared-layer-rolesfrom
feat/strat-column-ui
Open

lachlangrose wants to merge 7 commits into
feat/shared-layer-rolesfrom
feat/strat-column-ui

Conversation

@lachlangrose

Copy link
Copy Markdown
Member

Summary

Phase 2 of the usability plan. It is based on phase 1 (#132), so the base branch is feat/shared-layer-roles. Change the base to main after #132 is merged.

  • The geology layer group is at the top, with labels and a summary of the unit names that have no match.
  • The toolbar has "+ Unit" and "+ Unconformity" text buttons, a "Build column" menu and an overflow menu for Reverse and Clear.
  • "Youngest" and "Oldest" labels are above and below the list. An empty list shows a text.
  • One "Style map layer" group replaces the three apply buttons: a "Style by" combo, a ramp combo and one Apply button.
  • Rows use QgsColorButton and a theme delete icon, and have no repeated "Thickness:" label. Unconformity rows have a different background.
  • The outer scroll area is removed from the tab.
  • The branch also merges main, which has the map highlight and thickness styling (feat(ui): highlight the stratigraphic unit on map when clicked in column #129).
  • docs/usage/interface.md and the plan are updated.

Test plan

  • Open the Stratigraphic Column tab. Check the layout at a normal dock width.
  • Add units and unconformities, drag rows, and check the summary of unit names.
  • Use each "Style by" option with Apply.
  • Use "Build column" and the overflow menu (Clear asks for confirmation).
  • Open the User-Defined Stratigraphic Column dialog, which embeds the same widget.

🤖 Generated with Claude Code

github-actions Bot and others added 6 commits October 4, 2026 15:12
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
QTimer.singleShot(0, func) runs func on the calling thread, not the Qt
main thread. A log message with push=True from a background task (for
example the thickness calculator) changed the QGIS message bar from the
worker thread, and QGIS stopped responding when the task ended.

Send the message bar change to the main thread with a queued signal.
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…umn (#129)

* feat: highlight the selected stratigraphic unit on the map

Select a unit row in the stratigraphic column to select the features of
that unit in the units layer, so that QGIS highlights them on the map.
The match uses the unit-name field set under the column. Select an
unconformity row, or clear the selection, to remove the highlight.

Focus on a field of a unit row also selects that row, because clicks on
the row's fields do not reach the list.

* feat: apply stratigraphic thickness to the map layer

Add a button to the stratigraphic column that writes a 'strat_thickness'
field onto the selected units layer. The field holds the thickness of
the matching unit in the column. Features that do not match a unit stay
empty. The layer then gets a graduated renderer with one class for each
thickness value, coloured with the selected colour ramp.

Move the colour ramp lookup into a helper, so that the age and thickness
styling use the same lookup.

* style: apply black formatting
Put the geology layer first with a summary of the unit names that have no
match. Use text buttons for adding units, a Build column menu and an overflow
menu. Add Youngest and Oldest labels and a text for an empty column. Replace
the three apply buttons with one Style map layer group. Use QgsColorButton and
theme icons in the rows, and remove the outer scroll area.

This branch has not been deployed

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant