Gridarta Editor
MapMenuEntryIcons.java
Go to the documentation of this file.
1
/*
2
* Gridarta MMORPG map editor for Crossfire, Daimonin and similar games.
3
* Copyright (C) 2000-2023 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.dialog.bookmarks;
21
22
import
javax.swing.Icon;
23
import
javax.swing.ImageIcon;
24
import
net
.
sf
.
gridarta
.
gui
.
mapimagecache
.
MapImageCache
;
25
import
net
.
sf
.
gridarta
.
gui
.
mapmenu
.
MapMenuEntry
;
26
import
net
.
sf
.
gridarta
.
gui
.
mapmenu
.
MapMenuEntryDir
;
27
import
net
.
sf
.
gridarta
.
gui
.
mapmenu
.
MapMenuEntryMap
;
28
import
net
.
sf
.
gridarta
.
gui
.
mapmenu
.
MapMenuEntryVisitor
;
29
import
org.jetbrains.annotations.NotNull;
30
import
org.jetbrains.annotations.Nullable;
31
36
public
class
MapMenuEntryIcons
implements
MapMenuEntryVisitor
{
37
41
@NotNull
42
private
final
MapImageCache<?, ?, ?>
mapImageCache
;
43
47
@Nullable
48
private
Icon
icon
;
49
54
public
MapMenuEntryIcons
(@NotNull
final
MapImageCache<?, ?, ?>
mapImageCache
) {
55
this.mapImageCache =
mapImageCache
;
56
}
57
63
@Nullable
64
public
Icon
getIcon
(@NotNull
final
MapMenuEntry
mapMenuEntry) {
65
mapMenuEntry.visit(
this
);
66
final
Icon result =
icon
;
67
icon
=
null
;
68
return
result;
69
}
70
71
@Override
72
public
void
visit
(@NotNull
final
MapMenuEntryDir
mapMenuEntry) {
73
icon
=
null
;
74
}
75
76
@Override
77
public
void
visit
(@NotNull
final
MapMenuEntryMap
mapMenuEntry) {
78
icon
=
new
ImageIcon(
mapImageCache
.
getOrCreatePreview
(mapMenuEntry.getMapFile().getFile()));
79
}
80
81
}
net.sf.gridarta.gui.mapimagecache
Definition:
ImageType.java:20
net.sf.gridarta.gui.dialog.bookmarks.MapMenuEntryIcons.icon
Icon icon
The result icon.
Definition:
MapMenuEntryIcons.java:48
net.sf.gridarta.gui.dialog.bookmarks.MapMenuEntryIcons.MapMenuEntryIcons
MapMenuEntryIcons(@NotNull final MapImageCache<?, ?, ?> mapImageCache)
Creates a new instance.
Definition:
MapMenuEntryIcons.java:54
net.sf.gridarta.gui.mapmenu.MapMenuEntry
Abstract base class for recent and bookmark menu entries.
Definition:
MapMenuEntry.java:29
net.sf.gridarta
Base package of all Gridarta classes.
net.sf.gridarta.gui.dialog.bookmarks.MapMenuEntryIcons.visit
void visit(@NotNull final MapMenuEntryMap mapMenuEntry)
Called for MapMenuEntryMap instances.
Definition:
MapMenuEntryIcons.java:77
net.sf
net.sf.gridarta.gui.dialog.bookmarks.MapMenuEntryIcons
Generates icons for MapMenuEntry instances.
Definition:
MapMenuEntryIcons.java:36
net.sf.gridarta.gui
Graphical User Interface of Gridarta.
net.sf.gridarta.gui.mapimagecache.MapImageCache
Caches icon and preview images for map files.
Definition:
MapImageCache.java:53
net
net.sf.gridarta.gui.mapimagecache.MapImageCache.getOrCreatePreview
Image getOrCreatePreview(@NotNull final File mapFile)
Returns a preview Image for a given map file.
Definition:
MapImageCache.java:226
net.sf.gridarta.gui.dialog.bookmarks.MapMenuEntryIcons.getIcon
Icon getIcon(@NotNull final MapMenuEntry mapMenuEntry)
Returns an Icon for a MapMenuEntry instance.
Definition:
MapMenuEntryIcons.java:64
net.sf.gridarta.gui.mapmenu
Definition:
AbstractMapMenuPreferences.java:20
net.sf.gridarta.gui.dialog.bookmarks.MapMenuEntryIcons.mapImageCache
final MapImageCache<?, ?, ?> mapImageCache
The MapImageCache for looking up icons.
Definition:
MapMenuEntryIcons.java:42
net.sf.gridarta.gui.dialog.bookmarks.MapMenuEntryIcons.visit
void visit(@NotNull final MapMenuEntryDir mapMenuEntry)
Called for MapMenuEntryDir instances.
Definition:
MapMenuEntryIcons.java:72
net.sf.gridarta.gui.mapmenu.MapMenuEntryVisitor
Interface for classes operating on MapMenuEntry instances.
Definition:
MapMenuEntryVisitor.java:28
net.sf.gridarta.gui.mapmenu.MapMenuEntryMap
A MapMenuEntry that represents a map.
Definition:
MapMenuEntryMap.java:29
net.sf.gridarta.gui.mapmenu.MapMenuEntryDir
A MapMenuEntry that represents a directory.
Definition:
MapMenuEntryDir.java:28
src
gridarta
src
main
java
net
sf
gridarta
gui
dialog
bookmarks
MapMenuEntryIcons.java
Generated on Mon Sep 1 2025 00:35:53 for Gridarta Editor by
1.8.17