20 package net.sf.gridarta.gui.scripts;
22 import java.awt.Component;
23 import java.awt.Container;
24 import java.awt.FlowLayout;
25 import java.awt.Frame;
26 import java.awt.event.ActionEvent;
27 import java.awt.event.ActionListener;
29 import javax.swing.AbstractButton;
30 import javax.swing.BorderFactory;
31 import javax.swing.Box;
32 import javax.swing.BoxLayout;
33 import javax.swing.JButton;
34 import javax.swing.JDialog;
35 import javax.swing.JLabel;
36 import javax.swing.JPanel;
37 import javax.swing.JTextField;
38 import javax.swing.WindowConstants;
39 import javax.swing.text.JTextComponent;
48 import net.
sf.japi.swing.action.ActionBuilder;
49 import net.
sf.japi.swing.action.ActionBuilderFactory;
50 import org.jetbrains.annotations.NotNull;
62 private static final ActionBuilder
ACTION_BUILDER = ActionBuilderFactory.getInstance().getActionBuilder(
"net.sf.gridarta");
103 final File scriptFile;
104 if (scriptPath.startsWith(
"/")) {
109 scriptFile =
new File(mapManager.getLocalMapDir(), scriptPath);
113 if (scriptFile.exists() && scriptFile.isFile()) {
117 ACTION_BUILDER.showMessageDialog(parent,
"openScriptNotFound", scriptFile);
129 pathFrame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
131 final JPanel mainPanel =
new JPanel();
132 mainPanel.setLayout(
new BoxLayout(mainPanel, BoxLayout.Y_AXIS));
133 mainPanel.setBorder(BorderFactory.createEmptyBorder(5, 5, 2, 5));
136 final Container line1 =
new JPanel(
new FlowLayout(FlowLayout.RIGHT));
141 mainPanel.add(line1);
144 final Container line2 =
new JPanel(
new FlowLayout(FlowLayout.RIGHT));
147 inputOptions =
new JTextField(scriptedEvent.getOptions(), 20);
149 mainPanel.add(line2);
150 mainPanel.add(Box.createVerticalStrut(5));
153 final Container line3 =
new JPanel(
new FlowLayout(FlowLayout.RIGHT));
158 mainPanel.add(line3);
159 mainPanel.add(Box.createVerticalStrut(5));
162 final Container line4 =
new JPanel(
new FlowLayout(FlowLayout.RIGHT));
164 okButton.addActionListener(
new ActionListener() {
167 public void actionPerformed(@NotNull
final ActionEvent e) {
168 scriptedEvent.modifyEventPath();
176 cancelButton.addActionListener(
new ActionListener() {
179 public void actionPerformed(@NotNull
final ActionEvent e) {
184 line4.add(cancelButton);
185 mainPanel.add(line4);
187 pathFrame.getContentPane().add(mainPanel);
189 pathFrame.setLocationRelativeTo(parent);
190 pathFrame.setVisible(
true);