Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[feature] Introduce stacked diagrams #58568

Merged
merged 30 commits into from
Sep 27, 2024
Merged

Commits on Sep 18, 2024

  1. Introduce QgsStackedDiagram to create compound diagrams like populati…

    …on pyramids. Use Stacked as internal name for stacked diagrams and StackedBar for stacked bar diagrams. Add subDiagram parameter to QgsDiagramRenderer::diagramSize() and QgsDiagramRenderer::diagramSettings() (single and interpolated) to get subdiagrams info.
    gacarrillor committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    7548370 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    06daff8 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3a264b4 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    4432797 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    2d7b81c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    184ac73 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    1e1c39a View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    bfd4367 View commit details
    Browse the repository at this point in the history
  9. [tests] Subdiagram position in vertically stacked diagrams (iterating…

    … subdiagrams backwards)
    gacarrillor committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    5b35dba View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    6c60810 View commit details
    Browse the repository at this point in the history
  11. [gui] Introduce StackedDiagramProperties and use it as dialog and as …

    …vector properties page. For the moment, it works with single diagrams, hiding controls for stacked diagrams
    gacarrillor committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    614ce76 View commit details
    Browse the repository at this point in the history
  12. [gui] Add methods to add and remove subdiagrams in QgsStackedDiagramP…

    …roperties; remove subdiagram button disabled when subdiagram count is 2 (minimum value to have a stacked diagram); when switching from stacked to single diagram, extra tabs are hidden
    gacarrillor committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    a49175b View commit details
    Browse the repository at this point in the history
  13. [gui] Implement apply() for QgsStackedDiagramProperties, delegating p…

    …arts to QgsDiagramProperties for subdiagrams
    gacarrillor committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    fd7d8ed View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    4a3dfd7 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    d5837a7 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    b9d2781 View commit details
    Browse the repository at this point in the history
  17. [gui] QgsStackedDiagramProperties: Move EngineSettingsButton from Qgs…

    …DiagramProperties to the side of the main diagram type combobox
    gacarrillor committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    43d5094 View commit details
    Browse the repository at this point in the history
  18. [gui] Implement syncToLayer for QgsStackedDiagramproperties, delegati…

    …ng to subdiagrams' syncToLayer when needed
    gacarrillor committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    7e886a5 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    d12d661 View commit details
    Browse the repository at this point in the history
  20. [core] Introduce QgsStackedDiagramRenderer for rendering stacked diag…

    …rams. This allows subdiagrams to define their own sizes and legends; add tests for a stacked diagram composed of mixed renderers (single category and linearly interpolated categories), as well as nested stacked diagrams.
    gacarrillor committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    e855941 View commit details
    Browse the repository at this point in the history
  21. [gui] Move Diagrams properties to a panel widget, showing tabs instea…

    …d of a list when docked; harmonize stacked diagram configuration with rule-based labeling; allow QgsDiagramProperties to sync to renderers and diagram layer settings, in addition to syncing to layers; when editing a subdiagram of a stacked diagram, only show widgets for diagram layer settings if the subdiagram is the first one, for the rest, hide those widgets and show a note informing users; make sure stacked diagrams handle enabled and disabled subdiagrams (i.e., don't take into account disabled subdiagrams) and add a test for it; switching from single to stacked diagram: take the single diagram definition as the first stacked diagram; fix qgis#58782 (calling twice the apply method for label rendering)
    gacarrillor committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    f81df28 View commit details
    Browse the repository at this point in the history

Commits on Sep 23, 2024

  1. [core] Stacked diagrams: make sure scale dependent visibility works o…

    …n subdiagrams; test included
    gacarrillor committed Sep 23, 2024
    Configuration menu
    Copy the full SHA
    647437b View commit details
    Browse the repository at this point in the history

Commits on Sep 24, 2024

  1. [gui] Diagrams: Promote 'increase small diagrams' check box to group …

    …box to remove horizontal scroll bar in panel; bring back default values that had been lost in recent changes
    gacarrillor committed Sep 24, 2024
    Configuration menu
    Copy the full SHA
    e2d5a77 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5fef1f6 View commit details
    Browse the repository at this point in the history

Commits on Sep 25, 2024

  1. Configuration menu
    Copy the full SHA
    0916ed1 View commit details
    Browse the repository at this point in the history

Commits on Sep 26, 2024

  1. [gui] Diagram panel: connect effects and font widgets to live updates…

    …; switch from string-based connections to functor-based ones
    gacarrillor committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    01055d7 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    eb201c5 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    463bf24 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    37de287 View commit details
    Browse the repository at this point in the history

Commits on Sep 27, 2024

  1. [core] Address review, stacked diagrams: include maxScale for renderi…

    …ng with scale dependent visibility
    gacarrillor committed Sep 27, 2024
    Configuration menu
    Copy the full SHA
    b8f9760 View commit details
    Browse the repository at this point in the history