发明名称 Dynamic editors for functionally composed UI
摘要 In an embodiment, a computer system instantiates a real-time incremental editor configured to receive editing inputs that are to be applied to data of a data model, where the data model data declaratively defines a UI model that drives the behavior of a corresponding UI based on the UI model. The computer system receives an editing input from a user indicating one or more desired edits that are to be made to the UI and determines, based on the received editing inputs, which changes are to be made to the data model data to enact the desired changes in the UI. The computer system updates the UI in real-time based on the determined edits to the data model data and presents the updated UI in real-time without losing state information in the resultant UI.
申请公布号 US8756515(B2) 申请公布日期 2014.06.17
申请号 US200912637353 申请日期 2009.12.14
申请人 Microsoft Corporation 发明人 Jayadevan Siddharth;Hackmann Christopher Donald;Danton Stephen M.;Kent Simon David;Murray Michael Charles
分类号 G06F3/048;G06F3/00 主分类号 G06F3/048
代理机构 代理人 Chen Nicholas;Haslam Brian;Minhas Micky
主权项 1. At a computer system that includes one or more processors and system memory, a method for providing a real-time incremental editor for enacting changes to user interface (UI) elements of an active UI, the method comprising: an act of the computer system presenting a first UI of an executing application program based on a UI model that includes declarative model data that drives the behavior of the first UI, the first UI including a plurality of UI elements, the UI model including particular declarative model data that declaratively defines a visual appearance of the plurality of UI elements of the first UI, each of the plurality of UI elements being an instance of the particular declarative model data; an-act of the computer system visually indicating a state of the first UI, including visually indicating within the first UI that a particular UI element of the plurality of UI elements has been selected by a user at the first UI; concurrent to presenting the first UI of the application program, and concurrent to visually indicating within the first UI that the particular UI element has been selected by a user: an act of the computer system presenting a second UI of a real-time incremental editor that is separate from the application program and that is configured to receive one or more editing inputs that are to be applied to the particular declarative model data of the UI model, to edit the first UI of the application program while the application program is executing;an act of the computer system receiving a first editing user input at the second UI of the real-time incremental editor, the first editing input selecting the particular declarative model data that declaratively defines the plurality of UI elements;based on selection of the particular declarative model data within the real-time incremental editor, visually distinguishing each of the plurality of UI elements, including the particular UI element, within the first UI as being selected at the second UI of the real-time incremental editor, while also visually indicating within the first UI that the particular UI element has been selected at the first UI;an act of the computer system receiving a second editing user input at the second UI of the real-time incremental editor, the second editing input indicating one or more desired edits that are to be made to the plurality of UI elements that affect the visual appearance of the plurality of UI elements within the first UI;an act of the computer system determining, based on the received editing input, one or more changes that are to be made to the particular declarative model data corresponding to the plurality of UI elements in order to enact the one or more desired edits to each of the plurality of UI elements; andan act of the computer system updating the first UI to reflect the one or more desired edits to the plurality of UI elements, including: preserving the state of the first UI to reflect the user selection of the particular UI element by continuing to visually indicate that the particular UI element has been selected by the user; andconcurrent to continuing to visually indicate that the particular UI element has been selected by the user, altering the visual appearance of each of the plurality of UI elements, including the particular UI element, based on the one or more changes to the particular declarative model data corresponding to the plurality of UI elements.
地址 Redmond WA US