промежуточный. Доработал сравнение версий, в том числе и обычных. Можно просматривать версию если не выбрана вторая.
This commit is contained in:
7
.idea/workspace.xml
generated
7
.idea/workspace.xml
generated
@@ -8,10 +8,9 @@
|
|||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
|
<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$/.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/SapforTestingSystem/SapforTasksPackage/SapforTasksPackageTree.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/SapforTestingSystem/SapforTasksPackage/SapforTasksPackageTree.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/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/Repository/Component/Visualiser.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Repository/Component/Visualiser.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" />
|
||||||
<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" />
|
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ public class SapforTasksPackageTree extends DataTree {
|
|||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void SelectionAction(TreePath e) {
|
public void SelectionAction(TreePath e) {
|
||||||
System.out.println("Select " + current);
|
// System.out.println("Select " + current);
|
||||||
DefaultMutableTreeNode node = (DefaultMutableTreeNode) e.getLastPathComponent();
|
DefaultMutableTreeNode node = (DefaultMutableTreeNode) e.getLastPathComponent();
|
||||||
// Current.set(Current.ProjectNode, node);
|
// Current.set(Current.ProjectNode, node);
|
||||||
Object o = node.getUserObject();
|
Object o = node.getUserObject();
|
||||||
|
|||||||
@@ -65,10 +65,12 @@ public abstract class ComparisonForm<T> {
|
|||||||
removeObject();
|
removeObject();
|
||||||
showNoObject();
|
showNoObject();
|
||||||
ClearText();
|
ClearText();
|
||||||
|
/*
|
||||||
if (isMaster())
|
if (isMaster())
|
||||||
slave.ClearText();
|
slave.ClearText();
|
||||||
else if (isSlave())
|
else if (isSlave())
|
||||||
master.ClearText();
|
master.ClearText();
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
public void ApplyObject() {
|
public void ApplyObject() {
|
||||||
RemoveObject();
|
RemoveObject();
|
||||||
@@ -184,7 +186,7 @@ public abstract class ComparisonForm<T> {
|
|||||||
}
|
}
|
||||||
protected void ClearText() {
|
protected void ClearText() {
|
||||||
events_on = false;
|
events_on = false;
|
||||||
Body.setText("");
|
Body.setText("объект не назначен");
|
||||||
}
|
}
|
||||||
//предполагаем что оба объекта есть и мы можем получить с них текст.
|
//предполагаем что оба объекта есть и мы можем получить с них текст.
|
||||||
protected void Compare() throws Exception {
|
protected void Compare() throws Exception {
|
||||||
|
|||||||
@@ -28,28 +28,25 @@ public class SapforVersionsComparisonForm extends ComparisonForm<SapforVersion_j
|
|||||||
tools.add(cbFile, 3);
|
tools.add(cbFile, 3);
|
||||||
//--
|
//--
|
||||||
cbFile.addActionListener(e -> {
|
cbFile.addActionListener(e -> {
|
||||||
ProjectFile File1 = null;
|
|
||||||
ProjectFile File2 = null;
|
|
||||||
ClearText();
|
|
||||||
file = (cbFile.getSelectedItem() instanceof ProjectFile) ?
|
file = (cbFile.getSelectedItem() instanceof ProjectFile) ?
|
||||||
((ProjectFile) cbFile.getSelectedItem()) : null;
|
((ProjectFile) cbFile.getSelectedItem()) : null;
|
||||||
if (file != null) {
|
//-->>
|
||||||
if (isMaster()) {
|
if (isMaster()) {
|
||||||
getSlave().selectSameFile(file);
|
if (isReady() && !getSlave().selectSameFile(file))
|
||||||
|
DoShowPass(true);
|
||||||
} else {
|
} else {
|
||||||
File1 = getMaster().file;
|
if (isReady()) {
|
||||||
File2 = file;
|
if (getMaster().isReady()) {
|
||||||
//---
|
|
||||||
if ((File1 != null) && (File2 != null)) {
|
|
||||||
boolean ExtensionsOn = Global.db.settings.get(SettingName.ExtensionsOn).toBoolean();
|
boolean ExtensionsOn = Global.db.settings.get(SettingName.ExtensionsOn).toBoolean();
|
||||||
String name1 = ExtensionsOn ? File1.file.getName() : Utils.getFileNameWithoutExtension(File1.file);
|
String name1 = ExtensionsOn ? getMaster().file.file.getName() : Utils.getFileNameWithoutExtension(getMaster().file.file);
|
||||||
String name2 = ExtensionsOn ? File2.file.getName() : Utils.getFileNameWithoutExtension(File2.file);
|
String name2 = ExtensionsOn ? file.file.getName() : Utils.getFileNameWithoutExtension(file.file);
|
||||||
System.out.println("name1=" + Utils.Brackets(name1) + "name2=" + Utils.Brackets(name2));
|
|
||||||
if (Global.db.settings.get(SettingName.ComparsionDiffMergeOn).toBoolean()) {
|
if (Global.db.settings.get(SettingName.ComparsionDiffMergeOn).toBoolean()) {
|
||||||
if (name1.equalsIgnoreCase(name2))
|
if (name1.equalsIgnoreCase(name2))
|
||||||
master.DoComparePass(true);
|
master.DoComparePass(true);
|
||||||
} else
|
} else
|
||||||
master.DoShowPass(true);
|
master.DoShowPass(true);
|
||||||
|
} else {
|
||||||
|
master.DoShowPass(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -61,7 +58,7 @@ public class SapforVersionsComparisonForm extends ComparisonForm<SapforVersion_j
|
|||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
protected String getText() {
|
protected String getText() {
|
||||||
return Utils.ReadAllText(file.file);
|
return isReady() ? Utils.ReadAllText(file.file) : "объект не назначен";
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public boolean isReady() {
|
public boolean isReady() {
|
||||||
@@ -81,7 +78,7 @@ public class SapforVersionsComparisonForm extends ComparisonForm<SapforVersion_j
|
|||||||
cbFile.removeAllItems();
|
cbFile.removeAllItems();
|
||||||
file = null;
|
file = null;
|
||||||
}
|
}
|
||||||
public void selectSameFile(ProjectFile file_in) {
|
public boolean selectSameFile(ProjectFile file_in) {
|
||||||
file = null;
|
file = null;
|
||||||
cbFile.setSelectedIndex(-1);
|
cbFile.setSelectedIndex(-1);
|
||||||
for (int i = 0; i < cbFile.getItemCount(); ++i) {
|
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())) {
|
if (projectFile.file.getName().equals(file_in.file.getName())) {
|
||||||
cbFile.setSelectedIndex(i);
|
cbFile.setSelectedIndex(i);
|
||||||
return;
|
return true;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (Utils.getNameWithoutExtension(projectFile.file.getName()).equals(
|
if (Utils.getNameWithoutExtension(projectFile.file.getName()).equals(
|
||||||
Utils.getNameWithoutExtension(file_in.file.getName()))) {
|
Utils.getNameWithoutExtension(file_in.file.getName()))) {
|
||||||
cbFile.setSelectedIndex(i);
|
cbFile.setSelectedIndex(i);
|
||||||
return;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return (cbFile.getSelectedItem() != null) && (cbFile.getSelectedItem() instanceof ProjectFile);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import Common.Global;
|
|||||||
import Common.Utils.Utils;
|
import Common.Utils.Utils;
|
||||||
import GlobalData.Settings.SettingName;
|
import GlobalData.Settings.SettingName;
|
||||||
import ProjectData.Files.DBProjectFile;
|
import ProjectData.Files.DBProjectFile;
|
||||||
|
import ProjectData.Files.ProjectFile;
|
||||||
import ProjectData.Project.db_project_info;
|
import ProjectData.Project.db_project_info;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
@@ -21,29 +22,28 @@ public class VersionsComparisonForm extends ComparisonForm<db_project_info> {
|
|||||||
super(db_project_info.class, slave_in);
|
super(db_project_info.class, slave_in);
|
||||||
cbFile = new JComboBox<>();
|
cbFile = new JComboBox<>();
|
||||||
tools.add(cbFile, 3);
|
tools.add(cbFile, 3);
|
||||||
cbFile.addActionListener(e -> {
|
|
||||||
DBProjectFile File1 = null;
|
|
||||||
DBProjectFile File2 = null;
|
|
||||||
ClearText();
|
|
||||||
file = (cbFile.getSelectedItem() instanceof DBProjectFile) ?
|
file = (cbFile.getSelectedItem() instanceof DBProjectFile) ?
|
||||||
((DBProjectFile) cbFile.getSelectedItem()) : null;
|
((DBProjectFile) cbFile.getSelectedItem()) : null;
|
||||||
if (file != null) {
|
cbFile.addActionListener(e -> {
|
||||||
|
file = (cbFile.getSelectedItem() instanceof DBProjectFile) ?
|
||||||
|
((DBProjectFile) cbFile.getSelectedItem()) : null;
|
||||||
|
//-->>
|
||||||
if (isMaster()) {
|
if (isMaster()) {
|
||||||
getSlave().selectSameFile(file);
|
if (isReady() && !getSlave().selectSameFile(file))
|
||||||
|
DoShowPass(true);
|
||||||
} else {
|
} else {
|
||||||
File1 = getMaster().file;
|
if (isReady()) {
|
||||||
File2 = file;
|
if (getMaster().isReady()) {
|
||||||
//---
|
|
||||||
if ((File1 != null) && (File2 != null)) {
|
|
||||||
boolean ExtensionsOn = Global.db.settings.get(SettingName.ExtensionsOn).toBoolean();
|
boolean ExtensionsOn = Global.db.settings.get(SettingName.ExtensionsOn).toBoolean();
|
||||||
String name1 = ExtensionsOn ? File1.file.getName() : Utils.getFileNameWithoutExtension(File1.file);
|
String name1 = ExtensionsOn ? getMaster().file.file.getName() : Utils.getFileNameWithoutExtension(getMaster().file.file);
|
||||||
String name2 = ExtensionsOn ? File2.file.getName() : Utils.getFileNameWithoutExtension(File2.file);
|
String name2 = ExtensionsOn ? file.file.getName() : Utils.getFileNameWithoutExtension(file.file);
|
||||||
System.out.println("name1=" + Utils.Brackets(name1) + "name2=" + Utils.Brackets(name2));
|
|
||||||
if (Global.db.settings.get(SettingName.ComparsionDiffMergeOn).toBoolean()) {
|
if (Global.db.settings.get(SettingName.ComparsionDiffMergeOn).toBoolean()) {
|
||||||
if (name1.equalsIgnoreCase(name2))
|
if (name1.equalsIgnoreCase(name2))
|
||||||
master.DoComparePass(true);
|
master.DoComparePass(true);
|
||||||
} else
|
} else
|
||||||
master.DoShowPass(true);
|
master.DoShowPass(true);
|
||||||
|
} else {
|
||||||
|
master.DoShowPass(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -55,7 +55,7 @@ public class VersionsComparisonForm extends ComparisonForm<db_project_info> {
|
|||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
protected String getText() {
|
protected String getText() {
|
||||||
return Utils.ReadAllText(file.file);
|
return isReady() ? Utils.ReadAllText(file.file) : "объект не назначен";
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
protected void removeObject() {
|
protected void removeObject() {
|
||||||
@@ -77,25 +77,26 @@ public class VersionsComparisonForm extends ComparisonForm<db_project_info> {
|
|||||||
for (DBProjectFile file : files)
|
for (DBProjectFile file : files)
|
||||||
cbFile.addItem(file);
|
cbFile.addItem(file);
|
||||||
}
|
}
|
||||||
public void selectSameFile(DBProjectFile file_in) {
|
public boolean selectSameFile(ProjectFile file_in) {
|
||||||
file = null;
|
file = null;
|
||||||
cbFile.setSelectedIndex(-1);
|
cbFile.setSelectedIndex(-1);
|
||||||
for (int i = 0; i < cbFile.getItemCount(); ++i) {
|
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 (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);
|
cbFile.setSelectedIndex(i);
|
||||||
return;
|
return true;
|
||||||
}
|
}
|
||||||
} else {
|
} 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);
|
cbFile.setSelectedIndex(i);
|
||||||
return;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//если drk.x
|
|
||||||
}
|
}
|
||||||
|
return (cbFile.getSelectedItem() != null) && (cbFile.getSelectedItem() instanceof ProjectFile);
|
||||||
}
|
}
|
||||||
public void CheckVersion(db_project_info version_in) {
|
public void CheckVersion(db_project_info version_in) {
|
||||||
if ((object != null) && version_in.Home.equals(object.Home)) {
|
if ((object != null) && version_in.Home.equals(object.Home)) {
|
||||||
|
|||||||
Reference in New Issue
Block a user