diff options
22 files changed, 518 insertions, 901 deletions
diff --git a/gui/MainWindow.cpp b/gui/MainWindow.cpp index 58491a7e..725bf175 100644 --- a/gui/MainWindow.cpp +++ b/gui/MainWindow.cpp @@ -47,6 +47,7 @@ #include "gui/Platform.h" #include "gui/widgets/LabeledToolButton.h" +#include "widgets/ServerStatus.h" #include "gui/dialogs/SettingsDialog.h" #include "gui/dialogs/NewInstanceDialog.h" @@ -216,29 +217,9 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWi connect(MMC->instances().get(), SIGNAL(dataIsInvalid()), SLOT(selectionBad())); m_statusLeft = new QLabel(tr("No instance selected"), this); - m_statusRight = new QLabel(tr("No status available"), this); - m_statusRefresh = new QToolButton(this); - m_statusRefresh->setCheckable(true); - m_statusRefresh->setToolButtonStyle(Qt::ToolButtonIconOnly); - m_statusRefresh->setIcon(QIcon::fromTheme("refresh")); - + m_statusRight = new ServerStatus(this); statusBar()->addPermanentWidget(m_statusLeft, 1); statusBar()->addPermanentWidget(m_statusRight, 0); - statusBar()->addPermanentWidget(m_statusRefresh, 0); - - // Start status checker - { - connect(MMC->statusChecker().get(), &StatusChecker::statusLoaded, this, - &MainWindow::updateStatusUI); - connect(MMC->statusChecker().get(), &StatusChecker::statusLoadingFailed, this, - &MainWindow::updateStatusFailedUI); - - connect(m_statusRefresh, &QAbstractButton::clicked, this, &MainWindow::reloadStatus); - connect(&statusTimer, &QTimer::timeout, this, &MainWindow::reloadStatus); - statusTimer.setSingleShot(true); - - reloadStatus(); - } // Add "manage accounts" button, right align QWidget *spacer = new QWidget(); @@ -620,60 +601,6 @@ void MainWindow::updateNewsLabel() } } -static QString convertStatus(const QString &status) -{ - QString ret = "?"; - - if (status == "green") - ret = "↑"; - else if (status == "yellow") - ret = "-"; - else if (status == "red") - ret = "↓"; - - return "<span style=\"font-size:11pt; font-weight:600;\">" + ret + "</span>"; -} - -void MainWindow::reloadStatus() -{ - m_statusRefresh->setChecked(true); - MMC->statusChecker()->reloadStatus(); - // updateStatusUI(); -} - -static QString makeStatusString(const QMap<QString, QString> statuses) -{ - QString status = ""; - status += "Web: " + convertStatus(statuses["minecraft.net"]); - status += " Account: " + convertStatus(statuses["account.mojang.com"]); - status += " Skins: " + convertStatus(statuses["skins.minecraft.net"]); - status += " Auth: " + convertStatus(statuses["authserver.mojang.com"]); - status += " Session: " + convertStatus(statuses["sessionserver.mojang.com"]); - - return status; -} - -void MainWindow::updateStatusUI() -{ - auto statusChecker = MMC->statusChecker(); - auto statuses = statusChecker->getStatusEntries(); - - QString status = makeStatusString(statuses); - m_statusRefresh->setChecked(false); - - m_statusRight->setText(status); - - statusTimer.start(60 * 1000); -} - -void MainWindow::updateStatusFailedUI() -{ - m_statusRight->setText(makeStatusString(QMap<QString, QString>())); - m_statusRefresh->setChecked(false); - - statusTimer.start(60 * 1000); -} - void MainWindow::updateAvailable(QString repo, QString versionName, int versionId) { UpdateDialog dlg; diff --git a/gui/MainWindow.h b/gui/MainWindow.h index d610a87d..ad160da7 100644 --- a/gui/MainWindow.h +++ b/gui/MainWindow.h @@ -171,12 +171,6 @@ slots: void updateNewsLabel(); - void updateStatusUI(); - - void updateStatusFailedUI(); - - void reloadStatus(); - /*! * Runs the DownloadUpdateTask and installs updates. */ @@ -207,11 +201,8 @@ private: QLabel *m_statusLeft; QLabel *m_statusRight; - QToolButton *m_statusRefresh; QMenu *accountMenu; QToolButton *accountMenuButton; QAction *manageAccountsAction; - - QTimer statusTimer; }; diff --git a/gui/widgets/ServerStatus.cpp b/gui/widgets/ServerStatus.cpp new file mode 100644 index 00000000..1b1bb6f7 --- /dev/null +++ b/gui/widgets/ServerStatus.cpp @@ -0,0 +1,125 @@ +#include "ServerStatus.h" +#include "logic/status/StatusChecker.h" + +#include "MultiMC.h" + +#include <QHBoxLayout> +#include <QFrame> +#include <QLabel> +#include <QMap> +#include <QToolButton> + +ServerStatus::ServerStatus(QWidget *parent, Qt::WindowFlags f) + :QWidget(parent, f) +{ + clear(); + goodIcon = QPixmap(":/icons/multimc/48x48/status-good.png"); + goodIcon.setDevicePixelRatio(2.0); + badIcon = QPixmap(":/icons/multimc/48x48/status-bad.png"); + badIcon.setDevicePixelRatio(2.0); + addStatus(tr("No status available"), false); + m_statusRefresh = new QToolButton(this); + m_statusRefresh->setCheckable(true); + m_statusRefresh->setToolButtonStyle(Qt::ToolButtonIconOnly); + m_statusRefresh->setIcon(QIcon::fromTheme("refresh")); + // Start status checker + { + connect(MMC->statusChecker().get(), &StatusChecker::statusLoaded, this, + &ServerStatus::updateStatusUI); + connect(MMC->statusChecker().get(), &StatusChecker::statusLoadingFailed, this, + &ServerStatus::updateStatusFailedUI); + + connect(m_statusRefresh, &QAbstractButton::clicked, this, &ServerStatus::reloadStatus); + connect(&statusTimer, &QTimer::timeout, this, &ServerStatus::reloadStatus); + statusTimer.setSingleShot(true); + + reloadStatus(); + } + +} + +ServerStatus::addLine() +{ + auto line = new QFrame(this); + line->setFrameShape(QFrame::VLine); + line->setFrameShadow(QFrame::Sunken); + layout->addWidget(line); +} + +ServerStatus::addStatus(QString name, bool online) +{ + auto label = new QLabel(this); + label->setText(name); + if(online) + label->setPixmap(goodIcon); + else + label->setPixmap(badIcon); + layout->addWidget(label); +} + +ServerStatus::clear() +{ + if(layout) + delete layout; + layout = new QHBoxLayout(this); +} + +void ServerStatus::StatusChanged(QMap<QString, QString> statusEntries) +{ + clear(); + int howmany = statusEntries.size(); + int index = 0; + auto iter = statusEntries.begin(); + while (iter != statusEntries.end()) + { + addStatus(); + index++; + } +} + +static QString convertStatus(const QString &status) +{ + QString ret = "?"; + + if (status == "green") + ret = "↑"; + else if (status == "yellow") + ret = "-"; + else if (status == "red") + ret = "↓"; + + return "<span style=\"font-size:11pt; font-weight:600;\">" + ret + "</span>"; +} + +void ServerStatus::reloadStatus() +{ + m_statusRefresh->setChecked(true); + MMC->statusChecker()->reloadStatus(); + // updateStatusUI(); +} + +static QString makeStatusString(const QMap<QString, QString> statuses) +{ + QString status = ""; + status += "Web: " + convertStatus(statuses["minecraft.net"]); + status += " Account: " + convertStatus(statuses["account.mojang.com"]); + status += " Skins: " + convertStatus(statuses["skins.minecraft.net"]); + status += " Auth: " + convertStatus(statuses["authserver.mojang.com"]); + status += " Session: " + convertStatus(statuses["sessionserver.mojang.com"]); + + return status; +} + +void ServerStatus::updateStatusUI() +{ + m_statusRefresh->setChecked(false); + MMC->statusChecker()->getStatusEntries(); + statusTimer.start(60 * 1000); +} + +void ServerStatus::updateStatusFailedUI() +{ + m_statusRefresh->setChecked(false); + StatusChanged(); + statusTimer.start(60 * 1000); +} diff --git a/gui/widgets/ServerStatus.h b/gui/widgets/ServerStatus.h new file mode 100644 index 00000000..a116d3d4 --- /dev/null +++ b/gui/widgets/ServerStatus.h @@ -0,0 +1,32 @@ +#pragma once +#include <QWidget> +#include <memory> + +class QToolButton; +class QHBoxLayout; + +class ServerStatus: public QWidget +{ + Q_OBJECT +public: + explicit ServerStatus(QWidget *parent = nullptr, Qt::WindowFlags f = 0); + virtual ~ServerStatus() {}; +public slots: + void updateStatusUI(); + + void updateStatusFailedUI(); + + void reloadStatus(); + void StatusChanged(); + +private: /* methods */ + clear(); + addLine(); + addStatus(QString name, bool online); +private: /* data */ + QHBoxLayout * layout = nullptr; + QToolButton *m_statusRefresh = nullptr; + QPixmap goodIcon; + QPixmap badIcon; + QTimer statusTimer; +}; diff --git a/resources/multimc/16x16/status-bad.png b/resources/multimc/16x16/status-bad.png Binary files differnew file mode 100644 index 00000000..5b3f2051 --- /dev/null +++ b/resources/multimc/16x16/status-bad.png diff --git a/resources/multimc/16x16/status-good.png b/resources/multimc/16x16/status-good.png Binary files differnew file mode 100644 index 00000000..5cbdee81 --- /dev/null +++ b/resources/multimc/16x16/status-good.png diff --git a/resources/multimc/22x22/status-bad.png b/resources/multimc/22x22/status-bad.png Binary files differnew file mode 100644 index 00000000..2707539e --- /dev/null +++ b/resources/multimc/22x22/status-bad.png diff --git a/resources/multimc/22x22/status-good.png b/resources/multimc/22x22/status-good.png Binary files differnew file mode 100644 index 00000000..f55debc3 --- /dev/null +++ b/resources/multimc/22x22/status-good.png diff --git a/resources/multimc/24x24/status-bad.png b/resources/multimc/24x24/status-bad.png Binary files differnew file mode 100644 index 00000000..d1547a47 --- /dev/null +++ b/resources/multimc/24x24/status-bad.png diff --git a/resources/multimc/24x24/status-good.png b/resources/multimc/24x24/status-good.png Binary files differnew file mode 100644 index 00000000..3545bc4c --- /dev/null +++ b/resources/multimc/24x24/status-good.png diff --git a/resources/multimc/32x32/status-bad.png b/resources/multimc/32x32/status-bad.png Binary files differnew file mode 100644 index 00000000..8c2c9d4f --- /dev/null +++ b/resources/multimc/32x32/status-bad.png diff --git a/resources/multimc/32x32/status-good.png b/resources/multimc/32x32/status-good.png Binary files differnew file mode 100644 index 00000000..1a805e68 --- /dev/null +++ b/resources/multimc/32x32/status-good.png diff --git a/resources/multimc/48x48/status-bad.png b/resources/multimc/48x48/status-bad.png Binary files differnew file mode 100644 index 00000000..41c9cf22 --- /dev/null +++ b/resources/multimc/48x48/status-bad.png diff --git a/resources/multimc/48x48/status-good.png b/resources/multimc/48x48/status-good.png Binary files differnew file mode 100644 index 00000000..df7cb59b --- /dev/null +++ b/resources/multimc/48x48/status-good.png diff --git a/resources/multimc/64x64/status-bad.png b/resources/multimc/64x64/status-bad.png Binary files differnew file mode 100644 index 00000000..64060ba0 --- /dev/null +++ b/resources/multimc/64x64/status-bad.png diff --git a/resources/multimc/64x64/status-good.png b/resources/multimc/64x64/status-good.png Binary files differnew file mode 100644 index 00000000..e862ddcd --- /dev/null +++ b/resources/multimc/64x64/status-good.png diff --git a/resources/multimc/multimc.qrc b/resources/multimc/multimc.qrc index d3068ff4..1df22c29 100644 --- a/resources/multimc/multimc.qrc +++ b/resources/multimc/multimc.qrc @@ -87,6 +87,22 @@ <file>48x48/news.png</file> <file>64x64/news.png</file> + <!-- Bad status. Our own. --> + <file>16x16/status-bad.png</file> + <file>24x24/status-bad.png</file> + <file>22x22/status-bad.png</file> + <file>32x32/status-bad.png</file> + <file>48x48/status-bad.png</file> + <file>64x64/status-bad.png</file> + + <!-- Good status. Our own. --> + <file>16x16/status-good.png</file> + <file>24x24/status-good.png</file> + <file>22x22/status-good.png</file> + <file>32x32/status-good.png</file> + <file>48x48/status-good.png</file> + <file>64x64/status-good.png</file> + <!-- Refresh, CC-BY-SA 3.0, Oxygen icons. --> <file>16x16/refresh.png</file> <file>22x22/refresh.png</file> diff --git a/resources/multimc/scalable/status-bad.svg b/resources/multimc/scalable/status-bad.svg new file mode 100644 index 00000000..9f47307e --- /dev/null +++ b/resources/multimc/scalable/status-bad.svg @@ -0,0 +1,142 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="32" + height="32" + id="svg3891" + version="1.1" + inkscape:version="0.48.4 r9939" + sodipodi:docname="status-bad.svg" + inkscape:export-filename="/home/peterix/minecraft/src/MultiMC5/resources/multimc/64x64/status-bad.png" + inkscape:export-xdpi="180" + inkscape:export-ydpi="180"> + <defs + id="defs3893"> + <filter + color-interpolation-filters="sRGB" + inkscape:collect="always" + id="filter3850"> + <feGaussianBlur + inkscape:collect="always" + stdDeviation="0.5" + id="feGaussianBlur3852" /> + </filter> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3827" + id="radialGradient3823" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.4496779,1.5407764,-0.90127514,0.84794135,4.9906134,-4.9255796)" + cx="3.9371533" + cy="7.5016646" + fx="3.9371533" + fy="7.5016646" + r="2.5" /> + <linearGradient + id="linearGradient3827"> + <stop + id="stop3829" + offset="0" + style="stop-color:#b80000;stop-opacity:1;" /> + <stop + id="stop3831" + offset="1" + style="stop-color:#600000;stop-opacity:1;" /> + </linearGradient> + <radialGradient + r="2.5" + fy="7.5016646" + fx="3.9371533" + cy="7.5016646" + cx="3.9371533" + gradientTransform="matrix(1.4496779,1.5407764,-0.90127514,0.84794135,4.9906134,-4.9255796)" + gradientUnits="userSpaceOnUse" + id="radialGradient3889" + xlink:href="#linearGradient3827" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="3.959798" + inkscape:cx="5.985117" + inkscape:cy="16.047085" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="false" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" + inkscape:window-width="532" + inkscape:window-height="454" + inkscape:window-x="2159" + inkscape:window-y="166" + inkscape:window-maximized="0" /> + <metadata + id="metadata3896"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(-381.14286,-467.79075)"> + <path + transform="matrix(6.4,0,0,6.4,361.94286,422.99075)" + d="M 8,9.5 C 8,10.880712 6.8807119,12 5.5,12 4.1192881,12 3,10.880712 3,9.5 3,8.1192881 4.1192881,7 5.5,7 6.8807119,7 8,8.1192881 8,9.5 z" + sodipodi:ry="2.5" + sodipodi:rx="2.5" + sodipodi:cy="9.5" + sodipodi:cx="5.5" + id="path3811" + style="color:#000000;fill:url(#radialGradient3889);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" + sodipodi:type="arc" /> + <path + transform="matrix(0.93333333,0,0,0.93333444,382.20952,468.85732)" + d="M 31,16 C 31,24.284271 24.284271,31 16,31 7.7157288,31 1,24.284271 1,16 1,7.7157288 7.7157288,1 16,1 24.284271,1 31,7.7157288 31,16 z" + sodipodi:ry="15" + sodipodi:rx="15" + sodipodi:cy="16" + sodipodi:cx="16" + id="path3813" + style="color:#000000;fill:#df0000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" + sodipodi:type="arc" /> + <path + inkscape:connector-curvature="0" + id="path3840" + d="m 392.64286,476.29082 -3,3 4.5,4.5 -4.5,4.5 3,3 4.5,-4.5 4.5,4.5 3,-3 -4.5,-4.5 4.5,-4.5 -3,-3 -4.5,4.5 -4.5,-4.5 z" + style="fill:none;stroke:#000000;filter:url(#filter3850)" /> + <path + style="fill:#ffffff;stroke:#000000" + d="m 392.64286,476.29082 -3,3 4.5,4.5 -4.5,4.5 3,3 4.5,-4.5 4.5,4.5 3,-3 -4.5,-4.5 4.5,-4.5 -3,-3 -4.5,4.5 -4.5,-4.5 z" + id="path3819" + inkscape:connector-curvature="0" /> + <path + inkscape:connector-curvature="0" + id="path3854" + d="m 392.64286,476.29082 -3,3 4.5,4.5 -4.5,4.5 3,3 4.5,-4.5 4.5,4.5 3,-3 -4.5,-4.5 4.5,-4.5 -3,-3 -4.5,4.5 -4.5,-4.5 z" + style="opacity:0.51879697;fill:#ffffff;stroke:none" /> + </g> +</svg> diff --git a/resources/multimc/scalable/status-good.svg b/resources/multimc/scalable/status-good.svg new file mode 100644 index 00000000..0a35c80f --- /dev/null +++ b/resources/multimc/scalable/status-good.svg @@ -0,0 +1,201 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="32" + height="32" + id="svg2" + version="1.1" + inkscape:version="0.48.4 r9939" + sodipodi:docname="status-good.svg" + inkscape:export-filename="/home/peterix/minecraft/src/MultiMC5/resources/multimc/64x64/status-good.png" + inkscape:export-xdpi="180" + inkscape:export-ydpi="180"> + <defs + id="defs4"> + <linearGradient + id="linearGradient3827"> + <stop + id="stop3829" + offset="0" + style="stop-color:#b80000;stop-opacity:1;" /> + <stop + id="stop3831" + offset="1" + style="stop-color:#600000;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient3801"> + <stop + style="stop-color:#00b81a;stop-opacity:1;" + offset="0" + id="stop3803" /> + <stop + style="stop-color:#00600d;stop-opacity:1;" + offset="1" + id="stop3805" /> + </linearGradient> + <linearGradient + id="linearGradient3005"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop3007" /> + <stop + id="stop3781" + offset="0.8142857" + style="stop-color:#ffffff;stop-opacity:0.49803922;" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop3009" /> + </linearGradient> + <filter + inkscape:collect="always" + id="filter3797"> + <feGaussianBlur + inkscape:collect="always" + stdDeviation="0.52592593" + id="feGaussianBlur3799" /> + </filter> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3801" + id="radialGradient3807" + cx="3.9371533" + cy="7.5016646" + fx="3.9371533" + fy="7.5016646" + r="2.5" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.4496779,1.5407764,-0.90127514,0.84794135,4.9906134,-4.9255796)" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3827" + id="radialGradient3823" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.4496779,1.5407764,-0.90127514,0.84794135,4.9906134,-4.9255796)" + cx="3.9371533" + cy="7.5016646" + fx="3.9371533" + fy="7.5016646" + r="2.5" /> + <filter + inkscape:collect="always" + id="filter3850"> + <feGaussianBlur + inkscape:collect="always" + stdDeviation="0.5" + id="feGaussianBlur3852" /> + </filter> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="2.8" + inkscape:cx="8.6376236" + inkscape:cy="10.641334" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="false" + showguides="false" + inkscape:snap-bbox="true" + inkscape:guide-bbox="true" + inkscape:window-width="532" + inkscape:window-height="454" + inkscape:window-x="2290" + inkscape:window-y="202" + inkscape:window-maximized="0"> + <inkscape:grid + type="xygrid" + id="grid2993" + empspacing="5" + visible="true" + enabled="true" + snapvisiblegridlinesonly="true" /> + <sodipodi:guide + orientation="0,1" + position="15,16" + id="guide3783" /> + <sodipodi:guide + orientation="1,0" + position="16,14" + id="guide3785" /> + <sodipodi:guide + orientation="0,1" + position="94,38" + id="guide3833" /> + <sodipodi:guide + orientation="1,0" + position="84,34" + id="guide3835" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-1020.3622)"> + <path + sodipodi:type="arc" + style="opacity:1;color:#000000;fill:url(#radialGradient3807);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.50000000000000000;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;stroke-miterlimit:4;stroke-dasharray:none" + id="path2997" + sodipodi:cx="5.5" + sodipodi:cy="9.5" + sodipodi:rx="2.5" + sodipodi:ry="2.5" + d="m 8,9.5 a 2.5,2.5 0 1 1 -5,0 2.5,2.5 0 1 1 5,0 z" + transform="matrix(6.4,0,0,6.4,-19.2,975.5622)" /> + <path + sodipodi:type="arc" + style="color:#000000;fill:#00c900;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.50000000000000000;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" + id="path2999" + sodipodi:cx="16" + sodipodi:cy="16" + sodipodi:rx="15" + sodipodi:ry="15" + d="M 31,16 A 15,15 0 1 1 1,16 15,15 0 1 1 31,16 z" + transform="matrix(0.93333333,0,0,0.93333444,1.0666666,1021.4288)" /> + <path + sodipodi:nodetypes="ccccccc" + inkscape:connector-curvature="0" + id="path3787" + d="m 6.5,1037.3622 3,-3 4.5,4.5 9.5,-9.5 3,3 -12.5,12.5 z" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter3797)" /> + <path + style="fill:#ffffff;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="m 6.5,1037.3622 3,-3 4.5,4.5 9.5,-9.5 3,3 -12.5,12.5 z" + id="path3001" + inkscape:connector-curvature="0" + sodipodi:nodetypes="ccccccc" /> + <path + sodipodi:nodetypes="ccccccc" + inkscape:connector-curvature="0" + id="path3809" + d="m 6.5,1037.3622 3,-3 4.5,4.5 9.5,-9.5 3,3 -12.5,12.5 z" + style="fill:#ffffff;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;opacity:0.54887218" /> + </g> +</svg> diff --git a/resources/sources/status-bad.svg b/resources/sources/status-bad.svg deleted file mode 100644 index 54334e06..00000000 --- a/resources/sources/status-bad.svg +++ /dev/null @@ -1,262 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<!-- Created with Inkscape (http://www.inkscape.org/) --> - -<svg - xmlns:dc="http://purl.org/dc/elements/1.1/" - xmlns:cc="http://creativecommons.org/ns#" - xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" - xmlns:svg="http://www.w3.org/2000/svg" - xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="64" - height="64" - id="svg2" - version="1.1" - inkscape:version="0.48.4 r9939" - sodipodi:docname="status-bad.svg" - inkscape:export-filename="/home/peterix/projects/MultiMC4/src/resources/insticons/enderpearl.png" - inkscape:export-xdpi="45" - inkscape:export-ydpi="45"> - <defs - id="defs4"> - <linearGradient - id="linearGradient4245"> - <stop - id="stop4247" - offset="0" - style="stop-color:#000000;stop-opacity:1;" /> - <stop - style="stop-color:#106810;stop-opacity:1" - offset="0.89412045" - id="stop4251" /> - <stop - id="stop4249" - offset="1" - style="stop-color:#199c19;stop-opacity:0" /> - </linearGradient> - <linearGradient - id="linearGradient4239"> - <stop - id="stop4241" - offset="0" - style="stop-color:#513000;stop-opacity:1;" /> - <stop - id="stop4243" - offset="1" - style="stop-color:#eea700;stop-opacity:1;" /> - </linearGradient> - <linearGradient - id="linearGradient4030"> - <stop - id="stop4032" - offset="0" - style="stop-color:#000000;stop-opacity:1;" /> - <stop - id="stop4034" - offset="1" - style="stop-color:#0c493f;stop-opacity:0;" /> - </linearGradient> - <linearGradient - id="linearGradient3954"> - <stop - style="stop-color:#000000;stop-opacity:1;" - offset="0" - id="stop3956" /> - <stop - style="stop-color:#199c19;stop-opacity:1;" - offset="1" - id="stop3958" /> - </linearGradient> - <filter - inkscape:collect="always" - id="filter3884"> - <feGaussianBlur - inkscape:collect="always" - stdDeviation="0.505" - id="feGaussianBlur3886" /> - </filter> - <filter - inkscape:collect="always" - id="filter3898" - x="-0.20110182" - width="1.4022036" - y="-0.20210065" - height="1.4042013"> - <feGaussianBlur - inkscape:collect="always" - stdDeviation="1.0604979" - id="feGaussianBlur3900" /> - </filter> - <filter - inkscape:collect="always" - id="filter3916" - x="-0.11491533" - width="1.2298307" - y="-0.11548609" - height="1.2309722"> - <feGaussianBlur - inkscape:collect="always" - stdDeviation="0.6059988" - id="feGaussianBlur3918" /> - </filter> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient4239" - id="radialGradient4024" - gradientUnits="userSpaceOnUse" - cx="37.15184" - cy="33.513309" - fx="37.15184" - fy="33.513309" - r="20" - gradientTransform="matrix(-1.2888095,0.63917683,-0.44430494,-0.89587535,99.563439,45.881313)" /> - <filter - inkscape:collect="always" - id="filter4110" - x="-0.17716113" - width="1.3543223" - y="-0.17804105" - height="1.3560821"> - <feGaussianBlur - inkscape:collect="always" - stdDeviation="0.93424815" - id="feGaussianBlur4112" /> - </filter> - <linearGradient - id="linearGradient3954-9"> - <stop - style="stop-color:#000000;stop-opacity:1;" - offset="0" - id="stop3956-4" /> - <stop - style="stop-color:#0f5f52;stop-opacity:1;" - offset="1" - id="stop3958-2" /> - </linearGradient> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient3954" - id="radialGradient4230" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.1486906,1.2798015,-0.74419869,0.66795831,19.056258,-30.328315)" - cx="32" - cy="32" - fx="32" - fy="32" - r="20" /> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient3954" - id="radialGradient4250" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.1486906,1.2798015,-0.74419869,0.66795831,19.056258,-30.328315)" - cx="32" - cy="32" - fx="32" - fy="32" - r="20" /> - </defs> - <sodipodi:namedview - id="base" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:pageopacity="0.0" - inkscape:pageshadow="2" - inkscape:zoom="0.35355339" - inkscape:cx="-1038.0652" - inkscape:cy="556.75939" - inkscape:document-units="px" - inkscape:current-layer="g4116" - showgrid="false" - showguides="true" - inkscape:guide-bbox="true" - inkscape:window-width="1612" - inkscape:window-height="1026" - inkscape:window-x="1677" - inkscape:window-y="-4" - inkscape:window-maximized="1" - inkscape:snap-global="true" - inkscape:snap-bbox="true"> - <inkscape:grid - type="xygrid" - id="grid2985" - empspacing="2" - visible="true" - enabled="true" - snapvisiblegridlinesonly="true" /> - <sodipodi:guide - orientation="0,1" - position="11.25,96.5" - id="guide4252" /> - </sodipodi:namedview> - <metadata - id="metadata7"> - <rdf:RDF> - <cc:Work - rdf:about=""> - <dc:format>image/svg+xml</dc:format> - <dc:type - rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> - <dc:title></dc:title> - </cc:Work> - </rdf:RDF> - </metadata> - <g - inkscape:label="Layer 1" - inkscape:groupmode="layer" - id="layer1" - transform="translate(0,-988.36218)"> - <g - id="g4116" - transform="matrix(1.3594572,0,0,1.3553409,-10.875658,-362.67325)"> - <path - transform="matrix(1.1769403,0,0,1.1769403,-6.1232836,982.70009)" - d="M 52,32 C 52,43.045695 43.045695,52 32,52 20.954305,52 12,43.045695 12,32 12,20.954305 20.954305,12 32,12 c 11.045695,0 20,8.954305 20,20 z" - sodipodi:ry="20" - sodipodi:rx="20" - sodipodi:cy="32" - sodipodi:cx="32" - id="path3014" - style="fill:url(#radialGradient4024);fill-opacity:1;stroke:none" - sodipodi:type="arc" /> - <path - sodipodi:nodetypes="ssccs" - inkscape:connector-curvature="0" - id="path3866" - transform="matrix(1.1769403,0,0,1.1769403,-5.6620909,982.68843)" - d="m 28,16 c -6.627417,0 -12,5.372583 -12,12 0,0.20181 0.0214,0.394383 0.03125,0.59375 C 20,20 22,22 28.65625,16.03125 28.436252,16.019242 28.222996,16 28,16 z" - style="fill:#ffbf00;fill-opacity:1;stroke:none;filter:url(#filter3884)" /> - <path - transform="matrix(1.487885,0,0,1.487885,-10.597031,-493.22036)" - style="fill:#ffef00;fill-opacity:1;stroke:none;filter:url(#filter3898)" - d="m 28,1004.3622 c -6.627417,0 -12,5.3726 -12,12 0,0.2018 0.0214,0.3944 0.03125,0.5937 3.96875,-8.5937 5.96875,-6.5937 12.625,-12.5625 -0.219998,-0.012 -0.433254,-0.031 -0.65625,-0.031 z" - id="path3888" - inkscape:connector-curvature="0" - sodipodi:nodetypes="ssccs" /> - <path - sodipodi:nodetypes="ssccs" - inkscape:connector-curvature="0" - id="path3902" - d="m 28,1004.3622 c -6.627417,0 -12,5.3726 -12,12 0,0.2018 0.0214,0.3944 0.03125,0.5937 3.96875,-8.5937 5.96875,-6.5937 12.625,-12.5625 -0.219998,-0.012 -0.433254,-0.031 -0.65625,-0.031 z" - style="fill:#ffdd00;fill-opacity:1;stroke:none;filter:url(#filter3916)" - transform="matrix(-1.8359746,0,0,-1.8359746,81.432966,2885.3572)" /> - <path - transform="matrix(-1.1914115,0,0,-1.1914115,69.087304,2235.4229)" - style="fill:#f4ecd7;fill-opacity:1;stroke:none;filter:url(#filter3916);opacity:0.7518797" - d="m 28,1004.3622 c -6.627417,0 -12,5.3726 -12,12 0,0.2018 0.0214,0.3944 0.03125,0.5937 3.96875,-8.5937 5.96875,-6.5937 12.625,-12.5625 -0.219998,-0.012 -0.433254,-0.031 -0.65625,-0.031 z" - id="path3920" - inkscape:connector-curvature="0" - sodipodi:nodetypes="ssccs" /> - <path - sodipodi:nodetypes="csccsc" - inkscape:connector-curvature="0" - id="path3964" - d="m 28,1004.3622 c -6.627417,0 -12,5.3726 -12,12 0,0.2018 0.0214,0.3944 0.03125,0.5937 5.570868,-4.4816 8.905966,-4.4575 12.625,-12.5625 -0.219998,-0.012 -0.433254,-0.031 -0.65625,-0.031 z" - style="fill:#ffffff;fill-opacity:1;stroke:none;filter:url(#filter4110);opacity:0.69924812" - transform="matrix(0.58516297,0,0,0.58516297,6.7391969,416.10681)" /> - </g> - </g> -</svg> diff --git a/resources/sources/status-good.svg b/resources/sources/status-good.svg deleted file mode 100644 index 3b311806..00000000 --- a/resources/sources/status-good.svg +++ /dev/null @@ -1,293 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<!-- Created with Inkscape (http://www.inkscape.org/) --> - -<svg - xmlns:dc="http://purl.org/dc/elements/1.1/" - xmlns:cc="http://creativecommons.org/ns#" - xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" - xmlns:svg="http://www.w3.org/2000/svg" - xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="64" - height="64" - id="svg2" - version="1.1" - inkscape:version="0.48.4 r9939" - sodipodi:docname="enderpearl.svg" - inkscape:export-filename="/home/peterix/projects/MultiMC4/src/resources/insticons/enderpearl.png" - inkscape:export-xdpi="45" - inkscape:export-ydpi="45"> - <defs - id="defs4"> - <linearGradient - id="linearGradient4245"> - <stop - id="stop4247" - offset="0" - style="stop-color:#000000;stop-opacity:1;" /> - <stop - style="stop-color:#106810;stop-opacity:1" - offset="0.89412045" - id="stop4251" /> - <stop - id="stop4249" - offset="1" - style="stop-color:#199c19;stop-opacity:0" /> - </linearGradient> - <linearGradient - id="linearGradient4239"> - <stop - id="stop4241" - offset="0" - style="stop-color:#043400;stop-opacity:1" /> - <stop - id="stop4243" - offset="1" - style="stop-color:#199c19;stop-opacity:1;" /> - </linearGradient> - <linearGradient - id="linearGradient4030"> - <stop - id="stop4032" - offset="0" - style="stop-color:#000000;stop-opacity:1;" /> - <stop - id="stop4034" - offset="1" - style="stop-color:#0c493f;stop-opacity:0;" /> - </linearGradient> - <linearGradient - id="linearGradient3954"> - <stop - style="stop-color:#000000;stop-opacity:1;" - offset="0" - id="stop3956" /> - <stop - style="stop-color:#199c19;stop-opacity:1;" - offset="1" - id="stop3958" /> - </linearGradient> - <filter - inkscape:collect="always" - id="filter3884"> - <feGaussianBlur - inkscape:collect="always" - stdDeviation="0.505" - id="feGaussianBlur3886" /> - </filter> - <filter - inkscape:collect="always" - id="filter3898" - x="-0.20110182" - width="1.4022036" - y="-0.20210065" - height="1.4042013"> - <feGaussianBlur - inkscape:collect="always" - stdDeviation="1.0604979" - id="feGaussianBlur3900" /> - </filter> - <filter - inkscape:collect="always" - id="filter3916" - x="-0.11491533" - width="1.2298307" - y="-0.11548609" - height="1.2309722"> - <feGaussianBlur - inkscape:collect="always" - stdDeviation="0.6059988" - id="feGaussianBlur3918" /> - </filter> - <filter - inkscape:collect="always" - id="filter3992"> - <feGaussianBlur - inkscape:collect="always" - stdDeviation="1.44" - id="feGaussianBlur3994" /> - </filter> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient4239" - id="radialGradient4024" - gradientUnits="userSpaceOnUse" - cx="37.15184" - cy="33.513309" - fx="37.15184" - fy="33.513309" - r="20" - gradientTransform="matrix(-1.2888095,0.63917683,-0.44430494,-0.89587535,99.563439,45.881313)" /> - <filter - inkscape:collect="always" - id="filter4082" - x="-0.13465964" - width="1.2693193" - y="-0.12490681" - height="1.2498136"> - <feGaussianBlur - inkscape:collect="always" - stdDeviation="1.763901" - id="feGaussianBlur4084" /> - </filter> - <filter - inkscape:collect="always" - id="filter4110" - x="-0.17716113" - width="1.3543223" - y="-0.17804105" - height="1.3560821"> - <feGaussianBlur - inkscape:collect="always" - stdDeviation="0.93424815" - id="feGaussianBlur4112" /> - </filter> - <linearGradient - id="linearGradient3954-9"> - <stop - style="stop-color:#000000;stop-opacity:1;" - offset="0" - id="stop3956-4" /> - <stop - style="stop-color:#0f5f52;stop-opacity:1;" - offset="1" - id="stop3958-2" /> - </linearGradient> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient3954" - id="radialGradient4230" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.1486906,1.2798015,-0.74419869,0.66795831,19.056258,-30.328315)" - cx="32" - cy="32" - fx="32" - fy="32" - r="20" /> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient3954" - id="radialGradient4250" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.1486906,1.2798015,-0.74419869,0.66795831,19.056258,-30.328315)" - cx="32" - cy="32" - fx="32" - fy="32" - r="20" /> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient4245" - id="radialGradient4231" - cx="11.428607" - cy="52.782928" - fx="11.428607" - fy="52.782928" - r="22.333248" - gradientTransform="matrix(0,-0.99787164,0.98982309,1.711883e-6,-20.245763,43.404188)" - gradientUnits="userSpaceOnUse" /> - </defs> - <sodipodi:namedview - id="base" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:pageopacity="0.0" - inkscape:pageshadow="2" - inkscape:zoom="8" - inkscape:cx="30.78415" - inkscape:cy="28.132388" - inkscape:document-units="px" - inkscape:current-layer="g4116" - showgrid="false" - showguides="true" - inkscape:guide-bbox="true" - inkscape:window-width="1612" - inkscape:window-height="1026" - inkscape:window-x="1677" - inkscape:window-y="-4" - inkscape:window-maximized="1" - inkscape:snap-global="true" - inkscape:snap-bbox="true"> - <inkscape:grid - type="xygrid" - id="grid2985" - empspacing="2" - visible="true" - enabled="true" - snapvisiblegridlinesonly="true" /> - <sodipodi:guide - orientation="0,1" - position="11.25,96.5" - id="guide4252" /> - </sodipodi:namedview> - <metadata - id="metadata7"> - <rdf:RDF> - <cc:Work - rdf:about=""> - <dc:format>image/svg+xml</dc:format> - <dc:type - rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> - <dc:title></dc:title> - </cc:Work> - </rdf:RDF> - </metadata> - <g - inkscape:label="Layer 1" - inkscape:groupmode="layer" - id="layer1" - transform="translate(0,-988.36218)"> - <g - id="g4116" - transform="matrix(1.3594572,0,0,1.3553409,-10.875658,-362.67325)"> - <path - transform="matrix(1.1769403,0,0,1.1769403,-6.1232836,982.70009)" - d="M 52,32 C 52,43.045695 43.045695,52 32,52 20.954305,52 12,43.045695 12,32 12,20.954305 20.954305,12 32,12 c 11.045695,0 20,8.954305 20,20 z" - sodipodi:ry="20" - sodipodi:rx="20" - sodipodi:cy="32" - sodipodi:cx="32" - id="path3014" - style="fill:url(#radialGradient4024);fill-opacity:1;stroke:none" - sodipodi:type="arc" /> - <path - sodipodi:nodetypes="ssccs" - inkscape:connector-curvature="0" - id="path3866" - transform="matrix(1.1769403,0,0,1.1769403,-5.6620909,982.68843)" - d="m 28,16 c -6.627417,0 -12,5.372583 -12,12 0,0.20181 0.0214,0.394383 0.03125,0.59375 C 20,20 22,22 28.65625,16.03125 28.436252,16.019242 28.222996,16 28,16 z" - style="fill:#08ff00;fill-opacity:1;stroke:none;filter:url(#filter3884)" /> - <path - transform="matrix(1.487885,0,0,1.487885,-10.597031,-493.22036)" - style="fill:#14ff00;fill-opacity:1;stroke:none;filter:url(#filter3898)" - d="m 28,1004.3622 c -6.627417,0 -12,5.3726 -12,12 0,0.2018 0.0214,0.3944 0.03125,0.5937 3.96875,-8.5937 5.96875,-6.5937 12.625,-12.5625 -0.219998,-0.012 -0.433254,-0.031 -0.65625,-0.031 z" - id="path3888" - inkscape:connector-curvature="0" - sodipodi:nodetypes="ssccs" /> - <path - sodipodi:nodetypes="ssccs" - inkscape:connector-curvature="0" - id="path3902" - d="m 28,1004.3622 c -6.627417,0 -12,5.3726 -12,12 0,0.2018 0.0214,0.3944 0.03125,0.5937 3.96875,-8.5937 5.96875,-6.5937 12.625,-12.5625 -0.219998,-0.012 -0.433254,-0.031 -0.65625,-0.031 z" - style="fill:#56ff00;fill-opacity:1;stroke:none;filter:url(#filter3916)" - transform="matrix(-1.8359746,0,0,-1.8359746,81.432966,2885.3572)" /> - <path - transform="matrix(-1.1914115,0,0,-1.1914115,69.087304,2235.4229)" - style="fill:#d7f4d7;fill-opacity:1;stroke:none;filter:url(#filter3916)" - d="m 28,1004.3622 c -6.627417,0 -12,5.3726 -12,12 0,0.2018 0.0214,0.3944 0.03125,0.5937 3.96875,-8.5937 5.96875,-6.5937 12.625,-12.5625 -0.219998,-0.012 -0.433254,-0.031 -0.65625,-0.031 z" - id="path3920" - inkscape:connector-curvature="0" - sodipodi:nodetypes="ssccs" /> - <path - sodipodi:nodetypes="csccsc" - inkscape:connector-curvature="0" - id="path3964" - d="m 28,1004.3622 c -6.627417,0 -12,5.3726 -12,12 0,0.2018 0.0214,0.3944 0.03125,0.5937 5.570868,-4.4816 8.905966,-4.4575 12.625,-12.5625 -0.219998,-0.012 -0.433254,-0.031 -0.65625,-0.031 z" - style="fill:#ffffff;fill-opacity:1;stroke:none;filter:url(#filter4110)" - transform="matrix(0.58516297,0,0,0.58516297,6.7391969,416.10681)" /> - </g> - </g> -</svg> diff --git a/resources/sources/status-terrible.svg b/resources/sources/status-terrible.svg deleted file mode 100644 index b0de7bfd..00000000 --- a/resources/sources/status-terrible.svg +++ /dev/null @@ -1,262 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<!-- Created with Inkscape (http://www.inkscape.org/) --> - -<svg - xmlns:dc="http://purl.org/dc/elements/1.1/" - xmlns:cc="http://creativecommons.org/ns#" - xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" - xmlns:svg="http://www.w3.org/2000/svg" - xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="64" - height="64" - id="svg2" - version="1.1" - inkscape:version="0.48.4 r9939" - sodipodi:docname="status-terrible.svg" - inkscape:export-filename="/home/peterix/projects/MultiMC4/src/resources/insticons/enderpearl.png" - inkscape:export-xdpi="45" - inkscape:export-ydpi="45"> - <defs - id="defs4"> - <linearGradient - id="linearGradient4245"> - <stop - id="stop4247" - offset="0" - style="stop-color:#000000;stop-opacity:1;" /> - <stop - style="stop-color:#106810;stop-opacity:1" - offset="0.89412045" - id="stop4251" /> - <stop - id="stop4249" - offset="1" - style="stop-color:#199c19;stop-opacity:0" /> - </linearGradient> - <linearGradient - id="linearGradient4239"> - <stop - id="stop4241" - offset="0" - style="stop-color:#510000;stop-opacity:1;" /> - <stop - id="stop4243" - offset="1" - style="stop-color:#ee0000;stop-opacity:1;" /> - </linearGradient> - <linearGradient - id="linearGradient4030"> - <stop - id="stop4032" - offset="0" - style="stop-color:#000000;stop-opacity:1;" /> - <stop - id="stop4034" - offset="1" - style="stop-color:#0c493f;stop-opacity:0;" /> - </linearGradient> - <linearGradient - id="linearGradient3954"> - <stop - style="stop-color:#000000;stop-opacity:1;" - offset="0" - id="stop3956" /> - <stop - style="stop-color:#199c19;stop-opacity:1;" - offset="1" - id="stop3958" /> - </linearGradient> - <filter - inkscape:collect="always" - id="filter3884"> - <feGaussianBlur - inkscape:collect="always" - stdDeviation="0.505" - id="feGaussianBlur3886" /> - </filter> - <filter - inkscape:collect="always" - id="filter3898" - x="-0.20110182" - width="1.4022036" - y="-0.20210065" - height="1.4042013"> - <feGaussianBlur - inkscape:collect="always" - stdDeviation="1.0604979" - id="feGaussianBlur3900" /> - </filter> - <filter - inkscape:collect="always" - id="filter3916" - x="-0.11491533" - width="1.2298307" - y="-0.11548609" - height="1.2309722"> - <feGaussianBlur - inkscape:collect="always" - stdDeviation="0.6059988" - id="feGaussianBlur3918" /> - </filter> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient4239" - id="radialGradient4024" - gradientUnits="userSpaceOnUse" - cx="37.15184" - cy="33.513309" - fx="37.15184" - fy="33.513309" - r="20" - gradientTransform="matrix(-1.2888095,0.63917683,-0.44430494,-0.89587535,99.563439,45.881313)" /> - <filter - inkscape:collect="always" - id="filter4110" - x="-0.17716113" - width="1.3543223" - y="-0.17804105" - height="1.3560821"> - <feGaussianBlur - inkscape:collect="always" - stdDeviation="0.93424815" - id="feGaussianBlur4112" /> - </filter> - <linearGradient - id="linearGradient3954-9"> - <stop - style="stop-color:#000000;stop-opacity:1;" - offset="0" - id="stop3956-4" /> - <stop - style="stop-color:#0f5f52;stop-opacity:1;" - offset="1" - id="stop3958-2" /> - </linearGradient> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient3954" - id="radialGradient4230" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.1486906,1.2798015,-0.74419869,0.66795831,19.056258,-30.328315)" - cx="32" - cy="32" - fx="32" - fy="32" - r="20" /> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient3954" - id="radialGradient4250" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.1486906,1.2798015,-0.74419869,0.66795831,19.056258,-30.328315)" - cx="32" - cy="32" - fx="32" - fy="32" - r="20" /> - </defs> - <sodipodi:namedview - id="base" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:pageopacity="0.0" - inkscape:pageshadow="2" - inkscape:zoom="0.5" - inkscape:cx="-732.84524" - inkscape:cy="332.3527" - inkscape:document-units="px" - inkscape:current-layer="g4116" - showgrid="false" - showguides="true" - inkscape:guide-bbox="true" - inkscape:window-width="1612" - inkscape:window-height="1026" - inkscape:window-x="1677" - inkscape:window-y="-4" - inkscape:window-maximized="1" - inkscape:snap-global="true" - inkscape:snap-bbox="true"> - <inkscape:grid - type="xygrid" - id="grid2985" - empspacing="2" - visible="true" - enabled="true" - snapvisiblegridlinesonly="true" /> - <sodipodi:guide - orientation="0,1" - position="11.25,96.5" - id="guide4252" /> - </sodipodi:namedview> - <metadata - id="metadata7"> - <rdf:RDF> - <cc:Work - rdf:about=""> - <dc:format>image/svg+xml</dc:format> - <dc:type - rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> - <dc:title></dc:title> - </cc:Work> - </rdf:RDF> - </metadata> - <g - inkscape:label="Layer 1" - inkscape:groupmode="layer" - id="layer1" - transform="translate(0,-988.36218)"> - <g - id="g4116" - transform="matrix(1.3594572,0,0,1.3553409,-10.875658,-362.67325)"> - <path - transform="matrix(1.1769403,0,0,1.1769403,-6.1232836,982.70009)" - d="M 52,32 C 52,43.045695 43.045695,52 32,52 20.954305,52 12,43.045695 12,32 12,20.954305 20.954305,12 32,12 c 11.045695,0 20,8.954305 20,20 z" - sodipodi:ry="20" - sodipodi:rx="20" - sodipodi:cy="32" - sodipodi:cx="32" - id="path3014" - style="fill:url(#radialGradient4024);fill-opacity:1;stroke:none" - sodipodi:type="arc" /> - <path - sodipodi:nodetypes="ssccs" - inkscape:connector-curvature="0" - id="path3866" - transform="matrix(1.1769403,0,0,1.1769403,-5.6620909,982.68843)" - d="m 28,16 c -6.627417,0 -12,5.372583 -12,12 0,0.20181 0.0214,0.394383 0.03125,0.59375 C 20,20 22,22 28.65625,16.03125 28.436252,16.019242 28.222996,16 28,16 z" - style="fill:#ff8f8f;fill-opacity:1;stroke:none;filter:url(#filter3884)" /> - <path - transform="matrix(1.487885,0,0,1.487885,-10.597031,-493.22036)" - style="fill:#ff7878;fill-opacity:1;stroke:none;filter:url(#filter3898)" - d="m 28,1004.3622 c -6.627417,0 -12,5.3726 -12,12 0,0.2018 0.0214,0.3944 0.03125,0.5937 3.96875,-8.5937 5.96875,-6.5937 12.625,-12.5625 -0.219998,-0.012 -0.433254,-0.031 -0.65625,-0.031 z" - id="path3888" - inkscape:connector-curvature="0" - sodipodi:nodetypes="ssccs" /> - <path - sodipodi:nodetypes="ssccs" - inkscape:connector-curvature="0" - id="path3902" - d="m 28,1004.3622 c -6.627417,0 -12,5.3726 -12,12 0,0.2018 0.0214,0.3944 0.03125,0.5937 3.96875,-8.5937 5.96875,-6.5937 12.625,-12.5625 -0.219998,-0.012 -0.433254,-0.031 -0.65625,-0.031 z" - style="fill:#ff5252;fill-opacity:1;stroke:none;filter:url(#filter3916)" - transform="matrix(-1.8359746,0,0,-1.8359746,81.432966,2885.3572)" /> - <path - transform="matrix(-1.1914115,0,0,-1.1914115,69.087304,2235.4229)" - style="fill:#ffffff;fill-opacity:1;stroke:none;filter:url(#filter3916);opacity:0.75187970000000004" - d="m 28,1004.3622 c -6.627417,0 -12,5.3726 -12,12 0,0.2018 0.0214,0.3944 0.03125,0.5937 3.96875,-8.5937 5.96875,-6.5937 12.625,-12.5625 -0.219998,-0.012 -0.433254,-0.031 -0.65625,-0.031 z" - id="path3920" - inkscape:connector-curvature="0" - sodipodi:nodetypes="ssccs" /> - <path - sodipodi:nodetypes="csccsc" - inkscape:connector-curvature="0" - id="path3964" - d="m 28,1004.3622 c -6.627417,0 -12,5.3726 -12,12 0,0.2018 0.0214,0.3944 0.03125,0.5937 5.570868,-4.4816 8.905966,-4.4575 12.625,-12.5625 -0.219998,-0.012 -0.433254,-0.031 -0.65625,-0.031 z" - style="fill:#ffffff;fill-opacity:1;stroke:none;filter:url(#filter4110);opacity:0.69924812" - transform="matrix(0.58516297,0,0,0.58516297,6.7391969,416.10681)" /> - </g> - </g> -</svg> |