Hide completed according to the target value

This commit is contained in:
2017-03-26 10:32:27 -04:00
parent b3f039d658
commit 1dfa0c6b0d
2 changed files with 11 additions and 10 deletions

View File

@@ -28,6 +28,8 @@ import java.util.*;
import javax.inject.*;
import static org.isoron.uhabits.models.Checkmark.*;
/**
* The thing that the user wants to track.
*/
@@ -163,6 +165,13 @@ public class Habit
return color;
}
public boolean isCompletedToday()
{
int todayCheckmark = getCheckmarks().getTodayValue();
if (isNumerical()) return todayCheckmark >= targetValue;
else return (todayCheckmark != UNCHECKED);
}
public void setColor(@NonNull Integer color)
{
this.color = color;

View File

@@ -23,8 +23,6 @@ import android.support.annotation.*;
import java.util.*;
import static org.isoron.uhabits.models.Checkmark.*;
public class HabitMatcher
{
public static final HabitMatcher WITH_ALARM = new HabitMatcherBuilder()
@@ -75,14 +73,8 @@ public class HabitMatcher
{
if (!isArchivedAllowed() && habit.isArchived()) return false;
if (isReminderRequired() && !habit.hasReminder()) return false;
if(!isCompletedAllowed())
{
int todayCheckmark = habit.getCheckmarks().getTodayValue();
if (todayCheckmark != UNCHECKED) return false;
}
if(!allowedColors.contains(habit.getColor())) return false;
if (!isCompletedAllowed() && habit.isCompletedToday()) return false;
if (!allowedColors.contains(habit.getColor())) return false;
return true;
}
}