Displays a full deck fetched from an Archidekt API response.
More...
#include <archidekt_api_response_deck_display_widget.h>
|
| void | requestNavigation (QString url) |
| | Emitted when navigation to a deck URL is requested.
|
| void | openInDeckEditor (DeckLoader *loader) |
| | Emitted when the deck should be opened in the deck editor.
|
|
| void | resizeEvent (QResizeEvent *event) override |
| | Updates layout and display on resize.
|
|
| void | onGroupCriteriaChange (const QString &activeGroupCriteria) |
| | Slot triggered when the active group criteria change.
|
Displays a full deck fetched from an Archidekt API response.
This widget visualizes all cards in a deck retrieved from the Archidekt API. It supports:
The widget internally constructs a DeckListModel from the Archidekt API response, then builds zone widgets for each group of cards according to the active group criteria. It also responds dynamically to model resets or sorting/grouping changes.
Signals
Features
- Automatically generates DeckCardZoneDisplayWidget instances for each card group.
- Provides a scrollable layout for decks of arbitrary size.
- Updates layouts dynamically when resized or when display/group/sort criteria change.
◆ ArchidektApiResponseDeckDisplayWidget()
Constructs a display widget for an Archidekt deck.
- Parameters
-
| parent | Parent widget. |
| response | API deck data container. |
| cardSizeSlider | Slider controlling card scaling. |
◆ actOpenInDeckEditor()
| void ArchidektApiResponseDeckDisplayWidget::actOpenInDeckEditor |
( |
| ) |
|
Opens the deck in the deck editor via DeckLoader.
◆ clearAllDisplayWidgets()
| void ArchidektApiResponseDeckDisplayWidget::clearAllDisplayWidgets |
( |
| ) |
|
Clears all dynamically generated card zone display widgets.
◆ constructZoneWidgetsFromDeckListModel()
| void ArchidektApiResponseDeckDisplayWidget::constructZoneWidgetsFromDeckListModel |
( |
| ) |
|
◆ decklistModelReset()
| void ArchidektApiResponseDeckDisplayWidget::decklistModelReset |
( |
| ) |
|
Handles model reset by clearing and reconstructing display widgets.
◆ onGroupCriteriaChange
| void ArchidektApiResponseDeckDisplayWidget::onGroupCriteriaChange |
( |
const QString & | activeGroupCriteria | ) |
|
|
privateslot |
Slot triggered when the active group criteria change.
- Parameters
-
| activeGroupCriteria | Name of the new grouping criteria. |
◆ openInDeckEditor
| void ArchidektApiResponseDeckDisplayWidget::openInDeckEditor |
( |
DeckLoader * | loader | ) |
|
|
signal |
Emitted when the deck should be opened in the deck editor.
- Parameters
-
| loader | Initialized DeckLoader containing the deck data. |
◆ requestNavigation
| void ArchidektApiResponseDeckDisplayWidget::requestNavigation |
( |
QString | url | ) |
|
|
signal |
Emitted when navigation to a deck URL is requested.
- Parameters
-
| url | URL of the deck on Archidekt. |
◆ resizeEvent
| void ArchidektApiResponseDeckDisplayWidget::resizeEvent |
( |
QResizeEvent * | event | ) |
|
|
overrideprotectedslot |
Updates layout and display on resize.
- Parameters
-
◆ retranslateUi()
| void ArchidektApiResponseDeckDisplayWidget::retranslateUi |
( |
| ) |
|
Updates all UI text for retranslation/localization.
Called when the application language changes.
◆ cardSizeSlider
Slider for adjusting card sizes.
◆ container
| QWidget* ArchidektApiResponseDeckDisplayWidget::container |
|
private |
Outer container for scroll area.
◆ containerLayout
| QVBoxLayout* ArchidektApiResponseDeckDisplayWidget::containerLayout |
|
private |
◆ displayOptionsWidget
Controls grouping/sorting/display.
◆ indexToWidgetMap
| QHash<QPersistentModelIndex, QWidget *> ArchidektApiResponseDeckDisplayWidget::indexToWidgetMap |
|
private |
Maps model indices to widgets.
◆ layout
| QVBoxLayout* ArchidektApiResponseDeckDisplayWidget::layout |
|
private |
◆ model
◆ openInEditorButton
| QPushButton* ArchidektApiResponseDeckDisplayWidget::openInEditorButton |
|
private |
Button to open deck in editor.
◆ response
◆ scrollArea
| QScrollArea* ArchidektApiResponseDeckDisplayWidget::scrollArea |
|
private |
Scrollable area for deck zones.
◆ zoneContainer
| QWidget* ArchidektApiResponseDeckDisplayWidget::zoneContainer |
|
private |
Container for deck zones.
◆ zoneContainerLayout
| QVBoxLayout* ArchidektApiResponseDeckDisplayWidget::zoneContainerLayout |
|
private |
The documentation for this class was generated from the following files: