Files
VisualSapfor/src/_VisualDVM/TestingSystem/Common/TestingMenuBar.java

99 lines
4.2 KiB
Java
Raw Normal View History

2024-10-09 22:21:57 +03:00
package _VisualDVM.TestingSystem.Common;
2024-10-14 18:41:02 +03:00
import Common.MainModule_;
2024-10-11 00:00:30 +03:00
import Common.Utils.Utils_;
2024-10-09 22:01:19 +03:00
import Common.Visual.Controls.MenuBarButton;
2024-10-08 22:33:49 +03:00
import Common.Visual.Fonts.VisualiserFonts;
import Common.Visual.Menus.VisualiserMenuBar;
import Common.Visual.UI;
2024-10-14 15:19:13 +03:00
import _VisualDVM.Global;
2024-10-14 12:14:01 +03:00
import _VisualDVM.Passes.PassCode;
2023-10-12 00:31:58 +03:00
import javax.swing.*;
import java.awt.*;
2024-10-14 21:55:58 +03:00
public class TestingMenuBar extends VisualiserMenuBar {
2024-10-14 15:19:13 +03:00
// public JLabel KernelsLabel;
public JButton autorefreshButton;
2023-10-12 00:31:58 +03:00
JSpinner sCheckTime;
2024-10-14 15:19:13 +03:00
// JSpinner sKernels;
2024-03-24 02:49:32 +03:00
JLabel serverAdminLabel;
2024-10-14 21:55:58 +03:00
public TestingMenuBar() {
//-
2024-10-14 15:19:13 +03:00
// KernelsLabel = addLabel("", "/icons/Kernels.png");
// KernelsLabel.setHorizontalTextPosition(JLabel.LEFT);
// KernelsLabel.setToolTipText("количество ядер, задействованное при тестировании");
/*
2023-10-14 00:43:39 +03:00
add(sKernels = new JSpinner());
sKernels.setPreferredSize(new Dimension(60, 26));
sKernels.setMaximumSize(new Dimension(60, 26));
sKernels.setModel(new SpinnerNumberModel(Global.properties.TestingKernels, 1,
2024-03-24 02:49:32 +03:00
Utils.getTestingMaxKernels(),
1));
sKernels.setValue(Global.properties.TestingKernels);
2023-10-14 00:43:39 +03:00
UI.MakeSpinnerRapid(sKernels, e -> {
Global.properties.updateField("TestingKernels", sKernels.getValue());
2023-10-14 00:43:39 +03:00
});
*/
addLabel(" ");
2023-10-14 00:43:39 +03:00
//--
add(new MenuBarButton() {
{
setText("оповещение по email");
setToolTipText("Оповещение о прогрессе выполнения пакета тестов");
Mark();
addActionListener(e -> {
Global.properties.switchAndUpdateFlag("EmailOnTestingProgress");
Mark();
});
}
public void Mark() {
setIcon(Utils_.getIcon(Global.properties.EmailOnTestingProgress ? "/Common/icons/Pick.png" : "/Common/icons/NotPick.png"));
}
});
//--
2023-10-12 00:31:58 +03:00
add(autorefreshButton = new MenuBarButton() {
{
setText("проверка раз в");
setToolTipText("автоматическое обновление состояния пакета задач");
Mark();
addActionListener(e -> {
Global.properties.switchAndUpdateFlag("AutoCheckTesting");
//-
if (Global.properties.AutoCheckTesting)
TestingServer.TimerOn();
else
TestingServer.TimerOff();
//-
2023-10-12 00:31:58 +03:00
Mark();
});
}
public void Mark() {
setIcon(Utils_.getIcon(Global.properties.AutoCheckTesting ? "/Common/icons/Pick.png" : "/Common/icons/NotPick.png"));
2023-10-12 00:31:58 +03:00
}
});
2023-10-14 00:43:39 +03:00
//--
2023-10-12 00:31:58 +03:00
add(sCheckTime = new JSpinner());
sCheckTime.setPreferredSize(new Dimension(60, 26));
sCheckTime.setMaximumSize(new Dimension(60, 26));
sCheckTime.setModel(new SpinnerNumberModel(Global.properties.CheckTestingIntervalSeconds, 10, 3600, 1));
sCheckTime.setValue(Global.properties.CheckTestingIntervalSeconds);
UI.MakeSpinnerRapid(sCheckTime, e -> {
Global.properties.updateField("CheckTestingIntervalSeconds", sCheckTime.getValue());
if (Global.properties.AutoCheckTesting) TestingServer.ResetTimer();
2023-10-12 00:31:58 +03:00
});
2023-10-14 00:43:39 +03:00
add(new JLabel(" сек ") {
2023-10-12 00:31:58 +03:00
{
2024-10-14 18:41:02 +03:00
setFont(MainModule_.instance.getUI().getTheme().Fonts.get(VisualiserFonts.TreeItalic));
2023-10-12 00:31:58 +03:00
}
});
addSeparator();
2024-03-24 02:49:32 +03:00
serverAdminLabel = addLabel(" управление сервером ");
2024-10-09 23:37:58 +03:00
addPasses(PassCode.StartTestingServer, PassCode.ShutdownTestingServer, PassCode.PublishTestingServer);
2023-10-12 00:31:58 +03:00
}
public void ShowAutoCheckTesting() {
autorefreshButton.setIcon(Utils_.getIcon(Global.properties.AutoCheckTesting ? "/Common/icons/Pick.png" : "/Common/icons/NotPick.png"));
2023-10-12 00:31:58 +03:00
}
2024-03-24 02:49:32 +03:00
public void showServerAdminLabel(boolean flag) {
serverAdminLabel.setVisible(flag);
}
2023-10-12 00:31:58 +03:00
}