private void calculateAllWords(){
		wordCounter=0;
		for (String s : dictionary) {
			if (s.length()>=3){ // only process words with 3 or more characters
				String[] splittedWord = s.split("(?!^)");//split word
				boolean inMix = true;	
				for (int i = 0;i < splittedWord.length; i++){
					
					if(!letterMix.contains(splittedWord[i]) ){
						inMix=false;
					}	
					
					if (!countLetters(splittedWord[i], splittedWord, letterMix)){
						inMix=false;
					}

				}

				if(inMix==true){ //if the word is in the mixed grid add it to the possible word list
					wordCounter++;//count the possible words
					allPossibleWords.add(s);//add to list	
				}
			}
		}

		Collections.sort(allPossibleWords);//sort words

		//System.out.println(wordCounter);//number of matching words found
		/*
		//print list
		int arrayListSize = allPossibleWords.size();
		for(int i = 0; i < arrayListSize; i++)
		{
			System.out.print(allPossibleWords.get(i)+" ");
		}
		*/
	}