mirror of
https://github.com/mudita/MuditaOS.git
synced 2026-07-25 23:38:49 -04:00
62 lines
1.6 KiB
C++
62 lines
1.6 KiB
C++
|
|
#include "SMSTemplateModel.hpp"
|
|
#include "SMSTemplateItem.hpp"
|
|
#include "ListView.hpp"
|
|
#include "application-messages/data/SMSdata.hpp"
|
|
#include "application-messages/MessagesStyle.hpp"
|
|
#include "application-messages/ApplicationMessages.hpp"
|
|
#include <service-db/api/DBServiceAPI.hpp>
|
|
|
|
SMSTemplateModel::SMSTemplateModel(app::Application *app) : DatabaseModel(app)
|
|
{}
|
|
|
|
unsigned int SMSTemplateModel::requestRecordsCount()
|
|
{
|
|
recordsCount = DBServiceAPI::SMSTemplateGetCount(application);
|
|
LOG_DEBUG("SMSTemplateGetCount %" PRIu32, recordsCount);
|
|
|
|
return recordsCount;
|
|
}
|
|
|
|
void SMSTemplateModel::requestRecords(const uint32_t offset, const uint32_t limit)
|
|
{
|
|
DBServiceAPI::SMSTemplateGetLimitOffset(application, offset, limit);
|
|
}
|
|
|
|
bool SMSTemplateModel::updateRecords(std::unique_ptr<std::vector<SMSTemplateRecord>> records)
|
|
{
|
|
if (DatabaseModel::updateRecords(std::move(records))) {
|
|
list->onProviderDataUpdate();
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
unsigned int SMSTemplateModel::getMinimalItemHeight() const
|
|
{
|
|
return style::smsTemplItem::h;
|
|
}
|
|
|
|
gui::ListItem *SMSTemplateModel::getItem(gui::Order order)
|
|
{
|
|
auto templ = getRecord(order);
|
|
|
|
if (!templ) {
|
|
return nullptr;
|
|
}
|
|
|
|
auto item = new gui::SMSTemplateItem();
|
|
item->setTemplate(templ);
|
|
item->activatedCallback = [=](gui::Item &it) {
|
|
LOG_INFO("activatedCallback");
|
|
if (auto app = dynamic_cast<app::ApplicationMessages *>(application)) {
|
|
if (app->templatesCallback) {
|
|
return app->templatesCallback(templ);
|
|
}
|
|
}
|
|
return false;
|
|
};
|
|
|
|
return item;
|
|
}
|