# Uses of Class jrummikub.model.Stone
Date: 2011-05-10

## Uses of Class
jrummikub.model.Stone

Packages that use Stone
jrummikub.control
jrummikub.model
jrummikub.view
jrummikub.view.impl

Uses of Stone in jrummikub.control

Methods in jrummikub.control that return types with arguments of type Stone
`(package private) static java.util.Set<Stone>` `RoundControl.tableDifference(ITable oldTable, ITable newTable)`

Method parameters in jrummikub.control with type arguments of type Stone
`int` `TurnControl.HandStonePositionComparator.compare(Pair<Stone,Position> pair1, Pair<Stone,Position> pair2)`
`int` `TurnControl.HandStonePositionComparator.compare(Pair<Stone,Position> pair1, Pair<Stone,Position> pair2)`

Uses of Stone in jrummikub.model

Fields in jrummikub.model with type parameters of type Stone
`(package private) java.util.List<Stone>` `StoneHeap.heap`

Methods in jrummikub.model that return Stone
`Stone` `StoneHeap.drawStone()` Removes random `Stone` from the heap and returns it
`Stone` `StoneSet.get(int i)` Returns the i-th stone of the set (starting with 0)

Methods in jrummikub.model that return types with arguments of type Stone
`java.util.List<Stone>` `StoneHeap.drawStones(int number)` Removes several `Stone`s from the heap and returns them
`java.util.Iterator<Stone>` `StoneSet.iterator()`

Methods in jrummikub.model with parameters of type Stone
`StoneSet` `Table.findStoneSet(Stone stone)`
`StoneSet` `ITable.findStoneSet(Stone stone)` Finds the `StoneSet` containing the given `Stone`
`protected Pair<Position,StoneTray.Direction>` `Hand.fixInvalidDrop(Stone stone, Position pos, StoneTray.Direction dir)`
`void` `Table.pickUpStone(Stone stone)` Removes `Stone` from the Table
`void` `ITable.pickUpStone(Stone stone)` Removes `Stone` from the Table

Method parameters in jrummikub.model with type arguments of type Stone
`void` `StoneHeap.putBack(java.util.Collection<Stone> stones)` Put stones back on the heap

Constructors in jrummikub.model with parameters of type Stone
`StoneSet(Stone stone)` Create a new single stone stone set

Constructor parameters in jrummikub.model with type arguments of type Stone
`StoneSet(java.util.List<Stone> stones)` Create a stone set from a list of stones

Uses of Stone in jrummikub.view

Methods in jrummikub.view that return types with arguments of type Stone
`IEvent2<Stone,java.lang.Boolean>` `IStonePanel.getRangeClickEvent()` the range click event is emitted when the player clicks on the table/hand/ etc.
`IEvent2<Stone,java.lang.Boolean>` `IStonePanel.getSetClickEvent()` the set click event is emitted when the player clicks on the table/hand/ etc.
`IEvent2<Stone,java.lang.Boolean>` `IStonePanel.getStoneClickEvent()` the click event is emitted when the player clicks on the table/hand/etc.

Method parameters in jrummikub.view with type arguments of type Stone
`void` `IView.setSelectedStones(java.util.Collection<Stone> stones)` Sets the stones that are to be painted selected
`void` `IHandPanel.setStones(java.lang.Iterable<Pair<Stone,Position>> stones)` Set the player's stones to display on the board

Uses of Stone in jrummikub.view.impl

Methods in jrummikub.view.impl that return Stone
`protected Stone` `AbstractStonePanel.getHoveredStone()` Returns the stone the mouse pointer is hovering over

Methods in jrummikub.view.impl that return types with arguments of type Stone
`Event2<Stone,java.lang.Boolean>` `AbstractStonePanel.getRangeClickEvent()`
`Event2<Stone,java.lang.Boolean>` `AbstractStonePanel.getSetClickEvent()`
`Event2<Stone,java.lang.Boolean>` `AbstractStonePanel.getStoneClickEvent()`
`protected java.lang.Iterable<Pair<Stone,Position>>` `AbstractStonePanel.getStones()` Returns the list of stones and positions currently set

Methods in jrummikub.view.impl with parameters of type Stone
`void` `StonePainter.paintStone(java.awt.Graphics2D g, Stone stone, Position p, boolean selected, boolean hovered)` Paints a stone

Method parameters in jrummikub.view.impl with type arguments of type Stone
`void` `View.setSelectedStones(java.util.Collection<Stone> stones)`
`(package private) void` `StoneCollectionPanel.setSelectedStones(java.util.Collection<Stone> selectedStones)` Sets the stones to be shown in the collection
`(package private) void` `HandPanel.setSelectedStones(java.util.Collection<Stone> stones)` Sets the stones that are to be painted selected
`(package private) void` `TablePanel.setSelectedStones(java.util.Collection<Stone> stones)` Sets the currently selected stones
`protected void` `AbstractStonePanel.setStones(java.lang.Iterable<Pair<Stone,Position>> stones)` Sets the list of stones that can be clicked on
`void` `HandPanel.setStones(java.lang.Iterable<Pair<Stone,Position>> stones)`