/** * @RDE_HEADER@ * HMI Plugin for AudioVideoManagement - Menu Edit Dialog Model * $Id$ * $HeadURL$ * $Author$ * Created by Patric Karwat, SLSE, 2016-10.05 */ #pragma once #include #include #include namespace AudioVideoManagement { // -------------------------------------------------------- // MenuViewModel // -------------------------------------------------------- class MenuViewModel final : public LtsWidgets::LtsAbstractTableModel { Q_OBJECT public: explicit MenuViewModel(QObject *parent = nullptr); bool initModel(const std::shared_ptr &dtc, bool isAudio); QVariant data(const QModelIndex &, int) const override final; QByteArray modelToJson(int row) const; QVector jsonToMenuStructs(const QByteArray &content) const; protected: bool isFiltered(const MenuStruct &data, DataModification modType) const override final; private: bool m_isAudio; std::shared_ptr m_dtc; LOGGER_T m_logger; }; } //namespace AudioVideoManagement