mirror of
https://github.com/Chatterino/chatterino2.git
synced 2024-11-13 19:49:51 +01:00
Add a list of contributors to the about page
This commit is contained in:
parent
e76871c09c
commit
a66a2f2e8d
BIN
resources/avatars/fourtf.png
Normal file
BIN
resources/avatars/fourtf.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 72 KiB |
BIN
resources/avatars/pajlada.png
Normal file
BIN
resources/avatars/pajlada.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 17 KiB |
34
resources/contributors.txt
Normal file
34
resources/contributors.txt
Normal file
|
@ -0,0 +1,34 @@
|
|||
# To add yourself to this list, or to update one of your fields, send a PR with this file updated
|
||||
# This list is displayed in the About section of the preferences window
|
||||
# TODO: Parse this into a CONTRIBUTORS.md too
|
||||
|
||||
fourtf | https://fourtf.com | avatars/fourtf.png | Author, main developer
|
||||
pajlada | https://pajlada.se | avatars/pajlada.png | Collaborator, co-developer
|
||||
|
||||
Cranken | https://github.com/Cranken | | Contributor
|
||||
hemirt | https://github.com/hemirt | | Contributor
|
||||
LajamerrMittisdine | https://github.com/LajamerrMittisdine | | Contributor
|
||||
coral | https://github.com/coral | | Contributor, design
|
||||
apa420 | https://github.com/apa420 | | Contributor
|
||||
DatGuy1 | https://github.com/DatGuy1 | | Contributor
|
||||
Confuseh | https://github.com/Confuseh | | Contributor
|
||||
ch-ems | https://github.com/ch-ems | | Contributor
|
||||
Bur0k | https://github.com/Bur0k | | Contributor
|
||||
nuuls | https://github.com/nuuls | | Contributor
|
||||
Chronophylos | https://github.com/Chronophylos | | Contributor
|
||||
Ckath | https://github.com/Ckath | | Contributor
|
||||
matijakevic | https://github.com/matijakevic | | Contributor
|
||||
nforro | https://github.com/nforro | | Contributor
|
||||
vanolpfan | https://github.com/vanolpfan | | Contributor
|
||||
|
||||
Defman21 | https://github.com/Defman21 | | Documentation
|
||||
Jarel1337 | https://github.com/Jarel1337 | | Documentation
|
||||
Ian321 | https://github.com/Ian321 | | Documentation
|
||||
Yardanico | https://github.com/Yardanico | | Documentation
|
||||
huti26 | https://github.com/huti26 | | Documentation
|
||||
chrisduerr | https://github.com/chrisduerr | | Documentation
|
||||
23rd | https://github.com/23rd | | Documentation
|
||||
TranRed | https://github.com/TranRed | | Documentation
|
||||
|
||||
# Template
|
||||
# Name | Link | Avatar (Loaded as a resource) | Title (description of work done). Contributor is what we use for someone who has contributed in general (like sent a programming-related PR)
|
|
@ -69,6 +69,9 @@
|
|||
<file>tlds.txt</file>
|
||||
<file>images/menu_black.png</file>
|
||||
<file>images/menu_white.png</file>
|
||||
<file>contributors.txt</file>
|
||||
<file>avatars/fourtf.png</file>
|
||||
<file>avatars/pajlada.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="/qt/etc">
|
||||
<file>qt.conf</file>
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
#include "AboutPage.hpp"
|
||||
|
||||
#include "debug/Log.hpp"
|
||||
#include "util/LayoutCreator.hpp"
|
||||
#include "util/RemoveScrollAreaBackground.hpp"
|
||||
#include "widgets/helper/SignalLabel.hpp"
|
||||
|
@ -8,6 +9,7 @@
|
|||
#include <QGroupBox>
|
||||
#include <QLabel>
|
||||
#include <QTextEdit>
|
||||
#include <QTextStream>
|
||||
#include <QVBoxLayout>
|
||||
|
||||
#define PIXMAP_WIDTH 500
|
||||
|
@ -104,6 +106,67 @@ AboutPage::AboutPage()
|
|||
l.emplace<QLabel>("Emoji datasource provided by <a href=\"https://www.iamcal.com/\">Cal Henderson</a>");
|
||||
// clang-format on
|
||||
}
|
||||
|
||||
// Contributors
|
||||
auto contributors = layout.emplace<QGroupBox>("Contributors");
|
||||
{
|
||||
auto l = contributors.emplace<QVBoxLayout>();
|
||||
|
||||
QFile contributorsFile(":/contributors.txt");
|
||||
contributorsFile.open(QFile::ReadOnly);
|
||||
|
||||
QTextStream stream(&contributorsFile);
|
||||
stream.setCodec("UTF-8");
|
||||
|
||||
QString line;
|
||||
|
||||
while (stream.readLineInto(&line)) {
|
||||
if (line.isEmpty() || line.startsWith('#')) {
|
||||
continue;
|
||||
}
|
||||
|
||||
QStringList contributorParts = line.split("|");
|
||||
|
||||
if (contributorParts.size() != 4) {
|
||||
Log("Missing parts in line '{}'", line);
|
||||
continue;
|
||||
}
|
||||
|
||||
QString username = contributorParts[0].trimmed();
|
||||
QString url = contributorParts[1].trimmed();
|
||||
QString avatarUrl = contributorParts[2].trimmed();
|
||||
QString role = contributorParts[3].trimmed();
|
||||
|
||||
auto *usernameLabel = new QLabel("<a href=\"" + url + "\">" + username + "</a>");
|
||||
usernameLabel->setOpenExternalLinks(true);
|
||||
auto *roleLabel = new QLabel(role);
|
||||
|
||||
auto contributorBox2 = l.emplace<QHBoxLayout>();
|
||||
|
||||
const auto addAvatar = [&avatarUrl, &contributorBox2] {
|
||||
if (!avatarUrl.isEmpty()) {
|
||||
QPixmap avatarPixmap;
|
||||
avatarPixmap.load(avatarUrl);
|
||||
|
||||
auto avatar = contributorBox2.emplace<QLabel>();
|
||||
avatar->setPixmap(avatarPixmap);
|
||||
avatar->setFixedSize(64, 64);
|
||||
avatar->setScaledContents(true);
|
||||
}
|
||||
};
|
||||
|
||||
const auto addLabels = [&contributorBox2, &usernameLabel, &roleLabel] {
|
||||
auto labelBox = new QVBoxLayout();
|
||||
contributorBox2->addLayout(labelBox);
|
||||
|
||||
labelBox->addWidget(usernameLabel);
|
||||
labelBox->addWidget(roleLabel);
|
||||
};
|
||||
|
||||
addLabels();
|
||||
addAvatar();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
layout->addStretch(1);
|
||||
|
|
Loading…
Reference in a new issue