mirror of
https://github.com/arcan1s/awesome-widgets.git
synced 2025-04-25 07:57:19 +00:00
possible fix #75
I've added 'optimize' option (by default true). If it options is set then sources will be checked if they are required (with dependencies if any). And if they are not required they will be dropped by using common mechanism. Please note that if this option enabled the following features (at the moment) will be unavailable: * key request from context menu (from configuration interface it still works) * notifications event if sources on which notification is not connected I suppose this commit will increase performance in about 4-5 times.
This commit is contained in:
parent
54e1545bb1
commit
d856fa8e97
@ -32,6 +32,9 @@
|
|||||||
<entry name="checkUpdates" type="bool">
|
<entry name="checkUpdates" type="bool">
|
||||||
<default>true</default>
|
<default>true</default>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry name="optimize" type="bool">
|
||||||
|
<default>true</default>
|
||||||
|
</entry>
|
||||||
<entry name="height" type="int">
|
<entry name="height" type="int">
|
||||||
<default>0</default>
|
<default>0</default>
|
||||||
</entry>
|
</entry>
|
||||||
@ -95,13 +98,13 @@
|
|||||||
<entry name="swapTooltipColor" type="string">
|
<entry name="swapTooltipColor" type="string">
|
||||||
<default>#ffff00</default>
|
<default>#ffff00</default>
|
||||||
</entry>
|
</entry>
|
||||||
<entry name="downTooltip" type="bool">
|
<entry name="downkbTooltip" type="bool">
|
||||||
<default>true</default>
|
<default>true</default>
|
||||||
</entry>
|
</entry>
|
||||||
<entry name="downTooltipColor" type="string">
|
<entry name="downkbTooltipColor" type="string">
|
||||||
<default>#00ffff</default>
|
<default>#00ffff</default>
|
||||||
</entry>
|
</entry>
|
||||||
<entry name="upTooltipColor" type="string">
|
<entry name="upkbTooltipColor" type="string">
|
||||||
<default>#ff00ff</default>
|
<default>#ff00ff</default>
|
||||||
</entry>
|
</entry>
|
||||||
<entry name="batTooltip" type="bool">
|
<entry name="batTooltip" type="bool">
|
||||||
|
@ -45,6 +45,7 @@ Item {
|
|||||||
property alias cfg_wrapText: wordWrap.checked
|
property alias cfg_wrapText: wordWrap.checked
|
||||||
property alias cfg_notify: notify.checked
|
property alias cfg_notify: notify.checked
|
||||||
property alias cfg_checkUpdates: updates.checked
|
property alias cfg_checkUpdates: updates.checked
|
||||||
|
property alias cfg_optimize: optimize.checked
|
||||||
property alias cfg_height: widgetHeight.value
|
property alias cfg_height: widgetHeight.value
|
||||||
property alias cfg_width: widgetWidth.value
|
property alias cfg_width: widgetWidth.value
|
||||||
property alias cfg_interval: update.value
|
property alias cfg_interval: update.value
|
||||||
@ -143,6 +144,20 @@ Item {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Row {
|
||||||
|
height: implicitHeight
|
||||||
|
width: parent.width
|
||||||
|
QtControls.Label {
|
||||||
|
height: parent.heigth
|
||||||
|
width: parent.width * 2 / 5
|
||||||
|
}
|
||||||
|
QtControls.CheckBox {
|
||||||
|
id: optimize
|
||||||
|
width: parent.width * 3 / 5
|
||||||
|
text: i18n("Optimize subscription")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Row {
|
Row {
|
||||||
height: implicitHeight
|
height: implicitHeight
|
||||||
width: parent.width
|
width: parent.width
|
||||||
|
@ -46,15 +46,15 @@ Item {
|
|||||||
"cpuclTooltip": plasmoid.configuration.cpuclTooltip,
|
"cpuclTooltip": plasmoid.configuration.cpuclTooltip,
|
||||||
"memTooltip": plasmoid.configuration.memTooltip,
|
"memTooltip": plasmoid.configuration.memTooltip,
|
||||||
"swapTooltip": plasmoid.configuration.swapTooltip,
|
"swapTooltip": plasmoid.configuration.swapTooltip,
|
||||||
"downTooltip": plasmoid.configuration.downTooltip,
|
"downkbTooltip": plasmoid.configuration.downkbTooltip,
|
||||||
"upTooltip": plasmoid.configuration.downTooltip,
|
"upkbTooltip": plasmoid.configuration.downkbTooltip,
|
||||||
"batTooltip": plasmoid.configuration.batTooltip,
|
"batTooltip": plasmoid.configuration.batTooltip,
|
||||||
"cpuTooltipColor": plasmoid.configuration.cpuTooltipColor,
|
"cpuTooltipColor": plasmoid.configuration.cpuTooltipColor,
|
||||||
"cpuclTooltipColor": plasmoid.configuration.cpuclTooltipColor,
|
"cpuclTooltipColor": plasmoid.configuration.cpuclTooltipColor,
|
||||||
"memTooltipColor": plasmoid.configuration.memTooltipColor,
|
"memTooltipColor": plasmoid.configuration.memTooltipColor,
|
||||||
"swapTooltipColor": plasmoid.configuration.swapTooltipColor,
|
"swapTooltipColor": plasmoid.configuration.swapTooltipColor,
|
||||||
"downTooltipColor": plasmoid.configuration.downTooltipColor,
|
"downkbTooltipColor": plasmoid.configuration.downkbTooltipColor,
|
||||||
"upTooltipColor": plasmoid.configuration.upTooltipColor,
|
"upkbTooltipColor": plasmoid.configuration.upkbTooltipColor,
|
||||||
"batTooltipColor": plasmoid.configuration.batTooltipColor,
|
"batTooltipColor": plasmoid.configuration.batTooltipColor,
|
||||||
"batInTooltipColor": plasmoid.configuration.batInTooltipColor,
|
"batInTooltipColor": plasmoid.configuration.batInTooltipColor,
|
||||||
// additional field to parse AC status
|
// additional field to parse AC status
|
||||||
@ -136,6 +136,8 @@ Item {
|
|||||||
if (debug) console.debug()
|
if (debug) console.debug()
|
||||||
|
|
||||||
// actions
|
// actions
|
||||||
|
// it makes no sense to use this field with optimization enable
|
||||||
|
if (!plasmoid.configuration.optimize)
|
||||||
plasmoid.setAction("requestKey", i18n("Request key"), "utilities-system-monitor")
|
plasmoid.setAction("requestKey", i18n("Request key"), "utilities-system-monitor")
|
||||||
plasmoid.setAction("showReadme", i18n("Show README"), "text-x-readme")
|
plasmoid.setAction("showReadme", i18n("Show README"), "text-x-readme")
|
||||||
plasmoid.setAction("checkUpdates", i18n("Check updates"), "system-software-update")
|
plasmoid.setAction("checkUpdates", i18n("Check updates"), "system-software-update")
|
||||||
@ -187,9 +189,9 @@ Item {
|
|||||||
if (debug) console.debug()
|
if (debug) console.debug()
|
||||||
|
|
||||||
// init submodule
|
// init submodule
|
||||||
awKeys.initKeys(plasmoid.configuration.text, plasmoid.configuration.interval,
|
|
||||||
plasmoid.configuration.queueLimit)
|
|
||||||
awKeys.initDataAggregator(tooltipSettings)
|
awKeys.initDataAggregator(tooltipSettings)
|
||||||
|
awKeys.initKeys(plasmoid.configuration.text, plasmoid.configuration.interval,
|
||||||
|
plasmoid.configuration.queueLimit, plasmoid.configuration.optimize)
|
||||||
awKeys.setWrapNewLines(plasmoid.configuration.wrapNewLines)
|
awKeys.setWrapNewLines(plasmoid.configuration.wrapNewLines)
|
||||||
// configure aggregator
|
// configure aggregator
|
||||||
awKeys.setAggregatorProperty("acOffline", plasmoid.configuration.acOffline)
|
awKeys.setAggregatorProperty("acOffline", plasmoid.configuration.acOffline)
|
||||||
|
@ -48,9 +48,9 @@ Item {
|
|||||||
property alias cfg_memTooltipColor: memTooltipColor.text
|
property alias cfg_memTooltipColor: memTooltipColor.text
|
||||||
property alias cfg_swapTooltip: swapTooltip.checked
|
property alias cfg_swapTooltip: swapTooltip.checked
|
||||||
property alias cfg_swapTooltipColor: swapTooltipColor.text
|
property alias cfg_swapTooltipColor: swapTooltipColor.text
|
||||||
property alias cfg_downTooltip: downTooltip.checked
|
property alias cfg_downkbTooltip: downkbTooltip.checked
|
||||||
property alias cfg_downTooltipColor: downTooltipColor.text
|
property alias cfg_downkbTooltipColor: downkbTooltipColor.text
|
||||||
property alias cfg_upTooltipColor: upTooltipColor.text
|
property alias cfg_upkbTooltipColor: upkbTooltipColor.text
|
||||||
property alias cfg_batTooltip: batTooltip.checked
|
property alias cfg_batTooltip: batTooltip.checked
|
||||||
property alias cfg_batTooltipColor: batTooltipColor.text
|
property alias cfg_batTooltipColor: batTooltipColor.text
|
||||||
property alias cfg_batInTooltipColor: batInTooltipColor.text
|
property alias cfg_batInTooltipColor: batInTooltipColor.text
|
||||||
@ -273,7 +273,7 @@ Item {
|
|||||||
}
|
}
|
||||||
|
|
||||||
QtControls.GroupBox {
|
QtControls.GroupBox {
|
||||||
id: downTooltip
|
id: downkbTooltip
|
||||||
height: implicitHeight
|
height: implicitHeight
|
||||||
width: parent.width
|
width: parent.width
|
||||||
checkable: true
|
checkable: true
|
||||||
@ -292,22 +292,22 @@ Item {
|
|||||||
text: i18n("Download speed color")
|
text: i18n("Download speed color")
|
||||||
}
|
}
|
||||||
QtControls.Button {
|
QtControls.Button {
|
||||||
id: downTooltipColor
|
id: downkbTooltipColor
|
||||||
width: parent.width * 3 / 5
|
width: parent.width * 3 / 5
|
||||||
style: QtStyles.ButtonStyle {
|
style: QtStyles.ButtonStyle {
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
color: plasmoid.configuration.downTooltipColor
|
color: plasmoid.configuration.downkbTooltipColor
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
text: plasmoid.configuration.downTooltipColor
|
text: plasmoid.configuration.downkbTooltipColor
|
||||||
onClicked: downTooltipColorDialog.visible = true
|
onClicked: downkbTooltipColorDialog.visible = true
|
||||||
}
|
}
|
||||||
|
|
||||||
QtDialogs.ColorDialog {
|
QtDialogs.ColorDialog {
|
||||||
id: downTooltipColorDialog
|
id: downkbTooltipColorDialog
|
||||||
title: i18n("Select a color")
|
title: i18n("Select a color")
|
||||||
color: downTooltipColor.text
|
color: downkbTooltipColor.text
|
||||||
onAccepted: downTooltipColor.text = downTooltipColorDialog.color
|
onAccepted: downkbTooltipColor.text = downkbTooltipColorDialog.color
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Row {
|
Row {
|
||||||
@ -321,22 +321,22 @@ Item {
|
|||||||
text: i18n("Upload speed color")
|
text: i18n("Upload speed color")
|
||||||
}
|
}
|
||||||
QtControls.Button {
|
QtControls.Button {
|
||||||
id: upTooltipColor
|
id: upkbTooltipColor
|
||||||
width: parent.width * 3 / 5
|
width: parent.width * 3 / 5
|
||||||
style: QtStyles.ButtonStyle {
|
style: QtStyles.ButtonStyle {
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
color: plasmoid.configuration.upTooltipColor
|
color: plasmoid.configuration.upkbTooltipColor
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
text: plasmoid.configuration.upTooltipColor
|
text: plasmoid.configuration.upkbTooltipColor
|
||||||
onClicked: upTooltipColorDialog.visible = true
|
onClicked: upkbTooltipColorDialog.visible = true
|
||||||
}
|
}
|
||||||
|
|
||||||
QtDialogs.ColorDialog {
|
QtDialogs.ColorDialog {
|
||||||
id: upTooltipColorDialog
|
id: upkbTooltipColorDialog
|
||||||
title: i18n("Select a color")
|
title: i18n("Select a color")
|
||||||
color: upTooltipColor.text
|
color: upkbTooltipColor.text
|
||||||
onAccepted: upTooltipColor.text = upTooltipColorDialog.color
|
onAccepted: upkbTooltipColor.text = upkbTooltipColorDialog.color
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -318,7 +318,7 @@ Item {
|
|||||||
onClicked: {
|
onClicked: {
|
||||||
lock = false
|
lock = false
|
||||||
awKeys.initKeys(textPattern.text, plasmoid.configuration.interval,
|
awKeys.initKeys(textPattern.text, plasmoid.configuration.interval,
|
||||||
plasmoid.configuration.queueLimit)
|
plasmoid.configuration.queueLimit, false)
|
||||||
awKeys.needToBeUpdated()
|
awKeys.needToBeUpdated()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -346,7 +346,7 @@ Item {
|
|||||||
awKeys.needTextToBeUpdated.connect(needTextUpdate)
|
awKeys.needTextToBeUpdated.connect(needTextUpdate)
|
||||||
// init submodule
|
// init submodule
|
||||||
awKeys.initKeys(plasmoid.configuration.text, plasmoid.configuration.interval,
|
awKeys.initKeys(plasmoid.configuration.text, plasmoid.configuration.interval,
|
||||||
plasmoid.configuration.queueLimit)
|
plasmoid.configuration.queueLimit, false)
|
||||||
awKeys.setAggregatorProperty("acOffline", plasmoid.configuration.acOffline)
|
awKeys.setAggregatorProperty("acOffline", plasmoid.configuration.acOffline)
|
||||||
awKeys.setAggregatorProperty("acOnline", plasmoid.configuration.acOnline)
|
awKeys.setAggregatorProperty("acOnline", plasmoid.configuration.acOnline)
|
||||||
awKeys.setAggregatorProperty("customTime", plasmoid.configuration.customTime)
|
awKeys.setAggregatorProperty("customTime", plasmoid.configuration.customTime)
|
||||||
|
@ -87,7 +87,7 @@ void AWDataAggregator::setParameters(QVariantMap settings)
|
|||||||
counts += configuration[QString("cpuclTooltip")].toInt();
|
counts += configuration[QString("cpuclTooltip")].toInt();
|
||||||
counts += configuration[QString("memTooltip")].toInt();
|
counts += configuration[QString("memTooltip")].toInt();
|
||||||
counts += configuration[QString("swapTooltip")].toInt();
|
counts += configuration[QString("swapTooltip")].toInt();
|
||||||
counts += configuration[QString("downTooltip")].toInt();
|
counts += configuration[QString("downkbTooltip")].toInt();
|
||||||
counts += configuration[QString("batTooltip")].toInt();
|
counts += configuration[QString("batTooltip")].toInt();
|
||||||
// resize tooltip image
|
// resize tooltip image
|
||||||
toolTipView->resize(100 * counts, 105);
|
toolTipView->resize(100 * counts, 105);
|
||||||
@ -96,8 +96,8 @@ void AWDataAggregator::setParameters(QVariantMap settings)
|
|||||||
boundaries[QString("cpuclTooltip")] = 4000.0;
|
boundaries[QString("cpuclTooltip")] = 4000.0;
|
||||||
boundaries[QString("memTooltip")] = 100.0;
|
boundaries[QString("memTooltip")] = 100.0;
|
||||||
boundaries[QString("swapTooltip")] = 100.0;
|
boundaries[QString("swapTooltip")] = 100.0;
|
||||||
boundaries[QString("downTooltip")] = 1.0;
|
boundaries[QString("downkbTooltip")] = 1.0;
|
||||||
boundaries[QString("upTooltip")] = 1.0;
|
boundaries[QString("upkbTooltip")] = 1.0;
|
||||||
boundaries[QString("batTooltip")] = 100.0;
|
boundaries[QString("batTooltip")] = 100.0;
|
||||||
|
|
||||||
requiredKeys.clear();
|
requiredKeys.clear();
|
||||||
@ -109,10 +109,10 @@ void AWDataAggregator::setParameters(QVariantMap settings)
|
|||||||
requiredKeys.append(QString("memTooltip"));
|
requiredKeys.append(QString("memTooltip"));
|
||||||
if (configuration[QString("swapTooltip")].toBool())
|
if (configuration[QString("swapTooltip")].toBool())
|
||||||
requiredKeys.append(QString("swapTooltip"));
|
requiredKeys.append(QString("swapTooltip"));
|
||||||
if (configuration[QString("downTooltip")].toBool())
|
if (configuration[QString("downkbTooltip")].toBool())
|
||||||
requiredKeys.append(QString("downTooltip"));
|
requiredKeys.append(QString("downkbTooltip"));
|
||||||
if (configuration[QString("upTooltip")].toBool())
|
if (configuration[QString("upkbTooltip")].toBool())
|
||||||
requiredKeys.append(QString("upTooltip"));
|
requiredKeys.append(QString("upkbTooltip"));
|
||||||
if (configuration[QString("batTooltip")].toBool())
|
if (configuration[QString("batTooltip")].toBool())
|
||||||
requiredKeys.append(QString("batTooltip"));
|
requiredKeys.append(QString("batTooltip"));
|
||||||
|
|
||||||
@ -133,9 +133,9 @@ QPixmap AWDataAggregator::tooltipImage()
|
|||||||
bool down = false;
|
bool down = false;
|
||||||
for (auto key : requiredKeys) {
|
for (auto key : requiredKeys) {
|
||||||
// create frame
|
// create frame
|
||||||
float normX = 100.0 / static_cast<float>(data[key].count());
|
float normX = 100.0f / static_cast<float>(data[key].count());
|
||||||
float normY = 100.0 / (1.5 * boundaries[key]);
|
float normY = 100.0f / (1.5f * boundaries[key]);
|
||||||
float shift = requiredKeys.indexOf(key) * 100.0;
|
float shift = requiredKeys.indexOf(key) * 100.0f;
|
||||||
if (down)
|
if (down)
|
||||||
shift -= 100.0;
|
shift -= 100.0;
|
||||||
// apply pen color
|
// apply pen color
|
||||||
@ -146,9 +146,9 @@ QPixmap AWDataAggregator::tooltipImage()
|
|||||||
for (int j = 0; j < data[key].count() - 1; j++) {
|
for (int j = 0; j < data[key].count() - 1; j++) {
|
||||||
// some magic here
|
// some magic here
|
||||||
float x1 = j * normX + shift;
|
float x1 = j * normX + shift;
|
||||||
float y1 = -fabs(data[key].at(j)) * normY + 5.0;
|
float y1 = -fabs(data[key].at(j)) * normY + 5.0f;
|
||||||
float x2 = (j + 1) * normX + shift;
|
float x2 = (j + 1) * normX + shift;
|
||||||
float y2 = -fabs(data[key].at(j + 1)) * normY + 5.0;
|
float y2 = -fabs(data[key].at(j + 1)) * normY + 5.0f;
|
||||||
if (key == QString("batTooltip")) {
|
if (key == QString("batTooltip")) {
|
||||||
if (data[key].at(j + 1) > 0)
|
if (data[key].at(j + 1) > 0)
|
||||||
pen.setColor(QColor(
|
pen.setColor(QColor(
|
||||||
@ -160,7 +160,7 @@ QPixmap AWDataAggregator::tooltipImage()
|
|||||||
}
|
}
|
||||||
toolTipScene->addLine(x1, y1, x2, y2, pen);
|
toolTipScene->addLine(x1, y1, x2, y2, pen);
|
||||||
}
|
}
|
||||||
if (key == QString("downTooltip"))
|
if (key == QString("downkbTooltip"))
|
||||||
down = true;
|
down = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -265,8 +265,8 @@ void AWDataAggregator::setData(const QHash<QString, QString> &values)
|
|||||||
setData(QString("cpuclTooltip"), values[QString("cpucl")].toFloat());
|
setData(QString("cpuclTooltip"), values[QString("cpucl")].toFloat());
|
||||||
setData(QString("memTooltip"), values[QString("mem")].toFloat(), 90.0);
|
setData(QString("memTooltip"), values[QString("mem")].toFloat(), 90.0);
|
||||||
setData(QString("swapTooltip"), values[QString("swap")].toFloat(), 0.0);
|
setData(QString("swapTooltip"), values[QString("swap")].toFloat(), 0.0);
|
||||||
setData(QString("downTooltip"), values[QString("downkb")].toFloat());
|
setData(QString("downkbTooltip"), values[QString("downkb")].toFloat());
|
||||||
setData(QString("upTooltip"), values[QString("upkb")].toFloat());
|
setData(QString("upkbTooltip"), values[QString("upkb")].toFloat());
|
||||||
// additional check for network device
|
// additional check for network device
|
||||||
[this](const QString value) {
|
[this](const QString value) {
|
||||||
checkValue(QString("netdev"), currentNetworkDevice, value);
|
checkValue(QString("netdev"), currentNetworkDevice, value);
|
||||||
@ -298,12 +298,13 @@ void AWDataAggregator::setData(const QString &source, float value,
|
|||||||
checkValue(source, value, extremum);
|
checkValue(source, value, extremum);
|
||||||
|
|
||||||
data[source].append(value);
|
data[source].append(value);
|
||||||
if (source == QString("downTooltip")) {
|
if (source == QString("downkbTooltip")) {
|
||||||
QList<float> netValues
|
QList<float> netValues
|
||||||
= data[QString("downTooltip")] + data[QString("upTooltip")];
|
= data[QString("downkbTooltip")] + data[QString("upkbTooltip")];
|
||||||
boundaries[QString("downTooltip")]
|
boundaries[QString("downkbTooltip")]
|
||||||
= 1.2 * *std::max_element(netValues.cbegin(), netValues.cend());
|
= 1.2 * *std::max_element(netValues.cbegin(), netValues.cend());
|
||||||
boundaries[QString("upTooltip")] = boundaries[QString("downTooltip")];
|
boundaries[QString("upkbTooltip")]
|
||||||
|
= boundaries[QString("downkbTooltip")];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21,14 +21,10 @@
|
|||||||
#include "awkeys.h"
|
#include "awkeys.h"
|
||||||
|
|
||||||
|
|
||||||
AWDataEngineAggregator::AWDataEngineAggregator(QObject *parent,
|
AWDataEngineAggregator::AWDataEngineAggregator(QObject *parent)
|
||||||
const int interval)
|
|
||||||
: QObject(parent)
|
: QObject(parent)
|
||||||
{
|
{
|
||||||
qCDebug(LOG_AW) << __PRETTY_FUNCTION__;
|
qCDebug(LOG_AW) << __PRETTY_FUNCTION__;
|
||||||
|
|
||||||
setInterval(interval);
|
|
||||||
initDataEngines();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -36,10 +32,17 @@ AWDataEngineAggregator::~AWDataEngineAggregator()
|
|||||||
{
|
{
|
||||||
qCDebug(LOG_AW) << __PRETTY_FUNCTION__;
|
qCDebug(LOG_AW) << __PRETTY_FUNCTION__;
|
||||||
|
|
||||||
|
clear();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void AWDataEngineAggregator::clear()
|
||||||
|
{
|
||||||
// disconnect sources first
|
// disconnect sources first
|
||||||
disconnectSources();
|
disconnectSources();
|
||||||
m_dataEngines.clear();
|
m_dataEngines.clear();
|
||||||
delete m_consumer;
|
delete m_consumer;
|
||||||
|
m_consumer = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -51,11 +54,27 @@ void AWDataEngineAggregator::disconnectSources()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void AWDataEngineAggregator::setInterval(const int _interval)
|
void AWDataEngineAggregator::initDataEngines(const int interval)
|
||||||
{
|
{
|
||||||
qCDebug(LOG_AW) << "Interval" << _interval;
|
qCDebug(LOG_AW) << "Init dataengines with interval" << interval;
|
||||||
|
|
||||||
m_interval = _interval;
|
m_consumer = new Plasma::DataEngineConsumer();
|
||||||
|
m_dataEngines[QString("systemmonitor")]
|
||||||
|
= m_consumer->dataEngine(QString("systemmonitor"));
|
||||||
|
m_dataEngines[QString("extsysmon")]
|
||||||
|
= m_consumer->dataEngine(QString("extsysmon"));
|
||||||
|
m_dataEngines[QString("time")] = m_consumer->dataEngine(QString("time"));
|
||||||
|
|
||||||
|
// additional method required by systemmonitor structure
|
||||||
|
connect(m_dataEngines[QString("systemmonitor")],
|
||||||
|
&Plasma::DataEngine::sourceAdded,
|
||||||
|
[this, interval](const QString source) {
|
||||||
|
emit(deviceAdded(source));
|
||||||
|
m_dataEngines[QString("systemmonitor")]->connectSource(
|
||||||
|
source, parent(), interval);
|
||||||
|
});
|
||||||
|
|
||||||
|
return reconnectSources(interval);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -70,31 +89,13 @@ void AWDataEngineAggregator::dropSource(const QString source)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void AWDataEngineAggregator::reconnectSources()
|
void AWDataEngineAggregator::reconnectSources(const int interval)
|
||||||
{
|
{
|
||||||
|
qCDebug(LOG_AW) << "Reconnect sources with interval" << interval;
|
||||||
|
|
||||||
m_dataEngines[QString("systemmonitor")]->connectAllSources(parent(),
|
m_dataEngines[QString("systemmonitor")]->connectAllSources(parent(),
|
||||||
m_interval);
|
interval);
|
||||||
m_dataEngines[QString("extsysmon")]->connectAllSources(parent(),
|
m_dataEngines[QString("extsysmon")]->connectAllSources(parent(), interval);
|
||||||
m_interval);
|
|
||||||
m_dataEngines[QString("time")]->connectSource(QString("Local"), parent(),
|
m_dataEngines[QString("time")]->connectSource(QString("Local"), parent(),
|
||||||
1000);
|
1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void AWDataEngineAggregator::initDataEngines()
|
|
||||||
{
|
|
||||||
m_consumer = new Plasma::DataEngineConsumer();
|
|
||||||
m_dataEngines[QString("systemmonitor")]
|
|
||||||
= m_consumer->dataEngine(QString("systemmonitor"));
|
|
||||||
m_dataEngines[QString("extsysmon")]
|
|
||||||
= m_consumer->dataEngine(QString("extsysmon"));
|
|
||||||
m_dataEngines[QString("time")] = m_consumer->dataEngine(QString("time"));
|
|
||||||
|
|
||||||
// additional method required by systemmonitor structure
|
|
||||||
connect(m_dataEngines[QString("systemmonitor")],
|
|
||||||
&Plasma::DataEngine::sourceAdded, [this](const QString source) {
|
|
||||||
emit(deviceAdded(source));
|
|
||||||
m_dataEngines[QString("systemmonitor")]->connectSource(
|
|
||||||
source, parent(), m_interval);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
@ -28,28 +28,24 @@
|
|||||||
class AWDataEngineAggregator : public QObject
|
class AWDataEngineAggregator : public QObject
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
Q_PROPERTY(int interval MEMBER m_interval WRITE setInterval);
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit AWDataEngineAggregator(QObject *parent = nullptr,
|
explicit AWDataEngineAggregator(QObject *parent = nullptr);
|
||||||
const int interval = 1000);
|
|
||||||
virtual ~AWDataEngineAggregator();
|
virtual ~AWDataEngineAggregator();
|
||||||
|
void clear();
|
||||||
void disconnectSources();
|
void disconnectSources();
|
||||||
// properties
|
void initDataEngines(const int interval);
|
||||||
void setInterval(const int _interval);
|
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void deviceAdded(const QString &source);
|
void deviceAdded(const QString &source);
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void dropSource(const QString source);
|
void dropSource(const QString source);
|
||||||
void reconnectSources();
|
void reconnectSources(const int interval);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void initDataEngines();
|
|
||||||
Plasma::DataEngineConsumer *m_consumer = nullptr;
|
Plasma::DataEngineConsumer *m_consumer = nullptr;
|
||||||
QHash<QString, Plasma::DataEngine *> m_dataEngines;
|
QHash<QString, Plasma::DataEngine *> m_dataEngines;
|
||||||
int m_interval;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -81,6 +81,93 @@ bool AWKeyCache::addKeyToCache(const QString type, const QString key)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QStringList AWKeyCache::getRequiredKeys(const QStringList &keys,
|
||||||
|
const QStringList &bars,
|
||||||
|
const QVariantMap &tooltip,
|
||||||
|
const QStringList &allKeys)
|
||||||
|
{
|
||||||
|
qCDebug(LOG_AW) << "Looking for required keys in" << keys << bars
|
||||||
|
<< "using tooltip settings" << tooltip;
|
||||||
|
|
||||||
|
// initial copy
|
||||||
|
QSet<QString> used = QSet<QString>::fromList(keys);
|
||||||
|
// insert bars
|
||||||
|
for (auto bar : bars) {
|
||||||
|
bar.remove(QRegExp(QString("^bar[0-9]{1,}")));
|
||||||
|
used << bar;
|
||||||
|
}
|
||||||
|
// insert keys from tooltip
|
||||||
|
for (auto key : tooltip.keys()) {
|
||||||
|
if ((key.endsWith(QString("Tooltip"))) && (tooltip[key].toBool())) {
|
||||||
|
key.remove(QString("Tooltip"));
|
||||||
|
used << key;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// insert depending keys, refer to AWKeys::calculateValues()
|
||||||
|
// hddtotmb*
|
||||||
|
for (auto key : allKeys.filter(QRegExp(QString("^hddtotmb")))) {
|
||||||
|
if (!used.contains(key))
|
||||||
|
continue;
|
||||||
|
key.remove(QString("hddtotmb"));
|
||||||
|
int index = key.toInt();
|
||||||
|
used << QString("hddfreemb%1").arg(index)
|
||||||
|
<< QString("hddmb%1").arg(index);
|
||||||
|
}
|
||||||
|
// hddtotgb*
|
||||||
|
for (auto key : allKeys.filter(QRegExp(QString("^hddtotgb")))) {
|
||||||
|
if (!used.contains(key))
|
||||||
|
continue;
|
||||||
|
key.remove(QString("hddtotgb"));
|
||||||
|
int index = key.toInt();
|
||||||
|
used << QString("hddfreegb%1").arg(index)
|
||||||
|
<< QString("hddgb%1").arg(index);
|
||||||
|
}
|
||||||
|
// mem
|
||||||
|
if (used.contains(QString("mem")))
|
||||||
|
used << QString("memmb") << QString("memtotmb");
|
||||||
|
// memtotmb
|
||||||
|
if (used.contains(QString("memtotmb")))
|
||||||
|
used << QString("memusedmb") << QString("memfreemb");
|
||||||
|
// memtotgb
|
||||||
|
if (used.contains(QString("memtotgb")))
|
||||||
|
used << QString("memusedgb") << QString("memfreegb");
|
||||||
|
// swap
|
||||||
|
if (used.contains(QString("swap")))
|
||||||
|
used << QString("swapmb") << QString("swaptotmb");
|
||||||
|
// swaptotmb
|
||||||
|
if (used.contains(QString("swaptotmb")))
|
||||||
|
used << QString("swapmb") << QString("swapfreemb");
|
||||||
|
// memtotgb
|
||||||
|
if (used.contains(QString("swaptotgb")))
|
||||||
|
used << QString("swapgb") << QString("swapfreegb");
|
||||||
|
// network keys
|
||||||
|
QStringList netKeys(QStringList() << QString("up") << QString("upkb")
|
||||||
|
<< QString("upunits") << QString("down")
|
||||||
|
<< QString("downkb")
|
||||||
|
<< QString("downunits"));
|
||||||
|
for (auto key : netKeys) {
|
||||||
|
if (!used.contains(key))
|
||||||
|
continue;
|
||||||
|
QStringList filt
|
||||||
|
= allKeys.filter(QRegExp(QString("^%1[0-9]{1,}").arg(key)));
|
||||||
|
for (auto filtered : filt)
|
||||||
|
used << filtered;
|
||||||
|
}
|
||||||
|
// netdev key
|
||||||
|
if (std::any_of(netKeys.cbegin(), netKeys.cend(),
|
||||||
|
[&used](const QString &key) { return used.contains(key); }))
|
||||||
|
used << QString("netdev");
|
||||||
|
|
||||||
|
// HACK append dummy if there are no other keys. This hack is required
|
||||||
|
// because empty list leads to the same behaviour as skip checking
|
||||||
|
if (used.isEmpty())
|
||||||
|
used << QString("dummy");
|
||||||
|
|
||||||
|
return used.toList();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
QHash<QString, QStringList> AWKeyCache::loadKeysFromCache()
|
QHash<QString, QStringList> AWKeyCache::loadKeysFromCache()
|
||||||
{
|
{
|
||||||
QString fileName = QString("%1/awesomewidgets.ndx")
|
QString fileName = QString("%1/awesomewidgets.ndx")
|
||||||
|
@ -21,11 +21,15 @@
|
|||||||
|
|
||||||
#include <QHash>
|
#include <QHash>
|
||||||
#include <QString>
|
#include <QString>
|
||||||
|
#include <QVariant>
|
||||||
|
|
||||||
|
|
||||||
namespace AWKeyCache
|
namespace AWKeyCache
|
||||||
{
|
{
|
||||||
bool addKeyToCache(const QString type, const QString key = QString(""));
|
bool addKeyToCache(const QString type, const QString key = QString(""));
|
||||||
|
QStringList getRequiredKeys(const QStringList &keys, const QStringList &bars,
|
||||||
|
const QVariantMap &tooltip,
|
||||||
|
const QStringList &allKeys);
|
||||||
QHash<QString, QStringList> loadKeysFromCache();
|
QHash<QString, QStringList> loadKeysFromCache();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -25,6 +25,7 @@
|
|||||||
#include "awdataaggregator.h"
|
#include "awdataaggregator.h"
|
||||||
#include "awdataengineaggregator.h"
|
#include "awdataengineaggregator.h"
|
||||||
#include "awdebug.h"
|
#include "awdebug.h"
|
||||||
|
#include "awkeycache.h"
|
||||||
#include "awkeyoperations.h"
|
#include "awkeyoperations.h"
|
||||||
#include "awkeysaggregator.h"
|
#include "awkeysaggregator.h"
|
||||||
#include "awpatternfunctions.h"
|
#include "awpatternfunctions.h"
|
||||||
@ -45,7 +46,9 @@ AWKeys::AWKeys(QObject *parent)
|
|||||||
|
|
||||||
aggregator = new AWKeysAggregator(this);
|
aggregator = new AWKeysAggregator(this);
|
||||||
dataAggregator = new AWDataAggregator(this);
|
dataAggregator = new AWDataAggregator(this);
|
||||||
|
dataEngineAggregator = new AWDataEngineAggregator(this);
|
||||||
keyOperator = new AWKeyOperations(this);
|
keyOperator = new AWKeyOperations(this);
|
||||||
|
|
||||||
// update key data if required
|
// update key data if required
|
||||||
connect(keyOperator, SIGNAL(updateKeys(QStringList)), this,
|
connect(keyOperator, SIGNAL(updateKeys(QStringList)), this,
|
||||||
SLOT(reinitKeys(QStringList)));
|
SLOT(reinitKeys(QStringList)));
|
||||||
@ -53,6 +56,11 @@ AWKeys::AWKeys(QObject *parent)
|
|||||||
connect(dataAggregator, SIGNAL(toolTipPainted(const QString)), this,
|
connect(dataAggregator, SIGNAL(toolTipPainted(const QString)), this,
|
||||||
SIGNAL(needToolTipToBeUpdated(const QString)));
|
SIGNAL(needToolTipToBeUpdated(const QString)));
|
||||||
connect(this, SIGNAL(needToBeUpdated()), this, SLOT(updateTextData()));
|
connect(this, SIGNAL(needToBeUpdated()), this, SLOT(updateTextData()));
|
||||||
|
connect(this, SIGNAL(dropSourceFromDataengine(QString)),
|
||||||
|
dataEngineAggregator, SLOT(dropSource(QString)));
|
||||||
|
// transfer signal from dataengine to update source list
|
||||||
|
connect(dataEngineAggregator, SIGNAL(deviceAdded(const QString &)),
|
||||||
|
keyOperator, SLOT(addDevice(const QString &)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -73,32 +81,29 @@ void AWKeys::initDataAggregator(const QVariantMap tooltipParams)
|
|||||||
{
|
{
|
||||||
qCDebug(LOG_AW) << "Tooltip parameters" << tooltipParams;
|
qCDebug(LOG_AW) << "Tooltip parameters" << tooltipParams;
|
||||||
|
|
||||||
dataAggregator->setParameters(tooltipParams);
|
// store parameters to generate m_requiredKeys
|
||||||
|
m_tooltipParams = tooltipParams;
|
||||||
|
dataAggregator->setParameters(m_tooltipParams);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void AWKeys::initKeys(const QString currentPattern, const int interval,
|
void AWKeys::initKeys(const QString currentPattern, const int interval,
|
||||||
const int limit)
|
const int limit, const bool optimize)
|
||||||
{
|
{
|
||||||
qCDebug(LOG_AW) << "Pattern" << currentPattern << "with interval"
|
qCDebug(LOG_AW) << "Pattern" << currentPattern << "with interval"
|
||||||
<< interval << "and queue limit" << limit;
|
<< interval << "and queue limit" << limit
|
||||||
|
<< "with optimization" << optimize;
|
||||||
|
|
||||||
// init
|
// init
|
||||||
keyOperator->setPattern(currentPattern);
|
m_optimize = optimize;
|
||||||
if (dataEngineAggregator == nullptr) {
|
|
||||||
dataEngineAggregator = new AWDataEngineAggregator(this, interval);
|
|
||||||
connect(this, SIGNAL(dropSourceFromDataengine(QString)),
|
|
||||||
dataEngineAggregator, SLOT(dropSource(QString)));
|
|
||||||
// transfer signal from dataengine to update source list
|
|
||||||
connect(dataEngineAggregator, SIGNAL(deviceAdded(const QString &)),
|
|
||||||
keyOperator, SLOT(addDevice(const QString &)));
|
|
||||||
} else
|
|
||||||
dataEngineAggregator->setInterval(interval);
|
|
||||||
m_threadPool->setMaxThreadCount(limit == 0 ? QThread::idealThreadCount()
|
m_threadPool->setMaxThreadCount(limit == 0 ? QThread::idealThreadCount()
|
||||||
: limit);
|
: limit);
|
||||||
|
// child objects
|
||||||
|
keyOperator->setPattern(currentPattern);
|
||||||
keyOperator->updateCache();
|
keyOperator->updateCache();
|
||||||
|
dataEngineAggregator->clear();
|
||||||
|
|
||||||
return dataEngineAggregator->reconnectSources();
|
return dataEngineAggregator->initDataEngines(interval);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -200,6 +205,11 @@ void AWKeys::reinitKeys(const QStringList currentKeys)
|
|||||||
m_foundKeys
|
m_foundKeys
|
||||||
= AWPatternFunctions::findKeys(keyOperator->pattern(), currentKeys);
|
= AWPatternFunctions::findKeys(keyOperator->pattern(), currentKeys);
|
||||||
m_foundLambdas = AWPatternFunctions::findLambdas(keyOperator->pattern());
|
m_foundLambdas = AWPatternFunctions::findLambdas(keyOperator->pattern());
|
||||||
|
// get required keys
|
||||||
|
m_requiredKeys
|
||||||
|
= m_optimize ? AWKeyCache::getRequiredKeys(m_foundKeys, m_foundBars,
|
||||||
|
m_tooltipParams, currentKeys)
|
||||||
|
: QStringList();
|
||||||
|
|
||||||
// set key data to aggregator
|
// set key data to aggregator
|
||||||
aggregator->setDevices(keyOperator->devices());
|
aggregator->setDevices(keyOperator->devices());
|
||||||
@ -347,8 +357,8 @@ void AWKeys::setDataBySource(const QString &sourceName, const QVariantMap &data)
|
|||||||
// first list init
|
// first list init
|
||||||
QStringList tags = aggregator->keysFromSource(sourceName);
|
QStringList tags = aggregator->keysFromSource(sourceName);
|
||||||
if (tags.isEmpty())
|
if (tags.isEmpty())
|
||||||
tags = aggregator->registerSource(sourceName,
|
tags = aggregator->registerSource(
|
||||||
data[QString("units")].toString());
|
sourceName, data[QString("units")].toString(), m_requiredKeys);
|
||||||
|
|
||||||
// update data or drop source if there are no matches and exit
|
// update data or drop source if there are no matches and exit
|
||||||
if (tags.isEmpty()) {
|
if (tags.isEmpty()) {
|
||||||
|
@ -40,7 +40,7 @@ public:
|
|||||||
virtual ~AWKeys();
|
virtual ~AWKeys();
|
||||||
Q_INVOKABLE void initDataAggregator(const QVariantMap tooltipParams);
|
Q_INVOKABLE void initDataAggregator(const QVariantMap tooltipParams);
|
||||||
Q_INVOKABLE void initKeys(const QString currentPattern, const int interval,
|
Q_INVOKABLE void initKeys(const QString currentPattern, const int interval,
|
||||||
const int limit);
|
const int limit, const bool optimize);
|
||||||
Q_INVOKABLE void setAggregatorProperty(const QString key,
|
Q_INVOKABLE void setAggregatorProperty(const QString key,
|
||||||
const QVariant value);
|
const QVariant value);
|
||||||
Q_INVOKABLE void setWrapNewLines(const bool wrap = false);
|
Q_INVOKABLE void setWrapNewLines(const bool wrap = false);
|
||||||
@ -84,8 +84,10 @@ private:
|
|||||||
AWKeysAggregator *aggregator = nullptr;
|
AWKeysAggregator *aggregator = nullptr;
|
||||||
AWKeyOperations *keyOperator = nullptr;
|
AWKeyOperations *keyOperator = nullptr;
|
||||||
// variables
|
// variables
|
||||||
QStringList m_foundBars, m_foundKeys, m_foundLambdas;
|
QVariantMap m_tooltipParams;
|
||||||
|
QStringList m_foundBars, m_foundKeys, m_foundLambdas, m_requiredKeys;
|
||||||
QHash<QString, QString> values;
|
QHash<QString, QString> values;
|
||||||
|
bool m_optimize = false;
|
||||||
bool m_wrapNewLines = false;
|
bool m_wrapNewLines = false;
|
||||||
// multithread features
|
// multithread features
|
||||||
QThreadPool *m_threadPool = nullptr;
|
QThreadPool *m_threadPool = nullptr;
|
||||||
|
@ -154,15 +154,6 @@ QStringList AWKeysAggregator::keysFromSource(const QString &source) const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
QStringList
|
|
||||||
AWKeysAggregator::requiredByKeysFromSource(const QString &source) const
|
|
||||||
{
|
|
||||||
qCDebug(LOG_AW) << "Search for source" << source;
|
|
||||||
|
|
||||||
return m_requiredByMap.values(source);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void AWKeysAggregator::setAcOffline(const QString inactive)
|
void AWKeysAggregator::setAcOffline(const QString inactive)
|
||||||
{
|
{
|
||||||
qCDebug(LOG_AW) << "Inactive AC string" << inactive;
|
qCDebug(LOG_AW) << "Inactive AC string" << inactive;
|
||||||
@ -222,7 +213,8 @@ void AWKeysAggregator::setTranslate(const bool translate)
|
|||||||
// HACK units required to define should the value be calculated as temperature
|
// HACK units required to define should the value be calculated as temperature
|
||||||
// or fan data
|
// or fan data
|
||||||
QStringList AWKeysAggregator::registerSource(const QString &source,
|
QStringList AWKeysAggregator::registerSource(const QString &source,
|
||||||
const QString &units)
|
const QString &units,
|
||||||
|
const QStringList &keys)
|
||||||
{
|
{
|
||||||
qCDebug(LOG_AW) << "Source" << source << "with units" << units;
|
qCDebug(LOG_AW) << "Source" << source << "with units" << units;
|
||||||
|
|
||||||
@ -338,11 +330,6 @@ QStringList AWKeysAggregator::registerSource(const QString &source,
|
|||||||
key = QString("hddfreegb%1").arg(index);
|
key = QString("hddfreegb%1").arg(index);
|
||||||
m_map.insertMulti(source, key);
|
m_map.insertMulti(source, key);
|
||||||
m_formater[key] = MemGBFormat;
|
m_formater[key] = MemGBFormat;
|
||||||
// fill required by list
|
|
||||||
m_requiredByMap.insertMulti(source,
|
|
||||||
QString("hddtotmb%1").arg(index));
|
|
||||||
m_requiredByMap.insertMulti(source,
|
|
||||||
QString("hddtotgb%1").arg(index));
|
|
||||||
}
|
}
|
||||||
} else if (source.contains(mountUsedRegExp)) {
|
} else if (source.contains(mountUsedRegExp)) {
|
||||||
// used
|
// used
|
||||||
@ -358,11 +345,6 @@ QStringList AWKeysAggregator::registerSource(const QString &source,
|
|||||||
key = QString("hddgb%1").arg(index);
|
key = QString("hddgb%1").arg(index);
|
||||||
m_map.insertMulti(source, key);
|
m_map.insertMulti(source, key);
|
||||||
m_formater[key] = MemGBFormat;
|
m_formater[key] = MemGBFormat;
|
||||||
// fill required by list
|
|
||||||
m_requiredByMap.insertMulti(source,
|
|
||||||
QString("hddtotmb%1").arg(index));
|
|
||||||
m_requiredByMap.insertMulti(source,
|
|
||||||
QString("hddtotgb%1").arg(index));
|
|
||||||
}
|
}
|
||||||
} else if (source.startsWith(QString("hdd/temperature"))) {
|
} else if (source.startsWith(QString("hdd/temperature"))) {
|
||||||
// hdd temperature
|
// hdd temperature
|
||||||
@ -389,8 +371,6 @@ QStringList AWKeysAggregator::registerSource(const QString &source,
|
|||||||
// gb
|
// gb
|
||||||
m_map.insertMulti(source, QString("memgb"));
|
m_map.insertMulti(source, QString("memgb"));
|
||||||
m_formater[QString("memgb")] = MemGBFormat;
|
m_formater[QString("memgb")] = MemGBFormat;
|
||||||
// fill required by list
|
|
||||||
m_requiredByMap.insertMulti(source, QString("mem"));
|
|
||||||
} else if (source == QString("mem/physical/free")) {
|
} else if (source == QString("mem/physical/free")) {
|
||||||
// free memory
|
// free memory
|
||||||
// mb
|
// mb
|
||||||
@ -399,10 +379,6 @@ QStringList AWKeysAggregator::registerSource(const QString &source,
|
|||||||
// gb
|
// gb
|
||||||
m_map.insertMulti(source, QString("memfreegb"));
|
m_map.insertMulti(source, QString("memfreegb"));
|
||||||
m_formater[QString("memfreegb")] = MemGBFormat;
|
m_formater[QString("memfreegb")] = MemGBFormat;
|
||||||
// fill required by list
|
|
||||||
m_requiredByMap.insertMulti(source, QString("memtotmb"));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("memtotgb"));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("mem"));
|
|
||||||
} else if (source == QString("mem/physical/used")) {
|
} else if (source == QString("mem/physical/used")) {
|
||||||
// used memory
|
// used memory
|
||||||
// mb
|
// mb
|
||||||
@ -411,21 +387,10 @@ QStringList AWKeysAggregator::registerSource(const QString &source,
|
|||||||
// gb
|
// gb
|
||||||
m_map.insertMulti(source, QString("memusedgb"));
|
m_map.insertMulti(source, QString("memusedgb"));
|
||||||
m_formater[QString("memusedgb")] = MemGBFormat;
|
m_formater[QString("memusedgb")] = MemGBFormat;
|
||||||
// fill required by list
|
|
||||||
m_requiredByMap.insertMulti(source, QString("memtotmb"));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("memtotgb"));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("mem"));
|
|
||||||
} else if (source == QString("network/current/name")) {
|
} else if (source == QString("network/current/name")) {
|
||||||
// network device
|
// network device
|
||||||
m_map[source] = QString("netdev");
|
m_map[source] = QString("netdev");
|
||||||
m_formater[QString("netdev")] = NoFormat;
|
m_formater[QString("netdev")] = NoFormat;
|
||||||
// fill required by list
|
|
||||||
m_requiredByMap.insertMulti(source, QString("down"));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("downkb"));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("downunits"));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("up"));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("upkb"));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("upunits"));
|
|
||||||
} else if (source.contains(netRegExp)) {
|
} else if (source.contains(netRegExp)) {
|
||||||
// network speed
|
// network speed
|
||||||
QString type = source.contains(QString("receiver")) ? QString("down")
|
QString type = source.contains(QString("receiver")) ? QString("down")
|
||||||
@ -446,13 +411,6 @@ QStringList AWKeysAggregator::registerSource(const QString &source,
|
|||||||
m_map.insertMulti(source, key);
|
m_map.insertMulti(source, key);
|
||||||
m_formater[key] = NetSmartUnits;
|
m_formater[key] = NetSmartUnits;
|
||||||
}
|
}
|
||||||
// fill required by list
|
|
||||||
m_requiredByMap.insertMulti(source, QString("%1").arg(type));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("%1kb").arg(type));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("%1units").arg(type));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("%1").arg(type));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("%1kb").arg(type));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("%1units").arg(type));
|
|
||||||
} else if (source.startsWith(QString("upgrade"))) {
|
} else if (source.startsWith(QString("upgrade"))) {
|
||||||
// package manager
|
// package manager
|
||||||
QString key = source;
|
QString key = source;
|
||||||
@ -491,10 +449,6 @@ QStringList AWKeysAggregator::registerSource(const QString &source,
|
|||||||
// gb
|
// gb
|
||||||
m_map.insertMulti(source, QString("swapfreegb"));
|
m_map.insertMulti(source, QString("swapfreegb"));
|
||||||
m_formater[QString("swapfreegb")] = MemGBFormat;
|
m_formater[QString("swapfreegb")] = MemGBFormat;
|
||||||
// fill required by list
|
|
||||||
m_requiredByMap.insertMulti(source, QString("swaptotmb"));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("swaptotgb"));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("swap"));
|
|
||||||
} else if (source == QString("mem/swap/used")) {
|
} else if (source == QString("mem/swap/used")) {
|
||||||
// used swap
|
// used swap
|
||||||
// mb
|
// mb
|
||||||
@ -503,10 +457,6 @@ QStringList AWKeysAggregator::registerSource(const QString &source,
|
|||||||
// gb
|
// gb
|
||||||
m_map.insertMulti(source, QString("swapgb"));
|
m_map.insertMulti(source, QString("swapgb"));
|
||||||
m_formater[QString("swapgb")] = MemGBFormat;
|
m_formater[QString("swapgb")] = MemGBFormat;
|
||||||
// fill required by list
|
|
||||||
m_requiredByMap.insertMulti(source, QString("swaptotmb"));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("swaptotgb"));
|
|
||||||
m_requiredByMap.insertMulti(source, QString("swap"));
|
|
||||||
} else if (source.startsWith(QString("lmsensors/"))) {
|
} else if (source.startsWith(QString("lmsensors/"))) {
|
||||||
// temperature
|
// temperature
|
||||||
int index = m_devices[QString("temp")].indexOf(source);
|
int index = m_devices[QString("temp")].indexOf(source);
|
||||||
@ -561,6 +511,18 @@ QStringList AWKeysAggregator::registerSource(const QString &source,
|
|||||||
m_formater[key] = Temperature;
|
m_formater[key] = Temperature;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// drop key from dictionary if no one user requested key required it
|
||||||
|
QStringList foundKeys = keysFromSource(source);
|
||||||
|
qCInfo(LOG_AW) << "Looking for keys" << foundKeys << "in" << keys;
|
||||||
|
// let required if key list is empty no one use it
|
||||||
|
bool required
|
||||||
|
= keys.isEmpty() || std::any_of(foundKeys.cbegin(), foundKeys.cend(),
|
||||||
|
[&keys](const QString &key) {
|
||||||
|
return keys.contains(key);
|
||||||
|
});
|
||||||
|
if (!required)
|
||||||
|
m_map.remove(source);
|
||||||
|
|
||||||
return keysFromSource(source);
|
return keysFromSource(source);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -572,17 +534,17 @@ float AWKeysAggregator::temperature(const float temp) const
|
|||||||
float converted = temp;
|
float converted = temp;
|
||||||
if (m_tempUnits == QString("Celsius")) {
|
if (m_tempUnits == QString("Celsius")) {
|
||||||
} else if (m_tempUnits == QString("Fahrenheit")) {
|
} else if (m_tempUnits == QString("Fahrenheit")) {
|
||||||
converted = temp * 9.0 / 5.0 + 32.0;
|
converted = temp * 9.0f / 5.0f + 32.0f;
|
||||||
} else if (m_tempUnits == QString("Kelvin")) {
|
} else if (m_tempUnits == QString("Kelvin")) {
|
||||||
converted = temp + 273.15;
|
converted = temp + 273.15f;
|
||||||
} else if (m_tempUnits == QString("Reaumur")) {
|
} else if (m_tempUnits == QString("Reaumur")) {
|
||||||
converted = temp * 0.8;
|
converted = temp * 0.8f;
|
||||||
} else if (m_tempUnits == QString("cm^-1")) {
|
} else if (m_tempUnits == QString("cm^-1")) {
|
||||||
converted = (temp + 273.15) * 0.695;
|
converted = (temp + 273.15f) * 0.695f;
|
||||||
} else if (m_tempUnits == QString("kJ/mol")) {
|
} else if (m_tempUnits == QString("kJ/mol")) {
|
||||||
converted = (temp + 273.15) * 8.31;
|
converted = (temp + 273.15f) * 8.31f;
|
||||||
} else if (m_tempUnits == QString("kcal/mol")) {
|
} else if (m_tempUnits == QString("kcal/mol")) {
|
||||||
converted = (temp + 273.15) * 1.98;
|
converted = (temp + 273.15f) * 1.98f;
|
||||||
} else {
|
} else {
|
||||||
qCWarning(LOG_AW) << "Invalid units" << m_tempUnits;
|
qCWarning(LOG_AW) << "Invalid units" << m_tempUnits;
|
||||||
}
|
}
|
||||||
|
@ -67,7 +67,6 @@ public:
|
|||||||
// get methods
|
// get methods
|
||||||
QString formater(const QVariant &data, const QString &key) const;
|
QString formater(const QVariant &data, const QString &key) const;
|
||||||
QStringList keysFromSource(const QString &source) const;
|
QStringList keysFromSource(const QString &source) const;
|
||||||
QStringList requiredByKeysFromSource(const QString &source) const;
|
|
||||||
// set methods
|
// set methods
|
||||||
void setAcOffline(const QString inactive);
|
void setAcOffline(const QString inactive);
|
||||||
void setAcOnline(const QString active);
|
void setAcOnline(const QString active);
|
||||||
@ -78,7 +77,8 @@ public:
|
|||||||
void setTranslate(const bool translate);
|
void setTranslate(const bool translate);
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
QStringList registerSource(const QString &source, const QString &units);
|
QStringList registerSource(const QString &source, const QString &units,
|
||||||
|
const QStringList &keys = QStringList());
|
||||||
|
|
||||||
private:
|
private:
|
||||||
float temperature(const float temp) const;
|
float temperature(const float temp) const;
|
||||||
@ -91,7 +91,6 @@ private:
|
|||||||
QHash<QString, QStringList> m_devices;
|
QHash<QString, QStringList> m_devices;
|
||||||
QHash<QString, FormaterType> m_formater;
|
QHash<QString, FormaterType> m_formater;
|
||||||
QHash<QString, QString> m_map;
|
QHash<QString, QString> m_map;
|
||||||
QHash<QString, QString> m_requiredByMap;
|
|
||||||
QString m_tempUnits;
|
QString m_tempUnits;
|
||||||
bool m_translate = false;
|
bool m_translate = false;
|
||||||
};
|
};
|
||||||
|
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
||||||
"POT-Creation-Date: 2016-01-26 21:48+0300\n"
|
"POT-Creation-Date: 2016-02-03 23:02+0700\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
@ -56,6 +56,9 @@ msgstr ""
|
|||||||
msgid "Check updates on startup"
|
msgid "Check updates on startup"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Optimize subscription"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Widget height, px"
|
msgid "Widget height, px"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -351,15 +354,15 @@ msgstr ""
|
|||||||
msgid "Weathers"
|
msgid "Weathers"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Functions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Add"
|
msgid "Add"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "Show value"
|
msgid "Show value"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "Add lambda"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "Edit bars"
|
msgid "Edit bars"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -411,24 +414,6 @@ msgstr ""
|
|||||||
msgid "Select font"
|
msgid "Select font"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "You are using the actual version %1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "No new version found"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "Current version : %1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "New version : %1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "Click \"Ok\" to download"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "There are updates"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "AC online"
|
msgid "AC online"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -456,6 +441,27 @@ msgstr ""
|
|||||||
msgid "KB/s"
|
msgid "KB/s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Changelog of %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "You are using the actual version %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "No new version found"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Current version : %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "New version : %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Click \"Ok\" to download"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "There are updates"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Copy"
|
msgid "Copy"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -6,8 +6,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: \n"
|
"Project-Id-Version: \n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
||||||
"POT-Creation-Date: 2016-01-26 21:48+0300\n"
|
"POT-Creation-Date: 2016-02-03 23:02+0700\n"
|
||||||
"PO-Revision-Date: 2016-01-26 21:48+0300\n"
|
"PO-Revision-Date: 2016-02-03 23:03+0700\n"
|
||||||
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
|
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
|
||||||
"Language-Team: English <kde-russian@lists.kde.ru>\n"
|
"Language-Team: English <kde-russian@lists.kde.ru>\n"
|
||||||
"Language: ru\n"
|
"Language: ru\n"
|
||||||
@ -57,6 +57,9 @@ msgstr "Enable notifications"
|
|||||||
msgid "Check updates on startup"
|
msgid "Check updates on startup"
|
||||||
msgstr "Check updates on startup"
|
msgstr "Check updates on startup"
|
||||||
|
|
||||||
|
msgid "Optimize subscription"
|
||||||
|
msgstr "Optimize subscription"
|
||||||
|
|
||||||
msgid "Widget height, px"
|
msgid "Widget height, px"
|
||||||
msgstr "Widget height, px"
|
msgstr "Widget height, px"
|
||||||
|
|
||||||
@ -356,15 +359,15 @@ msgstr "Upgrades"
|
|||||||
msgid "Weathers"
|
msgid "Weathers"
|
||||||
msgstr "Weathers"
|
msgstr "Weathers"
|
||||||
|
|
||||||
|
msgid "Functions"
|
||||||
|
msgstr "Functions"
|
||||||
|
|
||||||
msgid "Add"
|
msgid "Add"
|
||||||
msgstr "Add"
|
msgstr "Add"
|
||||||
|
|
||||||
msgid "Show value"
|
msgid "Show value"
|
||||||
msgstr "Show value"
|
msgstr "Show value"
|
||||||
|
|
||||||
msgid "Add lambda"
|
|
||||||
msgstr "Add lambda"
|
|
||||||
|
|
||||||
msgid "Edit bars"
|
msgid "Edit bars"
|
||||||
msgstr "Edit bars"
|
msgstr "Edit bars"
|
||||||
|
|
||||||
@ -416,24 +419,6 @@ msgstr "Special thanks to %1"
|
|||||||
msgid "Select font"
|
msgid "Select font"
|
||||||
msgstr "Select font"
|
msgstr "Select font"
|
||||||
|
|
||||||
msgid "You are using the actual version %1"
|
|
||||||
msgstr "You are using the actual version %1"
|
|
||||||
|
|
||||||
msgid "No new version found"
|
|
||||||
msgstr "No new version found"
|
|
||||||
|
|
||||||
msgid "Current version : %1"
|
|
||||||
msgstr "Current version : %1"
|
|
||||||
|
|
||||||
msgid "New version : %1"
|
|
||||||
msgstr "New version : %1"
|
|
||||||
|
|
||||||
msgid "Click \"Ok\" to download"
|
|
||||||
msgstr "Click \"Ok\" to download"
|
|
||||||
|
|
||||||
msgid "There are updates"
|
|
||||||
msgstr "There are updates"
|
|
||||||
|
|
||||||
msgid "AC online"
|
msgid "AC online"
|
||||||
msgstr "AC online"
|
msgstr "AC online"
|
||||||
|
|
||||||
@ -461,6 +446,27 @@ msgstr "MB/s"
|
|||||||
msgid "KB/s"
|
msgid "KB/s"
|
||||||
msgstr "KB/s"
|
msgstr "KB/s"
|
||||||
|
|
||||||
|
msgid "Changelog of %1"
|
||||||
|
msgstr "Changelog of %1"
|
||||||
|
|
||||||
|
msgid "You are using the actual version %1"
|
||||||
|
msgstr "You are using the actual version %1"
|
||||||
|
|
||||||
|
msgid "No new version found"
|
||||||
|
msgstr "No new version found"
|
||||||
|
|
||||||
|
msgid "Current version : %1"
|
||||||
|
msgstr "Current version : %1"
|
||||||
|
|
||||||
|
msgid "New version : %1"
|
||||||
|
msgstr "New version : %1"
|
||||||
|
|
||||||
|
msgid "Click \"Ok\" to download"
|
||||||
|
msgstr "Click \"Ok\" to download"
|
||||||
|
|
||||||
|
msgid "There are updates"
|
||||||
|
msgstr "There are updates"
|
||||||
|
|
||||||
msgid "Copy"
|
msgid "Copy"
|
||||||
msgstr "Copy"
|
msgstr "Copy"
|
||||||
|
|
||||||
@ -612,6 +618,9 @@ msgctxt "EMAIL OF TRANSLATORS"
|
|||||||
msgid "Your emails"
|
msgid "Your emails"
|
||||||
msgstr "esalexeev@gmail.com"
|
msgstr "esalexeev@gmail.com"
|
||||||
|
|
||||||
|
#~ msgid "Add lambda"
|
||||||
|
#~ msgstr "Add lambda"
|
||||||
|
|
||||||
#~ msgid "Free space on %1 less than 10%"
|
#~ msgid "Free space on %1 less than 10%"
|
||||||
#~ msgstr "Free space on %1 less than 10%"
|
#~ msgstr "Free space on %1 less than 10%"
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Awesome widgets\n"
|
"Project-Id-Version: Awesome widgets\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
||||||
"POT-Creation-Date: 2016-01-26 21:48+0300\n"
|
"POT-Creation-Date: 2016-02-03 23:02+0700\n"
|
||||||
"PO-Revision-Date: 2015-09-26 22:07+0000\n"
|
"PO-Revision-Date: 2015-09-26 22:07+0000\n"
|
||||||
"Last-Translator: Ernesto Avilés Vázquez <whippiii@gmail.com>\n"
|
"Last-Translator: Ernesto Avilés Vázquez <whippiii@gmail.com>\n"
|
||||||
"Language-Team: Spanish (http://www.transifex.com/arcanis/awesome-widgets/"
|
"Language-Team: Spanish (http://www.transifex.com/arcanis/awesome-widgets/"
|
||||||
@ -59,6 +59,9 @@ msgstr "Habilitar notificaciones"
|
|||||||
msgid "Check updates on startup"
|
msgid "Check updates on startup"
|
||||||
msgstr "Comprobar actualizaciones al inicio"
|
msgstr "Comprobar actualizaciones al inicio"
|
||||||
|
|
||||||
|
msgid "Optimize subscription"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Widget height, px"
|
msgid "Widget height, px"
|
||||||
msgstr "Alto del widget, px"
|
msgstr "Alto del widget, px"
|
||||||
|
|
||||||
@ -361,15 +364,15 @@ msgstr "Actualizaciones"
|
|||||||
msgid "Weathers"
|
msgid "Weathers"
|
||||||
msgstr "Tiempo"
|
msgstr "Tiempo"
|
||||||
|
|
||||||
|
msgid "Functions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Add"
|
msgid "Add"
|
||||||
msgstr "Añadir"
|
msgstr "Añadir"
|
||||||
|
|
||||||
msgid "Show value"
|
msgid "Show value"
|
||||||
msgstr "Mostrar valor"
|
msgstr "Mostrar valor"
|
||||||
|
|
||||||
msgid "Add lambda"
|
|
||||||
msgstr "Añadir lambda"
|
|
||||||
|
|
||||||
msgid "Edit bars"
|
msgid "Edit bars"
|
||||||
msgstr "Editar barras"
|
msgstr "Editar barras"
|
||||||
|
|
||||||
@ -421,24 +424,6 @@ msgstr ""
|
|||||||
msgid "Select font"
|
msgid "Select font"
|
||||||
msgstr "Elegir tipo de letra"
|
msgstr "Elegir tipo de letra"
|
||||||
|
|
||||||
msgid "You are using the actual version %1"
|
|
||||||
msgstr "Estás usando al versión actual %1"
|
|
||||||
|
|
||||||
msgid "No new version found"
|
|
||||||
msgstr "No se encontraron nuevas versiones"
|
|
||||||
|
|
||||||
msgid "Current version : %1"
|
|
||||||
msgstr "Versión actual: %1"
|
|
||||||
|
|
||||||
msgid "New version : %1"
|
|
||||||
msgstr "Nueva versión: %1"
|
|
||||||
|
|
||||||
msgid "Click \"Ok\" to download"
|
|
||||||
msgstr "Haz clic en «Ok» para descargar"
|
|
||||||
|
|
||||||
msgid "There are updates"
|
|
||||||
msgstr "Hay actualizaciones disponibles"
|
|
||||||
|
|
||||||
msgid "AC online"
|
msgid "AC online"
|
||||||
msgstr "Alimentación conectada"
|
msgstr "Alimentación conectada"
|
||||||
|
|
||||||
@ -466,6 +451,27 @@ msgstr "MB/s"
|
|||||||
msgid "KB/s"
|
msgid "KB/s"
|
||||||
msgstr "KB/s"
|
msgstr "KB/s"
|
||||||
|
|
||||||
|
msgid "Changelog of %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "You are using the actual version %1"
|
||||||
|
msgstr "Estás usando al versión actual %1"
|
||||||
|
|
||||||
|
msgid "No new version found"
|
||||||
|
msgstr "No se encontraron nuevas versiones"
|
||||||
|
|
||||||
|
msgid "Current version : %1"
|
||||||
|
msgstr "Versión actual: %1"
|
||||||
|
|
||||||
|
msgid "New version : %1"
|
||||||
|
msgstr "Nueva versión: %1"
|
||||||
|
|
||||||
|
msgid "Click \"Ok\" to download"
|
||||||
|
msgstr "Haz clic en «Ok» para descargar"
|
||||||
|
|
||||||
|
msgid "There are updates"
|
||||||
|
msgstr "Hay actualizaciones disponibles"
|
||||||
|
|
||||||
msgid "Copy"
|
msgid "Copy"
|
||||||
msgstr "Copiar"
|
msgstr "Copiar"
|
||||||
|
|
||||||
@ -616,3 +622,6 @@ msgstr "Tu nombre"
|
|||||||
msgctxt "EMAIL OF TRANSLATORS"
|
msgctxt "EMAIL OF TRANSLATORS"
|
||||||
msgid "Your emails"
|
msgid "Your emails"
|
||||||
msgstr "Tu correo electrónico"
|
msgstr "Tu correo electrónico"
|
||||||
|
|
||||||
|
#~ msgid "Add lambda"
|
||||||
|
#~ msgstr "Añadir lambda"
|
||||||
|
@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: \n"
|
"Project-Id-Version: \n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
||||||
"POT-Creation-Date: 2016-01-26 21:48+0300\n"
|
"POT-Creation-Date: 2016-02-03 23:02+0700\n"
|
||||||
"PO-Revision-Date: 2015-07-31 22:16+0300\n"
|
"PO-Revision-Date: 2015-07-31 22:16+0300\n"
|
||||||
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
|
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
|
||||||
"Language-Team: French <kde-russian@lists.kde.ru>\n"
|
"Language-Team: French <kde-russian@lists.kde.ru>\n"
|
||||||
@ -61,6 +61,9 @@ msgstr "Activer les notifications"
|
|||||||
msgid "Check updates on startup"
|
msgid "Check updates on startup"
|
||||||
msgstr "Vérifier les mises à jour"
|
msgstr "Vérifier les mises à jour"
|
||||||
|
|
||||||
|
msgid "Optimize subscription"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Widget height, px"
|
msgid "Widget height, px"
|
||||||
msgstr "Paramètres du composant"
|
msgstr "Paramètres du composant"
|
||||||
|
|
||||||
@ -371,15 +374,15 @@ msgstr ""
|
|||||||
msgid "Weathers"
|
msgid "Weathers"
|
||||||
msgstr "Modifier les tickers"
|
msgstr "Modifier les tickers"
|
||||||
|
|
||||||
|
msgid "Functions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Add"
|
msgid "Add"
|
||||||
msgstr "Ajouter"
|
msgstr "Ajouter"
|
||||||
|
|
||||||
msgid "Show value"
|
msgid "Show value"
|
||||||
msgstr "Afficher la valeur"
|
msgstr "Afficher la valeur"
|
||||||
|
|
||||||
msgid "Add lambda"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "Edit bars"
|
msgid "Edit bars"
|
||||||
msgstr "Modifier les barres"
|
msgstr "Modifier les barres"
|
||||||
|
|
||||||
@ -431,27 +434,6 @@ msgstr ""
|
|||||||
msgid "Select font"
|
msgid "Select font"
|
||||||
msgstr "Sélectionner une couleur"
|
msgstr "Sélectionner une couleur"
|
||||||
|
|
||||||
msgid "You are using the actual version %1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, fuzzy
|
|
||||||
msgid "No new version found"
|
|
||||||
msgstr "Nouvelle version"
|
|
||||||
|
|
||||||
#, fuzzy
|
|
||||||
msgid "Current version : %1"
|
|
||||||
msgstr "Version actuelle"
|
|
||||||
|
|
||||||
#, fuzzy
|
|
||||||
msgid "New version : %1"
|
|
||||||
msgstr "Nouvelle version"
|
|
||||||
|
|
||||||
msgid "Click \"Ok\" to download"
|
|
||||||
msgstr "Cliquer sur \"Valider\" pour télécharger"
|
|
||||||
|
|
||||||
msgid "There are updates"
|
|
||||||
msgstr "Des mises à jour sont disponibles"
|
|
||||||
|
|
||||||
msgid "AC online"
|
msgid "AC online"
|
||||||
msgstr "Alimentation branchée"
|
msgstr "Alimentation branchée"
|
||||||
|
|
||||||
@ -479,6 +461,30 @@ msgstr ""
|
|||||||
msgid "KB/s"
|
msgid "KB/s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Changelog of %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "You are using the actual version %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgid "No new version found"
|
||||||
|
msgstr "Nouvelle version"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Current version : %1"
|
||||||
|
msgstr "Version actuelle"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgid "New version : %1"
|
||||||
|
msgstr "Nouvelle version"
|
||||||
|
|
||||||
|
msgid "Click \"Ok\" to download"
|
||||||
|
msgstr "Cliquer sur \"Valider\" pour télécharger"
|
||||||
|
|
||||||
|
msgid "There are updates"
|
||||||
|
msgstr "Des mises à jour sont disponibles"
|
||||||
|
|
||||||
msgid "Copy"
|
msgid "Copy"
|
||||||
msgstr "Copier"
|
msgstr "Copier"
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Awesome widgets\n"
|
"Project-Id-Version: Awesome widgets\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
||||||
"POT-Creation-Date: 2016-01-26 21:48+0300\n"
|
"POT-Creation-Date: 2016-02-03 23:02+0700\n"
|
||||||
"PO-Revision-Date: 2015-08-20 22:52+0300\n"
|
"PO-Revision-Date: 2015-08-20 22:52+0300\n"
|
||||||
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
|
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
|
||||||
"Language-Team: Dutch <kde-i18n-nl@kde.org>\n"
|
"Language-Team: Dutch <kde-i18n-nl@kde.org>\n"
|
||||||
@ -61,6 +61,9 @@ msgstr ""
|
|||||||
msgid "Check updates on startup"
|
msgid "Check updates on startup"
|
||||||
msgstr "Controleren op updates"
|
msgstr "Controleren op updates"
|
||||||
|
|
||||||
|
msgid "Optimize subscription"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Widget height, px"
|
msgid "Widget height, px"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -373,15 +376,15 @@ msgstr ""
|
|||||||
msgid "Weathers"
|
msgid "Weathers"
|
||||||
msgstr "Balken bewerken"
|
msgstr "Balken bewerken"
|
||||||
|
|
||||||
|
msgid "Functions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Add"
|
msgid "Add"
|
||||||
msgstr "Toevoegen"
|
msgstr "Toevoegen"
|
||||||
|
|
||||||
msgid "Show value"
|
msgid "Show value"
|
||||||
msgstr "Waarde weergeven"
|
msgstr "Waarde weergeven"
|
||||||
|
|
||||||
msgid "Add lambda"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "Edit bars"
|
msgid "Edit bars"
|
||||||
msgstr "Balken bewerken"
|
msgstr "Balken bewerken"
|
||||||
|
|
||||||
@ -436,25 +439,6 @@ msgstr ""
|
|||||||
msgid "Select font"
|
msgid "Select font"
|
||||||
msgstr "Lettertype selecteren"
|
msgstr "Lettertype selecteren"
|
||||||
|
|
||||||
msgid "You are using the actual version %1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, fuzzy
|
|
||||||
msgid "No new version found"
|
|
||||||
msgstr "Nieuwe versie: %1"
|
|
||||||
|
|
||||||
msgid "Current version : %1"
|
|
||||||
msgstr "Huidige versie: %1"
|
|
||||||
|
|
||||||
msgid "New version : %1"
|
|
||||||
msgstr "Nieuwe versie: %1"
|
|
||||||
|
|
||||||
msgid "Click \"Ok\" to download"
|
|
||||||
msgstr "Klik op \"OK\" om te downloaden"
|
|
||||||
|
|
||||||
msgid "There are updates"
|
|
||||||
msgstr "Er zijn updates"
|
|
||||||
|
|
||||||
msgid "AC online"
|
msgid "AC online"
|
||||||
msgstr "AC online"
|
msgstr "AC online"
|
||||||
|
|
||||||
@ -483,6 +467,28 @@ msgstr ""
|
|||||||
msgid "KB/s"
|
msgid "KB/s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Changelog of %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "You are using the actual version %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgid "No new version found"
|
||||||
|
msgstr "Nieuwe versie: %1"
|
||||||
|
|
||||||
|
msgid "Current version : %1"
|
||||||
|
msgstr "Huidige versie: %1"
|
||||||
|
|
||||||
|
msgid "New version : %1"
|
||||||
|
msgstr "Nieuwe versie: %1"
|
||||||
|
|
||||||
|
msgid "Click \"Ok\" to download"
|
||||||
|
msgstr "Klik op \"OK\" om te downloaden"
|
||||||
|
|
||||||
|
msgid "There are updates"
|
||||||
|
msgstr "Er zijn updates"
|
||||||
|
|
||||||
msgid "Copy"
|
msgid "Copy"
|
||||||
msgstr "Kopiëren"
|
msgstr "Kopiëren"
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: \n"
|
"Project-Id-Version: \n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
||||||
"POT-Creation-Date: 2016-01-26 21:48+0300\n"
|
"POT-Creation-Date: 2016-02-03 23:02+0700\n"
|
||||||
"PO-Revision-Date: 2015-07-31 22:21+0300\n"
|
"PO-Revision-Date: 2015-07-31 22:21+0300\n"
|
||||||
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
|
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
|
||||||
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
|
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
|
||||||
@ -60,6 +60,9 @@ msgstr "Ativar notificações"
|
|||||||
msgid "Check updates on startup"
|
msgid "Check updates on startup"
|
||||||
msgstr "Checar por atualizações"
|
msgstr "Checar por atualizações"
|
||||||
|
|
||||||
|
msgid "Optimize subscription"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Widget height, px"
|
msgid "Widget height, px"
|
||||||
msgstr "Altura do widget, px"
|
msgstr "Altura do widget, px"
|
||||||
|
|
||||||
@ -372,15 +375,15 @@ msgstr ""
|
|||||||
msgid "Weathers"
|
msgid "Weathers"
|
||||||
msgstr "Editar relógios"
|
msgstr "Editar relógios"
|
||||||
|
|
||||||
|
msgid "Functions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Add"
|
msgid "Add"
|
||||||
msgstr "Adicionar"
|
msgstr "Adicionar"
|
||||||
|
|
||||||
msgid "Show value"
|
msgid "Show value"
|
||||||
msgstr "Mostrar valor"
|
msgstr "Mostrar valor"
|
||||||
|
|
||||||
msgid "Add lambda"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "Edit bars"
|
msgid "Edit bars"
|
||||||
msgstr "Editar barras"
|
msgstr "Editar barras"
|
||||||
|
|
||||||
@ -432,25 +435,6 @@ msgstr ""
|
|||||||
msgid "Select font"
|
msgid "Select font"
|
||||||
msgstr "Selecionar fonte"
|
msgstr "Selecionar fonte"
|
||||||
|
|
||||||
msgid "You are using the actual version %1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, fuzzy
|
|
||||||
msgid "No new version found"
|
|
||||||
msgstr "Nova versão: %1"
|
|
||||||
|
|
||||||
msgid "Current version : %1"
|
|
||||||
msgstr "Versão atual: %1"
|
|
||||||
|
|
||||||
msgid "New version : %1"
|
|
||||||
msgstr "Nova versão: %1"
|
|
||||||
|
|
||||||
msgid "Click \"Ok\" to download"
|
|
||||||
msgstr "Clique \"Ok\" para baixar"
|
|
||||||
|
|
||||||
msgid "There are updates"
|
|
||||||
msgstr "Há atualizações disponíveis"
|
|
||||||
|
|
||||||
msgid "AC online"
|
msgid "AC online"
|
||||||
msgstr "Carregador conectado"
|
msgstr "Carregador conectado"
|
||||||
|
|
||||||
@ -478,6 +462,28 @@ msgstr ""
|
|||||||
msgid "KB/s"
|
msgid "KB/s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Changelog of %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "You are using the actual version %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgid "No new version found"
|
||||||
|
msgstr "Nova versão: %1"
|
||||||
|
|
||||||
|
msgid "Current version : %1"
|
||||||
|
msgstr "Versão atual: %1"
|
||||||
|
|
||||||
|
msgid "New version : %1"
|
||||||
|
msgstr "Nova versão: %1"
|
||||||
|
|
||||||
|
msgid "Click \"Ok\" to download"
|
||||||
|
msgstr "Clique \"Ok\" para baixar"
|
||||||
|
|
||||||
|
msgid "There are updates"
|
||||||
|
msgstr "Há atualizações disponíveis"
|
||||||
|
|
||||||
msgid "Copy"
|
msgid "Copy"
|
||||||
msgstr "Copiar"
|
msgstr "Copiar"
|
||||||
|
|
||||||
|
@ -6,8 +6,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: \n"
|
"Project-Id-Version: \n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
||||||
"POT-Creation-Date: 2016-01-26 21:48+0300\n"
|
"POT-Creation-Date: 2016-02-03 23:02+0700\n"
|
||||||
"PO-Revision-Date: 2016-01-26 21:49+0300\n"
|
"PO-Revision-Date: 2016-02-03 23:04+0700\n"
|
||||||
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
|
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
|
||||||
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
|
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
|
||||||
"Language: ru\n"
|
"Language: ru\n"
|
||||||
@ -57,6 +57,9 @@ msgstr "Включить уведомления "
|
|||||||
msgid "Check updates on startup"
|
msgid "Check updates on startup"
|
||||||
msgstr "Проверять обновления при запуске"
|
msgstr "Проверять обновления при запуске"
|
||||||
|
|
||||||
|
msgid "Optimize subscription"
|
||||||
|
msgstr "Оптимизировать подписку"
|
||||||
|
|
||||||
msgid "Widget height, px"
|
msgid "Widget height, px"
|
||||||
msgstr "Высота виджета, пиксели"
|
msgstr "Высота виджета, пиксели"
|
||||||
|
|
||||||
@ -356,15 +359,15 @@ msgstr "Обновления"
|
|||||||
msgid "Weathers"
|
msgid "Weathers"
|
||||||
msgstr "Погода"
|
msgstr "Погода"
|
||||||
|
|
||||||
|
msgid "Functions"
|
||||||
|
msgstr "Функции"
|
||||||
|
|
||||||
msgid "Add"
|
msgid "Add"
|
||||||
msgstr "Добавить"
|
msgstr "Добавить"
|
||||||
|
|
||||||
msgid "Show value"
|
msgid "Show value"
|
||||||
msgstr "Показать значение"
|
msgstr "Показать значение"
|
||||||
|
|
||||||
msgid "Add lambda"
|
|
||||||
msgstr "Добавить лямбду"
|
|
||||||
|
|
||||||
msgid "Edit bars"
|
msgid "Edit bars"
|
||||||
msgstr "Редактировать бары"
|
msgstr "Редактировать бары"
|
||||||
|
|
||||||
@ -411,29 +414,11 @@ msgid "This software uses: %1"
|
|||||||
msgstr "Данное приложение использует: %1"
|
msgstr "Данное приложение использует: %1"
|
||||||
|
|
||||||
msgid "Special thanks to %1"
|
msgid "Special thanks to %1"
|
||||||
msgstr "Отдельно спасибо %1"
|
msgstr "Отдельное спасибо %1"
|
||||||
|
|
||||||
msgid "Select font"
|
msgid "Select font"
|
||||||
msgstr "Выберете шрифт"
|
msgstr "Выберете шрифт"
|
||||||
|
|
||||||
msgid "You are using the actual version %1"
|
|
||||||
msgstr "Вы используете актуальную версию %1"
|
|
||||||
|
|
||||||
msgid "No new version found"
|
|
||||||
msgstr "Обновления не найдены"
|
|
||||||
|
|
||||||
msgid "Current version : %1"
|
|
||||||
msgstr "Текущая версия : %1"
|
|
||||||
|
|
||||||
msgid "New version : %1"
|
|
||||||
msgstr "Новая версия : %1"
|
|
||||||
|
|
||||||
msgid "Click \"Ok\" to download"
|
|
||||||
msgstr "Нажмите \"Ok\" для загрузки"
|
|
||||||
|
|
||||||
msgid "There are updates"
|
|
||||||
msgstr "Найдены обновления"
|
|
||||||
|
|
||||||
msgid "AC online"
|
msgid "AC online"
|
||||||
msgstr "AC подключен"
|
msgstr "AC подключен"
|
||||||
|
|
||||||
@ -461,6 +446,27 @@ msgstr "МБ/с"
|
|||||||
msgid "KB/s"
|
msgid "KB/s"
|
||||||
msgstr "КБ/с"
|
msgstr "КБ/с"
|
||||||
|
|
||||||
|
msgid "Changelog of %1"
|
||||||
|
msgstr "Список изменений %1"
|
||||||
|
|
||||||
|
msgid "You are using the actual version %1"
|
||||||
|
msgstr "Вы используете актуальную версию %1"
|
||||||
|
|
||||||
|
msgid "No new version found"
|
||||||
|
msgstr "Обновления не найдены"
|
||||||
|
|
||||||
|
msgid "Current version : %1"
|
||||||
|
msgstr "Текущая версия : %1"
|
||||||
|
|
||||||
|
msgid "New version : %1"
|
||||||
|
msgstr "Новая версия : %1"
|
||||||
|
|
||||||
|
msgid "Click \"Ok\" to download"
|
||||||
|
msgstr "Нажмите \"Ok\" для загрузки"
|
||||||
|
|
||||||
|
msgid "There are updates"
|
||||||
|
msgstr "Найдены обновления"
|
||||||
|
|
||||||
msgid "Copy"
|
msgid "Copy"
|
||||||
msgstr "Копировать"
|
msgstr "Копировать"
|
||||||
|
|
||||||
@ -612,6 +618,9 @@ msgctxt "EMAIL OF TRANSLATORS"
|
|||||||
msgid "Your emails"
|
msgid "Your emails"
|
||||||
msgstr "esalexeev@gmail.com"
|
msgstr "esalexeev@gmail.com"
|
||||||
|
|
||||||
|
#~ msgid "Add lambda"
|
||||||
|
#~ msgstr "Добавить лямбду"
|
||||||
|
|
||||||
#~ msgid "Free space on %1 less than 10%"
|
#~ msgid "Free space on %1 less than 10%"
|
||||||
#~ msgstr "Свободное место на диске %1 меньше 10%"
|
#~ msgstr "Свободное место на диске %1 меньше 10%"
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: \n"
|
"Project-Id-Version: \n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
||||||
"POT-Creation-Date: 2016-01-26 21:48+0300\n"
|
"POT-Creation-Date: 2016-02-03 23:02+0700\n"
|
||||||
"PO-Revision-Date: 2015-09-27 12:37+0300\n"
|
"PO-Revision-Date: 2015-09-27 12:37+0300\n"
|
||||||
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
|
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
|
||||||
"Language-Team: Ukrainian <kde-russian@lists.kde.ru>\n"
|
"Language-Team: Ukrainian <kde-russian@lists.kde.ru>\n"
|
||||||
@ -59,6 +59,9 @@ msgstr "Включити повідомлення"
|
|||||||
msgid "Check updates on startup"
|
msgid "Check updates on startup"
|
||||||
msgstr "Перевіряти оновлення при запуску"
|
msgstr "Перевіряти оновлення при запуску"
|
||||||
|
|
||||||
|
msgid "Optimize subscription"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Widget height, px"
|
msgid "Widget height, px"
|
||||||
msgstr "Висота віджету, пікселі"
|
msgstr "Висота віджету, пікселі"
|
||||||
|
|
||||||
@ -374,15 +377,15 @@ msgstr "Оновлення"
|
|||||||
msgid "Weathers"
|
msgid "Weathers"
|
||||||
msgstr "Погода"
|
msgstr "Погода"
|
||||||
|
|
||||||
|
msgid "Functions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Add"
|
msgid "Add"
|
||||||
msgstr "Додати"
|
msgstr "Додати"
|
||||||
|
|
||||||
msgid "Show value"
|
msgid "Show value"
|
||||||
msgstr "Показати значення"
|
msgstr "Показати значення"
|
||||||
|
|
||||||
msgid "Add lambda"
|
|
||||||
msgstr "Додати лямбду"
|
|
||||||
|
|
||||||
msgid "Edit bars"
|
msgid "Edit bars"
|
||||||
msgstr "Редагувати бари"
|
msgstr "Редагувати бари"
|
||||||
|
|
||||||
@ -434,25 +437,6 @@ msgstr ""
|
|||||||
msgid "Select font"
|
msgid "Select font"
|
||||||
msgstr "Оберіть шрифт"
|
msgstr "Оберіть шрифт"
|
||||||
|
|
||||||
msgid "You are using the actual version %1"
|
|
||||||
msgstr "Ви використовуєте актуальну версію %1"
|
|
||||||
|
|
||||||
#, fuzzy
|
|
||||||
msgid "No new version found"
|
|
||||||
msgstr "Оновлень не знайдено"
|
|
||||||
|
|
||||||
msgid "Current version : %1"
|
|
||||||
msgstr "Поточна версія : %1"
|
|
||||||
|
|
||||||
msgid "New version : %1"
|
|
||||||
msgstr "Нова версія : %1"
|
|
||||||
|
|
||||||
msgid "Click \"Ok\" to download"
|
|
||||||
msgstr "Натисніть \"Ok\" для завантаження"
|
|
||||||
|
|
||||||
msgid "There are updates"
|
|
||||||
msgstr "Знайдені оновлення"
|
|
||||||
|
|
||||||
msgid "AC online"
|
msgid "AC online"
|
||||||
msgstr "AC підключений"
|
msgstr "AC підключений"
|
||||||
|
|
||||||
@ -480,6 +464,28 @@ msgstr "МБ/с"
|
|||||||
msgid "KB/s"
|
msgid "KB/s"
|
||||||
msgstr "КБ/с"
|
msgstr "КБ/с"
|
||||||
|
|
||||||
|
msgid "Changelog of %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "You are using the actual version %1"
|
||||||
|
msgstr "Ви використовуєте актуальну версію %1"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgid "No new version found"
|
||||||
|
msgstr "Оновлень не знайдено"
|
||||||
|
|
||||||
|
msgid "Current version : %1"
|
||||||
|
msgstr "Поточна версія : %1"
|
||||||
|
|
||||||
|
msgid "New version : %1"
|
||||||
|
msgstr "Нова версія : %1"
|
||||||
|
|
||||||
|
msgid "Click \"Ok\" to download"
|
||||||
|
msgstr "Натисніть \"Ok\" для завантаження"
|
||||||
|
|
||||||
|
msgid "There are updates"
|
||||||
|
msgstr "Знайдені оновлення"
|
||||||
|
|
||||||
msgid "Copy"
|
msgid "Copy"
|
||||||
msgstr "Копіювати"
|
msgstr "Копіювати"
|
||||||
|
|
||||||
@ -640,6 +646,9 @@ msgctxt "EMAIL OF TRANSLATORS"
|
|||||||
msgid "Your emails"
|
msgid "Your emails"
|
||||||
msgstr "sarumyan@i.ua"
|
msgstr "sarumyan@i.ua"
|
||||||
|
|
||||||
|
#~ msgid "Add lambda"
|
||||||
|
#~ msgstr "Додати лямбду"
|
||||||
|
|
||||||
#~ msgid "Free space on %1 less than 10%"
|
#~ msgid "Free space on %1 less than 10%"
|
||||||
#~ msgstr "Вільний простір на диску %1 меньше ніж 10%"
|
#~ msgstr "Вільний простір на диску %1 меньше ніж 10%"
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: \n"
|
"Project-Id-Version: \n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
|
||||||
"POT-Creation-Date: 2016-01-26 21:48+0300\n"
|
"POT-Creation-Date: 2016-02-03 23:02+0700\n"
|
||||||
"PO-Revision-Date: 2015-07-31 22:24+0300\n"
|
"PO-Revision-Date: 2015-07-31 22:24+0300\n"
|
||||||
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
|
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
|
||||||
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
|
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
|
||||||
@ -57,6 +57,9 @@ msgstr ""
|
|||||||
msgid "Check updates on startup"
|
msgid "Check updates on startup"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Optimize subscription"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Widget height, px"
|
msgid "Widget height, px"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -369,15 +372,15 @@ msgstr ""
|
|||||||
msgid "Weathers"
|
msgid "Weathers"
|
||||||
msgstr "可编辑的"
|
msgstr "可编辑的"
|
||||||
|
|
||||||
|
msgid "Functions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Add"
|
msgid "Add"
|
||||||
msgstr "添加"
|
msgstr "添加"
|
||||||
|
|
||||||
msgid "Show value"
|
msgid "Show value"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "Add lambda"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid "Edit bars"
|
msgid "Edit bars"
|
||||||
msgstr "可编辑的"
|
msgstr "可编辑的"
|
||||||
@ -430,24 +433,6 @@ msgstr ""
|
|||||||
msgid "Select font"
|
msgid "Select font"
|
||||||
msgstr "选择字体"
|
msgstr "选择字体"
|
||||||
|
|
||||||
msgid "You are using the actual version %1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "No new version found"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "Current version : %1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "New version : %1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "Click \"Ok\" to download"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "There are updates"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid "AC online"
|
msgid "AC online"
|
||||||
msgstr "外接电源使用中标签"
|
msgstr "外接电源使用中标签"
|
||||||
@ -477,6 +462,27 @@ msgstr ""
|
|||||||
msgid "KB/s"
|
msgid "KB/s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Changelog of %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "You are using the actual version %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "No new version found"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Current version : %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "New version : %1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Click \"Ok\" to download"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "There are updates"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Copy"
|
msgid "Copy"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user