1. Technical Field
The present disclosure relates to a data synchronization system and method for a widget and a corresponding application.
2. Description of Related Art
A widget is an element of a graphical user interface (GUI) that displays information which is changeable by the user, such as a window or a text box. The defining characteristic of a widget is to provide a single interaction point for direct manipulation of a given kind of data. In other words, widgets are basic visual building blocks, which combined in an application hold all the data processed by the application and the available interactions on this data. The data for widgets and the applications corresponding to the widgets are from different databases. Users may sometimes see different data from the widgets and the corresponding applications.
Therefore, there is room for improvement within the art.
Many aspects of the embodiments can be better understood with references to the following drawings. The components in the drawings are not necessarily drawn to scale, the emphasis instead being placed upon clearly illustrating the principles of the embodiments. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views.
The disclosure is illustrated by way of example and not by way of limitation in the figures of the accompanying drawings in which like references indicate similar elements. It should be noted that references to “an” or “one” embodiment in this disclosure are not necessarily to the same embodiment, and such references mean at least one.
In general, the word “module,” as used herein, refers to logic embodied in hardware or firmware, or to a collection of software instructions, written in a programming language, such as, for example, Java, C, or Assembly. One or more software instructions in the modules may be embedded in firmware, such as an EPROM. It will be appreciated that modules may comprise connected logic units, such as gates and flip-flops, and may comprise programmable units, such as programmable gate arrays or processors. The modules described herein may be implemented as either software and/or hardware modules and may be stored in any type of computer-readable medium or other computer storage device.
Referring to
The application window module 10 is used for obtaining and displaying application data of an application, for example, e-mail data. The e-mail data includes e-mail number in a sending box, new e-mail number in receiving box.
The widget 20 is used for displaying widget data of an application. The widget data is a part of the application.
The widget management module 30 is used for obtaining the widget data and sending the widget data to the widget 20. In one embodiment, the widget management module 30 sends the widget data via a broadcast.
The application layer 40 includes a storing module 41 and updating module 42. The storing module 41 is used for storing the application data of the application. The updating module 42 is used for determining if a storage time of the application data is greater than a reference time. If so, the updating module 42 tells the background management module 50 to download updated data corresponding to the application. If not, the updating module 42 sends the widget data to the widget and the application data to the widget management module 30.
The background management module 50 is used for downloading the updated data and sending the updated data to the storing module 41 to store.
Referring to
In step S201, the widget management module 30 sends a request for obtaining widget data to the application layer 40.
In step S202, the updating module 42 determines if a storage time of the application data stored in the storing module 41 is greater than the a reference time. If so, the process turns to the step S203. If not, the process turns to the step S206.
In step S203, the updating module 42 tells the background management module 50 to download an updated data corresponding to the application via a network.
In step S204, the background management module 50 transmits the updated data to the storing module 41 to be stored.
In step S205, the updating module 42 sends a widget data of the updated data to the widget management module 30.
In step S206, the updating module 42 conveys a widget data of the application data stored in the storing module 41 to the widget management module 30.
In step S207, the widget management module 30 communicates the widget data to the widget 20 to be displayed.
Referring to
In step S301, the application window module 10 sends a request for obtaining the application data corresponding to an application.
In step S302, the updating module 42 of the application layer 40 determines if a storage time of the application stored in the storing module 41 is greater than the a reference time. If so, the process turns to the step S303. If not, the process turns to the step S306
In step S303, the updating module 42 tells the background management module 50 to download updated data corresponding to the application.
In step S304, the background management module 50 sends the updated data to the storing module 41 to be stored.
In step S305, the updating module 42 sends the updated data to the application window module 10 to be displayed.
In step S306, the updating module 42 sends the application data stored in the storing module 41 to the application window module 10 to be displayed.
The data displayed by the widget 20 and the application window module 10 comes from the application layer 40. The application layer 40 updates the application data during a time period, which enables the data to be displayed by the widget 20 and the application window module 10 to synchronize.
It is to be understood, however, that even though numerous characteristics and advantages of the embodiments have been set forth in the foregoing description, together with details of the structure and function of the embodiments, the disclosure is illustrative only, and changes may be made in detail, especially in matters of shape, size, and arrangement of parts within the principles of the present disclosure to the full extent indicated by the broad general meaning of the terms in which the appended claims are expressed.
Depending on the embodiment, certain of the steps of methods described may be removed, others may be added, and the sequence of steps may be altered. It is also to be understood that the description and the claims drawn to a method may include some indication in reference to certain steps. However, the indication used is only to be viewed for identification purposes and not as a suggestion as to an order for the steps.
Number | Date | Country | Kind |
---|---|---|---|
99144022 | Dec 2010 | TW | national |