From: <aki...@us...> - 2013-11-23 08:44:15
|
Revision: 9483 http://sourceforge.net/p/gridarta/code/9483 Author: akirschbaum Date: 2013-11-23 08:44:09 +0000 (Sat, 23 Nov 2013) Log Message: ----------- Do not extend JPanel. Modified Paths: -------------- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManager.java Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2013-10-18 07:05:43 UTC (rev 9482) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2013-11-23 08:44:09 UTC (rev 9483) @@ -68,7 +68,7 @@ import org.fife.ui.rtextarea.RTextScrollPane; import org.jetbrains.annotations.NotNull; -public class PluginEditor<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> extends JPanel { +public class PluginEditor<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> { private static final long serialVersionUID = 1L; @@ -79,6 +79,9 @@ private static final Category log = Logger.getLogger(PluginEditor.class); @NotNull + private final JPanel panel = new JPanel(); + + @NotNull private final PluginParameterViewFactory<G, A, R> pluginParameterViewFactory; @NotNull @@ -170,8 +173,8 @@ this.plugin = plugin; this.pluginParameterViewFactory = pluginParameterViewFactory; final JTabbedPane tabs = new JTabbedPane(); - setLayout(new BorderLayout()); - add(tabs); + panel.setLayout(new BorderLayout()); + panel.add(tabs); final Container optionsTab = new JPanel(new GridBagLayout()); final GridBagConstraints gbc = new GridBagConstraints(); gbc.fill = GridBagConstraints.HORIZONTAL; @@ -366,7 +369,7 @@ putRow(gbc, parameter); i++; } - repaint(); + panel.repaint(); } private void newTableComponent(@NotNull final Component c) { @@ -444,4 +447,13 @@ paramTable.add(getParameterView(param).getValueComponent(), gbc); } + /** + * Returns the {@link Component} for this plugin editor. + * @return the component + */ + @NotNull + public Component getComponent() { + return panel; + } + } Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManager.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManager.java 2013-10-18 07:05:43 UTC (rev 9482) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManager.java 2013-11-23 08:44:09 UTC (rev 9483) @@ -22,7 +22,6 @@ import java.awt.BorderLayout; import java.awt.CardLayout; import java.awt.Color; -import java.awt.Component; import java.awt.Container; import java.awt.GridLayout; import java.awt.event.ActionEvent; @@ -227,16 +226,16 @@ if (pluginEditor == null) { pluginEditor = new PluginEditor<G, A, R>(plugin, pluginController, pluginModel, pluginParameterViewFactory, resourceIcons); components.put(plugin, pluginEditor); - scriptPanel.add(pluginEditor, Integer.toString(pluginEditor.hashCode())); + scriptPanel.add(pluginEditor.getComponent(), Integer.toString(pluginEditor.hashCode())); } scriptLayout.show(scriptPanel, Integer.toString(pluginEditor.hashCode())); } private void removeScript(final Plugin<G, A, R> plugin) { - final Component scriptEditor = components.get(plugin); + final PluginEditor<?, ?, ?> scriptEditor = components.get(plugin); if (scriptEditor != null) { components.remove(plugin); - scriptPanel.remove(scriptEditor); + scriptPanel.remove(scriptEditor.getComponent()); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <aki...@us...> - 2013-11-23 08:49:58
|
Revision: 9484 http://sourceforge.net/p/gridarta/code/9484 Author: akirschbaum Date: 2013-11-23 08:49:52 +0000 (Sat, 23 Nov 2013) Log Message: ----------- Do not extend JFrame. Modified Paths: -------------- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManager.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManagerFactory.java Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManager.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManager.java 2013-11-23 08:44:09 UTC (rev 9483) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManager.java 2013-11-23 08:49:52 UTC (rev 9484) @@ -51,9 +51,12 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -public class PluginManager<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> extends JFrame { +public class PluginManager<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> { @NotNull + private final JFrame frame = new JFrame("Editor plugins management"); + + @NotNull private final JList scripts; @NotNull @@ -91,15 +94,14 @@ * @param resourceIcons the resource icons for creating icons */ public PluginManager(@NotNull final PluginController<G, A, R> pluginController, @NotNull final PluginModel<G, A, R> pluginModel, @NotNull final PluginParameterViewFactory<G, A, R> pluginParameterViewFactory, @NotNull final ResourceIcons resourceIcons) { - super("Editor plugins management"); this.pluginController = pluginController; this.pluginModel = pluginModel; this.pluginParameterViewFactory = pluginParameterViewFactory; this.resourceIcons = resourceIcons; - getContentPane().setLayout(new BorderLayout()); + frame.getContentPane().setLayout(new BorderLayout()); final Container left = new JPanel(new BorderLayout()); - getContentPane().add(left, BorderLayout.WEST); - getContentPane().add(scriptPanel, BorderLayout.CENTER); + frame.getContentPane().add(left, BorderLayout.WEST); + frame.getContentPane().add(scriptPanel, BorderLayout.CENTER); final ListModel listModel = new AbstractListModel() { /** @@ -206,8 +208,8 @@ bottomLeft.add(removeScriptBtn); left.add(bottomLeft, BorderLayout.SOUTH); scripts.setSelectedIndex(0); - pack(); - setVisible(true); + frame.pack(); + frame.setVisible(true); } private void showScript(final Plugin<G, A, R> plugin) { @@ -239,4 +241,12 @@ } } + /** + * Shows the plugin manager window. + */ + public void show() { + frame.pack(); + frame.setVisible(true); + } + } Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManagerFactory.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManagerFactory.java 2013-11-23 08:44:09 UTC (rev 9483) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManagerFactory.java 2013-11-23 08:49:52 UTC (rev 9484) @@ -19,7 +19,6 @@ package net.sf.gridarta.gui.dialog.plugin; -import java.awt.Window; import javax.swing.Action; import net.sf.gridarta.gui.dialog.plugin.parameter.PluginParameterViewFactory; import net.sf.gridarta.model.archetype.Archetype; @@ -49,7 +48,7 @@ private final Object sync = new Object(); @Nullable - private Window scriptManager; + private PluginManager<G, A, R> scriptManager; @NotNull private final PluginController<G, A, R> pluginController; @@ -84,8 +83,7 @@ scriptManager = new PluginManager<G, A, R>(pluginController, pluginModel, pluginParameterViewFactory, resourceIcons); } - scriptManager.pack(); - scriptManager.setVisible(true); + scriptManager.show(); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <aki...@us...> - 2013-11-23 08:53:06
|
Revision: 9486 http://sourceforge.net/p/gridarta/code/9486 Author: akirschbaum Date: 2013-11-23 08:52:58 +0000 (Sat, 23 Nov 2013) Log Message: ----------- Remove incorrect serialVersionUID fields. Modified Paths: -------------- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManager.java Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2013-11-23 08:50:24 UTC (rev 9485) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2013-11-23 08:52:58 UTC (rev 9486) @@ -70,8 +70,6 @@ public class PluginEditor<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> { - private static final long serialVersionUID = 1L; - /** * The Logger for printing log messages. */ Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManager.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManager.java 2013-11-23 08:50:24 UTC (rev 9485) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginManager.java 2013-11-23 08:52:58 UTC (rev 9486) @@ -85,8 +85,6 @@ @NotNull private final Map<Plugin<G, A, R>, PluginEditor<G, A, R>> components = new HashMap<Plugin<G, A, R>, PluginEditor<G, A, R>>(); - private static final long serialVersionUID = 1L; - /** * Creates a PluginManager. * @param pluginController the script controller to base this script manager This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <aki...@us...> - 2013-12-05 09:43:25
|
Revision: 9525 http://sourceforge.net/p/gridarta/code/9525 Author: akirschbaum Date: 2013-12-05 09:43:22 +0000 (Thu, 05 Dec 2013) Log Message: ----------- Disallow null values. Modified Paths: -------------- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/CloseableTabbedPane.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/ClosingIcon.java Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/CloseableTabbedPane.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/CloseableTabbedPane.java 2013-12-05 09:41:41 UTC (rev 9524) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/CloseableTabbedPane.java 2013-12-05 09:43:22 UTC (rev 9525) @@ -50,23 +50,22 @@ import javax.swing.ImageIcon; import javax.swing.JTabbedPane; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; public class CloseableTabbedPane extends JTabbedPane { /** - * The icon or <code>null</code>. + * The icon. */ - @Nullable + @NotNull private final ImageIcon closingIcon; private static final long serialVersionUID = 1L; /** * Creates a new instance. - * @param closingIcon the icons or <code>null</code> + * @param closingIcon the icons */ - public CloseableTabbedPane(@Nullable final ImageIcon closingIcon) { + public CloseableTabbedPane(@NotNull final ImageIcon closingIcon) { this.closingIcon = closingIcon; addMouseListener(new ClosingListener(this)); Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/ClosingIcon.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/ClosingIcon.java 2013-12-05 09:41:41 UTC (rev 9524) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/ClosingIcon.java 2013-12-05 09:43:22 UTC (rev 9525) @@ -23,7 +23,6 @@ import java.awt.Graphics; import javax.swing.Icon; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; /** * the idea for this class stems from limewire's CancelSearchIconProxy class, @@ -31,7 +30,7 @@ */ public class ClosingIcon implements Icon { - @Nullable + @NotNull private final Icon icon; private int x; @@ -42,10 +41,10 @@ private final int width; - public ClosingIcon(@Nullable final Icon icon) { + public ClosingIcon(@NotNull final Icon icon) { this.icon = icon; - height = icon == null ? 10 : icon.getIconHeight(); - width = icon == null ? 10 : icon.getIconWidth(); + height = icon.getIconHeight(); + width = icon.getIconWidth(); } @Override @@ -66,12 +65,7 @@ public void paintIcon(@NotNull final Component c, @NotNull final Graphics g, final int x, final int y) { this.x = x; this.y = y; - - if (icon != null) { - icon.paintIcon(c, g, x, y + 1); - } else { - g.drawRect(x, y + 1, width, height); - } + icon.paintIcon(c, g, x, y + 1); } /** This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <aki...@us...> - 2014-02-22 07:19:28
|
Revision: 9605 http://sourceforge.net/p/gridarta/code/9605 Author: akirschbaum Date: 2014-02-22 07:19:23 +0000 (Sat, 22 Feb 2014) Log Message: ----------- Do not extend JComboBox. Modified Paths: -------------- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java Removed Paths: ------------- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ParameterTypeEditor.java Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2014-02-22 07:04:58 UTC (rev 9604) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2014-02-22 07:19:23 UTC (rev 9605) @@ -29,12 +29,15 @@ import java.awt.Insets; import java.awt.event.FocusEvent; import java.awt.event.FocusListener; +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.util.HashMap; import java.util.Map; import javax.swing.JButton; import javax.swing.JCheckBox; +import javax.swing.JComboBox; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; @@ -47,7 +50,6 @@ import javax.swing.event.DocumentListener; import net.sf.gridarta.gui.dialog.plugin.parameter.ParameterDescriptionEditor; import net.sf.gridarta.gui.dialog.plugin.parameter.ParameterNameEditor; -import net.sf.gridarta.gui.dialog.plugin.parameter.ParameterTypeEditor; import net.sf.gridarta.gui.dialog.plugin.parameter.PluginParameterView; import net.sf.gridarta.gui.dialog.plugin.parameter.PluginParameterViewFactory; import net.sf.gridarta.model.archetype.Archetype; @@ -62,6 +64,8 @@ import net.sf.japi.swing.action.ActionBuilder; import net.sf.japi.swing.action.ActionBuilderFactory; import net.sf.japi.swing.action.ActionMethod; +import org.apache.log4j.Category; +import org.apache.log4j.Logger; import org.fife.ui.rsyntaxtextarea.RSyntaxTextArea; import org.fife.ui.rsyntaxtextarea.SyntaxConstants; import org.fife.ui.rtextarea.RTextScrollPane; @@ -70,6 +74,12 @@ public class PluginEditor<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> { /** + * The Logger for printing log messages. + */ + @NotNull + private static final Category LOG = Logger.getLogger(PluginEditor.class); + + /** * Action Builder. */ @NotNull @@ -103,7 +113,7 @@ private final Map<PluginParameter<G, A, R, ?>, ParameterDescriptionEditor<G, A, R>> parameterDescriptionEditors = new HashMap<PluginParameter<G, A, R, ?>, ParameterDescriptionEditor<G, A, R>>(); @NotNull - private final Map<PluginParameter<G, A, R, ?>, ParameterTypeEditor<G, A, R>> parameterTypeEditors = new HashMap<PluginParameter<G, A, R, ?>, ParameterTypeEditor<G, A, R>>(); + private final Map<PluginParameter<G, A, R, ?>, Component> parameterTypeEditors = new HashMap<PluginParameter<G, A, R, ?>, Component>(); @NotNull private final Map<PluginParameter<G, A, R, ?>, PluginParameterView<G, A, R>> parameterViews = new HashMap<PluginParameter<G, A, R, ?>, PluginParameterView<G, A, R>>(); @@ -375,7 +385,24 @@ return existingParameterTypeEditor; } - final ParameterTypeEditor<G, A, R> newParameterTypeEditor = new ParameterTypeEditor<G, A, R>(pluginModel, plugin, parameter); + final JComboBox newParameterTypeEditor = new JComboBox(pluginModel.getTypes()); + newParameterTypeEditor.setSelectedItem(parameter.getParameterType()); + newParameterTypeEditor.addItemListener(new ItemListener() { + + @Override + public void itemStateChanged(@NotNull final ItemEvent e) { + if (e.getStateChange() == ItemEvent.SELECTED) { + if (!parameter.getParameterType().equals(e.getItem())) { + try { + plugin.convertType(parameter, (String) e.getItem()); + } catch (final NoSuchParameterException ex) { + LOG.warn("Cannot create parameter for type " + e.getItem()); + } + } + } + } + + }); parameterTypeEditors.put(parameter, newParameterTypeEditor); newTableComponent(newParameterTypeEditor); return newParameterTypeEditor; Deleted: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ParameterTypeEditor.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ParameterTypeEditor.java 2014-02-22 07:04:58 UTC (rev 9604) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ParameterTypeEditor.java 2014-02-22 07:19:23 UTC (rev 9605) @@ -1,67 +0,0 @@ -/* - * Gridarta MMORPG map editor for Crossfire, Daimonin and similar games. - * Copyright (C) 2000-2011 The Gridarta Developers. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ - -package net.sf.gridarta.gui.dialog.plugin.parameter; - -import java.awt.event.ItemEvent; -import java.awt.event.ItemListener; -import javax.swing.JComboBox; -import net.sf.gridarta.model.archetype.Archetype; -import net.sf.gridarta.model.gameobject.GameObject; -import net.sf.gridarta.model.maparchobject.MapArchObject; -import net.sf.gridarta.plugin.Plugin; -import net.sf.gridarta.plugin.PluginModel; -import net.sf.gridarta.plugin.parameter.NoSuchParameterException; -import net.sf.gridarta.plugin.parameter.PluginParameter; -import org.apache.log4j.Category; -import org.apache.log4j.Logger; -import org.jetbrains.annotations.NotNull; - -public class ParameterTypeEditor<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> extends JComboBox { - - private static final long serialVersionUID = 1L; - - /** - * The Logger for printing log messages. - */ - @NotNull - private static final Category LOG = Logger.getLogger(ParameterTypeEditor.class); - - public ParameterTypeEditor(@NotNull final PluginModel<G, A, R> pluginModel, @NotNull final Plugin<G, A, R> plugin, @NotNull final PluginParameter<G, A, R, ?> parameter) { - super(pluginModel.getTypes()); - setSelectedItem(parameter.getParameterType()); - addItemListener(new ItemListener() { - - @Override - public void itemStateChanged(@NotNull final ItemEvent e) { - if (e.getStateChange() == ItemEvent.SELECTED) { - if (!parameter.getParameterType().equals(e.getItem())) { - try { - plugin.convertType(parameter, (String) e.getItem()); - } catch (final NoSuchParameterException ex) { - LOG.warn("Cannot create parameter for type " + e.getItem()); - } - } - } - } - - }); - } - -} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <aki...@us...> - 2014-02-22 08:54:04
|
Revision: 9613 http://sourceforge.net/p/gridarta/code/9613 Author: akirschbaum Date: 2014-02-22 08:53:58 +0000 (Sat, 22 Feb 2014) Log Message: ----------- Do not extend JTextField. Modified Paths: -------------- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java Removed Paths: ------------- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ParameterNameEditor.java Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2014-02-22 07:47:03 UTC (rev 9612) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2014-02-22 08:53:58 UTC (rev 9613) @@ -43,13 +43,14 @@ import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTabbedPane; +import javax.swing.JTextField; import javax.swing.SwingConstants; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import javax.swing.event.DocumentEvent; import javax.swing.event.DocumentListener; +import javax.swing.text.JTextComponent; import net.sf.gridarta.gui.dialog.plugin.parameter.ParameterDescriptionEditor; -import net.sf.gridarta.gui.dialog.plugin.parameter.ParameterNameEditor; import net.sf.gridarta.gui.dialog.plugin.parameter.PluginParameterView; import net.sf.gridarta.gui.dialog.plugin.parameter.PluginParameterViewFactory; import net.sf.gridarta.model.archetype.Archetype; @@ -107,7 +108,7 @@ private final Plugin<G, A, R> plugin; @NotNull - private final Map<PluginParameter<G, A, R, ?>, ParameterNameEditor<G, A, R>> parameterNameEditors = new IdentityHashMap<PluginParameter<G, A, R, ?>, ParameterNameEditor<G, A, R>>(); + private final Map<PluginParameter<G, A, R, ?>, Component> parameterNameEditors = new IdentityHashMap<PluginParameter<G, A, R, ?>, Component>(); @NotNull private final Map<PluginParameter<G, A, R, ?>, ParameterDescriptionEditor<G, A, R>> parameterDescriptionEditors = new IdentityHashMap<PluginParameter<G, A, R, ?>, ParameterDescriptionEditor<G, A, R>>(); @@ -359,7 +360,32 @@ return existingParameterNameEditor; } - final ParameterNameEditor<G, A, R> newParameterNameEditor = new ParameterNameEditor<G, A, R>(parameter); + final JTextComponent newParameterNameEditor = new JTextField(parameter.getName()); + newParameterNameEditor.getDocument().addDocumentListener(new DocumentListener() { + + @Override + public void insertUpdate(@NotNull final DocumentEvent e) { + change(); + } + + @Override + public void removeUpdate(@NotNull final DocumentEvent e) { + change(); + } + + @Override + public void changedUpdate(@NotNull final DocumentEvent e) { + change(); + } + + /** + * Updates the {@code parameter}'s name from the text input field. + */ + private void change() { + parameter.setName(newParameterNameEditor.getText()); + } + + }); parameterNameEditors.put(parameter, newParameterNameEditor); newTableComponent(newParameterNameEditor); return newParameterNameEditor; Deleted: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ParameterNameEditor.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ParameterNameEditor.java 2014-02-22 07:47:03 UTC (rev 9612) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ParameterNameEditor.java 2014-02-22 08:53:58 UTC (rev 9613) @@ -1,61 +0,0 @@ -/* - * Gridarta MMORPG map editor for Crossfire, Daimonin and similar games. - * Copyright (C) 2000-2011 The Gridarta Developers. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ - -package net.sf.gridarta.gui.dialog.plugin.parameter; - -import javax.swing.JTextField; -import javax.swing.event.DocumentEvent; -import javax.swing.event.DocumentListener; -import net.sf.gridarta.model.archetype.Archetype; -import net.sf.gridarta.model.gameobject.GameObject; -import net.sf.gridarta.model.maparchobject.MapArchObject; -import net.sf.gridarta.plugin.parameter.PluginParameter; -import org.jetbrains.annotations.NotNull; - -public class ParameterNameEditor<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> extends JTextField { - - private static final long serialVersionUID = 1L; - - public ParameterNameEditor(@NotNull final PluginParameter<G, A, R, ?> parameter) { - setText(parameter.getName()); - getDocument().addDocumentListener(new DocumentListener() { - - @Override - public void insertUpdate(@NotNull final DocumentEvent e) { - change(); - } - - @Override - public void removeUpdate(@NotNull final DocumentEvent e) { - change(); - } - - @Override - public void changedUpdate(@NotNull final DocumentEvent e) { - change(); - } - - private void change() { - parameter.setName(getText()); - } - - }); - } - -} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <aki...@us...> - 2014-02-22 08:59:52
|
Revision: 9614 http://sourceforge.net/p/gridarta/code/9614 Author: akirschbaum Date: 2014-02-22 08:59:46 +0000 (Sat, 22 Feb 2014) Log Message: ----------- Do not extend JTextField. Modified Paths: -------------- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java Removed Paths: ------------- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ParameterDescriptionEditor.java Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2014-02-22 08:53:58 UTC (rev 9613) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2014-02-22 08:59:46 UTC (rev 9614) @@ -50,7 +50,6 @@ import javax.swing.event.DocumentEvent; import javax.swing.event.DocumentListener; import javax.swing.text.JTextComponent; -import net.sf.gridarta.gui.dialog.plugin.parameter.ParameterDescriptionEditor; import net.sf.gridarta.gui.dialog.plugin.parameter.PluginParameterView; import net.sf.gridarta.gui.dialog.plugin.parameter.PluginParameterViewFactory; import net.sf.gridarta.model.archetype.Archetype; @@ -111,7 +110,7 @@ private final Map<PluginParameter<G, A, R, ?>, Component> parameterNameEditors = new IdentityHashMap<PluginParameter<G, A, R, ?>, Component>(); @NotNull - private final Map<PluginParameter<G, A, R, ?>, ParameterDescriptionEditor<G, A, R>> parameterDescriptionEditors = new IdentityHashMap<PluginParameter<G, A, R, ?>, ParameterDescriptionEditor<G, A, R>>(); + private final Map<PluginParameter<G, A, R, ?>, Component> parameterDescriptionEditors = new IdentityHashMap<PluginParameter<G, A, R, ?>, Component>(); @NotNull private final Map<PluginParameter<G, A, R, ?>, Component> parameterTypeEditors = new IdentityHashMap<PluginParameter<G, A, R, ?>, Component>(); @@ -398,7 +397,31 @@ return existingParameterDescriptionEditor; } - final ParameterDescriptionEditor<G, A, R> newParameterDescriptionEditor = new ParameterDescriptionEditor<G, A, R>(parameter); + final JTextComponent newParameterDescriptionEditor = new JTextField(parameter.getDescription()); + newParameterDescriptionEditor.getDocument().addDocumentListener(new DocumentListener() { + + @Override + public void changedUpdate(@NotNull final DocumentEvent e) { + change(); + } + + @Override + public void insertUpdate(@NotNull final DocumentEvent e) { + change(); + } + + @Override + public void removeUpdate(@NotNull final DocumentEvent e) { + change(); + } + + /** + * Updates the {@code parameter}'s description from the text input field. + */ + private void change() { + parameter.setDescription(newParameterDescriptionEditor.getText()); + } + }); newTableComponent(newParameterDescriptionEditor); parameterDescriptionEditors.put(parameter, newParameterDescriptionEditor); return newParameterDescriptionEditor; Deleted: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ParameterDescriptionEditor.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ParameterDescriptionEditor.java 2014-02-22 08:53:58 UTC (rev 9613) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ParameterDescriptionEditor.java 2014-02-22 08:59:46 UTC (rev 9614) @@ -1,60 +0,0 @@ -/* - * Gridarta MMORPG map editor for Crossfire, Daimonin and similar games. - * Copyright (C) 2000-2011 The Gridarta Developers. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ - -package net.sf.gridarta.gui.dialog.plugin.parameter; - -import javax.swing.JTextField; -import javax.swing.event.DocumentEvent; -import javax.swing.event.DocumentListener; -import net.sf.gridarta.model.archetype.Archetype; -import net.sf.gridarta.model.gameobject.GameObject; -import net.sf.gridarta.model.maparchobject.MapArchObject; -import net.sf.gridarta.plugin.parameter.PluginParameter; -import org.jetbrains.annotations.NotNull; - -public class ParameterDescriptionEditor<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> extends JTextField { - - private static final long serialVersionUID = 1L; - - public ParameterDescriptionEditor(@NotNull final PluginParameter<G, A, R, ?> parameter) { - setText(parameter.getDescription()); - getDocument().addDocumentListener(new DocumentListener() { - - @Override - public void changedUpdate(@NotNull final DocumentEvent e) { - change(); - } - - @Override - public void insertUpdate(@NotNull final DocumentEvent e) { - change(); - } - - @Override - public void removeUpdate(@NotNull final DocumentEvent e) { - change(); - } - - private void change() { - parameter.setDescription(getText()); - } - }); - } - -} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <aki...@us...> - 2014-02-22 09:15:53
|
Revision: 9615 http://sourceforge.net/p/gridarta/code/9615 Author: akirschbaum Date: 2014-02-22 09:15:47 +0000 (Sat, 22 Feb 2014) Log Message: ----------- Remove type parameters from PluginParameterView. Modified Paths: -------------- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginView.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ArchParameterView.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/BooleanParameterView.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/DoubleParameterView.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/IntegerParameterView.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/MapParameterView.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/MapPathParameterView.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/PluginParameterView.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/PluginParameterViewFactory.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/StringParameterView.java Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2014-02-22 08:59:46 UTC (rev 9614) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2014-02-22 09:15:47 UTC (rev 9615) @@ -116,7 +116,7 @@ private final Map<PluginParameter<G, A, R, ?>, Component> parameterTypeEditors = new IdentityHashMap<PluginParameter<G, A, R, ?>, Component>(); @NotNull - private final Map<PluginParameter<G, A, R, ?>, PluginParameterView<G, A, R>> parameterViews = new IdentityHashMap<PluginParameter<G, A, R, ?>, PluginParameterView<G, A, R>>(); + private final Map<PluginParameter<G, A, R, ?>, PluginParameterView> parameterViews = new IdentityHashMap<PluginParameter<G, A, R, ?>, PluginParameterView>(); private int selectedRow = -1; @@ -463,13 +463,13 @@ } @NotNull - private PluginParameterView<G, A, R> getParameterView(@NotNull final PluginParameter<G, A, R, ?> parameter) { - final PluginParameterView<G, A, R> existingPluginParameterView = parameterViews.get(parameter); + private PluginParameterView getParameterView(@NotNull final PluginParameter<G, A, R, ?> parameter) { + final PluginParameterView existingPluginParameterView = parameterViews.get(parameter); if (existingPluginParameterView != null) { return existingPluginParameterView; } - final PluginParameterView<G, A, R> newPluginParameterView = pluginParameterViewFactory.getView(parameterTable, parameter); + final PluginParameterView newPluginParameterView = pluginParameterViewFactory.getView(parameterTable, parameter); newTableComponent(newPluginParameterView.getConfigComponent()); newTableComponent(newPluginParameterView.getValueComponent()); Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginView.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginView.java 2014-02-22 08:59:46 UTC (rev 9614) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginView.java 2014-02-22 09:15:47 UTC (rev 9615) @@ -225,7 +225,7 @@ int i = 0; for (final PluginParameter<G, A, R, ?> parameter : plugin) { final Component name = new JLabel(parameter.getName()); - final PluginParameterView<G, A, R> view = pluginParameterViewFactory.getView(panel, parameter); + final PluginParameterView view = pluginParameterViewFactory.getView(panel, parameter); final JComponent val = view.getValueComponent(); val.setToolTipText(parameter.getDescription()); final GridBagConstraints gn = new GridBagConstraints(0, i, 1, 1, 0.0, 0.0, GridBagConstraints.EAST, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 5, 5); Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ArchParameterView.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ArchParameterView.java 2014-02-22 08:59:46 UTC (rev 9614) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/ArchParameterView.java 2014-02-22 09:15:47 UTC (rev 9615) @@ -38,7 +38,7 @@ /** * A {@link PluginParameterView} for an {@link ArchetypeParameter}. */ -public class ArchParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements PluginParameterView<G, A, R> { +public class ArchParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements PluginParameterView { /** * The component for editing the parameter's value. Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/BooleanParameterView.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/BooleanParameterView.java 2014-02-22 08:59:46 UTC (rev 9614) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/BooleanParameterView.java 2014-02-22 09:15:47 UTC (rev 9615) @@ -35,7 +35,7 @@ /** * A {@link PluginParameterView} for an {@link BooleanParameter}. */ -public class BooleanParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements PluginParameterView<G, A, R> { +public class BooleanParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements PluginParameterView { /** * The component for editing the parameter's value. Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/DoubleParameterView.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/DoubleParameterView.java 2014-02-22 08:59:46 UTC (rev 9614) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/DoubleParameterView.java 2014-02-22 09:15:47 UTC (rev 9615) @@ -38,7 +38,7 @@ /** * A {@link PluginParameterView} for a {@link DoubleParameter}. */ -public class DoubleParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements PluginParameterView<G, A, R> { +public class DoubleParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements PluginParameterView { /** * The {@link DoubleParameter} that is shown. Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/IntegerParameterView.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/IntegerParameterView.java 2014-02-22 08:59:46 UTC (rev 9614) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/IntegerParameterView.java 2014-02-22 09:15:47 UTC (rev 9615) @@ -38,7 +38,7 @@ /** * A {@link PluginParameterView} for an {@link IntegerParameter}. */ -public class IntegerParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements PluginParameterView<G, A, R> { +public class IntegerParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements PluginParameterView { /** * The {@link IntegerParameter} that is shown. Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/MapParameterView.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/MapParameterView.java 2014-02-22 08:59:46 UTC (rev 9614) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/MapParameterView.java 2014-02-22 09:15:47 UTC (rev 9615) @@ -36,7 +36,7 @@ /** * A {@link PluginParameterView} for a {@link MapParameter}. */ -public class MapParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements PluginParameterView<G, A, R> { +public class MapParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements PluginParameterView { /** * The component for editing the parameter's value. Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/MapPathParameterView.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/MapPathParameterView.java 2014-02-22 08:59:46 UTC (rev 9614) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/MapPathParameterView.java 2014-02-22 09:15:47 UTC (rev 9615) @@ -37,7 +37,7 @@ * net.sf.gridarta.plugin.parameter.MapPathParameter}. * @author Andreas Kirschbaum */ -public class MapPathParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements PluginParameterView<G, A, R> { +public class MapPathParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements PluginParameterView { /** * The component for editing the parameter's value. Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/PluginParameterView.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/PluginParameterView.java 2014-02-22 08:59:46 UTC (rev 9614) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/PluginParameterView.java 2014-02-22 09:15:47 UTC (rev 9615) @@ -20,16 +20,13 @@ package net.sf.gridarta.gui.dialog.plugin.parameter; import javax.swing.JComponent; -import net.sf.gridarta.model.archetype.Archetype; -import net.sf.gridarta.model.gameobject.GameObject; -import net.sf.gridarta.model.maparchobject.MapArchObject; import org.jetbrains.annotations.NotNull; /** * Interface for views that display plugin parameters. * @author tchize */ -public interface PluginParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> { +public interface PluginParameterView { /** * Returns a {@link JComponent} for editing the parameter value. In the "run Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/PluginParameterViewFactory.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/PluginParameterViewFactory.java 2014-02-22 08:59:46 UTC (rev 9614) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/PluginParameterViewFactory.java 2014-02-22 09:15:47 UTC (rev 9615) @@ -71,48 +71,48 @@ private JComponent parent; @NotNull - private final PluginParameterVisitor<G, A, R, PluginParameterView<G, A, R>> visitor = new PluginParameterVisitor<G, A, R, PluginParameterView<G, A, R>>() { + private final PluginParameterVisitor<G, A, R, PluginParameterView> visitor = new PluginParameterVisitor<G, A, R, PluginParameterView>() { @NotNull @Override - public PluginParameterView<G, A, R> visit(@NotNull final ArchetypeParameter<G, A, R> parameter) { + public PluginParameterView visit(@NotNull final ArchetypeParameter<G, A, R> parameter) { return new ArchParameterView<G, A, R>(parameter, gameObjectAttributesModel, archetypeSet, objectChooser, faceObjectProviders); } @NotNull @Override - public PluginParameterView<G, A, R> visit(@NotNull final BooleanParameter<G, A, R> parameter) { + public PluginParameterView visit(@NotNull final BooleanParameter<G, A, R> parameter) { return new BooleanParameterView<G, A, R>(parameter); } @NotNull @Override - public PluginParameterView<G, A, R> visit(@NotNull final DoubleParameter<G, A, R> parameter) { + public PluginParameterView visit(@NotNull final DoubleParameter<G, A, R> parameter) { return new DoubleParameterView<G, A, R>(parameter); } @NotNull @Override - public PluginParameterView<G, A, R> visit(@NotNull final IntegerParameter<G, A, R> parameter) { + public PluginParameterView visit(@NotNull final IntegerParameter<G, A, R> parameter) { return new IntegerParameterView<G, A, R>(parameter); } @NotNull @Override - public PluginParameterView<G, A, R> visit(@NotNull final MapParameter<G, A, R> parameter) { + public PluginParameterView visit(@NotNull final MapParameter<G, A, R> parameter) { return new MapParameterView<G, A, R>(parameter, mapManager); } @NotNull @Override - public PluginParameterView<G, A, R> visit(@NotNull final MapPathParameter<G, A, R> parameter) { + public PluginParameterView visit(@NotNull final MapPathParameter<G, A, R> parameter) { assert parent != null; return new MapPathParameterView<G, A, R>(parent, parameter); } @NotNull @Override - public PluginParameterView<G, A, R> visit(@NotNull final StringParameter<G, A, R> parameter) { + public PluginParameterView visit(@NotNull final StringParameter<G, A, R> parameter) { return new StringParameterView<G, A, R>(parameter); } @@ -135,7 +135,7 @@ * @param parent the parent component for showing dialogs */ @NotNull - public PluginParameterView<G, A, R> getView(@NotNull final JComponent parent, @NotNull final PluginParameter<G, A, R, ?> parameter) { + public PluginParameterView getView(@NotNull final JComponent parent, @NotNull final PluginParameter<G, A, R, ?> parameter) { this.parent = parent; try { return parameter.visit(visitor); Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/StringParameterView.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/StringParameterView.java 2014-02-22 08:59:46 UTC (rev 9614) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/StringParameterView.java 2014-02-22 09:15:47 UTC (rev 9615) @@ -34,7 +34,7 @@ /** * A {@link PluginParameterView} for a {@link StringParameter}. */ -public class StringParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements PluginParameterView<G, A, R> { +public class StringParameterView<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements PluginParameterView { /** * The component for editing the parameter's value. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <aki...@us...> - 2014-02-22 09:26:58
|
Revision: 9616 http://sourceforge.net/p/gridarta/code/9616 Author: akirschbaum Date: 2014-02-22 09:26:52 +0000 (Sat, 22 Feb 2014) Log Message: ----------- Rename function name, Modified Paths: -------------- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginView.java trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/PluginParameterViewFactory.java Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2014-02-22 09:15:47 UTC (rev 9615) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2014-02-22 09:26:52 UTC (rev 9616) @@ -469,7 +469,7 @@ return existingPluginParameterView; } - final PluginParameterView newPluginParameterView = pluginParameterViewFactory.getView(parameterTable, parameter); + final PluginParameterView newPluginParameterView = pluginParameterViewFactory.newPluginParameterView(parameterTable, parameter); newTableComponent(newPluginParameterView.getConfigComponent()); newTableComponent(newPluginParameterView.getValueComponent()); Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginView.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginView.java 2014-02-22 09:15:47 UTC (rev 9615) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginView.java 2014-02-22 09:26:52 UTC (rev 9616) @@ -225,7 +225,7 @@ int i = 0; for (final PluginParameter<G, A, R, ?> parameter : plugin) { final Component name = new JLabel(parameter.getName()); - final PluginParameterView view = pluginParameterViewFactory.getView(panel, parameter); + final PluginParameterView view = pluginParameterViewFactory.newPluginParameterView(panel, parameter); final JComponent val = view.getValueComponent(); val.setToolTipText(parameter.getDescription()); final GridBagConstraints gn = new GridBagConstraints(0, i, 1, 1, 0.0, 0.0, GridBagConstraints.EAST, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 5, 5); Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/PluginParameterViewFactory.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/PluginParameterViewFactory.java 2014-02-22 09:15:47 UTC (rev 9615) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/parameter/PluginParameterViewFactory.java 2014-02-22 09:26:52 UTC (rev 9616) @@ -135,7 +135,7 @@ * @param parent the parent component for showing dialogs */ @NotNull - public PluginParameterView getView(@NotNull final JComponent parent, @NotNull final PluginParameter<G, A, R, ?> parameter) { + public PluginParameterView newPluginParameterView(@NotNull final JComponent parent, @NotNull final PluginParameter<G, A, R, ?> parameter) { this.parent = parent; try { return parameter.visit(visitor); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <aki...@us...> - 2014-02-22 10:38:54
|
Revision: 9621 http://sourceforge.net/p/gridarta/code/9621 Author: akirschbaum Date: 2014-02-22 10:38:50 +0000 (Sat, 22 Feb 2014) Log Message: ----------- Extract PluginEditorRow from PluginEditor. Modified Paths: -------------- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java Added Paths: ----------- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditorRow.java Modified: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2014-02-22 10:24:59 UTC (rev 9620) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditor.java 2014-02-22 10:38:50 UTC (rev 9621) @@ -29,28 +29,22 @@ import java.awt.Insets; import java.awt.event.FocusEvent; import java.awt.event.FocusListener; -import java.awt.event.ItemEvent; -import java.awt.event.ItemListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.util.IdentityHashMap; import java.util.Map; import javax.swing.JButton; import javax.swing.JCheckBox; -import javax.swing.JComboBox; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTabbedPane; -import javax.swing.JTextField; import javax.swing.SwingConstants; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import javax.swing.event.DocumentEvent; import javax.swing.event.DocumentListener; -import javax.swing.text.JTextComponent; -import net.sf.gridarta.gui.dialog.plugin.parameter.PluginParameterView; import net.sf.gridarta.gui.dialog.plugin.parameter.PluginParameterViewFactory; import net.sf.gridarta.model.archetype.Archetype; import net.sf.gridarta.model.gameobject.GameObject; @@ -59,14 +53,11 @@ import net.sf.gridarta.plugin.PluginModel; import net.sf.gridarta.plugin.parameter.NoSuchParameterException; import net.sf.gridarta.plugin.parameter.PluginParameter; -import net.sf.gridarta.plugin.parameter.PluginParameterFactory; import net.sf.gridarta.utils.ActionBuilderUtils; import net.sf.gridarta.utils.ResourceIcons; import net.sf.japi.swing.action.ActionBuilder; import net.sf.japi.swing.action.ActionBuilderFactory; import net.sf.japi.swing.action.ActionMethod; -import org.apache.log4j.Category; -import org.apache.log4j.Logger; import org.fife.ui.rsyntaxtextarea.RSyntaxTextArea; import org.fife.ui.rsyntaxtextarea.SyntaxConstants; import org.fife.ui.rtextarea.RTextScrollPane; @@ -75,12 +66,6 @@ public class PluginEditor<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> { /** - * The Logger for printing log messages. - */ - @NotNull - private static final Category LOG = Logger.getLogger(PluginEditor.class); - - /** * Action Builder. */ @NotNull @@ -108,17 +93,8 @@ private final Plugin<G, A, R> plugin; @NotNull - private final Map<PluginParameter<G, A, R, ?>, Component> parameterNameEditors = new IdentityHashMap<PluginParameter<G, A, R, ?>, Component>(); + private final Map<PluginParameter<G, A, R, ?>, PluginEditorRow> rows = new IdentityHashMap<PluginParameter<G, A, R, ?>, PluginEditorRow>(); - @NotNull - private final Map<PluginParameter<G, A, R, ?>, Component> parameterDescriptionEditors = new IdentityHashMap<PluginParameter<G, A, R, ?>, Component>(); - - @NotNull - private final Map<PluginParameter<G, A, R, ?>, Component> parameterTypeEditors = new IdentityHashMap<PluginParameter<G, A, R, ?>, Component>(); - - @NotNull - private final Map<PluginParameter<G, A, R, ?>, PluginParameterView> parameterViews = new IdentityHashMap<PluginParameter<G, A, R, ?>, PluginParameterView>(); - private int selectedRow = -1; @NotNull @@ -348,150 +324,24 @@ panel.repaint(); } - private void newTableComponent(@NotNull final Component c) { - c.addFocusListener(cellFocusListener); - c.addMouseListener(cellMouseListener); - } - - @NotNull - private Component getParameterNameEditor(@NotNull final PluginParameter<G, A, R, ?> parameter) { - final Component existingParameterNameEditor = parameterNameEditors.get(parameter); - if (existingParameterNameEditor != null) { - return existingParameterNameEditor; + private void putRow(@NotNull final GridBagConstraints gbc, @NotNull final PluginParameter<G, A, R, ?> parameter) { + PluginEditorRow row = rows.get(parameter); + if (row == null) { + row = new PluginEditorRow(plugin, parameter, pluginParameterViewFactory, cellMouseListener, cellFocusListener, panel); + rows.put(parameter, row); } - - final JTextComponent newParameterNameEditor = new JTextField(parameter.getName()); - newParameterNameEditor.getDocument().addDocumentListener(new DocumentListener() { - - @Override - public void insertUpdate(@NotNull final DocumentEvent e) { - change(); - } - - @Override - public void removeUpdate(@NotNull final DocumentEvent e) { - change(); - } - - @Override - public void changedUpdate(@NotNull final DocumentEvent e) { - change(); - } - - /** - * Updates the {@code parameter}'s name from the text input field. - */ - private void change() { - parameter.setName(newParameterNameEditor.getText()); - } - - }); - parameterNameEditors.put(parameter, newParameterNameEditor); - newTableComponent(newParameterNameEditor); - return newParameterNameEditor; - } - - @NotNull - private Component getParameterDescriptionEditor(@NotNull final PluginParameter<G, A, R, ?> parameter) { - final Component existingParameterDescriptionEditor = parameterDescriptionEditors.get(parameter); - if (existingParameterDescriptionEditor != null) { - return existingParameterDescriptionEditor; - } - - final JTextComponent newParameterDescriptionEditor = new JTextField(parameter.getDescription()); - newParameterDescriptionEditor.getDocument().addDocumentListener(new DocumentListener() { - - @Override - public void changedUpdate(@NotNull final DocumentEvent e) { - change(); - } - - @Override - public void insertUpdate(@NotNull final DocumentEvent e) { - change(); - } - - @Override - public void removeUpdate(@NotNull final DocumentEvent e) { - change(); - } - - /** - * Updates the {@code parameter}'s description from the text input field. - */ - private void change() { - parameter.setDescription(newParameterDescriptionEditor.getText()); - } - }); - newTableComponent(newParameterDescriptionEditor); - parameterDescriptionEditors.put(parameter, newParameterDescriptionEditor); - return newParameterDescriptionEditor; - } - - @NotNull - private Component getParameterTypeEditor(@NotNull final PluginParameter<G, A, R, ?> parameter) { - final Component existingParameterTypeEditor = parameterTypeEditors.get(parameter); - if (existingParameterTypeEditor != null) { - return existingParameterTypeEditor; - } - - final JComboBox newParameterTypeEditor = new JComboBox(PluginParameterFactory.getTypes()); - newParameterTypeEditor.setSelectedItem(parameter.getParameterType()); - newParameterTypeEditor.addItemListener(new ItemListener() { - - @Override - public void itemStateChanged(@NotNull final ItemEvent e) { - if (e.getStateChange() != ItemEvent.SELECTED) { - return; - } - - final String newParameterType = (String) e.getItem(); - if (parameter.getParameterType().equals(newParameterType)) { - return; - } - - try { - plugin.convertType(parameter, newParameterType); - } catch (final NoSuchParameterException ex) { - LOG.warn("Cannot create parameter for " + ex.getMessage()); - } - } - - }); - parameterTypeEditors.put(parameter, newParameterTypeEditor); - newTableComponent(newParameterTypeEditor); - return newParameterTypeEditor; - } - - @NotNull - private PluginParameterView getParameterView(@NotNull final PluginParameter<G, A, R, ?> parameter) { - final PluginParameterView existingPluginParameterView = parameterViews.get(parameter); - if (existingPluginParameterView != null) { - return existingPluginParameterView; - } - - final PluginParameterView newPluginParameterView = pluginParameterViewFactory.newPluginParameterView(parameterTable, parameter); - - newTableComponent(newPluginParameterView.getConfigComponent()); - newTableComponent(newPluginParameterView.getValueComponent()); - - parameterViews.put(parameter, newPluginParameterView); - return newPluginParameterView; - } - - private void putRow(@NotNull final GridBagConstraints gbc, @NotNull final PluginParameter<G, A, R, ?> parameter) { gbc.gridx = 0; - parameterTable.add(getParameterNameEditor(parameter), gbc); + parameterTable.add(row.getParameterNameEditor(), gbc); gbc.gridx = 1; gbc.weightx = 0.5; - parameterTable.add(getParameterDescriptionEditor(parameter), gbc); + parameterTable.add(row.getParameterDescriptionEditor(), gbc); gbc.gridx = 2; gbc.weightx = 0.1; - parameterTable.add(getParameterTypeEditor(parameter), gbc); + parameterTable.add(row.getParameterTypeEditor(), gbc); gbc.gridx = 3; - parameterTable.add(getParameterView(parameter).getConfigComponent(), gbc); + parameterTable.add(row.getConfigComponent(), gbc); gbc.gridx = 4; - parameterTable.add(getParameterView(parameter).getValueComponent(), gbc); + parameterTable.add(row.getValueComponent(), gbc); } /** Added: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditorRow.java =================================================================== --- trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditorRow.java (rev 0) +++ trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditorRow.java 2014-02-22 10:38:50 UTC (rev 9621) @@ -0,0 +1,251 @@ +/* + * Gridarta MMORPG map editor for Crossfire, Daimonin and similar games. + * Copyright (C) 2000-2011 The Gridarta Developers. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +package net.sf.gridarta.gui.dialog.plugin; + +import java.awt.Component; +import java.awt.event.FocusListener; +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; +import java.awt.event.MouseListener; +import javax.swing.JComboBox; +import javax.swing.JTextField; +import javax.swing.event.DocumentEvent; +import javax.swing.event.DocumentListener; +import javax.swing.text.JTextComponent; +import net.sf.gridarta.gui.dialog.plugin.parameter.PluginParameterView; +import net.sf.gridarta.gui.dialog.plugin.parameter.PluginParameterViewFactory; +import net.sf.gridarta.model.archetype.Archetype; +import net.sf.gridarta.model.gameobject.GameObject; +import net.sf.gridarta.model.maparchobject.MapArchObject; +import net.sf.gridarta.plugin.Plugin; +import net.sf.gridarta.plugin.parameter.NoSuchParameterException; +import net.sf.gridarta.plugin.parameter.PluginParameter; +import net.sf.gridarta.plugin.parameter.PluginParameterFactory; +import org.apache.log4j.Category; +import org.apache.log4j.Logger; +import org.jetbrains.annotations.NotNull; + +/** + * A set of components for editing a {@link PluginParameter} and its + * configuration. + * @author Andreas Kirschbaum + */ +public class PluginEditorRow { + + /** + * The Logger for printing log messages. + */ + @NotNull + private static final Category LOG = Logger.getLogger(PluginEditorRow.class); + + /** + * The {@link MouseListener} that is attached to all editor components. + */ + @NotNull + private final MouseListener mouseListener; + + /** + * The {@link FocusListener} that is attached to all editor components. + */ + @NotNull + private final FocusListener focusListener; + + /** + * The editor component for editing the parameter's name. + */ + @NotNull + private final JTextComponent parameterNameEditor; + + /** + * The editor component for editing the parameter's description. + */ + @NotNull + private final JTextComponent parameterDescriptionEditor; + + /** + * The editor component for editing the parameter's type. + */ + @NotNull + private final JComboBox parameterTypeEditor; + + /** + * The {@link PluginParameterView} instance for the parameter being edited. + */ + @NotNull + private final PluginParameterView pluginParameterView; + + /** + * Creates a new instance. + * @param plugin the plugin the plugin parameter is part of + * @param parameter the parameter to edit + * @param pluginParameterViewFactory the plugin parameter view factory for + * creating plugin parameter view instances + * @param mouseListener the mouse listener that is attached to all editor + * components + * @param focusListener the focus listener that is attached to all editor + * components + * @param parent the parent component for config dialogs + */ + public <G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> PluginEditorRow(@NotNull final Plugin<G, A, R> plugin, @NotNull final PluginParameter<G, A, R, ?> parameter, @NotNull final PluginParameterViewFactory<G, A, R> pluginParameterViewFactory, @NotNull final MouseListener mouseListener, @NotNull final FocusListener focusListener, @NotNull final Component parent) { + this.mouseListener = mouseListener; + this.focusListener = focusListener; + + parameterNameEditor = new JTextField(parameter.getName()); + parameterNameEditor.getDocument().addDocumentListener(new DocumentListener() { + + @Override + public void insertUpdate(@NotNull final DocumentEvent e) { + change(); + } + + @Override + public void removeUpdate(@NotNull final DocumentEvent e) { + change(); + } + + @Override + public void changedUpdate(@NotNull final DocumentEvent e) { + change(); + } + + /** + * Updates the {@code parameter}'s name from the text input field. + */ + private void change() { + parameter.setName(parameterNameEditor.getText()); + } + + }); + attachListeners(parameterNameEditor); + + parameterDescriptionEditor = new JTextField(parameter.getDescription()); + parameterDescriptionEditor.getDocument().addDocumentListener(new DocumentListener() { + + @Override + public void changedUpdate(@NotNull final DocumentEvent e) { + change(); + } + + @Override + public void insertUpdate(@NotNull final DocumentEvent e) { + change(); + } + + @Override + public void removeUpdate(@NotNull final DocumentEvent e) { + change(); + } + + /** + * Updates the {@code parameter}'s description from the text input field. + */ + private void change() { + parameter.setDescription(parameterDescriptionEditor.getText()); + } + }); + attachListeners(parameterDescriptionEditor); + + parameterTypeEditor = new JComboBox(PluginParameterFactory.getTypes()); + parameterTypeEditor.setSelectedItem(parameter.getParameterType()); + parameterTypeEditor.addItemListener(new ItemListener() { + + @Override + public void itemStateChanged(@NotNull final ItemEvent e) { + if (e.getStateChange() != ItemEvent.SELECTED) { + return; + } + + final String newParameterType = (String) e.getItem(); + if (parameter.getParameterType().equals(newParameterType)) { + return; + } + + try { + plugin.convertType(parameter, newParameterType); + } catch (final NoSuchParameterException ex) { + LOG.warn("Cannot create parameter for " + ex.getMessage()); + } + } + + }); + attachListeners(parameterTypeEditor); + + pluginParameterView = pluginParameterViewFactory.newPluginParameterView(parent, parameter); + attachListeners(pluginParameterView.getConfigComponent()); + attachListeners(pluginParameterView.getValueComponent()); + } + + /** + * Returns the editor component for editing the parameter's name. + * @return the editor component + */ + @NotNull + public Component getParameterNameEditor() { + return parameterNameEditor; + } + + /** + * Returns the editor component for editing the parameter's description. + * @return the editor component + */ + @NotNull + public Component getParameterDescriptionEditor() { + return parameterDescriptionEditor; + } + + /** + * Returns the editor component for editing the parameter's type. + * @return the editor component + */ + @NotNull + public Component getParameterTypeEditor() { + return parameterTypeEditor; + } + + /** + * Returns the editor component for editing the parameter's configuration + * parameters. + * @return the editor component + */ + @NotNull + public Component getConfigComponent() { + return pluginParameterView.getConfigComponent(); + } + + /** + * Returns the editor component for editing the parameter's value. + * @return the editor component + */ + @NotNull + public Component getValueComponent() { + return pluginParameterView.getValueComponent(); + } + + /** + * Attaches {@link #focusListener} and {@link #mouseListener} to a {@link + * Component}. + * @param component the component + */ + private void attachListeners(@NotNull final Component component) { + component.addFocusListener(focusListener); + component.addMouseListener(mouseListener); + } + +} Property changes on: trunk/src/gridarta/src/main/java/net/sf/gridarta/gui/dialog/plugin/PluginEditorRow.java ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |