Crossfire JXClient, Trunk
GUIFloorList.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 
37 import java.awt.Image;
38 import org.jetbrains.annotations.NotNull;
39 import org.jetbrains.annotations.Nullable;
40 
45 public class GUIFloorList extends GUIItemList<GUIItemFloor> {
46 
50  private static final long serialVersionUID = 1L;
51 
55  @NotNull
57 
61  @NotNull
63 
67  @NotNull
68  private final String name;
69 
73  private final int cellWidth;
74 
78  private final int cellHeight;
79 
83  @NotNull
84  private final ItemView itemView;
85 
89  @NotNull
90  private final CommandQueue commandQueue;
91 
95  @NotNull
96  private final ItemPainter itemPainter;
97 
101  @NotNull
103 
107  @NotNull
108  private final FacesManager facesManager;
109 
113  @NotNull
114  private final ItemSet itemSet;
115 
119  @NotNull
120  private final Image nextGroupFace;
121 
125  @NotNull
126  private final Image prevGroupFace;
127 
131  @NotNull
132  private final GuiFactory guiFactory;
133 
153  public GUIFloorList(@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 CommandQueue commandQueue, @NotNull final ItemPainter itemPainter, @NotNull final CrossfireServerConnection crossfireServerConnection, @NotNull final FacesManager facesManager, @NotNull final ItemSet itemSet, @NotNull final Image nextGroupFace, @NotNull final Image prevGroupFace, @NotNull final GuiFactory guiFactory) {
155  this.tooltipManager = tooltipManager;
156  this.elementListener = elementListener;
157  this.name = name;
158  this.cellWidth = cellWidth;
159  this.cellHeight = cellHeight;
160  this.itemView = itemView;
161  this.commandQueue = commandQueue;
162  this.itemPainter = itemPainter;
163  this.crossfireServerConnection = crossfireServerConnection;
164  this.facesManager = facesManager;
165  this.itemSet = itemSet;
166  this.nextGroupFace = nextGroupFace;
167  this.prevGroupFace = prevGroupFace;
168  this.guiFactory = guiFactory;
169  }
170 
175  public int getNumLookObjects() {
176  return Math.max(getWidth()/cellWidth, 1)*Math.max(getHeight()/cellHeight, 1);
177  }
178 
179  @Override
180  @NotNull
181  protected GUIItemFloor newItem(final int index) {
183  }
184 
185  @Override
186  public void notifyOpen() {
187  }
188 
189  @Nullable
190  @Override
191  protected String getTooltip(final int index) {
192  final CfItem item = itemView.getItem(index);
193  return item == null ? null : item.getTooltipText();
194  }
195 
196 }
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.commandQueue
final CommandQueue commandQueue
Definition: GUIFloorList.java:90
com.realtime.crossfire.jxclient
com.realtime.crossfire.jxclient.skin.skin
Definition: DefaultJXCSkin.java:23
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.getTooltip
String getTooltip(final int index)
Definition: GUIFloorList.java:191
com.realtime.crossfire.jxclient.gui.label.AbstractLabel
Definition: AbstractLabel.java:43
com.realtime.crossfire.jxclient.gui.item.GUIItemFloor
Definition: GUIItemFloor.java:45
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.itemView
final ItemView itemView
Definition: GUIFloorList.java:84
com.realtime.crossfire.jxclient.server
com.realtime.crossfire.jxclient.gui.list.GUIFloorList
Definition: GUIFloorList.java:45
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.serialVersionUID
static final long serialVersionUID
Definition: GUIFloorList.java:50
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.itemSet
final ItemSet itemSet
Definition: GUIFloorList.java:114
com.realtime.crossfire.jxclient.skin
com.realtime.crossfire.jxclient.gui.label
Definition: AbstractLabel.java:23
com.realtime.crossfire.jxclient.items.ItemSet
Definition: ItemSet.java:44
com.realtime.crossfire.jxclient.skin.skin.GuiFactory
Definition: GuiFactory.java:41
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.GUIFloorList
GUIFloorList(@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 CommandQueue commandQueue, @NotNull final ItemPainter itemPainter, @NotNull final CrossfireServerConnection crossfireServerConnection, @NotNull final FacesManager facesManager, @NotNull final ItemSet itemSet, @NotNull final Image nextGroupFace, @NotNull final Image prevGroupFace, @NotNull final GuiFactory guiFactory)
Definition: GUIFloorList.java:153
com.realtime.crossfire.jxclient.faces
Definition: AbstractFaceQueue.java:23
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.cellHeight
final int cellHeight
Definition: GUIFloorList.java:78
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.tooltipManager
final TooltipManager tooltipManager
Definition: GUIFloorList.java:56
com.realtime.crossfire.jxclient.gui.list.GUIItemList
Definition: GUIItemList.java:46
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.guiFactory
final GuiFactory guiFactory
Definition: GUIFloorList.java:132
com.realtime.crossfire.jxclient.items.CfItem.getTooltipText
String getTooltipText()
Definition: CfItem.java:534
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.prevGroupFace
final Image prevGroupFace
Definition: GUIFloorList.java:126
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.name
final String name
Definition: GUIFloorList.java:68
com.realtime.crossfire.jxclient.server.crossfire.CrossfireServerConnection
Definition: CrossfireServerConnection.java:37
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.nextGroupFace
final Image nextGroupFace
Definition: GUIFloorList.java:120
com.realtime.crossfire.jxclient.gui
com.realtime.crossfire.jxclient.queue.CommandQueue
Definition: CommandQueue.java:38
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.newItem
GUIItemFloor newItem(final int index)
Definition: GUIFloorList.java:181
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.GUIFloorList.itemPainter
final ItemPainter itemPainter
Definition: GUIFloorList.java:96
com.realtime.crossfire.jxclient.gui.list.GUIItemList< GUIItemFloor >::currentItem
final AbstractLabel currentItem
Definition: GUIItemList.java:63
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.cellWidth
final int cellWidth
Definition: GUIFloorList.java:73
com.realtime.crossfire.jxclient.server.crossfire
Definition: AbstractCrossfireServerConnection.java:23
com.realtime.crossfire.jxclient.gui.gui.TooltipManager
Definition: TooltipManager.java:33
com.realtime.crossfire.jxclient.faces.FacesManager
Definition: FacesManager.java:40
com.realtime.crossfire.jxclient.gui.gui
Definition: AbstractGUIElement.java:23
com.realtime.crossfire.jxclient.queue
Definition: CommandQueue.java:23
com.realtime.crossfire
com.realtime
com
com.realtime.crossfire.jxclient.items
Definition: AbstractItemView.java:23
com.realtime.crossfire.jxclient.gui.item
Definition: GUIItem.java:23
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.facesManager
final FacesManager facesManager
Definition: GUIFloorList.java:108
com.realtime.crossfire.jxclient.items.ItemView
Definition: ItemView.java:32
com.realtime.crossfire.jxclient.items.ItemView.getItem
CfItem getItem(int index)
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.getNumLookObjects
int getNumLookObjects()
Definition: GUIFloorList.java:175
com.realtime.crossfire.jxclient.gui.gui.GUIElementListener
Definition: GUIElementListener.java:32
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.notifyOpen
void notifyOpen()
Definition: GUIFloorList.java:186
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.elementListener
final GUIElementListener elementListener
Definition: GUIFloorList.java:62
com.realtime.crossfire.jxclient.gui.list.GUIFloorList.crossfireServerConnection
final CrossfireServerConnection crossfireServerConnection
Definition: GUIFloorList.java:102