Event Field

From Openmoko

Jump to: navigation, search
Not implemented: This article or section documents one or more features that are not implemented and which may never be implemented.


Contents

Overview

The Event Field Widget provides a general method to handle interactions with date & time events

Usages Cases

Appearance & Interaction

View Mode

On Tap

image:Widget_field_event.png

  • Open in Calendar -- Opens to this date in the Calendar application.

On Tap with Hold

  • Popup Menu is opened with the following structures, based on the active field type:
Item Action Constraints
Home, Work Types
Open In Calendar Opens to this date in the Calendar application
Add to Contact Adds this event to a contact Grayed-out if event is within existing contact
Copy to Clipboard Copies event to clipboard
Item Action Constraints
Custom Type
Copy to Clipboard Copies event to clipboard

Edit Mode

image:Widget_field_event_edit.png

While in Edit Mode, the Event Field Widget, has the following modifiable regions:

  • 1) Remove Field -- On Tap will remove this widget.
  • 2) Add New Field -- On Tap will add a new copy of this widget (empty, but of the same type)
  • 3) Type
  • 4) Type Selector -- On Tap will open Popup Menu with the following structure:
  • 5) Text Field
  • 6) Open Keyboard -- Open the Date-Time Picker keyboard in this case.
Item Action Constraints
Birthday Sets event type to Birthday This is a reoccuring rule
Anniversary Sets event type to Anniversary This is a reoccuring rule
Meeting Sets event type to Meeting
Custom Opens Dialog prompting for custom type name

Constraints

(TBD)

Architectural Details

(TBD)

Implementation Recommendations

  • Could be derived from a GtkHBox
  • In View Mode, the actual event is shown using a GtkLabel
  • In Edit Mode, the actual event is shown using a GtkEntry
  • Should open a GtkCalendar if the event entry has the incput focus.

UI Position

Image:Widget field edit event.png

Cross-Widget Interactions

(TBD)

Unresolved Issues

  • Do we need any more default field types?
  • How do we want to handle Custom types?
  • We are going to need to have a few non-removable fields. Otherwise, with this interface there is no way to (say) add another event, if there is only one, and it's removed.

Questions and Answers

(None)

Personal tools