Пример #1
0
  /** Die Methode speichert den Inhalt des Text Felder in die Datenbank */
  private boolean addToDB() {
    myFrame.setCursorWait();
    Vector<ContainerAttribute> myAtt = new Vector<ContainerAttribute>();
    String objKey = ReqField.get(0).getText();

    if (objKey.isEmpty() == false) {
      for (int i = 1; i < ReqField.size(); i++) {
        if (ReqField.get(i).getAtt().size() != 0 && ReqField.get(i).getText().isEmpty() == false) {
          myAtt.addAll(ReqField.get(i).getAtt());
        }
      }
      for (int i = 0; i < OptField.size(); i++) {
        if (OptField.get(i).getAtt().size() != 0 && OptField.get(i).getText().isEmpty() == false) {
          myAtt.addAll(OptField.get(i).getAtt());
        }
      }
      int ret = -1;

      // New Entry
      if (isNewEntry == true) {
        if (theDb.getObject(objKey) == null) {
          ret =
              theDb.setObject(
                  new ContainerObject(
                      -1, theDb.convTypeNameToTypeId(this.entryTypeString), objKey, myAtt));
        } else {
          JOptionPane.showMessageDialog(
              null,
              Main.myLang.getString(Main.myLang.getString("textFildTab.existingkey.message")),
              Main.myLang.getString(Main.myLang.getString("textFildTab.existingkey.title")),
              JOptionPane.ERROR_MESSAGE);
        }
      }
      // Edit Entry
      else {
        if (theDb.getObject(objKey) != null) {
        } else {
          JOptionPane.showMessageDialog(
              null,
              Main.myLang.getString(Main.myLang.getString("textFildTab.changedkey.message")),
              Main.myLang.getString(Main.myLang.getString("textFildTab.changedkey.title")),
              JOptionPane.WARNING_MESSAGE);
        }
        ret =
            theDb.setObject(
                new ContainerObject(
                    obj.getId(), theDb.convTypeNameToTypeId(this.entryTypeString), objKey, myAtt));
      }

      // file into DB
      if (ret != -1) {
        try {
          theDb.setAllFiles(this.fileModel.getData(), ret);
          obj = theDb.getObject(ret);
          myFrame.setCursorNormal();
          return true;
        } catch (PacketTooBigException e) {
          JOptionPane.showMessageDialog(
              null,
              Main.myLang.getString(Main.myLang.getString("textFildTab.FileSizeToSmall.message")),
              Main.myLang.getString(Main.myLang.getString("textFildTab.FileSizeToSmall.title")),
              JOptionPane.ERROR_MESSAGE);
          myFrame.setCursorNormal();
        }
      }
      myFrame.setCursorNormal();
      return false;
    } else {
      JOptionPane.showMessageDialog(
          null,
          Main.myLang.getString(Main.myLang.getString("textFildTab.missingKey.message")),
          Main.myLang.getString(Main.myLang.getString("textFildTab.missingKey.title")),
          JOptionPane.ERROR_MESSAGE);
      myFrame.setCursorNormal();
      return false;
    }
  }
Пример #2
0
  /**
   * Die Methode initialisiert Text Areas
   *
   * @return gui.CTex_TextArea
   */
  private TextArea getTextArea(
      boolean isRequired,
      final String typeName,
      Undomanager manager,
      final JButton addObject,
      final JButton addCondition) {

    final TextArea TextArea;
    ContainerAttribute e = null;
    Vector<ContainerAttribute> attV = new Vector<ContainerAttribute>();
    if (obj != null) {
      // wenn ein aus Objekt
      if (entryTypeKeyVar == typeName) {
        attV.add(
            new ContainerAttribute(-1, -1, obj.getKey(), false, new Vector<ContainerAttribute>()));
        TextArea = new TextArea(theDb, entryTypeKeyVar, attV, this);

      } else {
        Vector<ContainerAttribute> v = obj.getAttributes();
        Iterator<ContainerAttribute> i = v.iterator();
        // load Attribute
        attV.clear();
        while (i.hasNext()) {
          e = i.next();
          if (theDb.convTypeIdToTypeName(e.getObjectTypeId()).equals(typeName)) {
            attV.add(e);
          }
        }
        // if has Value or not
        if (attV.size() != 0) {
          TextArea =
              new TextArea(
                  theDb, theDb.convTypeIdToTypeName(attV.get(0).getObjectTypeId()), attV, this);
        } else {
          attV.add(
              new ContainerAttribute(
                  -1,
                  theDb.convTypeNameToTypeId(typeName),
                  "",
                  false,
                  new Vector<ContainerAttribute>()));
          TextArea = new TextArea(theDb, typeName, attV, this);
        }
      }
    } else {
      TextArea = new TextArea(theDb, typeName, attV, this);
    }

    // action of addObject "Objecte werden Gelb markiert und Links Weis"
    addObject.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent obj) {
            TextArea.setObject();
          }
        });

    // action of addCondition "Condition werden Grun markiert"
    addCondition.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent con) {
            TextArea.addCondition();
          }
        });

    if (!isRequired) {
      OptField.add(TextArea);
      addTextFieldOpt(OptField.get(OptField.size() - 1), manager);
      this.OptAreaId++;
    } else {
      ReqField.add(TextArea);
      addTextFieldReq(ReqField.get(ReqField.size() - 1), manager);
      this.ReqAreaId++;
    }

    // Save TextAreas for AutoGeneration Key
    if (typeName.equals("author")) {
      this.autor = TextArea;
    } else if (typeName.equals("year")) {
      this.year = TextArea;
    }

    return TextArea;
  }