diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 764484f2..01ac9666 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -7,7 +7,16 @@
+
+
+
+
+
+
+
+
+
@@ -29,8 +38,8 @@
-
+
diff --git a/properties b/properties
index a8e0f499..1bd3a47b 100644
--- a/properties
+++ b/properties
@@ -41,5 +41,11 @@
"eraseTestingWorkspaces": true,
"lastMachineId": 1,
"lastUserId": 17,
- "lastCompilerId": -1
+ "lastCompilerId": -1,
+ "RegisterOn": false,
+ "SpacesOn": false,
+ "EmptyLinesOn": false,
+ "FortranWrapsOn": false,
+ "ExtensionsOn": false,
+ "ComparsionDiffMergeOn": true
}
\ No newline at end of file
diff --git a/src/_VisualDVM/GlobalData/Settings/SettingName.java b/src/_VisualDVM/GlobalData/Settings/SettingName.java
index 98d6bd89..d6d9a3d8 100644
--- a/src/_VisualDVM/GlobalData/Settings/SettingName.java
+++ b/src/_VisualDVM/GlobalData/Settings/SettingName.java
@@ -1,7 +1,6 @@
package _VisualDVM.GlobalData.Settings;
public enum SettingName {
Undefined,
- //
//--------------
ProjectsSearchDirectory,
LastVersionPath,
@@ -10,13 +9,6 @@ public enum SettingName {
FastAccessPassesCount,
LastOpenedProjectsCount,
Workspace,
- RegisterOn,
- SpacesOn,
- EmptyLinesOn,
- FortranWrapsOn,
- ExtensionsOn,
- ComparsionDiffMergeOn,
- DarkThemeOn,
ShowFullArraysDeclarations,
ShowFullTabsNames,
LocalMakePathWindows,
@@ -27,8 +19,6 @@ public enum SettingName {
DVMConvertationOptions,
Kernels,
Email, //для тестирования. потом.
- Pause, //стоит ли тестрование на паузе.
- Queue, //хз нужна ли. будет пересказ пакета в проходе.
BugReportsAgeLimit,
//--
//
@@ -62,8 +52,6 @@ public enum SettingName {
return "Срок хранения отчетов об ошибках (месяцы)";
case SaveModifications:
return "Сохранять копию исходной версии при преобразованиях";
- case ComparsionDiffMergeOn:
- return "Автоматическое сравнение";
case DVMConvertationOptions:
return "Опции DVM конвертации";
case Kernels:
@@ -80,18 +68,6 @@ public enum SettingName {
return "Показывать полные имена вкладок";
case ShowFullArraysDeclarations:
return "Показывать развернутый список объявлений массивов";
- case ExtensionsOn:
- return "Учитывать расширения файлов";
- case DarkThemeOn:
- return "Тёмная тема редактора кода";
- case FortranWrapsOn:
- return "Учитывать переносы";
- case EmptyLinesOn:
- return "Учитывать пустые строки";
- case SpacesOn:
- return "Учитывать пробелы и табуляции";
- case RegisterOn:
- return "Учитывать регистр";
case Workspace:
return "Рабочее пространство визуализатора";
case STATIC_SHADOW_ANALYSIS:
diff --git a/src/_VisualDVM/GlobalData/Settings/SettingsDBTable.java b/src/_VisualDVM/GlobalData/Settings/SettingsDBTable.java
index 3f4d4588..b672e79c 100644
--- a/src/_VisualDVM/GlobalData/Settings/SettingsDBTable.java
+++ b/src/_VisualDVM/GlobalData/Settings/SettingsDBTable.java
@@ -32,7 +32,6 @@ public class SettingsDBTable extends DBTable {
//
AddSetting(new DBSetting(SettingName.ProjectsSearchDirectory, "", SettingType.StringField, ComponentType.Visualiser, false));
AddSetting(new DBSetting(SettingName.EditorFontSize, "14", SettingType.StringField, ComponentType.Visualiser, false));
- AddSetting(new DBSetting(SettingName.DarkThemeOn, 0, SettingType.SapforFlag, ComponentType.Visualiser, false));
AddSetting(new DBSetting(SettingName.ShowFullArraysDeclarations, 0, SettingType.SapforFlag, ComponentType.Visualiser));
AddSetting(new DBSetting(SettingName.ShowFullTabsNames, 0, SettingType.SapforFlag, ComponentType.Visualiser));
AddSetting(new DBSetting(SettingName.FastAccessPassesCount, 5, SettingType.IntField, ComponentType.Visualiser));
@@ -71,14 +70,6 @@ public class SettingsDBTable extends DBTable {
AddSetting(new DBSetting(SettingName.SaveModifications, 1, SettingType.SapforFlag, ComponentType.SapforOptions));
//
//-
- //
- AddSetting(new DBSetting(SettingName.ExtensionsOn, 0, SettingType.SapforFlag, ComponentType.ComparsionOptions));
- AddSetting(new DBSetting(SettingName.RegisterOn, 0, SettingType.SapforFlag, ComponentType.ComparsionOptions));
- AddSetting(new DBSetting(SettingName.SpacesOn, 1, SettingType.SapforFlag, ComponentType.ComparsionOptions));
- AddSetting(new DBSetting(SettingName.EmptyLinesOn, 1, SettingType.SapforFlag, ComponentType.ComparsionOptions));
- AddSetting(new DBSetting(SettingName.FortranWrapsOn, 1, SettingType.SapforFlag, ComponentType.ComparsionOptions));
- AddSetting(new DBSetting(SettingName.ComparsionDiffMergeOn, 0, SettingType.SapforFlag, ComponentType.ComparsionOptions));
- //
AddSetting(new DBSetting(SettingName.BugReportsAgeLimit, 2, SettingType.IntField, ComponentType.Visualiser));
}
public Vector getSettingsByOwner(ComponentType owner) {
diff --git a/src/_VisualDVM/GlobalProperties.java b/src/_VisualDVM/GlobalProperties.java
index 782788d7..ef7c41a0 100644
--- a/src/_VisualDVM/GlobalProperties.java
+++ b/src/_VisualDVM/GlobalProperties.java
@@ -96,6 +96,19 @@ public class GlobalProperties {
public int lastUserId = CommonConstants.Nan;
@Expose
public int lastCompilerId = CommonConstants.Nan;
+ //--
+ @Expose
+ public boolean RegisterOn=false;
+ @Expose
+ public boolean SpacesOn=false;
+ @Expose
+ public boolean EmptyLinesOn=false;
+ @Expose
+ public boolean FortranWrapsOn=false;
+ @Expose
+ public boolean ExtensionsOn=false;
+ @Expose
+ public boolean ComparsionDiffMergeOn=false;
public GlobalProperties(GlobalProperties p) {
super();
Mode = p.Mode;
@@ -147,6 +160,18 @@ public class GlobalProperties {
//-----------------
public String getFieldDescription(String fieldName) {
switch (fieldName) {
+ case "ExtensionsOn":
+ return "Учитывать расширения файлов";
+ case "FortranWrapsOn":
+ return "Учитывать переносы";
+ case "EmptyLinesOn":
+ return "Учитывать пустые строки";
+ case "SpacesOn":
+ return "Учитывать пробелы и табуляции";
+ case "RegisterOn":
+ return "Учитывать регистр";
+ case "ComparsionDiffMergeOn":
+ return "Автоматическое сравнение";
case "AutoBugReportsLoad":
return "Автоматическая синхронизация отчётов об ошибках";
case "AutoTestsLoad":
diff --git a/src/_VisualDVM/Utils.java b/src/_VisualDVM/Utils.java
index 81271fd1..648245b4 100644
--- a/src/_VisualDVM/Utils.java
+++ b/src/_VisualDVM/Utils.java
@@ -648,11 +648,11 @@ public class Utils {
break;
case ' ':
case '\t':
- if ((Global.mainModule.getDb()).settings.get(SettingName.SpacesOn).toBoolean()) line.append(c);
+ if (Global.properties.SpacesOn) line.append(c);
v_line.append(c);
break;
case '\n': //конец строки
- if ((Global.mainModule.getDb()).settings.get(SettingName.FortranWrapsOn).toBoolean()) {
+ if (Global.properties.FortranWrapsOn) {
//оракул. лезем в начало следующей строки
//и анализируем первые 5 символов
boolean hasWrap = false;
@@ -678,7 +678,7 @@ public class Utils {
break;
}
//добавление строки в результат.
- if ((line.length() > 0) || (Global.mainModule.getDb()).settings.get(SettingName.EmptyLinesOn).toBoolean()
+ if ((line.length() > 0) || Global.properties.EmptyLinesOn
// Global.db.settings.get(SettingName.SpacesOn).toBoolean()
) {
lines.add(line.toString());
@@ -697,7 +697,7 @@ public class Utils {
if ((i > 0) && (c != '\n')) {
//строка оборвалась на EOF
//добавление строки в результат.
- if ((line.length() > 0) || (Global.mainModule.getDb()).settings.get(SettingName.EmptyLinesOn).toBoolean()
+ if ((line.length() > 0) || Global.properties.EmptyLinesOn
// && Global.db.settings.get(SettingName.SpacesOn).toBoolean()
) {
lines.add(line.toString());
@@ -709,11 +709,11 @@ public class Utils {
public static boolean CompareLines(String line1_raw, String line2_raw) {
String line1 = line1_raw;
String line2 = line2_raw;
- if (!(Global.mainModule.getDb()).settings.get(SettingName.RegisterOn).toBoolean()) {
+ if (!Global.properties.RegisterOn) {
line1 = line1.toUpperCase();
line2 = line2.toUpperCase();
}
- if (!(Global.mainModule.getDb()).settings.get(SettingName.SpacesOn).toBoolean()) {
+ if (!Global.properties.SpacesOn) {
line1 = Utils_.removeCharacters(line1, " ", "\t");
line2 = Utils_.removeCharacters(line2, " ", "\t");
}
diff --git a/src/_VisualDVM/Visual/Menus/MainMenuBar/VersionsComparisonMenu.java b/src/_VisualDVM/Visual/Menus/MainMenuBar/VersionsComparisonMenu.java
new file mode 100644
index 00000000..041d4a2d
--- /dev/null
+++ b/src/_VisualDVM/Visual/Menus/MainMenuBar/VersionsComparisonMenu.java
@@ -0,0 +1,19 @@
+package _VisualDVM.Visual.Menus.MainMenuBar;
+import _VisualDVM.Global;
+import _VisualDVM.Visual.Menus.SettingsSubmenu;
+public class VersionsComparisonMenu extends SettingsSubmenu {
+ public VersionsComparisonMenu() {
+ super("Сравнение версий", null);
+ String[] propertiesNames = new String[]{
+ "RegisterOn",
+ "SpacesOn",
+ "EmptyLinesOn",
+ "FortranWrapsOn",
+ "ExtensionsOn",
+ "ComparsionDiffMergeOn",
+ };
+ for (String name : propertiesNames) {
+ Global.properties.addFlagMenuItem(this, name);
+ }
+ }
+}
diff --git a/src/_VisualDVM/Visual/Menus/MainMenuBar/VisualiserSettingsMenu/VisualiserSettingsMenu.java b/src/_VisualDVM/Visual/Menus/MainMenuBar/VisualiserSettingsMenu/VisualiserSettingsMenu.java
index 68bcbda7..11807381 100644
--- a/src/_VisualDVM/Visual/Menus/MainMenuBar/VisualiserSettingsMenu/VisualiserSettingsMenu.java
+++ b/src/_VisualDVM/Visual/Menus/MainMenuBar/VisualiserSettingsMenu/VisualiserSettingsMenu.java
@@ -4,6 +4,7 @@ import Common.Visual.Menus.VisualiserMenu;
import _VisualDVM.Global;
import _VisualDVM.GlobalData.Settings.SettingName;
import _VisualDVM.Visual.Menus.MainMenuBar.SynchronizationSettingsMenu;
+import _VisualDVM.Visual.Menus.MainMenuBar.VersionsComparisonMenu;
import _VisualDVM.Visual.Menus.PropertiesSubmenu;
import _VisualDVM.Visual.Menus.SettingsSubmenu;
public class VisualiserSettingsMenu extends VisualiserMenu {
@@ -27,14 +28,7 @@ public class VisualiserSettingsMenu extends VisualiserMenu {
));
}
add(new SynchronizationSettingsMenu());
- add(new SettingsSubmenu("Сравнение", null,
- SettingName.ExtensionsOn,
- SettingName.RegisterOn,
- SettingName.SpacesOn,
- SettingName.EmptyLinesOn,
- SettingName.FortranWrapsOn,
- SettingName.ComparsionDiffMergeOn
- ));
+ add(new VersionsComparisonMenu());
add((Global.mainModule.getDb()).settings.get(SettingName.Workspace).getMenuItem());
add((Global.mainModule.getDb()).settings.get(SettingName.BugReportsAgeLimit).getMenuItem());
}
diff --git a/src/_VisualDVM/Visual/Windows/SapforVersionsComparisonForm.java b/src/_VisualDVM/Visual/Windows/SapforVersionsComparisonForm.java
index 8757fe41..412121a2 100644
--- a/src/_VisualDVM/Visual/Windows/SapforVersionsComparisonForm.java
+++ b/src/_VisualDVM/Visual/Windows/SapforVersionsComparisonForm.java
@@ -81,10 +81,10 @@ public class SapforVersionsComparisonForm extends ComparisonForm extends Comparison
//в отличие от комбо боксов, тут события нажатия на кнопку, нет.
if (isReady()) {
if (slave.isReady()) {
- if ((Global.mainModule.getDb()).settings.get(SettingName.ComparsionDiffMergeOn).toBoolean()) {
+ if (Global.properties.ComparsionDiffMergeOn) {
DoComparePass(true);
} else
DoShowPass(true);
@@ -41,7 +41,7 @@ public abstract class TasksComparisonForm extends Comparison
} else {
if (isReady()) {
if (master.isReady()) {
- if ((Global.mainModule.getDb()).settings.get(SettingName.ComparsionDiffMergeOn).toBoolean()) {
+ if (Global.properties.ComparsionDiffMergeOn) {
master.DoComparePass(true);
} else
master.DoShowPass(true);
diff --git a/src/_VisualDVM/Visual/Windows/VersionsComparisonForm.java b/src/_VisualDVM/Visual/Windows/VersionsComparisonForm.java
index 6ec4981b..bb30af36 100644
--- a/src/_VisualDVM/Visual/Windows/VersionsComparisonForm.java
+++ b/src/_VisualDVM/Visual/Windows/VersionsComparisonForm.java
@@ -28,10 +28,10 @@ public class VersionsComparisonForm extends ComparisonForm {
} else {
if (isReady()) {
if (getMaster().isReady()) {
- boolean ExtensionsOn = (Global.mainModule.getDb()).settings.get(SettingName.ExtensionsOn).toBoolean();
+ boolean ExtensionsOn = (Global.properties.ExtensionsOn);
String name1 = ExtensionsOn ? getMaster().file.file.getName() : Utils_.getFileNameWithoutExtension(getMaster().file.file);
String name2 = ExtensionsOn ? file.file.getName() : Utils_.getFileNameWithoutExtension(file.file);
- if ((Global.mainModule.getDb()).settings.get(SettingName.ComparsionDiffMergeOn).toBoolean()) {
+ if (Global.properties.ComparsionDiffMergeOn) {
if (name1.equalsIgnoreCase(name2))
master.DoComparePass(true);
} else
@@ -82,7 +82,7 @@ public class VersionsComparisonForm extends ComparisonForm {
cbFile.setSelectedIndex(-1);
for (int i = 0; i < cbFile.getItemCount(); ++i) {
ProjectFile projectFile = cbFile.getItemAt(i);
- if ((Global.mainModule.getDb()).settings.get(SettingName.ExtensionsOn).toBoolean()) {
+ if (Global.properties.ExtensionsOn) {
//если учитываем расширения, ищем полное совпадение
if (projectFile.file.getName().equals(file_in.file.getName())) {
cbFile.setSelectedIndex(i);
@@ -105,6 +105,6 @@ public class VersionsComparisonForm extends ComparisonForm {
}
@Override
protected boolean fortranWrapsOn() {
- return (Global.mainModule.getDb()).settings.get(SettingName.FortranWrapsOn).toBoolean();
+ return Global.properties.FortranWrapsOn;
}
}