System for providing hosting to objects of graphical composition or representation

FIELD: engineering of computer components for ordering graphic elements, shown through graphic user interface.

SUBSTANCE: a system of presenting means provides base class of presenting means and a set of interface methods, realized by presentation mechanism, for creation and integration of expandable set of classes of presenting means for processing data of graphical elements of various types during composition operation in given visible image. System of presenting means allows realization of complex image composition operations through calls of presentation mechanism. Aforementioned complex image composition operations include: breaking into pages, partial computation, stepwise computation, a set of samples, alteration of capabilities/operations of composition.

EFFECT: expanded functional capabilities, due to support of compositions of visible images of application, to which a set of graphic elements is assigned.

4 cl, 15 dwg

 

The technical field to which the invention relates.

The present invention relates generally to computing devices. In particular, the present invention relates to computing components to organize the graphical elements that are displayed through a graphical document/UI.

The level of technology

Displaying and/or rendering the graphical output for an application that runs in a computer system, includes a variety of tasks. One of such tasks is to manage the layout/view. Managing layout/presentation applies to organize and "finish" (decoration) of the set of image elements in the allocated places for them (e.g., rectangles). Although the term "compose" and the term "representation" in other contexts in the sense to vary, in this specification, these terms should be interpreted as interchangeable and equivalent. The display elements processed by the composition system/views provide a graphical output on the components of the imaging system graphical output and the drivers for the graphics display. These visualization components operate hardware graphics display, such as monitors and printers.

Operation layout/before the delivery, performed computational systems that cover a wide variety of functions performed on the graphics display. An example of such operation is the ordering of the text within the specified dimensions of the graphical user interface editing application. The composition operation determines the content and placement of lines of text in the designated rectangular space. Another example is the framing element (for example, dialog boxes, panels, tools, panel control elements and so on) with unified border. These operations are also referred to as "capabilities" (options). Visualization components of the computer system creates a graphical output based on the state of the display elements that may have been modified previously executed operations/options layout/view.

There are various mechanisms of representation. For example, "user module" Microsoft Windows performs layout in relation to the Windows of the high-level graphical user interface. Administrator dialog box Microsoft Windows places the objects in predefined positions and allows you to group objects. The positioning of objects is carried out in a logical order and not hung the t from the physical device. System JAVA SWING performs basic operations of the accommodation in relation to objects in the visible image based on the properties set on the object.

Operation layout/presentation are currently several ways. The composition operation of the display elements can be completely fulfilled by the application itself. The composition operation (or "representation") is encapsulated in the application. The application performs the "finish"/assembles items for the same visible image (or images)linked(s) with the current state of the application. The application sorts the elements in the display area allocated to the application. The application then renders the display output corresponding to the orderly display items, passing them in the graphics system/drivers.

Another variant of the configuration of the processing composition, is included in the operating system Microsoft Windows XP provides support for a predefined set of layout features that can be used by applications. The set of layout features contains specialized operations layout/view to display elements of a graphical user interface for applications. A set of predefined layout features/view, such as, for example, the gene is combined with borders to provide rectangles, reduces the amount of programming for applications relating to specific aspects of the organization and presentation of elements of the graphical display. This set of predefined possibilities also facilitates compatibility with running some basic features/functions of the display, for example with the above limits. Applications complement predefined functional layout features additional operations layout built into the applications themselves.

Famous architecture of the processing composition, which includes pre-defined layout features that can be demanded by the application, simplifies programming layout tasks faced by the application during the ordering of the visible image, before providing the graphics data and commands visualization components of the computer system. However, the known architecture of the processing composition hardly supports the expansion or modification of the related set of pre-defined layout features that can be used by applications. Thus, the new layout features are placed, for example, directly in the application program, instead of including these features in a set of predefined possible the TEI layout the proposed architecture view/layout. Further, during execution, the application performs the calculation for composition using a combination of pre-defined functionality build and run inside the application operations layout/view.

The invention

The present invention provides a system presenters (s view) for inclusion in the composition of the management system layout the graphical output. The specified control layout is focused on the way that objects are ordered, specify the amount and placed in the display space. These systems process the layout from the name of the program that provides the graphical elements that contain data representing display content program (e.g., a block of text that needs to be rearranged on the display or printed page). Presenters perform an additional role in relation to the graphical elements (which define the data) by setting the status display for presenting the content of the graphical elements. As such, the presenters support the description of the composition of the corresponding graphical element.

According to the invention, the system presenters hosting and arranges presentat the market, associated with the graphical elements in the visible image. System presenters, acting as support for the process of production (output) of the presenters of many types, includes a base class presenters (s view), from which the classes of the presenters. After that, the presenters are specified on the basis of the derived classes of the presenters.

System presenters also includes the leading interface of the presenters. Leading interface contains a method for the layout of graphical elements in the visible image in accordance with the presenters associated with the graphical elements. As such, the layout of the graphic elements in the visible image is set to the appropriate presenters.

Brief description of drawings

Although features of the present invention are detailed in the attached claims, the invention and its advantages can be best understood from the following detailed description together with the accompanying drawings, in which:

Fig. 1 is a block diagram depicting cited as an example computing system to perform one variant of the invention;

Fig. 2 - the high-level map depicting the main components of the architecture, layout management, including the presenters to perform support g is epicheskoi layout in the computer system, which embodies the present invention;

Fig. 3 is a diagram depicting the relationship between graphic elements and presenters defining graphic document/user interface in the system which embodies the present invention;

figures 4A and 4b - summary of framework base class presenters, from which derive classes of objects presenters according to user requirements, for specific tasks layout/rendering in the system which embodies the present invention;

Fig. 5 - the total structure of the subsidiary intermediary class;

Fig. 6 - the final structure of the class interface handlers notifications;

Fig. 7 - the final structure of the class node handlers notifications;

Fig. 8 - final class structure visible image;

Fig. 9 - the final view of parts of the structure BoxSizeInfo (information about the dimensions of the rectangle);

Fig. 10 - the final view of parts of the structure of the page descriptor;

Fig. 11 - the final structure of the engine class presentation;

Fig. 12 is a block diagram giving a summary view of exemplary steps for processing changes to the graphical element on the basis of the notification handler;

Fig. 13 is a block diagram giving a summary view of exemplary steps for performing repeated calculations and rendering visible from the expression, contains a set of presenters, according to the variant of the present invention; and

Fig. 14 is a block diagram giving a summary view of exemplary steps to perform the upgrade in the presenter (and related affected child presenters) in response to a change in the associated graphical element.

Detailed description of drawings

Below is disclosed architecture user interface and layout/repose of the document.

Open architecture layout/presentation that includes components (the presenters, the modules view) image processing/visualization layout, which implement aspects of the visible image corresponding to the reference data (graphical elements) for bond/UI. System presenters hostium (puts) the presenters. Fulfilling its leadership role, the system presenters organizes and coordinates the update of the visible image containing a set of presenters, in response to changes in the corresponding graphical elements. Thus, the system of presenters provides a mechanism that binds the state (for example, status data) graphical elements with the States of the visible image that is updated, the cached and rendered with the corresponding objects of the presenters./p>

One of the aspects of the architecture layout/presentation on the basis of the presenters, in which is embodied the present invention is the high degree of extensibility in relation to the types of presenters that it controls. Base class presenters provided by the presenters, facilitates an extension of the set of types of presenters (classes of objects)that are available for layout and rendering of information provided by the respective graphical element. Different types of presenters, derived from the base class presenters include specific ways layout/rendering as overrides for methods by default, set the base class presenters. The objects of the presenters created based on the feature dataset presenters, allow the layout/presentation according to the status data of the corresponding graphical element.

The system of internal controls presentatore objects created (set) based on the feature dataset presenters. System presenters implements management (i.e. creation, deletion and so on) throughout the lifetime of the objects of the presenters. The system provides presenters processing associated with tracking the "contamination" of presentat the ditch, to selectively update only the changed presenters. System presenters supports the concatenation of the presenters to provide elements of "finishing" (jewelry) main presenters. System presenters also coordinates the updating and visualization of the presenters.

In one embodiment of the invention due to the presence of handlers notification facilitates notification of changes of graphical elements, potentially affecting the state of the visible image. Handlers provide notification processing notifications of changes in allocated from process changes made by the presenters. Each type of item presenter associated with the type of the notification handler. Each handler notification handles changes of the corresponding graphical element. If update is necessary, then the notification handler initiates setting properties "contamination" in the corresponding object of the presenter. Set property "pollution" causes a re-calculation for the object presenter in response to changes of the corresponding graphical element.

Architecture layout/view user interface, described here as an example, included with the operating system, which provides hosting is alogeni, having a graphical user/bond interfaces. Application, presenters and operating system components for visualization, device-specific software, and drivers for specific devices, render command/control data output device graphics data interface/document for display on the hardware device display (e.g., monitors, printers, etc). Opportunities (options) compositing the rendered output data based at least in part, on the processing composition/representation and visualization performed by the presenters, a hosted system presenters.

Architecture view allows you to break the link between the state of the data displayed item and the condition of the visible image. This separation provides an extensible platform with wide options to configure a user to create new and specialized capabilities for basic graphic element. In one embodiment of the invention, the display element represented by an object is a graphical element (representing the state of the data element) and at least one associated object presenter (representing the state of the visible image for layout (placement) of the item in specific is ω visible image. The presenter performs custom update link to related item. The presenter also visualizes the image of the item after you update the layout.

The use of the objects of the presenter addresses the relationship between the state of the data item being displayed and display it in a visible image. Because of this, each graphic element (source display) has the potential to have multiple presenters, providing separate the visible image of the graphic element (for example, full and thumbnail photographic element). The ability to bind a variety of presenters with one graphic element also allows you to associate a single element with multiple locations within a field (for example, splitting a single graphic element in the set of columns). In addition, the system presenters supports concatenation of multiple presenters of different types with one element, the result of which is supported by the consolidation of many different elements "finish"configured by the user for the base visible image for the item. Next, with reference to the drawings describes these and other aspects of the exemplary architecture layout/rendering images.

In Fig. 1 as the example shows a suitable OPE the include environment 100 for implementing the architecture layout/presentation of maps on the basis of the presenters. Operating environment 100 is only one example of a suitable operating environment, and it should not be construed as any limitation of the scope of use or functionality of the invention. Other well known computing systems, environments, and/or configurations that may be suitable for use with this invention include, but are not limited to: personal computers, server computers, laptop/desktop computing devices, portable computing devices, multiprocessor systems, microprocessor-based, network personal computers, minicomputers, universal computers, distributed computing environments that include any of the above systems or devices, etc. Disclosed here the architecture of the control arrangement, for example, the architecture shown in figure 1, including the presenters, meets several requirements, including extensibility, integration and uniformity in respect to functionality display for the computing system.

The invention described in the General context of a set of steps and processes implemented by commands, such as program modules, executed by the computer. Typically, program modules include routines, programs, objects the points, components, data structures, etc. that perform particular tasks or implement a separate abstract data types. Although shown as an example of the variant described with reference to a locally-running operations in a single computer system, the invention can potentially be included in the composition of network nodes operating in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules are usually found on both local and remote computer storage media including memory devices.

Refer to figure 1, which shows as an example system for implementing the invention includes a computing device for General purposes in the form of a computer 110. Components of computer 110 may include, but is not limited to processing block is 120, system memory 130, and a system bus 121 that connects various system components including the system memory unit 120 processing. The system bus may be a bus-bar structure of any of several types, including a memory bus or memory controller, a peripheral bus and a local bus using any of a variety of different bus architectures. As an example, but not the AK limitation, such architectures include: the bus industry standard architecture (ISA)bus with microchannel architecture (MCA)bus, enhanced architecture ISA (EISA), local bus, developed by the standards Association video (VESA), and bus peripheral component interconnect (PCI), also known as Mezzanine bus.

The computer 110 typically includes a variety of different machine-readable media. Machine-readable medium may be any available medium that can be accessed by computer 110 and includes both volatile and non-volatile medium, removable and non-removable medium (media). As an example, but not limitation, machine-readable medium may include computer storage medium and the communication environment. A computer storage medium includes volatile and nonvolatile, both removable and non-removable environment, implemented in any method or technology for storage of information such as machine-readable commands, data structures, program modules or other data. A computer storage medium includes, but not limited to random access memory (RAM), read-only memory (ROM), electrically erasable PROM (EEPROM), flash memory or other memory technology, the ROM on the CD-ROM (CD-ROM), digital versatile disks (DVD) or other Zap moneysee device for optical disks, magnetic cassettes, magnetic tape, a storage device on a magnetic disk or other magnetic storage devices, or any other medium which can be used to mark the desired information and which can be accessed by computer 110. The communication environment is usually embodies a machine-readable commands, data structures, program modules or other data in a modulated data signal such as a carrier signal, or any other mechanism for data transport, and includes any medium for information delivery. The term "modulated data signal" means a signal that has one or more of its characteristics set or changed in such a way as to ensure the encoding of information in the signal. As an example, but not limitation, the communication environment includes a wired medium, such as a wired network or direct-wired connection, and wireless environment, such as acoustic, RF, infrared or other wireless environment. In the field of machine-readable medium may also include combinations of any of the above environments.

The system memory 130 includes computer storage medium in the form of volatile and/or nonvolatile memory, such as memory 131 to read-only (ROM) and memory 132 with arbitrary to blunt (RAM). Basic system 133 input/output (BIOS), containing basic routines that help to transfer information between elements within computer 110, for example during start-up, sometimes stored in ROM 131. RAM 132 typically contains data and/or program modules that are immediately accessible to and/or currently processing unit 120 processing. As an example, but not limitation, in Fig. 1 illustrates operating system 134, application programs 135, other program modules 136, and program data 137.

The computer 110 may also include other removable/non-removable, volatile/nonvolatile computer storage environment. As an example in Fig. 1 shows only the drive 140 on hard drives, which is reading from or writing to non-removable, nonvolatile magnetic media (media), the drive 151 on a magnetic disk, which performs reading from or writing to a removable nonvolatile magnetic disk 152, and the drive 155 on an optical disc, which performs reading from and writing to a removable, nonvolatile optical disk 156 such as a CD ROM or other optical media. Other removable/non-removable, volatile/non-volatile storage media that can be used in the example operating environment include, but is not only the: magnetic cassette tape, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM), etc. Drive 141 on the hard drives are typically connected to the system bus 121 through a non-removable memory interface such as interface 140, and the drive 151 on a magnetic disk and disk drive 155 on the optical disk is typically connected to the system bus 121 by a removable memory interface, such as interface 150.

The drives and their associated computer storage medium described above and shown in Fig. 1, ensure the preservation of machine-readable commands, data structures, program modules and other data for the computer 110. In Fig. 1 as the example shows that the drive 141 on the hard disk stores the operating system 144, application programs 145, other program modules 146, and program data 147. Note that these components can be the same or different from operating system 134, application programs 135, other program modules 136, and program data 137. Operating system 144, application programs 145, other program modules 146, and program data 147 are presented here different reference positions, to show that they are at least different copies. The user can enter commands and information into the computer 20 through input devices such as keyboards is 162 and pointing device 161, which usually means a mouse, trackball or touch keyboard. Other input devices (not shown) may include a microphone, joystick, game pad, satellite dish, scanner, or the like, These and other input devices are often connected to the processing block is 120 through the user interface 180 of the input, which is connected to the system bus, although these devices may be connected by other interface and bus structures, such as a parallel port, game port or a universal serial bus (USB). Through the interface, such as a video interface 190, to the system bus 121 may also be connected to the monitor 191 or the display device of another type. In addition to the monitor, computers may also include other peripheral output devices such as speakers 197 and printer 196, which may be connected through an output peripheral interface 195.

The computer 110 potentially operates in a networked environment using logical connections to one or more remote computers, such as a remote computer 180. The remote computer 180 may be a personal computer, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the ways, described above in connection with the computer 110, although in Fig. 1 shows only the memory device 181. The logical connections depicted in Fig. 1 include a local area network (LAN) 171 and a wide area network (WAN) 173, but may also include other networks. Such networking environments are widely distributed in offices, corporate computer networks, intranets and the Internet.

When using in a network environment LAN computer 110 connected to the LAN 171 through a network interface or adapter 170. When used in a WAN network environment, the computer 110 typically includes a modem 172 or other means for establishing communications over the WAN 173, such as the Internet. The modem 172, which may be built-in or external, may be connected to the system bus 121 via the input interface 160 of the user, or any other suitable mechanism. In a networked environment, program modules depicted in relation to the computer 110, or a portion thereof may be stored in a remote storage device. As an example, but not limitation, in Fig. 1 illustrates remote application programs 185 located in the storage device 181. Obviously, illustrated network connections are shown as examples, and that you can use other means to establish lines of communication between computers.

In Fig. 2 presents the high-level map, identify the aja software modules and programs and more specific objects and data components of the system architecture layout management/representation which embodies the present invention. Given as an example of the architecture of the control system layout/view shown in Fig. 2, includes a system 200 presenters, which supports the layout/presentation of displayed objects based on a set of hierarchically organized objects presenters associated with the creation of a visible image 202 based on the class of the object visible in the image (see Fig described below) when the requesting application 204 executing in the operating system 205.

In one embodiment of the invention each visible image (e.g., visible image 202) has an appropriate system of presenters (e.g., system 200 of the presenters), which is responsible for maintaining the displayed objects in the visible image. In one embodiment of the invention, the image 202 is a visual root object for all visual objects that are created by the system 200 presenters. The content that is displayed in the visible image 202 based on the graphical elements 206 in the auxiliary storage device 208. The application 204 is a source of graphical elements 206 in the auxiliary storage ustroystva. In Fig. 3, described below, shows an example, which shows the relationship between the visible image, the presenters, trees presenters for visible images and trees graphical elements associated with the application.

The architecture of the control system layout/view depicted in Fig. 2, is divided into many functional components. The lines between the components depicted are ways of interaction between components. The present invention is not limited to the specific arrangement of components shown in the example interactions between components in the illustrative embodiment shown in figure 2. On the contrary, described below, the functionality of the components grouped in various combinations according to an alternative variation of the invention.

In one embodiment of the invention, the application 204 calls the constructor method on the API classes of objects - visible images (see the structure of classes of visible images in Fig. 8, described below) to create root object for the instance of the object visible image 202. The method call to create the visible image 202 passes through a reference to the root graphical element of the graphical elements 206, located in the auxiliary storage device is 208. After creating a visible image 202 method call DoLayout (build) on a visible image 202 creates a tree of presenters for the visible image 202 with the root object presenter corresponding to the root of the graphical element is initially passed to the constructor that created the visible image 202. The tree of presenters (Fig. 2 is not shown) for the visible image 202 includes a set of presenters who are responsible for the organization and visualization of output data for the visible image 202.

In one embodiment of the invention each visible image (e.g., visible image 202) has a system of presenters (e.g., system 200 of the presenters). Thus, in response to the method call DoLayout visible image 202 initiates a creation of new wood presenters and returns it to the caller (for example, the application 204). In the initial state, the visible image 202 calls the constructor method of the class object-mechanisms of view for instance creation mechanism 212 views, including leading application programming interface presenters (leading API presenters). Mechanism 212 submission includes an executable program for coordination and organization of operations layout/presentation in the computer with the system, supports graphical output. Functions performed/coordinated mechanism 212 views include: creating objects presenters (both root and child versions), the coordination of the re-calculation of the display States of the presenters, visualization, management presenters during the entire time of their existence, tracking contamination, adhesion of a variety of presenters with one element, and execute step-by-step layout. Examples of calling methods on the host API presenters mechanism 212 views described below with reference to Fig. 12. These methods represent queries that will create and maintain a tree of objects of presenters for the visible image 202. Identified tasks performed by mechanism 212 views are given as examples, and specialists in the art should be understood that in alternative embodiments of the invention the mechanism 212 may solve additional/alternative tasks.

Mechanism 212 views builds the system 200 presenters for processing objects presenters associated with the visible image 202. In one embodiment of the invention, the system 200 of presenters includes a base class 216 of the presenters. Base class 216 presenters b is the basic class with a full set of capabilities for creating subclasses of presenters and objects of the presenters, able to use the functionality of the control arrangement for the system described below. Base class 216 presenters contains a template that includes a virtual (overridable) software code and data structures, which are a set of classes 214 presenters. Classes 214 presenters contain a set of specialized types of presenters, the respective visible images, graphic elements with specific properties/display modes. Created to meet the requirements of the user classes 214 presenters received from the base class 216 presenters, for example, link content, streamline child presenters, create the visuals for their assigned items, divided by pages of content for printing documents and step-by-step mode, update the visuals, which includes graphical elements 206. Specialized functionality of each class presenters in the dataset 214 presenters are set by overriding and adding virtual methods defined in the base class 216 of the presenters. The objects of the presenters, selected on the basis of the set of classes 214 presenters represent and process aspects of the display of graphical elements 206.

In one embodiment of the invention a set of classes 214 is of bjectiv presenters, includes pre-defined classes 218 presenters and external classes 220 presenters, is extensible. For a set of pre-defined classes, 218 presenters provided by the system 200 presenters. External classes 220 objects presenters usually are set regardless of the system 200 presenters. However, properly combining external class 210 objects of presenters with system 200 presenters facilitated published specification for the interface for the base class 216 presenters (described below with reference to figures 4A and 4b). Developer external classes 220 presenters overrides/modifies the machine code and data structures associated with the configured according to user requirements methods layout/renderer base class 216 presenters to ensure the functions of the job size, positioning a child presenters and visualization with regard to the requirements of the user. After that, the set of external classes 220 objects presenters establish a new class of presenters, for example, by the installation of a file containing a new class of objects in the designated directory in the file system.

In one embodiment of the invention the class 214 of presenters includes classes presenters of various possibilities (options) layout, including, for example: the layout of the content, the ordering of child objects, creating a visualization, page splitting the document's content and step-by-step update of the visualization (e.g., HTML pages, which cover a multitude of display screens). Examples of special types of presenters include: text presenter, which provides measurement and display of text that is formatted in various ways (for example, bold, italic and so on); the presenter of the image, which provides measurement and display the specified image; and connecting the presenter, which divides the space between multiple child presenters.

After creating system 200 presenters and classes 214 presenters for this visible image specify the set of objects presenters associated with the visible image 202, and the system 200 presenters, starting with the root object of the presenter. Note that calling the method-constructor for class object view mechanism with the aim of creating a mechanism 212 submission identifies the root graphical element for visible image 202. After installation mechanism 212 views causes the graphical elements 206 to determine the type of the object presenter associated with the root of the graphical element to the visible image is to be placed 202. After determining the type of presenter graphical element mechanism 212 view calls in one of the classes 214 objects presenters method corresponding to the type of object the presenter identified graphical elements 206, to set the values of object root presenter for the visible image 202.

As shown by the path between the classes 214 presenters and an auxiliary storage device, the objects of the presenters, including the root presenter, refer to graphical elements 206 in the auxiliary storage device 208 to determine the properties of a particular graphical elements. For example, the object presenter for a particular graphical element is able to identify any child graphic elements specific graphical element and the type of presenter for each child of the graphic. Further object of the presenter calls for each identified child of the graphic native method 486 (for example, GetChildProxyForElement (get child proxy for the item)for implementation subsidiary intermediary (proxy) object proxy class 222 subsidiary intermediary system 200 presenters. Subsidiary intermediary (proxy) objects are packers (shell) for objects presenters, R is lisovanych (created) on the basis of class 214 objects presenters, which is embedded in the display space allocated to the object's parent presenter. Class 222 child intermediaries meets the requirements of encapsulation and security (for example, object is a child of the presenter object to the parent presenter or application 204 restricts access to the content presenter contained in the child presenter). Alternatively, the level of encapsulation provided by a subsidiary intermediary objects is ignored and the parent presenters have immediate access to their child presenters.

Method for the object presenter to create child object broker for one element in one embodiment of the invention calls the constructor method of the class 222 child intermediaries and transmits the identification data in the child graphic element to create a new subsidiary intermediary (proxy) object and object presenter for the child graphic. Immediately after creation (sales) new subsidiary intermediary object creates an object of the presenter for the child graphic element through the constructor of the presenter, corresponding to the type of presenter specified on the identified child graphic. In turn, a subsidiary intermediary object vozvrashaet who own a reference to the parent object of the presenter. The parent presenter supports the returned reference subsidiary intermediary object in the array of references to the subsidiary intermediary objects. As such, the entries in the children array of intermediary objects for presentators object correspond child graphical elements for the parent of a graphical element associated with the parent presenter.

Another aspect of the architecture organizing/representation of graphical elements, shown in figure 2, is notified of the change. In one embodiment of the present invention for objects presenters created from classes 214 presenters, provides a set of classes 224 handlers notifications. Classes 224 handlers notification shall be determined in accordance with the base class 225 handlers notifications. Base class 225 handlers notification is an abstract class that defines the interface for classes 224 handlers notifications. Base class 225 handlers notification provides the interface definition of the two virtual methods (see Fig.6), the implementation of which is provided in classes 224 handlers notification in accordance with the relevant classes 214 presenters. Classes 224 handlers notifications help to perform a rolling upgrade link, and re-vychislyayutsya objects presenter, subjected to changes in the set of corresponding graphical elements. In one embodiment of the invention the notification handler is defined for combinations of the graphic element and the visible image. In the cases of many of the presenters for one combination "graphic/visible image as the sole source for tracking changes in the item in order to update many of the presenters for this item in the visible image is valid only the notification handler. Each type of presenters sets the corresponding concrete type of the notification handler. When the object presenter for the item created, which will require the notification handler, the system presenters creates the appropriate handler notification of the specified type, and associates the notification handler with the object of the presenter.

Instances of classes 224 handlers notification determine which parts of the objects presenters are "contaminated" and therefore require updating. First, establish relationships notifications between graphical element and the notification engine, created for the presenter in the visible image (for example, in the visible image 202 for the application 204). The notification handler receives notification of changes associated with the graphics is lementa in the auxiliary storage device 208, through the mechanism 212 views in the system 200 presenters. The notification handler determines the portion, if any, of the presenter, which is affected by the change in the item. The notification handler returns information about the part, undergone a change in system 200 presenters. The presenter is mark as "contaminated" by a mechanism 212 views. The system 200 presenters gathers information about "contaminated" the presenters all presenters in the data structure that is supported for the visible image (e.g., visible image 202). Then, in response to the call for re-calculation of the composition of the visible image, the mechanism 212 views in the system 200 presenters method activates/update operation only on "contaminated" the presenters. Thus, classes 224 handlers notifications allow you to limit the update of the layout objects presenters, preterpevshie changes that were created on the basis of class 214 presenters.

The architecture of the system control arrangement which embodies the present invention operates independently from any specific hardware output, which ultimately tiled displays (display) elements in accordance with their specific visible image. The system architecture is the Board layout/presentation it is shown in Fig. 2, performs the step of preprocessing applied to the graphical output display. In one embodiment of the invention ordered output data associated with the architecture of the control system design/performance, do not depend on a particular device. Subsequently, at the stage of visualization objects presenters re-render the computed visible image on the components of the graphical output of the computing system. However, in other embodiments of the invention the output of the system layout/view return to the calling application or using objects 214 presenters, or using the system 200 of the presenters, and the application 204 performs the visualization task. In one embodiment of the invention the command renderer, if they are issued by the objects presenters derived from classes 214 presenters, the visible image 202 or application 204, proceed to the graphics subsystem and drivers 234 graphics device on the user's computer. The graphics subsystem and drivers 234 graphics device serves teams visualization and data specific to the selected output device, such as a monitor 236 or the printer 238.

To sum up about the architecture of the control system design/performance described above, it can be argued that the system 200 of the present the Directors provides a platform processing composition, not dependent on a particular device, for applications such as application 204. The processing composition is performed by objects presenters, created from a set of classes 214 presenters, the slave system 200 presenters. The system 200 presenters belongs to a visible image 200. Objects presenters correspond to particular States of the visible image visualization for graphical elements 206. The selection States of the visible image (object of presenters) of the States of the elements (graphic elements 206) allows independent designation set of States of the visible images/presenters for one state element. The layout is divided into visible images, such as a visible image 202, where each visible image corresponds to the display area, such as a specific rectangle on the output screen that is allocated to the application 204, or page of the document in the output graphic printer. The selection of data and States of the visible image allows one item to generate a number of visible images of this graphic element and, therefore, allows the display of one picture element in many types of/a variety of ways.

Another aspect of the disclosed here, the architecture of the control system compone is what is its high degree of extensibility. The extension of the set of classes 214 presenters facilitated the base class 216 presenters provided by the system 200 presenters and leading API presenters mechanism 212 of the view.

The above system architecture layout management supports many different enhanced processing composition for application that renders the graphics output to graphical user interfaces and printers. The ability to split a single element (graphic element) on the set of States of the visible image (the presenters, modules, views) facilitates paging and separation of elements in the set of columns (paging) in applications when rendering output to a printer or output visible image of the document on the display screen. Such applications include Web browsers and programs word processing.

Another advantage of using many of the presenters is the ability of applications to perform many attempts of placing your content in a given space of the display. Applications can implement many specific attempts at various sites of the presenters for the same item using different input parameters, and then grant the user the ability to choose on the best of the displayed image of the graphical element.

Another advantage arising from the use of the above-described architecture layout management is the ability to perform step-by-step changes of the visible image containing a set of presenters for a set of corresponding elements. The change is implemented on a per-item basis in the auxiliary storage device (see, for example, an auxiliary storage device 308 in Fig. 3). Handlers notifications and system 200 presenters provides the infrastructure to limit the update of the corresponding visible image by the presenters, which were subjected to changes in the relevant items in the auxiliary storage device.

Another advantage is given as an example of the architecture layout management is the ability to "finish" (jewelry) States the visible image elements embodied in the previously created the presenters. This is done by concatenating additional presenters with the presenter of the type that was specified for a particular item type. The clutch allows developers to extend the capabilities of user interfaces and output documents by adding borders, backgrounds, and so on to the state of the visible image, given a specific type of presenter for the element.

Given the above description of the General architecture of the system control arrangement which embodies the present invention, we turn our attention to Fig. 3, which shows the relationship between the visible image, the mechanisms of representation, the object presenter in visible images, graphic elements and handlers notifications for specific, given by way of example, the visible image.

Conceptual visible image specifies a particular method of linking a set of graphical elements presented in the auxiliary storage device 208, in accordance with predetermined (specified) the presenters. In one embodiment of the invention, the visible image is bounded by a rectangle in the output field (e.g., display screen). In addition to the rectangle and the coordinates of the visible image sets, graphic elements and associated presenters contained in the visible image. In addition, note that in one embodiment of the invention each visible image is associated with its own instance of the presenters (for example, the system 200A of the presenters for the visible image a and system 200b of the presenters for the visible image 202b).

As shown in figure 3, page memory 308 contains an organized set of graphical elements (Ex)related to see the mi images a and 202b. Graphic elements (Ex) are objects of content, organized by the user. Examples of items include a button or a text panel graphical user interface (GUI), a text editor, display, bitmap, etc. In one embodiment of the invention the graphical elements (Ex) in the auxiliary storage device 208 are arranged in a tree view. Each item (Ex) in the set of graphical elements 206 that is supported in the auxiliary storage device 208 is associated with a set of properties/placeholders (which can be defined explicitly or defined implicitly through other obvious properties/placeholders). One or more of these properties/fillers on the graphical elements specify the type of presenter, which is used for layout and rendering of content of the graphic element in combination with other components of the computer system. In embodiments of the invention coupled presenters defined explicitly or alternatives were defined implicitly through other properties set on the element (for example, the property "border" two pixels assumes the availability of the presenter, attached to the boundary). The types of properties that are specified for graphical elements depend on the specific graphical element and include color, font name, height, width, etc.

The auxiliary storage device 200 potentially associated with many visual images (e.g., visible image a and 202b). Each potential set of visible images has exclusive set of object instances of the presenters, corresponding to the set of graphical elements in the auxiliary storage device 208. Thus, when the graphic element is represented by a set of visible images, the object presenter is created for each visible item in the image (for example, the presenter P2 and the presenter P2' for element E2). A graphic element that is associated with the presenter, is specified in the owner field of the element, and corresponds to the dotted lines going from the presenters to the corresponding graphical elements. This is just one example of the architecture of the view shown in figures 2 and 3, which is supported by many of the presenters, acting on the basis of information provided by one graphic element.

As a consequence features / view architecture, embodying the above-described ability to attach multiple visible images (and presenters) to one and the same set of graphical elements in the auxiliary storage device 208, a graphical user interface capable of display in order to reap the many visible images of the same information set, provided graphic elements. For example, in an application such as MICROSOFT's POWERPOINT, supported simultaneously two visible image of the slide, the main visible image and the visible image to preview (or "sketch") for the same graphic element of the slide.

The ability to create multiple instances of objects presenter for one graphic element also facilitates the splitting of one graphical element on many pages and columns (for example, text document) (that is, if one graphical element is broken across two pages, then create two objects-presenter for the item, one for each page). Refer to figure 3, where the parent object of the presenter (e.g., P5) receives the transferred property from a graphical element (e.g., E5), indicating that the content item (for example, a text element E8) can be represented by two columns. Under the presenter P5 creates two object RA and 8b child presenters, corresponding to two separate rectangles for the column/page in the document to display text represented by the graphical element E8.

Another case of creating many of the presenters for one graphic element occurs when the graphic element are elements of "finishing is (for example, borders, backgrounds, frames and so on). Coupled presenter Q4 element E4, which provides a border around the rectangle defined by presenter P4 to save the text provided by the data field of the element E4 is an example of concatenated presenter. The presenter Q4 and the presenter P4 is connected/associated with the graphical element E4 by setting the graphic element E4 in their fields for the owner of the item. In one embodiment of the invention the parent presenter on the basis of the analysis element corresponding to one of its child elements, detects that the required concatenated presenter (for example, element is set to the boundary between two pixels). In the case of concatenated presenter Q4 when called by the presenter P1 method to create a child (intermediary) presenter for the child E4 presenter P1, based on the properties of E4, determines that it is necessary concatenated presenter (Q4). First create a child facilitator/presenter Q4, and is identified as a child of the presenter presenter P1. The presenter Q4, in turn, creates an affiliated broker/presenter P4. Thus, P4 is a subsidiary of the presenter to presenter Q4. Information is stored in the child intermediary for concatenated presenter Q4 identifying the next presenter (P4) in the chain.

Next pic is e have been described are given by way of example specific cases, using many of the presenters associated with the same graphic element, and where a multitude of visible images (and presenters) for a set of graphical elements in the auxiliary storage device 208, describes the relationship between displayed objects figure 3. As mentioned above, the visible image a and 202b are respectively own systems 200A and 200b of the presenters. The system 200A of the presenters has created and maintains a set of presenters 302 for the visible image a through code and base class, including API, which recorded classes presenters. System presenters 200b has created and maintains a set of presenters 303 for the visible image 202b.

As shown by lines between presenters (Px) and graphic elements (Ex) in the auxiliary storage device 208, the presenters (Px) associated with the respective graphical elements (Ex). Presenters (Px) represent the States of the visible images for the respective graphic elements (Ex). Graphic elements (Ex) in the auxiliary storage device 304 are supported, for example, in the tree structure built by the application using one of the many possible ways. Examples of such methods include the run file with a text R is the article through the parser use code (program) to create graphic elements, etc. in a Tree-like structure of the set of presenters 302 based system 200A presenters in response to a particular method call on the interface (for example, DoLayout)provided its mechanism of representation. As described earlier with reference to figure 2, the nodes of the object tree of the presenters are determined by the tree nodes of the graphical elements associated with a particular visible image. Graphic elements in the visible image are determined by the root graphical item that is specified for this visible image, its children, "great" items and so on.

Set the presenters in the visible image 1 has a hierarchical structure. The root presenter P1 has two child presenter P2 and P4 (Q4 is the presenter of "finish" on the presenter P4). The presenter P2 has no child presenters. However, the presenter P4 has two child presenter P5 and P7. The presenter P5, in turn, is a subsidiary of presenters RA and 8b that are associated with one graphic element E8. Such sharing/splitting one graphic presenter between two objects presenters occurs, for example, when a text graphic element E8 is divided between two columns of the parent text is the first graphic element E5, who is the presenter (P5) type TextPresenter (text presenter). The presenter P5 initiates the process of separation on the column, when he notices the properties on E5, requesting the division of content (E8) element E5 on two columns. Presenters RA and 8b correspond to graphical existence of parts of the graphic element E8 in two columns.

As noted earlier, one graphic element can have multiple related objects presenters. As an example of three cases. In the first scenario, shown with multiple visible images a and 202b and related systems 200A and 200b of the presenters in figure 3, one graphic element (e.g., E2) has the appropriate presenters P2 and P2', associated with visible images a and 202b, respectively. Such visible image correspond to, for example, the image-sketch and a full-sized representation of the photographic image (E2), displayed in different areas of the user interface, which is formed by the application for processing photographic images. In this case, the presenters P2 and P2' are created for the element E2 in each visible image a and 202b containing this element. In the second scenario, which includes many of the presenters for a single item (for example, a text element E8, elements prese who natori RA and 8b correspond to two columns in the rectangle some one element-presenter P5. Alternatively, these cases use many of the presenters in the visible image with links to the same graphic element can occur, for example, when a parent has many times in the layout of the visible image and stores these attempts. In the third scenario, the presenter (e.g., Q4), which depends on the other presenter (e.g., P4), with the opposite data state of a graphical element (e.g., E4) is connected by a coupling to another presenter, resulting in extended display capabilities provided by the original presenter. An example of coupling of the presenters is the presenter of the border that provides "trim" borders for the main presenter.

Previously with reference to Fig. 2, it was noted that a subsidiary intermediary objects created from a class 222 child intermediaries are "shell" for each child object of the parent presenter object-presenter. In the graphical representation of the tree structure of the presenters for the visible image a subsidiary intermediary objects are represented by arrows on the lines connecting the parent presenter with its child objects of the presenters. Subsidiary intermediary objects limit on the stupas on the part of the parent object of the presenter to its child objects of the presenters.

Handlers (Nx) notifications are responsible for notifying the relevant presenters (Px) about the state changes of the data in graphical elements (Ex). Handlers Nx notification not have a significant impact on the operation of the control system view/layout. They only facilitate step-by-step updates the presenters, performing them only when the item is changed in the visible image.

In figures 4A and 4b shows that the base class of presenters includes a set of methods, properties and fields. In one embodiment, the invention features are available on a particular object-the presenter, to which there is an appeal, by initiating transactions of acquisition/installation on site. The property is 400 sets the background color value for the background of the presenter. Property 402 the opacity stores a value that specifies the opacity of the background. Property 404 borders stores a value that specifies the width of the border outlining the layout space of the presenter at the edges. Property 404 borders stores, for example, four values that specifies the border width for the top, bottom, right and left sides of the rectangle selected by the presenter. Property 406 border color determines the value that indicates the color of the border around the presenter. Property 408 border style stores a value indicating one of a set of styles-is placed boundaries. Example of border styles include: solid, deep, ribbed, nested and exaltation.

Property 410 bounding rectangle specifies an area (for example, rectangle), which portrayed the graphical elements of the presenter (or child elements). The default size properties 410 bounding box matches the size specified in field 460 of the size composition. However, the size of the bounding rectangle may exceed the size of the layout, which allows the presenter to create the image beyond the size of the layout.

On the other hand, if the property 414 truncation is set to true, then the presenter (and its subsidiaries presenters) may not be drawn outside the rectangle specified field 460 of the size composition. If the property value 414 truncation is set to true, then the property 410 bounding rectangle does not exceed the size of the layout. This ensures that depicts the presenter does not play graphic elements outside the allocated space layout.

Property 412 child elements is an array or, alternatively, any other suitable multi-element data structure that stores references (e.g., labels, signs, direct/indirect, etc) on the child presenters, is in its parent presenter, and the transformed location in the layout space of the parent presenter. Property 412 child elements is a presenter on first use in the context of the method call OnUpdate (update), which is described below. The term "on first use" refers to the case when the parent presenter sequentially queries the set of child elements, and the set of child elements is located along with the presenters, the relevant subsidiary of the graphical elements of the graphical element that corresponds to the parent presenter, wood graphic elements in the auxiliary storage device (for example, in the auxiliary storage device 208). Property 412 child elements facilitates the establishment/maintenance of hierarchy, reflecting a nested relationship with the presenters in the visible image. In one embodiment of the invention the entries of the array are references to a subsidiary intermediary objects. Subsidiary intermediary objects are"shells" for the child objects of the presenters, which is embedded in the display space allocated to the parent object of the presenter. "Shell" subsidiary intermediary object meets the requirements of encapsulation and security (for example, a child presenter limit the AET access to their content from the parent presenter).

Property 414 truncation, as described above, sets whether the limited content presenter by truncating to the size composition of the presenter, the specified field 460 of the size of the presenter.

The set of properties denotes the space allocated to the content in the space of the presenter. In addition to the property 404 border property 416 padding specifies the amount of space inside the border, which remains unoccupied content. Property 418 height of the content sets a value that specifies the height of the content in the presenter - the height of the part of the presenter, which remains after taking into account the values specified in the property 404 boundaries and property 416 filling. Property 420 width of the content sets a value that specifies the width allocated to the content presenter within the parameters of properties 404 boundaries and properties 416 filling. The combination of properties 418 height of the content and properties 420 width specifies the content area of the presenter, which potentially takes the content presenter.

Property 422 height and property 424 width specify the actual height and width of the presenter, and these two values provide the parameters of the content, padding and border. Property 422 height default and the property 424 width default set default values assigned to the presenter when the property 422 height and property 424 width not provide the s for a specific object of the presenter. Property 430 maximum width and the property 432 minimum width set the bounds for the values assigned to the property 424 width.

Another dimension property for presenters is the property 434 fields (page). Property 434 field specifies the buffer space outside the border of the presenter. Property 434 field is set child presenter and available to its parent presenter when arranging the layout with a hierarchical structure of nested presenters.

Property 436 visibility specifies the visibility state of the presenter. Property 436 visibility is associated with determining how to render a graphical image corresponding to the presenter and his children presenters (or determining rendered whether in principle it is a graphic image). In one embodiment of the invention the potential visibility States include: visible, concise and hidden.

A number of properties of the presenters used to bind the presenters with other objects in the control system design/performance. Property 438 presenter specifies the type of presenter, which is used for layout and rendering the graphic. The type of presenter originally installed on the graphical element, and the system 200 presenters reads the property 438 presenter of graphices the wow element and creates an object of the presenter, corresponding to the type of presenter, identified by the property 438 presenter. Property 408 presenter is passed to block creation, which, in turn, creates an instance of the presenter identified type. Property 440 IsMainPresenter determines whether the presenter is the only presenter or basic (e.g., the last) in the concatenated set of presenters associated with the object, the graphical element. Refer to figure 3, where the presenter P4 is the main presenter for the chain consisting of B4 and P4. In one embodiment of the invention the property 440 IsMainPresenter is a property of Boolean (logical) type.

Property 442 owner element identifies a graphic element that has been defined (created) the presenter. Again refer to Fig. 3, where the dashed line connecting the presenters (Px) with the corresponding graphic elements (Ex), represent relationships indicated by the content of the property 442 of the owner of the item. Property 444 context layout sets the global context, which facilitates the exchange of messages between the presenters during the build process. The values stored in the property 444 context layout, allow the presenters to send messages, regardless of the system 200 presenters. Property 446 handler notification specifies a reference to the notification handler for given the CSOs presenter. Property 448 handler type notification specifies the type of the notification handler referenced by the property 446 handler notifications.

The property is 450 contamination determines whether it has been modified concrete presenter and, therefore, whether the update operation. The system 200 presenters and the corresponding components of the architecture layout management support step-by-step processing of the layout. The property is 450 contamination, supported by each presenter, indicate separately for each presenter, whether it be updated.

In Fig. 4A as an example, presents the final set of fields of the base class presenters. In one embodiment of the invention, these fields are fields Total system run-time support (Common Language Runtime (CLR)) (by analogy with the known variables belonging to classes C++). In one embodiment of the invention the above properties are similar to the fields. However, the properties of the graphic elements (e.g., graphical elements 206) owned and operated by an auxiliary storage device (for example, an auxiliary storage device 208). When you change the properties of the auxiliary storage device notifies the view mechanism of the change. The mechanism of representation (for example, a mechanism 212 views for system 200 pre is entation), in turn, notifies the appropriate handlers 224 notifications. Thus, in the case of the property change notification is received via one of the above notification handlers. On the other hand, the auxiliary storage device 208 does not control fields (fields instead manages, for example, the CLR). Therefore, when the field change no notification of changes in the provision are not transmitted.

Box 460 size layout supports the link allocated to the presenter. Field 460 of the size composition is used for ordering the neighboring presenters in the page layout/user interface. Field 462 affect the composition is a set of properties (e.g., border, padding, and so on) presenter, which, when changed, affect the layout of the presenter. Box 464 affect the composition for the parent presenter is a set of properties (e.g., fields, visibility etc) presenter that when an item is changed (for example, item A), "pollutes" (i.e. potentially affects) the layout of the first parent presenter for the element (element A)having specified the presenter. Box 466 rendering effects is a notification mechanism that initiates the cancellation and repeat the accurate visualization of the presenter.

Let us now turn to the methods of the base class 206 of the presenters listed in Fig. 4b, where the method 470 OnUpdate performs the measurement and positioning tasks on the presenter for one item. The authors presenters override the base class version of the method 470 OnUpdate for creation/maintenance of a mode of job size/positioning of the layout according to the user requirements for the corresponding visible image element.

The first default action by using the method 470 OnUpdate is set sizes presenter. Method 470 OnUpdate gets the dimensions of the presenter in the received parameter BoxSizeInfo (information about the dimensions of the rectangle). Method 470 OnUpdate sets the dimensions specified in field 460 of the size of the layout in accordance with predetermined values BoxSizeInfo, properties, 428 default width and properties 426 height by default. Additional sources of information about the size/positioning for the presenter are an integral part of the disclosed architecture processing layout/presentation on the basis of the presenters, and these sources are used in alternative embodiments of the invention.

The second task by default, when using the method 470 OnUpdate is positioning the child presenters in local dimensional space of the presenter. The base class version of meth is Yes 470 iteratively calls OnUpdate method 470 OnUpdate for the child presenters, identified in the property 412 child presenters to disclose their size and child presenters. After establishing and measuring child presenters, these presenters are positioned in the parent presenter by method invocation conversion (discussed below) for the individual child presenters. An iterative method calls 470 OnUpdate for the child presenters end when the presenter is not set additional child presenters. In addition to the check amount in field 460 of the size composition and iterative call/positioning child presenters method 470 OnUpdate returns to the caller the value indicating whether the visualization, whereas the method call 470 OnUpdate.

Method 471 registration "atoms" registers a string name for the presenter to context 444 layout, as well as any other appropriate lists of presenters, including those that are supported by extensions to the presenters. Method 471 registration "atoms" is invoked, for example, to communicate with other presentators object in an unusual way (for example, by a method that is not supported at the moment the application programming interface of the presenters). Presenters register "atom", and then set the object to which they want to communicate, use the Zuya this "atom". For example, a child presenter wants to convey the source text to the parent presenter. Child presenter registers "atom" with the mark/label "Descent" (origin) and accepts the credentials of this "atom". Child presenter calculates a "source" and sets the value in the atom using the identification data. Then parent the presenter uses the identification data (also obtained by registering the "Descent") to retrieve stored information.

Method 472 OnUpdateBoundingBox (update of the bounding rectangle) creates a property 410 updated bounding rectangle for the presenter. Method 472 OnUpdateBoundingBox is called when the method 470 OnUpdate returns a value (for example, "true", indicates that you need to re-render). The default implementation of the method 472 OnUpdateBoundingBox provided in the base class presenters, child scans the presenters identified in the property 412 child presenters for the presenter, and combines (i.e. performs the mathematical Association of rectangles) converted property subsidiary of the bounding rectangle with the dimensions of the presenter, stored in field 460 of the size composition. The base class implementation for the method 472 OnUpdateBoundingBox also address what is the property 414 truncation, and if its value is "true", then the bounding rectangles of the child presenters are ignored. Instead, the child presenters will be truncated to the size specified in field 460 of the size composition of their parent presenter. The presenters, which are beyond the scope of field 460 of the size of the layout, cause overwriting mentioned method. Such classes of presenters that are configured in accordance with user requirements, call the base presentatore class and add additional "bright zone" in their program rewriting. In one embodiment of the invention the presenters provided an assessment of the "colorful" zone, more if it than it takes in reality. If the zone 410 properties of the bounding rectangle is smaller than the area required for the mark of the presenter, then the figure is truncated based on the sizes of properties 410 of the bounding rectangle, specified for the presenter.

Method 474 OnRender is called for presenters who request/require re-rendering. Method 474 OnRender is a particular challenge for the presenter to re-render the presenter and any of its subsidiaries presenters. Method 474 OnRender preferably is invoked after the called method 470 OnUpdate at all "contaminated" pre is untutored in the layout (for example, scene). In one embodiment, the method of the invention 474 OnRender cause of presentators objects on the basis of the analysis provided if the method call 470 OnUpdate object/presenter return an indication that the presenter asks for re-rendering. In one embodiment, the method of the invention 474 OnRender base class performs for the presenter, the sequencing operation view/layout regardless of the specific device. Other components, including graphics subsystem and drivers 234 graphics device, render the visible image of the presenter in a format that is tied to a specific device. Derivatives options method 474 OnRender, taking into account the user requirements, include references to components of the computer system that generates graphical elements for the visualization of the output document/UI.

In one embodiment of the invention, the base class version of the method 474 OnRender visualizes the content of the presenter, including any children, at three stages of processing composition. On stage OnRenderBeforeChildren (visualization to child presenters) object presenter invokes the operations intended for processing, before processing any of its subsidiaries presenters. In one embodiment of the invention, the base class implementation for the method 474 OnRnder provides connection (trap) to configure and does not specify any operations preprocessing phase OnRenderBeforeChildren. However, the example custom replace this default mode, taking into account the specific requirements of the user installs/represents a custom background for the zone display of the presenter.

The base class version of the method 474 OnRender on stage to render the child presenters refers to the child presenters identified in the property 412 child presenters. Method 474 OnRender is called in turn for each of the children presenters (to extend the requested child presenter, when implemented method 470 OnUpdate). Thus, the challenge of a high level method 474 OnRender applies consistently to the child presenters and their descendants, until it reaches the bottom of the tree (i.e. the presenter, not having child presenters). After calling a high level all children of the presenters in the tree, which was requested re-rendering, will again be rendered.

On stage OnRenderAfterChildren (visualization after the child presenter) presenter object invokes the operations that must be performed after the method call 474 OnRender for the child presenters identified in the property 412 child presenters. The base class version of the method 474 OnRender provides a trap (connection) to configure in accordance with the tre is Rovaniemi specific user and does not specify any operations postprocessing phase OnRenderAfterChildren. However, examples of such settings include annotation elements "finish" and so on

If the presenter does not re-renders any objects other than a subsidiary of the presenters, then there is no need to rewrite the base class version of the method 474 OnRender. However, if the very presenter, you need something to "draw", then the base class for method 474 OnRender corresponds to render graphical data space allocated to this presenter. Replacement program includes, for example, calls to the application 230 and/or graphics subsystem and graphics device drivers. Linked the presenter is in the tree of presenters for specific visible image. If linked to the presenter you want to re-render, then the system presenters will be called its OnRender method in the same way as the OnRender method for the primary presenter.

In the context of this application, the term "matching" refers to the process of identifying what the presenter got to a specific point grid coordinate space of the graphical user interface. The matching of use, for example, to determine the location of the mouse pointer (for example, what presenter he is), when the user clicks on one of knope the mouse. Method 476 OnHitTestDetail (details of test matches) returns the data stored in the structure HitTestDetail for the presenter. Configured in accordance with user requirements the presenter class overwrites the base class implementation for the method 476 OnHitTestDetail to be placed in the structure HitTestDetail, to allow the presenter to return the data, other than the matched element and the presenter, thereby providing, for example, more detailed information relating to the presenter, such as the part of the presenter, which really got to the specified point (for example, the position of the character relative to the text).

Method 478 OnCreateViewResult (the creation of the resulting visible image) has parameters describing the calculated condition of the presenter in the result object visible image. Users query the result object is the visible image of any element in the context of marked visible image. The base class version of the method 478 OnHitTestDetail provides, through the resulting object is a visible image, height, width and position of the upper left corner of the presenter. If you need additional/alternative information regarding the status of the presenter, such as the number of lines of text contained in the presenter, then the base class version of the method 478OnHitTestDetail is overridden to provide the required information through the result object visible image.

Method 480 hit test initiates a hit test on the subtree whose root is specified by the presenter. In the method 480 hit test transmit the coordinates of the point (in local coordinates presenter), where should be performed hit testing. Method 480 hit test returns the data of the hit test, containing the results of the hit test for the indicated point and the presenter. The result contains all the visuals, which gets the specified point. Visual is the base object (e.g., line), on the basis of which the presenter creates the display image. Visual is a graphical object that has a real ability to trace the image on the output graphic display. When you call a method OnRender presenter for API visual issued several calls, for example, to render text, images, video, etc.

Method 482 OnGetBypassList (getting the list of shortcuts) provides a list of the children of the presenters, the previously identified for the presenter. This child list of presenters facilitates crawling child presenters during the calculation of the layout (for example, by comparing a new child presenter layout with the previously calculated child presenters composition and reuse previously calculated presentat the RA, if there is a match with one of the presenters in the list). If the presenter reveals its subsidiary presenters by recourse to a set of properties 412 child presenters, it should not be a substitute for this method. However, if the presenter uses the following method 486 GetChildProxyForElement (receiving child mediation presenter for the element), then the method 482 OnGetBypassList usually substitute.

When using the composition system embodying the present invention, in the case of a method call 486 GetChildProxyForElement before the method 470 OnUpdate method is called 482 OnGetBypassList, and an object of the presenter creates and populates the list-an array of subsidiary intermediary objects (described below with reference to figure 5), which it has cached from the previous calculation of the layout. If the object of the presenter does not have a cache to store the recalculated child of intermediary objects, all child presenters object of the presenter re-calculate for each method call 470 OnUpdate for the presenter.

Method 484 calculations borders calculates and returns the bounds of the subgraph having as root the identified visual.

As explained above, a subsidiary intermediary object is"shell", which acts as an intermediary between the parent presenter and a subsidiary of the presenter to Conques is to maintain the graphic. To subsidiary intermediary objects for the child presenters particular object of the presenter is turned to as set in the property 412 child presenters for the object presenter. Method 486 GetChildProxyForElement is a method for the parent object of the presenter, which creates a subsidiary intermediary object and the object presenter for the specified item. The method returns null if the specified element has no presenter.

Method 488 OnBeforeBypass is called when the system 200 presenters wants to "bypass" the particular presenter (i.e. skip the method call 470 OnUpdate presenter). This crawl takes place, for example, when the presenter is not "dirty", and dimensional parameters (BoxSizeInfo) (information about the dimensions of the rectangle) presenter, introduced by method invocation 470 OnUpdate, has not changed since the last invocation of the method 470 OnUpdate for the presenter. Method 488 OnBeforeBypass is a mechanism that improves the efficiency of operation, allowing presenters who have their own custom set of child intermediary objects (which use the 486 GetChildProxyForElement), reuse subsidiary intermediary objects of its subsidiaries presenters when updating the layout (for example, when changing subjected to only a small part of komponovki is).

Method 490 OnDisconnectChildren (removing the child presenters) removes all child objects of the presenters from the set of child presenters defined in the property 412 child presenters for a given presenter. If the property 412 default for the child presenters substituted for class presenters received from the base class 216 presenters, then the method 490 OnDisconnectChildren also replaced to ensure correct positioning of the child presenters.

Pass Min/Max is a special pass (view) to set size used by the presenters participating in this activity (for example, DockPresenter), when sizing a subsidiary of presenters for the content. Knowledge of the minimum and maximum widths for the child presenters allows the parent presenter to efficiently allocate space between number of children presenters who share a specific width. Without information about the minimum/maximum value provided by the function MinMaxPass, participating presenter would require multiple passes for rational set the size for the content. Method 492 OnMinWidth (state minimum width) is called after the passage (view) Min/Max. Method 492 OnMinWidth causes the value of MinWidth, which is side is the result of the calculation MaxWidth. The base class version of the method 492 OnMinWidth shows the message "I don't care" ("I don't care"), which initiates the calculation run with ProposedSize (suggested size) = (0, infinity) and both directions "NotFixed" (not fixed).

Method 494 presenter is a construction method for an instance of the presenter. Method 494 presenter has no parameters. Method 494 presenter is initiated when the system 200 presenters specifies the presenter. Method 494 presenter sets the instance of the presenter, allowing you to initiate other methods (e.g., OnUpdate) on the presenter.

Method 496 QueueLayoutTask (Queuing tasks link) adds a certain layout task to be executed in relation to this object presenter, in all layout tasks performed by the system 200 presenters. When this preset layout task will be in the front of the queue, the system 200 presenters calls a method 604 OnLayoutTask (task link), which is described below, the notification handler for the presenter.

Method 498 OnQueryValue (status query values) returns a value that matches the computed value for the presenter.

Based on the description of the base class 216 presenters, please refer to Fig. 5, which gives a summary view of the properties of the x and the methods described in example variant subsidiary intermediary class 222. As explained previously, in one embodiment of the invention a subsidiary intermediary objects are wrappers for objects of presenters that are child objects of the parent object of the presenter, and these subsidiary intermediary objects support a limited access from the parent object to the resources of the child objects of the presenters. All data (requests/responses) between the parent presenter and a subsidiary object of the presenter is directed through a subsidiary intermediary for the child presenter. Subsidiary intermediary object maintains a reference to a subsidiary of the presenter and directs calls/requests from the parent presenter on the children of the presenter.

In one embodiment, the system 200 presenters class 222 child intermediaries includes 500 property owner element that specifies the element in the graphical elements 206 that is associated with the presenter subsidiary intermediary associated with the link.

Property 502 convert positions child object of the presenter (and associated visual) inside its parent presenter. The transformation is implemented through a standard image transformation matrix 3x3 in the base class of visual objects. When the transformation matrix is established, the object of visual, connected the first graphical element of the presenter, puts your child presenter at the offset specified transformation matrix.

Property 504 of the bounding box defines the boundaries of visualization child presenter. Thus, the boundaries of visualization child presenter may differ from the size of the layout for the child presenter.

Property 506 "contamination" and sets the "contamination" of the presenter subsidiary intermediary. In one embodiment, the system 200 presenters state contamination is one of the net, "the witness of pollution" (dirty bystander) or "contaminated". "Pure" state indicates that a child presenter since the last update of the visible image changes a child presenter was not. "Contaminated" state indicates that since the last update of the visible image appeared modify child presenter. The status of witness contamination" indicates that at least one of the descendants of the child presenter "dirty", but the child presenter is not contaminated. These States allow the parent presenters to optimize the update operation.

Method 510 QueryDefaultSizeInfo (request for information about the default size) initializes the dimensions of the child presenter on the basis of the default values provided by parents who skim the presenter of this child presenter.

Method 520 update requests the subsidiary intermediary to initiate the method 470 OnUpdate on child presentations.com object. Parent presenter calls the method 520 Update on child mediator when the parent presenter searches to compute the layout child presenter. The method call 520 Update includes two-and-forward option. Information on the size of the rectangle specifies the dimensions of the rectangle in which the child presenter must calculate the layout, and if activated, pagination, parent presenter transmits the page information in the parameter descriptor page (see Fig. 10, which is described below). Thus, the method 520 Update provides a layer between the caller and a child object of the presenter, which allows you to escape/to filter these requests to the child object to the presenter. Method 520 Update provides a mechanism for traversal calls normally directed to a method OnUpdate on the child presenter. For example, calling the method 520 Update trigger in those cases when the child presenter has not been modified and has not been modified input parameters (information about the dimensions of the rectangle and description page).

Method 530 of merger issued by the parent presenter subsidiary intermediary, causing the team OnRender for on the black presenter, associated with child mediator.

The method 540 query values gives the value of the presenter corresponding to the computed type (property) values identified in the method call. The method call 540 values of the query is delegated to the appropriate method 498 OnQueryValue on a child object of the presenter.

Method 550 requested size layout provides the calculated dimensional layout settings. Call method 550 requested size composition is delegated to the appropriate method 496 OnQueryValue on a child object of the presenter. Method 560 calculate Min gives the minimum and maximum values of the width of the child presenter.

Please refer to Fig. 6, where the set of base classes associated with the system 200 presenters, includes the base class handler notification. As explained above, the object handlers receive notifications all notifications concerning changes potentially affecting the presenter associated with a particular visible image (a), accumulate information about contamination and facilitate the determination of whether to update the corresponding object of the presenter. Both methods from the base class handler notification shall take as a parameter an object that includes a method that provides the necessary information from an element in h the following graphic elements (for example, graphical elements 206)is associated with the notification handler.

The base class handler notification includes a method 600 OnNotify (notice), which provides notification of the "contamination" of a particular object associated with a presenter. Method 600 OnNotify potentially includes additional formulated taking into account user requirements derived task notification (by substituting the default action, consisting in the provision of property value in the "contamination")that execute in response to receiving the notification. Method 600 OnNotify as an input parameter accepts information about the change, as a result of which the notice was sent. Method OnNotify returns a Boolean value that indicates whether the notification handler to handle the change itself (or indicating whether to notify the notification handler for the presenter ancestor in the tree of presenters for the visible image). The method also returns a value of "contamination"that indicates whether the presenter is "clean", "dirty" or refers to the condition called as a witness contamination.

Method 602 OnLayoutTask (task execution layout) performs the tasks assigned earlier in the queue corresponding presenter through QueueLayoutTask.

Please refer to Fig. 7, DG is the set of base classes, associated with the system 200 presenters, additionally includes the class of the node handler notification. Class node handler notification is a node object passed to the object-handler notification, which allows the notification handler to invoke services notifications supported by the system 200 presenters.

Class node handler notification includes 700 property of the owner of the item, specifying the object is a graphic element that is associated with the object node handlers notifications.

Method 702 registration "atom" registers provided by the string name in the context of 444 composition of the notification handler. The functionality of the method 702 registration "atom" is similar to 471 registration "atom"described above with reference to the base class presenters. Thus, the method 702 registration "atom" is a tool for transfer requests from the handler notification to other objects (such as objects of presenters).

Method 704 create creates a new notification object notification presenter and uses these fields based on the passed parameters. Passed parameters include identification data of the type "atom" (indicating the type of object notifications presenter) and notification data.

Method 706 notice "descendants" invokes the methods of the 600 OnNotify for handlers notifications associated with the descendants of the presenter is bound to a node of the notification handler to send the specified notice to the presenter. Method 706 notice "descendants" performs the function of notifying the presenters-the descendants of any changes in the parent presenter (for example, re-sizing). Similarly, the method 708 notice "ancestors" calls the method 600 OnNotify for handlers notification associated with the "ancestors" of the presenter is bound to the node handlers notification to send the specified notice to the presenter. "Ancestors" are determined by traversing a tree of graphical elements (see Fig. 3) in the auxiliary storage device 208. Graphical elements presented in the auxiliary memory device includes a property that sets the "parent" (an intermediate ancestor) of the graphic. The method 710 "notice to all" calls the method 600 OnNotify in the notification handlers for all the presenters in the tree presenters belonging to a visible image, to send the specified notice. Finally, the method 712 "Samovodene provides for the presenter tool invocation of a method 600 OnNotify to mention their own "pollution".

Please refer to Fig. 8, where for example the class of objects visible image is to which creates a visible image 202. The objects of the visible images have a copy of the presenters (e.g., system 200 of presenters) and are visual "root" of all the visuals that are created in the generated instance of the presenters. The object visible image initiates all calculations on the presenters in the visible image. Method 800 for the visible image is a constructor method, which is used to create a new object visible image. The visible image takes as the passed parameter is a reference to the element that is the root of the graphical element of the visible image. Property 802 RootElement (root element) returns a reference to the root graphical element for visible image (which was installed using the above method 800 for visible image).

Method 804 DoLayout creates a new tree of presenters for the visible image and returns a reference to a new tree. Method 804 DoLayout takes as input parameters the proposed height and width for a rectangle of the visible image, and two Boolean values (fixed width and fixed height), which establish if the proposed dimensions subject to change during the execution of the method 804 DoLayout.

Property 806 ViewSize (the size of the visible depicts the I) sets the size of the visible image. Property 806 ViewSize (write-only) is used when the object visible image is located (Hosterwitz) in the window, and the property 806 ViewSize is the initial size, on the basis of which is the composition operation.

Method 808 GetViewResult (getting the resulting visible image) takes as input a reference to a graphic element, then the method 808 GetViewResult returns the resulting visible image to a graphic element. "Null" is returned in the case when the graphic element is not in the set of graphical elements for the visible image.

Method 810 HitTest (hit test) performs hit testing for the passed point in the coordinate system of the visible image. Method 810 HitTest returns the first opaque object obtained as a result of the hit test. If the graphical element is not found, then the method returns "false".

Method 812 CreatePage (create a page) takes as input parameters BoxSizeInfo (see Fig. 9, described below) and PageDescriptor (see Fig. 10, described below). Method 812 CreatePage creates a new page based on input parameters and returns the child of the intermediary object corresponding to the root graphic for this page.

Please refer to Fig. 9, where an example is provided structure BoxSizeInfo. Structure BoxSizeInfo specifies a set of dimensions for the presenters and their child presenters in the visible image, and determines how these dimensions should be handled by the receiving party. The property is 900 proposed size sets the suggested size for the child presenter in the visible image. First, the property value 900 proposed size comes from properties to a subsidiary of the graphic element in the auxiliary storage device. Before sending the child to the presenter, it can be modified parent presenter. Property 902 parent size is the suggested size for the parent presenter. Property 902 parent size using, for example, to calculate the size based on the values in the form of interest from the parent presenter, for the child presenters. Structure BoxSizeInfo also includes two properties with Boolean values, FixedWidth (fixed width) 904 and FixedHeight (fixed height) 906, which instruct the host presenter, indicating whether the presented amount prescribed (fixed value)or the value of size is simply offered as height or width.

Please refer to Fig. 10, which shows the parts are shown as an example of the structure of the descriptor strangest page includes property 1000 PageSize (page size). Property 1000 PageSize property is set to read-only, which specifies the page size. It is initialized when creating the structure of the page descriptor. Property 1002 cliff record is a structure that includes: the initial position of the symbol that identifies the first character of the current presenter, which is on the next page (relative to a graphical element that is the root of the visible image that is split into pages); the number of characters (counting back from the beginning character position), which can cancel the previous page; and a Boolean IsDirty (dirty), which specifies that did void torn-write (covering a specific range of characters in the paged graphic element) as a result of changes in the auxiliary storage device.

The structure of the page descriptor also includes property 1004 AvailableSize (size available). Full page may not be available to the presenter after starting the OnUpdate method on the presenter. Property 1004 AvailableSize specifies the space remaining on the page for the presenter. Property 1004 AvailableSize is initialized with the value of the page size.

Please refer to Fig. 11, which defines a set of methods that are performed by a mechanism 212 presents the I system 200 presenters, created a visible image 202 (see Fig. 2). Method 1100 of the designed mechanism 212 submission refers to a visible image 202, which contains a reference to the root graphic element to this visible image provided by the tree of graphical elements 206. Method 1102 DoLayout takes width and height as passed parameters representing the size of the visible image 202, and proceeds to perform the process layout in relation to the content of the graphical elements 206. Method 1104 UpdateLayout (update link)performed at least once after performing DoLayout starts step-by-step modification of a previously calculated composition of the visible image 202. Method 1106 CreatePage receives as input the information about the size of the rectangle (BoxSizeInfo), which contains the sizes of the displayed page and the page descriptor that contains information about how to start a specific page. Instead of showing all the content below the root of the graphical elements 206 to the visible image 202, method 1106 CreatePage displays only one interested in the page.

Given as an example architecture for the processing composition has been described with reference to Fig. 1-11. Shown in the example architecture includes a dedicated state visible from the images (objects - the presenters)associated with the state data elements (objects - graphical elements). Shows the architecture includes a system 200 presenters, which helps to enhance your layout/view visible image through the base class 216 presenters from which to obtain new classes of objects presenters, embodying the new functionality layout/view. Disclosed here, the system architecture also includes a notification mechanism connecting the elements with the corresponding objects of the presenters, to selectively initiate recalculation parts of the visible image in response to changes. Shows the basic classes of objects illustrate the variety of potential alternative options for implementing an extensible architecture embodying the present invention and they should not be construed as limiting the scope of the invention.

Given this set of components that form is given as an example of the processing architecture view/layout embodying the present invention, refer now to Fig. 12, which shows the General process for handling changes to graphically display elements. First, at step 1200 changes occur in the auxiliary storage device 208. In the example, the application 204 performs an operation that changes the state and/or content of one or more of the displayed graphical user interface components for this application. In response to these changes at step 1202 mechanism 212 views in the system 200 presenters takes notice of changes resulting from changes of the graphic element in the auxiliary storage device.

As the basis for step 1204, the system 200 presenters supports relationships between members and presenters in the information bundle "element - presenter (EPI). Whenever there is a presenter for the graphic element creates a reference to the presenter on the item, which is stored in EPI supported by the presenters. If the graphical element has more than one presenter, then in EPI graphic element will be lots of links (one for each presenter). When a property on the graphical element is changed, then the following stages:

(a) Auxiliary storage device notes the change to the graphical element;

(b) an Auxiliary storage device 208 notifies mechanism 212 views about the change with reference to a graphic that has changed one of its properties;

(C) a Mechanism 212 before the grant looking at EPI graphic element, that has changed, and determines the presenters that were created for this graphic element; and

(d) After determining the presenter mechanism 212 views obtains a reference to the appropriate handler notification to the presenter (through property 446 handler notification to the presenter).

Thus, in light of the above, at step 1204 mechanism 212 presentation system 200 presenters determines the identity (identification information) of the presenter, for which the change notification. As explained above, the system maintains a list of presenters the presenters that were specified for this element in his EPI. After determining the presenter, for which the change notification (in this example it is assumed that for a given element, there is only one presenter), mechanism 212 views in the system presenters receives a reference to a notification handler for the presenter through the property 446 handler notification identified the presenter.

Then in step 1206 mechanism 212 presentation system 200 presenters sends a change notification to the notification handler, using the link that was obtained in step 1204. In one embodiment of the invention, step 1206 is performed by mandatory UN paid the simulation method 602 OnNotify on a particular object-the notification handler.

After receiving change notifications from the system of the presenters on stage 1208 (e.g., during execution of the method 602 OnNotify) the notification handler determines the actions, if any, to be taken to the presenter to respond to these changes in the graphical element during the step 1200 in the auxiliary storage device 208. In one embodiment of the invention the notification handler determines which part, if it exists, the corresponding presenter needs updating in the light of the received change notification. These parts include, for example, the child elements of the presenter and the presenter.

Next, at step 1210 the notification handler (for example, method 602 OnNotify) returns the result, which allows the appropriate presenter to define and execute actions in the light of change notifications received by the system 200 of the presenters during the execution of step 1202. In one embodiment of the invention, the return result is presented in the form of the notification handler/specific presenter. In some cases in the returned result, the presenter simply marked as "dirty", the result is called a complete recalculation of the corresponding presenter. In other cases, information is provided for izbiratelnoj the call only some of the possibilities of re-calculation of the visible image to the presenter.

In one embodiment, the invention mechanism 212 presentation system 200 presenters takes the stage 1210 returned result from the notification handler for the presenter. After that, at step 1212, if the changes in the auxiliary storage device does not cause the need to re-calculate the presenter, control continues to step 1216 decision. However, if at step 1212 the returned result indicates that it is necessary to recalculate the presenter, the control proceeds to step 1214, in which the system 200 presenters adds the presenter to set "contaminated" the presenters requiring recalculation. In the example embodiment of the invention, the system presenters sets the property 450 contamination at the appropriate presenter (indicating the need to re-calculate the presenter) and adds the presenter in the set of presenters who need re-calculating. The presenters also specify information that describes the content of the changes, which lead to the setting of 450 contamination. Control then proceeds to step 1216.

At step 1216, if the presenter associated with the interest at the moment the notification handler, the parent presenter does not exist, the control transfer is the CIO to step 1218 "end". If the parent presenter does exist, then control passes from step 1216 to step 1220, where the (forwarded) a notification to the notification handler parent presenter (which leads to the notification handler for the parent presenter that handles the notification), as shown by the dashed line return to step 1208.

Thus, the set of steps shown in Fig. 12, allows the system 200 presenters to accumulate a list of presenters that were "dirty" as a result of changes in the auxiliary storage device 220 since the last calculation layout for document/UI.

Refer now to Fig. 13, where the block-diagram of the algorithm describes an exemplary process of re-calculation/re-rendering document/user interface in accordance with changes in the presenters, in particular the visible image (see Fig. 12, described above). In one embodiment of the invention, the application 204 controls the updates of the visible image 202 and causes the update procedures of the visible image, such as the procedure disclosed in Fig. 13, in response to events such as the end of the time interval, the request to print the document or change the state of a graphical user what about the interface.

First, at step 1300, the system 200 presenters and specific mechanism 212 view accepts the call method 1102 DoLayout (described above with reference to the description of the API mechanism 212 views). In response to receiving a method call 1102 DoLayout application 204 in the system 200 presenters recalculates the objects presenters contained in the visible image 204, to accommodate changes in the elements in the auxiliary storage device since the last invocation of the method 1102 DoLayout.

In one embodiment of the present invention, where the presenters for the visible image hierarchically organized (see figure 3), the system 200 presenters first determines at step 1302 the root presenter for the visible image. In one embodiment of the invention the root presenter is identified by the property of the presenter on the root element, which is assigned to a visible image (e.g., visible image a) and, consequently, to the system of presenters (for example, the system 200A of the presenters). After determining the root presenter control proceeds to step 1304, where the system 200 presenters starts the traversal of the tree of presenters for the visible image and re-calculating each "contaminated" of the presenter.

At step 1304, the system 200 presenters calls a method 470 OnUpdate on each "contaminated" the presenter is the visible image. The called method 470 OnUpdate passes the height and width of the rectangle, which must be recalculated layout of the presenter. After recalculating the layout of the presenter caches the result. Thus, after completion of step 1304 previously contaminated presenters are recalculated, and the results of the repeated calculations are listed in the cache memory for easy access during subsequent re-rendering. "Dirty" bit is cleared in each caused by the presenters. Next, with reference to Fig. 14, described in more detail a set of steps performed when calling the method 470 OnUpdate.

There are several ways of cleaning "contaminated" the presenters at step 1304. However, in the embodiment of the present invention, the system 200 presenters and, in particular, the method 1104 OnUpdateLayout mechanism 212 uses a hierarchical representation of the relationship between presenters in the visible image to simplify perform their function at step 1304 is completed. In particular, during the execution of the method 470 OnUpdate each caused the presenter iteratively calls (or, alternatively, queries the system 200 presenters to call) method 470 OnUpdate for any child presenters called the presenter. Thus, the system 200 presenters starts crawling tree present the Directors with the method 470 OnUpdate root of the presenter (e.g., the presenter P1 in figure 3) and supports successive calls to the child presenters when a call 470 OnUpdate method bypasses the branches of the hierarchical tree of presenters for recalculating "contaminated" the presenters. An iterative method calls 470 OnUpdate on the child presenters provide an crawl of all the presenters in the visible image, and if the presenters are "dirty", recalculated.

At the end of each method 470 OnUpdate caused at the stage 1304 sets the initial state of the property 450 contamination, indicating that it was re-calculation or "cleaning". Each method 470 OnUpdate also returns to the caller the value indicating whether to re-visualize (i.e. re - "to draw") the presenter. In one embodiment of the invention, the return value is a Boolean value. If it is true, then you need to re-render. If it is false, then re-rendering is required. After processing at step 1304 each "contaminated" the presenters for the visible image, the control proceeds to step 1306 visualization, where they are processed presenters identified in the list of presenters that require re-rendering.

At step 1306, the system 200 presenters calls the " 474 OnRender on each presenter, identified in the list of presenters, requesting re-rendering. The operation of an exemplary variant of the method of 474 OnRender described with reference to Fig. 14. When the base class implementation of the method 474 OnRender presenter nothing "draws", but instead iteratively invokes a method 474 OnRender on their child and/or coupled presenters to fill the allocated space (for example, rectangle). Configured to meet the requirements of the user version of the method 474 OnRender visualize bitwise display via calls to the application 204 and/or APIs graphics and drivers 234 graphics device. After processing all the presenters, requesting re-rendering at step 1306, the control proceeds to step 1308 "end" and returns to the caller who initiated the call 1102 method DoLayout on the mechanism of representation for a particular visible image.

Please refer to Fig. 14, which shows a block diagram of steps of a method 470 OnUpdate performed to recalculate the presenter of the visible image. Method 470 OnUpdate calculates a new layout for the presenter, including any subsidiary of the presenters, and caches the results for on stage re-rendering. In the example below, call 470 OnUpdate method for each presenter is sent n the boron sizes, setting the limits of the space for the visible image (e.g., rectangle), which can be occupied by the layout of the presenter. Set size specifies, for example, height and width, and also installed, is it possible to modify these values at run time of the method call 470 OnUpdate. However, the invention involves performing repeated calculations of the presenters on the basis of any one or more of a variety of different output parameters, including the size of the space for the visible image, which affect the layout.

At step 1400, the presenter performs the operations required of the job size based on the passed parameters before calling any child presenters (through its subsidiary intermediary objects) to perform their updates. The contents of the specified operation depends on the specific type of presenter. Then the presenter calls the system 200 presenters to locate and update the child's current presenters presenter. In the preprocessing phase, the presenter identifies the potential need to create a new page/column and creates a new subsidiary facilitator/presenter for processing a new page/column to the visible image.

Next, at step 1402, the method 470 OnUpdate determines the current bear lscom the presenter following the child presenter to call update its layout. Note that at this stage, at least in the first case, it is required that the parent presenter identified the presence of the child and created the appropriate subsidiary intermediary object/presenter. On subsequent iterations of the parent presenter can use the cached child intermediary objects identified in his field 412 child presenters, to identify the next remaining (not processed) subsidiary intermediary object/presenter, that is, the child presenter, who has not been called during the current iteration of the method OnUpdate on the current parent presenter.

Parent presenter receives a reply from a support of the storage device or determines, based on its properties 412 child presenters, left child presenter to be processed; at step 1404, if no left child of presenters to be updated, control proceeds to step 1420 (described below). Otherwise, if the presenter really has in its property 412 child presenters unprocessed child presenter, which has not yet been updated, then control goes to step 1406.

At step 1406, the presenter calls the method 520 OnUpdate on the returned child mediator, which is located between the ro is italskym presenter and consider the current child presenter, to obtain the width and height of the child presenter, associated with an affiliated broker. Child presenter is associated with a particular graphical element (specified in his field 442 of the owner of the item).

At step 1410, a subsidiary intermediary invokes a method 470 OnUpdate on the child presenter, associated with the subsidiary intermediary. Method 470 OnUpdate calculates the updated height and width of the child presenter (and determines whether to re-render). Note that at step 1410, the method 470 OnUpdate is called recursively child presenters until the child caused the presenter determines at step 1402 that he has no child presenters, and while he will not return to the calling parent presenter (through its subsidiary intermediary). After calling 470 OnUpdate on the child presenter control continues to step 1414.

Thus, at step 1414 calling the parent presenter (step 1406) accepts the answer 520 OnUpdate method for the identified intermediary. The response includes the height and width of the child presenter in the form of the returned parameters. The response also indicates whether you want to re-render caused the child presenter. Next, at step 1416, the parent presenter positions caused the child presenter in the selected layout space bear is Lyskovo presenter algorithm based/placement strategy. In one embodiment of the invention at step 1416, the parent presenter places the child presenter in its layout based on the height and width settings of the child presenter received by the presenter on stage 1414.

Then, control returns to step 1402, where execution continues with the method 470 OnUpdate parent presenter to update the other children presenters (through their subsidiary intermediary objects"shell").

If at step 1404 remained a subsidiary of the presenters (presenters element or an intermediary)to be processed/updated, then control passes to step 1420. At step 1420, the method 470 OnUpdate called the presenter implements customized according to user requirements layout features, including a possible additional method calls 470 OnUpdate on the child presenters, to configure the layout for the presenter.

At step 1422, or that may at any moment method 470 OnUpdate received new information, the results of the processing composition is cached for subsequent use in step re-rendering processing a graphic image.

After completion of the refresh processing for the presenter, including all the child caused presenters presenter, at step 1424, the presenter returns the size of their causes is the fact that the party system (200 presenters), and a value that indicates whether you need to re-render this presenter.

Specialists in the art it is obvious that here the examples have been described a new platform and methods for controlling processing of the layout/presentation of output data of the graphic document/user interface in the computing environment, including graphical output device, such as display a graphical user interface or the printer. From the point of view of the many possible environments that can be implemented the principles of this invention, and flexibility in the design and implementation of software utilities and tools it should be noted that as described here are only illustrative and are not to be considered as limiting the scope of the invention. Specialists in the art that use the present invention, it is obvious that shown here can be modified in structure and in detail, without going beyond the merits of the invention. Thus, the invention described here considers all these options as included in the scope the following claims and its equivalents.

1. Control system layout the graphical output for organizing and maintaining graphically displayed output the data of the programs, running on a computer system, and control system layout the graphical output contains

graphic elements containing data representing display content of the program;

presenters determining the status display for graphical elements, where the presenter is a specific type of support description of the composition of the corresponding graphical element; and a system of presenters that includes the leading interface of the presenters that contains a method for preparing a composition for a visible image in accordance with a set of presenters associated with graphical elements contained in the visible image.

2. Control system layout the graphical output according to claim 1, in which the presenters further comprises a base class presenters and in which the set of presenters is created from a class presenters received from the base class presenters.

3. Control system layout the graphical output according to claim 2, in which the presenters include update method to calculate the properties link for the presenter.

4. Control system layout the graphical output according to claim 3, in which the presenters include a rendering method for generating commands issued by the x in the graphics subsystem output data of the computer system.

5. Control system layout the graphical output according to claim 2, in which classes presenters include pre-defined classes of presenters and classes external presenters.

6. Control system layout the graphical output according to claim 1, in which each of the presenters calculates the state of the composition of the corresponding graphical element based on the values of layout options that are set on the presenter.

7. Control system layout the graphical output according to claim 1, additionally containing a set of notification handlers, each handler notifications associated with one particular presenter from a set of presenters in the visible image, and where the notification handler handles a change to the graphic element to determine whether to update the corresponding presenter.

8. Control system layout the graphical output according to claim 7, in which each presenter specifies the type of notification handler, which provides notification of changes to a particular presenter, with respect to its associated graphical element.

9. Control system layout the graphical output of claim 8, in which the notification handler determines the portion corresponding to the presenter, which requires OBN the effect due to changes in the associated graphical element.

10. Control system layout the graphical output according to claim 7, in which the system of internal registers through handlers notification those presenters that need to be updated based on changes to the relevant graphical elements.

11. Control system layout the graphical output according to claim 1, in which one instance of the graphical element from among the mentioned graphical elements is associated with many of the presenters.

12. Control system layout the graphical output in claim 11, in which many of the presenters is associated with the instance of the graphic element is the presenters of the same type.

13. Control system layout the graphical output indicated in paragraph 12, in which many of the presenters corresponds separate columns in the same visible image.

14. Control system layout the graphical output indicated in paragraph 12, in which many of the presenters corresponds to a separate page in the document visible image one graphic element.

15. Control system layout the graphical output in claim 11, in which the first presenter and the second presenter of the many presenters associated with the instance of the graphical element associated with the respective first and second individual is advised visible image.

16. Control system layout the graphical output indicated in paragraph 15, in which the "hosting" of the first and second separate visible images corresponding to the first and second systems of the presenters.

17. Control system layout the graphical output according to claim 1, in which the visible image corresponds to a rectangular region in space of the graphics display.

18. Control system layout the graphical output in claim 11, in which many of the presenters associated with the instance of the graphic is a lot of presenters of different types.

19. Control system layout the graphical output on p, which is one of the many presenters contains the presenter of the elements "finish" for the main presenter.

20. Control system layout the graphical output according to claim 1, in which the presenters in the visible image is hierarchically organized, so that the child presenters are contained in the area specified respective parent presenter.

21. The system of presenters for inclusion in the composition of the management system layout the graphical output for processing a link from the name of the program that provides the graphical elements that contain data representing display content of the programme, by the presenters, determining the status display for graphical elements, and the presenter supports the description of the composition of the corresponding graphical element, and where the system of internal controls and regulates the presenters associated with the graphical elements in the visible image, and the system of presenters includes the base class presenters from which classes of presenters, and where the presenters created from the classes of the presenters; and the leading interface of the presenters that contains a set of methods, which includes at least a method for the preparation of the composition embodied in the set of presenters associated with graphical elements in the visible image.

22. The system of the presenters on item 21, in which the base class presenters specifies custom update method, substitute the obtained classes of presenters, to calculate the properties link for the presenter.

23. The system of the presenters on p.22, in which the base class presenters specifies custom rendering method, substitute the obtained classes of presenters for the formation of the commands issued to the subsystem of the graphical output of the computer system.

24. The system of the presenters on item 21, in which the presenters supports a set is lassow presenters, which includes a pre-defined classes of presenters and external classes presenters.

25. The system of the presenters on item 21, in which the base class presenters specifies the method for calculating the state of the layout for the graphical element based on the values of the layout parameters defined at the associated presenter.

26. The system of the presenters on item 21, further comprising the base class handler notification, from which classes get notification handlers, and in which each handler notifications created from a class handlers notifications associated with a particular presenter in the visible image, and where the notification handler handles a change to the graphic element to determine whether to update the corresponding presenter.

27. The system of the presenters on p, in which the base class of presenters includes a "placeholder" for the presenter to specify the type of the notification handler, which provides notification of changes to a particular presenter, related to the associated graphical element.

28. The system of the presenters on p in which the system of internal registers via the notification handlers for those presenters who need to update based on changes in the relevant graphic e is the cops.

29. The system of the presenters on item 21, in which the presenters associated with the visible image, which is characterized by the root graphical element and the assigned area, which displays the root graphical element and its child graphical elements.

30. The system of the presenters on clause 29, in which the visible image corresponds to a rectangular region in space of the graphics display.

31. The system of the presenters on item 21, in which the leading interface of presenters includes designer to create a system of presenters to link the display to a visible image containing a set of graphical elements.

32. The system of the presenters on p, in which the visible image is defined at least partially the root graphical element that is sent to the constructor.

33. The system of the presenters on item 21, in which the presenters supports the adhesion of many of the presenters, so that the first presenter provides "trim" for the second presenter, associated with the graphical element.

34. The system of the presenters on item 21, in which the base class of presenters includes a "placeholder" for a job child presenters, thus supporting the creation of a hierarchical tree structure of the presenters in the visible image, so that the child prese who ndatory are in the area, given their respective parent presenter.

35. Method for processing a link from the name of the program that provides the graphical elements that contain data representing display content of the program by the presenters, determining the status display for graphical elements, and the presenter supports the description of the composition of the corresponding graphical element, and the system presenters provides hosting and organizing the presenters associated with graphical elements in the visible image, and the method includes the steps:

provide a system of presenters containing the base class presenters and host interface presenters that contains a method for creating a layout embodied in the set of presenters associated with graphical elements in the visible image;

take the leading interface of the presenters request to form a layout for a set of graphical elements in the visible image; and create a set of graphical elements corresponding to the presenters from a set of classes presenters received from the base class presenters, and call a method on each generated presenter to calculate the status of layout for the graphical element corresponding to the presenter.

provide a base class handler notification that specifies the interface for a set of handlers notification that facilitate step-by-step update of the layout, based on the changes in the corresponding graphical elements.

37. The method according to p, optionally containing organization of presenters for the visible image in the form of a hierarchical tree.

38. The method according to p, in which in response to the challenge of creating a layout for the visible image creating system presenters, thereby creating a separate system of presenters and appropriate presenters for each of the visible image.

39. The method according to p, in which the base class presenters specifies the update method to calculate the properties of a layout for an instance of a presenter associated with the particular graphical element.

40. The method according to p, in which the base class presenters specifies rendering method for generating commands issued to the subsystem graphical output.

41. The method according to p in which the system presenters supports the education of pre-defined classes of presenters and external classes presenters.

42. The method according to p, in which classes of presenters correspond to different types of presenters who put together different types of content is graficheskogo element.

43. The method according to p, in which the presenters in the visible image hierarchically organized so that its presenters are contained in the area specified respective parent presenter.

44. Machine-readable medium comprising executable computer commands to facilitate image processing on behalf of a program that provides graphical elements that contain data representing display content of the program by the presenters, determining the status display for graphical elements, and where the presenter supports the description of the composition of the corresponding graphical element and where the system presenters provides hosting and organizing the presenters associated with graphical elements in the visible image, and is read by the computer commands that facilitate the implementation of the method include the steps:

the provision of a system of presenters containing the base class presenters and host interface presenters that contains a method for creating a layout embodied in the set of presenters associated with graphical elements in the visible image;

receiving the leading interface of the presenters of the request to form a layout for a set of graphical elements in the visible image; and

the creation of the La set of graphical elements corresponding to the presenters from a set of classes presenters, derived from the base class presenters, and call a method on each generated presenter to calculate the status of layout for the graphical element corresponding to the presenter.

45. Machine-readable medium according to item 44, optionally containing machine-readable commands for ordering the presenters for the visible image in the form of a hierarchical tree.

46. Machine-readable medium according to item 44, in which the computer performs commands facilitate the instantiation system of presenters in response to the challenge of creating a layout for a visible image, thereby creating a separate system of presenters and appropriate presenters for each of the visible image.

47. Machine-readable medium according to item 44, in which the base class presenters specifies the update method to calculate the properties of a layout for an instance of a presenter associated with the particular graphical element.

48. Machine-readable medium according to item 44, in which the base class presenters specifies rendering method for generating commands issued to the subsystem graphical output.

49. Machine-readable medium according to item 44, in which the presenters supports the education of pre-defined classes of presenters and external classes presenters.

50. Read to what newterm environment according to item 44, in which classes of presenters correspond to different types of presenters who put together different types of content of the graphic.

51. Machine-readable medium according to item 44, in which the base class presenters specifies a placeholder for the child presenters, thereby facilitating hierarchical layout of the presenters in the visible image, so that the child presenters are contained in the area specified respective parent presenter.



 

Same patents:

FIELD: technology for controlling orientation of image.

SUBSTANCE: orientation mode detector measures angles of rotation of display panel in several directions and determines orientation mode for source image data based on measured rotation angles. System memory stores orientation parameters in accordance to a set of image orientation modes. System controller originally receives information, pointing out orientation mode, from orientation mode detector, and extracts orientation parameters corresponding to received information from system memory. Finally, driver alters orientation of original image data in accordance to extracted orientation parameters.

EFFECT: optimal automatic orientation of image depending on turn of panel of display in several directions.

3 cl, 13 dwg

The invention relates to electronics and can be used to display values of various system parameters

FIELD: measuring and informational equipment, in particular, technology for using bridge sensors together with a computer.

SUBSTANCE: in accordance to the invention, additional boards, intermediate blocks and transformers are not included. Sensor is connected to the computer through a sound card in accordance to 4 shoulder bridge circuit. Analog output of sound card is connected to power diagonal of sensor as source of supporting alternating voltage, and signal from measuring diagonal of bridge is inputted into two stereo-input lines of sound card.

EFFECT: lowered mass of device, simplified connection of sensor to portable computers, decreased energy consumption.

1 dwg

Data input method // 2300129

FIELD: information input devices, possible use for inputting a broad spectrum of data by means of manipulator.

SUBSTANCE: technical effect is achieved by means of repeated execution of following: setting of beginning of counting of values of parameter value determining parameters, comparison of these values to sets of conditions of selection of spatial areas from a set of such areas, including at least condition of whether parameter values, corresponding to manipulator movement, belong to this spatial area, recording a series of input of spatial areas, comparison of this record to certain set of series of selection of spatial areas, inputting data from a set of data, connected to matching series.

EFFECT: increased quantity of manipulator movements defined for inputting data and variants of storage of content of inputted information corresponding to these.

1 dwg

I/o device // 2295748

FIELD: data processing devices.

SUBSTANCE: i/o device can be used in devices for manual data input/output. Device has keyboard mounted on panel, radiation receiver/ source couples, two reserved channels for data processing, which channels have decoder, switches and optical module, control bus, data bus and microcontroller. Radiation receivers and radiation sources are placed in case of optical module.

EFFECT: improved noise immunity; reduced power consumption; prolonged service life.

5 cl, 4 dwg

FIELD: computer functional devices.

SUBSTANCE: device is equipped with a lever with controlling and controlled arms, hanging on a support with the capability of moving controlled arm inside a spatial angle of a fixed spherical surface. Buttons and scroll wheel are located on controlling arm. Controlled arm, as well as the scanned interior spherical surface, is located inside the device.

EFFECT: increased efficiency and comfort of computer control, reduced surface occupied by device due to unification of device with keyboard case, increased device reliability due to the fact that scanned surface is located inside the device.

2 cl, 2 dwg

FIELD: automatics and computer engineering; information input, which defines the external device, working with computer.

SUBSTANCE: device contains commutator, storage device, two counters, synchronizer, three gates. Address inputs of commutator and storage device are connected to each other and to byte outputs of counter, which continuously changes its state influenced by clock signal. Each counter state corresponds to the number of external device and to information written in storage device, which defines this external device. Address digit count of storage device is greater than commutator address digit count by one. That is, each external device has an identifier of two words, which is passed to computer during current query cycle.

EFFECT: increased transferred information quantity during current external devices query cycle.

2 cl, 3 dwg

FIELD: product selection technologies.

SUBSTANCE: server system 100 controls selection of product through data transfer network 120, by means of a series of screens. Server system 100 processes user data from user input signals to determine whether user data are synchronized with at least one of a set of products. Server system 100 transfers the earliest one of screen signals, appropriate for such earliest one of screens in series, which has no synchronized data, if selected screen is next in the order of screens and if previous screens in order, prior to selected one, all have no synchronized data.

EFFECT: increased product selection efficiency.

3 cl, 13 dwg

FIELD: computation engineering.

SUBSTANCE: device has alphanumeric transformer, control unit and additionally introduced amplifier and transceiver register. Data input is carried out by sequentially reading each byte saved in the transceiver register.

EFFECT: high speed of input.

2 cl, 2 dwg

FIELD: measurement-information equipment engineering, in particular, aspect of implementing semi-bridge indicators together with personal computer.

SUBSTANCE: semi-bridge indicator is connected to computer through sound card, central processor unit of which is used for forming bearing alternating voltage, and two stereo output channels form alternating current bridge together with semi-bridge indicator, from diagonal line of which signal is injected into central processor unit of sound card.

EFFECT: simplified connection of semi-bridge indicator to computer, lower mass of device, possible connection to portable computers, decreased power consumption.

11 cl, 6 dwg

Navigation // 2265245

FIELD: interface design.

SUBSTANCE: objects are linked to multiple directions on basis of positions of these objects, ascension or descent for one level in hierarchy of such objects is performed, while a certain group of objects can be passed as a whole at first level, and shifting between its other elements or sub-group can take place at second level.

EFFECT: higher efficiency.

19 cl, 5 tbl, 37 dwg

FIELD: computer science.

SUBSTANCE: device has CPU, control block, receipt register, buffer memory block, address counter, first and second channel transmitters blocks, PC connection block, amplifier, pulse generator, control signals generator, second receipt register, second buffer memory block, first, second and third buffer registers, receipt-transmission register, strings counter, adder, first string counter and digital comparator.

EFFECT: higher speed of operation.

2 cl, 2 dwg

FIELD: informatics; computer technology.

SUBSTANCE: device can be used for soling tasks of composing dictionaries, manual as well as for creation of new databases. Device has entrance memory unit, processed words memory unit, unit for analyzing search, substitution memory unit, substitution unit, result storage unit, control unit.

EFFECT: widened functional abilities; improved reliability of operation; simplified algorithm of operation.

16 dwg

FIELD: technology for recognizing text information from graphic file.

SUBSTANCE: in accordance to method, set in advance is order of access to additional information, assigned also is estimate of quality for each type of additional information, different variants of division of image of selected rows on fragments are constructed, for each fragment of row linear division graph is built, images of graphic elements are recognized, using a classifier, and an estimate is assigned to each recognition variant, transition from variants of recognition of graphic elements to variants of alphabet symbols is performed, for each chain, connecting starting and ending vertexes, chains are built, appropriate for all variants of recognition of graphical elements and variants of transitions from recognized graphical elements to alphabet symbols, produced variants are ranked in order of decrease of recognition quality estimate, produced variants are processed with usage of information about position of uppercase and lowercase letters, if more than one variant of symbol is available based on results of recognition of graphic element, variants are processed with successive usage of additional information, and/or when necessary simultaneous usage of all types of additional information, quality estimate is assigned to each produced variant, variants of symbols with estimate below predetermined value are discarded, produced variants are sorted using pair-wise comparison, and additional correction of recognition of spaces, erroneously recognized at previous stages, is performed.

EFFECT: increased precision of recognition of text and increased interference resistance of text recognition.

9 cl, 2 dwg

FIELD: computer science, technology for mutual transformation of document (for example, XML document) and program object (for example, Java language object).

SUBSTANCE: in such structure, interpreter is used, masking method for producing transformation properties. Due to that, transformation code is generated, having general type for transformation in both directions. Transformer transforms XML document to program object by means of analyzer 104. To execute reverse transformation (from Java language to XML) it is required, that elements of XML document are positioned in certain order to provide for validity of produced XML document 118. For this purpose, in accordance to invention, template XML document is generated using, for example, JSP technology. Template, created using JSP, allows recording tags of documents in JSP with possible reverse call for values of elements and attributes. Content may be sent to buffer or directly to the output stream of servlet.

EFFECT: it is possible to efficiently realize creation of structure for such transformation by means of standard tools.

4 dwg, 8 tbl, 2 ex

FIELD: computer science.

SUBSTANCE: method includes text messages from data channel, linguistic words processing is performed, thesaurus of each text message is formed, statistical processing of words in thesaurus is performed, text message and thesaurus are stored in storage. Membership of text message in one of categories from the list is determined, starting data value of text message is determined, stored in storage with text message, data value values are periodically updated with consideration of time passed since their appearance and text messages with data value below preset threshold are erased, during processing of each message values of categories classification signs are updated.

EFFECT: higher efficiency.

1 dwg

The invention relates to the publishing industry and can be used for the preparation and issue of reference books
The invention relates to the field of electronics and is designed, for example, to use auxiliary data arrays in the conversion process and/or verification of computer codes in the form of symbols, and the corresponding portions of the image
The invention relates to the field of electronics and can be used, for example, in the way of interrelated activation computer code in the form of symbols and corresponding portions of the image

FIELD: computer science.

SUBSTANCE: method includes text messages from data channel, linguistic words processing is performed, thesaurus of each text message is formed, statistical processing of words in thesaurus is performed, text message and thesaurus are stored in storage. Membership of text message in one of categories from the list is determined, starting data value of text message is determined, stored in storage with text message, data value values are periodically updated with consideration of time passed since their appearance and text messages with data value below preset threshold are erased, during processing of each message values of categories classification signs are updated.

EFFECT: higher efficiency.

1 dwg

FIELD: computer science, technology for mutual transformation of document (for example, XML document) and program object (for example, Java language object).

SUBSTANCE: in such structure, interpreter is used, masking method for producing transformation properties. Due to that, transformation code is generated, having general type for transformation in both directions. Transformer transforms XML document to program object by means of analyzer 104. To execute reverse transformation (from Java language to XML) it is required, that elements of XML document are positioned in certain order to provide for validity of produced XML document 118. For this purpose, in accordance to invention, template XML document is generated using, for example, JSP technology. Template, created using JSP, allows recording tags of documents in JSP with possible reverse call for values of elements and attributes. Content may be sent to buffer or directly to the output stream of servlet.

EFFECT: it is possible to efficiently realize creation of structure for such transformation by means of standard tools.

4 dwg, 8 tbl, 2 ex

Up!