The description key editor component is now a multi line JTextArea instead of a single line JTextField.

This commit is contained in:
hneemann 2016-10-30 19:46:11 +01:00
parent 065bb891a3
commit 5f492205a9
3 changed files with 28 additions and 6 deletions

View File

@ -160,4 +160,18 @@ public class Key<VALUE> {
return names;
}
}
/**
* A special string key to flag long multi line strings.
*/
public static final class LongString extends Key<String> {
/**
* Creates a new Key
*
* @param key the key
*/
public LongString(String key) {
super(key, "");
}
}
}

View File

@ -158,7 +158,7 @@ public final class Keys {
= new Key<>("showList", false);
/**
* flag to set a ROM as programm memory
* flag to set a ROM as program memory
*/
public static final Key<Boolean> IS_PROGRAM_MEMORY
= new Key<>("isProgramMemory", false);
@ -213,8 +213,8 @@ public final class Keys {
/**
* the description of an element
*/
public static final Key<String> DESCRIPTION
= new Key<>("Description", "");
public static final Key.LongString DESCRIPTION
= new Key.LongString("Description");
/**
* A net name

View File

@ -18,6 +18,7 @@ import de.neemann.gui.language.Language;
import javax.swing.*;
import javax.swing.filechooser.FileNameExtensionFilter;
import javax.swing.text.JTextComponent;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.io.IOException;
@ -110,16 +111,23 @@ public final class EditorFactory {
private final static class StringEditor extends LabelEditor<String> {
private final JTextField text;
private final JTextComponent text;
private final JComponent compToAdd;
public StringEditor(String value, Key<String> key) {
text = new JTextField(10);
if (key instanceof Key.LongString) {
text = new JTextArea(6, 30);
compToAdd = new JScrollPane(text);
} else {
text = new JTextField(10);
compToAdd = text;
}
text.setText(value);
}
@Override
public JComponent getComponent(ElementAttributes attr) {
return text;
return compToAdd;
}
@Override