Not applicable.
A variety of electronic calendaring solutions are available to assist users in planning and organizing their scheduled appointments and tasks. However, these electronic calendaring solutions are typically designed for the work environment. In particular, the solutions provide a rigid approach to calendaring. For example, items placed into a calendar view must be entered using an exact date and time. While this approach works well for scheduled items that have a specified start and end time (e.g., appointments), it is difficult to represent items that do not have a specific date and time (e.g., tasks or to-do items) in the context of the calendar view.
As a result, electronic calendaring solutions typically provide a task (or to-do) list that is separate from the calendar view. In some cases, a task list may be presented adjacent to the calendar view. In other instances, tasks may be associated with a particular date but are shown at the top of the day view. In any case, tasks (or other items that do not have a specified time) are not shown within the context of scheduled items within the calendar view indicating when a user may intend to perform the tasks.
This shortcoming of current electronic calendaring solutions makes it difficult for users to organize the completion of items without a specified time (e.g., tasks) within the context of items that do have a specified time (e.g., appointments). One way that some users have attempted to circumvent this problem is by entering tasks into calendar views by specifying a specific start and end time for the tasks, but this is an awkward approach. In essence, by specifying a specific time for the tasks, users are turning the tasks into appointments. However, the nature of tasks is that they are more flexible than appointments. In particular, users typically wish to complete tasks not at a specific time but at a more general time.
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
Embodiments relate to presenting an electronic calendar view in a flexible manner that allows the integration of both items that have a specific time (e.g., appointments) and items that do not have a specific time (e.g., tasks) within the context of the electronic calendar view. In an embodiment, an electronic calendar view is displayed. An appointment having a specific time is displayed within the electronic calendar view. Additionally, a task is displayed within the context of the electronic calendar view without setting a specific time for the task. The task is displayed at a user-specified location within the electronic calendar view.
The present invention is described in detail below with reference to the attached drawing figures, wherein:
The subject matter of the present invention is described with specificity herein to meet statutory requirements. However, the description itself is not intended to limit the scope of this patent. Rather, the inventors have contemplated that the claimed subject matter might also be embodied in other ways, to include different steps or combinations of steps similar to the ones described in this document, in conjunction with other present or future technologies. Moreover, although the terms “step” and/or “block” may be used herein to connote different elements of methods employed, the terms should not be interpreted as implying any particular order among or between various steps herein disclosed unless and except when the order of individual steps is explicitly described.
As previously mentioned, current electronic calendaring solutions provide a rigid approach to calendaring. In particular, calendar views of current electronic calendaring solutions include rigid time scales, and items are placed in the calendar views based on specific times associated with each item. This approach, however, precludes items that do not have a specific time or duration from being integrated within the calendar view at a general location indicating when a user may intend to perform or complete the item. As a result, it is difficult for users to determine the best way to organize items that do not have a specific time within the context of scheduled items.
Embodiments of the present invention relate to representing items in electronic calendars in a flexible manner. In particular, embodiments allow, among other things, items that do not have a specific time or duration associated with them to be shown within the context of an electronic calendar view in addition to items that do have a specific time, thereby allowing a user to organize all items within a common calendar view. Instead of requiring items to be placed at specific times within a calendar view, embodiments allow items to be placed at general times at which a user intends to complete the items.
As used herein, the term “appointment” is used to refer to any calendar item that has a specified time (e.g., a specified start time and a specified end time). These types of items are traditionally shown in electronic calendar views. Additionally, as used herein, the term “task” is used to refer to any calendar item that does not have a specific time or duration. Accordingly, a task includes any item, including a to-do, an event, or an occasion, that the user intends to address or complete at a general time, such as, for example, this morning, this afternoon, this evening, before another item, after another item, between two items, or during another item.
In accordance with various embodiments of the present invention, items may be placed within electronic calendar views without tying the items to a specific time scale. As a result, items are not required to be shown at specific locations within an electronic calendar view but instead may “float” within the calendar view. Additionally, a user may manually size and position items within the calendar view.
In embodiments, an item may be shown as a “chunk” of time that consumes a portion of the calendar view. Items shown as a chunk of time may be bounded without using specific time endpoints. In some cases, an item may be bounded by general but well-understood time endpoints. For example, a chunk of time for an item may be defined as sometime this morning, which has a meaning specific to the user, such as between when the user wakes up and before the user eats lunch. Additionally, a chunk of time for an item may be bounded by other items having known time endpoints. For example, a chunk of time for an item may be defined as being between two appointments. Further, a chunk of time for an item may be bounded by a combination of a general but well understood time endpoint and an item having a known time endpoint. For example, a chunk of time for an item may be defined as being sometime this morning before an appointment. By representing an item as a chunk of time, the item may be flexibly represented within the calendar view without setting a specific time for the item.
In some embodiments, a calendar view is provided without a specific time scale. Both appointments and tasks may be represented without tying the items to exact locations within the calendar view. In some embodiments, a calendar view is provided with a time scale that may be optionally displayed or hidden. Appointments are displayed within the calendar view based on associated scheduled times, while tasks are displayed based on a general time a user intends to complete the task without assigning a specific time to the tasks and without requiring the tasks to be displayed at a specific location in the calendar view based on the time scale. In embodiments in which a time scale is displayed for the electronic calendar view, the time scale may expand and contract based on the presence of items within the calendar view.
In further embodiments of the present invention, tasks may be associated with appointments and displayed within an electronic calendar view based on the associations. An association between a task and an appointment reflects when a user intends to perform the task relative to the appointment. For example, a user may wish to perform a task before, during, or after a scheduled appointment. The task is shown in the electronic calendar view based on the association. Additionally, if the scheduled time for the appointment changes, the task is moved with the appointment.
Accordingly, in one aspect, an embodiment of the present invention is directed to computer-readable media embodying computer-useable instructions for performing a method of presenting an electronic calendar. The method includes displaying an electronic calendar view. The method also includes displaying at least one appointment having a specific time within the electronic calendar view. The method also includes displaying at least one task within the context of the electronic calendar view without setting a specific time for the task. The task is displayed at a user-specified location within the electronic calendar view.
In another embodiment, an aspect of the invention is directed to computer-readable media embodying computer-useable instructions for performing a method of presenting an electronic calendar. The method includes displaying an electronic calendar view including a time scale. The method also includes adjusting the time scale based on the presence of one or more items in the electronic calendar view.
In a further aspect of the invention, an embodiment is directed to a device having a processor and computer-readable media including instructions for causing the processor to perform a method comprising displaying an electronic calendar view. The electronic calendar view includes one or more items not having a specific time. Each of the items are displayed within the context of the electronic calendar view at a user-specified location based on a general time a user intends to complete each of the items.
Having briefly described an overview of the present invention, an exemplary operating environment in which various aspects of the present invention may be implemented is described below in order to provide a general context for various aspects of the present invention. Referring initially to
The invention may be described in the general context of computer code or machine-useable instructions, including computer-executable instructions such as program modules, being executed by a computer or other machine, such as a personal data assistant or other handheld device. Generally, program modules including routines, programs, objects, components, data structures, etc., refer to code that perform particular tasks or implement particular abstract data types. The invention may be practiced in a variety of system configurations, including hand-held devices, consumer electronics, general-purpose computers, more specialty computing devices, etc. The invention may also be practiced in distributed computing environments where tasks are performed by remote-processing devices that are linked through a communications network.
With reference to
Computing device 100 typically includes a variety of computer-readable media. By way of example, and not limitation, computer-readable media may comprise Random Access Memory (RAM); Read Only Memory (ROM); Electronically Erasable Programmable Read Only Memory (EEPROM); flash memory or other memory technologies; CDROM, digital versatile disks (DVD) or other optical or holographic media; magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, carrier wave or any other medium that can be used to encode desired information and be accessed by computing device 100.
Memory 112 includes computer-storage media in the form of volatile and/or nonvolatile memory. The memory may be removable, nonremovable, or a combination thereof. Exemplary hardware devices include solid-state memory, hard drives, optical-disc drives, etc. Computing device 100 includes one or more processors that read data from various entities such as memory 112 or I/O components 120. Presentation component(s) 116 present data indications to a user or other device. Exemplary presentation components include a display device, speaker, printing component, vibrating component, etc.
I/O ports 118 allow computing device 100 to be logically coupled to other devices including I/O components 120, some of which may be built in. Illustrative components include a microphone, joystick, game pad, satellite dish, scanner, printer, wireless device, etc.
Turning now to
Referring initially to
As indicated previously,
It should be noted that while the embodiment shown in
When a user adds an appointment to the day view by selecting a suggestion area 206 or by selecting a general area of the day view, a time may be given to the appointment that most closely represents the area selected by the user. For example, referring to
Alternatively, a user may select to add an appointment and specify the start and end times prior to placement of the appointment in the day view. The appointment is then shown in the day view based on the specified times. For example, the user may have selected to add an appointment, provided a description “Birthday party,” and provided a start time of 12:00 pm and an end time of 2:00 pm for the appointment. The appointment is then added at a general area of the day view corresponding with the specified times.
In prior art electronic calendar solutions, a rigid time scale (e.g., an hourly scale) requires the size of the appointment to correspond with its start and end times. In contrast, by not including a rigid time scale in the present embodiment, a user may make the appointment 208 any size the user wishes without affecting the start and end times of the appointment 208. For example, the user may select either the top or bottom of the appointment 208 and drag the selected potion to resize the appointment 208 as is well known within the art. Additionally, the user may drag and drop the appointment to a different location within the day view. The start and end times may be unaffected by these actions.
To provide the user with an indication of the scheduled time for appointments, the text of an appointment in the day view may include the start and/or end times. For example, in
In addition to appointments that have a scheduled start and end time, a user may add tasks that do not have a scheduled time. Tasks may be added to the day view in any of a number of different ways, such as, for example, selecting a suggestion area within a day view, selecting any area within a day view, and dragging a task from a task list and dropping the task in the day view.
When a task is added to a day view, the task may be arbitrarily sized. The user may then resize the task to represent any chunk of time within the view that has meaning to the user. For example, the task 214 shown in
By not including a rigid time scale, items may be placed at a location in the day view and sized according to the user's wishes to represent a chunk of time that has some meaning to the user. For example, task items may be placed above and below each other, potentially representing an order in which the user wishes to complete the tasks. Additionally, tasks may be placed side-by-side, potentially representing that the user wishes to complete the tasks simultaneously or that the order in which the tasks are completed is irrelevant. Further, the representation of appointments within the day view is not fixed by a rigid time scale. For example, a user may have two adjacent appointments (i.e., a first appointment with an end time that matches the start time of a second appointment). However, the user may wish to complete a task in between the appointments. In embodiments of the present invention, a user may place a task between the appointments and space may be provided between the appointments in the day view to allow for the representation of the task. Accordingly, embodiments allow for the flexible representation of items (both appointments and tasks) by not requiring the items to be tied to a rigid time scale.
Flexible Calendar View with Time Scale
In embodiments of the present invention, calendars may be provided with a time scale but may be flexible to allow for the integration of tasks that do not have scheduled times. The time scale associated with a calendar may be selectively hidden or displayed within the calendar view. Appointments are shown in the calendar view based on scheduled times, while tasks are shown in the calendar view independent of the time scale.
Referring initially to
As shown in
It should be noted that although the task 308 is shown in
In some embodiments, tasks may have a visual representation in the calendar view that is different than the representation of appointments. By way of example only and not limitation, tasks may be represented using a different color or shape. Additionally, in some cases, tasks may be represented in the calendar view with a check box (such as the check box 314 in
In some cases, when a user adds or removes tasks and/or appointments, tasks may be resized to accommodate for the addition or removal of items. For example, as shown in
In other cases, the time scale in the calendar view may dynamically expand or contract based on the addition, deletion, and movement of items within a calendar view.
The removal or movement of a task to another location may cause a time scale to contract. For example, if the user were to delete the task 318 in
The addition, deletion, and movement of appointments may also cause a time scale to expand or contract.
As a further example, suppose that the user reschedules the appointment 310 in
Referring now to
An appointment is displayed in the electronic calendar view, as shown at block 404. The appointment has a specified time (e.g., a specific start time and a specific end time). In embodiments in which the calendar view does not have an associated time scale, a user may selectively size and position the appointment within the calendar view independent of the specified time for the appointment. In embodiments in which the calendar view has an associated time scale, the appointment is displayed within the calendar view based on its specified time.
As shown at block 406, a task is also displayed in the electronic calendar view. The task does not have a specific time and is displayed at a user-specified location within the calendar view. In embodiments in which the calendar view has an associated time scale, the task is displayed in the electronic calendar view independent of the time scale.
Turning now to
Associating Tasks with Appointments in the Calendar
People often complete tasks in relation to scheduled appointments. For example, a person way wish to drop off dry cleaning on the way to a meeting or may wish to do grocery shopping after picking up kids from a music lesson. Accordingly, in further embodiments, tasks may be associated with appointments in the calendar view. In some cases, a task may be associated with a single appointment, such as before, after, or during an appointment. In other cases, a task may be associated with multiple appointments, such as between two appointments. A task that is associated with one or more appointments is shown in the calendar based on its association with the appointment(s). If an appointment is moved, any associated tasks may be moved based on an association with the appointment.
Referring to
An association between a task and an appointment may be created in a variety of different manners within the scope of the present invention. By way of example only and not limitation, in an embodiment, a user may drag a task from the task list area 608 and drop the task adjacent an appointment, thereby creating an association between the task and appointment. The type of association (e.g., before, during, after) may be based on the location relative the appointment at which the task was dropped.
In some embodiments, a visual indication may be provided to show an association between a task and an appointment. For example, in
As indicated previously, a task may be moved in a calendar view based on the movement of an associated appointment. For example, as shown in
Referring now to
If either of the appointments 708 and 710 are moved, the association between the appointments 704 and 706 and the tasks 708 and 710 may be maintained. For example,
In some cases, an appointment may be canceled or moved to another day resulting in a change in an association. For example, in the screen display of
Referring now to
In some cases, the scheduled time for the appointment may be changed. Accordingly, input indicative of a change in the scheduled time for the appointment is received, as shown at block 808. Typically, the association between the appointment and the task will be maintained after receiving the change to the appointment. Accordingly, the appointment and task are both moved to a new location in the electronic calendar view based on the change in the scheduled time for the appointment, as shown at block 810.
Some embodiments of the present invention utilize a data structure 900 illustrated in
In various embodiments of the present invention, the first data field 902, the second data field 904, and the third data field 906 may have multiple entries. For instance, in some embodiments, the first data field 902 may contain data representing multiple tasks while the second data field 904 contains data representing a single appointment and the third data field 906 contains data representing a single association. This may allow for the representation of multiple tasks having a similar association with a common appointment (e.g., two tasks may both have a before association with a particular appointment). In some embodiments, the second data field 904 may include data representing multiple appointments, while the first data field 902 contains data representing a single task and the third data field 906 contains data representing a single association. This may allow for the representation, for instance, of a task having an in-between relationship with two appointments. In other embodiments, the third data field 906 may contain data representing multiple associations, while the first data field 902 contains data representing a single task and the second data field 904 contains data representing a single appointment. This may allow for the representation, for instance, in which a user wishes to perform a task either before or after an appointment. Any and all such variations are contemplated within the scope of embodiments of the present invention.
As can be understood, embodiments of the present invention provide a flexible electronic calendar that integrates tasks that do not have a specific time and appointments having a specific time in a common electronic calendar view. The present invention has been described in relation to particular embodiments, which are intended in all respects to be illustrative rather than restrictive. Alternative embodiments will become apparent to those of ordinary skill in the art to which the present invention pertains without departing from its scope.
From the foregoing, it will be seen that this invention is one well adapted to attain all the ends and objects set forth above, together with other advantages which are obvious and inherent to the system and method. It will be understood that certain features and subcombinations are of utility and may be employed without reference to other features and subcombinations. This is contemplated by and is within the scope of the claims.
This application is related by subject matter to the invention disclosed in the commonly assigned application U.S. application Ser. No. (not yet assigned) (Attorney Docket Number MFCP. 131359), filed on even date herewith, entitled “ELECTRONIC CALENDAR ASSOCIATING TASKS AND APPOINTMENTS.”