исправил старый баг. при синхронизации бд не восстанавливались поставленные галки а текущий объект был реализован странно
This commit is contained in:
10
.idea/workspace.xml
generated
10
.idea/workspace.xml
generated
@@ -7,16 +7,12 @@
|
|||||||
</component>
|
</component>
|
||||||
<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 afterPath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Messages/MessagesControlForm.java" afterDir="false" />
|
|
||||||
<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$/properties" beforeDir="false" afterPath="$PROJECT_DIR$/properties" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Common/Database/Database.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Database/Database.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Common/Database/Tables/DataSet.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Database/Tables/DataSet.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Common/Database/Tables/DataSet.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Database/Tables/DataSet.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Common/Visual/DataSetControlForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Visual/DataSetControlForm.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Common/Visual/DataSetControlForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Visual/DataSetControlForm.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Common/Visual/Tables/HeaderTextFilter.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Visual/Tables/HeaderTextFilter.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SynchronizeBugReports.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SynchronizeBugReports.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Messages/Errors/ErrorsDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Messages/Errors/ErrorsDBTable.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/UpdateSelectedComponents.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/UpdateSelectedComponents.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Messages/MessagesDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Messages/MessagesDBTable.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Messages/Notes/NotesDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Messages/Notes/NotesDBTable.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Messages/Warnings/WarningsDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Messages/Warnings/WarningsDBTable.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" />
|
||||||
|
|||||||
@@ -272,12 +272,16 @@ public abstract class Database {
|
|||||||
protected abstract void resetAI(DBTable table) throws Exception;
|
protected abstract void resetAI(DBTable table) throws Exception;
|
||||||
//-
|
//-
|
||||||
public void SaveLastSelections() {
|
public void SaveLastSelections() {
|
||||||
for (DataSet dataSet : tables.values())
|
for (DataSet dataSet : tables.values()) {
|
||||||
dataSet.SaveLastSelections();
|
if (dataSet.getUI() != null)
|
||||||
|
dataSet.getUI().SaveLastCurrent();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
public void RestoreLastSelections() {
|
public void RestoreLastSelections() {
|
||||||
for (DataSet dataSet : tables.values())
|
for (DataSet dataSet : tables.values()) {
|
||||||
dataSet.RestoreLastSelections();
|
if (dataSet.getUI() != null)
|
||||||
|
dataSet.getUI().RestoreLastCurrent();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
//---
|
//---
|
||||||
public abstract PassCode_ getSynchronizePassCode(); //если бд есть на сервере.
|
public abstract PassCode_ getSynchronizePassCode(); //если бд есть на сервере.
|
||||||
|
|||||||
@@ -15,9 +15,6 @@ import java.util.LinkedHashMap;
|
|||||||
import java.util.Vector;
|
import java.util.Vector;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
public class DataSet<K, D extends DBObject> extends DataSetAnchestor {
|
public class DataSet<K, D extends DBObject> extends DataSetAnchestor {
|
||||||
//-
|
|
||||||
public LinkedHashMap<Class, Object> selections = new LinkedHashMap<>();
|
|
||||||
//---
|
|
||||||
public String Name;
|
public String Name;
|
||||||
public Class<K> k; //класс первичного ключа.
|
public Class<K> k; //класс первичного ключа.
|
||||||
public Class<D> d; //класс объектов.
|
public Class<D> d; //класс объектов.
|
||||||
@@ -52,7 +49,7 @@ public class DataSet<K, D extends DBObject> extends DataSetAnchestor {
|
|||||||
public void SetCurrentObjectByUI(Object pk) {
|
public void SetCurrentObjectByUI(Object pk) {
|
||||||
if (ui != null) {
|
if (ui != null) {
|
||||||
ui.ClearSelection(); //сброс текущего объекта и всего что с ним связано.
|
ui.ClearSelection(); //сброс текущего объекта и всего что с ним связано.
|
||||||
ui.Select(pk);
|
ui.SetCurrentByPK(pk);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
protected DataSetControlForm createUI(JPanel mountPanel) {
|
protected DataSetControlForm createUI(JPanel mountPanel) {
|
||||||
@@ -218,24 +215,6 @@ public class DataSet<K, D extends DBObject> extends DataSetAnchestor {
|
|||||||
}
|
}
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
public void SaveLastSelections() {
|
|
||||||
if (ui!=null) {
|
|
||||||
Object lastPk = null;
|
|
||||||
if ((CurrentName() != null) && (getCurrent() != null))
|
|
||||||
lastPk = getCurrent().getPK();
|
|
||||||
if (!selections.containsKey(getClass()))
|
|
||||||
selections.put(getClass(), lastPk);
|
|
||||||
else selections.replace(getClass(), lastPk);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public void RestoreLastSelections() {
|
|
||||||
if (ui!=null) {
|
|
||||||
Object lastPk = selections.get(getClass());
|
|
||||||
if ((CurrentName() != null) && (lastPk != null)) {
|
|
||||||
ui.Select(lastPk);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//-------------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------------
|
||||||
public PassCode_ getDeletePassCode() {
|
public PassCode_ getDeletePassCode() {
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -35,6 +35,10 @@ public class DataSetControlForm extends ControlForm<DataTable> {
|
|||||||
public LinkedHashMap<Integer, HeaderTextFilter> headersTextFilters = new LinkedHashMap<>(); //текстовые фильтры столбцов
|
public LinkedHashMap<Integer, HeaderTextFilter> headersTextFilters = new LinkedHashMap<>(); //текстовые фильтры столбцов
|
||||||
//фильтры и подсчеты. todo слить с баром (?)
|
//фильтры и подсчеты. todo слить с баром (?)
|
||||||
MatchesCounter f_ui = null;
|
MatchesCounter f_ui = null;
|
||||||
|
//--
|
||||||
|
Object savedCurrentKey = null;
|
||||||
|
Vector<Object> savedSelectedKeys = new Vector<>();
|
||||||
|
//--
|
||||||
public DataSetControlForm(DataSet dataSource_in, JPanel mountPanel_in) {
|
public DataSetControlForm(DataSet dataSource_in, JPanel mountPanel_in) {
|
||||||
super(DataTable.class, mountPanel_in);
|
super(DataTable.class, mountPanel_in);
|
||||||
dataSource = dataSource_in;
|
dataSource = dataSource_in;
|
||||||
@@ -316,9 +320,9 @@ public class DataSetControlForm extends ControlForm<DataTable> {
|
|||||||
}
|
}
|
||||||
public void Show(Object pk) {
|
public void Show(Object pk) {
|
||||||
Show();
|
Show();
|
||||||
Select(pk);
|
SetCurrentByPK(pk);
|
||||||
}
|
}
|
||||||
public void Select(Object pk) {
|
public void SetCurrentByPK(Object pk) {
|
||||||
if (isShown())
|
if (isShown())
|
||||||
control.SelectRowByPK(pk);
|
control.SelectRowByPK(pk);
|
||||||
}
|
}
|
||||||
@@ -372,4 +376,23 @@ public class DataSetControlForm extends ControlForm<DataTable> {
|
|||||||
public boolean hasMenuBar() {
|
public boolean hasMenuBar() {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
//-
|
||||||
|
public void SaveLastCurrent() {
|
||||||
|
savedCurrentKey = null;
|
||||||
|
savedSelectedKeys.clear();
|
||||||
|
if ((dataSource.CurrentName() != null) && (dataSource.getCurrent() != null)) {
|
||||||
|
savedCurrentKey = dataSource.getCurrent().getPK();
|
||||||
|
}
|
||||||
|
savedSelectedKeys = dataSource.getSelectedKeys();
|
||||||
|
}
|
||||||
|
public void RestoreLastCurrent() {
|
||||||
|
|
||||||
|
for (Object key: savedSelectedKeys){
|
||||||
|
if (dataSource.containsKey(key))
|
||||||
|
dataSource.get(key).Select(true);
|
||||||
|
}
|
||||||
|
if ((savedCurrentKey!=null)&&(dataSource.containsKey(savedCurrentKey))){
|
||||||
|
SetCurrentByPK(savedCurrentKey);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ public class SynchronizeBugReports extends ComponentsRepositoryPass<Object> {
|
|||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
protected void showPreparation() throws Exception {
|
protected void showPreparation() throws Exception {
|
||||||
server.db.bugReports.SaveLastSelections();
|
server.db.bugReports.getUI().SaveLastCurrent();
|
||||||
server.db.bugReports.ClearUI();
|
server.db.bugReports.ClearUI();
|
||||||
server.db.subscribers.ClearUI();
|
server.db.subscribers.ClearUI();
|
||||||
server.db.workspaces.ClearUI();
|
server.db.workspaces.ClearUI();
|
||||||
@@ -48,9 +48,9 @@ public class SynchronizeBugReports extends ComponentsRepositoryPass<Object> {
|
|||||||
protected void showDone() throws Exception {
|
protected void showDone() throws Exception {
|
||||||
if (Global.mainModule.getUI().hasMainWindow()) {
|
if (Global.mainModule.getUI().hasMainWindow()) {
|
||||||
Global.mainModule.getUI().getMainWindow().getCallbackWindow().ShowBugReports();
|
Global.mainModule.getUI().getMainWindow().getCallbackWindow().ShowBugReports();
|
||||||
Global.componentsServer.db.bugReports.RestoreLastSelections();
|
server.db.bugReports.getUI().RestoreLastCurrent();
|
||||||
server.db.subscribers.RestoreLastSelections();
|
server.db.subscribers.getUI().RestoreLastCurrent();
|
||||||
server.db.workspaces.RestoreLastSelections();
|
server.db.workspaces.getUI().RestoreLastCurrent();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ public class UpdateSelectedComponents extends Pass<Vector<Component>> {
|
|||||||
@Override
|
@Override
|
||||||
protected void body() throws Exception {
|
protected void body() throws Exception {
|
||||||
for (Component component : target) {
|
for (Component component : target) {
|
||||||
Global.Components.getUI().Select(component.getPK());
|
Global.Components.getUI().SetCurrentByPK(component.getPK());
|
||||||
Global.mainModule.getPass(PassCode.UpdateComponent).Do();
|
Global.mainModule.getPass(PassCode.UpdateComponent).Do();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user