[pdm-devel] [PATCH datacenter-manager 5/5] ui: add lxc resources, network, dns and options panels

Dietmar Maurer dietmar at proxmox.com
Thu Nov 27 12:34:28 CET 2025


With read-only mode.

Signed-off-by: Dietmar Maurer <dietmar at proxmox.com>
---
 ui/src/pve/lxc/mod.rs | 71 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 71 insertions(+)

diff --git a/ui/src/pve/lxc/mod.rs b/ui/src/pve/lxc/mod.rs
index dae6514..8dda5d6 100644
--- a/ui/src/pve/lxc/mod.rs
+++ b/ui/src/pve/lxc/mod.rs
@@ -1,5 +1,8 @@
 mod overview;
 use overview::LxcOverviewPanel;
+use proxmox_yew_comp::configuration::pve::{
+    LxcDnsPanel, LxcNetworkPanel, LxcOptionsPanel, LxcResourcesPanel,
+};
 
 use std::rc::Rc;
 
@@ -70,6 +73,74 @@ impl yew::Component for LxcPanelComp {
                     }
                 },
             )
+            .with_item_builder(
+                TabBarItem::new()
+                    .key("resources")
+                    .label(tr!("Resources"))
+                    .icon_class("fa fa-cube"),
+                {
+                    let remote = props.remote.clone();
+                    let node = props.node.clone();
+                    let vmid = props.info.vmid;
+                    move |_| {
+                        LxcResourcesPanel::new(node.clone(), vmid)
+                            .readonly(true)
+                            .remote(remote.clone())
+                            .into()
+                    }
+                },
+            )
+            .with_item_builder(
+                TabBarItem::new()
+                    .key("network")
+                    .label(tr!("Network"))
+                    .icon_class("fa fa-exchange"),
+                {
+                    let remote = props.remote.clone();
+                    let node = props.node.clone();
+                    let vmid = props.info.vmid;
+                    move |_| {
+                        LxcNetworkPanel::new(node.clone(), vmid)
+                            .readonly(true)
+                            .remote(remote.clone())
+                            .into()
+                    }
+                },
+            )
+            .with_item_builder(
+                TabBarItem::new()
+                    .key("dns")
+                    .label(tr!("DNS"))
+                    .icon_class("fa fa-globe"),
+                {
+                    let remote = props.remote.clone();
+                    let node = props.node.clone();
+                    let vmid = props.info.vmid;
+                    move |_| {
+                        LxcDnsPanel::new(node.clone(), vmid)
+                            .readonly(true)
+                            .remote(remote.clone())
+                            .into()
+                    }
+                },
+            )
+            .with_item_builder(
+                TabBarItem::new()
+                    .key("options")
+                    .label(tr!("Options"))
+                    .icon_class("fa fa-gear"),
+                {
+                    let remote = props.remote.clone();
+                    let node = props.node.clone();
+                    let vmid = props.info.vmid;
+                    move |_| {
+                        LxcOptionsPanel::new(node.clone(), vmid)
+                            .readonly(true)
+                            .remote(remote.clone())
+                            .into()
+                    }
+                },
+            )
             .into()
     }
 }
-- 
2.47.3




More information about the pdm-devel mailing list