public int onMouseClick(Point mousePos)
	{
		if( gameresult != -2)			// it is shown the game result, when users clicks, make new game
		{
			if( gameresult == GV.PLAYER_ONE)
			{
				player1.gamesWon++;
			}
			else if( gameresult == GV.PLAYER_TWO)
			{
				player2.gamesWon++;
			}
			
			board.initialize();
			gameresult = -2;	
			
			return 0;			
		}
		
		// check if user has clicked on any of the buttons
		if( restartButton.isPointOnButton(mousePos))	// user clicked on restart button
		{
			GV.playSound(GV.SOUND_RESTART);
			board.initialize();
			playerToPlay = GV.PLAYER_ONE;
			player1.gamesWon = 0;
			player2.gamesWon = 0;
			return GV.RESTART;	
		}
		else if (optionsButton.isPointOnButton(mousePos))	// user clicked on options button
		{
			board.initialize();
			return GV.GO_TO_OPTIONS;
		}
		else if (leaveButton.isPointOnButton(mousePos))	// user clicked on leave button
		{
			return GV.GO_TO_EXIT;				
		}		
		
		// check if board has any moving tokens
		if( !board.freeForNextPlayer())
			return -1;
		
		//used clicked on board, add token on that column
		int columnclicked = board.mouseIsOnColumn(mousePos);
		if( columnclicked>=0  )
		{
			int res = board.addToken(playerToPlay, columnclicked);
			if( res==0)	// token added
			{
				playerToPlay *= -1;
			}			
		}
		return 0;		
	}