/** * 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; }
/** * Construktor: Initialisiert CTex_TextFieldTab mit dem uebergebnen Objekt aus dem Datenbank * * @return gui.CTex_TextFieldTab */ EntryPanel( Db theDb, TabPanel inTab, final Undomanager manager, ContainerObject obj, Frame frame) { tableTab = inTab; isNewEntry = false; this.obj = obj; this.theDb = theDb; this.myTabPane = this; this.myFrame = frame; this.entryTypeString = theDb.convTypeIdToTypeName(obj.getTypeId()); this.entryType = theDb.getType(entryTypeString); // Close dialog when pressing ESC tableTab.registerKeyboardAction( new ActionListener() { public void actionPerformed(ActionEvent e) { tableTab.showPreviewPane(); } }, KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), JComponent.WHEN_IN_FOCUSED_WINDOW); // Auf Tab Mous Listner Legen. addMouseListener( new MouseAdapter() { public void mousePressed(MouseEvent e) { // Tab Nummer holen int tabNumber = getUI().tabForCoordinate(EntryPanel.this, e.getX(), e.getY()); // Wenn Tab 0 dann Requiedfield sonst OptionsField if (tabNumber == 0) { // Manager auf ReqField den feld setzen ReqOROpt = true; ReqAreaId = 0; manager.setActivManager( myReqField, myOptField, null, myReqCompound, myOptCompound, null, ReqOROpt, false); // Area Tab Einstellungen ReqField.get(ReqAreaId).setCaretPosition(0); ReqField.get(ReqAreaId).requestFocus(true); /* set Color of new Area */ // ReqField.get(ReqAreaId).setFocusBackground(); } else if (tabNumber == 1) { ReqOROpt = false; OptAreaId = 1; // Manager auf OptField setzen manager.setActivManager( myReqField, myOptField, null, myReqCompound, myOptCompound, null, ReqOROpt, false); // Area Tab Einstellungen OptField.get(OptAreaId).setCaretPosition(0); OptField.get(OptAreaId).requestFocus(true); /* set Color of new Area */ // OptField.get(OptAreaId).setFocusBackground(); } } }); // Manager auf selekted Tab setzen manager.setActivManager( myReqField, myOptField, null, myReqCompound, null, myOptCompound, ReqOROpt, false); // "Requeds Field" u. "Optional Fields" Tabs einfuegen this.addTab("Required fields", getReqTextField(manager)); this.addTab("Optional fields", getOptTextField(manager)); this.ReqAreaId = 0; this.OptAreaId = 0; this.ReqOROpt = true; }