joinBox.addActionListener(this);
joinPanel.add(joinBox);
palette.add(joinPanel);
JPanel widthPanel = new JPanel();
widthPanel.setLayout(new GridLayout(0, 1));
JLabel widthLabel = new JLabel("Line Width");
widthField = new JTextField(Float.toString(basicStroke.getLineWidth()), 4);
widthField.setToolTipText("Enter pixel width of line.");
widthPanel.add(widthLabel);
widthPanel.add(widthField);
JPanel mlPanel = new JPanel();
mlPanel.setLayout(new GridLayout(0, 1));
JLabel miterLimitLabel = new JLabel("Miter Limit");
miterLimitField = new JTextField(Float.toString(basicStroke.getMiterLimit()), 4);
miterLimitField.setToolTipText("Min angle for corner decorations.");
mlPanel.add(miterLimitLabel);
mlPanel.add(miterLimitField);
JPanel dlPanel = new JPanel();
dlPanel.setLayout(new FlowLayout());
JLabel dashLabel = new JLabel("Dash Pattern");
// float[] da = basicStroke.getDashArray();
// String dashArrayString = dashArrayToString(da);
dashField = new JTextField(dashArrayToString(basicStroke.getDashArray()), 15);
dashField.setToolTipText("Number of pixels on off on ...");
dlPanel.add(dashLabel);
dlPanel.add(dashField);
JPanel dpPanel = new JPanel();
dpPanel.setLayout(new GridLayout(0, 1));
JLabel dashPhaseLabel = new JLabel("Dash Phase");
dashPhaseField = new JTextField(Float.toString(basicStroke.getDashPhase()), 4);
dashPhaseField.setToolTipText("Phase to start dash array.");
dpPanel.add(dashPhaseLabel);
dpPanel.add(dashPhaseField);
JPanel textFieldPanel = new JPanel();
textFieldPanel.setLayout(new GridLayout(0, 3));
textFieldPanel.add(widthPanel);
textFieldPanel.add(dpPanel);
textFieldPanel.add(mlPanel);
palette.add(textFieldPanel);
palette.add(dlPanel);
JPanel buttonPanel = new JPanel();
buttonPanel.setLayout(new GridLayout(0, 2));
closebutton = new JButton("Cancel");
closebutton.addActionListener(this);
applybutton = new JButton("OK");
applybutton.addActionListener(this);
buttonPanel.add(applybutton);