The application is a divisional application of patent application 2021108540506 filed on 7.28 days 2021.
Detailed Description
Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
Fig. 1 is a schematic block diagram of an example computing device 100.
As shown in FIG. 1, in a basic configuration 102, a computing device 100 typically includes a system memory 106 and one or more processors 104. The memory bus 108 may be used for communication between the processor 104 and the system memory 106.
Depending on the desired configuration, the processor 104 may be any type of processing including, but not limited to: a microprocessor (UP), a microcontroller (UC), a digital information processor (DSP), or any combination thereof. The processor 104 may include one or more levels of caches, such as a first level cache 110 and a second level cache 112, a processor core 114, and registers 116. The example processor core 114 may include an Arithmetic Logic Unit (ALU), a Floating Point Unit (FPU), a digital signal processing core (DSP core), or any combination thereof. The example memory controller 118 may be used with the processor 104, or in some implementations, the memory controller 118 may be an internal part of the processor 104.
Depending on the desired configuration, system memory 106 may be any type of memory including, but not limited to: volatile memory (such as RAM), non-volatile memory (such as ROM, flash memory, etc.), or any combination thereof. The system memory 106 may include an operating system 120, one or more applications 122, and program data 124. In some implementations, the application 122 may be arranged to execute instructions on an operating system by the one or more processors 104 using the program data 124.
Computing device 100 also includes storage device 132, storage device 132 including removable storage 136 and non-removable storage 138.
Computing device 100 may also include a storage interface bus 134. Storage interface bus 134 enables communication from storage devices 132 (e.g., removable storage 136 and non-removable storage 138) to base configuration 102 via bus/interface controller 130. At least a portion of the operating system 120, applications 122, and data 124 may be stored on removable storage 136 and/or non-removable storage 138, and loaded into the system memory 106 via the storage interface bus 134 and executed by the one or more processors 104 when the computing device 100 is powered up or the application 122 is to be executed.
Computing device 100 may also include an interface bus 140 that facilitates communication from various interface devices (e.g., output devices 142, peripheral interfaces 144, and communication devices 146) to basic configuration 102 via bus/interface controller 130. The example output device 142 includes a graphics processing unit 148 and an audio processing unit 150. They may be configured to facilitate communication with various external devices such as a display or speakers via one or more a/V ports 152. Example peripheral interfaces 144 may include a serial interface controller 154 and a parallel interface controller 156, which may be configured to facilitate communication with external devices such as input devices (e.g., keyboard, mouse, pen, voice input device, touch input device) or other peripherals (e.g., printer, scanner, etc.) via one or more I/O ports 158. An example communication device 146 may include a network controller 160, which may be arranged to facilitate communication with one or more other computing devices 162 via one or more communication ports 164 over a network communication link.
The network communication link may be one example of a communication medium. Communication media may typically be embodied by computer readable instructions, data structures, program modules, and may include any information delivery media in a modulated data signal, such as a carrier wave or other transport mechanism. A "modulated data signal" may be a signal that has one or more of its data set or changed in such a manner as to encode information in the signal. By way of non-limiting example, communication media may include wired media such as a wired network or special purpose network, and wireless media such as acoustic, radio Frequency (RF), microwave, infrared (IR) or other wireless media. The term computer readable media as used herein may include both storage media and communication media.
Computing device 100 may be implemented as a personal computer including desktop and notebook computer configurations. Of course, computing device 100 may also be implemented as part of a small-sized portable (or mobile) electronic device such as a cellular telephone, a digital camera, a Personal Digital Assistant (PDA), a personal media player device, a wireless web-watch device, a personal headset device, an application-specific device, or a hybrid device that may include any of the above functions. And may even be implemented as servers, such as file servers, database servers, application servers, WEB servers, and the like. The embodiments of the present invention are not limited in this regard.
In an embodiment according to the invention, the computing device 100 is configured to perform the address bar based interaction method 200 according to the invention. Wherein the application of the computing device 100 contains a plurality of program instructions for executing the address bar based interaction method 200 of the present invention, such that the address bar based interaction method 200 of the present invention can be executed in the computing device 100.
According to one embodiment of the invention, the operating system of the computing device 100 includes a file manager 125, and the file manager 125 includes a plurality of program instructions for executing the address bar based interaction method 200 of the present invention, such that the address bar based interaction method 200 of the present invention can be executed in the file manager.
FIG. 2 illustrates a flow chart of an address bar based interaction method 200 according to one embodiment of the invention. The address bar based interaction method 200 may be performed in a file manager 125 of a computing device (e.g., the aforementioned computing device 100). The file manager includes a corresponding venturi window adapted to be displayed on a system desktop of the computing device 100.
According to one embodiment of the invention, an address bar is included within the tube window, which may include one or more address fields. It should be noted that the address in the address bar may include one or more file directories associated therewith, each of which may be an address field.
As shown in fig. 3, the address "/folder a/folder B/work document" is included in the address bar of the current management window, wherein "folder a", "folder B", "work document" are one address segment, respectively, and there is an association relationship between the three address segments, wherein "folder B" is a subdirectory under "folder a", and "work document" is a subdirectory under "folder B". In addition, the file view is included in the file management window, and the file view is an area for displaying files in the file management window. Wherein, displayed in the file view of the current file management window are a plurality of files under the current file directory "working document".
It should be noted that, when the user needs to switch from the current file directory to another directory, for example, when the user needs to switch from the current "work document" to the "folder B" file directory, the creation of the corresponding new folder page may be implemented by executing the address bar based interaction method 200 of the present invention.
As shown in fig. 2, the method 200 begins at step S210.
In step S210, a drag operation of the mouse on any one address segment (e.g., folder B) in the address bar of the current font tube window is received, and it is determined whether the drag operation satisfies a predetermined condition. Here, the predetermined condition is a condition related to the mouse release position.
When the drag operation satisfies the predetermined condition, step S220 is performed. In step S220, a new folder page corresponding to the address segment is created, the new folder page including a corresponding file view for displaying one or more files corresponding to the address segment.
According to one embodiment of the invention, the new venturi page comprises a new venturi window and a tab page, wherein the new venturi window is adapted to be created outside the current venturi window and the tab page is adapted to be created inside the current venturi window. The text tube window also comprises a label column.
Accordingly, the predetermined conditions include a first predetermined condition corresponding to creating a new tube window, the first predetermined condition being dragging the address segment outside the tube window to be released, and a second predetermined condition corresponding to creating a tab page, the second predetermined condition being dragging the address segment to be released at a tab bar within the tube window. In step S210, it may be synchronously determined whether the drag operation satisfies the first predetermined condition and the second predetermined condition.
Wherein when the drag operation satisfies the first predetermined condition, i.e., when the drag operation is to drag the address segment out of the tube window and release, a new tube window corresponding to the address segment may be created out of the tube window in step S220. Here, fig. 3 shows a schematic diagram of creating a new venturi window according to an embodiment of the present invention.
When the drag operation satisfies the second predetermined condition, i.e., when the drag operation is a drag of the address segment to the tab bar within the duct window, a tab page corresponding to the address segment may be created within the duct window in step S220. Here, fig. 5 to 7 show schematic diagrams of creating a tab page according to an embodiment of the present invention.
Finally, in step S230, an address corresponding to the address segment is determined, and one or more files corresponding to the address segment are displayed in the file view of the new folder page based on the address corresponding to the address segment.
According to the technical scheme of the invention, the creation of the new text tube page corresponding to the dragged address field can be realized only by dragging operation of the mouse on the address field, wherein the new text tube window or the label page is correspondingly created according to whether the position released by the mouse is released outside the window or the label column in the window is released. The file view within the new folder page may display one or more files under the file directory corresponding to the address field. Therefore, the new file management page is created only by dragging the address bar, files under multiple directories can be accessed simultaneously based on the newly created file management page, switching operation among the multiple file directories can be conveniently performed, and the efficiency of switching the file directories is improved.
It should be noted that, the dragged address segment is a file directory, for example, "folder B", and the address corresponding to the address segment is a complete file path corresponding to the file directory. For example, the address in the address bar is "/folder a/folder B/work document", where the address corresponding to the address field "folder B" is "/folder a/folder B".
It should be appreciated that one or more files contained under an address segment may be accessed based on the address to which the address segment corresponds. For example, one or more files under "folder B" may be accessed based on the address being "/folder a/folder B". In this way, one or more files contained under the address field may be displayed within the file view of the new management page, i.e., one or more files corresponding to the address field may be displayed within the file view. As shown in fig. 3, the "working document" directory is displayed as a subdirectory of folder B in the file view of the new folder window corresponding to the address field "folder B".
In one implementation, the address corresponding to the dragged address segment is used as a parameter to be transmitted into a new file management page, so that the new file management page displays one or more files corresponding to the address segment in the file view according to the parameter.
In one embodiment, creating a new pipe window corresponding to an address segment may be performed according to the following steps:
and determining the position of the mouse pointer in real time in the process of dragging the address segment by the mouse.
When it is determined that the mouse pointer position is outside of the venturi window, a pre-created window state is triggered.
When the release of the mouse button outside the text pipe window is detected, a new text pipe window corresponding to the dragged address segment is created in response to the operation of releasing the mouse button outside the text pipe window. In addition, the address corresponding to the dragged address segment is used as a parameter to be transmitted into the new file management window, so that the new file management window displays one or more files corresponding to the address segment in the file view according to the parameter. For example, the address field "folder B" has an address of "/folder a/folder B", and finally, displayed in the file view of the new folder window is one or more files contained under folder B acquired based on the address "/folder a/folder B".
In addition, it should be noted that, in dragging the address bar through the mouse, after the mouse pointer moves outside the venturi window, the mouse information (e.g., the mouse pointer position information) cannot be acquired in the file manager process, where the global mouse information can be acquired through the hook. In a Windows operating system, the existing function SetWindow HookEx can be directly called, and the implementation process is simpler. In Linux operating systems, no encapsulated hook function is available to obtain mouse information from the device event layer.
In one implementation, the drag operation on the address bar may be implemented by pressing the left mouse button and moving the mouse.
FIG. 4 shows a schematic diagram of the position of a mouse pointer according to one embodiment of the invention, as shown in FIG. 4, assuming that the coordinates of the tube window are (x, y, w, h), where x, y are the abscissa and ordinate, respectively, of the upper left corner of the tube window, and w, h is the width and height, respectively, of the tube window. The position of the mouse pointer when it moves out of the window is op= (x ", y"). After the mouse pointer is moved outside the venturi window, the mouse information can be obtained by the following method:
First, a mouse device event path p= "/dev/input/mic" is defined.
Subsequently, P is opened by the open function, and the file descriptor fd is acquired.
And then, acquiring the mouse event data according to fd, and analyzing the mouse event data. Since only the information of the left mouse button is needed, only the left mouse button state left, the increment value of the mouse pointer on the x axis and the increment value of the mouse pointer on the y axis are obtained, and are respectively: left=data [0] &0x1; Δx=data [1]; Δy=data [2]. Wherein left=1 indicates that the left mouse button is in a pressed state, and left=0 indicates that the left mouse button is in a lifted state. The current mouse pointer position P 'is equal to the position OP at the time of moving out of the window plus the incremental value of the mouse pointer, i.e., P' (x '=Δx+x ", y' =Δy+y"). The first predetermined condition may be expressed as: x '< x' > x+w y '< y' > y+h.
When the mouse pointer moves out of the text tube window, the file manager can determine the state of the left mouse button in real time, if the value of left is changed from 1 to 0, the left mouse button is determined to be lifted, at the moment, whether the mouse pointer is out of the text tube window is judged again, if the mouse pointer is out of the text tube window at the moment, the file manager executes logic for creating a new text tube window, and otherwise, the state of the pre-created window is exited.
Fig. 5-7 illustrate diagrams of creating a tab page according to one embodiment of the invention.
According to one embodiment of the invention, as shown in FIG. 5, a tab bar is included within the text tube window, within which tabs of one or more tab pages, such as a "work document" tab, may be displayed. In this way, one or more tab pages may be displayed based on one of the text tube windows. Specifically, each tab page includes a tab adapted to be displayed in a tab field, which may be established based on address fields (file directories), on which corresponding address field information, such as a "work document", may be displayed, and a corresponding file view for displaying one or more files corresponding to the address fields displayed on the tab. The method comprises the steps of enabling a label page corresponding to a label to be displayed in a text tube window in a switching mode through a selected label in a label column, wherein when one label is selected in the label column, the label page corresponding to the selected label is displayed in the text tube window, and therefore one or more files corresponding to address fields on the selected label can be presented based on a file view of the label page.
Here, the dragged address segment information is displayed on the tab of the tab page as shown in fig. 5, for example, the dragged address segment is folder B, and then the tab of the tab page finally created is displayed with "folder B". In addition, after the tab page is created, the tab of the currently created tab page is actively selected, so that the newly created tab page and the file view thereof are displayed in the text management window.
In one implementation, the tab page is entered with the address corresponding to the dragged address segment as a parameter, such that the tab page displays one or more files corresponding to the address segment within its corresponding file view according to the parameter. For example, the address field "folder B" has an address of "/folder a/folder B", and finally displayed within the created file view of the tab page is one or more files contained under folder B acquired based on the address "/folder a/folder B".
According to one embodiment, as shown in FIG. 6, one or more tab pages have been previously created within the text management window, and a tab including one or more tab pages within the tab bar, for example, includes "folder D" and "work document". When the dragging operation of the mouse on the address segment is released by dragging the address segment to the tab bar in the text tube window, that is, when the dragging operation meets a second preset condition, a new tab page corresponding to the address segment can be created.
In one embodiment, the method of creating a tab page corresponding to an address field may be performed as follows:
and determining the position of the mouse pointer in real time in the process of dragging the address segment by the mouse.
When it is determined that the mouse pointer position is within the tab bar, a pre-creation of a new tab page state is triggered. In one implementation, as shown in FIG. 6, a tab selected by the mouse pointer within the tab bar may be determined based on the mouse pointer position, and a rectangular color block of a predetermined width and a predetermined color may be drawn on the left side of the selected tab (the "folder D" tab is shown in the figure) to indicate that the pre-creation of a new tab page state is triggered. Here, assuming that the width of the tag field is w, the width of the inserted rectangular patch may be w' =0.1×w (0.1 is a coefficient, which may be determined according to specific requirements). At this point, the total width of one or more labels currently located in the label column changes from w to w-w ', starting from 0 to w'.
When the release of the mouse button in the tab bar of the text tube window is detected, responding to the operation of releasing the mouse button in the tab bar, determining the tab selected by the mouse pointer in the tab bar according to the position of the mouse pointer, creating a new tab page corresponding to the dragged address bar based on the selected tab, and displaying the tab of the new tab page on one side of the selected tab. In addition, the address corresponding to the dragged address segment is used as a parameter to be transmitted into the new tab page, so that the new tab page can display one or more files corresponding to the address segment in the corresponding file view according to the parameter. As shown in fig. 7, the newly created tab page is the tab page corresponding to "folder B".
In one implementation, each tag in the address bar corresponds to an index, and each tag in the address bar increases in sequence from left to right in the order of the index. In addition, in a state where the pre-creation of a new tab page is not triggered, the width of each tab displayed in the address bar is the same, and the sum of the widths of all tabs is equal to the width of the tab bar. Thus, after a new tab page is created and a new tab is inserted in the address bar, the total number of tabs increases, and the width of each tab correspondingly decreases.
A new tab page is created based on the selected tab, in effect, an index corresponding to the tab selected by the mouse pointer in the tab bar is determined according to the position of the mouse pointer, the index corresponding to the selected tab is used as an index of the new tab, and the new tab page is created based on the index of the new tab. In this way, a new label is inserted into the left side of the selected label, and the new label occupies the index corresponding to the selected label, so that the index needs to be updated for each label on the right side of the selected label, that is, the index of each label on the right side of the new label.
According to the address bar-based interaction method, the new file management page corresponding to the dragged address segment can be created only through the dragging operation of the mouse on the address segment, one or more files under the file directory corresponding to the address segment are displayed in the file view of the new file management page, so that the new file management page can be created in one step through the dragging operation on the address bar, the operation steps are simplified, the efficiency of creating the new file management page is improved, the files under a plurality of directories are accessed simultaneously based on the newly created file management page, and the switching operation among a plurality of file directories can be conveniently carried out, so that the efficiency of switching the file directories is improved.
Further, according to the technical scheme of the invention, when the address bar is dragged by the mouse, the corresponding new text tube window or label page is created according to whether the position released by the mouse is released outside the window or released in the label bar in the window, so that two creation functions of creating the text tube window and creating the label page are integrated, and the operation modes are unified, thereby simplifying the operation flow of a user and reducing the operation cost.
The various techniques described herein may be implemented in connection with hardware or software or, alternatively, with a combination of both. Thus, the methods and apparatus of the present invention, or certain aspects or portions of the methods and apparatus of the present invention, may take the form of program code (i.e., instructions) embodied in tangible media, such as removable hard drives, U-drives, floppy diskettes, CD-ROMs, or any other machine-readable storage medium, wherein, when the program is loaded into and executed by a machine, such as a computer, the machine becomes an apparatus for practicing the invention.
In the case of program code execution on programmable computers, the computing device will generally include a processor, a storage medium readable by the processor (including volatile and non-volatile memory and/or storage elements), at least one input device, and at least one output device. Wherein the memory is configured to store program code; the processor is configured to execute the multi-lingual spam text recognition method of the present invention in accordance with instructions in said program code stored in the memory.
By way of example, and not limitation, readable media comprise readable storage media and communication media. The readable storage medium stores information such as computer readable instructions, data structures, program modules, or other data. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. Combinations of any of the above are also included within the scope of readable media.
In the description provided herein, algorithms and displays are not inherently related to any particular computer, virtual system, or other apparatus. Various general-purpose systems may also be used with examples of the invention. The required structure for a construction of such a system is apparent from the description above. In addition, the present invention is not directed to any particular programming language. It will be appreciated that the teachings of the present invention described herein may be implemented in a variety of programming languages, and the above description of specific languages is provided for disclosure of enablement and best mode of the present invention.
In the description provided herein, numerous specific details are set forth. However, it is understood that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description.
Similarly, it should be appreciated that in the foregoing description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the various inventive aspects. However, the disclosed method should not be construed as reflecting the intention that: i.e., the claimed invention requires more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the claims following the detailed description are hereby expressly incorporated into this detailed description, with each claim standing on its own as a separate embodiment of this invention.
Those skilled in the art will appreciate that the modules or units or components of the devices in the examples disclosed herein may be arranged in a device as described in this embodiment, or alternatively may be located in one or more devices different from the devices in this example. The modules in the foregoing examples may be combined into one module or may be further divided into a plurality of sub-modules.
Those skilled in the art will appreciate that the modules in the apparatus of the embodiments may be adaptively changed and disposed in one or more apparatuses different from the embodiments. The modules or units or components of the embodiments may be combined into one module or unit or component and, furthermore, they may be divided into a plurality of sub-modules or sub-units or sub-components. Any combination of all features disclosed in this specification (including any accompanying claims, abstract and drawings), and all of the processes or units of any method or apparatus so disclosed, may be used in combination, except insofar as at least some of such features and/or processes or units are mutually exclusive. Each feature disclosed in this specification (including any accompanying claims, abstract and drawings), may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise.
Furthermore, those skilled in the art will appreciate that while some embodiments described herein include some features but not others included in other embodiments, combinations of features of different embodiments are meant to be within the scope of the invention and form different embodiments. For example, in the following claims, any of the claimed embodiments can be used in any combination.
Furthermore, some of the embodiments are described herein as methods or combinations of method elements that may be implemented by a processor of a computer system or by other means of performing the functions. Thus, a processor with the necessary instructions for implementing the described method or method element forms a means for implementing the method or method element. Furthermore, the elements of the apparatus embodiments described herein are examples of the following apparatus: the apparatus is for carrying out the functions performed by the elements for carrying out the objects of the invention.
As used herein, unless otherwise specified the use of the ordinal terms "first," "second," "third," etc., to describe a general object merely denote different instances of like objects, and are not intended to imply that the objects so described must have a given order, either temporally, spatially, in ranking, or in any other manner.
While the invention has been described with respect to a limited number of embodiments, those skilled in the art, having benefit of the above description, will appreciate that other embodiments are contemplated within the scope of the invention as described herein. Furthermore, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes, and may not have been selected to delineate or circumscribe the inventive subject matter. Accordingly, many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the appended claims. The disclosure of the present invention is intended to be illustrative, but not limiting, of the scope of the invention, which is defined by the appended claims.