// Squawk messenger. // Copyright (C) 2019 Yury Gubich // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, see . #ifndef UI_WIDGETS_INFO_H #define UI_WIDGETS_INFO_H #include #include #include #include #include #include "ui/utils/progress.h" #include "contactgeneral.h" #include "contactcontacts.h" #include "description.h" namespace UI { namespace Ui { class Info; } class Info : public QWidget { Q_OBJECT public: Info(QWidget* parent = nullptr); ~Info(); void setData(const Shared::Info& info); void showProgress(const QString& = ""); void hideProgress(); private: void initializeContactGeneral(const Shared::Info& info); void initializeContactContacts(const Shared::Info& info); void initializeDescription(bool editable); void initializeOverlay(); private: QScopedPointer m_ui; ContactGeneral* contactGeneral; ContactContacts* contactContacts; Description* description; QWidget* overlay; Progress* progress; QLabel* progressLabel; }; } #endif // UI_WIDGETS_INFO_H