From f64460d1f04980355ee6fa14c38a656a0338be55 Mon Sep 17 00:00:00 2001 From: RememBerBer Date: Wed, 24 Nov 2021 18:27:10 +0800 Subject: [PATCH] storage info detail --- .../moo/info/ui/form/DetailForm.java | 28 +++++++++++++++++-- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/luoboduner/moo/info/ui/form/DetailForm.java b/src/main/java/com/luoboduner/moo/info/ui/form/DetailForm.java index 1bbfe64..c7c2eb0 100644 --- a/src/main/java/com/luoboduner/moo/info/ui/form/DetailForm.java +++ b/src/main/java/com/luoboduner/moo/info/ui/form/DetailForm.java @@ -1,5 +1,6 @@ package com.luoboduner.moo.info.ui.form; +import cn.hutool.core.io.unit.DataSizeUtil; import cn.hutool.log.Log; import cn.hutool.log.LogFactory; import com.intellij.uiDesigner.core.GridConstraints; @@ -9,14 +10,13 @@ import com.luoboduner.moo.info.App; import com.luoboduner.moo.info.ui.Style; import com.luoboduner.moo.info.util.ScrollUtil; import lombok.Getter; -import oshi.hardware.Baseboard; -import oshi.hardware.ComputerSystem; -import oshi.hardware.HardwareAbstractionLayer; +import oshi.hardware.*; import oshi.software.os.OperatingSystem; import javax.swing.*; import javax.swing.border.TitledBorder; import java.awt.*; +import java.util.List; /** * DetailForm @@ -115,6 +115,7 @@ public class DetailForm { detailForm.getBaseBoardTextPane().setText(getBaseBoardInfo()); detailForm.getCpuTextPane().setText(CpuForm.getCpuInfo()); detailForm.getMemoryTextPane().setText(MemoryForm.getMemoryInfo()); + detailForm.getStorageTextPane().setText(getStorageInfo()); detailForm.getPowerSourceTextPane().setText(PowerSourceForm.getPowerInfoText(hardware.getPowerSources())); } @@ -168,6 +169,27 @@ public class DetailForm { return builder.toString(); } + private static String getStorageInfo() { + StringBuilder builder = new StringBuilder(); + List diskStores = App.si.getHardware().getDiskStores(); + for (int i = 0; i < diskStores.size(); i++) { + HWDiskStore hwDiskStore = diskStores.get(i); + builder.append("
Name: ").append(hwDiskStore.getName()); + builder.append("
Model: ").append(hwDiskStore.getModel()); + builder.append("
Serial: ").append(hwDiskStore.getSerial()); + builder.append("
Size: ").append(DataSizeUtil.format(hwDiskStore.getSize())); + builder.append("
Partitions: "); + for (HWPartition partition : hwDiskStore.getPartitions()) { + builder.append("
"); + builder.append(partition.toString()); + } + + builder.append("
"); + } + + return builder.toString(); + } + { // GUI initializer generated by IntelliJ IDEA GUI Designer // >>> IMPORTANT!! <<<