Fixed all warnings (comments) but one, one TODO important

git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@351 72836036-5685-4462-b002-a69064685172
This commit is contained in:
Ida Massow 2011-05-31 15:29:37 +02:00
parent f1abd1b564
commit c3b4eef14c
7 changed files with 75 additions and 18 deletions

View file

@ -7,22 +7,27 @@ import jrummikub.util.Event;
import jrummikub.util.IEvent;
import jrummikub.view.IView;
/**
* Interface containing shared methods of human and computer turn control
*
*/
// TODO zu viele parameter
public interface ITurnControl {
/**
* Start the turn
*
* @param settings
* the game settings
* the game settings
* @param player
* the active player
* the active player
* @param table
* current table
* current table
* @param view
* view for user interaction.
* view for user interaction.
* @param inspectOnly
* the current turn doesn't allow any table manipulation
* the current turn doesn't allow any table manipulation
* @param mayRedeal
* true when the current player may decide to redeal
* true when the current player may decide to redeal
*/
public void setup(GameSettings settings, IPlayer player, ITable table,
IView view, boolean inspectOnly, boolean mayRedeal);

View file

@ -16,8 +16,16 @@ public abstract class TurnControlFactory {
COMPUTER
};
public abstract ITurnControl create();
/**
* returns the turn control factory for the specified type
*
* @param type
* Human or Computer
* @return TurnControlFactory for the player kind
*/
static public TurnControlFactory getFactory(Type type) {
switch (type) {
case HUMAN:

View file

@ -49,6 +49,9 @@ public class StoneSet implements Iterable<Stone>, Sizeable {
/**
* Test for rule conflict within the StoneSet
*
* @param settings
* GameSettings
*
* @return true when the set is valid according to the rules
*/
public boolean isValid(GameSettings settings) {
@ -59,6 +62,9 @@ public class StoneSet implements Iterable<Stone>, Sizeable {
* Test for rule conflict within the StoneSet and determine whether the set
* is a group or a run
*
* @param settings
* GameSettings
*
* @return GROUP or RUN for valid sets, INVALID otherwise
*/
@ -80,7 +86,8 @@ public class StoneSet implements Iterable<Stone>, Sizeable {
} else if (stones.size() > settings.getStoneColors().size()) {
return new Pair<Type, Integer>(
RUN,
(settings.getHighestValue() * (settings.getHighestValue() + 1))
(settings.getHighestValue() * (settings
.getHighestValue() + 1))
/ 2
- (stones.size() - settings.getHighestValue())
* (stones.size() - settings.getHighestValue() - 1)

View file

@ -19,6 +19,12 @@ public class Table extends StoneTray<StoneSet> implements ITable {
}
}
/**
* Constructor for a table
*
* @param settings
* GameSettings
*/
public Table(GameSettings settings) {
gameSettings = settings;
}

View file

@ -36,8 +36,8 @@ public interface ISettingsPanel {
};
/**
* The add player event is emitted when the user wants to add a player to the
* player list
* The add player event is emitted when the user wants to add a player to
* the player list
*
* @return the event
*/
@ -83,12 +83,36 @@ public interface ISettingsPanel {
*/
public IEvent1<Integer> getChangeInitialMeldThresholdEvent();
/**
* The change StoneSet number event is emitted when the user wants to use
* more or less than 2 StoneSets per color
*
* @return number of SoneSets
*/
public IEvent1<Integer> getChangeStoneSetNumberEvent();
/**
* The change number of Stones dealt event is emitted when the user wants to
* be dealt more or less than 14 Stones at the game start
*
* @return number of Stones dealt
*/
public IEvent1<Integer> getChangeNumberOfStonesDealtEvent();
/**
* The change highest value event is emitted when the user wants to set the
* highest Stone value
*
* @return highest Stone value
*/
public IEvent1<Integer> getChangeHighestValueEvent();
/**
* The change Stone colors event is emitted when the user chooses the stone
* colors to play with. Minimum 3, maximum 8
*
* @return set of used StoneColors
*/
public IEvent1<Set<StoneColor>> getChangeStoneColorsEvent();
/**
@ -102,7 +126,7 @@ public interface ISettingsPanel {
* Sets an error to display
*
* @param error
* the kind of error
* the kind of error
*/
public void setError(SettingsError error);
@ -110,7 +134,7 @@ public interface ISettingsPanel {
* Enables or disables the start game button
*
* @param enable
* specifies if the button is to be enabled or disabled
* specifies if the button is to be enabled or disabled
*/
public void enableStartGameButton(boolean enable);
@ -118,7 +142,7 @@ public interface ISettingsPanel {
* Enables or disables the add player button
*
* @param enable
* specifies if the button is to be enabled or disabled
* specifies if the button is to be enabled or disabled
*/
public void enableAddPlayerButton(boolean enable);
@ -126,7 +150,7 @@ public interface ISettingsPanel {
* Enables or disables the remove player buttons
*
* @param enable
* specifies if the buttons are to be enabled or disabled
* specifies if the buttons are to be enabled or disabled
*/
public void enableRemovePlayerButtons(boolean enable);
@ -135,7 +159,7 @@ public interface ISettingsPanel {
* Sets the game settings to display
*
* @param gameSettings
* the settings
* the settings
*/
public void setGameSettings(GameSettings gameSettings);

View file

@ -20,6 +20,7 @@ import jrummikub.util.IEvent;
class WinPanel extends JPanel {
private final static int PANEL_INSET = 15;
private final static int PANEL_SEPARATOR = 10;
@SuppressWarnings("unused")
private final static float PANEL_FIRST_LINE_HEIGHT = 0.375f;
private final static int PANEL_MAX_WIDTH = 180;
private final static float MAX_BUTTON_FONT_SIZE = 12;
@ -100,7 +101,8 @@ class WinPanel extends JPanel {
private void rescale() {
Insets insets = getInsets();
int x = insets.left, y = insets.top, width = getWidth() - insets.left
- insets.right, height = getHeight() - insets.top - insets.bottom;
- insets.right, height = getHeight() - insets.top
- insets.bottom;
if (width > PANEL_MAX_WIDTH) {
x += (width - PANEL_MAX_WIDTH) / 4;
@ -116,13 +118,14 @@ class WinPanel extends JPanel {
newRoundButton.setBounds(x, y, buttonWidth, buttonHeight);
newRoundButton.setFont(newRoundButton.getFont().deriveFont(fontSize));
newGameButton.setBounds(x + buttonWidth + PANEL_SEPARATOR, y, buttonWidth,
buttonHeight);
newGameButton.setBounds(x + buttonWidth + PANEL_SEPARATOR, y,
buttonWidth, buttonHeight);
newGameButton.setFont(newGameButton.getFont().deriveFont(fontSize));
endProgramButton.setBounds(x + 2 * (buttonWidth + PANEL_SEPARATOR), y,
buttonWidth, buttonHeight);
endProgramButton.setFont(endProgramButton.getFont().deriveFont(fontSize));
endProgramButton.setFont(endProgramButton.getFont()
.deriveFont(fontSize));
}
}

View file

@ -122,6 +122,10 @@ public class RoundControlTest {
view.displayStartTurnPanel = false;
}
/**
* Check correctly dealt with more than 14 stones/ different than default
* stones
*/
@Test
public void checkCorrectlyDealtMoreStones() {
testRoundState.getGameSettings().setNumberOfStonesDealt(15);