Axis: add angle(DMS) tick label format

Description

Fixes issue #1143 (closed)

This merge request adds a new axis label format to display numeric tick values as angles in Degrees–Minutes–Seconds (DMS).

The format is available via Axis → Labels → Format → Angle (DMS) and integrates with the existing axis label formatting pipeline.


Implementation

  • Added a new Angle(DMS) entry to Axis::LabelsFormat
  • Implemented conversion from numeric values to DMS representation during tick label generation
  • Handles:
    • negative values
    • minute/second carry-over
    • existing prefix and suffix settings
  • Reuses existing axis update and rendering logic to keep the change localized

Testing

  • Built and tested locally using the KDE SDK build
  • Verified visually on a worksheet by switching: Axis → Labels → Format → Angle (DMS)
  • Tested with multiple ranges and zoom levels to confirm correct formatting

Backend unit tests are planned as a follow-up once Axis tests are enabled in the current test configuration.

image.png image.png


Follow-ups

  • Add spreadsheet column support for angle-aware data types
  • Extend unit test coverage for angle label formatting

Merge request reports

Loading