30 lines
1.1 KiB
C++
30 lines
1.1 KiB
C++
// MailListViewModel.h
|
|
#ifndef MAILLISTVIEWMODEL_H
|
|
#define MAILLISTVIEWMODEL_H
|
|
|
|
#include <QtCore/QAbstractTableModel>
|
|
#include "models/MailItemModel.h" // Asegura que el modelo de ítem exista
|
|
|
|
class MailListViewModel : public QAbstractTableModel {
|
|
Q_OBJECT
|
|
public:
|
|
explicit MailListViewModel(QObject *parent = nullptr);
|
|
|
|
// Funcionalidad funcional para la UI. Implementa las interfaces necesarias para mostrar datos reales.
|
|
int rowCount(const QModelIndex &index) const override;
|
|
int columnCount(const QModelIndex &index) const override;
|
|
QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
|
|
bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) override;
|
|
|
|
public slots:
|
|
// Método que simularía la recepción de datos del backend. Usamos esto para poblar el modelo funcionalmente.
|
|
void loadSampleData();
|
|
|
|
signals:
|
|
void dataUpdated(); // Señal funcional para notificar a la UI cuando los datos cambien (sin usar *stubs*).
|
|
|
|
private:
|
|
QList<MailItemModel*> m_items; // Almacena las instancias funcionales de MailItemModel.
|
|
};
|
|
|
|
#endif // MAILLISTVIEWMODEL_H
|