/** * Copyright (c) 2012 Todoroo Inc * * See the file "LICENSE" for the full license governing this code. */ package com.todoroo.astrid.reminders; import java.util.Date; import android.widget.Toast; import com.todoroo.andlib.service.ContextManager; import com.todoroo.astrid.api.TaskContextActionExposer; import com.todoroo.astrid.data.Task; import com.todoroo.astrid.reminders.ReminderService.AlarmScheduler; import com.todoroo.astrid.utility.Constants; @SuppressWarnings("nls") public class ReminderDebugContextActions { public static class WhenReminder implements TaskContextActionExposer { @Override public Object getLabel(Task task) { if (Constants.DEBUG) return "when alarm?"; return null; } public void invoke(Task task) { AlarmScheduler original = ReminderService.getInstance().getScheduler(); ReminderService.getInstance().setScheduler(new AlarmScheduler() { @Override public void createAlarm(Task theTask, long time, int type) { if(time == 0 || time == Long.MAX_VALUE) return; Toast.makeText(ContextManager.getContext(), "Scheduled Alarm: " + new Date(time), Toast.LENGTH_LONG).show(); ReminderService.getInstance().setScheduler(null); } }); ReminderService.getInstance().scheduleAlarm(task); if(ReminderService.getInstance().getScheduler() != null) Toast.makeText(ContextManager.getContext(), "No alarms", Toast.LENGTH_LONG).show(); ReminderService.getInstance().setScheduler(original); } } public static class MakeNotification implements TaskContextActionExposer { public Object getLabel(Task task) { if (Constants.DEBUG) return "when alarm?"; //$NON-NLS-1$ return null; } public void invoke(Task task) { new Notifications().showTaskNotification(task.getId(), ReminderService.TYPE_SNOOZE, "test reminder"); } } }