Files
MuditaOS/module-apps/application-messages/widgets/ThreadModel.hpp
Przemyslaw Brudny fb056774f5 [EGD-3040] ListItemProvider refactored to abstract class
[EGD-3040] ListView & ListItemProvider cleanups
2020-04-28 14:10:41 +02:00

42 lines
1020 B
C++

/*
* ThreadeModel.hpp
*
* Created on: 13 lis 2019
* Author: kuba
*/
#pragma once
#include <vector>
#include <stdint.h>
#include "DatabaseModel.hpp"
#include "Application.hpp"
#include "ListItemProvider.hpp"
#include "Interface/ThreadRecord.hpp"
class ThreadModel : public app::DatabaseModel<ThreadRecord>, public gui::ListItemProvider
{
public:
ThreadModel() = delete;
ThreadModel(app::Application *app);
virtual ~ThreadModel() = default;
void requestRecordsCount() override;
bool updateRecords(std::unique_ptr<std::vector<ThreadRecord>> records,
const uint32_t offset,
const uint32_t limit,
uint32_t count) override;
void requestRecords(const uint32_t offset, const uint32_t limit) override;
gui::ListItem *getItem(int index) override;
int getItemCount() const override
{
return recordsCount;
};
app::Application *getApplication(void)
{
return application;
};
};