00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 package com.realtime.crossfire.jxclient.gui.list;
00022
00023 import com.realtime.crossfire.jxclient.gui.gui.GUIElementListener;
00024 import com.realtime.crossfire.jxclient.gui.gui.TooltipManager;
00025 import com.realtime.crossfire.jxclient.gui.item.GUIItemItemFactory;
00026 import com.realtime.crossfire.jxclient.gui.label.AbstractLabel;
00027 import com.realtime.crossfire.jxclient.items.ItemView;
00028 import com.realtime.crossfire.jxclient.quests.Quest;
00029 import com.realtime.crossfire.jxclient.quests.QuestsManager;
00030 import org.jetbrains.annotations.NotNull;
00031 import org.jetbrains.annotations.Nullable;
00032
00037 public class GUIQuestList extends GUIItemList {
00038
00042 private static final long serialVersionUID = 1L;
00043
00047 @NotNull
00048 private final QuestsManager questsManager;
00049
00063 public GUIQuestList(@NotNull final TooltipManager tooltipManager, @NotNull final GUIElementListener elementListener, @NotNull final String name, final int cellWidth, final int cellHeight, @NotNull final ItemView itemView, @Nullable final AbstractLabel currentItem, @NotNull final GUIItemItemFactory itemItemFactory, @NotNull final QuestsManager questsManager) {
00064 super(tooltipManager, elementListener, name, cellWidth, cellHeight, itemView, currentItem, itemItemFactory);
00065 this.questsManager = questsManager;
00066 }
00067
00071 @Override
00072 protected void updateTooltip(final int index, final int x, final int y, final int w, final int h) {
00073 final Quest quest = questsManager.getQuest(index) ;
00074 if (quest == null) {
00075 setTooltipText(null, x, y, w, h);
00076 return;
00077 }
00078
00079 setTooltipText(quest.getTooltipText());
00080 }
00081
00082 }