X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fauthenticator.h;h=55930d9a547f40125104d5b02f2de0e25766dd29;hp=3bec6f6fa9c0140a29209121d74c7ee120d57904;hb=cfbd4daee17dbb3c4052d938bf33edd08711d728;hpb=46f20e19a343ad0fa17dde6c32f17e60fc682c9b diff --git a/src/core/authenticator.h b/src/core/authenticator.h index 3bec6f6f..55930d9a 100644 --- a/src/core/authenticator.h +++ b/src/core/authenticator.h @@ -32,8 +32,8 @@ class Authenticator : public QObject { Q_OBJECT public: - Authenticator(QObject *parent = 0); - virtual ~Authenticator() {}; + using QObject::QObject; + ~Authenticator() override = default; enum State { IsReady, // ready to go @@ -64,16 +64,18 @@ public slots: /** \return A string that can be displayed by the client to describe the authenticator */ virtual QString description() const = 0; - //! Returns a list of properties required to use the authenticator backend - virtual QStringList setupKeys() const = 0; + //! Returns data required to configure the authenticator backend + /** + * A list of flattened triples for each field: {key, translated field name, default value} + * The default value's type determines the kind of input widget to be shown + * (int -> QSpinBox; QString -> QLineEdit) + * \return A list of triples defining the data to be shown in the configuration dialog + */ + virtual QVariantList setupData() const = 0; //! Checks if the authenticator allows manual password changes from inside quassel. virtual bool canChangePassword() const = 0; - //! Returns a map where the keys are are properties to use the authenticator backend - /* the values are QVariants with default values */ - virtual QVariantMap setupDefaults() const = 0; - //! Setup the authenticator provider. /** This prepares the authenticator provider (e.g. create tables, etc.) for use within Quassel. * \param settings Hostname, port, username, password, ... @@ -93,7 +95,4 @@ public slots: * \return A valid UserId if the password matches the username; 0 else */ virtual UserId validateUser(const QString &user, const QString &password) = 0; - -private: - };