예제 #1
0
  public void init(InteractionState interactionState, IForm form, FormTable table) {
    Transaction tr = RegaDBMain.getApp().createTransaction();

    for (UITestItem ti : testItems) {
      Test t = getTest(tr, ti);
      if (t != null) {
        Label l = new Label(TestComboBox.getLabel(t));
        FormField testResultField;
        if (ValueTypes.getValueType(t.getTestType().getValueType()) == ValueTypes.NOMINAL_VALUE) {
          testResultField = new ComboBox(interactionState, form);
          for (TestNominalValue tnv : t.getTestType().getTestNominalValues()) {
            ((ComboBox) testResultField)
                .addItem(new DataComboMessage<TestNominalValue>(tnv, tnv.getValue()));
          }
          ((ComboBox) testResultField).sort();

          if (ti.noValueSelected) ((ComboBox) testResultField).addNoSelectionItem();

          ((ComboBox) testResultField).selectIndex(0);

          if (ti.defaultValue != null && interactionState.isEditable())
            ((ComboBox) testResultField).selectItem(ti.defaultValue);
        } else {
          testResultField =
              FormField.getTextField(
                  ValueTypes.getValueType(t.getTestType().getValueType()), interactionState, form);
        }

        table.addLineToTable(l, testResultField);
        testFormFields.add(testResultField);
      } else {
        System.err.println("ViralIsolateForm: test does not exist: '" + ti.description + '\'');
      }
    }
  }
예제 #2
0
 private boolean showTest(InteractionState is, Test t, Set<TestResult> results) {
   if (is.isEditable()) {
     return true;
   } else {
     if (results != null) {
       for (TestResult tr : results) {
         if (tr.getTest().getTestIi() == t.getTestIi()) return true;
       }
     }
     return false;
   }
 }