промежуточный. Доработал сравнение версий, в том числе и обычных. Можно просматривать версию если не выбрана вторая.

This commit is contained in:
2023-11-02 20:43:45 +03:00
parent 00a28e431c
commit f20eec07b0
5 changed files with 46 additions and 46 deletions

7
.idea/workspace.xml generated
View File

@@ -8,10 +8,9 @@
<component name="ChangeListManager">
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Common/UI/UI.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/UI/UI.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/ProjectData/Messages/Message.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/ProjectData/Messages/Message.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Repository/Component/Visualiser.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Repository/Component/Visualiser.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/SapforPass.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/SapforPass.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/SapforTestingSystem/SapforTasksPackage/SapforTasksPackageTree.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/SapforTestingSystem/SapforTasksPackage/SapforTasksPackageTree.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/SapforVersionsComparisonForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/SapforVersionsComparisonForm.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/VersionsComparisonForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/VersionsComparisonForm.java" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />

View File

@@ -27,7 +27,7 @@ public class SapforTasksPackageTree extends DataTree {
}
@Override
public void SelectionAction(TreePath e) {
System.out.println("Select " + current);
// System.out.println("Select " + current);
DefaultMutableTreeNode node = (DefaultMutableTreeNode) e.getLastPathComponent();
// Current.set(Current.ProjectNode, node);
Object o = node.getUserObject();

View File

@@ -65,10 +65,12 @@ public abstract class ComparisonForm<T> {
removeObject();
showNoObject();
ClearText();
/*
if (isMaster())
slave.ClearText();
else if (isSlave())
master.ClearText();
*/
}
public void ApplyObject() {
RemoveObject();
@@ -184,7 +186,7 @@ public abstract class ComparisonForm<T> {
}
protected void ClearText() {
events_on = false;
Body.setText("");
Body.setText("объект не назначен");
}
//предполагаем что оба объекта есть и мы можем получить с них текст.
protected void Compare() throws Exception {

View File

@@ -28,28 +28,25 @@ public class SapforVersionsComparisonForm extends ComparisonForm<SapforVersion_j
tools.add(cbFile, 3);
//--
cbFile.addActionListener(e -> {
ProjectFile File1 = null;
ProjectFile File2 = null;
ClearText();
file = (cbFile.getSelectedItem() instanceof ProjectFile) ?
((ProjectFile) cbFile.getSelectedItem()) : null;
if (file != null) {
//-->>
if (isMaster()) {
getSlave().selectSameFile(file);
if (isReady() && !getSlave().selectSameFile(file))
DoShowPass(true);
} else {
File1 = getMaster().file;
File2 = file;
//---
if ((File1 != null) && (File2 != null)) {
if (isReady()) {
if (getMaster().isReady()) {
boolean ExtensionsOn = Global.db.settings.get(SettingName.ExtensionsOn).toBoolean();
String name1 = ExtensionsOn ? File1.file.getName() : Utils.getFileNameWithoutExtension(File1.file);
String name2 = ExtensionsOn ? File2.file.getName() : Utils.getFileNameWithoutExtension(File2.file);
System.out.println("name1=" + Utils.Brackets(name1) + "name2=" + Utils.Brackets(name2));
String name1 = ExtensionsOn ? getMaster().file.file.getName() : Utils.getFileNameWithoutExtension(getMaster().file.file);
String name2 = ExtensionsOn ? file.file.getName() : Utils.getFileNameWithoutExtension(file.file);
if (Global.db.settings.get(SettingName.ComparsionDiffMergeOn).toBoolean()) {
if (name1.equalsIgnoreCase(name2))
master.DoComparePass(true);
} else
master.DoShowPass(true);
} else {
master.DoShowPass(true);
}
}
}
@@ -61,7 +58,7 @@ public class SapforVersionsComparisonForm extends ComparisonForm<SapforVersion_j
}
@Override
protected String getText() {
return Utils.ReadAllText(file.file);
return isReady() ? Utils.ReadAllText(file.file) : "объект не назначен";
}
@Override
public boolean isReady() {
@@ -81,7 +78,7 @@ public class SapforVersionsComparisonForm extends ComparisonForm<SapforVersion_j
cbFile.removeAllItems();
file = null;
}
public void selectSameFile(ProjectFile file_in) {
public boolean selectSameFile(ProjectFile file_in) {
file = null;
cbFile.setSelectedIndex(-1);
for (int i = 0; i < cbFile.getItemCount(); ++i) {
@@ -90,15 +87,16 @@ public class SapforVersionsComparisonForm extends ComparisonForm<SapforVersion_j
//если учитываем расширения, ищем полное совпадение
if (projectFile.file.getName().equals(file_in.file.getName())) {
cbFile.setSelectedIndex(i);
return;
return true;
}
} else {
if (Utils.getNameWithoutExtension(projectFile.file.getName()).equals(
Utils.getNameWithoutExtension(file_in.file.getName()))) {
cbFile.setSelectedIndex(i);
return;
return true;
}
}
}
return (cbFile.getSelectedItem() != null) && (cbFile.getSelectedItem() instanceof ProjectFile);
}
}

View File

@@ -4,6 +4,7 @@ import Common.Global;
import Common.Utils.Utils;
import GlobalData.Settings.SettingName;
import ProjectData.Files.DBProjectFile;
import ProjectData.Files.ProjectFile;
import ProjectData.Project.db_project_info;
import javax.swing.*;
@@ -21,29 +22,28 @@ public class VersionsComparisonForm extends ComparisonForm<db_project_info> {
super(db_project_info.class, slave_in);
cbFile = new JComboBox<>();
tools.add(cbFile, 3);
cbFile.addActionListener(e -> {
DBProjectFile File1 = null;
DBProjectFile File2 = null;
ClearText();
file = (cbFile.getSelectedItem() instanceof DBProjectFile) ?
((DBProjectFile) cbFile.getSelectedItem()) : null;
if (file != null) {
cbFile.addActionListener(e -> {
file = (cbFile.getSelectedItem() instanceof DBProjectFile) ?
((DBProjectFile) cbFile.getSelectedItem()) : null;
//-->>
if (isMaster()) {
getSlave().selectSameFile(file);
if (isReady() && !getSlave().selectSameFile(file))
DoShowPass(true);
} else {
File1 = getMaster().file;
File2 = file;
//---
if ((File1 != null) && (File2 != null)) {
if (isReady()) {
if (getMaster().isReady()) {
boolean ExtensionsOn = Global.db.settings.get(SettingName.ExtensionsOn).toBoolean();
String name1 = ExtensionsOn ? File1.file.getName() : Utils.getFileNameWithoutExtension(File1.file);
String name2 = ExtensionsOn ? File2.file.getName() : Utils.getFileNameWithoutExtension(File2.file);
System.out.println("name1=" + Utils.Brackets(name1) + "name2=" + Utils.Brackets(name2));
String name1 = ExtensionsOn ? getMaster().file.file.getName() : Utils.getFileNameWithoutExtension(getMaster().file.file);
String name2 = ExtensionsOn ? file.file.getName() : Utils.getFileNameWithoutExtension(file.file);
if (Global.db.settings.get(SettingName.ComparsionDiffMergeOn).toBoolean()) {
if (name1.equalsIgnoreCase(name2))
master.DoComparePass(true);
} else
master.DoShowPass(true);
} else {
master.DoShowPass(true);
}
}
}
@@ -55,7 +55,7 @@ public class VersionsComparisonForm extends ComparisonForm<db_project_info> {
}
@Override
protected String getText() {
return Utils.ReadAllText(file.file);
return isReady() ? Utils.ReadAllText(file.file) : "объект не назначен";
}
@Override
protected void removeObject() {
@@ -77,25 +77,26 @@ public class VersionsComparisonForm extends ComparisonForm<db_project_info> {
for (DBProjectFile file : files)
cbFile.addItem(file);
}
public void selectSameFile(DBProjectFile file_in) {
public boolean selectSameFile(ProjectFile file_in) {
file = null;
cbFile.setSelectedIndex(-1);
for (int i = 0; i < cbFile.getItemCount(); ++i) {
DBProjectFile dbProjectFile = cbFile.getItemAt(i);
ProjectFile projectFile = cbFile.getItemAt(i);
if (Global.db.settings.get(SettingName.ExtensionsOn).toBoolean()) {
//если учитываем расширения, ищем полное совпадение
if (dbProjectFile.name.equals(file_in.name)) {
if (projectFile.file.getName().equals(file_in.file.getName())) {
cbFile.setSelectedIndex(i);
return;
return true;
}
} else {
if (Utils.getNameWithoutExtension(dbProjectFile.name).equals(Utils.getNameWithoutExtension(file_in.name))) {
if (Utils.getNameWithoutExtension(projectFile.file.getName()).equals(
Utils.getNameWithoutExtension(file_in.file.getName()))) {
cbFile.setSelectedIndex(i);
return;
return true;
}
}
//если drk.x
}
return (cbFile.getSelectedItem() != null) && (cbFile.getSelectedItem() instanceof ProjectFile);
}
public void CheckVersion(db_project_info version_in) {
if ((object != null) && version_in.Home.equals(object.Home)) {