From 34df30fcd57d30af7307f26c83ecde89969ec9b3 Mon Sep 17 00:00:00 2001 From: 02090095 Date: Wed, 20 Mar 2024 23:32:24 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB=20=D1=81?= =?UTF-8?q?=D0=B2=D0=BE=D1=80=D0=B0=D1=87=D0=B8=D0=B2=D0=B0=D0=BD=D0=B8?= =?UTF-8?q?=D0=B5=20=D1=87=D0=B5=D1=80=D0=B5=D0=B7=20=D0=BC=D0=B5=D0=BD?= =?UTF-8?q?=D1=8E=20=D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B5=D0=BA.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/workspace.xml | 15 ++++++-- properties | 6 ++-- src/Common/GlobalProperties.java | 8 +++++ src/Common/Properties.java | 9 ++--- .../CredentialsBar/CredentialsBar.java | 25 ------------- .../Menus_2023/FileMenuBar/FileMenuBar.java | 17 --------- .../Menus_2023/MainMenuBar/MainMenuBar.java | 10 +----- .../CompactnessSettingsMenu.java | 29 +++++++++++++++ .../VisualiserSettingsMenu.java | 10 ++---- src/GlobalData/Compiler/CompilersMenuBar.java | 12 ------- .../Passes/All/UpdateProperty.java | 36 +++++++++++++++++++ .../UI/Interface/FileWindow.java | 2 -- .../UI/Interface/ProjectWindow.java | 1 - .../UI/Interface/TestingWindow.java | 1 - src/Visual_DVM_2021/UI/Main/FileForm.java | 24 ------------- src/Visual_DVM_2021/UI/Main/ProjectForm.java | 13 +------ src/Visual_DVM_2021/UI/Main/TestingForm.java | 15 ++------ 17 files changed, 101 insertions(+), 132 deletions(-) create mode 100644 src/Common/UI/Menus_2023/MainMenuBar/VisualiserSettingsMenu/CompactnessSettingsMenu.java rename src/Common/UI/Menus_2023/MainMenuBar/{ => VisualiserSettingsMenu}/VisualiserSettingsMenu.java (80%) diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 333d59b8..4bc0cea0 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -7,12 +7,23 @@ + + + + + + + + + - + + + diff --git a/properties b/properties index 5a3eb592..6778d89a 100644 --- a/properties +++ b/properties @@ -35,7 +35,7 @@ "CheckTestingIntervalSeconds": 10, "EmailOnTestingProgress": false, "collapseCredentials": false, - "collapseFileGraphs": true, - "collapseFileMessages": true, - "collapseProjectTrees": true + "collapseFileGraphs": false, + "collapseFileMessages": false, + "collapseProjectTrees": false } \ No newline at end of file diff --git a/src/Common/GlobalProperties.java b/src/Common/GlobalProperties.java index 6a3ef5bd..fec7c61f 100644 --- a/src/Common/GlobalProperties.java +++ b/src/Common/GlobalProperties.java @@ -13,6 +13,14 @@ public class GlobalProperties extends Properties { return "Запрашивать подтверждения начала выполнения проходов"; case "FocusPassesResult": return "Переходить на результирующую вкладку проходов по их завершении"; + case "collapseCredentials": + return "Свернуть раздел машин"; + case "collapseFileGraphs": + return "Свернуть раздел графов файла"; + case "collapseFileMessages": + return "Свернуть раздел сообщений файла"; + case "collapseProjectTrees": + return "Свернуть раздел деревьев проекта"; default: return "?"; } diff --git a/src/Common/Properties.java b/src/Common/Properties.java index 600bf058..571532d4 100644 --- a/src/Common/Properties.java +++ b/src/Common/Properties.java @@ -1,6 +1,8 @@ package Common; import Common.UI.Menus_2023.StableMenuItem; import Common.Utils.Utils; +import Visual_DVM_2021.Passes.PassCode_2021; +import Visual_DVM_2021.Passes.Pass_2021; import javax.swing.*; import java.io.File; @@ -11,9 +13,8 @@ public abstract class Properties { getFlag(fieldName) ? "/icons/Pick.png" : "/icons/NotPick.png"); //- menu_item.addActionListener(e -> { - switchFlag(fieldName); - Update(); - menu_item.setIcon(Utils.getIcon(getFlag(fieldName) ? "/icons/Pick.png" : "/icons/NotPick.png")); + if (Pass_2021.passes.get(PassCode_2021.UpdateProperty).Do(fieldName, !getFlag(fieldName))) + menu_item.setIcon(Utils.getIcon(getFlag(fieldName) ? "/icons/Pick.png" : "/icons/NotPick.png")); }); menu.add(menu_item); } @@ -64,7 +65,7 @@ public abstract class Properties { } return false; } - public void switchAndUpdateFlag(String name){ + public void switchAndUpdateFlag(String name) { try { Field field = getClass().getField(name); boolean oldValue = (boolean) field.get(Global.properties); diff --git a/src/Common/UI/Menus_2023/CredentialsBar/CredentialsBar.java b/src/Common/UI/Menus_2023/CredentialsBar/CredentialsBar.java index f84e073c..9c42cbdd 100644 --- a/src/Common/UI/Menus_2023/CredentialsBar/CredentialsBar.java +++ b/src/Common/UI/Menus_2023/CredentialsBar/CredentialsBar.java @@ -9,18 +9,12 @@ import javax.swing.*; public class CredentialsBar extends VisualiserMenuBar { public MenuBarButton MachineButton; public MenuBarButton UserButton; - public MenuBarButton ExpandButton; public CredentialsBar(){ add(MachineButton = new MenuBarButton() { { setIcon("/icons/Machine.png"); setFont(VisualiserFonts.TreeBold); setToolTipText("Текущая машина"); - /* - addActionListener(e -> { - UI.getMainWindow().FocusCredentials(); - }); - */ } }); //-- @@ -29,28 +23,9 @@ public class CredentialsBar extends VisualiserMenuBar { setIcon("/icons/User.png"); setFont(VisualiserFonts.TreeBold); setToolTipText("Текущий пользователь"); - /* - addActionListener(e -> { - UI.getMainWindow().FocusCredentials(); - }); - */ - } - }); - add(new JSeparator()); - //-- - add(ExpandButton = new MenuBarButton() { - { - setIcon("/icons/ExpandDown.png"); - setFont(VisualiserFonts.TreeBold); - setToolTipText("Развернуть"); - - addActionListener(e -> { - UI.getMainWindow().getTestingWindow().SwitchCredentials(true); - }); } }); } - public void ShowMachine(){ MachineButton.setText(Current.getMachine().getURL()); } diff --git a/src/Common/UI/Menus_2023/FileMenuBar/FileMenuBar.java b/src/Common/UI/Menus_2023/FileMenuBar/FileMenuBar.java index d8d7cf09..a195dd54 100644 --- a/src/Common/UI/Menus_2023/FileMenuBar/FileMenuBar.java +++ b/src/Common/UI/Menus_2023/FileMenuBar/FileMenuBar.java @@ -12,9 +12,6 @@ import Visual_DVM_2021.Passes.PassCode_2021; import javax.swing.*; import java.awt.*; public class FileMenuBar extends VisualiserMenuBar { - public ExpandCollapseButton LeftECButton; - public ExpandCollapseButton DownECButton; - //-- public JSpinner sToGo; JLabel LineCountLabel; public JLabel CurrentSymbolLabel; @@ -22,20 +19,6 @@ public class FileMenuBar extends VisualiserMenuBar { FileSettingsMenu fileSettingsMenu; public FileMenuBar(SPFEditor editor_in) { editor = editor_in; - add(LeftECButton = new ExpandCollapseButton("область графов файла", ECButtonPosition.Left) { - { - addActionListener(e -> { - Current.getFile().form.SwitchGraphs(); - }); - } - }); - add(DownECButton = new ExpandCollapseButton("область сообщений файла", ECButtonPosition.Down) { - { - addActionListener(e -> { - Current.getFile().form.SwitchMessages(); - }); - } - }); add(new MenuBarButton() { { setToolTipText("Поиск(Ctrl+F)"); diff --git a/src/Common/UI/Menus_2023/MainMenuBar/MainMenuBar.java b/src/Common/UI/Menus_2023/MainMenuBar/MainMenuBar.java index 53a59746..274bb16f 100644 --- a/src/Common/UI/Menus_2023/MainMenuBar/MainMenuBar.java +++ b/src/Common/UI/Menus_2023/MainMenuBar/MainMenuBar.java @@ -1,10 +1,10 @@ package Common.UI.Menus_2023.MainMenuBar; -import Common.Current; import Common.Global; import Common.UI.Menus_2023.ECButtonPosition; import Common.UI.Menus_2023.ExpandCollapseButton; import Common.UI.Menus_2023.MenuBarButton; import Common.UI.Menus_2023.VisualiserMenuBar; +import Common.UI.Menus_2023.MainMenuBar.VisualiserSettingsMenu.VisualiserSettingsMenu; import Common.UI.UI; import Repository.Component.PerformanceAnalyzer.PerformanceAnalyzer; import Visual_DVM_2021.Passes.PassCode_2021; @@ -16,7 +16,6 @@ public class MainMenuBar extends VisualiserMenuBar { JMenu analyses; JMenu transformations; MenuBarButton components; - public ExpandCollapseButton RightECButton; public MainMenuBar() { addMenus(new LastOpenedProjectsMenu()); addPasses(PassCode_2021.OpenCurrentProject, PassCode_2021.CreateEmptyProject); @@ -68,13 +67,6 @@ public class MainMenuBar extends VisualiserMenuBar { } }); */ - add(RightECButton = new ExpandCollapseButton("область деревьев проекта", ECButtonPosition.Up) { - { - addActionListener(e -> { - UI.getMainWindow().getProjectWindow().SwitchProjectTrees(); - }); - } - }); //--- ShowProject(false); } diff --git a/src/Common/UI/Menus_2023/MainMenuBar/VisualiserSettingsMenu/CompactnessSettingsMenu.java b/src/Common/UI/Menus_2023/MainMenuBar/VisualiserSettingsMenu/CompactnessSettingsMenu.java new file mode 100644 index 00000000..609c0eed --- /dev/null +++ b/src/Common/UI/Menus_2023/MainMenuBar/VisualiserSettingsMenu/CompactnessSettingsMenu.java @@ -0,0 +1,29 @@ +package Common.UI.Menus_2023.MainMenuBar.VisualiserSettingsMenu; +import Common.Current; +import Common.Global; +import Common.UI.Menus_2023.SettingsSubmenu; +import Common.UI.Themes.VisualiserFonts; +import GlobalData.Settings.SettingName; + +import javax.swing.*; +public class CompactnessSettingsMenu extends SettingsSubmenu { + public CompactnessSettingsMenu(){ + super("Компактность отображения", null, + SettingName.SmallScreen, + SettingName.ShowFullTabsNames, + SettingName.ShowFullArraysDeclarations, + SettingName.FastAccessPassesCount, + SettingName.LastOpenedProjectsCount + ); + addSeparator(); + String [] propertiesNames = new String[]{ + "collapseCredentials", + "collapseProjectTrees", + "collapseFileGraphs", + "collapseFileMessages" + }; + for (String name: propertiesNames){ + Global.properties.addFlagMenuItem(this, name); + }; + } +} diff --git a/src/Common/UI/Menus_2023/MainMenuBar/VisualiserSettingsMenu.java b/src/Common/UI/Menus_2023/MainMenuBar/VisualiserSettingsMenu/VisualiserSettingsMenu.java similarity index 80% rename from src/Common/UI/Menus_2023/MainMenuBar/VisualiserSettingsMenu.java rename to src/Common/UI/Menus_2023/MainMenuBar/VisualiserSettingsMenu/VisualiserSettingsMenu.java index cb3905ab..872e803e 100644 --- a/src/Common/UI/Menus_2023/MainMenuBar/VisualiserSettingsMenu.java +++ b/src/Common/UI/Menus_2023/MainMenuBar/VisualiserSettingsMenu/VisualiserSettingsMenu.java @@ -1,4 +1,4 @@ -package Common.UI.Menus_2023.MainMenuBar; +package Common.UI.Menus_2023.MainMenuBar.VisualiserSettingsMenu; import Common.Global; import Common.UI.Menus.PropertiesSubmenu; import Common.UI.Menus_2023.SettingsSubmenu; @@ -13,13 +13,7 @@ public class VisualiserSettingsMenu extends VisualiserMenu { "ConfirmPassesStart", "FocusPassesResult" )); - add(new SettingsSubmenu("Компактность отображения", null, - SettingName.SmallScreen, - SettingName.ShowFullTabsNames, - SettingName.ShowFullArraysDeclarations, - SettingName.FastAccessPassesCount, - SettingName.LastOpenedProjectsCount - )); + add(new CompactnessSettingsMenu()); if (Global.isWindows) { add(new SettingsSubmenu("Компиляция на локальной машине", null, SettingName.LocalMakePathWindows, diff --git a/src/GlobalData/Compiler/CompilersMenuBar.java b/src/GlobalData/Compiler/CompilersMenuBar.java index e0b021c5..ac6487e2 100644 --- a/src/GlobalData/Compiler/CompilersMenuBar.java +++ b/src/GlobalData/Compiler/CompilersMenuBar.java @@ -7,7 +7,6 @@ import Visual_DVM_2021.Passes.PassCode_2021; import javax.swing.*; public class CompilersMenuBar extends DataMenuBar { - public MenuBarButton CollapseButton; public CompilersMenuBar() { super("компиляторы", PassCode_2021.AddCompiler, @@ -15,16 +14,5 @@ public class CompilersMenuBar extends DataMenuBar { PassCode_2021.DeleteCompiler, PassCode_2021.ShowCompilerVersion, PassCode_2021.ShowCompilerHelp); - add(new JSeparator()); - add(CollapseButton = new MenuBarButton() { - { - setIcon("/icons/CollapseUp.png"); - setFont(VisualiserFonts.TreeBold); - setToolTipText("Cвернуть"); - addActionListener(e -> { - UI.getMainWindow().getTestingWindow().SwitchCredentials(false); - }); - } - }); } } diff --git a/src/Visual_DVM_2021/Passes/All/UpdateProperty.java b/src/Visual_DVM_2021/Passes/All/UpdateProperty.java index 775f61a9..db84b7ac 100644 --- a/src/Visual_DVM_2021/Passes/All/UpdateProperty.java +++ b/src/Visual_DVM_2021/Passes/All/UpdateProperty.java @@ -1,6 +1,8 @@ package Visual_DVM_2021.Passes.All; +import Common.Current; import Common.Global; import Common.GlobalProperties; +import Common.UI.UI; import Visual_DVM_2021.Passes.Pass_2021; import java.lang.reflect.Field; @@ -25,4 +27,38 @@ public class UpdateProperty extends Pass_2021 { field.set(Global.properties, newValue); Global.properties.Update(); } + @Override + protected void showDone() throws Exception { + switch (name) { + case "collapseCredentials": + if ((boolean) newValue) + UI.getMainWindow().getTestingWindow().CollapseCredentials(); + else + UI.getMainWindow().getTestingWindow().ExpandCredentials(); + break; + case "collapseProjectTrees": + if (Current.HasProject()) { + if ((boolean) newValue) + UI.getMainWindow().getProjectWindow().CollapseProjectTrees(); + else UI.getMainWindow().getProjectWindow().ExpandProjectTrees(); + } + break; + case "collapseFileGraphs": + if (Current.HasFile()) { + if ((boolean) newValue) + Current.getFile().form.CollapseGraphs(); + else + Current.getFile().form.ExpandGraphs(); + } + break; + case "collapseFileMessages": + if (Current.HasFile()) { + if ((boolean) newValue) + Current.getFile().form.CollapseMessages(); + else + Current.getFile().form.ExpandMessages(); + } + break; + } + } } diff --git a/src/Visual_DVM_2021/UI/Interface/FileWindow.java b/src/Visual_DVM_2021/UI/Interface/FileWindow.java index 38a0250c..23cba3a9 100644 --- a/src/Visual_DVM_2021/UI/Interface/FileWindow.java +++ b/src/Visual_DVM_2021/UI/Interface/FileWindow.java @@ -61,9 +61,7 @@ public interface FileWindow extends VisualizerForm{ //-- void CollapseGraphs(); void ExpandGraphs(); - void SwitchGraphs(); //-- void CollapseMessages(); void ExpandMessages(); - void SwitchMessages(); } diff --git a/src/Visual_DVM_2021/UI/Interface/ProjectWindow.java b/src/Visual_DVM_2021/UI/Interface/ProjectWindow.java index 98ba3ac3..da8bdeb5 100644 --- a/src/Visual_DVM_2021/UI/Interface/ProjectWindow.java +++ b/src/Visual_DVM_2021/UI/Interface/ProjectWindow.java @@ -80,5 +80,4 @@ public interface ProjectWindow { //-- void CollapseProjectTrees(); void ExpandProjectTrees(); - void SwitchProjectTrees(); } diff --git a/src/Visual_DVM_2021/UI/Interface/TestingWindow.java b/src/Visual_DVM_2021/UI/Interface/TestingWindow.java index e951f6e7..68788c5e 100644 --- a/src/Visual_DVM_2021/UI/Interface/TestingWindow.java +++ b/src/Visual_DVM_2021/UI/Interface/TestingWindow.java @@ -34,5 +34,4 @@ public interface TestingWindow extends VisualizerForm { void ShowDVMPackage(DVMPackage master); void CollapseCredentials(); void ExpandCredentials(); - void SwitchCredentials(boolean flag); } diff --git a/src/Visual_DVM_2021/UI/Main/FileForm.java b/src/Visual_DVM_2021/UI/Main/FileForm.java index 5ec105e1..6381ed44 100644 --- a/src/Visual_DVM_2021/UI/Main/FileForm.java +++ b/src/Visual_DVM_2021/UI/Main/FileForm.java @@ -98,11 +98,9 @@ public class FileForm implements FileWindow, FormWithSplitters { ShowProperties(); Pass_2021.passes.get(PassCode_2021.Save).setControlsEnabled(false); //- - UI.fileMenuBar.LeftECButton.Switch(Global.properties.collapseFileGraphs); if (Global.properties.collapseFileGraphs) CollapseGraphs(); //- - UI.fileMenuBar.DownECButton.Switch(Global.properties.collapseFileMessages); if (Global.properties.collapseFileMessages) CollapseMessages(); } @@ -389,17 +387,6 @@ public class FileForm implements FileWindow, FormWithSplitters { SC12.updateUI(); } @Override - public void SwitchGraphs() { - if (Global.properties.collapseFileGraphs) - ExpandGraphs(); - else - CollapseGraphs(); - //--------------- - Global.properties.collapseFileGraphs =!Global.properties.collapseFileGraphs; - Global.properties.Update(); - UI.fileMenuBar.LeftECButton.Switch(Global.properties.collapseFileGraphs); - } - @Override public void CollapseMessages() { UI.Clear(content); content.add(editorBackground); @@ -419,15 +406,4 @@ public class FileForm implements FileWindow, FormWithSplitters { SC1.updateUI(); SC12.updateUI(); } - @Override - public void SwitchMessages() { - if (Global.properties.collapseFileMessages) - ExpandMessages(); - else - CollapseMessages(); - //--------------- - Global.properties.collapseFileMessages =!Global.properties.collapseFileMessages; - Global.properties.Update(); - UI.fileMenuBar.DownECButton.Switch(Global.properties.collapseFileMessages); - } } diff --git a/src/Visual_DVM_2021/UI/Main/ProjectForm.java b/src/Visual_DVM_2021/UI/Main/ProjectForm.java index b000acbd..90fca766 100644 --- a/src/Visual_DVM_2021/UI/Main/ProjectForm.java +++ b/src/Visual_DVM_2021/UI/Main/ProjectForm.java @@ -85,9 +85,9 @@ public class ProjectForm implements FormWithSplitters, ProjectWindow { SwitchScreen(Global.db.settings.get(SettingName.SmallScreen).toBoolean()); RefreshTabsNames(); //-- - UI.mainMenuBar.RightECButton.Switch(Global.properties.collapseProjectTrees); if (Global.properties.collapseProjectTrees) CollapseProjectTrees(); + //-- } @Override public void SaveSplitters() { @@ -306,15 +306,4 @@ public class ProjectForm implements FormWithSplitters, ProjectWindow { projectBackground.add(SC3); projectBackground.updateUI(); } - @Override - public void SwitchProjectTrees() { - if (Global.properties.collapseProjectTrees) - ExpandProjectTrees(); - else - CollapseProjectTrees(); - //--------------- - Global.properties.collapseProjectTrees =!Global.properties.collapseProjectTrees; - Global.properties.Update(); - UI.mainMenuBar.RightECButton.Switch(Global.properties.collapseProjectTrees); - } } \ No newline at end of file diff --git a/src/Visual_DVM_2021/UI/Main/TestingForm.java b/src/Visual_DVM_2021/UI/Main/TestingForm.java index 892278a0..a20b0be4 100644 --- a/src/Visual_DVM_2021/UI/Main/TestingForm.java +++ b/src/Visual_DVM_2021/UI/Main/TestingForm.java @@ -135,6 +135,9 @@ public class TestingForm implements FormWithSplitters, TestingWindow { Global.testingServer.db.sapforConfigurationCommands.mountUI(sapforConfigurationCommandsPanel); Global.testingServer.db.serverSapfors.mountUI(serverSapforsPanel); Global.testingServer.db.sapforPackages.mountUI(sapforPackagesPanel); + //-- + if (Global.properties.collapseCredentials) + CollapseCredentials(); } //- @Override @@ -305,7 +308,6 @@ public class TestingForm implements FormWithSplitters, TestingWindow { credentialsPanel.add(UI.credentialsBar); SC71.setDividerLocation(30); SC71.setDividerSize(0); - //SC71.setEnabled(false); credentialsPanel.revalidate(); credentialsPanel.repaint(); } @@ -314,19 +316,8 @@ public class TestingForm implements FormWithSplitters, TestingWindow { UI.Clear(credentialsPanel); credentialsPanel.add(SC18); SC71.setDividerLocation(200); - //SC71.setEnabled(true); SC71.setDividerSize(3); credentialsPanel.revalidate(); credentialsPanel.repaint(); } - @Override - public void SwitchCredentials(boolean flag) { - if (flag) { - ExpandCredentials(); - } else { - CollapseCredentials(); - } - Global.properties.collapseCredentials = !flag; - Global.properties.Update(); - } }