Detailed Description
Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure are shown in the drawings, it is to be understood that the present disclosure may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but rather are provided for a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the disclosure are for illustration purposes only and are not intended to limit the scope of the disclosure.
It should be understood that various steps recited in method embodiments of the present disclosure may be performed in parallel and/or in parallel. Moreover, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present disclosure is not limited in this respect.
The term "include" and variations thereof as used herein are open-ended, i.e., "including but not limited to". The term "based on" is "based, at least in part, on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Relevant definitions for other terms will be given in the following description.
It should be noted that the terms "first", "second", and the like in the present disclosure are only used for distinguishing different devices, modules or units, and are not used for limiting the order or interdependence relationship of the functions performed by the devices, modules or units.
It is noted that references to "a" or "an" in this disclosure are intended to be illustrative rather than limiting, and that those skilled in the art will recognize that reference to "one or more" unless the context clearly dictates otherwise.
The names of messages or information exchanged between devices in the embodiments of the present disclosure are for illustrative purposes only, and are not intended to limit the scope of the messages or information.
The embodiments of the present application will be described in detail below with reference to the accompanying drawings.
An embodiment of the present disclosure provides a display control method, as shown in fig. 1, including:
s01: in response to a first operation on a first window, determining the relative position of the first window and a second window when the first operation is finished;
s02: and splicing the first window and the second window according to the relative position of the first window and the second window when the first operation is finished.
Specifically, the splicing mode during splicing includes internal splicing and external splicing, and the display control method in the embodiment of the present disclosure may be applied to a terminal, for example, an android system terminal or an apple system terminal, where the terminal may be a mobile phone, a tablet, a computer, or a television. The first window and the second window are windows opened by any application, for example, the first window may be a window opened by a browser, and the second window may be a window opened by a video application. The first operation may be a moving operation, taking the touch terminal adopting the control method in this embodiment as an example, and the first operation may be a dragging operation performed after the first application window is pressed. Taking the example of dragging the first window by the user, during the period that the first window is dragged, the relative position between the first window and the second window may change, and therefore, how to splice the first window and the second window is determined only according to the relative position of the first window and the second window at the last moment during the execution of the first operation, the splicing manner includes inner and outer splicing, where outer splicing means that the first window and the second window are not overlapped after splicing, for example, the first window and the second window are connected to each other along parallel edges, inner splicing means that the first window and the second window are overlapped after splicing, for example, inner splicing includes displaying as picture-in-picture, and after splicing, a unified operation on the spliced windows may be implemented, for example, directly dragging the spliced windows to move so as not to need to drag the first window and the second window respectively.
In prior art, it is loaded down with trivial details to splice or show the window for picture-in-picture process, realizes the inside concatenation and the outside concatenation of window through the relative position of adjustment first window and second window in this embodiment, compares in prior art, can reduce user's operating procedure at least and improve user experience.
In some optional embodiments, the splicing the first window and the second window according to the relative position of the first window and the second window includes:
if the relative position of the first window and the second window meets a first condition when the first operation is finished, externally splicing the first window and the second window; and if the relative position of the first window and the second window meets a second condition when the first operation is finished, internally splicing the first window and the second window. The first condition and the second condition are preset conditions and are used for judging whether the first window and the second window are subjected to external splicing or internal splicing specifically, and if the first condition and the second condition are not met, the first window and the second window are not spliced.
In some embodiments of the present disclosure, if a relative position of the first window and the second window at the end of the first operation satisfies a first condition, performing external splicing on the first window and the second window includes:
if the distance between the first edge of the first window and the second edge of the second window is smaller than the distance threshold value when the first operation is finished, performing external splicing on the first window and the second window;
in this embodiment, the first edge is any edge of the first window, and the second edge is any edge of the second window. Optionally, the first edge and the second edge are parallel to each other and face oppositely, and the facing direction of the edge is a direction in which the edge is far away from the display area of the window in which the edge is located. For example, referring to fig. 2, fig. 2(a) schematically shows relative positions of a first window and a second window before a first operation is performed, when a user performs the first operation to move the position of the first window so that the first window is close to the second window, as shown in fig. 2(b), a first edge on the right side of the first window and a second edge on the left side of the second window are close to each other, and if the distance between the first edge and the second edge is smaller than a distance threshold when the user stops performing the first operation, the first window and the second window are automatically spliced to each other as shown in fig. 2 (c). Optionally, when the first window and the second window are externally spliced, the first edge and the second edge are attached to each other. Optionally, after the first window and the second window are spliced, the first window and the second window are not shielded from each other.
In some embodiments of the present disclosure, if a relative position of the first window and the second window at the end of the first operation satisfies a first condition, performing external splicing on the first window and the second window includes:
and if the first window is overlapped with the second window when the first operation is finished, and the overlapping area of the first window and the second window is smaller than an area threshold, performing external splicing on the first window and the second window.
In this embodiment, when the first window and the second window overlap, it indicates that the user wishes to control the first window and the second window, and when the overlapping area of the first window and the second window is smaller than the area threshold, it indicates that the user wishes to perform external splicing on the first window and the second window. Generally speaking, the purpose of the user's splicing is to display the first window and the second window side by side, and when the overlapping area of the first window and the second window is larger than the area threshold, it indicates that the user probably does not want the first window and the second window to be displayed side by side at this time, so in this embodiment, the first window and the second window are not spliced at this time, but are spliced when the overlapping area is smaller than the area threshold. In the present embodiment, the area threshold is used as the determination criterion of the first condition, thereby preventing erroneous control.
In some embodiments of the present disclosure, if a relative position of a first window and a second window at the end of a first operation satisfies a second condition, internally splicing the first window and the second window includes: and if the overlapping area between the first window and the second window is larger than or equal to the area threshold value when the first operation is finished, displaying the first window as a picture-in-picture of the second window.
Referring to fig. 3, before performing the first operation, the positions of the first window and the second window may be as shown in fig. 3(a), and the user performs the first operation on the first window, taking the first operation as a dragging operation as an example, as shown in fig. 3(b), the dragged first window overlaps with the second window, and if the overlapping area of the first window and the second window reaches the area threshold, as shown in fig. 3(c), the first window is displayed as a picture-in-picture of the second window at this time. Optionally, in the process of displaying the first window as a picture-in-picture of the second window, the second window may be enlarged to make the second window fit to the current display screen, or the size of the first window as the picture-in-picture may be adjusted according to the size of the second window, so that the ratio of the area of the first window as the picture-in-picture to the area of the second window is a preset ratio. Alternatively, when the first window is displayed as the pip of the second window, the display position of the pip may be determined according to the position of the first window in the second window when the first operation ends, for example, the second window may be divided into a plurality of regions (for example, the second window is divided into four regions by a central cross), when the first operation ends, the region with the largest overlapping area with the first window serves as a target display region, and the first window is displayed as the pip in the target display region.
In some embodiments of the present disclosure, the control method of the present disclosure further includes: in response to a second operation on the first window displayed as a picture-in-picture, the first window is enlarged and a second window is displayed as a picture-in-picture of the first window. In this embodiment, after the first window is displayed as the picture-in-picture, the second window can be displayed as the picture-in-picture of the first window by performing the second operation on the first window, that is, the first window changes from the foreground of the picture-in-picture to the background, and the second window changes from the background of the picture-in-picture to the foreground.
In some embodiments of the present disclosure, the size of the first window after responding to the second operation is the same as the size of the second window before responding to the second operation; in some embodiments of the present disclosure, the size of the second window after responding to the second operation is the same as the size of the first window before responding to the second operation. In some embodiments of the present disclosure, the position of the first window after responding to the second manipulation is the same as the position of the second window before responding to the second manipulation; in some embodiments of the present disclosure, the position of the second window after responding to the second operation is the same as the position of the first window before responding to the second operation.
Specifically, after responding to the second operation, the first window is changed from the foreground of the picture-in-picture to the background of the picture-in-picture, and the second window is changed from the background of the picture-in-picture to the foreground after the second operation, and the size and the position of the foreground and the background of the picture-in-picture are the sizes that have been used by the user before, so that the size and the position of the foreground and the background are kept unchanged to best meet the requirements of the user, and the operation of the user can be reduced.
To better illustrate the effects of the embodiments of the present disclosure, referring to fig. 4, as shown in fig. 4(a), the first window is a picture-in-picture of the second window, and at this time, performing a second operation on the first window, for example, clicking or pressing the first window, as shown in fig. 4(b), the second window is a picture-in-picture of the first window, and during this process, the positions and sizes of the first window and the second window may be directly interacted.
In some embodiments of the present disclosure, enlarging a first window and displaying a second window as a picture-in-picture of the first window comprises: and reducing the height value of the first window in the direction of the screen z axis and/or increasing the height value of the second window in the direction of the screen z axis so that the height value of the second window in the direction of the screen z axis is larger than the height value of the first window in the direction of the screen z axis. Specifically, in the terminal, the z-axis of the screen is perpendicular to the screen and faces the outside of the screen, different application windows may have different height values, the application windows with different heights are displayed on different layers, when the first window and the second window are spliced, the two application windows may be displayed on the same layer, so that the height values of the two application windows may be kept the same, but when the first window and the second window are overlapped, the two application windows need to be displayed on different layers, so that the height values of the two application windows need to be different, and a window with a large height value is located above a window with a small height value, so that the height value of the foreground of a picture-in-picture needs to be greater than the height value of the background, when the first window is displayed as a picture-in-picture of the second window, the height value of the first window is greater than the second window, and when the second window needs to be displayed as a picture-in-picture of the first window, that is to be, it is necessary to decrease the height value of the first window and/or increase the height value of the second window. Optionally, decreasing the height value of the first window in the z-axis direction of the screen and/or increasing the height value of the second window in the z-axis direction of the screen includes: and exchanging the height values of the first window and the second window in the direction of the screen z axis, namely after the second operation, the height value of the first window in the direction of the screen z axis is equal to the height value of the second window in the direction of the screen z axis before the second operation, and after the second operation, the height value of the second window in the direction of the screen z axis is equal to the height value of the first window in the direction of the screen z axis before the second operation.
In some embodiments of the present disclosure, the aspect ratio of the first window and/or the second window before and after splicing remains unchanged. Specifically, the aspect ratio is kept unchanged before and after splicing, so that distortion of the picture can be prevented, and the reduction of user experience is avoided.
In some embodiments of the present disclosure, when the splicing manner is external splicing, a total length of the spliced first window and the spliced second window in the splicing direction is equal to a length of the screen display area in the splicing direction. Specifically, this embodiment includes two kinds of circumstances, one is that first window and second window splice along length direction, the total length of first window and second window after the concatenation this moment equals the length of screen display district, another is that first window and second window splice along width direction, the total width after first window and second window concatenation this moment equals the total width of screen display district, through the length of automatically regulated concatenation in concatenation direction, make the display area of first window and second window after the concatenation fill up the display area of screen as far as possible, thereby improve user's use experience.
In some embodiments of the present disclosure, when the splicing manner is internal splicing, a window with a larger area in the spliced first window and the spliced second window is displayed in a full screen. Specifically, after the first window and the second window are internally spliced, if the first window is displayed as a picture-in-picture of the second window as shown in fig. 4(a), the second window is displayed in a full screen, so that the area occupied by the first window in the second window is reduced, the display area is increased, and the display effect is improved. Likewise, when the second window is displayed as a picture-in-picture of the first window as shown in fig. 4(b), the first window is displayed full screen.
In some optional embodiments, the second window is a window having a picture-in-picture, when the first window and the second window are spliced and the splicing manner is an internal splicing manner, if the first window is displayed as the picture-in-picture of the second window, the picture-in-picture windows originally present in the first window and the second window do not overlap with each other, optionally, the position of the first window in the second window is adjustable, for example, the position of the first window in the second window may be moved. As shown in fig. 5, an embodiment of the present disclosure further provides a control device for an application window, including:
a response unit 10, configured to determine, in response to a first operation on a first window, a relative position of the first window and the second window at the end of the first operation;
the control unit 20 is configured to splice the first window and the second window according to the relative position of the first window and the second window when the first operation is finished;
wherein, the splicing mode comprises internal splicing and external splicing.
For the embodiments of the apparatus, as they correspond substantially to the method embodiments, reference may be made to the partial description of the method embodiments for the second terminal for the relevant points. The above-described apparatus embodiments are merely illustrative, wherein the modules described as separate modules may or may not be separate. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment. One of ordinary skill in the art can understand and implement it without inventive effort.
The remote education interaction method and device of the present disclosure are described above based on the embodiments and application examples. In addition, the present disclosure also provides a terminal and a storage medium, which are described below.
Referring now to fig. 6, a schematic diagram of an electronic device (e.g., a terminal device or server) 800 suitable for use in implementing embodiments of the present disclosure is shown. The terminal device in the embodiments of the present disclosure may include, but is not limited to, a mobile terminal such as a mobile phone, a notebook computer, a digital broadcast receiver, a PDA (personal digital assistant), a PAD (tablet computer), a PMP (portable multimedia player), a vehicle terminal (e.g., a car navigation terminal), and the like, and a stationary terminal such as a digital TV, a desktop computer, and the like. The electronic device shown in fig. 6 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present disclosure.
As shown in fig. 6, the electronic device 800 may include a processing means (e.g., a central processing unit, a graphics processor, etc.) 801 that may perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM)802 or a program loaded from a storage means 808 into a Random Access Memory (RAM) 803. In the RAM803, various programs and data necessary for the operation of the electronic apparatus 800 are also stored. The processing apparatus 801, the ROM 802, and the RAM803 are connected to each other by a bus 804. An input/output (I/O) interface 805 is also connected to bus 804.
Generally, the following devices may be connected to the I/O interface 805: input devices 806 including, for example, a touch screen, touch pad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; output devices 807 including, for example, a Liquid Crystal Display (LCD), speakers, vibrators, and the like; storage 808 including, for example, magnetic tape, hard disk, etc.; and a communication device 809. The communication means 809 may allow the electronic device 800 to communicate wirelessly or by wire with other devices to exchange data. While fig. 6 illustrates an electronic device 800 having various means, it is to be understood that not all illustrated means are required to be implemented or provided. More or fewer devices may alternatively be implemented or provided.
In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through the communication means 809, or installed from the storage means 808, or installed from the ROM 802. The computer program, when executed by the processing apparatus 801, performs the above-described functions defined in the methods of the embodiments of the present disclosure.
It should be noted that the computer readable medium in the present disclosure can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In contrast, in the present disclosure, a computer readable signal medium may comprise a propagated data signal with computer readable program code embodied therein, either in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, optical cables, RF (radio frequency), etc., or any suitable combination of the foregoing.
In some embodiments, the clients, servers may communicate using any currently known or future developed network Protocol, such as HTTP (HyperText Transfer Protocol), and may interconnect with any form or medium of digital data communication (e.g., a communications network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), the Internet (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed network.
The computer readable medium may be embodied in the electronic device; or may exist separately without being assembled into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to perform the methods of the present disclosure as described above.
Computer program code for carrying out operations for aspects of the present disclosure may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + +, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present disclosure may be implemented by software or hardware. Where the name of an element does not in some cases constitute a limitation on the element itself.
The functions described herein above may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), systems on a chip (SOCs), Complex Programmable Logic Devices (CPLDs), and the like.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
According to one or more embodiments of the present disclosure, there is provided a display control method including:
in response to a first operation on a first window, determining the relative position of the first window and the second window at the end of the first operation;
splicing the first window and the second window according to the relative position of the first window and the second window when the first operation is finished;
wherein, the splicing mode comprises internal splicing and external splicing
According to one or more embodiments of the present disclosure, there is provided a display control method for splicing a first window and a second window according to a relative position of the first window and the second window, including:
if the relative position of the first window and the second window meets a first condition when the first operation is finished, externally splicing the first window and the second window; and if the relative position of the first window and the second window meets a second condition when the first operation is finished, internally splicing the first window and the second window.
According to one or more embodiments of the present disclosure, there is provided a display control method for performing external splicing on a first window and a second window if a relative position of the first window and the second window at the end of a first operation satisfies a first condition, the method including:
if the distance between the first edge of the first window and the second edge of the second window is smaller than the distance threshold value when the first operation is finished, performing external splicing on the first window and the second window;
the first edge is any edge on the first window, and the second edge is any edge on the second window.
According to one or more embodiments of the present disclosure, there is provided a display control method for performing external splicing on a first window and a second window if a relative position of the first window and the second window at the end of a first operation satisfies a first condition, the method including:
and if the first window is overlapped with the second window when the first operation is finished, and the overlapping area of the first window and the second window is smaller than an area threshold, performing external splicing on the first window and the second window.
According to one or more embodiments of the present disclosure, there is provided a display control method for internally splicing a first window and a second window if a relative position of the first window and the second window at the end of a first operation satisfies a second condition, including:
and if the overlapping area between the first window and the second window is not smaller than the area threshold value when the first operation is finished, displaying the first window as a picture-in-picture of the second window.
According to one or more embodiments of the present disclosure, there is provided a display control method, further including: in response to a second operation on the first window displayed as a picture-in-picture, the first window is enlarged and a second window is displayed as a picture-in-picture of the first window.
According to one or more embodiments of the present disclosure, there is provided a display control method in which a size of a first window after a second operation is the same as a size of a second window before the second operation; and/or the presence of a gas in the gas,
the size of the second window after responding to the second operation is the same as the size of the first window before responding to the second operation, and/or,
the position of the first window after responding to the second operation is the same as the position of the second window before responding to the second operation; and/or the presence of a gas in the gas,
the position of the second window after responding to the second operation is the same as the position of the first window before responding to the second operation.
According to one or more embodiments of the present disclosure, there is provided a display control method of enlarging a first window and displaying a second window as a picture-in-picture of the first window, including:
and reducing the height value of the first window in the direction of the screen z axis and/or increasing the height value of the second window in the direction of the screen z axis so that the height value of the second window in the direction of the screen z axis is larger than the height value of the first window in the direction of the screen z axis.
According to one or more embodiments of the present disclosure, there is provided a display control method in which an aspect ratio of a first window and/or a second window before and after splicing is maintained to be constant; and/or the presence of a gas in the gas,
when the splicing mode is external splicing, the total length of the spliced first window and the spliced second window in the splicing direction is equal to the length of the screen display area in the splicing direction; and/or the presence of a gas in the gas,
and when the splicing mode is internal splicing, the spliced first window and the spliced second window are displayed in a full screen mode, wherein the window has a larger area.
According to one or more embodiments of the present disclosure, there is provided an application window control apparatus, including:
the response unit is used for responding to a first operation on a first window and determining the relative position of the first window and the second window when the first operation is finished;
the control unit is used for splicing the first window and the second window according to the relative position of the first window and the second window when the first operation is finished;
wherein, the splicing mode comprises internal splicing and external splicing.
According to one or more embodiments of the present disclosure, there is provided a terminal including: at least one memory and at least one processor;
wherein the at least one memory is configured to store program code, and the at least one processor is configured to call the program code stored in the at least one memory to perform the method of any one of the above.
According to one or more embodiments of the present disclosure, there is provided a storage medium for storing program code for performing the above-described method.
The foregoing description is only exemplary of the preferred embodiments of the disclosure and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the disclosure herein is not limited to the particular combination of features described above, but also encompasses other embodiments in which any combination of the features described above or their equivalents does not depart from the spirit of the disclosure. For example, the above features and (but not limited to) the features disclosed in this disclosure having similar functions are replaced with each other to form the technical solution.
Further, while operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order. Under certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are included in the above discussion, these should not be construed as limitations on the scope of the disclosure. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.