package ckelling.baukasten;

import java.awt.*;

/**
 *  Editor_PropertiesSimpleEdge.java
 *
 *  Zeigt ein Fenster an, in dem die fünf Koordinaten 
 *  einer SimpleEdge (Abzweigung eines SimpleBus) und
 *  weitere Eigenschaften eingestellt werden können.
 *
 *  @author   Carsten Kelling
 *  @version  0.9.0, 29.06.97
 */
public class Editor_PropertiesSimpleEdge extends Frame {
	void textFieldC5RelOffset_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c5Rel.setState(true);
		//}}
		useValues();
	}

	void choiceC5SourceQualifier_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c5Rel.setState(true);
		//}}
		useValues();
	}

	void choiceC5SourceName_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c5Rel.setState(true);
		//}}
		String sourceName = choice_c5SourceName.getSelectedItem();
		choice_c5SourceQualifier = parent.parent.setChoiceItems(choice_c5SourceQualifier, panelC5, sourceName);
		if ( (parent.d != null) && (sourceName.equals(parent.d.getQualifier(4))) )
			choice_c5SourceQualifier.select(sourceName);
		useValues();
	}

	void textFieldC5Abs_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c5Abs.setState(true);
		//}}
		useValues();
	}

	void textFieldC4RelOffset_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c4Rel.setState(true);
		//}}
		useValues();
	}

	void choiceC4SourceQualifier_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c4Rel.setState(true);
		//}}
		useValues();
	}

	void choiceC4SourceName_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c4Rel.setState(true);
		//}}
		String sourceName = choice_c4SourceName.getSelectedItem();
		choice_c4SourceQualifier = parent.parent.setChoiceItems(choice_c4SourceQualifier, panelC4, sourceName);
		if ( (parent.d != null) && (sourceName.equals(parent.d.getQualifier(3))) )
			choice_c4SourceQualifier.select(sourceName);
		useValues();
	}

	void textFieldC4Abs_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c4Abs.setState(true);
		//}}
		useValues();
	}

	void textFieldC3RelOffset_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c3Rel.setState(true);
		//}}
		useValues();
	}

	void choiceC3SourceQualifier_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c3Rel.setState(true);
		//}}
		useValues();
	}

	void choiceC3SourceName_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c3Rel.setState(true);
		//}}
		String sourceName = choice_c3SourceName.getSelectedItem();
		choice_c3SourceQualifier = parent.parent.setChoiceItems(choice_c3SourceQualifier, panelC3, sourceName);
		if ( (parent.d != null) && (sourceName.equals(parent.d.getQualifier(2))) )
			choice_c3SourceQualifier.select(sourceName);
		useValues();
	}

	void textFieldC3Abs_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c3Abs.setState(true);
		//}}
		useValues();
	}

	void textFieldC2RelOffset_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c2Rel.setState(true);
		//}}
		useValues();
	}

	void choiceC2SourceQualifier_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c2Rel.setState(true);
		//}}
		useValues();
	}

	void choiceC2SourceName_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c2Rel.setState(true);
		//}}
		String sourceName = choice_c2SourceName.getSelectedItem();
		choice_c2SourceQualifier = parent.parent.setChoiceItems(choice_c2SourceQualifier, panelC2, sourceName);
		if ( (parent.d != null) && (sourceName.equals(parent.d.getQualifier(1))) )
			choice_c2SourceQualifier.select(sourceName);
		useValues();
	}

	void textFieldC2Abs_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c2Abs.setState(true);
		//}}
		useValues();
	}

	void textFieldC1RelOffset_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c1Rel.setState(true);
		//}}
		useValues();
	}

	void choiceC1SourceQualifier_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c1Rel.setState(true);
		//}}
		useValues();
	}

	void choiceC1SourceName_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c1Rel.setState(true);
		//}}
		String sourceName = choice_c1SourceName.getSelectedItem();
		choice_c1SourceQualifier = parent.parent.setChoiceItems(choice_c1SourceQualifier, panelC1, sourceName);
		if ( (parent.d != null) && (sourceName.equals(parent.d.getQualifier(0))) )
			choice_c1SourceQualifier.select(sourceName);
		useValues();
	}

	void textFieldC1Abs_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox
		rb_c1Abs.setState(true);
		//}}
		useValues();
	}

	void rbC3Off_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox on condition... Is Checkbox On?
		rb_c4Off.setState(rb_c3Off.getState());
		//}}
		//{{CONNECTION
		// Check the Checkbox on condition... Is Checkbox On?
		rb_c5Off.setState(rb_c3Off.getState());
		//}}
		useValues();
	}

	void rbC4Off_Action(Event event) {
		//{{CONNECTION
		// Check the Checkbox on condition... Is Checkbox On?
		rb_c5Off.setState(rb_c4Off.getState());
		//}}
		useValues();
	}


	private	Editor_PropertiesSimpleBus	parent;
	private SimpleBus					bus;
	private SimpleEdge					edge;


	void buttonOK_Clicked(Event event) {

		parent.changeEdge(edge, this);

		parent.show();

		hide();
		dispose();
	}

	void buttonUse_Clicked(Event event) {
		useValues();
	}

	private void useValues()
	{
		edge = parent.changeEdge(edge, this);
	}



	public Editor_PropertiesSimpleEdge(SimpleEdge edge, SimpleBus bus, Editor_PropertiesSimpleBus parent) {

		this.parent = parent;
		this.bus = bus;
		this.edge = edge;

		//{{INIT_CONTROLS
		GridBagLayout gridBagLayout;
		gridBagLayout = new GridBagLayout();
		setLayout(gridBagLayout);
		addNotify();
		resize(insets().left + insets().right + 494,insets().top + insets().bottom + 287);
		setFont(new Font("Helvetica", Font.PLAIN, 12));
		setBackground(new Color(12632256));
		buttonPanel = new java.awt.Panel();
		buttonPanel.setLayout(new GridLayout(1,0,20,0));
		buttonPanel.reshape(insets().left + 10,insets().top + 380,474,23);
		GridBagConstraints gbc;
		gbc = new GridBagConstraints();
		gbc.gridx = 0;
		gbc.gridy = 1;
		gbc.weightx = 1.0;
		gbc.weighty = 1.0;
		gbc.fill = GridBagConstraints.HORIZONTAL;
		gbc.insets = new Insets(10,10,10,10);
		gridBagLayout.setConstraints(buttonPanel, gbc);
		add(buttonPanel);
		buttonOK = new java.awt.Button("OK");
		buttonOK.reshape(0,0,144,23);
		buttonPanel.add(buttonOK);
		buttonUse = new java.awt.Button("Übernehmen");
		buttonUse.reshape(164,0,144,23);
		buttonPanel.add(buttonUse);
		buttonCancel = new java.awt.Button("Abbrechen");
		buttonCancel.reshape(328,0,144,23);
		buttonPanel.add(buttonCancel);
		tabPanel1 = new symantec.itools.awt.TabPanel();
		tabPanel1.setLayout(null);
		tabPanel1.reshape(insets().left + 10,insets().top + 10,474,217);
		gbc = new GridBagConstraints();
		gbc.gridx = 0;
		gbc.gridy = 0;
		gbc.weightx = 1.0;
		gbc.weighty = 1.0;
		gbc.fill = GridBagConstraints.BOTH;
		gbc.insets = new Insets(10,10,10,10);
		gridBagLayout.setConstraints(tabPanel1, gbc);
		add(tabPanel1);
		{
			java.lang.String[] tempString = new java.lang.String[6];
			tempString[0] = new java.lang.String("Allgemein");
			tempString[1] = new java.lang.String("X1");
			tempString[2] = new java.lang.String("Y2");
			tempString[3] = new java.lang.String("X3");
			tempString[4] = new java.lang.String("Y4");
			tempString[5] = new java.lang.String("X5");
			tabPanel1.setPanelLabels(tempString);
		}
		panelAllgemein = new java.awt.Panel();
		panelAllgemein.setLayout(null);
		panelAllgemein.reshape(12,33,450,155);
		tabPanel1.add(panelAllgemein);
		label2 = new java.awt.Label("Name");
		label2.reshape(14,17,48,23);
		panelAllgemein.add(label2);
		cb_WITH_GATE = new java.awt.Checkbox("WITH_GATE");
		cb_WITH_GATE.reshape(14,65,98,23);
		panelAllgemein.add(cb_WITH_GATE);
		cb_WITH_SOLDER_DOT = new java.awt.Checkbox("WITH_SOLDER_DOT");
		cb_WITH_SOLDER_DOT.reshape(14,101,149,23);
		panelAllgemein.add(cb_WITH_SOLDER_DOT);
		textField_Name = new java.awt.TextField();
		textField_Name.reshape(74,17,96,23);
		textField_Name.setBackground(new Color(16777215));
		panelAllgemein.add(textField_Name);
		panelC1 = new java.awt.Panel();
		panelC1.setLayout(null);
		panelC1.reshape(12,33,450,155);
		tabPanel1.add(panelC1);
		textField_c1Abs = new java.awt.TextField();
		textField_c1Abs.reshape(86,17,60,23);
		textField_c1Abs.setBackground(new Color(16777215));
		panelC1.add(textField_c1Abs);
		choice_c1SourceName = new java.awt.Choice();
		panelC1.add(choice_c1SourceName);
		choice_c1SourceName.reshape(170,77,100,23);
		choice_c1SourceName.setBackground(new Color(16777215));
		choice_c1SourceQualifier = new java.awt.Choice();
		panelC1.add(choice_c1SourceQualifier);
		choice_c1SourceQualifier.reshape(290,77,100,23);
		choice_c1SourceQualifier.setBackground(new Color(16777215));
		label6 = new java.awt.Label("(");
		label6.reshape(278,77,18,23);
		panelC1.add(label6);
		label_c1 = new java.awt.Label(")");
		label_c1.reshape(398,77,18,23);
		panelC1.add(label_c1);
		textField_c1RelOffset = new java.awt.TextField();
		textField_c1RelOffset.setText("0");
		textField_c1RelOffset.reshape(170,113,60,23);
		textField_c1RelOffset.setBackground(new Color(16777215));
		panelC1.add(textField_c1RelOffset);
		radioButtonGroupPanelC1 = new symantec.itools.awt.RadioButtonGroupPanel();
		radioButtonGroupPanelC1.setLayout(null);
		radioButtonGroupPanelC1.reshape(2,5,78,108);
		panelC1.add(radioButtonGroupPanelC1);
		Group1 = new CheckboxGroup();
		rb_c1Abs = new java.awt.Checkbox("Absolut:", Group1, true);
		rb_c1Abs.reshape(12,12,70,23);
		radioButtonGroupPanelC1.add(rb_c1Abs);
		rb_c1Rel = new java.awt.Checkbox("Relativ:", Group1, false);
		rb_c1Rel.reshape(12,72,70,23);
		radioButtonGroupPanelC1.add(rb_c1Rel);
		label1 = new java.awt.Label("Pixel vom Busanfang entfernt");
		label1.reshape(158,17,173,23);
		panelC1.add(label1);
		label3 = new java.awt.Label("Pixel verschieben");
		label3.reshape(242,113,110,23);
		panelC1.add(label3);
		label7 = new java.awt.Label("Auf Höhe von");
		label7.reshape(86,77,78,23);
		panelC1.add(label7);
		label4 = new java.awt.Label("beginnen, um");
		label4.reshape(86,113,80,23);
		panelC1.add(label4);
		panelC2 = new java.awt.Panel();
		panelC2.setLayout(null);
		panelC2.reshape(12,33,450,155);
		tabPanel1.add(panelC2);
		textField_c2Abs = new java.awt.TextField();
		textField_c2Abs.reshape(86,17,60,23);
		textField_c2Abs.setBackground(new Color(16777215));
		panelC2.add(textField_c2Abs);
		choice_c2SourceName = new java.awt.Choice();
		panelC2.add(choice_c2SourceName);
		choice_c2SourceName.reshape(194,77,100,23);
		choice_c2SourceName.setBackground(new Color(16777215));
		choice_c2SourceQualifier = new java.awt.Choice();
		panelC2.add(choice_c2SourceQualifier);
		choice_c2SourceQualifier.reshape(314,77,100,23);
		choice_c2SourceQualifier.setBackground(new Color(16777215));
		label8 = new java.awt.Label("(");
		label8.reshape(302,77,18,23);
		panelC2.add(label8);
		label_c2 = new java.awt.Label(")");
		label_c2.reshape(422,77,18,23);
		panelC2.add(label_c2);
		textField_c2RelOffset = new java.awt.TextField();
		textField_c2RelOffset.setText("0");
		textField_c2RelOffset.reshape(194,113,60,23);
		textField_c2RelOffset.setBackground(new Color(16777215));
		panelC2.add(textField_c2RelOffset);
		label10 = new java.awt.Label("überbrücken, um");
		label10.reshape(86,113,107,23);
		panelC2.add(label10);
		label19 = new java.awt.Label("Pixel verschieben");
		label19.reshape(266,113,110,23);
		panelC2.add(label19);
		radioButtonGroupPanelC2 = new symantec.itools.awt.RadioButtonGroupPanel();
		radioButtonGroupPanelC2.setLayout(null);
		radioButtonGroupPanelC2.reshape(2,5,78,108);
		panelC2.add(radioButtonGroupPanelC2);
		rb_c2Abs = new java.awt.Checkbox("Absolut:", Group1, true);
		rb_c2Abs.reshape(12,12,70,23);
		radioButtonGroupPanelC2.add(rb_c2Abs);
		rb_c2Rel = new java.awt.Checkbox("Relativ:", Group1, false);
		rb_c2Rel.reshape(12,72,70,23);
		radioButtonGroupPanelC2.add(rb_c2Rel);
		label5 = new java.awt.Label("Pixel lang");
		label5.reshape(158,17,67,23);
		panelC2.add(label5);
		label9 = new java.awt.Label("Entfernung bis zu");
		label9.reshape(86,77,102,23);
		panelC2.add(label9);
		panelC3 = new java.awt.Panel();
		panelC3.setLayout(null);
		panelC3.reshape(12,33,450,155);
		tabPanel1.add(panelC3);
		textField_c3Abs = new java.awt.TextField();
		textField_c3Abs.reshape(86,17,60,23);
		textField_c3Abs.setBackground(new Color(16777215));
		panelC3.add(textField_c3Abs);
		choice_c3SourceName = new java.awt.Choice();
		panelC3.add(choice_c3SourceName);
		choice_c3SourceName.reshape(194,77,100,23);
		choice_c3SourceName.setBackground(new Color(16777215));
		choice_c3SourceQualifier = new java.awt.Choice();
		panelC3.add(choice_c3SourceQualifier);
		choice_c3SourceQualifier.reshape(314,77,100,23);
		choice_c3SourceQualifier.setBackground(new Color(16777215));
		label11 = new java.awt.Label("(");
		label11.reshape(302,77,18,23);
		panelC3.add(label11);
		label12 = new java.awt.Label(")");
		label12.reshape(422,77,18,23);
		panelC3.add(label12);
		textField_c3RelOffset = new java.awt.TextField();
		textField_c3RelOffset.setText("0");
		textField_c3RelOffset.reshape(194,113,60,23);
		textField_c3RelOffset.setBackground(new Color(16777215));
		panelC3.add(textField_c3RelOffset);
		label13 = new java.awt.Label("überbrücken, um");
		label13.reshape(86,113,107,23);
		panelC3.add(label13);
		label14 = new java.awt.Label("Pixel verschieben");
		label14.reshape(266,113,110,23);
		panelC3.add(label14);
		radioButtonGroupPanel1 = new symantec.itools.awt.RadioButtonGroupPanel();
		radioButtonGroupPanel1.setLayout(null);
		radioButtonGroupPanel1.reshape(2,5,78,192);
		panelC3.add(radioButtonGroupPanel1);
		rb_c3Abs = new java.awt.Checkbox("Absolut:", Group1, true);
		rb_c3Abs.reshape(12,12,70,23);
		radioButtonGroupPanel1.add(rb_c3Abs);
		rb_c3Rel = new java.awt.Checkbox("Relativ:", Group1, false);
		rb_c3Rel.reshape(12,72,70,23);
		radioButtonGroupPanel1.add(rb_c3Rel);
		rb_c3Off = new java.awt.Checkbox("Aus", Group1, false);
		rb_c3Off.reshape(12,144,51,23);
		radioButtonGroupPanel1.add(rb_c3Off);
		label15 = new java.awt.Label("Pixel lang");
		label15.reshape(158,17,67,23);
		panelC3.add(label15);
		label16 = new java.awt.Label("Entfernung bis zu");
		label16.reshape(86,77,104,23);
		panelC3.add(label16);
		panelC4 = new java.awt.Panel();
		panelC4.setLayout(null);
		panelC4.reshape(12,33,450,155);
		tabPanel1.add(panelC4);
		textField_c4Abs = new java.awt.TextField();
		textField_c4Abs.reshape(86,17,60,23);
		textField_c4Abs.setBackground(new Color(16777215));
		panelC4.add(textField_c4Abs);
		choice_c4SourceName = new java.awt.Choice();
		panelC4.add(choice_c4SourceName);
		choice_c4SourceName.reshape(194,77,100,23);
		choice_c4SourceName.setBackground(new Color(16777215));
		choice_c4SourceQualifier = new java.awt.Choice();
		panelC4.add(choice_c4SourceQualifier);
		choice_c4SourceQualifier.reshape(314,77,100,23);
		choice_c4SourceQualifier.setBackground(new Color(16777215));
		label17 = new java.awt.Label("(");
		label17.reshape(302,77,18,23);
		panelC4.add(label17);
		label18 = new java.awt.Label(")");
		label18.reshape(422,77,18,23);
		panelC4.add(label18);
		textField_c4RelOffset = new java.awt.TextField();
		textField_c4RelOffset.setText("0");
		textField_c4RelOffset.reshape(194,113,60,23);
		textField_c4RelOffset.setBackground(new Color(16777215));
		panelC4.add(textField_c4RelOffset);
		label20 = new java.awt.Label("überbrücken, um");
		label20.reshape(86,113,102,23);
		panelC4.add(label20);
		label21 = new java.awt.Label("Pixel verschieben");
		label21.reshape(266,113,110,23);
		panelC4.add(label21);
		radioButtonGroupPanel2 = new symantec.itools.awt.RadioButtonGroupPanel();
		radioButtonGroupPanel2.setLayout(null);
		radioButtonGroupPanel2.reshape(2,5,78,252);
		panelC4.add(radioButtonGroupPanel2);
		rb_c4Abs = new java.awt.Checkbox("Absolut:", Group1, true);
		rb_c4Abs.reshape(12,12,70,23);
		radioButtonGroupPanel2.add(rb_c4Abs);
		rb_c4Rel = new java.awt.Checkbox("Relativ:", Group1, false);
		rb_c4Rel.reshape(12,72,70,23);
		radioButtonGroupPanel2.add(rb_c4Rel);
		rb_c4Off = new java.awt.Checkbox("Aus", Group1, false);
		rb_c4Off.reshape(12,144,51,23);
		radioButtonGroupPanel2.add(rb_c4Off);
		label22 = new java.awt.Label("Pixel lang");
		label22.reshape(158,17,67,23);
		panelC4.add(label22);
		label23 = new java.awt.Label("Entfernung bis zu");
		label23.reshape(86,77,103,23);
		panelC4.add(label23);
		panelC5 = new java.awt.Panel();
		panelC5.setLayout(null);
		panelC5.reshape(12,33,450,155);
		tabPanel1.add(panelC5);
		textField_c5Abs = new java.awt.TextField();
		textField_c5Abs.reshape(86,17,60,23);
		textField_c5Abs.setBackground(new Color(16777215));
		panelC5.add(textField_c5Abs);
		choice_c5SourceName = new java.awt.Choice();
		panelC5.add(choice_c5SourceName);
		choice_c5SourceName.reshape(194,77,100,23);
		choice_c5SourceName.setBackground(new Color(16777215));
		label24 = new java.awt.Label("(");
		label24.reshape(302,77,18,23);
		panelC5.add(label24);
		label25 = new java.awt.Label(")");
		label25.reshape(422,77,18,23);
		panelC5.add(label25);
		textField_c5RelOffset = new java.awt.TextField();
		textField_c5RelOffset.setText("0");
		textField_c5RelOffset.reshape(194,113,60,23);
		textField_c5RelOffset.setBackground(new Color(16777215));
		panelC5.add(textField_c5RelOffset);
		label26 = new java.awt.Label("überbrücken, um");
		label26.reshape(86,113,107,23);
		panelC5.add(label26);
		label27 = new java.awt.Label("Pixel verschieben");
		label27.reshape(266,113,110,23);
		panelC5.add(label27);
		radioButtonGroupPanel3 = new symantec.itools.awt.RadioButtonGroupPanel();
		radioButtonGroupPanel3.setLayout(null);
		radioButtonGroupPanel3.reshape(2,5,78,228);
		panelC5.add(radioButtonGroupPanel3);
		rb_c5Abs = new java.awt.Checkbox("Absolut:", Group1, true);
		rb_c5Abs.reshape(12,12,70,23);
		radioButtonGroupPanel3.add(rb_c5Abs);
		rb_c5Rel = new java.awt.Checkbox("Relativ:", Group1, false);
		rb_c5Rel.reshape(12,72,70,23);
		radioButtonGroupPanel3.add(rb_c5Rel);
		rb_c5Off = new java.awt.Checkbox("Aus", Group1, false);
		rb_c5Off.reshape(12,144,51,23);
		radioButtonGroupPanel3.add(rb_c5Off);
		label28 = new java.awt.Label("Pixel lang");
		label28.reshape(158,17,67,23);
		panelC5.add(label28);
		label29 = new java.awt.Label("Entfernung bis zu");
		label29.reshape(86,77,101,23);
		panelC5.add(label29);
		choice_c5SourceQualifier = new java.awt.Choice();
		panelC5.add(choice_c5SourceQualifier);
		choice_c5SourceQualifier.reshape(314,77,100,23);
		choice_c5SourceQualifier.setBackground(new Color(16777215));
		setTitle("Untitled");
		//}}

		if (! parent.isHorizontalBus())
		{
			java.lang.String[] tempString = new java.lang.String[6];
			tempString[0] = new java.lang.String("Allgemein");
			tempString[1] = new java.lang.String("Y1");
			tempString[2] = new java.lang.String("X2");
			tempString[3] = new java.lang.String("Y3");
			tempString[4] = new java.lang.String("X4");
			tempString[5] = new java.lang.String("Y5");
			tabPanel1.setPanelLabels(tempString);
		}


		String[] allInstances;
		allInstances = parent.parent.getAllInstanceNames("");

		for (int i = 0; i < allInstances.length; i++)
		{
			choice_c1SourceName.addItem(allInstances[i]);
			choice_c2SourceName.addItem(allInstances[i]);
			choice_c3SourceName.addItem(allInstances[i]);
			choice_c4SourceName.addItem(allInstances[i]);
			choice_c5SourceName.addItem(allInstances[i]);
		}
		if (allInstances.length > 0)
		{
			choice_c1SourceName.select(0);
			choice_c1SourceQualifier = parent.parent.setChoiceItems(choice_c1SourceQualifier, panelC1, allInstances[0]);
			choice_c2SourceName.select(0);
			choice_c2SourceQualifier = parent.parent.setChoiceItems(choice_c2SourceQualifier, panelC2, allInstances[0]);
			choice_c3SourceName.select(0);
			choice_c3SourceQualifier = parent.parent.setChoiceItems(choice_c3SourceQualifier, panelC3, allInstances[0]);
			choice_c4SourceName.select(0);
			choice_c4SourceQualifier = parent.parent.setChoiceItems(choice_c4SourceQualifier, panelC4, allInstances[0]);
			choice_c5SourceName.select(0);
			choice_c5SourceQualifier = parent.parent.setChoiceItems(choice_c5SourceQualifier, panelC5, allInstances[0]);
		}


		if (edge == null)  // Eine neue SimpleEdge soll erstellt werden
		{
			setTitle("Eigenschaften für neuen Ast");

			textField_Name.setText("edge" + (bus.getNumberOfEdges() + 1));

			textField_c1Abs.setText("0");
			textField_c2Abs.setText("20");
			textField_c3Abs.setText("20");
			textField_c4Abs.setText("20");
			textField_c5Abs.setText("20");

			rb_c1Abs.setState(true);
			rb_c2Abs.setState(true);
			rb_c3Off.setState(true);
			rb_c4Off.setState(true);
			rb_c5Off.setState(true);

			int flags = bus.getFlags();
			cb_WITH_GATE.setState( (flags & SimpleBus.WITH_GATES) == SimpleBus.WITH_GATES);
			cb_WITH_SOLDER_DOT.setState( (flags & SimpleBus.WITH_SOLDER_DOTS) == SimpleBus.WITH_SOLDER_DOTS);
		}
		else  // eine bestehende SimpleEdge soll modifiziert werden
		{
			setTitle("Eigenschaften für " + edge.getLabel());

			Editor_DescriptionSimpleBus busDescription = parent.getDescription();
			Editor_DescriptionSimpleEdge desc = busDescription.getEdge(edge.getLabel());

			textField_Name.setText(edge.getLabel());

			int flags = edge.getFlags();
			cb_WITH_GATE.setState( (flags & SimpleBus.WITH_GATES) == SimpleBus.WITH_GATES);
			cb_WITH_SOLDER_DOT.setState( (flags & SimpleBus.WITH_SOLDER_DOTS) == SimpleBus.WITH_SOLDER_DOTS);


			String sourceName;

			// Erste Koordinate
			if (desc.isConstantOnly(0))
				rb_c1Abs.setState(true);
			else  // Erste Koordinate ergibt sich relativ zu anderen Komponenten
			{
				rb_c1Rel.setState(true);
				textField_c1RelOffset.setText(Integer.toString(desc.getOffset(0)));
			}
			textField_c1Abs.setText(Integer.toString(desc.evaluate(0)));
			sourceName = parent.parent.getDescription(desc.getSource(0)).getInstanceName();
			choice_c1SourceName.select(sourceName);
			choice_c1SourceQualifier = parent.parent.setChoiceItems(choice_c1SourceQualifier, panelC1, sourceName);
			choice_c1SourceQualifier.select(desc.getQualifier(0));

			// Zweite Koordinate
			if (desc.isConstantOnly(1))
				rb_c2Abs.setState(true);
			else  // Zweite Koordinate ergibt sich relativ zu anderen Komponenten
			{
				rb_c2Rel.setState(true);
				textField_c2RelOffset.setText(Integer.toString(desc.getOffset(1)));
			}
			textField_c2Abs.setText(Integer.toString(desc.evaluate(1)));
			sourceName = parent.parent.getDescription(desc.getSource(1)).getInstanceName();
			choice_c2SourceName.select(sourceName);
			choice_c2SourceQualifier = parent.parent.setChoiceItems(choice_c2SourceQualifier, panelC2, sourceName);
			choice_c2SourceQualifier.select(desc.getQualifier(1));

			// Dritte Koordinate
			if (desc.isConstantOnly(2))
			{
				if (desc.evaluate(2) == -1)
					rb_c3Off.setState(true);
				else
				{
					rb_c3Abs.setState(true);
					textField_c3Abs.setText(Integer.toString(desc.evaluate(2)));
				}
			}
			else  // Dritte Koordinate ergibt sich relativ zu anderen Komponenten
			{
				rb_c3Rel.setState(true);
				textField_c3RelOffset.setText(Integer.toString(desc.getOffset(2)));
				textField_c3Abs.setText(Integer.toString(desc.evaluate(2)));
			}
			sourceName = parent.parent.getDescription(desc.getSource(2)).getInstanceName();
			choice_c3SourceName.select(sourceName);
			choice_c3SourceQualifier = parent.parent.setChoiceItems(choice_c3SourceQualifier, panelC3, sourceName);
			choice_c3SourceQualifier.select(desc.getQualifier(2));

			// Vierte Koordinate
			if (desc.isConstantOnly(3))
			{
				if (desc.evaluate(3) == -1)
					rb_c4Off.setState(true);
				else
				{
					rb_c4Abs.setState(true);
					textField_c4Abs.setText(Integer.toString(desc.evaluate(3)));
				}
			}
			else  // Vierte Koordinate ergibt sich relativ zu anderen Komponenten
			{
				rb_c4Rel.setState(true);
				textField_c4RelOffset.setText(Integer.toString(desc.getOffset(3)));
				textField_c4Abs.setText(Integer.toString(desc.evaluate(3)));
			}
			sourceName = parent.parent.getDescription(desc.getSource(3)).getInstanceName();
			choice_c4SourceName.select(sourceName);
			choice_c4SourceQualifier = parent.parent.setChoiceItems(choice_c4SourceQualifier, panelC4, sourceName);
			choice_c4SourceQualifier.select(desc.getQualifier(3));

			// Fuenfte Koordinate
			if (desc.isConstantOnly(4))
			{
				if (desc.evaluate(4) == -1)
					rb_c5Off.setState(true);
				else
				{
					rb_c5Abs.setState(true);
					textField_c5Abs.setText(Integer.toString(desc.evaluate(4)));
				}
			}
			else  // Fuenfte Koordinate ergibt sich relativ zu anderen Komponenten
			{
				rb_c5Rel.setState(true);
				textField_c5RelOffset.setText(Integer.toString(desc.getOffset(4)));
				textField_c5Abs.setText(Integer.toString(desc.evaluate(4)));
			}
			sourceName = parent.parent.getDescription(desc.getSource(4)).getInstanceName();
			choice_c5SourceName.select(sourceName);
			choice_c5SourceQualifier = parent.parent.setChoiceItems(choice_c5SourceQualifier, panelC5, sourceName);
			choice_c5SourceQualifier.select(desc.getQualifier(4));

		}  // Ende von "eine bestehende SimpleEdge soll modifiziert werden"

    	Rectangle pb = parent.bounds();
    	move(pb.x, pb.y);

		//{{INIT_MENUS
		//}}
	}

	public Editor_PropertiesSimpleEdge(SimpleBus bus, Editor_PropertiesSimpleBus parent) {
	    this(null, bus, parent);
	}

    public synchronized void show() {
    	//Rectangle pb = parent.bounds();
    	//move(pb.x, pb.y);
    	super.show();
    }

	public boolean handleEvent(Event event) {
    	if (event.id == Event.WINDOW_DESTROY) {
            hide();         // hide the Frame
            return true;
    	}
		if (event.target == buttonOK && event.id == Event.ACTION_EVENT) {
			buttonOK_Clicked(event);
			return true;
		}
		if (event.target == buttonUse && event.id == Event.ACTION_EVENT) {
			buttonUse_Clicked(event);
			return true;
		}
		if (event.target == buttonCancel && event.id == Event.ACTION_EVENT) {
			hide();
			parent.show();
			dispose();
			return true;
		}
		if (event.target == rb_c3Off && event.id == Event.ACTION_EVENT) {
			rbC3Off_Action(event);
			return true;
		}
		if (event.target == rb_c4Off && event.id == Event.ACTION_EVENT) {
			rbC4Off_Action(event);
			return true;
		}
		if (event.target == textField_c1Abs && event.id == Event.ACTION_EVENT) {
			textFieldC1Abs_Action(event);
			return true;
		}
		if (event.target == textField_c1RelOffset && event.id == Event.ACTION_EVENT) {
			textFieldC1RelOffset_Action(event);
			return true;
		}
		if (event.target == choice_c1SourceName && event.id == Event.ACTION_EVENT) {
			choiceC1SourceName_Action(event);
			return true;
		}
		if (event.target == choice_c1SourceQualifier && event.id == Event.ACTION_EVENT) {
			choiceC1SourceQualifier_Action(event);
			return true;
		}
		if (event.target == textField_c2Abs && event.id == Event.ACTION_EVENT) {
			textFieldC2Abs_Action(event);
			return true;
		}
		if (event.target == textField_c2RelOffset && event.id == Event.ACTION_EVENT) {
			textFieldC2RelOffset_Action(event);
			return true;
		}
		if (event.target == choice_c2SourceName && event.id == Event.ACTION_EVENT) {
			choiceC2SourceName_Action(event);
			return true;
		}
		if (event.target == choice_c2SourceQualifier && event.id == Event.ACTION_EVENT) {
			choiceC2SourceQualifier_Action(event);
			return true;
		}
		if (event.target == textField_c3Abs && event.id == Event.ACTION_EVENT) {
			textFieldC3Abs_Action(event);
			return true;
		}
		if (event.target == textField_c3RelOffset && event.id == Event.ACTION_EVENT) {
			textFieldC3RelOffset_Action(event);
			return true;
		}
		if (event.target == choice_c3SourceName && event.id == Event.ACTION_EVENT) {
			choiceC3SourceName_Action(event);
			return true;
		}
		if (event.target == choice_c3SourceQualifier && event.id == Event.ACTION_EVENT) {
			choiceC3SourceQualifier_Action(event);
			return true;
		}
		if (event.target == textField_c4Abs && event.id == Event.ACTION_EVENT) {
			textFieldC4Abs_Action(event);
			return true;
		}
		if (event.target == textField_c4RelOffset && event.id == Event.ACTION_EVENT) {
			textFieldC4RelOffset_Action(event);
			return true;
		}
		if (event.target == choice_c4SourceName && event.id == Event.ACTION_EVENT) {
			choiceC4SourceName_Action(event);
			return true;
		}
		if (event.target == choice_c4SourceQualifier && event.id == Event.ACTION_EVENT) {
			choiceC4SourceQualifier_Action(event);
			return true;
		}
		if (event.target == textField_c5Abs && event.id == Event.ACTION_EVENT) {
			textFieldC5Abs_Action(event);
			return true;
		}
		if (event.target == textField_c5RelOffset && event.id == Event.ACTION_EVENT) {
			textFieldC5RelOffset_Action(event);
			return true;
		}
		if (event.target == choice_c5SourceName && event.id == Event.ACTION_EVENT) {
			choiceC5SourceName_Action(event);
			return true;
		}
		if (event.target == choice_c5SourceQualifier && event.id == Event.ACTION_EVENT) {
			choiceC5SourceQualifier_Action(event);
			return true;
		}
		return super.handleEvent(event);
	}


	//{{DECLARE_CONTROLS
	java.awt.Panel buttonPanel;
	java.awt.Button buttonOK;
	java.awt.Button buttonUse;
	java.awt.Button buttonCancel;
	symantec.itools.awt.TabPanel tabPanel1;
	java.awt.Panel panelAllgemein;
	java.awt.Label label2;
	java.awt.Checkbox cb_WITH_GATE;
	java.awt.Checkbox cb_WITH_SOLDER_DOT;
	java.awt.TextField textField_Name;
	java.awt.Panel panelC1;
	java.awt.TextField textField_c1Abs;
	java.awt.Choice choice_c1SourceName;
	java.awt.Choice choice_c1SourceQualifier;
	java.awt.Label label6;
	java.awt.Label label_c1;
	java.awt.TextField textField_c1RelOffset;
	symantec.itools.awt.RadioButtonGroupPanel radioButtonGroupPanelC1;
	java.awt.Checkbox rb_c1Abs;
	CheckboxGroup Group1;
	java.awt.Checkbox rb_c1Rel;
	java.awt.Label label1;
	java.awt.Label label3;
	java.awt.Label label7;
	java.awt.Label label4;
	java.awt.Panel panelC2;
	java.awt.TextField textField_c2Abs;
	java.awt.Choice choice_c2SourceName;
	java.awt.Choice choice_c2SourceQualifier;
	java.awt.Label label8;
	java.awt.Label label_c2;
	java.awt.TextField textField_c2RelOffset;
	java.awt.Label label10;
	java.awt.Label label19;
	symantec.itools.awt.RadioButtonGroupPanel radioButtonGroupPanelC2;
	java.awt.Checkbox rb_c2Abs;
	java.awt.Checkbox rb_c2Rel;
	java.awt.Label label5;
	java.awt.Label label9;
	java.awt.Panel panelC3;
	java.awt.TextField textField_c3Abs;
	java.awt.Choice choice_c3SourceName;
	java.awt.Choice choice_c3SourceQualifier;
	java.awt.Label label11;
	java.awt.Label label12;
	java.awt.TextField textField_c3RelOffset;
	java.awt.Label label13;
	java.awt.Label label14;
	symantec.itools.awt.RadioButtonGroupPanel radioButtonGroupPanel1;
	java.awt.Checkbox rb_c3Abs;
	java.awt.Checkbox rb_c3Rel;
	java.awt.Checkbox rb_c3Off;
	java.awt.Label label15;
	java.awt.Label label16;
	java.awt.Panel panelC4;
	java.awt.TextField textField_c4Abs;
	java.awt.Choice choice_c4SourceName;
	java.awt.Choice choice_c4SourceQualifier;
	java.awt.Label label17;
	java.awt.Label label18;
	java.awt.TextField textField_c4RelOffset;
	java.awt.Label label20;
	java.awt.Label label21;
	symantec.itools.awt.RadioButtonGroupPanel radioButtonGroupPanel2;
	java.awt.Checkbox rb_c4Abs;
	java.awt.Checkbox rb_c4Rel;
	java.awt.Checkbox rb_c4Off;
	java.awt.Label label22;
	java.awt.Label label23;
	java.awt.Panel panelC5;
	java.awt.TextField textField_c5Abs;
	java.awt.Choice choice_c5SourceName;
	java.awt.Label label24;
	java.awt.Label label25;
	java.awt.TextField textField_c5RelOffset;
	java.awt.Label label26;
	java.awt.Label label27;
	symantec.itools.awt.RadioButtonGroupPanel radioButtonGroupPanel3;
	java.awt.Checkbox rb_c5Abs;
	java.awt.Checkbox rb_c5Rel;
	java.awt.Checkbox rb_c5Off;
	java.awt.Label label28;
	java.awt.Label label29;
	java.awt.Choice choice_c5SourceQualifier;
	//}}

	//{{DECLARE_MENUS
	//}}
}
