Gridarta Editor
PickmapChooserControl.java
Go to the documentation of this file.
1 /*
2  * Gridarta MMORPG map editor for Crossfire, Daimonin and similar games.
3  * Copyright (C) 2000-2015 The Gridarta Developers.
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License along
16  * with this program; if not, write to the Free Software Foundation, Inc.,
17  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18  */
19 
20 package net.sf.gridarta.gui.panel.pickmapchooser;
21 
22 import java.awt.Component;
23 import java.io.File;
24 import java.io.IOException;
25 import java.util.Collection;
26 import java.util.Collections;
27 import java.util.HashSet;
28 import java.util.List;
29 import java.util.Set;
30 import javax.swing.Action;
31 import javax.swing.JOptionPane;
32 import javax.swing.JPopupMenu;
33 import javax.swing.event.ChangeEvent;
34 import javax.swing.event.ChangeListener;
59 import net.sf.gridarta.utils.Size2D;
60 import net.sf.japi.swing.action.ActionBuilder;
61 import net.sf.japi.swing.action.ActionBuilderFactory;
62 import net.sf.japi.swing.action.ActionMethod;
63 import org.apache.log4j.Category;
64 import org.apache.log4j.Logger;
65 import org.jetbrains.annotations.NotNull;
66 import org.jetbrains.annotations.Nullable;
67 
74 public class PickmapChooserControl<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R>> implements EditorAction, ObjectChooserTab<G, A, R> {
75 
79  @NotNull
80  private static final Category LOG = Logger.getLogger(PickmapChooserControl.class);
81 
85  @NotNull
86  private static final ActionBuilder ACTION_BUILDER = ActionBuilderFactory.getInstance().getActionBuilder("net.sf.gridarta");
87 
91  @NotNull
93 
97  @NotNull
99 
103  @NotNull
105 
109  @NotNull
111 
115  @NotNull
117 
121  @NotNull
123 
127  @NotNull
129 
133  @Nullable
134  private Action aAddNewPickmap;
135 
139  @Nullable
140  private Action aOpenPickmapMap;
141 
145  @Nullable
146  private Action aDeletePickmap;
147 
151  @Nullable
152  private Action aSavePickmap;
153 
157  @Nullable
158  private Action aRevertPickmap;
159 
163  @NotNull
164  private final Component parent;
165 
169  @Nullable
171 
175  @Nullable
177 
181  private boolean active;
182 
186  @NotNull
188 
189  @Override
190  public void saved(@NotNull final DefaultMapControl<G, A, R> mapControl) {
191  /*
192  * If we open a pickmap in the editor, is handled as normal map.
193  * to find out its original a pickmap we check the file name.
194  */
195  reloadPickmap(mapControl.getMapModel().getMapFile().getFile());
196  }
197 
198  };
199 
204  @NotNull
206 
207  @Override
208  public void mapSizeChanged(@NotNull final Size2D newSize) {
209  // ignore
210  }
211 
212  @Override
213  public void mapSquaresChanged(@NotNull final Set<MapSquare<G, A, R>> mapSquares) {
214  // ignore
215  }
216 
217  @Override
218  public void mapObjectsChanged(@NotNull final Set<G> gameObjects, @NotNull final Set<G> transientGameObjects) {
219  // ignore
220  }
221 
222  @Override
223  public void errorsChanged(@NotNull final ErrorCollector<G, A, R> errors) {
224  // ignore
225  }
226 
227  @Override
228  public void mapFileChanged(@Nullable final MapFile oldMapFile) {
229  // ignore
230  }
231 
232  @Override
233  public void modifiedChanged() {
234  refresh();
235  }
236 
237  };
238 
242  @NotNull
244 
245  @Override
246  public void activePickmapChanged(@Nullable final PickmapState<G, A, R> pickmapState) {
247  setCurrentPickmap(pickmapState);
248  }
249 
250  @Override
251  public void pickmapReverted(@NotNull final PickmapState<G, A, R> pickmapState) {
252  setCurrentPickmap(pickmapState);
253  }
254 
255  @Override
256  public void pickmapModifiedChanged(final int index, @NotNull final PickmapState<G, A, R> pickmapState) {
257  // ignore
258  }
259 
260  };
261 
265  @NotNull
266  private final ChangeListener changeListener = new ChangeListener() {
267 
268  @Override
269  public void stateChanged(final ChangeEvent e) {
270  final PickmapState<G, A, R> pickmapState = getSelectedPickmap();
271  final MapControl<G, A, R> mapControl = pickmapState == null ? null : pickmapState.getPickmap();
272  if (mapControl != null) {
274  }
276  }
277 
278  };
279 
283  @NotNull
285 
286  @Override
287  public void currentMapChanged(@Nullable final MapControl<G, A, R> mapControl) {
288  // ignore
289  }
290 
291  @Override
292  public void mapCreated(@NotNull final MapControl<G, A, R> mapControl, final boolean interactive) {
293  if (!mapControl.isPickmap()) {
294  mapControl.addMapControlListener(mapControlListener);
295  }
296  }
297 
298  @Override
299  public void mapClosing(@NotNull final MapControl<G, A, R> mapControl) {
300  // ignore
301  }
302 
303  @Override
304  public void mapClosed(@NotNull final MapControl<G, A, R> mapControl) {
305  if (!mapControl.isPickmap()) {
306  mapControl.removeMapControlListener(mapControlListener);
307  }
308  }
309 
310  };
311 
316  @NotNull
318 
319  @Override
320  public void lockedChanged(final boolean locked) {
321  refresh();
322  }
323 
324  };
325 
338  public PickmapChooserControl(@NotNull final PickmapChooserModel<G, A, R> pickmapChooserModel, @NotNull final PickmapSettings pickmapSettings, @NotNull final NewMapDialogFactory<G, A, R> newMapDialogFactory, @NotNull final MapFolderTree<G, A, R> mapFolderTree, @NotNull final MapManager<G, A, R> mapManager, @NotNull final Component parent, @NotNull final MapViewsManager<G, A, R> mapViewsManager, @NotNull final FileControl<G, A, R> fileControl, @NotNull final PickmapChooserView<G, A, R> pickmapChooserView) {
339  this.pickmapChooserModel = pickmapChooserModel;
340  this.pickmapSettings = pickmapSettings;
341  this.mapFolderTree = mapFolderTree;
342  this.parent = parent;
343  this.newMapDialogFactory = newMapDialogFactory;
344  this.mapViewsManager = mapViewsManager;
345  this.fileControl = fileControl;
346  ACTION_BUILDER.createToggles(true, this, "lockAllPickmaps");
348  view = pickmapChooserView;
350  mapManager.addMapManagerListener(mapManagerListener);
352  }
353 
358  public void setPopupMenu(@NotNull final JPopupMenu popupMenu) {
359  view.setPopupMenu(popupMenu);
360  }
361 
366  private void reloadPickmap(@NotNull final File file) {
367  final PickmapState<G, A, R> pickmapState = pickmapChooserModel.getPickmap(file);
368  if (pickmapState != null) {
369  try {
370  pickmapState.revert();
371  } catch (final IOException ex) {
372  LOG.warn("cannot reload pickmap " + pickmapState.getFile() + ": " + ex.getMessage());
373  }
374  }
375  }
376 
381  @ActionMethod
382  public boolean isLockAllPickmaps() {
383  return pickmapSettings.isLocked();
384  }
385 
386  @Nullable
387  @Override
388  public G getSelection() {
390  if (pickmap == null) {
391  return null;
392  }
393 
394  final MapView<G, A, R> mapView = mapViewsManager.getMapViewFrame(pickmap);
395  return mapView == null ? null : mapView.getSelectedGameObject();
396  }
397 
402  public boolean canExit() {
403  final Collection<MapControl<G, A, R>> unsavedPickmaps = new HashSet<>();
404  mapFolderTree.getUnsavedPickmaps(unsavedPickmaps);
405  for (final MapControl<G, A, R> pickmap : unsavedPickmaps) {
406  final int result = ACTION_BUILDER.showConfirmDialog(parent, JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.WARNING_MESSAGE, "pickmapConfirmSaveChanges", pickmap.getMapModel().getMapArchObject().getMapName());
407  if (result == JOptionPane.YES_OPTION) {
408  try {
409  pickmap.save();
410  } catch (final IOException e) {
411  ACTION_BUILDER.showMessageDialog(parent, "encodeMapFile", pickmap.getMapModel().getMapFile(), e.getMessage());
412  return false;
413  }
414  if (pickmap.getMapModel().isModified()) {
415  return false;
416  }
417  } else if (result == JOptionPane.CANCEL_OPTION || result == JOptionPane.CLOSED_OPTION) {
418  return false;
419  }
420  }
421  return true;
422  }
423 
428  @Nullable
430  final int selectedIndex = view.getSelectedIndex();
431  if (selectedIndex == -1) {
432  return null;
433  }
434  try {
435  return pickmapChooserModel.get(selectedIndex);
436  } catch (final IndexOutOfBoundsException ignored) {
437  return null;
438  }
439  }
440 
441  @NotNull
442  @Override
443  public Component getComponent() {
444  return view.getPickmapPanel();
445  }
446 
447  @Override
448  public void setActive(final boolean active) {
449  if (this.active == active) {
450  return;
451  }
452 
453  this.active = active;
454  refresh();
455  }
456 
457  @Override
458  public boolean isMatching(@NotNull final G gameObject) {
459  for (final G selection : getSelections()) {
460  if (gameObject.isEqual(selection)) {
461  return true;
462  }
463  }
464  return false;
465  }
466 
467  @NotNull
468  @Override
469  public List<G> getSelections() {
471  if (pickmap == null) {
472  return Collections.emptyList();
473  }
474 
475  final MapView<G, A, R> mapView = mapViewsManager.getMapViewFrame(pickmap);
476  return mapView == null ? Collections.emptyList() : mapView.getSelectedGameObjects();
477  }
478 
479  @NotNull
480  @Override
481  public String getTitle() {
482  return ActionBuilderUtils.getString(ACTION_BUILDER, "objectChooser.pickmapsTabTitle");
483  }
484 
488  @ActionMethod
489  public void addNewPickmap() {
490  doAddNewPickmap(true);
491  }
492 
496  @ActionMethod
497  public void openPickmapMap() {
498  doOpenPickmapMap(true);
499  }
500 
504  @ActionMethod
505  public void deletePickmap() {
506  doDeletePickmap(true);
507  }
508 
512  @ActionMethod
513  public void savePickmap() {
514  doSavePickmap(true);
515  }
516 
521  @ActionMethod
522  public void revertPickmap() {
523  doRevertPickmap(true);
524  }
525 
531  @Nullable
533  return active && !pickmapSettings.isLocked() ? currentPickmapState : null;
534  }
535 
541  final MapControl<G, A, R> pickmapControl = currentPickmapState == null ? null : currentPickmapState.getPickmap();
542  if (this.currentPickmapState == currentPickmapState && currentPickmapControl == pickmapControl) {
543  return;
544  }
545 
546  if (currentPickmapControl != null) {
549  }
550 
551  this.currentPickmapState = currentPickmapState;
552  currentPickmapControl = pickmapControl;
553 
554  if (currentPickmapControl != null) {
557  }
558 
559  refresh();
560  }
561 
566  @ActionMethod
567  public void setLockAllPickmaps(final boolean lockAllPickmaps) {
568  pickmapSettings.setLocked(lockAllPickmaps);
569  }
570 
574  private void refresh() {
575  if (aAddNewPickmap != null) {
576  aAddNewPickmap.setEnabled(doAddNewPickmap(false));
577  }
578  if (aOpenPickmapMap != null) {
579  aOpenPickmapMap.setEnabled(doOpenPickmapMap(false));
580  }
581  if (aDeletePickmap != null) {
582  aDeletePickmap.setEnabled(doDeletePickmap(false));
583  }
584  if (aSavePickmap != null) {
585  aSavePickmap.setEnabled(doSavePickmap(false));
586  }
587  if (aRevertPickmap != null) {
588  aRevertPickmap.setEnabled(doRevertPickmap(false));
589  }
590  }
591 
597  private boolean doAddNewPickmap(final boolean performAction) {
598  if (pickmapSettings.isLocked()) {
599  return false;
600  }
601 
602  if (performAction) {
604  }
605 
606  return true;
607  }
608 
614  private boolean doOpenPickmapMap(final boolean performAction) {
615  final PickmapState<G, A, R> pickmapState = getOpenPickmapMap();
616  if (pickmapState == null) {
617  return false;
618  }
619 
620  if (performAction) {
621  final File file = pickmapState.getFile();
622  try {
623  mapViewsManager.openMapFileWithView(file, null, null);
624  } catch (final IOException ex) {
625  fileControl.reportLoadError(file, ex.getMessage());
626  return false;
627  }
628  }
629 
630  return true;
631  }
632 
638  private boolean doDeletePickmap(final boolean performAction) {
639  if (pickmapSettings.isLocked() || !active) {
640  return false;
641  }
642 
643  final PickmapState<G, A, R> pickmapState = currentPickmapState;
644  if (pickmapState == null) {
645  return false;
646  }
647 
648  if (performAction) {
649  if (!ACTION_BUILDER.showQuestionDialog(parent, "confirmDeletePickmap", pickmapState.getFile().getName())) {
650  return false;
651  }
652 
653  pickmapState.remove(true);
654  }
655 
656  return true;
657  }
658 
664  private boolean doSavePickmap(final boolean performAction) {
665  if (pickmapSettings.isLocked() || !active) {
666  return false;
667  }
668 
670  return false;
671  }
672 
673  final PickmapState<G, A, R> pickmapState = currentPickmapState;
674  if (pickmapState == null) {
675  return false;
676  }
677 
678  if (performAction) {
679  try {
680  pickmapState.save();
681  } catch (final IOException e) {
682  ACTION_BUILDER.showMessageDialog(parent, "encodeMapFile", pickmapState, e.getMessage());
683  return false;
684  }
685  }
686 
687  return true;
688  }
689 
695  private boolean doRevertPickmap(final boolean performAction) {
696  if (pickmapSettings.isLocked() || !active) {
697  return false;
698  }
699 
700  final PickmapState<G, A, R> pickmapState = currentPickmapState;
701  if (pickmapState == null) {
702  return false;
703  }
704 
705  final File mapFileFile = pickmapState.getFile();
706  if (currentPickmapControl == null || !currentPickmapControl.getMapModel().isModified() || !mapFileFile.exists()) {
707  return false;
708  }
709 
710  final MapControl<G, A, R> mapControl = pickmapState.getPickmap();
711  if (mapControl == null) {
712  return false;
713  }
714 
715  final MapModel<G, A, R> mapModel = mapControl.getMapModel();
716  final MapFile mapControlMapFile = mapModel.getMapFile();
717  if (mapControlMapFile == null) {
718  return false;
719  }
720 
721  if (performAction) {
722  if (!mapControlMapFile.getFile().exists()) {
723  ACTION_BUILDER.showMessageDialog(parent, "revertPickmapGone", mapControlMapFile);
724  return false;
725  }
726 
727  if (mapModel.isModified() && !ACTION_BUILDER.showQuestionDialog(parent, "confirmRevertPickmap", mapFileFile.getName())) {
728  return false;
729  }
730 
731  try {
732  pickmapState.revert();
733  } catch (final IOException ex) {
734  ACTION_BUILDER.showMessageDialog(null/*XXX:parent*/, "pickmapIOError", mapFileFile.getName(), ex.getMessage());
735  return false;
736  }
737  }
738 
739  return true;
740  }
741 
742  @Override
743  public void setAction(@NotNull final Action action, @NotNull final String name) {
744  switch (name) {
745  case "addNewPickmap":
746  aAddNewPickmap = action;
747  break;
748 
749  case "openPickmapMap":
750  aOpenPickmapMap = action;
751  break;
752 
753  case "deletePickmap":
754  aDeletePickmap = action;
755  break;
756 
757  case "savePickmap":
758  aSavePickmap = action;
759  break;
760 
761  case "revertPickmap":
762  aRevertPickmap = action;
763  break;
764 
765  default:
766  throw new IllegalArgumentException("unsupported action name: " + name);
767  }
768  refresh();
769  }
770 
771 }
net.sf.gridarta.model.mapmanager
Definition: AbstractMapManager.java:20
net.sf.gridarta.model.mapmodel.MapModel
Definition: MapModel.java:75
net.sf.gridarta.gui.panel
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.PickmapChooserControl
PickmapChooserControl(@NotNull final PickmapChooserModel< G, A, R > pickmapChooserModel, @NotNull final PickmapSettings pickmapSettings, @NotNull final NewMapDialogFactory< G, A, R > newMapDialogFactory, @NotNull final MapFolderTree< G, A, R > mapFolderTree, @NotNull final MapManager< G, A, R > mapManager, @NotNull final Component parent, @NotNull final MapViewsManager< G, A, R > mapViewsManager, @NotNull final FileControl< G, A, R > fileControl, @NotNull final PickmapChooserView< G, A, R > pickmapChooserView)
Definition: PickmapChooserControl.java:338
net.sf.gridarta.gui.map.mapview.MapView.getSelectedGameObjects
List< G > getSelectedGameObjects()
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserView< G, A, R >
net.sf.gridarta.gui.mapfiles.PickmapState.getFile
File getFile()
Definition: PickmapState.java:139
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.getOpenPickmapMap
PickmapState< G, A, R > getOpenPickmapMap()
Definition: PickmapChooserControl.java:532
net.sf.gridarta.model.mapmanager.MapManager
Definition: MapManager.java:37
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.getSelections
List< G > getSelections()
Definition: PickmapChooserControl.java:469
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.aRevertPickmap
Action aRevertPickmap
Definition: PickmapChooserControl.java:158
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserModel.get
PickmapState< G, A, R > get(final int index)
Definition: PickmapChooserModel.java:160
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserView.setPopupMenu
void setPopupMenu(@NotNull final JPopupMenu popupMenu)
Definition: PickmapChooserView.java:219
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.setActive
void setActive(final boolean active)
Definition: PickmapChooserControl.java:448
net.sf.gridarta
net.sf.gridarta.model.mapcursor.MapCursor.deactivate
final void deactivate()
Definition: MapCursor.java:355
net.sf.gridarta.gui.panel.objectchooser.ObjectChooserTab
Definition: ObjectChooserTab.java:35
net.sf.gridarta.model.mapmodel.MapSquare
Definition: MapSquare.java:45
net.sf.gridarta.gui.mapfiles.PickmapState.revert
void revert()
Definition: PickmapState.java:238
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserModel.getPickmap
PickmapState< G, A, R > getPickmap(@NotNull final File file)
Definition: PickmapChooserModel.java:122
net.sf.gridarta.gui.mapfiles.MapFolderTree
Definition: MapFolderTree.java:42
net.sf.gridarta.model.pickmapsettings.PickmapSettingsListener
Definition: PickmapSettingsListener.java:29
net.sf
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.parent
final Component parent
Definition: PickmapChooserControl.java:164
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.mapViewsManager
final MapViewsManager< G, A, R > mapViewsManager
Definition: PickmapChooserControl.java:122
net.sf.gridarta.model.mapmanager.FileControl
Definition: FileControl.java:30
net.sf.gridarta.model.mapmanager.MapManagerListener
Definition: MapManagerListener.java:42
net.sf.gridarta.model.mapmodel
Definition: AboveFloorInsertionMode.java:20
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.view
final PickmapChooserView< G, A, R > view
Definition: PickmapChooserControl.java:104
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserModelListener< G, A, R >
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.pickmapChooserModelListener
final PickmapChooserModelListener< G, A, R > pickmapChooserModelListener
Definition: PickmapChooserControl.java:243
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.doOpenPickmapMap
boolean doOpenPickmapMap(final boolean performAction)
Definition: PickmapChooserControl.java:614
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserModel.fireActivePickmapChanged
void fireActivePickmapChanged(@Nullable final PickmapState< G, A, R > pickmapState)
Definition: PickmapChooserModel.java:197
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.changeListener
final ChangeListener changeListener
Definition: PickmapChooserControl.java:266
net.sf.gridarta.gui.mapfiles.PickmapState.remove
void remove(final boolean deleteFile)
Definition: PickmapState.java:217
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.addNewPickmap
void addNewPickmap()
Definition: PickmapChooserControl.java:489
net.sf.gridarta.gui.map.mapview.MapView.getSelectedGameObject
G getSelectedGameObject()
net.sf.gridarta.model.archetype
Definition: AbstractArchetype.java:20
net.sf.gridarta.model.mapmanager.FileControl.reportLoadError
void reportLoadError(@Nullable File file, @NotNull String message)
net.sf.gridarta.model.gameobject.GameObject
Definition: GameObject.java:36
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.setLockAllPickmaps
void setLockAllPickmaps(final boolean lockAllPickmaps)
Definition: PickmapChooserControl.java:567
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.LOG
static final Category LOG
Definition: PickmapChooserControl.java:80
net.sf.gridarta.model.mapcontrol
Definition: DefaultMapControl.java:20
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.savePickmap
void savePickmap()
Definition: PickmapChooserControl.java:513
net.sf.gridarta.model.mapmodel.MapModel.addMapModelListener
void addMapModelListener(@NotNull MapModelListener< G, A, R > listener)
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.doAddNewPickmap
boolean doAddNewPickmap(final boolean performAction)
Definition: PickmapChooserControl.java:597
net.sf.gridarta.model.mapmodel.MapModel.isModified
boolean isModified()
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.mapControlListener
final MapControlListener< G, A, R > mapControlListener
Definition: PickmapChooserControl.java:187
net.sf.gridarta.gui
net.sf.gridarta.gui.map.mapview.MapView.getMapCursor
MapCursor< G, A, R > getMapCursor()
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.doSavePickmap
boolean doSavePickmap(final boolean performAction)
Definition: PickmapChooserControl.java:664
net.sf.gridarta.gui.mapfiles.PickmapState.save
void save()
Definition: PickmapState.java:226
net.sf.gridarta.gui.panel.objectchooser
Definition: DefaultObjectChooser.java:20
net.sf.gridarta.model.pickmapsettings.PickmapSettings.setLocked
void setLocked(boolean locked)
net.sf.gridarta.model.gameobject
Definition: AbstractGameObject.java:20
net.sf.gridarta.gui.dialog.newmap.NewMapDialogFactory.showNewPickmapDialog
void showNewPickmapDialog()
Definition: NewMapDialogFactory.java:150
net
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.doDeletePickmap
boolean doDeletePickmap(final boolean performAction)
Definition: PickmapChooserControl.java:638
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.getTitle
String getTitle()
Definition: PickmapChooserControl.java:481
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.aAddNewPickmap
Action aAddNewPickmap
Definition: PickmapChooserControl.java:134
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.mapFolderTree
final MapFolderTree< G, A, R > mapFolderTree
Definition: PickmapChooserControl.java:110
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.currentPickmapState
PickmapState< G, A, R > currentPickmapState
Definition: PickmapChooserControl.java:170
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.canExit
boolean canExit()
Definition: PickmapChooserControl.java:402
net.sf.gridarta.model.mapmodel.MapModel.removeMapModelListener
void removeMapModelListener(@NotNull MapModelListener< G, A, R > listener)
net.sf.gridarta.model.maparchobject.MapArchObject
Definition: MapArchObject.java:40
net.sf.gridarta.gui.map.mapview
Definition: AbstractMapView.java:20
net.sf.gridarta.model.mapmodel.MapFile.getFile
File getFile()
Definition: MapFile.java:102
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.getSelectedPickmap
PickmapState< G, A, R > getSelectedPickmap()
Definition: PickmapChooserControl.java:429
net.sf.gridarta.gui.dialog.newmap
Definition: AbstractMapsizeNewMapDialog.java:20
net.sf.gridarta.model.validation.ErrorCollector
Definition: ErrorCollector.java:33
net.sf.gridarta.gui.dialog.newmap.NewMapDialogFactory
Definition: NewMapDialogFactory.java:39
net.sf.gridarta.gui.map.mapview.MapView
Definition: MapView.java:43
net.sf.gridarta.model.pickmapsettings.PickmapSettings.isLocked
boolean isLocked()
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.currentPickmapControl
MapControl< G, A, R > currentPickmapControl
Definition: PickmapChooserControl.java:176
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.revertPickmap
void revertPickmap()
Definition: PickmapChooserControl.java:522
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserView.getSelectedIndex
int getSelectedIndex()
Definition: PickmapChooserView.java:313
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserModel< G, A, R >
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.refresh
void refresh()
Definition: PickmapChooserControl.java:574
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.doRevertPickmap
boolean doRevertPickmap(final boolean performAction)
Definition: PickmapChooserControl.java:695
net.sf.gridarta.model.validation
Definition: AbstractValidator.java:20
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.isMatching
boolean isMatching(@NotNull final G gameObject)
Definition: PickmapChooserControl.java:458
net.sf.gridarta.utils.ActionBuilderUtils.getString
static String getString(@NotNull final ActionBuilder actionBuilder, @NotNull final String key, @NotNull final String defaultValue)
Definition: ActionBuilderUtils.java:71
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.aOpenPickmapMap
Action aOpenPickmapMap
Definition: PickmapChooserControl.java:140
net.sf.gridarta.gui.dialog
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.aSavePickmap
Action aSavePickmap
Definition: PickmapChooserControl.java:152
net.sf.gridarta.model.mapmodel.MapFile
Definition: MapFile.java:31
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserView.getPickmapPanel
Component getPickmapPanel()
Definition: PickmapChooserView.java:305
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.setPopupMenu
void setPopupMenu(@NotNull final JPopupMenu popupMenu)
Definition: PickmapChooserControl.java:358
net.sf.gridarta.gui.mapfiles.PickmapState
Definition: PickmapState.java:45
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.mapModelListener
final MapModelListener< G, A, R > mapModelListener
Definition: PickmapChooserControl.java:205
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.aDeletePickmap
Action aDeletePickmap
Definition: PickmapChooserControl.java:146
net.sf.gridarta.model.mapmodel.MapModelListener
Definition: MapModelListener.java:36
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserModel.addPickmapChooserListener
void addPickmapChooserListener(@NotNull final PickmapChooserModelListener< G, A, R > pickmapChooserModelListener)
Definition: PickmapChooserModel.java:179
net.sf.gridarta.model.mapcontrol.MapControl.addMapControlListener
void addMapControlListener(@NotNull MapControlListener< G, A, R > listener)
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.pickmapChooserModel
final PickmapChooserModel< G, A, R > pickmapChooserModel
Definition: PickmapChooserControl.java:92
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.newMapDialogFactory
final NewMapDialogFactory< G, A, R > newMapDialogFactory
Definition: PickmapChooserControl.java:116
net.sf.gridarta.model.pickmapsettings.PickmapSettings.addPickmapSettingsListener
void addPickmapSettingsListener(@NotNull PickmapSettingsListener listener)
net.sf.gridarta.model
net.sf.gridarta.model.archetype.Archetype
Definition: Archetype.java:41
net.sf.gridarta.gui.mapfiles.MapFolderTree.getUnsavedPickmaps
void getUnsavedPickmaps(@NotNull final Collection< MapControl< G, A, R >> unsavedMaps)
Definition: MapFolderTree.java:204
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.getComponent
Component getComponent()
Definition: PickmapChooserControl.java:443
net.sf.gridarta.gui.map
Definition: AbstractPerMapDialogManager.java:20
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.pickmapSettingsListener
final PickmapSettingsListener pickmapSettingsListener
Definition: PickmapChooserControl.java:317
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserView.addChangeListener
void addChangeListener(@NotNull final ChangeListener changeListener)
Definition: PickmapChooserView.java:228
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.reloadPickmap
void reloadPickmap(@NotNull final File file)
Definition: PickmapChooserControl.java:366
net.sf.gridarta.model.pickmapsettings
Definition: AbstractPickmapSettings.java:20
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.active
boolean active
Definition: PickmapChooserControl.java:181
net.sf.gridarta.model.mapcontrol.MapControl
Definition: MapControl.java:35
net.sf.gridarta.model.mapcontrol.MapControlListener
Definition: MapControlListener.java:33
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.isLockAllPickmaps
boolean isLockAllPickmaps()
Definition: PickmapChooserControl.java:382
net.sf.gridarta.model.mapcontrol.MapControl.removeMapControlListener
void removeMapControlListener(@NotNull MapControlListener< G, A, R > listener)
net.sf.gridarta.utils.ActionBuilderUtils
Definition: ActionBuilderUtils.java:31
net.sf.gridarta.model.mapcontrol.MapControl.getMapModel
MapModel< G, A, R > getMapModel()
net.sf.gridarta.model.maparchobject
Definition: AbstractMapArchObject.java:20
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.openPickmapMap
void openPickmapMap()
Definition: PickmapChooserControl.java:497
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.deletePickmap
void deletePickmap()
Definition: PickmapChooserControl.java:505
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.getSelection
G getSelection()
Definition: PickmapChooserControl.java:388
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.fileControl
final FileControl< G, A, R > fileControl
Definition: PickmapChooserControl.java:128
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.setAction
void setAction(@NotNull final Action action, @NotNull final String name)
Definition: PickmapChooserControl.java:743
net.sf.gridarta.model.mapcontrol.DefaultMapControl
Definition: DefaultMapControl.java:44
net.sf.gridarta.gui.map.mapview.MapViewsManager.openMapFileWithView
MapView< G, A, R > openMapFileWithView(@NotNull final MapFile mapFile, @Nullable final Point viewPosition)
Definition: MapViewsManager.java:333
net.sf.gridarta.model.mapmodel.MapModel.getMapFile
MapFile getMapFile()
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl
Definition: PickmapChooserControl.java:74
net.sf.gridarta.utils.EditorAction
Definition: EditorAction.java:29
net.sf.gridarta.gui.map.mapview.MapViewsManager
Definition: MapViewsManager.java:47
net.sf.gridarta.utils.Size2D
Definition: Size2D.java:30
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.mapManagerListener
final MapManagerListener< G, A, R > mapManagerListener
Definition: PickmapChooserControl.java:284
net.sf.gridarta.utils
Definition: ActionBuilderUtils.java:20
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.setCurrentPickmap
void setCurrentPickmap(@Nullable final PickmapState< G, A, R > currentPickmapState)
Definition: PickmapChooserControl.java:540
net.sf.gridarta.model.pickmapsettings.PickmapSettings
Definition: PickmapSettings.java:28
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.ACTION_BUILDER
static final ActionBuilder ACTION_BUILDER
Definition: PickmapChooserControl.java:86
net.sf.gridarta.gui.map.mapview.MapViewsManager.getMapViewFrame
MapView< G, A, R > getMapViewFrame(@NotNull final MapControl< G, A, R > mapControl)
Definition: MapViewsManager.java:208
net.sf.gridarta.gui.mapfiles.PickmapState.getPickmap
MapControl< G, A, R > getPickmap()
Definition: PickmapState.java:150
net.sf.gridarta.gui.panel.pickmapchooser.PickmapChooserControl.pickmapSettings
final PickmapSettings pickmapSettings
Definition: PickmapChooserControl.java:98
net.sf.gridarta.gui.mapfiles
Definition: DuplicateMapFolderException.java:20