Mark A. Alcazar - Seattle WA, US Ashraf A. Michail - Redmond WA, US John G. Bedworth - Redmond WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 17/00
US Classification:
715530
Abstract:
An extensible editor allows integration of extensions that modify the editor's default behavior and provide customized feedback to users. The editor includes an event routing model that works to decrease the occurrence of conflicts between the editor and extensions and between extensions. Upon the occurrence of an event, the editor routes the event to each extension before the editor's default handling of the event occurs. When an extension responds to an event, the extension may “consume” the event by indicating to the editor not to allow further processing of the event. After an event has been pre-processed by each extension, the default editor acts on the event. The editor then routes the event to each extension again, to allow each extension to process the event after the default editor has acted. When the post-processing is completed, each extension is notified of the actions taken by the editor and by each of the other extensions. The editor includes interfaces through which extensions are connected to the editor and through which selection services and highlight rendering services are provided.
Journalling Non-Navigation Activity In A Navigation-Based Application
Margaret Goodwin - Lynnwood WA, US Mark A. Alcazar - Seattle WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 17/30
US Classification:
707101, 707 10, 707102
Abstract:
The mechanisms and techniques described in this document are directed to a journal that allows a navigation-based application to store and restore state of a resource that is programmatically altered. A resource may invoke code that creates and stores an entry in the journal. The entry includes sufficient information to restore the resource from one state to its prior state. In addition, the entry includes a mechanism for creating another entry to undo any changes made by the first entry. In this manner, the journal includes both entries that identify navigations from one resource to another, and entries may be added to undo changes to a resource to restore the resource to a prior state.
System And Method For Progressively Installing A Software Application
Mark A. Alcazar - Seattle WA, US Michael Dunn - Redmond WA, US Adriaan W. Canter - Seattle WA, US Venkata Rama Prasad Tammana - Kirkland WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 9/445
US Classification:
717174, 717175, 717176, 717177, 717178
Abstract:
Described is a mechanism for enabling an application operating as a web application to transition to a client-side application without impacting a user's interaction with the application. The progressive installation transitions through three states: a start-up state, a demand state, and an install state. During the start-up state, a subset of components associated with the application is downloaded and stored in a local data store. The subset is sufficient to allow execution of the application in a manner similar to a web application. During the demand state, additional resources associated with the application are downloaded. Transitioning from the demand state to the installed state occurs without impacting a user's interaction with the application. The transition may occur autonomously based on the number of additional resources stored in the local data store or upon an external trigger.
Mark Alcazar - Seattle WA, US Jan Thomas Miksovsky - Seattle WA, US David J. Sheldon - Seattle WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 15/16
US Classification:
709236, 709218, 709223, 715762, 715738, 715804
Abstract:
An architectural software framework is provided for creating Web-style application software incorporating protocols and means for expansion and interfacing with other Web-style programs, as well as a reusable basic programming structure, consisting of abstract and concrete data types, that assist in building Web-style applications. The architectural software framework includes a page function and frame. Each Web-style application includes one or more page functions which communicate via the frame.
System And Method For Hosting An Application In One Of A Plurality Of Execution Environments
Murray E. Watt - Redmond WA, US Mark A. Alcazar - Seattle WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 3/00 G06F 9/44 G06F 9/445
US Classification:
719311, 717173, 717178
Abstract:
Described is a mechanism for executing a hosted application in either a browser-execution environment or as a standalone application. The invention provides a mechanism that enables hosting code in either of plural hosting environments. Briefly stated, code is created that executes in a common execution environment. That execution environment can be either owned by a browser or not. When the code is launched, a host sniffer component determines from an indicator within the code which hosting environment is appropriate. Based on that indicator, the code is launched in the appropriate hosting environment. The appropriate hosting environment may be either browser hosted or standalone.
Selection Services Component For An Extensible Editor
Ashraf A. Michail - Redmond WA, US Mark A. Alcazar - Seattle WA, US John G. Bedworth - Redmond WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06N 3/00
US Classification:
715255
Abstract:
An extensible editor allows integration of extensions that modify the editor's default behavior and provide customized feedback to users. The editor includes interfaces through which extensions are connected to the editor and through which selection services and highlight rendering services are provided. The selection services interfaces provide a clear separation of a logical selection position in the document and the visual feedback provided for the selection, allowing extensions to be designed that provide customized selection feedback. The highlight rendering services interfaces provide an extension with the ability to augment an existing selection without modifying the actual document. The editor also includes an event routing model that works to decrease the occurrence of conflicts between the editor and extensions and between extensions. Upon the occurrence of an event, the editor routes the event to each extension before the editor's default handling of the event occurs.
Resource Loader For Applications That Utilize Relative Uniform Resource Identifiers
Mark Alcazar - Seattle WA, US WeiBing Zhan - Sammamish WA, US Sundaram Ramani - Redmond WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 9/46
US Classification:
718104, 709226, 719331
Abstract:
A resource loader provides resource lookup and redirection to computer software applications. The resource loader allows applications to be written using relative Uniform Resource Identifier (“URI”) rather than hard-coded URI that includes a protocol identified at the beginning of the URI and further indicates the location of the resource in a fully qualified path. During execution, applications may initiate execution of the resource loader that in turn locates and returns the resource to the application. In this way, applications may be written that are agnostic as to how their resources are packaged. That is, a change of resource packaging does not necessitate a re-write of the application source code. In some cases, the resource loader may be accessed by one or more applications through an Application Program Interface (API) provided by the resource loader. The applications may also pass a resource identifier for the desired resource to the resource loader.
Hosting An Application In One Of A Plurality Of Execution Environments
Mark A. Alcazar - Seattle WA, US Murray E. Watt - Redmond WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 9/44 G06F 15/16
US Classification:
719330, 709200
Abstract:
Described is a mechanism for executing a hosted application in either a browser-execution environment or as a standalone application. The invention provides a mechanism that enables hosting code in either of plural hosting environments. Briefly stated, code is created that executes in a common execution environment. That execution environment can be either owned by a browser or not. When the code is launched, a host sniffer component determines from an indicator within the code which hosting environment is appropriate. Based on that indicator, the code is launched in the appropriate hosting environment. The appropriate hosting environment may be either browser hosted or standalone.
Microsoft
Partner Development Manager at Microsoft
Microsoft
Partner Development Manager
Microsoft Sep 2009 - Sep 2011
Director of Development
Education:
University of Pennsylvania 1990 - 1991
Master of Science, Masters, Computer Science
University of the West Indies, St. Augustine Campus 1987 - 1990
Bachelors, Computer Engineering
Skills:
Software Development Software Design Object Oriented Design Distributed Systems Linux C# Software Engineering Silverlight Agile Methodologies Software Project Management .Net Framework Scrum C++ Visual Studio