CCIMXDesktop
 
Loading...
Searching...
No Matches
HomeCardManager.h
Go to the documentation of this file.
1
6#ifndef HOMECARDMANAGER_H
7#define HOMECARDMANAGER_H
8
9#include <QtClassHelperMacros> // Assuming this provides Q_DISABLE_COPY_MOVE
10#include <memory> // Required for std::shared_ptr
11
12// Forward declarations to reduce compilation dependencies
13class QStackedWidget;
14class QWidget;
15class QMutex;
16
29public:
35 explicit HomeCardManager(QStackedWidget* widget);
36
43
51 virtual void installWidget(QWidget* widget);
52
60 virtual void removeWidget(QWidget* widget);
61
68 virtual int accessible_card_cnt() const;
69
70protected:
76 QStackedWidget* stacked_widget;
77
83 std::shared_ptr<QMutex> mutex;
84};
85
86#endif // HOMECARDMANAGER_H
Manages a collection of QWidget instances displayed within a QStackedWidget.
Definition HomeCardManager.h:28
virtual void installWidget(QWidget *widget)
Installs a new widget into the managed QStackedWidget.
Definition HomeCardManager.cpp:13
virtual void removeWidget(QWidget *widget)
Removes a widget from the managed QStackedWidget.
Definition HomeCardManager.cpp:19
Q_DISABLE_COPY_MOVE(HomeCardManager)
Disables copy construction and copy assignment for HomeCardManager.
std::shared_ptr< QMutex > mutex
A shared pointer to a QMutex for thread-safe access.
Definition HomeCardManager.h:83
QStackedWidget * stacked_widget
A pointer to the QStackedWidget managed by this class.
Definition HomeCardManager.h:76
virtual int accessible_card_cnt() const
Returns the number of accessible cards (widgets) currently managed.
Definition HomeCardManager.cpp:24