Patents by Inventor Barry Feigenbaum

Barry Feigenbaum has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20070234308
    Abstract: A method, computer program product, and data processing system for automatically validating a GUI for accessibility are disclosed. In a preferred embodiment, a markup language, such as XML, is utilized to specify a set of declarative validation rules to be applied to components in an object-oriented GUI. GUI validation code is generated from the XML rules. This GUI validation code is incorporated into the software to be validated using aspect-oriented programming to insert the validation code at the point(s) in the software where the GUI is generated and/or rendered. When the software is executed and the GUI generated, the validation code is executed to verify that each component in the GUI hierarchy complies with the specified accessibility rules. The results of the validation are then reported to the developer.
    Type: Application
    Filed: March 7, 2006
    Publication date: October 4, 2007
    Inventors: Barry Feigenbaum, Michael Squillace
  • Publication number: 20070143678
    Abstract: A method, computer program product, and data processing system for recording GUI events and for persistently identifying the events' target GUI components for subsequent playback of the recorded events are disclosed. According to a preferred embodiment of the invention, each GUI component is assigned a numerical identifier by traversing the component hierarchy in a well-defined order. As the GUI components are visited during the traversal, the components are numbered sequentially according the order in which the components were visited. When events are received, they are recorded along with the number corresponding to the target component of the event. Upon a subsequent execution of the GUI program, the hierarchy is traversed again in the same order, which results in the same assignment of identifying numbers to components. Therefore, the recorded events may be played back by applying each event to its corresponding target component, as identified by number.
    Type: Application
    Filed: December 21, 2005
    Publication date: June 21, 2007
    Inventor: Barry Feigenbaum
  • Publication number: 20070136658
    Abstract: A method, computer program product, and data processing system for generating GUI code from a declarative specification is disclosed. In a preferred embodiment, a markup language, such as XML, is utilized to specify the hierarchical structure of an object-oriented GUI and the various attributes of its components. Additional special-purpose attributes and/or nested markup tags corresponding to particular types of event handlers and events are used to embed lines of non-markup program code (typically imperative program code) within the XML document. To produce the program code for the GUI, the XML document is processed and instructions for constructing the GUI to the XML document's specifications are generated. The embedded non-markup program code is formed into event handlers in the generated output program code, which are associated, in the output program code, with the GUI components to which they correspond.
    Type: Application
    Filed: November 29, 2005
    Publication date: June 14, 2007
    Inventors: Barry Feigenbaum, Michael Squillace
  • Publication number: 20070112572
    Abstract: A method, system, and computer program product for assisting individuals with vision impairment in their selection of items that are typically displayed in a list.
    Type: Application
    Filed: November 15, 2005
    Publication date: May 17, 2007
    Inventors: Keith Fail, Roy Feigel, Barry Feigenbaum
  • Publication number: 20060236268
    Abstract: A method, computer program product, and data processing system for facilitating the traversal of a hierarchy of GUI components containing components and/or containers from disparate GUI toolkits is disclosed. In a preferred embodiment, auxiliary associative data structures relating parent components in one toolkit to children in another toolkit are defined. When examining a component to determine if it has children, an appropriate associative data structure is consulted to determine if that component has a child from a disparate toolkit. In accordance with this preferred embodiment, additional associative data structures are defined, which also record the reverse “child-parent” relationship, so as to allow the GUI component tree to be traversed in both directions.
    Type: Application
    Filed: April 19, 2005
    Publication date: October 19, 2006
    Inventor: Barry Feigenbaum
  • Publication number: 20060092387
    Abstract: The present invention is a portable, configurable, inexpensive large scale projection system. The system is comprised of a plurality of projectors mounted on a structure and a display screen. The structure can be reconfigured to hold more or fewer projectors, and can be disassembled for easy transportation and reassembled. In an embodiment, the structure is comprised of containers and the projectors are mounted on calibration tables.
    Type: Application
    Filed: November 4, 2004
    Publication date: May 4, 2006
    Applicant: International Business Machines Corporation
    Inventors: Roy Feigel, Barry Feigenbaum
  • Publication number: 20060026555
    Abstract: An apparatus, a method, and a computer program are provided to enable an engine to employ a plurality of architectures in building and rendering a hierarchical structure, such as a Graphical User Interface (GUI). Currently, engines are typically hard coded to employ a single architecture, thus, requiring the engine to be architecturally specific. However, with the variety of architectures that exist and that are in use, it is useful to have an engine that can interact with many architectures. Therefore, an engine is provided with an interface that allows for interaction with many architectures while maintaining an engine that is architecturally neutral.
    Type: Application
    Filed: July 13, 2004
    Publication date: February 2, 2006
    Applicant: International Business Machines Corporation
    Inventors: Barry Feigenbaum, Michael Squillace
  • Publication number: 20060005174
    Abstract: A method, a computer program, and an apparatus are provided for building a hierarchical data tree. Typically, hierarchical trees are utilized in building Graphic User Interfaces. However, there are a variety of other uses. During the process of building, a rendering engine is employed to develop the tree, but some objects, attributes, or tags may not be identifiable to the rendering engine. In such cases, a reflection engine can be employed to identify the unidentifiable operational elements. The combination of a rendering engine with a reflection engine allows for increased flexibility in designing a hierarchical tree without the rigors of handwriting a large number of lines of code.
    Type: Application
    Filed: July 1, 2004
    Publication date: January 5, 2006
    Applicant: International Business Machines Corporation
    Inventors: Barry Feigenbaum, Michael Squillace
  • Publication number: 20050212716
    Abstract: The present invention provides for rendering a display over a plurality of graphical interfaces. A column number associated with each member of a plurality of display devices is assigned. A row number associated with each member of a plurality of display devices is assigned. An image to be displayed on at least one of the plurality of display devices is generated. A plurality of segments from the generated image is generated. A first and second offset for the at least one of the plurality of display devices are generated. At least two segments of the image devices, as a function of the first and second offset, are selected. The at least two selected segments on the at least two display devices are displayed. Through the use of software to perform many of these functions, flexibility of distribution between client computer and server computers can be had.
    Type: Application
    Filed: March 25, 2004
    Publication date: September 29, 2005
    Applicant: International Business Machines Corporation
    Inventors: Roy Feigel, Barry Feigenbaum
  • Publication number: 20050195195
    Abstract: A system, apparatus and method of creating a control path for an animated object are provided. The system, apparatus and method enable an animator to draw a control path over a background image. The background image is an image through which the animated object is to navigate. After drawing the control path over the background image, different colors may be assigned at different locations of the control path. Each color is used to instruct the animated object to take a specific action. For example, a color may be used to instruct the animated to move from right-to-left, another color may be used to instruct the object to stop, turn right, turn left etc. Consequently, as the animated object is moving along the control path and encounters a particular color, the animated object may behave as instructed.
    Type: Application
    Filed: March 4, 2004
    Publication date: September 8, 2005
    Applicant: International Business Machines Corporation
    Inventors: Tom Brunet, Barry Feigenbaum