Crossfire JXClient, Trunk
GUIKnowledgeTypeList.java
Go to the documentation of this file.
1 /*
2  * This file is part of JXClient, the Fullscreen Java Crossfire Client.
3  *
4  * JXClient is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * JXClient is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with JXClient; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
17  *
18  * Copyright (C) 2005-2008 Yann Chachkoff
19  * Copyright (C) 2006-2017,2019-2023 Andreas Kirschbaum
20  * Copyright (C) 2010-2012,2014-2018,2020-2023 Nicolas Weeger
21  */
22 
23 package com.realtime.crossfire.jxclient.gui.list;
24 
35 import org.jetbrains.annotations.NotNull;
36 import org.jetbrains.annotations.Nullable;
37 
41 public class GUIKnowledgeTypeList extends GUIItemList<GUIItemKnowledgeType> {
42 
46  private static final long serialVersionUID = 1L;
47 
51  @NotNull
53 
57  @NotNull
59 
63  @NotNull
64  private final String name;
65 
69  @NotNull
70  private final ItemView itemView;
71 
72  @NotNull
74 
78  @NotNull
79  private final ItemPainter itemPainter;
80 
84  @NotNull
85  private final FacesManager facesManager;
86 
90  @NotNull
91  private final GuiFactory guiFactory;
92 
108  public GUIKnowledgeTypeList(@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 KnowledgeManager knowledgeManager, @NotNull final ItemPainter itemPainter, @NotNull final FacesManager facesManager, @NotNull final GuiFactory guiFactory) {
110  this.tooltipManager = tooltipManager;
111  this.elementListener = elementListener;
112  this.name = name;
113  this.itemView = itemView;
114  this.knowledgeManager = knowledgeManager;
115  this.itemPainter = itemPainter;
116  this.facesManager = facesManager;
117  this.guiFactory = guiFactory;
118  }
119 
120  @Override
121  protected void selectionChanged(final int selectedIndex) {
122  if (knowledgeManager == null) {
123  return;
124  }
125  knowledgeManager.filterType(selectedIndex);
126  super.selectionChanged(selectedIndex);
127  }
128 
129  @Nullable
130  @Override
131  protected String getTooltip(final int index) {
132  final CfItem item = itemView.getItem(index);
133  return item == null ? null : item.getTooltipText();
134  }
135 
136  @NotNull
137  @Override
138  protected GUIItemKnowledgeType newItem(final int index) {
140  }
141 
142  @Override
143  public void notifyOpen() {
144  }
145 
146 }
com.realtime.crossfire.jxclient.knowledge
Definition: KnowledgeItem.java:23
com.realtime.crossfire.jxclient
com.realtime.crossfire.jxclient.skin.skin
Definition: DefaultJXCSkin.java:23
com.realtime.crossfire.jxclient.gui.label.AbstractLabel
Definition: AbstractLabel.java:43
com.realtime.crossfire.jxclient.skin
com.realtime.crossfire.jxclient.gui.item.GUIItemKnowledgeType
Definition: GUIItemKnowledgeType.java:42
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList.tooltipManager
final TooltipManager tooltipManager
Definition: GUIKnowledgeTypeList.java:52
com.realtime.crossfire.jxclient.gui.label
Definition: AbstractLabel.java:23
com.realtime.crossfire.jxclient.skin.skin.GuiFactory
Definition: GuiFactory.java:41
com.realtime.crossfire.jxclient.faces
Definition: AbstractFaceQueue.java:23
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList.serialVersionUID
static final long serialVersionUID
Definition: GUIKnowledgeTypeList.java:46
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList.itemPainter
final ItemPainter itemPainter
Definition: GUIKnowledgeTypeList.java:79
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList.notifyOpen
void notifyOpen()
Definition: GUIKnowledgeTypeList.java:143
com.realtime.crossfire.jxclient.gui.list.GUIItemList
Definition: GUIItemList.java:46
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList.GUIKnowledgeTypeList
GUIKnowledgeTypeList(@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 KnowledgeManager knowledgeManager, @NotNull final ItemPainter itemPainter, @NotNull final FacesManager facesManager, @NotNull final GuiFactory guiFactory)
Definition: GUIKnowledgeTypeList.java:108
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList.itemView
final ItemView itemView
Definition: GUIKnowledgeTypeList.java:70
com.realtime.crossfire.jxclient.items.CfItem.getTooltipText
String getTooltipText()
Definition: CfItem.java:534
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList.facesManager
final FacesManager facesManager
Definition: GUIKnowledgeTypeList.java:85
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList.guiFactory
final GuiFactory guiFactory
Definition: GUIKnowledgeTypeList.java:91
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList
Definition: GUIKnowledgeTypeList.java:41
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList.newItem
GUIItemKnowledgeType newItem(final int index)
Definition: GUIKnowledgeTypeList.java:138
com.realtime.crossfire.jxclient.gui
com.realtime.crossfire.jxclient.gui.item.ItemPainter
Definition: ItemPainter.java:41
com.realtime.crossfire.jxclient.items.CfItem
Definition: CfItem.java:37
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList.name
final String name
Definition: GUIKnowledgeTypeList.java:64
com.realtime.crossfire.jxclient.gui.list.GUIItemList< GUIItemKnowledgeType >::currentItem
final AbstractLabel currentItem
Definition: GUIItemList.java:63
com.realtime.crossfire.jxclient.gui.gui.TooltipManager
Definition: TooltipManager.java:33
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList.knowledgeManager
final KnowledgeManager knowledgeManager
Definition: GUIKnowledgeTypeList.java:73
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList.elementListener
final GUIElementListener elementListener
Definition: GUIKnowledgeTypeList.java:58
com.realtime.crossfire.jxclient.faces.FacesManager
Definition: FacesManager.java:40
com.realtime.crossfire.jxclient.gui.gui
Definition: AbstractGUIElement.java:23
com.realtime.crossfire.jxclient.knowledge.KnowledgeManager.filterType
void filterType(final int index)
Definition: KnowledgeManager.java:201
com.realtime.crossfire
com.realtime
com.realtime.crossfire.jxclient.knowledge.KnowledgeManager
Definition: KnowledgeManager.java:19
com
com.realtime.crossfire.jxclient.items
Definition: AbstractItemView.java:23
com.realtime.crossfire.jxclient.gui.item
Definition: GUIItem.java:23
com.realtime.crossfire.jxclient.items.ItemView
Definition: ItemView.java:32
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList.getTooltip
String getTooltip(final int index)
Definition: GUIKnowledgeTypeList.java:131
com.realtime.crossfire.jxclient.items.ItemView.getItem
CfItem getItem(int index)
com.realtime.crossfire.jxclient.gui.gui.GUIElementListener
Definition: GUIElementListener.java:32
com.realtime.crossfire.jxclient.gui.list.GUIKnowledgeTypeList.selectionChanged
void selectionChanged(final int selectedIndex)
Definition: GUIKnowledgeTypeList.java:121