~aleteoryx/muditaos

muditaos/module-apps/application-messages/models/ThreadsSearchResultsModel.hpp -rw-r--r-- 902 bytes
a405cad6Aleteoryx trim readme 6 days ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Copyright (c) 2017-2024, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/blob/master/LICENSE.md

#pragma once

#include "BaseThreadsRecordModel.hpp"
#include "Style.hpp"

namespace gui::model
{

    class ThreadsSearchResultsModel : public BaseThreadsRecordModel, public app::AsyncCallbackReceiver
    {
        UTF8 textToSearch;

      public:
        ThreadsSearchResultsModel(app::ApplicationCommon *app);

        auto getMinimalItemSpaceRequired() const -> unsigned int override;
        auto getItem(Order order) -> ListItem * override;
        /// empty, size get in requestRecords
        void requestRecords(uint32_t offset, uint32_t limit) override;
        /// set what we need to search
        void setSearchValue(const UTF8 &search_value);

        auto handleQueryResponse(db::QueryResult *) -> bool;
    };
}; // namespace gui::model