завершение обновления с настройками
This commit is contained in:
2025-01-17 01:35:43 +03:00
parent 01da3b3a70
commit 28fe6ee235
8 changed files with 135 additions and 18 deletions

86
.idea/workspace.xml generated
View File

@@ -7,15 +7,91 @@
</component>
<component name="ChangeListManager">
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SetDefaultSapforProfile.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/Visual/Tables/RendererProfileAuto.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/Visual/Tables/SwitcherProfileAuto.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/call.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/contains31.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/sol.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/call.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/contains31.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/sol.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/call.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/contains31.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/sol.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/call.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/contains31.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p1/call.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p1/contains31.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p1/sol.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p1/val.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p2/call.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p2/contains31.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p2/sol.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p2/val.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p3/call.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p3/contains31.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p3/sol.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p3/val.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p4/call.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p4/contains31.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p4/sol.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p4/val.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p5/call.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p5/contains31.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p5/sol.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p5/val.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p6/call.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p6/contains31.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p6/sol.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p6/val.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p7/call.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p7/contains31.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p7/sol.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p7/val.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p8/call.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p8/contains31.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p8/sol.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p8/val.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/p8/visualiser_data/properties" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/sol.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/val.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/visualiser_data/create_variants.sh" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/visualiser_data/err.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/visualiser_data/out.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/visualiser_data/parse.sh" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/visualiser_data/parse_err.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/visualiser_data/parse_out.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/v1/visualiser_data/properties" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/val.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/visualiser_data/err.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/visualiser_data/out.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/visualiser_data/parse.sh" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/visualiser_data/parse_err.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/visualiser_data/parse_out.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/visualiser_data/properties" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/v1/visualiser_data/transformation.sh" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/val.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/visualiser_data/err.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/visualiser_data/out.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/visualiser_data/parse.sh" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/visualiser_data/parse_err.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/visualiser_data/parse_out.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/visualiser_data/properties" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/v1/visualiser_data/transformation.sh" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/val.for" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/visualiser_data/err.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/visualiser_data/out.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/visualiser_data/parse.sh" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/visualiser_data/parse_err.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/visualiser_data/parse_out.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/visualiser_data/properties" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test_routine_5_1737064320/test_routine_5/visualiser_data/transformation.sh" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/properties" beforeDir="false" afterPath="$PROJECT_DIR$/properties" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Common/Utils/Utils_.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Utils/Utils_.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/GlobalData/GlobalDatabase.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/GlobalData/GlobalDatabase.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/GlobalData/SapforProfile/SapforProfile.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/GlobalData/SapforProfile/SapforProfile.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/GlobalData/SapforProfile/UI/SapforProfilesForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/GlobalData/SapforProfile/UI/SapforProfilesForm.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/PassCode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/PassCode.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/OpenCurrentProject.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/OpenCurrentProject.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Files/DBProjectFile.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Files/DBProjectFile.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Project/db_project_info.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Project/db_project_info.java" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />

View File

@@ -16,8 +16,8 @@
"collapseProjectTrees": false,
"BackupWorkspace": "_sapfor_x64_backups",
"Workspace": "",
"ProjectsSearchDirectory": "E:\\BUG",
"EditorFontSize": 14,
"ProjectsSearchDirectory": "C:\\Users\\misha\\Documents\\visual_sapfor_2023\\Projects\\bugreport_1737066654",
"EditorFontSize": 17,
"BackupHour": 5,
"BackupMinute": 0,
"EmailAdminsOnStart": false,
@@ -44,9 +44,9 @@
"CheckTestingIntervalSeconds": 10,
"EmailOnTestingProgress": false,
"eraseTestingWorkspaces": true,
"lastMachineId": -1,
"lastUserId": -1,
"lastCompilerId": -1,
"lastMachineId": 13,
"lastUserId": 34,
"lastCompilerId": 52,
"RegisterOn": false,
"SpacesOn": false,
"EmptyLinesOn": false,

View File

@@ -536,5 +536,15 @@ public class Utils_ {
}
return res;
}
public static <T extends Properties> T ReadProperties(File propertiesFile, Class<T>properties_class){
T res= null;
try {
res = (T) Utils_.jsonFromFile(propertiesFile, properties_class);
res.setFile(propertiesFile);
Utils_.jsonToFile(res, propertiesFile);
} catch (Exception ex) {
ex.printStackTrace();
}
return res;
}
}

View File

@@ -168,4 +168,11 @@ public class GlobalDatabase extends VisualiserDatabase {
Insert(profile);
insertProfileSettings(profile);
}
public SapforProfile getDefaultSapforProfile(){
for (SapforProfile sapforProfile: sapforProfiles.Data.values()){
if (sapforProfile.isAuto!=0)
return sapforProfile;
}
return null;
}
}

View File

@@ -1,9 +1,12 @@
package _VisualDVM.GlobalData.SapforProfile;
import Common.Database.Objects.iDBObject;
import Common.Utils.Utils_;
import _VisualDVM.Global;
import _VisualDVM.GlobalData.SapforProfileSetting.SapforProfileSetting;
import com.sun.org.glassfish.gmbal.Description;
import javax.swing.*;
import java.util.Vector;
public class SapforProfile extends iDBObject {
@Description("DEFAULT ''")
public String description = "";

View File

@@ -85,6 +85,7 @@ public class OpenCurrentProject extends Pass<db_project_info> {
//как и отображать дерево.
target = project;
target.Open();
target.SynchronizeSapforProperties();
root_changes = false;
return;
}
@@ -92,11 +93,13 @@ public class OpenCurrentProject extends Pass<db_project_info> {
target = new db_project_info(dir);
new_root = target.CreateVersionsTree();
target.Open();
target.SynchronizeSapforProperties();
break;
case ProjectInfo:
//если нам суют версию. значит уже априори корень не сменится.
root_changes = false;
target.Open();
target.SynchronizeSapforProperties();
break;
}
}

View File

@@ -415,9 +415,8 @@ public class DBProjectFile extends ProjectFile {
break;
}
languageName = parent.languageName;
if (sapforStyle) style = father.sapforProperties.FREE_FORM? LanguageStyle.free : LanguageStyle.fixed;
if (sapforStyle) style = Global.mainModule.getProject().sapforProperties.FREE_FORM? LanguageStyle.free : LanguageStyle.fixed;
// Global.mainModule.getSapfor().getStyle();
else style = parent.style;
}
public void importSourceCodeSettings(DBProjectFile parent, boolean sapforStyle) throws Exception {
@@ -431,8 +430,7 @@ public class DBProjectFile extends ProjectFile {
break;
}
languageName = parent.languageName;
// if (sapforStyle) style = Global.mainModule.getSapfor().getStyle();
if (sapforStyle) style = father.sapforProperties.FREE_FORM? LanguageStyle.free : LanguageStyle.fixed;
if (sapforStyle) style = Global.mainModule.getProject().sapforProperties.FREE_FORM? LanguageStyle.free : LanguageStyle.fixed;
else style = parent.style;
}
//------------------

View File

@@ -11,6 +11,8 @@ import _VisualDVM.Constants;
import _VisualDVM.Current;
import _VisualDVM.Global;
import _VisualDVM.GlobalData.DBLastProject.DBLastProject;
import _VisualDVM.GlobalData.SapforProfile.SapforProfile;
import _VisualDVM.GlobalData.SapforProfileSetting.SapforProfileSetting;
import _VisualDVM.Passes.PassCode;
import _VisualDVM.ProjectData.DBArray.DBArray;
import _VisualDVM.ProjectData.Files.DBProjectFile;
@@ -146,9 +148,28 @@ public class db_project_info extends DBObject {
public LinkedHashMap<String, DBProjectFile> allIncludes = new LinkedHashMap<>();
DBLastProject info = null; //обновляется при открытии проекта.
public SapforProperties sapforProperties=null;
public void SynchronizeSapforProperties() {
public void SynchronizeSapforProperties() throws Exception{
System.out.println("Syncronize Sapfor Properties...");
sapforProperties = Utils_.SynschronizeProperties(getPropertiesFile(), SapforProperties.class);
if (sapforProperties==null) {
File propertiesFile = getPropertiesFile();
System.out.println("propertiesFile="+propertiesFile.getAbsolutePath());
if (propertiesFile.exists()) {
System.out.println("properties file found.");
sapforProperties = Utils_.ReadProperties(propertiesFile,SapforProperties.class);
} else {
System.out.println("properties file not found. try get default profile..");
SapforProfile defaultProfile = Global.mainModule.getDb().getDefaultSapforProfile();
if (defaultProfile == null) {
System.out.println("Default profile not found!");
sapforProperties = Utils_.ReadProperties(propertiesFile,SapforProperties.class);
} else {
System.out.println("Default profile is " + defaultProfile.description);
sapforProperties = new SapforProperties(getPropertiesFile());
sapforProperties.applyProfile(Global.mainModule.getDb().getVectorByFK(defaultProfile, SapforProfileSetting.class));
sapforProperties.Update();
}
}
}else System.out.println("properties object found");
}
public File getPropertiesFile(){
return new File(getDataDirectory(), "properties");
@@ -228,7 +249,6 @@ public class db_project_info extends DBObject {
db.Connect();
db.prepareTablesStatements();
db.Synchronize();
SynchronizeSapforProperties();
}
public void Close() throws Exception {
db.Disconnect();