окончательное разделение таблицы и функционала видимой ее формы

This commit is contained in:
2024-10-22 15:25:06 +03:00
parent 319e6575c8
commit 38b2896e4a
102 changed files with 738 additions and 709 deletions

View File

@@ -1,7 +1,6 @@
package _VisualDVM.ProjectData.DBArray;
import Common.Database.Tables.DBTable;
import Common.Visual.DataSetControlForm;
import _VisualDVM.Current;
import _VisualDVM.ProjectData.DBArray.UI.DBArraysForm;
import javax.swing.*;
@@ -10,19 +9,7 @@ public class ArraysDBTable extends DBTable<String, DBArray> {
super(String.class, DBArray.class);
}
@Override
public String getSingleDescription() {
return "массив";
}
@Override
public String getPluralDescription() {
return "сохранённые состояния";
}
@Override
protected DataSetControlForm createUI(JPanel mountPanel) {
return new DBArraysForm(this, mountPanel);
}
@Override
public Current CurrentName() {
return Current.DBArray;
}
}

View File

@@ -2,6 +2,7 @@ package _VisualDVM.ProjectData.DBArray.UI;
import Common.Database.Tables.DataSet;
import Common.Visual.DataSetControlForm;
import Common.Visual.Menus.DataMenuBar;
import _VisualDVM.Current;
import _VisualDVM.ProjectData.DBArray.DBArray;
import javax.swing.*;
@@ -10,6 +11,18 @@ public class DBArraysForm extends DataSetControlForm<DBArray> {
super(dataSource_in, mountPanel_in);
}
@Override
public Current CurrentName() {
return Current.DBArray;
}
@Override
public String getSingleDescription() {
return "массив";
}
@Override
public String getPluralDescription() {
return "сохранённые состояния";
}
@Override
public String[] getUIColumnNames() {
return new String[]{"Имя"};
}
@@ -34,7 +47,7 @@ public class DBArraysForm extends DataSetControlForm<DBArray> {
}
@Override
public DataMenuBar createMenuBar() {
return new DataMenuBar(dataSource.getPluralDescription()) {
return new DataMenuBar(getPluralDescription()) {
@Override
public void createSelectionButtons(DataSet dataSet) {
//не нужны.

View File

@@ -1,11 +1,17 @@
package _VisualDVM.ProjectData.Files;
import Common.Database.Tables.DBTable;
import java.util.Vector;
import java.util.stream.Collectors;
public class FilesDBTable extends DBTable<String, DBProjectFile> {
public FilesDBTable() {
super(String.class, DBProjectFile.class);
}
@Override
public String getSingleDescription() {
return "файл";
//todo временно.когда появится общий предок у таблиц и деревьев назначать дерево как createUI
public int getSelectedCount() {
return (int) Data.values().stream().filter(d -> d.isSelected()).count();
}
public Vector<DBProjectFile> getSelectedItems() {
return Data.values().stream().filter(d -> d.isSelected()).collect(Collectors.toCollection(Vector::new));
}
}

View File

@@ -1,16 +1,21 @@
package _VisualDVM.ProjectData.Messages.Errors;
import Common.Visual.DataSetControlForm;
import _VisualDVM.Current;
import _VisualDVM.ProjectData.Messages.MessagesControlForm;
import _VisualDVM.ProjectData.Messages.MessagesDBTable;
import javax.swing.*;
public class ErrorsDBTable extends MessagesDBTable<MessageError> {
public ErrorsDBTable() {
super(MessageError.class);
}
@Override
public String getSingleDescription() {
return "сообщение об ошибке";
}
@Override
public Current CurrentName() {
return Current.Errors;
protected DataSetControlForm createUI(JPanel mountPanel) {
return new MessagesControlForm(this, mountPanel) {
@Override
public Current CurrentName() {
return Current.Errors;
}
};
}
}

View File

@@ -36,7 +36,7 @@ public class MessagesControlForm extends DataSetControlForm<Message> {
@Override
public void ShowCurrentObject() throws Exception {
super.ShowCurrentObject();
Global.mainModule.getFile().form.getEditor().gotoLine(((Message) dataSource.getCurrent()).line);
Global.mainModule.getFile().form.getEditor().gotoLine(getCurrent().line);
}
@Override
protected void AdditionalInitColumns() {

View File

@@ -1,8 +1,5 @@
package _VisualDVM.ProjectData.Messages;
import Common.Database.Tables.iDBTable;
import Common.Visual.DataSetControlForm;
import javax.swing.*;
//https://stackoverflow.com/questions/2026965/can-i-add-a-button-to-a-jtable-column-header
//https://stackoverflow.com/questions/7137786/how-can-i-put-a-control-in-the-jtableheader-of-a-jtable/29963916#29963916
//https://stackoverflow.com/questions/7137786/how-can-i-put-a-control-in-the-jtableheader-of-a-jtable ->>
@@ -10,8 +7,4 @@ public class MessagesDBTable<M extends Message> extends iDBTable<M> {
public MessagesDBTable(Class<M> d_in) {
super(d_in);
}
@Override
protected DataSetControlForm createUI(JPanel mountPanel) {
return new MessagesControlForm(this, mountPanel);
}
}

View File

@@ -1,17 +1,21 @@
package _VisualDVM.ProjectData.Messages.Notes;
import Common.Visual.DataSetControlForm;
import _VisualDVM.Current;
import _VisualDVM.ProjectData.Messages.MessagesControlForm;
import _VisualDVM.ProjectData.Messages.MessagesDBTable;
import javax.swing.*;
public class NotesDBTable extends MessagesDBTable<MessageNote> {
public NotesDBTable() {
super(MessageNote.class);
// setUIContent(UI.getMainWindow().notesPanel);
}
@Override
public String getSingleDescription() {
return "примечание";
}
@Override
public Current CurrentName() {
return Current.Notes;
protected DataSetControlForm createUI(JPanel mountPanel) {
return new MessagesControlForm(this, mountPanel) {
@Override
public Current CurrentName() {
return Current.Notes;
}
};
}
}

View File

@@ -1,7 +1,6 @@
package _VisualDVM.ProjectData.Messages.Recommendations;
import Common.Database.Tables.iDBTable;
import Common.Visual.DataSetControlForm;
import _VisualDVM.Current;
import _VisualDVM.GlobalData.Settings.SettingName;
import _VisualDVM.Passes.PassCode;
import _VisualDVM.ProjectData.Messages.Recommendations.UI.RecommendationsForm;
@@ -18,14 +17,6 @@ public class RecommendationsDBTable extends iDBTable<MessageRecommendation> {
protected DataSetControlForm createUI(JPanel mountPanel) {
return new RecommendationsForm(this, mountPanel);
}
@Override
public String getSingleDescription() {
return "рекомендация";
}
@Override
public Current CurrentName() {
return Current.Recommendations;
}
public void addRecommendation(int group_in) {
MessageRecommendation result = null;
switch (group_in) {

View File

@@ -3,6 +3,7 @@ import Common.Database.Tables.DataSet;
import Common.Visual.DataSetControlForm;
import Common.Visual.Tables.HeaderTextFilter;
import Common.Visual.Tables.RendererWrapText;
import _VisualDVM.Current;
import _VisualDVM.ProjectData.Messages.Recommendations.MessageRecommendation;
import javax.swing.*;
@@ -11,6 +12,10 @@ public class RecommendationsForm extends DataSetControlForm<MessageRecommendatio
super(dataSource_in, mountPanel_in);
}
@Override
public Current CurrentName() {
return Current.Recommendations;
}
@Override
public String[] getUIColumnNames() {
return new String[]{"текст"};
}

View File

@@ -1,17 +1,22 @@
package _VisualDVM.ProjectData.Messages.Warnings;
import Common.Visual.DataSetControlForm;
import _VisualDVM.Current;
import _VisualDVM.ProjectData.Messages.MessagesControlForm;
import _VisualDVM.ProjectData.Messages.MessagesDBTable;
import javax.swing.*;
public class WarningsDBTable extends MessagesDBTable<MessageWarning> {
//https://stackoverflow.com/questions/13079777/editable-jtableheader
public WarningsDBTable() {
super(MessageWarning.class);
}
@Override
public String getSingleDescription() {
return "предупреждение";
}
@Override
public Current CurrentName() {
return Current.Warnings;
protected DataSetControlForm createUI(JPanel mountPanel) {
return new MessagesControlForm(this, mountPanel) {
@Override
public Current CurrentName() {
return Current.Warnings;
}
};
}
}

View File

@@ -4,8 +4,4 @@ public class PredictorStatisticsDBTable extends DBTable<String, PredictorStatist
public PredictorStatisticsDBTable() {
super(String.class, PredictorStatistics_2021.class);
}
@Override
public String getSingleDescription() {
return "статистика варианта";
}
}

View File

@@ -4,8 +4,4 @@ public class ProjectInfoDBTable extends DBTable<String, db_project_info> {
public ProjectInfoDBTable() {
super(String.class, db_project_info.class);
}
@Override
public String getSingleDescription() {
return "проект";
}
}

View File

@@ -1,35 +1,15 @@
package _VisualDVM.ProjectData.SapforData.Arrays;
import Common.Database.Tables.DataSet;
import Common.Visual.DataSetControlForm;
import _VisualDVM.Current;
import _VisualDVM.Global;
import _VisualDVM.Passes.PassCode;
import _VisualDVM.ProjectData.SapforData.Arrays.UI.ProjectArraysForm;
import javax.swing.*;
import java.util.Vector;
public class ProjectArraysSet extends DataSet<Long, ProjectArray> {
public ProjectArraysSet() {
super(Long.class, ProjectArray.class);
}
@Override
public String getSingleDescription() {
return "массив";
}
@Override
public String getPluralDescription() {
return "объявленные массивы";
}
@Override
public Current CurrentName() {
return Current.ProjectArray;
}
@Override
protected DataSetControlForm createUI(JPanel mountPanel) {
return new ProjectArraysForm(this, mountPanel);
}
@Override
public void SelectAll(boolean flag) {
Global.mainModule.getPass(PassCode.MassSelectArrays).Do(flag, new Vector(Global.mainModule.getProject().declaratedArrays.Data.values()));
}
}

View File

@@ -2,13 +2,16 @@ package _VisualDVM.ProjectData.SapforData.Arrays.UI;
import Common.Database.Tables.DataSet;
import Common.Visual.DataSetControlForm;
import Common.Visual.Tables.RendererHiddenList;
import _VisualDVM.Current;
import _VisualDVM.Global;
import _VisualDVM.GlobalData.Settings.SettingName;
import _VisualDVM.Passes.PassCode;
import _VisualDVM.ProjectData.SapforData.Arrays.ProjectArray;
import _VisualDVM.Visual.Tables.EditorFilesHyperlinks;
import _VisualDVM.Visual.Tables.RendererHyperlinks;
import javax.swing.*;
import java.util.Vector;
public class ProjectArraysForm extends DataSetControlForm<ProjectArray> {
//-
public static String filterName = "";
@@ -16,9 +19,23 @@ public class ProjectArraysForm extends DataSetControlForm<ProjectArray> {
public static String filterLocationName = "";
public static String filterFile = "";
public static String filterRegion = "*";
//--
public ProjectArraysForm(DataSet<?, ProjectArray> dataSource_in, JPanel mountPanel_in) {
super(dataSource_in, mountPanel_in);
}
//--
@Override
public Current CurrentName() {
return Current.ProjectArray;
}
@Override
public String getSingleDescription() {
return "массив";
}
@Override
public String getPluralDescription() {
return "объявленные массивы";
}
@Override
public String[] getUIColumnNames() {
return new String[]{
@@ -78,4 +95,9 @@ public class ProjectArraysForm extends DataSetControlForm<ProjectArray> {
return null;
}
}
@Override
public void SelectAll(boolean flag) {
Global.mainModule.getPass(PassCode.MassSelectArrays).Do(flag,
new Vector(Global.mainModule.getProject().declaratedArrays.Data.values()));
}
}

View File

@@ -1,7 +1,6 @@
package _VisualDVM.ProjectData.SapforData.Regions;
import Common.Database.Tables.DataSet;
import Common.Visual.DataSetControlForm;
import _VisualDVM.Current;
import _VisualDVM.ProjectData.SapforData.Regions.UI.ParallelRegionsForm;
import javax.swing.*;
@@ -12,18 +11,6 @@ public class ParallelRegionsSet extends DataSet<BigInteger, ParallelRegion> {
super(BigInteger.class, ParallelRegion.class);
}
@Override
public Current CurrentName() {
return Current.ParallelRegionInfo;
}
@Override
public String getSingleDescription() {
return "область распараллеливания";
}
@Override
public String getPluralDescription() {
return "области распараллеливания";
}
@Override
protected DataSetControlForm createUI(JPanel mountPanel) {
return new ParallelRegionsForm(this, mountPanel);
}

View File

@@ -3,6 +3,7 @@ import Common.Database.Tables.DataSet;
import Common.Visual.DataSetControlForm;
import Common.Visual.Tables.RendererMultiline;
import Common.Visual.Tables.RendererTopLeft;
import _VisualDVM.Current;
import _VisualDVM.ProjectData.SapforData.Regions.ParallelRegion;
import javax.swing.*;
@@ -11,6 +12,18 @@ public class ParallelRegionsForm extends DataSetControlForm<ParallelRegion> {
super(dataSource_in, mountPanel_in);
}
@Override
public Current CurrentName() {
return Current.ParallelRegionInfo;
}
@Override
public String getSingleDescription() {
return "область распараллеливания";
}
@Override
public String getPluralDescription() {
return "области распараллеливания";
}
@Override
public String[] getUIColumnNames() {
return new String[]{
"Имя",

View File

@@ -1,6 +1,5 @@
package _VisualDVM.ProjectData.SapforData.Variants;
import Common.Database.Objects.DBObject;
import _VisualDVM.Global;
import _VisualDVM.ProjectData.PredictorStatistic.PredictorStatistics_2021;
import _VisualDVM.ProjectData.Project.db_project_info;
import _VisualDVM.ProjectData.SapforData.Arrays.ProjectArray;
@@ -76,11 +75,6 @@ public class ParallelVariant extends DBObject {
public Object getPK() {
return UniqKey;
}
@Override
public void Select(boolean flag) {
super.Select(flag);
Global.mainModule.getUI().getVersionsWindow().getVariantsWindow().ShowCheckedVariantsCount();
}
public File restoreProject() {
project = null;
if (stats != null) {

View File

@@ -1,7 +1,6 @@
package _VisualDVM.ProjectData.SapforData.Variants;
import Common.Database.Tables.DataSet;
import Common.Visual.DataSetControlForm;
import _VisualDVM.Current;
import _VisualDVM.ProjectData.SapforData.Variants.UI.ParallelVariantsForm;
import javax.swing.*;
@@ -10,15 +9,7 @@ public class ParallelVariantsSet extends DataSet<String, ParallelVariant> {
super(String.class, ParallelVariant.class);
}
@Override
public String getPluralDescription() {
return "варианты";
}
@Override
protected DataSetControlForm createUI(JPanel mountPanel) {
return new ParallelVariantsForm(this, mountPanel);
}
@Override
public Current CurrentName() {
return Current.ParallelVariant;
}
}

View File

@@ -5,6 +5,7 @@ import Common.Visual.Menus.DataMenuBar;
import Common.Visual.Tables.RendererDate;
import Common.Visual.Tables.RendererMaskedNanInteger;
import Common.Visual.Tables.RendererMultiline;
import _VisualDVM.Current;
import _VisualDVM.Passes.PassCode;
import _VisualDVM.ProjectData.SapforData.Variants.ParallelVariant;
@@ -14,6 +15,14 @@ public class ParallelVariantsForm extends DataSetControlForm<ParallelVariant> {
super(dataSource_in, mountPanel_in);
}
@Override
public Current CurrentName() {
return Current.ParallelVariant;
}
@Override
public String getPluralDescription() {
return "варианты";
}
@Override
public boolean hasCheckBox() {
return true;
}
@@ -75,7 +84,7 @@ public class ParallelVariantsForm extends DataSetControlForm<ParallelVariant> {
}
@Override
public DataMenuBar createMenuBar() {
return new DataMenuBar(dataSource.getPluralDescription(),
return new DataMenuBar(getPluralDescription(),
PassCode.ShowAllParallelVariants,
PassCode.ShowParallelVariantsCoverage,
PassCode.PredictParallelVariants,