This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2015-194761, filed on Sep. 30, 2015, the entire contents of which are incorporated herein by reference.
The embodiment discussed herein is related to a display control device and a display control method.
In a known drag-and-drop technique, when a user performs a drag-and-drop operation on a window on a display screen, the window is moved to and dropped at a position according to the user operation, and is displayed at the drop position (see, for example, Japanese Laid-open Patent Publication Nos. 2001-325054 and 2006-185025). After moving the window, the user manually makes fine adjustments on the window, such as placing the window at a desired position or resizing the window into a desired size.
In a known technique, when a received drag-and-drop operation on a window specifies switching of windows, a dragged window and a window which is displayed at a position where the dragged window is dropped are switched in their display positions (see, for example, Japanese Laid-open Patent Publication No. 2012-27891).
According to an aspect of the invention, a display control method includes: receiving a drag operation on a first window displayed on a display screen, the display screen displaying the first window, a second window, and a third window; and when the drag operation releases the first window on one of a plurality of determination lines, rearranging the first window, the second window, and the third window in a preset display area according to a layout corresponding to the one of the plurality of determination lines, the layout automatically determining a size and a location of the first window so as to display the first window in the preset display area in a non-overlapping manner with respect to the second window and the third window.
The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, as claimed.
However, when there are multiple windows adjacent to, close to, or overlapping with a target window being operated, it is difficult for the above technique to automatically adjust the multiple windows in conjunction with the operation on the target window.
Thus, an aspect of the technique described in the present disclosure has an object to enable a certain window and two windows to be arranged on a display screen at once in conformity with display areas where the two windows have been displayed, more easily than manually arranging the certain window on the display screen in conformity with the display areas where the two windows have been displayed.
An embodiment is described below with reference to the accompanying drawings. Note that components, herein and in the drawings, having substantially the same function are denoted by the same reference numeral and described only once.
[Hardware Configuration of the Display Control Device]
First, an example of the hardware configuration of a display control device 1 according to the present embodiment is described with reference to
The display control device 1 has a central processing unit (CPU) 2, a memory 3, a hard disk drive (HDD) 4, an input device 5, a display device 6, a touch screen 7, a communications interface 8, and an external interface 9. All these parts are connected by buses B.
The memory 3 may be random access memory (RAM) or read-only memory (ROM). RAM is a volatile semiconductor memory capable of retaining programs and data temporarily. ROM is a non-volatile semiconductor memory capable of retaining data even after having been turned off. The RAM or ROM stores programs and data for network settings and the like.
The HDD 4 is a non-volatile recording device and may store programs and data. The programs and data stored in the HDD 4 include control programs for overall control of the display control device 1 and application programs. The control programs include a display control program executed by the CPU 2 or a hardware processor in the present embodiment.
The CPU 2 or the hardware processor performs overall control of the display control device 1 or implements a display control function installed in the display control device 1, by reading the control programs and data from the HDD 4, saving the control programs and data in the memory 3, and executing predetermined processing based on the control programs and data.
The input device 5 includes, for example, a keyboard or a mouse, and inputs a drag-and-drop operation according to user operation. The display device 6 includes a display and is capable of displaying multiple windows on a display screen at once. The touch screen 7 is layered on the display screen of the display device 6 and detects a touch operation by the user. The touch screen 7 detects when an operation object, such as a finger of the user, touches the touch screen 7. Thus, the display device 6 functions also as an input device. The display device 6 may be without the touch screen 7.
The communications interface 8 is an interface used to connect the display control device 1 to a network. The communications interface 8 allows the display control device 1 to perform data communications with another device.
The external interface 9 is an interface used to connect the display control device 1 to an external device. The external device is, for example, a recording medium 9a. The external interface 9 allows the display control device 1 to read data from the recording medium 9a and/or write data to the recording medium 9a. Examples of the recording medium 9a include a compact disk (CD), a digital versatile disk (DVD), a Secure Digital (SD) memory card, and a Universal Serial Bus (USB) memory.
[Function and Configuration of the Display Control Device]
Next, an example of the function and configuration of the display control device 1 according to the present embodiment is described with reference to
The initialization unit 11 initializes a fitting coordinate table 20. The operation reception unit 12 receives a user operation performed on a window displayed on the display screen. The operation reception unit 12 receives a drag operation on a window and then starts monitoring the position (coordinates) of the window which changes as the window moves. The operation reception unit 12 also receives a drop operation on the monitored window, separately from the drag operation. The operation reception unit 12 detects the coordinates of the window when the window is dropped. When the detected coordinates are particular coordinates (e.g., on a determination line to be described later), the display control unit 17 displays, according to a predetermined layout corresponding to the determination line, the window being operated and two adjacent windows whose border is identifiable based on the determination line. Known methods are used to detect the drag-and-drop operations on the window and to control the position and size of the window. Thus, detailed descriptions for such methods are omitted herein.
The recording unit 13 records the fitting coordinate table 20, a data management table 30, a display control program 40, and other control programs and various pieces of data. Layouts of the certain window and the two windows are recorded in the fitting coordinate table 20 beforehand, each layout arranging the certain window in association with the two windows according to an operation received by the operation reception unit 12.
The fitting coordinate table 20 has the following data items: determination line information 21, layout information 22, coordinates of fitting area 23, and ratio 24. The determination line information 21 indicates the name of a determination line and a mark to be displayed on the display screen, the mark indicating the position of the determination line. The determination line is an example of a guide image which guides an operation for selecting a certain window to be displayed in association with two adjacent, close, opposing, or overlapping windows displayed on the display screen. In the present embodiment, the guide image is a linear image located at, e.g., the border of two windows. The embodiment is however not limited to this. For example, the guide image may be the mark of the determination line information 21 displayed between two windows. The guide image does not necessarily have to be displayed.
The layout information 22 indicates information on a layout (arrangement) of three windows: the certain window and the two adjacent windows. The coordinates of fitting area 23 indicates display positions of the respective three windows. The display areas of the three windows specified by the coordinates of fitting area 23 are set so as not to overlap one another. For example, when a window is dropped on the determination line “L1”, the three windows are arranged and displayed vertically on the left half of the screen based on the layout information 22. The window dropped on the determination line L1 (also referred to as an “operated window” hereinbelow) is arranged between the adjacent windows. Among the coordinate sets indicated by the coordinates of fitting area 23, the operated window is displayed on an area specified by (X21,Y21)-(X22,Y22). The adjacent windows displayed adjacently on both sides of the operated window are displayed on areas specified by (X11,Y11)-(X12-Y12) and (X31,Y31)-(X32-Y32), respectively. These three windows are displayed in the same size, i.e., the ratio of their display areas is (1:1:1). Thus, the operated window is resized to be displayed in the one-third center area of the left half of the screen. Similarly, the adjacent windows are resized to be displayed in the one-third upper area and the one-third lower area of the left half of the screen, respectively.
The marks of the determination line information 21 and the layout information 22 do not necessarily have to be recorded in the fitting coordinate table 20. If the ratio 24 does not vary and is a predetermined fixed value, the ratio 24 does not necessarily have to be recorded in the fitting coordinate table 20, either.
Referring back to
The determination unit 15 determines, based on an operation received by the operation reception unit 12, whether a certain window has been selected to be displayed in association with adjacent windows. When it is determined based on an operation received by the operation reception unit 12 that a certain window has been selected to be displayed in association with adjacent windows, the specification unit 16 refers to the fitting coordinate table 20 and specifies a layout for displaying the adjacent windows and the certain window.
According to the layout thus specified, the display control unit 17 displays the adjacent windows and the certain window within the areas where the adjacent windows have been displayed. The display control unit 17 displays the three windows within the areas where the adjacent windows have been displayed, by inserting the certain window, dropped at the position of the determination line, between the adjacent windows.
With this configuration, the CPU 2 or the hardware processor of the display control device 1 according to the present embodiment executes display control processing, to be described later, using the display control program 40 stored in the memory 3 or the like. The display control program 40 according to the present embodiment may be a resident program which is resident in the memory 3 while the OS of the display control device 1 is running. When the user performs a drag-and-drop operation while the display control device 1 is executing a certain application, an interrupt occurs. In response to the interrupt by the drag-and-drop operation, the CPU 2 or the hardware processor executes the display control processing in accordance with the procedures indicated by the display control program 40.
The information recorded in the fitting coordinate table 20 illustrated in
[Display Control Processing]
Next, an example of the display control processing according to the present embodiment is described with reference to
Next, the initialization unit 11 initializes the fitting coordinate table 20 (Step S14). The initialization unit 11 divides the display screen based on the acquired screen size information and sets, for each determination line information 21, the coordinates of fitting area 23 defining one of the divided display areas.
Next, the operation reception unit 12 registers a drag operation thread, and starts monitoring a drag operation by the user (Step S16). The determination unit 15 determines whether an interrupt by a drag operation has occurred (Step S18). When the user performs a drag operation, an interrupt occurs for the drag operation thread for executing fitting processing according to the drag operation event. When the determination unit 15 determines that an interrupt has occurred, the fitting processing is performed (Step S20,
[Fitting Processing]
Once the fitting processing in
Next, the information acquisition unit 14 acquires the position of a pointer moved by the drag operation (Step S24). In the present embodiment, the position of the pointer is the position of a cursor. However, the embodiment is not limited to this. The position of the pointer may be a position on the touch screen 7 touched or approached by a finger of the user.
Next, the display control unit 17 reads the fitting coordinate table 20 and displays a determination line according to the position of the pointer (Step S26). For example, in
A method of displaying the determination line is, however, not limited to this. For example, without taking the moving direction of the pointer P into consideration, the display control unit 17 may display all the determination lines indicated by the determination line information 21 in the fitting coordinate table 20 illustrated in
The display color or outline of the determination line may darken as the pointer P approaches the determination line and pales as the pointer P moves away from the determination line, or vice versa.
The coordinates of fitting area 23 in the fitting coordinate table 20 do not have to correspond one-to-one to the determination line information 21. For example, the coordinates of fitting area 23 may vary depending on whether the pointer P is located on the center of the determination line, the pointer P is located on the right side of the determination line, or the pointer P is located on the left side of the determination line.
Referring back to
Next, the determination unit 15 determines whether the window W3 has been dropped within a predetermined period of time (Step S34). When it is determined that the window W3 has not been dropped within the predetermined period of time, the fitting processing proceeds back to Step S24 in which the information acquisition unit 14 acquires the current position of the pointer P, and repeats the steps after Step S24. When it is determined that the window W3 has been dropped within the predetermined period of time, the fitting processing ends. In this case, the window W3 is displayed at its dropped position with its size unchanged.
Meanwhile, after the determination line is kept displaying in Step S30, the determination unit 15 determines whether the window W3 has been dropped within a predetermined period of time since the display of the determination line (Step S36). When it is determined that the window W3 has not been dropped within the predetermined period of time, the fitting processing proceeds back to Step S24 in which the information acquisition unit 14 acquires the current position of the pointer P, and repeats the steps after Step S24. When it is determined in Step S36 that the window W3 has been dropped within the predetermined period of time, the determination unit 15 determines that a certain window has been selected to be displayed in association with two windows. Then, the determination unit 15 determines whether there are two windows adjacent to each other (adjacent windows) close to the certain window (Step S38). When it is determined that there are no adjacent windows, the fitting processing ends. In this case, the window W3 is displayed at its drop position with its size unchanged.
Meanwhile, when it is determined that there are adjacent windows, the display control unit 17 displays the adjacent windows, based on the fitting coordinate table 20, after moving and resizing them to fit the fitting areas on which they are to be displayed (Step S40). Next, the display control unit 17 moves and displays the dropped window in an interspace between the adjacent windows after resizing the dropped window to fit its fitting area (Step S42). The fitting processing thus ends.
To be more specific, in Step S40, the specification unit 16 specifies fitting areas corresponding to the determination line on which the pointer P is located, the specification being made based on the coordinates of fitting area 23 in the fitting coordinate table 20.
For example, when the window W3 moves in the lower right direction to follow the movement of the pointer P as illustrated in
In the present embodiment, when the window W3 illustrated in
The display control unit 17 also displays the dropped window W3 after moving the window W3 to a fitting area defined by (X51,Y51)-(X52,Y52) based on the coordinates of fitting area 23 and resizing the window W3 to fit this fitting area. Thereby, as illustrated in
Thus, an operated window and adjacent windows may be arranged at once in conformity with the areas where the adjacent windows have been displayed, more easily than when the operated window is manually inserted between the adjacent windows in conformity with the areas where the adjacent windows have been displayed.
In
For example, as illustrated in
It is also possible for the display control method according to the present embodiment to arrange the three windows W1 to W3 adjacently by inserting the operated window W3 between the two windows W1, W2 which partially or entirely overlap each other. For example, as illustrated in
For example, as illustrated in (a) of
Similarly, in (b-2) of
In (a) of
In an example illustrated in (b-1) of
In addition, in an example illustrated in (b-2) of
As described above, the display control method according to the present embodiment allows a certain window to be displayed between two windows which are already displayed. This is achieved more easily than displaying the three windows by manually changing their positions and sizes, and without changing other display properties of the two windows.
The recording unit 13 may register the favorite layout information 34 in the data management table 30. As illustrated in
Although the display control device 1 is integral with the display device 6 in the present embodiment, the embodiment is not limited to this. For example, a display control device 10 according to the present embodiment may be configured separately from the display device 6, as illustrated in
For example, the display control device 10 is connected to the display device 6 by plugging a High-Definition Multimedia Interface (HDMI (registered trademark)) connector of the display control device 10 into an HDMI port of the display device 6. Examples of the display device 6 include a television, a display, and a projector. An input device such as a mouse 50 may be connected to a USB port of the display control device 10. The mouse 50 is used to allow the window W displayed on the display device 6 to move.
The display control device, the display control method, and the display control program have been described above through the embodiment. However, the display control device, the display control method, and the display control program according to the present disclosure are not limited to the ones described in the embodiment, and may be modified and improved variously without departing from the present disclosure. If there are more than one embodiment and modification, they may be combined as long as contradiction does not occur.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiment of the present invention has been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2015-194761 | Sep 2015 | JP | national |