открытие версии из дерева пакета. как проекта ( осталось соощения распаковать)
This commit is contained in:
10
.idea/workspace.xml
generated
10
.idea/workspace.xml
generated
@@ -7,9 +7,15 @@
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
|
||||
<change afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/OpenSapforEtalonVersion.java" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/OpenSapforVersion.java" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/OpenSapforVersionPass.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/SapforTestingSystem/Json/SapforVersion_json.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/SapforTestingSystem/Json/SapforVersion_json.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/SapforTestingSystem/SapforTask/SapforTask.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/SapforTestingSystem/SapforTask/SapforTask.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/SapforTestingSystem/SapforTasksPackage/UI/SapforTasksPackageTree.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/SapforTestingSystem/SapforTasksPackage/UI/SapforTasksPackageTree.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/SapforPackagesComparisonForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/SapforPackagesComparisonForm.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/PassCode_2021.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/PassCode_2021.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" />
|
||||
</list>
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
@@ -31,8 +37,8 @@
|
||||
<list>
|
||||
<option value="FxmlFile" />
|
||||
<option value="Interface" />
|
||||
<option value="Class" />
|
||||
<option value="Enum" />
|
||||
<option value="Class" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
|
||||
@@ -4,6 +4,9 @@ import Common.Global;
|
||||
import Common.Utils.Utils;
|
||||
import ProjectData.Files.FileType;
|
||||
import ProjectData.Files.ProjectFile;
|
||||
import ProjectData.LanguageName;
|
||||
import ProjectData.Project.db_project_info;
|
||||
import SapforTestingSystem.SapforTask.SapforTask;
|
||||
import com.google.gson.annotations.Expose;
|
||||
import org.apache.commons.io.FileUtils;
|
||||
|
||||
@@ -27,6 +30,9 @@ public class SapforVersion_json implements Serializable {
|
||||
public ProjectFile out = null;
|
||||
public ProjectFile err = null;
|
||||
//--
|
||||
public SapforTask task = null; //родная задача. Нужна для построения дерева версий.
|
||||
public db_project_info project = null;
|
||||
//--
|
||||
public SapforVersion_json(String version_in, String description_in) {
|
||||
version = version_in;
|
||||
description = description_in;
|
||||
@@ -99,4 +105,17 @@ public class SapforVersion_json implements Serializable {
|
||||
}
|
||||
return true;
|
||||
}
|
||||
public void createProject(File rootHome) throws Exception {
|
||||
project = null;
|
||||
String version_ = Global.isWindows ? Utils.toW(version) : Utils.toU(version);
|
||||
project = new db_project_info();
|
||||
project.Home = Paths.get(rootHome.getAbsolutePath(), version_).toFile();
|
||||
project.name = project.Home.getName();
|
||||
project.description = description;
|
||||
project.languageName = LanguageName.fortran;
|
||||
project.creationDate = Utils.getDateNumber();
|
||||
//---
|
||||
FileUtils.copyDirectory(Home, project.Home);
|
||||
project.CreateVisualiserData();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -68,6 +68,7 @@ public class SapforTask extends DBObject {
|
||||
//--
|
||||
for (SapforVersion_json version_json : versions) {
|
||||
version_json.init(configurationRoot);
|
||||
version_json.task = this;
|
||||
//-
|
||||
child = new VersionSummary(version_json);
|
||||
if (parent == null) {
|
||||
@@ -82,6 +83,7 @@ public class SapforTask extends DBObject {
|
||||
if (parent != null) {
|
||||
for (SapforVersion_json version_json : variants) {
|
||||
version_json.init(configurationRoot);
|
||||
version_json.task = this;
|
||||
parent.add(new VersionSummary(version_json));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,9 +23,6 @@ public class SapforTasksPackageTree extends DataTree {
|
||||
return 1;
|
||||
}
|
||||
@Override
|
||||
public void LeftMouseAction2() {
|
||||
}
|
||||
@Override
|
||||
public TreeRenderers getRenderer() {
|
||||
return TreeRenderers.RendererSapforVersion;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
package Visual_DVM_2021.Passes.All;
|
||||
import Common.Current;
|
||||
import Visual_DVM_2021.Passes.OpenSapforVersionPass;
|
||||
public class OpenSapforEtalonVersion extends OpenSapforVersionPass {
|
||||
@Override
|
||||
public Current getCurrentName() {
|
||||
return Current.SapforEtalonVersion;
|
||||
}
|
||||
}
|
||||
9
src/Visual_DVM_2021/Passes/All/OpenSapforVersion.java
Normal file
9
src/Visual_DVM_2021/Passes/All/OpenSapforVersion.java
Normal file
@@ -0,0 +1,9 @@
|
||||
package Visual_DVM_2021.Passes.All;
|
||||
import Common.Current;
|
||||
import Visual_DVM_2021.Passes.OpenSapforVersionPass;
|
||||
public class OpenSapforVersion extends OpenSapforVersionPass {
|
||||
@Override
|
||||
public Current getCurrentName() {
|
||||
return Current.SapforVersion;
|
||||
}
|
||||
}
|
||||
52
src/Visual_DVM_2021/Passes/OpenSapforVersionPass.java
Normal file
52
src/Visual_DVM_2021/Passes/OpenSapforVersionPass.java
Normal file
@@ -0,0 +1,52 @@
|
||||
package Visual_DVM_2021.Passes;
|
||||
import Common.Current;
|
||||
import Common.Global;
|
||||
import Common.Utils.Utils;
|
||||
import GlobalData.Settings.SettingName;
|
||||
import SapforTestingSystem.Json.SapforVersion_json;
|
||||
import SapforTestingSystem.SapforTask.SapforTask;
|
||||
|
||||
import java.io.File;
|
||||
import java.nio.file.Paths;
|
||||
public abstract class OpenSapforVersionPass extends Pass_2021<SapforVersion_json> {
|
||||
@Override
|
||||
public String getIconPath() {
|
||||
return "/icons/OpenProject.png";
|
||||
}
|
||||
@Override
|
||||
public String getButtonText() {
|
||||
return "";
|
||||
}
|
||||
public abstract Current getCurrentName();
|
||||
@Override
|
||||
protected boolean needsAnimation() {
|
||||
return true;
|
||||
}
|
||||
@Override
|
||||
protected boolean canStart(Object... args) throws Exception {
|
||||
if (Current.Check(Log, getCurrentName())) {
|
||||
target = (SapforVersion_json) Current.get(getCurrentName());
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@Override
|
||||
protected void body() throws Exception {
|
||||
SapforTask task = target.task;
|
||||
ShowMessage1("Построение дерева версий и создание баз данных...");
|
||||
File rootHome = Paths.get(Global.getSetting(SettingName.Workspace).Value,
|
||||
Utils.getDateName(task.test_description)).toFile();
|
||||
for (SapforVersion_json version_json : task.versions) {
|
||||
ShowMessage2(version_json.version);
|
||||
version_json.createProject(rootHome);
|
||||
}
|
||||
for (SapforVersion_json version_json : task.variants) {
|
||||
ShowMessage2(version_json.version);
|
||||
version_json.createProject(rootHome);
|
||||
}
|
||||
}
|
||||
@Override
|
||||
protected void performDone() throws Exception {
|
||||
passes.get(PassCode_2021.OpenCurrentProject).Do(target.project.Home);
|
||||
}
|
||||
}
|
||||
@@ -306,12 +306,18 @@ public enum PassCode_2021 {
|
||||
//->
|
||||
DownloadSapforTasksPackage,
|
||||
ShowSapforTaskPackage, //временный проход на демонстрацию дерева файлов и версий пакета.
|
||||
OpenSapforEtalonVersion,
|
||||
OpenSapforVersion,
|
||||
//->
|
||||
TestPass;
|
||||
public String getDescription() {
|
||||
switch (this) {
|
||||
case Undefined:
|
||||
return "?";
|
||||
case OpenSapforEtalonVersion:
|
||||
return "Открыть текущую эталонную версию SAPFOR как проект";
|
||||
case OpenSapforVersion:
|
||||
return "Открыть текущую версию SAPFOR как проект";
|
||||
case UnpackSapforTasksPackage:
|
||||
return "Распаковка пакета задач SAPFOR";
|
||||
case ShowSapforTaskPackage:
|
||||
|
||||
@@ -7,6 +7,8 @@ import Common.Utils.Utils;
|
||||
import GlobalData.Settings.SettingName;
|
||||
import ProjectData.Files.ProjectFile;
|
||||
import SapforTestingSystem.Json.SapforVersion_json;
|
||||
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||
import Visual_DVM_2021.Passes.Pass_2021;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.util.Arrays;
|
||||
@@ -31,14 +33,17 @@ public class SapforVersionsComparisonForm extends ComparisonForm<SapforVersion_j
|
||||
bApplyObject.setVisible(false);
|
||||
bClose.setVisible(false);
|
||||
cbFile = new JComboBox<>();
|
||||
tools.add(cbFile, 3);
|
||||
tools.add(Pass_2021.passes.get(
|
||||
(current.equals(Current.SapforEtalonVersion) ? PassCode_2021.OpenSapforEtalonVersion : PassCode_2021.OpenSapforVersion
|
||||
)).createButton(), 3);
|
||||
tools.add(cbFile, 4);
|
||||
//--
|
||||
cbFile.addActionListener(e -> {
|
||||
SelectFile(((cbFile.getSelectedItem() instanceof ProjectFile) ? ((ProjectFile) cbFile.getSelectedItem()) : null));
|
||||
});
|
||||
//--
|
||||
buttons = new LinkedHashMap<>();
|
||||
int i = 4;
|
||||
int i = 5;
|
||||
for (SapforVersionComparisonState state : SapforVersionComparisonState.values()) {
|
||||
MenuBarButton button = new MenuBarButton();
|
||||
button.setIcon("/icons/" + state.toString() + ".png");
|
||||
|
||||
Reference in New Issue
Block a user