Files
VisualSapfor/src/Visual_DVM_2021/Passes/All/UpdateProperty.java

65 lines
2.4 KiB
Java
Raw Normal View History

package Visual_DVM_2021.Passes.All;
2024-10-09 22:01:19 +03:00
import _VisualDVM.Current;
import _VisualDVM.Global;
2024-10-09 22:01:19 +03:00
import _VisualDVM.GlobalProperties;
import _VisualDVM.Visual.UI;
2024-10-10 23:57:36 +03:00
import Common.Passes.Pass;
import java.lang.reflect.Field;
2024-10-09 23:37:58 +03:00
public class UpdateProperty extends Pass<Object> {
//todo в дальнейшем, все настройки перевести в properties, и перенести сюда функционал UpdateSetting (?)
String name = "";
Field field = null;
Object oldValue = null;
Object newValue = null;
@Override
protected boolean canStart(Object... args) throws Exception {
name = (String) args[0];
newValue = args[1];
//--
field = GlobalProperties.class.getField(name);
oldValue = field.get(Global.properties);
//---
return !newValue.equals(oldValue);
}
@Override
protected void body() throws Exception {
field.set(Global.properties, newValue);
Global.properties.Update();
}
@Override
protected void showDone() throws Exception {
switch (name) {
case "collapseCredentials":
if ((boolean) newValue)
UI.getMainWindow().getTestingWindow().CollapseCredentials();
else
UI.getMainWindow().getTestingWindow().ExpandCredentials();
break;
case "collapseProjectTrees":
if (Global.mainModule.HasProject()) {
if ((boolean) newValue)
UI.getMainWindow().getProjectWindow().CollapseProjectTrees();
else UI.getMainWindow().getProjectWindow().ExpandProjectTrees();
}
break;
case "collapseFileGraphs":
if (Global.mainModule.HasFile()) {
if ((boolean) newValue)
Global.mainModule.getFile().form.CollapseGraphs();
else
Global.mainModule.getFile().form.ExpandGraphs();
}
break;
case "collapseFileMessages":
if (Global.mainModule.HasFile()) {
if ((boolean) newValue)
Global.mainModule.getFile().form.CollapseMessages();
else
Global.mainModule.getFile().form.ExpandMessages();
}
break;
}
}
}