TaskTimer
Folders and files
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
======================================================================= TaskTimer Version 1.1 14 May 2012 Add shake to reset Version 1.0 6-April 2012 Initial Version ======================================================================= The TaskTimer App is intended as an example on how to add accessibility features to an existing App. It is based on the Master Detail Xcode project template and is a universal app that uses Core Data for its model. The basic function of the App is to time how long it takes to perform a list of tasks. For further details see: http://useyourloaf.com/blog/2012/4/23/voiceover-accessibility.html http://useyourloaf.com/blog/2012/5/14/detecting-voiceover-status-changes.html ======================================================================= Model ======================================================================= Task.m Task.h The model consists of a single Core Data entity class for the task data. ======================================================================= View ======================================================================= UYLCounterView.h UYLCounterView.m The UYLCounterView is a custom UIView subclass used to display the current duration of a task and buttons to start and stop the counter. Users of the view can implement the UYLCounterViewDelegate protocol to receive methods calls when the counter is stopper/started. UYLTaskListViewController_iPad.xib UYLTaskListViewController_iPhone.xib iPad and iPhone versions of the NIB for the UYLTaskListViewController. This NIB is a basic UITableView. UYLTaskViewController_iPad.xib UYLTaskViewController_iPhone.xib iPad and iPhone versions of the NIB for the UYLTaskViewController. This is a custom view containing a text view to allow the task name to be displayed and edited. It also contains a UYLCounterView to show the task timer. ======================================================================= Controller ======================================================================= UYLTaskListViewController.h UYLTaskListViewController.m The master view controller on the iPad and root view controller on the iPhone. This controller implements the delegates for a table view showing the list of tasks. The table supports adding/deleting of tasks. On the iPad the currently selected task is shown in the detail view controller which is implemented by a UYLTaskViewController. On the iPhone selecting a task pushes a UYLTaskViewController onto the navigation controller stack. UYLTaskViewController.h UYLTaskViewController.m Used to show the task details and allow the task timer to be stopped and started. A shake event can be used to reset the task. A reset button is shown/hidden depending on the state of VoiceOver. ======================================================================= App Delegate ======================================================================= UYLAppDelegate.h UYLAppDelegate.m The App delegate is largely unmodified from the template code. It creates the root view controllers and initialises the core data stack. ======================================================================= Other files ======================================================================= NSNumber+UYLTimeFormatter.h NSNumber+UYLTimeFormatter.m A category on NSNumber to provide a string representation of the elapsed time.