From: <aki...@us...> - 2008-08-21 18:09:29
|
Revision: 4939 http://gridarta.svn.sourceforge.net/gridarta/?rev=4939&view=rev Author: akirschbaum Date: 2008-08-21 18:09:34 +0000 (Thu, 21 Aug 2008) Log Message: ----------- Remove dependency NewPickmapDialog -> GridartaObjectsFactory. Modified Paths: -------------- trunk/crossfire/src/cfeditor/map/DefaultMapControlFactory.java trunk/daimonin/src/daieditor/map/DefaultMapControlFactory.java trunk/src/app/net/sf/gridarta/gui/newmap/NewMapDialogFactory.java trunk/src/app/net/sf/gridarta/gui/newmap/NewPickmapDialog.java trunk/src/app/net/sf/gridarta/gui/pickmapchooser/PickmapChooserControl.java trunk/src/app/net/sf/gridarta/map/MapControlFactory.java trunk/src/test/net/sf/gridarta/map/DefaultMapModelTest.java Modified: trunk/crossfire/src/cfeditor/map/DefaultMapControlFactory.java =================================================================== --- trunk/crossfire/src/cfeditor/map/DefaultMapControlFactory.java 2008-08-21 17:51:37 UTC (rev 4938) +++ trunk/crossfire/src/cfeditor/map/DefaultMapControlFactory.java 2008-08-21 18:09:34 UTC (rev 4939) @@ -29,6 +29,7 @@ import net.sf.gridarta.GridartaObjectsFactory; import net.sf.gridarta.MapActions; import net.sf.gridarta.MapImageCache; +import net.sf.gridarta.Size2D; import net.sf.gridarta.gameobject.match.GameObjectMatcher; import net.sf.gridarta.gui.archetypechooser.ArchetypeChooserModel; import net.sf.gridarta.gui.map.RendererFactory; @@ -126,6 +127,19 @@ /** {@inheritDoc} */ @NotNull + public MapControl<GameObject, MapArchObject, Archetype, CMapViewBasic> newPickmapControl(@NotNull final Component parent, @NotNull final Size2D mapSize, @NotNull final String pickmapName, @NotNull final File file) { + final MapArchObject mapArchObject = gridartaObjectsFactory.newMapArchObject(true); + mapArchObject.setMapSize(mapSize); + mapArchObject.setMapName(pickmapName); + final MapControl<GameObject, MapArchObject, Archetype, CMapViewBasic> mapControl = new DefaultMapControl<GameObject, MapArchObject, Archetype, CMapViewBasic>(gridartaObjectsFactory, rendererFactory, parent, autojoinLists, mapImageCache, null, mapArchObject, true, exitTypeGameObjectMatcher, archetypeChooserModel, mapActions); + mapControl.setMapFile(file); + mapControl.setMapFileName(file.getPath()); + mapControl.resetModified(); + return mapControl; + } + + /** {@inheritDoc} */ + @NotNull public MapControl<GameObject, MapArchObject, Archetype, CMapViewBasic> newPickmapControl(@NotNull final Component parent, @Nullable final List<GameObject> objects, @NotNull final MapArchObject mapArchObject, @NotNull final File file) { final MapControl<GameObject, MapArchObject, Archetype, CMapViewBasic> mapControl = new DefaultMapControl<GameObject, MapArchObject, Archetype, CMapViewBasic>(gridartaObjectsFactory, rendererFactory, parent, autojoinLists, mapImageCache, objects, mapArchObject, true, exitTypeGameObjectMatcher, archetypeChooserModel, mapActions); mapControl.setMapFile(file); Modified: trunk/daimonin/src/daieditor/map/DefaultMapControlFactory.java =================================================================== --- trunk/daimonin/src/daieditor/map/DefaultMapControlFactory.java 2008-08-21 17:51:37 UTC (rev 4938) +++ trunk/daimonin/src/daieditor/map/DefaultMapControlFactory.java 2008-08-21 18:09:34 UTC (rev 4939) @@ -29,6 +29,7 @@ import net.sf.gridarta.GridartaObjectsFactory; import net.sf.gridarta.MapActions; import net.sf.gridarta.MapImageCache; +import net.sf.gridarta.Size2D; import net.sf.gridarta.gameobject.match.GameObjectMatcher; import net.sf.gridarta.gui.archetypechooser.ArchetypeChooserModel; import net.sf.gridarta.gui.map.RendererFactory; @@ -126,6 +127,20 @@ /** {@inheritDoc} */ @NotNull + public MapControl<GameObject, MapArchObject, Archetype, CMapViewBasic> newPickmapControl(@NotNull final Component parent, @NotNull final Size2D mapSize, @NotNull final String pickmapName, @NotNull final File file) { + final MapArchObject mapArchObject = gridartaObjectsFactory.newMapArchObject(true); + mapArchObject.setMapSize(mapSize); + mapArchObject.setMapName(pickmapName); + mapArchObject.setDifficulty(1); + final MapControl<GameObject, MapArchObject, Archetype, CMapViewBasic> mapControl = new DefaultMapControl<GameObject, MapArchObject, Archetype, CMapViewBasic>(gridartaObjectsFactory, rendererFactory, parent, autojoinLists, mapImageCache, null, mapArchObject, true, exitTypeGameObjectMatcher, archetypeChooserModel, mapActions); + mapControl.setMapFile(file); + mapControl.setMapFileName(file.getPath()); + mapControl.resetModified(); + return mapControl; + } + + /** {@inheritDoc} */ + @NotNull public MapControl<GameObject, MapArchObject, Archetype, CMapViewBasic> newPickmapControl(@NotNull final Component parent, @Nullable final List<GameObject> objects, @NotNull final MapArchObject mapArchObject, @NotNull final File file) { mapArchObject.setDifficulty(1); final MapControl<GameObject, MapArchObject, Archetype, CMapViewBasic> mapControl = new DefaultMapControl<GameObject, MapArchObject, Archetype, CMapViewBasic>(gridartaObjectsFactory, rendererFactory, parent, autojoinLists, mapImageCache, objects, mapArchObject, true, exitTypeGameObjectMatcher, archetypeChooserModel, mapActions); Modified: trunk/src/app/net/sf/gridarta/gui/newmap/NewMapDialogFactory.java =================================================================== --- trunk/src/app/net/sf/gridarta/gui/newmap/NewMapDialogFactory.java 2008-08-21 17:51:37 UTC (rev 4938) +++ trunk/src/app/net/sf/gridarta/gui/newmap/NewMapDialogFactory.java 2008-08-21 18:09:34 UTC (rev 4939) @@ -120,7 +120,7 @@ /** Shows a dialog for creating a new pickmap. */ public void showNewPickmapDialog() { - new NewPickmapDialog<G, A, R, V>(mainControl, gridartaObjectsFactory, mainControl.getMainView(), defaultPickmapWidth, defaultPickmapHeight, pickmapChooserControl); + new NewPickmapDialog<G, A, R, V>(mainControl, mainControl.getMainView(), defaultPickmapWidth, defaultPickmapHeight, pickmapChooserControl); } /** Modified: trunk/src/app/net/sf/gridarta/gui/newmap/NewPickmapDialog.java =================================================================== --- trunk/src/app/net/sf/gridarta/gui/newmap/NewPickmapDialog.java 2008-08-21 17:51:37 UTC (rev 4938) +++ trunk/src/app/net/sf/gridarta/gui/newmap/NewPickmapDialog.java 2008-08-21 18:09:34 UTC (rev 4939) @@ -26,7 +26,6 @@ import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; -import net.sf.gridarta.GridartaObjectsFactory; import net.sf.gridarta.MainControl; import net.sf.gridarta.Size2D; import net.sf.gridarta.gameobject.Archetype; @@ -36,7 +35,6 @@ import net.sf.gridarta.gui.pickmapchooser.PickmapChooserControl; import net.sf.gridarta.map.MapArchObject; import net.sf.japi.swing.ActionFactory; -import org.jetbrains.annotations.NotNull; /** * Dialog to create a new pickmap file. @@ -53,12 +51,6 @@ /** The controller of this new level dialog view. */ private final MainControl<G, A, R, V> mainControl; - /** - * The gridarta objects factory instance. - */ - @NotNull - private final GridartaObjectsFactory<G, A, R, V> gridartaObjectsFactory; - /** The pickmap chooser control. */ private final PickmapChooserControl<G, A, R, V> pickmapChooserControl; @@ -71,16 +63,14 @@ /** * Creates a "new pickmap" dialog. * @param mainControl the controller of this dialog. - * @param gridartaObjectsFactory the gridarta objects factory instance * @param parentComponent the parent component of this dialog * @param defaultWidth The default width for new maps. * @param defaultHeight The default height for new maps. * @param pickmapChooserControl the pickmap chooser control */ - public NewPickmapDialog(final MainControl<G, A, R, V> mainControl, @NotNull final GridartaObjectsFactory<G, A, R, V> gridartaObjectsFactory, final Component parentComponent, final int defaultWidth, final int defaultHeight, final PickmapChooserControl<G, A, R, V> pickmapChooserControl) { + public NewPickmapDialog(final MainControl<G, A, R, V> mainControl, final Component parentComponent, final int defaultWidth, final int defaultHeight, final PickmapChooserControl<G, A, R, V> pickmapChooserControl) { super(false, defaultWidth, defaultHeight); this.mainControl = mainControl; - this.gridartaObjectsFactory = gridartaObjectsFactory; this.pickmapChooserControl = pickmapChooserControl; init1(parentComponent, ACTION_FACTORY.getString("newPickmap.title")); init2(); @@ -109,14 +99,10 @@ /** {@inheritDoc} */ @Override protected boolean createNew() { - // Create a new level from scratch - final A mapArchObject = gridartaObjectsFactory.newMapArchObject(true); - final Size2D mapSize = getMapSize(); if (mapSize == null) { return false; } - mapArchObject.setMapSize(mapSize); // the map maker must enter a name -- both for maps and pickmaps final String pickmapName = mapNameField.getText(); @@ -127,7 +113,7 @@ } try { - pickmapChooserControl.newPickmap(mapArchObject, pickmapName); + pickmapChooserControl.newPickmap(mapSize, pickmapName); } catch (final DuplicatePickmapException ex) { ACTION_FACTORY.showMessageDialog(this, "pickmapExists", pickmapName); return false; Modified: trunk/src/app/net/sf/gridarta/gui/pickmapchooser/PickmapChooserControl.java =================================================================== --- trunk/src/app/net/sf/gridarta/gui/pickmapchooser/PickmapChooserControl.java 2008-08-21 17:51:37 UTC (rev 4938) +++ trunk/src/app/net/sf/gridarta/gui/pickmapchooser/PickmapChooserControl.java 2008-08-21 18:09:34 UTC (rev 4939) @@ -34,6 +34,7 @@ import net.sf.gridarta.MainControl; import net.sf.gridarta.MapManager; import net.sf.gridarta.MapManagerListener; +import net.sf.gridarta.Size2D; import net.sf.gridarta.gameobject.Archetype; import net.sf.gridarta.gameobject.GameObject; import net.sf.gridarta.gui.map.MapViewBasic; @@ -224,12 +225,12 @@ /** * Add a new pickmap. - * @param mapArchObject the map arch object of the pickmap + * @param mapSize the pickmap size in tiles * @param pickmapName the name of the pickmap * @throws IOException if an I/O error occurs * @throws DuplicatePickmapException if the pickmap name is not unique */ - public void newPickmap(final A mapArchObject, final String pickmapName) throws DuplicatePickmapException, IOException { + public void newPickmap(@NotNull final Size2D mapSize, @NotNull final String pickmapName) throws DuplicatePickmapException, IOException { final Folder<G, A, R, V> activeFolder = view.getActiveFolder(); if (activeFolder == null) { return; @@ -260,8 +261,7 @@ } } - mapArchObject.setMapName(pickmapName); - final MapControl<G, A, R, V> mapControl = mapControlFactory.newPickmapControl(mainControl.getMainView(), null, mapArchObject, mapFile); + final MapControl<G, A, R, V> mapControl = mapControlFactory.newPickmapControl(mainControl.getMainView(), mapSize, pickmapName, mapFile); mapControl.save(); final Pickmap<G, A, R, V> pickmap; Modified: trunk/src/app/net/sf/gridarta/map/MapControlFactory.java =================================================================== --- trunk/src/app/net/sf/gridarta/map/MapControlFactory.java 2008-08-21 17:51:37 UTC (rev 4938) +++ trunk/src/app/net/sf/gridarta/map/MapControlFactory.java 2008-08-21 18:09:34 UTC (rev 4939) @@ -23,6 +23,7 @@ import java.io.File; import java.io.IOException; import java.util.List; +import net.sf.gridarta.Size2D; import net.sf.gridarta.gameobject.Archetype; import net.sf.gridarta.gameobject.GameObject; import net.sf.gridarta.gui.map.MapViewBasic; @@ -50,6 +51,17 @@ /** * Create a new pickmap map control instance. * @param parent the parent component for error messages + * @param mapSize the pickmap size in tiles + * @param pickmapName the pickmap name + * @param file the associated file + * @return the new pickmap map control instance + */ + @NotNull + MapControl<G, A, R, V> newPickmapControl(@NotNull Component parent, @NotNull Size2D mapSize, @NotNull String pickmapName, @NotNull File file); + + /** + * Create a new pickmap map control instance. + * @param parent the parent component for error messages * @param objects the objects to insert into the new pickmap * @param mapArchObject the map arch object to use for the new pickmap * @param file the associated file Modified: trunk/src/test/net/sf/gridarta/map/DefaultMapModelTest.java =================================================================== --- trunk/src/test/net/sf/gridarta/map/DefaultMapModelTest.java 2008-08-21 17:51:37 UTC (rev 4938) +++ trunk/src/test/net/sf/gridarta/map/DefaultMapModelTest.java 2008-08-21 18:09:34 UTC (rev 4939) @@ -1125,9 +1125,16 @@ /** {@inheritDoc} */ @NotNull + public MapControl<TestGameObject, TestMapArchObject, TestArchetype, TestMapViewBasic> newPickmapControl(@NotNull final Component parent, @NotNull final Size2D mapSize, @NotNull final String pickmapName, @NotNull final File file) { + throw new AssertionError(); + } + + /** {@inheritDoc} */ + @NotNull public MapControl<TestGameObject, TestMapArchObject, TestArchetype, TestMapViewBasic> newPickmapControl(@NotNull final Component parent, @Nullable final List<TestGameObject> objects, @NotNull final TestMapArchObject mapArchObject, @NotNull final File file) { throw new AssertionError(); } } + } // class DefaultMapModelTest This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |