From: Matthias Heiserer <m.heiserer@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [pve-devel] [RFC widget-toolkit] ui: add InfoMultiWidget, to be used for RAM
Date: Wed, 25 Jan 2023 12:29:29 +0100 [thread overview]
Message-ID: <20230125112932.127145-5-m.heiserer@proxmox.com> (raw)
In-Reply-To: <20230125112932.127145-1-m.heiserer@proxmox.com>
Signed-off-by: Matthias Heiserer <m.heiserer@proxmox.com>
---
src/Makefile | 1 +
src/panel/NodeMemoryWidget.js | 28 ++++++++++++++++++++++++++++
src/panel/StatusView.js | 2 +-
3 files changed, 30 insertions(+), 1 deletion(-)
create mode 100644 src/panel/NodeMemoryWidget.js
diff --git a/src/Makefile b/src/Makefile
index 95da5aa..5a0213a 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -54,6 +54,7 @@ JSSRC= \
panel/EOLNotice.js \
panel/InputPanel.js \
panel/InfoWidget.js \
+ panel/NodeMemoryWidget.js \
panel/LogView.js \
panel/NodeInfoRepoStatus.js \
panel/JournalView.js \
diff --git a/src/panel/NodeMemoryWidget.js b/src/panel/NodeMemoryWidget.js
new file mode 100644
index 0000000..e54899e
--- /dev/null
+++ b/src/panel/NodeMemoryWidget.js
@@ -0,0 +1,28 @@
+Ext.define('Proxmox.widget.NodeMemory', {
+ extend: 'Proxmox.widget.Info',
+ alias: 'widget.pmxNodeMemoryWidget',
+
+ updateValue: function(text, usage, mem) {
+ let me = this;
+
+ let arcUse = me.el?.getById("arcsize")?.dom;
+ if (arcUse) {
+ usage = (mem.used - mem.arcsize) / mem.total;
+ arcUse.style["margin-right"] = `${(mem.free / mem.total) * 100}%`;
+ }
+ me.callParent([text, usage]);
+ },
+
+ initComponent: function() {
+ let me = this;
+ me.callParent();
+
+ me.down("#progress").on('boxready', (self) => {
+ self.bar.dom.insertAdjacentHTML("beforebegin",
+ `<div id='arcsize'
+ style='margin-right: 100%; background-color: #86424c; width: auto;'
+ class='x-progress-bar'>
+ </div>`);
+ });
+ },
+});
diff --git a/src/panel/StatusView.js b/src/panel/StatusView.js
index e2e81e2..7258f36 100644
--- a/src/panel/StatusView.js
+++ b/src/panel/StatusView.js
@@ -72,7 +72,7 @@ Ext.define('Proxmox.panel.StatusView', {
if (Ext.isFunction(field.calculate)) {
calculate = field.calculate;
}
- field.updateValue(renderer.call(field, used, max), calculate(used, max));
+ field.updateValue(renderer.call(field, used, max), calculate(used, max), used);
}
},
--
2.30.2
next prev parent reply other threads:[~2023-01-25 11:29 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-25 11:29 [pve-devel] [RFC ] fix #1454 - include ZFS ARC in memory usage Matthias Heiserer
2023-01-25 11:29 ` [pve-devel] [RFC OPTIONAL pve-cluster 1/1] add arcsize to rrd Matthias Heiserer
2023-03-15 11:10 ` Dominik Csapak
2023-03-15 11:51 ` Matthias Heiserer
2023-03-16 6:53 ` DERUMIER, Alexandre
2023-03-17 13:17 ` Matthias Heiserer
2023-03-15 12:29 ` DERUMIER, Alexandre
2023-01-25 11:29 ` [pve-devel] [RFC common] procfstools: add arcsize to meminfo Matthias Heiserer
2023-01-25 11:29 ` [pve-devel] [PATCH manager 1/4] node/status: return arc size Matthias Heiserer
2023-01-25 11:29 ` Matthias Heiserer [this message]
2023-03-15 11:10 ` [pve-devel] [RFC widget-toolkit] ui: add InfoMultiWidget, to be used for RAM Dominik Csapak
2023-03-15 11:14 ` Dominik Csapak
2023-01-25 11:29 ` [pve-devel] [PATCH manager 2/4] store arcsize in rrd Matthias Heiserer
2023-01-25 11:29 ` [pve-devel] [PATCH manager 3/4] ui: node summary: show arc in rrd graph Matthias Heiserer
2023-01-25 11:29 ` [pve-devel] [PATCH manager 4/4] ui: node summary: show arc in RAM usage progress bar Matthias Heiserer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230125112932.127145-5-m.heiserer@proxmox.com \
--to=m.heiserer@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox