/***************************************************************************
- * Copyright (C) 2005-2018 by the Quassel Project *
+ * Copyright (C) 2005-2020 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
#pragma once
+#include "uisupport-export.h"
+
#include <QList>
#include <QLocale>
#include <QString>
#ifdef HAVE_KF5
-# include <KCoreAddons/KAboutData>
+# include <KCoreAddons/KAboutData>
#endif
-
/**
* Represents a contributor or author for Quassel.
*
* This is used to show a list of contributors in the About Quassel dialog.
*/
-class AboutPerson
+class UISUPPORT_EXPORT AboutPerson
{
public:
/**
* @param[in] emailAddress The person's email address, if applicable
* @param[in] translatedLanguage The language the person helped translate (only applicable for translators)
*/
- AboutPerson(const QString &name, const QString &nick, const QString &task, const QString &emailAddress = QString(), QLocale::Language translatedLanguage = QLocale::C);
+ AboutPerson(QString name, QString nick, QString task, QString emailAddress = QString(), QLocale::Language translatedLanguage = QLocale::C);
/**
* Gets the person's name.
QString prettyName() const;
private:
- QString _name; ///< The person's name
- QString _nick; ///< The person's nick
- QString _task; ///< The person's task
- QString _emailAddress; ///< The person's email address
- QLocale::Language _language; ///< The language the person helps translate
+ QString _name; ///< The person's name
+ QString _nick; ///< The person's nick
+ QString _task; ///< The person's task
+ QString _emailAddress; ///< The person's email address
+ QLocale::Language _language; ///< The language the person helps translate
};
-
/**
* Holds a list of authors, contributors and translators.
*
* the About Quassel dialog. Additionally, this class can provide a KAboutData object to be shown
* if KDE integration is enabled.
*/
-class AboutData : public QObject
+class UISUPPORT_EXPORT AboutData : public QObject
{
Q_OBJECT
public:
*
* @param[in] parent The parent object, if applicable
*/
- AboutData(QObject *parent = nullptr);
+ AboutData(QObject* parent = nullptr);
/**
* Adds an author to the list of contributors.
* @param[in] author The author to add
* @returns A reference to this AboutData instance
*/
- AboutData &addAuthor(const AboutPerson &author);
+ AboutData& addAuthor(const AboutPerson& author);
/**
* Adds a list of authors to the list of contributors.
* @param[in] authors A list of authors to add
* @returns A reference to this AboutData instance
*/
- AboutData &addAuthors(std::initializer_list<AboutPerson> authors);
+ AboutData& addAuthors(std::initializer_list<AboutPerson> authors);
/**
* Adds a contributor.
* @param[in] author The contributor to add
* @returns A reference to this AboutData instance
*/
- AboutData &addCredit(const AboutPerson &credit);
+ AboutData& addCredit(const AboutPerson& credit);
/**
* Adds a list of contributors.
* @param[in] authors A list of contributors to add
* @returns A reference to this AboutData instance
*/
- AboutData &addCredits(std::initializer_list<AboutPerson> credits);
+ AboutData& addCredits(std::initializer_list<AboutPerson> credits);
/**
* Gets the list of authors stored in this AboutData instance.
*
* @param[in,out] aboutData An existing AboutData instance to add Quassel's contributors to
*/
- static void setQuasselPersons(AboutData *aboutData);
+ static void setQuasselPersons(AboutData* aboutData);
private:
QList<AboutPerson> _authors; ///< The list of authors