Calendar
From Openmoko
| Not implemented: This article or section documents one or more features that are not implemented and which may never be implemented. |
Contents |
Overview
This article defines the Calendar Application, an application designed for the OpenMoko platform. This is a Native Stylus-Based application.
Use Cases
Here are some possible use cases:
- I want to be able to see daily, weekly, monthly, and yearly views of my calendar.
- I want to be able to store To Do items.
- I want to be able to have one To Do list per Day.
- I want to be able to switch between the day-view of the calendar and the appropriate to-do list by one touch/click.
- I want to be able to set not only the priority but also the estimated time for each ToDo.
- I want to be able to move a ToDo-Entry easily from one to another list. Especially moving an actual but unsolved ToDo to the list of the next day.
- I want to be able to copy a ToDo-Entry into the calendar where the estimated-time will result in an appropriate event.
- I want to be able to set recurrence events.
- I want to be reminded of important events with an alarm sound.
- I want to see all of my upcoming events that have an alarm.
- If I am in a meeting or church, I want a vibrating reminder instead of an alarm.
- I want to be able to see other people's calendars and share mine.
Layout Components
Application Area
Application Menu
| Item | Action | Constraints |
|---|---|---|
| Import | Import a calendar from valid vCal data | |
| Export | Export a calendar in vCal format | Grayed-out when zero calendars exist |
| Help | Opens Help Viewer Application with help for this application |
Filter Menu
| Item | Action | Constraints |
|---|---|---|
| Day | Displays Calendar in Day View | |
| Week | Displays Calendar in Week View | |
| Month | Displays Calendar in Month View | |
| Year | Displays Calendar in Year View | |
| To Do | Displays all To Do items | |
| Search Results | Displays all contacts matching current search string |
Navigation Area
Displays a list of events from the current filter mode using the Navigation Widget and has the following structure:
| Item | Action | Constraints |
|---|---|---|
| Column 1 | Event Name | |
| Column 2 | Event Date & Time |
Tapping (selecting) a row will display the correspoding event information in the Details Area.
Action Buttons
| Item | Action | Constraints |
|---|---|---|
| New Event | Creates a new event called No Name | Performs no action when pressed repeatedly |
| New To Do | Creates a new To Do item called No Name | Performs no action when pressed repeatedly |
| Item | Action | Constraints |
|---|---|---|
| Mode Calendar | Activates Calendar View Mode for Details Area | |
| Mode Event | Activates Event View Mode for Details Area | |
| Mode To Do | Activates To Do Item View Mode for Details Area |
| Item | Action | Constraints |
|---|---|---|
| Delete | Opens Dialog prompting for confirmation | Grayed-out when zero events / items exist |
Comments by Tomas:
- In Dates, the New Event button is mostly supefluous as new events are created by clicking at the appropriate place in the calendar.
- In Calendar Mode, there needs to be buttons for moving back and forward in the calendar, and preferably a button to move to today.
- The Mode Event button might not be necessary; event details can be displayed automatically by selecting an event either in the upper pane selector widget or in the lower pane calendar.
Details Area
A Details List that behaves different in each of the following modes:
Calendar Mode
These are some sample layouts from OS X's calendar:
http://people.openmoko.org/sean/specifications/images/calendar_day.png http://people.openmoko.org/sean/specifications/images/calendar_week.png http://people.openmoko.org/sean/specifications/images/calendar_month.png
Event Mode
http://people.openmoko.org/sean/specifications/images/calendar_event_edit.png
To Do Mode
http://people.openmoko.org/sean/specifications/images/calendar_todo.png http://people.openmoko.org/sean/specifications/images/calendar_todo_edit.png
Footer Area
Status Bar
Displays the total number of events / items in the filter menu.
Constraints
- First time entering application defaults to Calendar Mode.
Sessions
- The current event / item selection and Details Area mode is persistant.
Architectural Details
- Valid event / item fields are define in the PIM Storage
Architectural Details
(TBD)
Implementation Recommendations
- It would be great to convince Pimlico to port their great DateBK Application to OpenMoko. It has a very rich feature list.
- Thinking about gpe-calendar.
- O-Hand Dates looks like a good foundation to base this application on, since it already uses eds (which is PIM Storage abstraction)
- see also Wishlist:context_based_to-do_list, I (User:Bryan_Larsen), think it can be rolled into this app without overly complicating it.
- kpr 03:05, 23 April 2007 (UTC): In the "Filter Menu", I hope the word "Filter" is not used in the actual user interface that the user sees. I'd rather see the word "View", "Go to", or "Show" used instead, or no word at all if icons are used. When I see the word filter, I think of something that separates the wanted from the unwanted, almost like doing a search, but much more powerful (filter in, filter out) and you see all the results at once.
Interactions
(TBD)
Unresolved Issues
- Mickey wants a Year view [We have a year view in Dates, but it is unlikely to be usable on a screen smaller in physical size than the Nokia 770 due to the small font size].
- Sean & Harald want events to be absolute, i.e. when traveling, only the time & date is shifted but events remain fixed. This could be a local / fixed setting if needed.
- Can't this be resolved by storing events in UTC always and displaying via localtime? (see also: Wishlist:Set Local Time) --wisp 01:34, 12 September 2007 (CEST)
- Should use the auto-complete widget.
Questions and Answers
Q1: List View
kpr 03:00, 23 April 2007 (UTC): Is it possible to add a List view where all of the calendar events are shown in a list, with one event on each line sorted by date by default?
This way, if I want to see the very first calendar event I ever created, I just go to the top of the list. Currently with Palm's built-in Calendar app, going quickly to the very first or last event is very difficult. A List view sorted by date also helps when you want to trim out old items, but still keep some of them around.
I would also like to sort the List view by event name and filter the List view to only show events that have an alarm, that repeat, have a URL, a Note, a Tag. etc.
Q2: Work week
Oferhe 08:04, 3 August 2007 (CEST): Would it be possible to add a "work week" filter. It will leave more space for the presentation of the days where most of the events take place.
If such a filter is to be added, it should also include an option to customize which days are working days.


