IP Library › Granted Patent US 7,620,908
Granted Patent B2
US 7,620,908 · App. 10/330,036 · Granted Nov 17, 2009

Managing a user interface

Assignee: SAP AG
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,620,908
App. No.
10/330,036
Granted
Nov 17, 2009
Kind
B2
Abstract

Systems and techniques for managing a user interface are disclosed. In general, in one implementation, a technique includes: generating a page for a user interface, the page comprising a pane; receiving an indication of user interaction with a portion of the page; determining an event associated with the indicated interaction; and selectively generating a replacement pane based on the event determination.

Claims (88)

1. A method for a server to manage a user interface presented at a remote device, the method comprising:

generating a page for the user interface, the page comprising a pane;

receiving, from the user interface, an indication of user interaction with a portion of the page of the user interface;

determining an event associated with the indicated interaction; and

selectively generating, at the server, a replacement pane based on the event determination, a configuration file defining flow information from the pane to the replacement pane and a layout of the page including the replacement pane, and the state of the user interface, the state of the user interface representative of a status of an interaction between the user interface and an application at the server, the state of the user interface further comprises a navigation state stored in a stack structure representative of a data structure, and examining the state by popping the stack structure to determine information about the state of the user interface; and

sending the replacement pane and the state to the user interface at the remote device to enable the user interface to update the pane with the replacement pane and update a stored state of the user interface.

2. The method of claim 1 , wherein selectively generating the replacement pane based on the event determination and the state of the user interface comprises:

determining whether the event is associated with replacing the pane; and

generating the replacement pane if the event is associated with replacing the pane.

3. The method of claim 1 , wherein selectively generating the replacement pane based on the event determination and the state of the user interface comprises determining whether a previously used pane should replace the pane.

4. The method of claim 3 , wherein selectively generating the replacement pane comprises examining the user interface state to determine information about the previously used pane.

5. The method of claim 4 , further comprising:

receiving from the user interface the user interface state;

updating at the server the user interface state; and

sending from the server to the user interface the user interface state.

6. The method of claim 5 , wherein the user interface state is included with a message containing information regarding the replacement pane.

7. The method of claim 1 , wherein selectively generating the replacement pane based on the event determination and the user interface state comprises determining whether another pane should replace the pane.

8. The method of claim 7 , further comprising placing information about the replacement pane in the user interface state.

9. The method of claim 8 , wherein the user interface state comprises a navigation state stored in a stack structure, and placing information about the replacement pane in the user interface state comprises pushing information about the replacement pane onto the stack structure.

10. The method of claim 1 , wherein selectively generating the replacement pane based on the event determination and the user interface state comprises examining a configurable file.

11. The method of claim 1 , further comprising:

determining whether the event is associated with a different page; and

generating the different page if the event is so associated.

12. The method of claim 1 , further comprising sending the generated page to a user interface device.

13. The method of claim 1 , further comprising:

embedding data in an event; and

sending the event to a plurality of controls.

14. The method of claim 13 , wherein a control is operable to filter an event and to extract data from the event.

15. A system for managing a user interface presented at a remote device, comprising:

a processor; and

a memory, wherein the processor and memory are configured to provide

an application framework operable to:

generate a page for the user interface, the page comprising a pane,

receive, from the user interface, an indication of user interaction with a portion of the page of the user interface, and

determine an event associated with the indicated interaction; and

a controller, at the server, operable to selectively generate a replacement pane based on the event determination, a configuration file defining flow information from the pane to the replacement pane and a layout of the page including the replacement pane, and the state of the user interface, the state of the user interface representative of a status of an interaction between the user interface and an application at the server, the state of the user interface further comprises a navigation state stored in a stack structure representative of a data structure, and examining the state by popping the stack structure to determine information about the state of the user interface.

16. The system of claim 15 , wherein selectively generating the replacement pane based on the event determination and the user interface state comprises:

determining whether the event is associated with replacing the pane; and

generating the replacement pane if the event is associated with replacing the pane.

17. The system of claim 15 , wherein selectively generating the replacement pane based on the event determination and the user interface state comprises determining whether a previously used pane should replace the pane.

18. The system of claim 17 , wherein selectively generating the replacement pane comprises examining the user interface state to determine information about a previously used pane.

19. The system of claim 18 , wherein the controller is further operable to:

receive the user interface state;

update the user interface state; and

send the user interface state.

20. The system of claim 19 , wherein the user interface state is included with a message containing information regarding the replacement pane.

21. The system of claim 18 , wherein the user interface state comprises a navigation state stored in a stack structure, and examining a user interface state comprises popping the stack structure to determine information about a previously used pane.

22. The system of claim 15 , wherein selectively generating the replacement pane based on the event determination and the user interface state comprises determining whether another pane should replace the pane.

23. The system of claim 22 , wherein the controller is further operable to place information about the replacement pane in the user interface state.

24. The system of claim 23 , wherein the user interface state comprises a navigation state stored in a stack structure, and placing information about the replacement pane in a user interface state comprises pushing information about the replacement pane onto the stack structure.

25. The system of claim 15 , wherein selectively generating the replacement pane based on the event determination and the user interface state comprises examining a configurable file.

26. The system of claim 15 , wherein the controller is further operable to:

determine whether the event is associated with a different page; and

generate the different page if the event is so associated.

27. The system of claim 15 , wherein the application framework is further operable to send the generated page to a user interface device.

28. The system of claim 15 , wherein the application framework is further operable to:

embed data in an event; and

send the event to a plurality of controls in the application framework.

29. The system of claim 28 , wherein a control is operable to filter an event and to extract data from the event.

30. An article comprising a machine-readable medium storing instructions operable to cause a server to perform operations for managing a user interface presented at a remote device, the operations comprising:

generating a page for the user interface, the page comprising a pane;

receiving, from a user interface, an indication of user interaction with a portion of the page of the user interface;

determining an event associated with the indicated interaction; and

selectively generating, at the server, a replacement pane based on the event determination, a configuration file defining flow information from the pane to the replacement pane and a layout of the page including the replacement pane, and the user interface state, the state of the user interface representative of a status of an interaction between the user interface and an application at the server, the state of the user interface further comprises a navigation state stored in a stack structure representative of a data structure, and examining the state by popping the stack structure to determine information about the state of the user interface; and

sending the replacement pane and the state to the user interface at the remote device to enable the user interface to update the pane with the replacement pane and update a stored state of the user interface.

31. The article of claim 30 , wherein selectively generating the replacement pane based on the event determination and the user interface state comprises:

determining whether the event is associated with replacing the pane; and

generating the replacement pane if the event is associated with replacing the pane.

32. The article of claim 30 , wherein selectively generating the replacement pane based on the event determination and the user interface state comprises determining whether a previously used pane should replace the pane.

33. The article of claim 32 , wherein selectively generating the replacement pane comprises examining a user interface state to determine information about a previously used pane.

34. The article of claim 33 , wherein the instructions are further operable to cause the server to perform operations comprising:

receiving the user interface state;

updating the user interface state; and

sending the user interface state.

35. The article of claim 34 , wherein the user interface state is included with a message containing information regarding the replacement pane.

36. The article of claim 33 , wherein the user interface state comprises a navigation state stored in a stack structure, and examining a user interface state comprises popping the stack structure to determine information about a previously used pane.

37. The article of claim 31 , wherein selectively generating the replacement pane based on the event determination and the user interface state comprises determining whether another pane should replace the pane.

38. The article of claim 37 , wherein the instructions are further operable to cause the server to perform operations comprising placing information about the replacement pane in a user interface state.

39. The article of claim 38 , wherein the user interface state comprises a navigation state stored in a stack structure, and placing information about the replacement pane in a user interface state comprises pushing information about the replacement pane onto the stack structure.

40. The article of claim 30 , wherein selectively generating the replacement pane based on the event determination and the user interface state comprises examining a configurable file.

41. The article of claim 30 , wherein the instructions are further operable to cause the server to perform operations comprising:

determining whether the event is associated with a different page; and

generating the different page if the event is so associated.

42. The article of claim 30 , wherein the instructions are further operable to cause the server to perform operations comprising sending the generated page to a user interface device.

43. The article of claim 30 , wherein the instructions are further operable to cause the server to perform operations comprising:

embedding data in an event; and

sending the event to a plurality of controls.

44. The article of claim 43 , wherein a control is operable to filter an event and to extract data from the event.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0334 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2003
From: KLEVENZ, STEPHAN; HEILER, JAN; BASENACH, DIRK
To: SAP AKTIENGESELLSCHAFT
Reel/Frame 014026/0081 →
Continuity (2)
Provisional Application 6034644200 · Dec 28, 2001
Related Publication 20030137540A1 · Jul 24, 2003