From: <aki...@us...> - 2008-08-21 20:42:55
|
Revision: 4954 http://gridarta.svn.sourceforge.net/gridarta/?rev=4954&view=rev Author: akirschbaum Date: 2008-08-21 20:42:52 +0000 (Thu, 21 Aug 2008) Log Message: ----------- Move code to common code base. Modified Paths: -------------- trunk/crossfire/src/cfeditor/CMainControl.java trunk/daimonin/src/daieditor/CMainControl.java trunk/src/app/net/sf/gridarta/AbstractMainControl.java trunk/src/test/net/sf/gridarta/map/DefaultMapModelTest.java Modified: trunk/crossfire/src/cfeditor/CMainControl.java =================================================================== --- trunk/crossfire/src/cfeditor/CMainControl.java 2008-08-21 20:35:10 UTC (rev 4953) +++ trunk/crossfire/src/cfeditor/CMainControl.java 2008-08-21 20:42:52 UTC (rev 4954) @@ -153,9 +153,6 @@ /** The current script controller. */ private final ScriptController scriptControl; - /** The map validators. */ - private final DelegatingMapValidator<GameObject, MapArchObject, Archetype> validators; - /** Preferences default for auto validation. */ private static final boolean PREFS_VALIDATOR_AUTO_DEFAULT = true; @@ -181,7 +178,6 @@ */ public CMainControl(@NotNull final GridartaObjectsFactory<GameObject, MapArchObject, Archetype, CMapViewBasic> gridartaObjectsFactory) { super(gridartaObjectsFactory, new DefaultRendererFactory(), "cfeditor", new GlobalSettingsImpl(), new AnimationObjects(), new FaceObjects(), new DefaultMapControlFactory(gridartaObjectsFactory), false, CResourceLoader.getHomeFile("thumbnails"), null); - validators = createMapValidators(); mainActions = new MainActions<GameObject, MapArchObject, Archetype, CMapViewBasic>(replaceDialogManager, this, validators, editTypes, archetypeSet, copyBuffer, animationObjects, ACTION_FACTORY, faceObjects, objectChooser, mapManager, mapViewManager); GameObject.setArchetypeSet(archetypeSet, SystemIcons.getNofaceTileIcon()); gameObjectAttributesDialogFactory.setParent(mainView); @@ -329,11 +325,10 @@ return new NewMapDialogFactory<GameObject, MapArchObject, Archetype, CMapViewBasic>(this, mapManager, gridartaObjectsFactory, IGUIConstants.DEF_MAPSIZE, IGUIConstants.DEF_MAPSIZE, 0, false, false, IGUIConstants.DEF_PICKMAP_WIDTH, IGUIConstants.DEF_PICKMAP_HEIGHT); } - /** - * Initializes the map validators. - * @return A MapValidator that delegates to other map validators. - */ - private static DelegatingMapValidator<GameObject, MapArchObject, Archetype> createMapValidators() { + /** {@inheritDoc} */ + @NotNull + @Override + protected DelegatingMapValidator<GameObject, MapArchObject, Archetype> createMapValidators() { final DelegatingMapValidator<GameObject, MapArchObject, Archetype> mapValidators = new DelegatingMapValidator<GameObject, MapArchObject, Archetype>(); final AttributeRangeChecker<GameObject, MapArchObject, Archetype> attributeRangeChecker = new AttributeRangeChecker<GameObject, MapArchObject, Archetype>(); // make sure sustenance is [-20..20]; amulet of Sustenance is +15 so +20 should be safe Modified: trunk/daimonin/src/daieditor/CMainControl.java =================================================================== --- trunk/daimonin/src/daieditor/CMainControl.java 2008-08-21 20:35:10 UTC (rev 4953) +++ trunk/daimonin/src/daieditor/CMainControl.java 2008-08-21 20:42:52 UTC (rev 4954) @@ -201,9 +201,6 @@ /** Server Control Component. */ private ProcessRunner controlServer; - /** The map validators. */ - private final DelegatingMapValidator<GameObject, MapArchObject, Archetype> validators; - /** Preferences default for auto validation. */ private static final boolean PREFS_VALIDATOR_AUTO_DEFAULT = false; @@ -241,7 +238,6 @@ */ public CMainControl(@NotNull final GridartaObjectsFactory<GameObject, MapArchObject, Archetype, CMapViewBasic> gridartaObjectsFactory) { super(gridartaObjectsFactory, new DefaultRendererFactory(), "daieditor", new GlobalSettingsImpl(), new AnimationObjects(), new FaceObjects(), new DefaultMapControlFactory(gridartaObjectsFactory), true, null, GUIUtils.getSysIcon(IGUIConstants.TILE_NORTH)); - validators = createMapValidators(); mainActions = new MainActions<GameObject, MapArchObject, Archetype, CMapViewBasic>(replaceDialogManager, this, validators, editTypes, archetypeSet, copyBuffer, animationObjects, ACTION_FACTORY, faceObjects, objectChooser, mapManager, mapViewManager); GameObject.setAnimationObjects(animationObjects, SystemIcons.getNofaceTileIcon()); gameObjectAttributesDialogFactory.setParent(mainView); @@ -405,11 +401,10 @@ return new NewMapDialogFactory<GameObject, MapArchObject, Archetype, CMapViewBasic>(this, mapManager, gridartaObjectsFactory, IGUIConstants.DEF_MAPSIZE, IGUIConstants.DEF_MAPSIZE, IGUIConstants.DEF_MAPDIFFICULTY, true, true, IGUIConstants.DEF_PICKMAP_WIDTH, IGUIConstants.DEF_PICKMAP_HEIGHT); } - /** - * Initializes the map validators. - * @return A MapValidator that delegates to other map validators. - */ - private DelegatingMapValidator<GameObject, MapArchObject, Archetype> createMapValidators() { + /** {@inheritDoc} */ + @NotNull + @Override + protected DelegatingMapValidator<GameObject, MapArchObject, Archetype> createMapValidators() { final DelegatingMapValidator<GameObject, MapArchObject, Archetype> mapValidators = new DelegatingMapValidator<GameObject, MapArchObject, Archetype>(); final CustomTypeChecker<GameObject, MapArchObject, Archetype> customTypeChecker = new CustomTypeChecker<GameObject, MapArchObject, Archetype>(); customTypeChecker.addIgnore(Archetype.TYPE_MOB, Archetype.TYPE_SPAWN_POINT_MOB, Archetype.TYPE_SPAWN_POINT); Modified: trunk/src/app/net/sf/gridarta/AbstractMainControl.java =================================================================== --- trunk/src/app/net/sf/gridarta/AbstractMainControl.java 2008-08-21 20:35:10 UTC (rev 4953) +++ trunk/src/app/net/sf/gridarta/AbstractMainControl.java 2008-08-21 20:42:52 UTC (rev 4954) @@ -63,6 +63,7 @@ import net.sf.gridarta.map.MapArchObject; import net.sf.gridarta.map.MapControl; import net.sf.gridarta.map.MapControlFactory; +import net.sf.gridarta.map.validation.DelegatingMapValidator; import net.sf.gridarta.textedit.scripteditor.ScriptEditControlInstance; import net.sf.gridarta.updater.UpdaterManager; import net.sf.japi.swing.ActionFactory; @@ -199,6 +200,9 @@ @NotNull protected final SelectedSquareView<G, A, R, V> selectedSquareView; + /** The map validators. */ + protected final DelegatingMapValidator<G, A, R> validators; + /** * Creates a new instance. * @param gridartaObjectsFactory the gridarta objects factory @@ -251,9 +255,17 @@ selectedSquareView = selectedSquareControl.getSelectedSquareView(); new MapCursorControl<G, A, R, V>(key, gameObjectAttributesDialogFactory, mapManager, mapViewManager, selectedSquareControl, selectedSquareView); replaceDialogManager.setObjectChooser(objectChooser); + validators = createMapValidators(); } /** + * Initializes the map validators. + * @return A MapValidator that delegates to other map validators. + */ + @NotNull + protected abstract DelegatingMapValidator<G, A, R> createMapValidators(); + + /** * Creates a new {@link NewMapDialogFactory} instance. * @param mapManager the map manager instance * @param gridartaObjectsFactory the gridarta objects factory instance Modified: trunk/src/test/net/sf/gridarta/map/DefaultMapModelTest.java =================================================================== --- trunk/src/test/net/sf/gridarta/map/DefaultMapModelTest.java 2008-08-21 20:35:10 UTC (rev 4953) +++ trunk/src/test/net/sf/gridarta/map/DefaultMapModelTest.java 2008-08-21 20:42:52 UTC (rev 4954) @@ -87,6 +87,7 @@ import net.sf.gridarta.map.MapModelEvent; import net.sf.gridarta.map.MapModelListener; import net.sf.gridarta.map.MapSquare; +import net.sf.gridarta.map.validation.DelegatingMapValidator; import net.sf.japi.swing.misc.Progress; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -491,6 +492,13 @@ throw new AssertionError(); } + /** {@inheritDoc} */ + @NotNull + @Override + protected DelegatingMapValidator<TestGameObject, TestMapArchObject, TestArchetype> createMapValidators() { + throw new AssertionError(); + } + } /** This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |