#ifndef LOGINWIDGET_H #define LOGINWIDGET_H #include class LineEdit; class PasswordLineEdit; class CheckBox; class PushButton; class QVBoxLayout; class QLabel; class QHBoxLayout; class LoginWidget : public QWidget { Q_OBJECT public: explicit LoginWidget(QWidget *parent = nullptr); void setTitle(const QString title); const QString account() const; const QString password() const; bool rememberPassword() const; void saveAccountConfig() const; private: void initialize(); void initLayout(); void connectSignalsAndSlots(); void loadAccount(); signals: void signalLogin(); void signalCancel(); private: QVBoxLayout *m_vBoxLayout = nullptr; QLabel *m_titleLabel = nullptr; LineEdit *m_accLineEdit = nullptr; PasswordLineEdit *m_pwLineEdit = nullptr; QHBoxLayout *m_remLayout = nullptr; CheckBox *m_remCheckBox = nullptr; QHBoxLayout *m_buttonLayout = nullptr; PushButton *m_loginButton = nullptr; PushButton *m_cancelButton = nullptr; }; #endif // LOGINWIDGET_H