keep going on refactoring vcard

This commit is contained in:
Blue 2023-02-02 21:39:38 +03:00
parent 4af16b75bf
commit edf1ee60cd
Signed by untrusted user: blue
GPG key ID: 9B203B252A63EE38
13 changed files with 483 additions and 55 deletions

View file

@ -19,6 +19,18 @@
#include <QWidget>
#include <QScopedPointer>
#include <QMenu>
#include <QString>
#include <QFileDialog>
#include <QMimeDatabase>
#include <QStandardPaths>
#include <QImage>
#include <set>
#include "shared/enums.h"
#include "shared/vcard.h"
#include "shared/icons.h"
namespace UI {
namespace Ui
@ -32,8 +44,32 @@ public:
ContactGeneral(QWidget* parent = nullptr);
~ContactGeneral();
void setVCard(const QString& jid, const Shared::VCard& card, bool editable = false);
QString title() const;
private:
void setEditable(bool edit);
void initializeActions();
void initializeAvatar();
void updateAvatar();
private slots:
void deleteAvatarDialog();
void avatarSelected();
void onSetAvatar();
void onClearAvatar();
private:
QScopedPointer<Ui::ContactGeneral> m_ui;
QMenu* avatarMenu;
QSize avatarButtonMargins;
Shared::Avatar currentAvatarType;
QString currentAvatarPath;
QString currentJid;
bool editable;
QFileDialog* avatarDiablog;
static const std::set<QString> supportedTypes;
};
}