Skip to content
This repository has been archived by the owner on Oct 24, 2022. It is now read-only.

Commit

Permalink
Add missing Javadoc and minor logic improvements (#28)
Browse files Browse the repository at this point in the history
  • Loading branch information
ChargedByte committed Oct 10, 2022
1 parent 42f4769 commit c2632ed
Show file tree
Hide file tree
Showing 27 changed files with 86 additions and 38 deletions.
2 changes: 1 addition & 1 deletion .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ android {
minSdk 28
targetSdk 33
versionCode 1
versionName "1.0.0"
versionName "1.0.1"

testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
import fi.metropolia.capslock.dyslexiascreener.data.model.Test;

/**
* Configuration for the application's Room database
* Configuration for the application's Room database.
*
* @author Peetu Saarinen
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ public interface TestDao {
* Insert the provided entity to the table.
* In case of a conflict, the row in the database is replaced.
*
* @param entity the {@link Test} entity to be inserted
* @param entity The {@link Test} entity to be inserted
* @return A <code>long</code> that holds the id of the inserted entity
*/
@Insert(onConflict = OnConflictStrategy.REPLACE)
Expand All @@ -40,7 +40,7 @@ public interface TestDao {
/**
* Find the entity that matches the provided id.
*
* @param id the id of the desired entity
* @param id The id of the desired entity
* @return A {@link Test} entity or <code>null</code> if nothing was found
*/
@Query("SELECT * FROM tests WHERE id = :id")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
import java.time.OffsetDateTime;

/**
* Entity that represents a single take of the test
* Entity that represents a single take of the test.
*
* @author Peetu Saarinen
*/
Expand Down Expand Up @@ -117,18 +117,29 @@ public void addAvailablePoints(int value) {
this.availablePoints += value;
}

/**
* Calculates the possibility of dyslexia from the user's score and age.
* <p>
* This method is very crude at the moment and simply test if the score is above certain percentages.
* <p>
* Ages 9 and bellow the required percentage of correct answers at minimum is 75.
* Ages 12 and bellow the required percentage of correct answers at minimum is 85.
* Ages 12 and larger the required percentage of correct answers at minimum is 95.
*
* @return <code>true</code> if dyslexia is a possibility, otherwise <code>false</code>
*/
public boolean isDyslexiaPossible() {
double score = studentPoints / (double) availablePoints;

if (studentAge <= 9) {
return score < 0.75;
} else if (studentAge <= 12) {
}

if (studentAge <= 12) {
return score < 0.85;
} else if (studentAge <= 14) {
return score < 0.95;
}

return false;
return score < 0.95;
}

@NonNull
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,22 @@
import android.os.Bundle;

import androidx.appcompat.app.ActionBar;
import androidx.appcompat.app.AppCompatActivity;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;

import com.google.android.material.snackbar.Snackbar;

import fi.metropolia.capslock.dyslexiascreener.R;
import fi.metropolia.capslock.dyslexiascreener.*;
import fi.metropolia.capslock.dyslexiascreener.data.model.Test;

/**
* Activity for displaying saved {@link Test} entities.
*
* @author Peetu Saarinen
*/
public class HistoryActivity extends AppCompatActivity {
public class HistoryActivity extends BaseActivity {
private RecyclerView recyclerViewHistory;

private HistoryViewModel viewModel;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
import java.time.format.FormatStyle;
import java.util.List;

import fi.metropolia.capslock.dyslexiascreener.R;
import fi.metropolia.capslock.dyslexiascreener.*;
import fi.metropolia.capslock.dyslexiascreener.data.model.Test;

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
import fi.metropolia.capslock.dyslexiascreener.data.model.Test;

/**
* ViewModel for the {@link HistoryActivity}.
* {@link AndroidViewModel} for the {@link HistoryActivity}.
*
* @author Peetu Saarinen
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import androidx.appcompat.app.ActionBar;
import androidx.appcompat.app.AppCompatActivity;

import fi.metropolia.capslock.dyslexiascreener.R;
import fi.metropolia.capslock.dyslexiascreener.*;

/**
* Container activity for the {@link SettingsFragment}.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,7 @@
import java.util.Locale;
import java.util.Optional;

import fi.metropolia.capslock.dyslexiascreener.R;
import fi.metropolia.capslock.dyslexiascreener.SharedConstants;
import fi.metropolia.capslock.dyslexiascreener.*;

/**
* Fragment that displays application's settings and saves them automatically.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
import androidx.lifecycle.ViewModelProvider;

/**
* Fragment that provides shared functionality between individual tests.
* {@link Fragment} that provides shared functionality between individual exercises.
*
* @author Peetu Saarinen
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,7 @@

import androidx.lifecycle.ViewModelProvider;

import fi.metropolia.capslock.dyslexiascreener.BaseActivity;
import fi.metropolia.capslock.dyslexiascreener.R;
import fi.metropolia.capslock.dyslexiascreener.SharedConstants;
import fi.metropolia.capslock.dyslexiascreener.*;
import fi.metropolia.capslock.dyslexiascreener.data.model.Test;

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,7 @@

import androidx.appcompat.app.ActionBar;

import fi.metropolia.capslock.dyslexiascreener.BaseActivity;
import fi.metropolia.capslock.dyslexiascreener.MainActivity;
import fi.metropolia.capslock.dyslexiascreener.R;
import fi.metropolia.capslock.dyslexiascreener.SharedConstants;
import fi.metropolia.capslock.dyslexiascreener.*;

/**
* Activity for thanking the user after a test and sending them back to the start.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
import java.util.ArrayDeque;
import java.util.List;

import fi.metropolia.capslock.dyslexiascreener.R;
import fi.metropolia.capslock.dyslexiascreener.*;
import fi.metropolia.capslock.dyslexiascreener.data.ScreeningDatabase;
import fi.metropolia.capslock.dyslexiascreener.data.model.Test;
import fi.metropolia.capslock.dyslexiascreener.test.recognition.RecognizableWord;
Expand All @@ -19,7 +19,7 @@
import fi.metropolia.capslock.dyslexiascreener.test.selection.SelectionFragment;

/**
* ViewModel for the {@link TestActivity}.
* {@link AndroidViewModel} for the {@link TestActivity} and {@link ExerciseFragment}s.
*
* @author Peetu Saarinen
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
import androidx.annotation.StringRes;

/**
* Class for holding an image resource and the associated string resource.
*
* @author Joel Tikkanen
*/
public class RecognizableWord {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,11 @@
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.google.gson.Gson;

import fi.metropolia.capslock.dyslexiascreener.R;
import fi.metropolia.capslock.dyslexiascreener.*;
import fi.metropolia.capslock.dyslexiascreener.test.ExerciseFragment;

/**
* Fragment where the user has type the obscured word they see in the image.
* {@link ExerciseFragment} where the user has type the obscured word they see in the image.
*
* @author Joel Tikkanen
*/
Expand Down Expand Up @@ -89,7 +89,8 @@ public int getAvailablePoints() {

@Override
public int getScoredPoints() {
if (editText.getText().toString().equals(getResources().getString(item.getStringResId())))
String expected = getResources().getString(item.getStringResId());
if (editText.getText().toString().equalsIgnoreCase(expected))
return 1;
return 0;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@

import androidx.annotation.DrawableRes;

/**
* Class for holding an image resource of a letter and whether that image is reversed.
*
* @author Joonas Jouttijärvi
*/
public class ReverseLetter {
@DrawableRes
private final int resId;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

import java.util.List;

import fi.metropolia.capslock.dyslexiascreener.R;
import fi.metropolia.capslock.dyslexiascreener.*;
import fi.metropolia.capslock.dyslexiascreener.test.reverse.selection.ReverseLetterItemDetails;

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,14 @@
import java.util.List;
import java.util.stream.StreamSupport;

import fi.metropolia.capslock.dyslexiascreener.R;
import fi.metropolia.capslock.dyslexiascreener.*;
import fi.metropolia.capslock.dyslexiascreener.test.ExerciseFragment;
import fi.metropolia.capslock.dyslexiascreener.test.reverse.selection.ReverseLetterItemKeyProvider;
import fi.metropolia.capslock.dyslexiascreener.test.reverse.selection.ReverseLetterItemLookup;
import fi.metropolia.capslock.dyslexiascreener.utils.RandomUtil;

/**
* Fragment where the user has to select images in the grid where the letter is reversed.
* {@link ExerciseFragment} where the user has to select images in the grid where the letter is reversed.
*
* @author Joonas Jouttijärvi
*/
Expand Down Expand Up @@ -138,7 +138,7 @@ public int getScoredPoints() {
.mapToObj(x -> items.get(x))
.filter(ReverseLetter::isReversed)
.count();

return correctSelections - incorrectSelections;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,11 @@
import androidx.annotation.Nullable;
import androidx.recyclerview.selection.ItemDetailsLookup;

import fi.metropolia.capslock.dyslexiascreener.test.reverse.ReverseLettersFragment;

/**
* {@link ItemDetailsLookup.ItemDetails} for the {@link ReverseLettersFragment}'s selection functionality.
*
* @author Peetu Saarinen
*/
public class ReverseLetterItemDetails extends ItemDetailsLookup.ItemDetails<Long> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,13 @@
import androidx.recyclerview.selection.ItemKeyProvider;
import androidx.recyclerview.widget.RecyclerView;

import fi.metropolia.capslock.dyslexiascreener.test.reverse.ReverseLettersFragment;

/**
* {@link ItemKeyProvider} for the {@link ReverseLettersFragment}'s selection functionality.
*
* @author Peetu Saarinen
*/
public class ReverseLetterItemKeyProvider extends ItemKeyProvider<Long> {
private final RecyclerView recyclerView;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,13 @@
import androidx.recyclerview.widget.RecyclerView;

import fi.metropolia.capslock.dyslexiascreener.test.reverse.ReverseLettersAdapter;
import fi.metropolia.capslock.dyslexiascreener.test.reverse.ReverseLettersFragment;

/**
* {@link ItemDetailsLookup} for the {@link ReverseLettersFragment}'s selection functionality.
*
* @author Peetu Saarinen
*/
public class ReverseLetterItemLookup extends ItemDetailsLookup<Long> {
private final RecyclerView recyclerView;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

import java.util.List;

import fi.metropolia.capslock.dyslexiascreener.R;
import fi.metropolia.capslock.dyslexiascreener.*;
import fi.metropolia.capslock.dyslexiascreener.test.selection.selection.SelectionItemDetails;

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,14 @@
import java.util.List;
import java.util.stream.StreamSupport;

import fi.metropolia.capslock.dyslexiascreener.R;
import fi.metropolia.capslock.dyslexiascreener.*;
import fi.metropolia.capslock.dyslexiascreener.test.ExerciseFragment;
import fi.metropolia.capslock.dyslexiascreener.test.selection.selection.SelectionItemDetailsLookup;
import fi.metropolia.capslock.dyslexiascreener.test.selection.selection.SelectionItemKeyProvider;
import fi.metropolia.capslock.dyslexiascreener.utils.RandomUtil;

/**
* Fragment where the user has to select the correct items from a grid.
* {@link ExerciseFragment} where the user has to select the correct items from a grid.
*
* @author Joel Tikkanen
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,12 @@
import androidx.annotation.Nullable;
import androidx.recyclerview.selection.ItemDetailsLookup;

import fi.metropolia.capslock.dyslexiascreener.test.reverse.ReverseLettersFragment;
import fi.metropolia.capslock.dyslexiascreener.test.selection.SelectionFragment;

/**
* {@link ItemDetailsLookup.ItemDetails} for the {@link SelectionFragment}'s selection functionality.
*
* @author Peetu Saarinen
*/
public class SelectionItemDetails extends ItemDetailsLookup.ItemDetails<Long> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,13 @@
import androidx.recyclerview.widget.RecyclerView;

import fi.metropolia.capslock.dyslexiascreener.test.selection.SelectionAdapter;
import fi.metropolia.capslock.dyslexiascreener.test.selection.SelectionFragment;

/**
* {@link ItemDetailsLookup} for the {@link SelectionFragment}'s selection functionality.
*
* @author Peetu Saarinen
*/
public class SelectionItemDetailsLookup extends ItemDetailsLookup<Long> {
private final RecyclerView recyclerView;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,17 @@

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.selection.ItemDetailsLookup;
import androidx.recyclerview.selection.ItemKeyProvider;
import androidx.recyclerview.widget.RecyclerView;

import fi.metropolia.capslock.dyslexiascreener.test.selection.SelectionFragment;

/**
* {@link ItemKeyProvider} for the {@link SelectionFragment}'s selection functionality.
*
* @author Peetu Saarinen
*/
public class SelectionItemKeyProvider extends ItemKeyProvider<Long> {
private final RecyclerView recyclerView;

Expand Down

0 comments on commit c2632ed

Please sign in to comment.