00001
00002
00003
00004
00005
00006
00007 package DisplayGUI;
00008
00013 public class DisplayStatus {
00014
00015 public static final int UNDEFINED = 0;
00016 public static final int CONFIGURED = 1;
00017 public static final int MODULE_GROUP_SELECTION = 1;
00018 public static final int IS_MONITOR = 2;
00019 public static final int TEST_DATA = 3;
00020 public static final int SCTDB_DATA = 4;
00021 public static final int SCTDB_RODDAQ_DATA=5;
00022 public static final int DCS_DATA = 6;
00023 public static final int IV_DATA=7;
00024
00025 public static final String[] statusNames = {"DISPLAY UNCONFIGURED","ModuleGroup Selection","Data Manager","Test Results","SCTDAQ Reference","SctRodDaq Reference","DCS Info","IVscan Data"};
00026
00027 public int status;
00028 public int configuredStatus;
00029 gui guiControl;
00030
00032 public DisplayStatus(gui parent) {
00033 guiControl=parent;
00034 status = UNDEFINED;
00035 configuredStatus=UNDEFINED;
00036 }
00037 public void setStatus(int status) {
00038 this.status=status;
00039 }
00040 public int getStatus() {
00041 return status;
00042 }
00043
00044 public void setConfigurationMode() {
00045
00046
00047 ConfigurationInterface conf = ConfigurationInterface.getInstance();
00048 conf.getConfiguration(0);
00049 if(conf.isConfigured()) {
00050 guiControl.displayPane.refreshDisplay();
00051 configuredStatus=CONFIGURED;
00052 setModuleGroupSelectionMode();
00053 guiControl.menuBar.enableDisplayMenuItems(true);
00054 }
00055 }
00056
00057 public void setModuleGroupSelectionMode() {
00058 unsubscribeAll();
00059 status=MODULE_GROUP_SELECTION;
00060 boolean displayWriteAccess=true;
00061
00062 showParameterSelector();
00063 guiControl.colorScalePane.setColorScale();
00064 guiControl.tablesDisplayPane.updateTables();
00065
00066 guiControl.displayPane.setDisplayColors();
00067 guiControl.displayPane.refreshDisplay();
00068 guiControl.menuBar.updateMenuStates();
00069 }
00070 public void setISMode() {
00071 unsubscribeAll();
00072 status = IS_MONITOR;
00073 showParameterSelector();
00074 guiControl.colorScalePane.setColorScale();
00075
00076 guiControl.isInterface.subscribe();
00077
00078 guiControl.menuBar.updateMenuStates();
00079
00080
00081 }
00082 public void setTestDataMode(int testDataType) {
00083 if(status==TEST_DATA && testDataType==guiControl.isInterface.getListFilterIndex()) return;
00084 unsubscribeAll();
00085 int oldStatus=status;
00086 status = TEST_DATA;
00087 showParameterSelector();
00088 guiControl.displayPane.resetDisplayOption();
00089 guiControl.colorScalePane.setColorScale();
00090 guiControl.isInterface.subscribe(testDataType);
00091 if(testDataType==-1) guiControl.menuBar.resetTestListFilter();
00092 guiControl.menuBar.updateMenuStates();
00093 }
00094 public void setSCTDBDataMode(int testDataType) {
00095 if(status==SCTDB_DATA && testDataType==guiControl.isInterface.getListFilterIndex()) return;
00096 unsubscribeAll();
00097 int oldStatus=status;
00098 status = SCTDB_DATA;
00099 showParameterSelector();
00100 guiControl.colorScalePane.setColorScale();
00101 guiControl.isInterface.subscribe(testDataType);
00102 if(testDataType==-1) guiControl.menuBar.resetTestListFilter();
00103 guiControl.menuBar.updateMenuStates();
00104 }
00105 public void setSCTDBRodDaqMode(int testDataType) {
00106 if(status==SCTDB_RODDAQ_DATA && testDataType==guiControl.isInterface.getListFilterIndex()) return;
00107 unsubscribeAll();
00108 int oldStatus=status;
00109 status = SCTDB_RODDAQ_DATA;
00110 showParameterSelector();
00111 guiControl.colorScalePane.setColorScale();
00112 guiControl.isInterface.subscribe(testDataType);
00113 if(testDataType==-1) guiControl.menuBar.resetTestListFilter();
00114 guiControl.menuBar.updateMenuStates();
00115 }
00116 public void setDCSDataMode() {
00117 unsubscribeAll();
00118 int oldStatus=status;
00119 status = DCS_DATA;
00120 showParameterSelector();
00121 guiControl.colorScalePane.setColorScale();
00122 guiControl.isInterface.subscribe();
00123 guiControl.menuBar.updateMenuStates();
00124 }
00125 public void setIVDataMode() {
00126 unsubscribeAll();
00127 int oldStatus=status;
00128 status = IV_DATA;
00129 showParameterSelector();
00130 guiControl.colorScalePane.setColorScale();
00131 guiControl.isInterface.subscribe();
00132 guiControl.menuBar.updateMenuStates();
00133
00134
00135 IVTestSelection iv = guiControl.tablesDisplayPane.getIVTestSelection();
00136 if(iv==null) new IVScanLister(guiControl.displayPane.getSCTView()).show();
00137 }
00138
00139 public void unsubscribeAll() {
00140 guiControl.isInterface.unsubscribe();
00141 }
00142 private void showParameterSelector() {
00143 guiControl.selectorPane.initParamList();
00144 }
00145 }