KR20160066428A - Method for undoing multiple command - Google Patents

Method for undoing multiple command Download PDF

Info

Publication number
KR20160066428A
KR20160066428A KR1020140170792A KR20140170792A KR20160066428A KR 20160066428 A KR20160066428 A KR 20160066428A KR 1020140170792 A KR1020140170792 A KR 1020140170792A KR 20140170792 A KR20140170792 A KR 20140170792A KR 20160066428 A KR20160066428 A KR 20160066428A
Authority
KR
South Korea
Prior art keywords
command
edit
flag value
compound
instruction
Prior art date
Application number
KR1020140170792A
Other languages
Korean (ko)
Other versions
KR101683448B1 (en
Inventor
강모관
Original Assignee
주식회사 인프라웨어
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 인프라웨어 filed Critical 주식회사 인프라웨어
Priority to KR1020140170792A priority Critical patent/KR101683448B1/en
Publication of KR20160066428A publication Critical patent/KR20160066428A/en
Application granted granted Critical
Publication of KR101683448B1 publication Critical patent/KR101683448B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/106Enforcing content protection by specific content processing
    • G06F21/1062Editing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/169Annotation, e.g. comment data or footnotes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Document Processing Apparatus (AREA)

Abstract

The present invention relates to a method of cancelling the execution of a complex command and a device thereof. According to an embodiment, the method of canceling the execution of a complex command comprises the steps of: receiving a complex command including multiple editing commands; saving a flat value and command ID corresponding to each of the editing commands included in the complex command in a stack successively; receiving a command of cancelling the execution of the final editing command saved in the stack; and determining an editing command which is to be cancelled based on the flat value after the command of cancelling the execution is received and cancelling the execution of the editing command by using the command ID. Therefore, the preset invention is capable of providing an electronic document editing device where a separate cancelling command is not required by saving a command ID of cancelling the execution corresponding to each of the editing commands included in a complex command when the complex command is received.

Description

복합 명령에 대한 실행 취소 방법{METHOD FOR UNDOING MULTIPLE COMMAND}{METHOD FOR UNDOING MULTIPLE COMMAND}

본 발명은 복합 명령에 대한 실행 취소 방법에 관한 것으로서, 보다 상세하게는 전자 문서 편집기에서 복합 명령에 포함된 편집 명령 각각에 대응하는 플래그 값을 이용하여 복합 명령을 실행 취소하는 방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an undo method for a compound instruction, and more particularly, to a method for undoing a compound instruction using a flag value corresponding to each edit instruction included in a compound instruction in an electronic document editor.

전자 문서 편집기 (word processor) 는 문서의 작성, 편집, 저장 및 인쇄를 위해 사용되는 소프트웨어를 말한다. 전자 문서 편집기는 문서를 주고 받을 일이 많은 현대 업무 환경으로 인해 대부분의 컴퓨팅 디바이스에서 사용되고 있다. 또한, 모바일 단말의 발전에 따라, 전자 문서 편집기는 데스크탑 또는 노트북 뿐만 아니라 모바일 단말에서도 널리 사용되고 있다. 대표적인 전자 문서 편집기로 마이크로소프트사의 마이크로소프트 오피스 및 인프라웨어사®의 폴라리스 오피스® 등이 있다. 전자 문서 편집기에서는 사용자의 실수로 인한 오동작 및 자료 손상을 방지하기 위해 마지막으로 수행했던 명령이나 입력을 취소하는 실행 취소 기능이 필수적이다.A word processor is software used to create, edit, store and print documents. Electronic document editors are used in most computing devices due to the modern work environment where documents are often exchanged. Also, with the development of mobile terminals, electronic document editors are widely used in mobile terminals as well as desktops or laptops. Typical electronic text editors include Microsoft's Microsoft Office and Infraware's Polaris Office®. In the electronic text editor, it is necessary to undo the last command or input in order to prevent malfunction due to user's mistake and data damage.

도 1은 종래 기술에 따른 전자 문서 및 실행 취소 명령을 위한 실행 취소 스택 (stack) 의 예시적인 구성도이다. 종래의 전자 문서 편집기의 경우, 전자 문서 (110) 에 편집 명령을 실행할 때 실행 취소를 위한 명령어 아이디를 저장하는 실행 취소 스택 (120) 에 실행된 편집 명령에 대한 취소 명령어의 아이디를 저장한다. 도 1에 도시된 바와 같이, “Polaris Office”라는 텍스트가 입력되고, 텍스트의 스타일 변경 명령이 실행되고, 단락에 대한 오른쪽 정렬 명령이 실행된 경우, 실행 취소 스택 (120) 에는 텍스트 입력 명령의 취소 명령어 아이디 (121), 스타일 변경 명령의 취소 명령어 아이디 (122) 및 오른쪽 정렬 명령의 취소 명령어 아이디 (123) 가 순차적으로 저장된다. 스타일 변경 명령은 복수의 편집 명령을 포함하나, 스타일 변경 명령이 실행된 경우 하나의 취소 명령어 아이디 (122) 가 저장된다. 즉, 종래에는 스타일 변경 명령과 같이 복수의 편집 명령을 포함하는 복합 명령에 대한 실행 취소를 구현하기 위해 해당 복합 명령마다 별도로 실행 취소를 위한 취소 명령어를 구현해야 한다는 문제점이 있었다. 특히, 사용자의 편의를 위해서 수많은 복합 명령을 지원하는 전자 문서 편집기의 경우, 각각의 복합 명령에 대한 취소 명령어를 구현해야 한다는 문제점은 더욱 부각된다.1 is an exemplary configuration diagram of an undocumented stack for electronic documents and undo commands according to the prior art. In the case of the conventional electronic document editor, the ID of the cancel command for the edit command executed in the undo stack 120 storing the command ID for canceling the execution of the edit command is stored in the electronic document 110. As shown in FIG. 1, when the text "Polaris Office" is input, the style change command of the text is executed, and the right alignment command for the paragraph is executed, The instruction ID 121, the cancel instruction ID 122 of the style change instruction, and the cancel instruction ID 123 of the right alignment instruction are sequentially stored. The style change command includes a plurality of edit commands, but when the style change command is executed, one cancel command ID 122 is stored. That is, conventionally, there is a problem that a cancel instruction for execution cancellation must be separately implemented for each compound instruction in order to implement execution canceling of a compound instruction including a plurality of edit instructions, such as a style change instruction. In particular, in the case of an electronic document editor supporting a large number of complex commands for the convenience of the user, the problem that the cancel command for each compound command must be implemented is further highlighted.

따라서, 복합 명령에 대한 취소 명령어를 별도로 구현하지 않고, 복합 명령에 포함된 복수의 편집 명령 각각에 대응하는 취소 명령어를 이용함으로써 복합 명령의 개발을 위해 드는 시간과 노력을 감소시킬 수 있는 방법 및 장치의 개발이 요구된다.Therefore, there is a need for a method and apparatus that can reduce the time and effort required to develop a composite instruction by using a cancel instruction corresponding to each of a plurality of edit instructions included in the compound instruction, without separately implementing a cancel instruction for the compound instruction Is required.

본 발명이 해결하고자 하는 과제는 복합 명령이 수신된 경우 복합 명령에 포함된 복수의 편집 명령 각각에 대응하는 취소 명령어의 아이디를 저장함으로써, 복합 명령에 대한 별도의 취소 명령어의 구현을 요구하지 않는 복합 명령에 대한 실행 취소 방법을 제공하는 것이다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems, and an object of the present invention is to provide a composite command which does not require the implementation of a separate cancel command for a composite command by storing an ID of a cancel command corresponding to each of a plurality of edit commands included in the composite command, It provides an undo method for the command.

본 발명이 해결하고자 하는 다른 과제는 복수의 편집 명령 각각에 대응하는 플래그 값을 스택에 저장함으로써, 플래그 값을 이용하여 복합 명령에 포함된 복수의 편집 명령을 모두 취소할 수 있는 복합 명령에 대한 실행 취소 방법을 제공하는 것이다.It is another object of the present invention to provide a method and apparatus for storing a flag value corresponding to each of a plurality of editing commands on a stack to execute execution of a composite command capable of canceling all of a plurality of editing commands included in the compound command And to provide a method of cancellation.

본 발명의 과제들은 이상에서 언급한 과제들로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problems of the present invention are not limited to the above-mentioned problems, and other problems not mentioned can be clearly understood by those skilled in the art from the following description.

전술한 바와 같은 과제를 해결하기 위하여 본 발명의 일 실시예에 따른 복합 명령에 대한 실행 취소 방법은 복수의 편집 명령을 포함하는 복합 명령을 수신하는 단계, 복합 명령에 포함된 복수의 편집 명령 각각에 대응하는 명령어 아이디 및 플래그 값을 순차적으로 스택 (stack) 에 저장하는 단계, 스택에 저장된 최후의 편집 명령에 대한 실행 취소 명령을 수신하는 단계 및 실행 취소 명령이 수신된 후, 플래그 값에 기초하여 실행 취소할 편집 명령을 결정하고, 명령어 아이디를 이용하여 실행 취소할 편집 명령을 실행 취소하는 단계를 포함하는 것을 특징으로 한다.According to an embodiment of the present invention, there is provided an execution cancel method for a composite instruction, the method comprising: receiving a compound instruction including a plurality of edit instructions; Sequentially storing the corresponding command ID and flag value in a stack, receiving an undo command for the last edit command stored in the stack, and executing, based on the flag value, Determining an edit command to be canceled, and canceling an edit command to be canceled using the command ID.

본 발명의 다른 특징에 따르면, 복합 명령을 수신하는 단계는, 편집 명령을 수신하는 단계 및 편집 명령이 단일의 편집 명령인지 복합 명령인지 여부를 판단하는 단계를 포함하는 것을 특징으로 한다.According to another aspect of the present invention, the step of receiving the composite command includes receiving an edit command and determining whether the edit command is a single edit command or a composite command.

본 발명의 또 다른 특징에 따르면, 플래그 값은 바이너리 데이터 (binary data) 이고, 복수의 편집 명령 각각에 대응하는 플래그 값은 서로 동일하고, 단일의 편집 명령에 대응하는 플래그 값과 복합 명령에 대응하는 플래그 값은 서로 상이한 것을 특징으로 한다.According to still another aspect of the present invention, the flag value is binary data, the flag values corresponding to each of the plurality of edit commands are equal to each other, and the flag value corresponding to a single edit command and the flag value corresponding to the compound command And the flag values are different from each other.

본 발명의 또 다른 특징에 따르면, 실행 취소하는 단계는, 최후의 편집 명령에 대응하는 플래그 값이 복합 명령에 대응하는 플래그 값인 경우, 복합 명령에 대응하는 플래그 값을 갖는 연속하는 편집 명령들을 실행 취소하는 단계인 것을 특징으로 한다.According to still another aspect of the present invention, the step of canceling the execution is a step of, when the flag value corresponding to the last edit command is a flag value corresponding to the compound command, executing the continuous edit commands having the flag value corresponding to the compound command .

본 발명의 또 다른 특징에 따르면, 복합 명령은 스타일 변경 명령인 것을 특징으로 한다.According to still another aspect of the present invention, the compound instruction is a style change instruction.

전술한 바와 같은 과제를 해결하기 위하여 본 발명의 다른 실시예에 따른 복합 명령에 대한 실행 취소 방법을 수행하는 장치는 수신부, 저장부 및 실행부를 포함하고, 수신부는 복수의 편집 명령을 포함하는 복합 명령을 수신하고, 저장부는 복합 명령에 포함된 복수의 편집 명령 각각에 대응하는 명령어 아이디 및 플래그 값을 순차적으로 스택에 저장하고, 수신부는 스택에 저장된 최후의 편집 명령에 대한 실행 취소 명령을 수신하고, 실행부는 실행 취소 명령이 수신된 후, 플래그 값에 기초하여 실행 취소할 편집 명령을 결정하고, 명령어 아이디를 이용하여 실행 취소할 편집 명령을 실행 취소하는 것을 특징으로 한다.According to another aspect of the present invention, there is provided an apparatus for performing an execution cancellation method for a composite instruction, the apparatus including a receiver, a storage unit, and an execution unit, And the storage unit sequentially stores a command ID and a flag value corresponding to each of the plurality of edit commands included in the composite command in a stack, the receiver receives an undo command for the last edit command stored in the stack, The execution unit determines an edit command to be canceled based on the flag value after the cancel command is received and cancels the edit command to be canceled using the command ID.

본 발명의 또 다른 특징에 따르면, 수신부는, 편집 명령을 수신하고, 편집 명령이 단일의 편집 명령인지 복합 명령인지 여부를 판단하는 것을 특징으로 한다.According to another aspect of the present invention, the receiving unit receives the editing command and determines whether the editing command is a single editing command or a composite command.

본 발명의 또 다른 특징에 따르면, 플래그 값은 바이너리 데이터이고, 복수의 편집 명령 각각에 대응하는 플래그 값은 서로 동일하고, 단일의 편집 명령에 대응하는 플래그 값과 복합 명령에 대응하는 플래그 값은 서로 상이한 것을 특징으로 한다.According to another aspect of the present invention, a flag value is binary data, a flag value corresponding to each of a plurality of edit commands is equal to each other, and a flag value corresponding to a single edit command and a flag value corresponding to a complex command are mutually Respectively.

본 발명의 또 다른 특징에 따르면, 실행부는, 최후의 편집 명령에 대응하는 플래그 값이 복합 명령에 대응하는 플래그 값인 경우, 복합 명령에 대응하는 플래그 값을 갖고 최후의 편집 명령으로부터 연속하는 편집 명령들을 실행 취소하는 것을 특징으로 한다.According to still another aspect of the present invention, when the flag value corresponding to the last edit command is a flag value corresponding to the composite command, the execution unit has a flag value corresponding to the composite command, And cancels the execution.

본 발명의 다른 특징에 따르면, 복합 명령은 스타일 변경 명령인 것을 특징으로 한다.According to another aspect of the present invention, the compound instruction is a style change instruction.

전술한 바와 같은 과제를 해결하기 위하여 본 발명의 일 실시예에 따른 컴퓨터 판독 가능 매체는 복수의 편집 명령을 포함하는 복합 명령을 수신하고, 복합 명령에 포함된 복수의 편집 명령 각각에 대응하는 명령어 아이디 및 플래그 값을 순차적으로 스택에 저장하고, 스택에 저장된 최후의 편집 명령에 대한 실행 취소 명령을 수신하고, 실행 취소 명령이 수신된 후, 플래그 값에 기초하여 실행 취소할 편집 명령을 결정하고, 명령어 아이디를 이용하여 실행 취소할 편집 명령을 실행 취소하는 명령어들의 세트를 포함하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a computer-readable medium for receiving a compound command including a plurality of edit commands, And the flag value sequentially in the stack, receives an undo command for the last edit command stored in the stack, determines an edit command to be undone based on the flag value after the undo command is received, And a set of commands for canceling an edit command to be canceled using an ID.

기타 실시예의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.The details of other embodiments are included in the detailed description and drawings.

본 발명은 복합 명령이 수신된 경우 복합 명령에 포함된 복수의 편집 명령 각각에 대응하는 취소 명령어의 아이디를 저장함으로써, 복합 명령에 대한 별도의 취소 명령어의 구현을 요구하지 않는 전자 문서 편집기를 제공할 수 있는 효과가 있다.The present invention provides an electronic document editor that does not require the implementation of a separate cancel instruction for the compound instruction by storing the ID of the cancel instruction corresponding to each of the plurality of edit instructions included in the compound instruction when the compound instruction is received There is an effect that can be.

본 발명은 복수의 편집 명령 각각에 동일한 플래그 값을 대응 시켜 스택에 저장함으로써, 저장된 플래그 값을 이용하여 복합 명령에 포함된 복수의 편집 명령을 모두 실행 취소할 수 있는 효과가 있다.The present invention has an effect that all of a plurality of edit commands can be canceled by using the stored flag value by storing the same flag value in each stack in correspondence with each of the plurality of edit commands.

본 발명에 따른 효과는 이상에서 예시된 내용에 의해 제한되지 않으며, 더욱 다양한 효과들이 본 명세서 내에 포함되어 있다.The effects according to the present invention are not limited by the contents exemplified above, and more various effects are included in the specification.

도 1은 종래 기술에 따른 전자 문서 및 실행 취소 명령을 위한 실행 취소 스택 (stack) 의 예시적인 구성도이다.
도 2는 본 발명의 일 실시예에 따른 복합 명령에 대한 실행 취소 방법을 수행하는 전자 문서 편집기의 개략적인 구성도이다.
도 3은 본 발명의 일 실시예에 따른 복합 명령에 대한 실행 취소 방법을 설명하기 위한 순서도이다.
도 4a 내지 도 4c는 본 발명의 일 실시예에 따른 복합 명령에 대한 실행 취소 방법에 따라 구현된 예시적인 실시예를 도시한 것이다.
1 is an exemplary configuration diagram of an undocumented stack for electronic documents and undo commands according to the prior art.
2 is a schematic block diagram of an electronic document editor for performing an undo method for a composite instruction according to an embodiment of the present invention.
FIG. 3 is a flow chart for explaining an execution cancellation method for a composite instruction according to an embodiment of the present invention.
4A to 4C illustrate an exemplary embodiment implemented according to an undo method for a composite instruction according to an embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as being 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 invention to those skilled in the art. Is provided to fully convey the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims.

비록 제1, 제2 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.Although the first, second, etc. are used to describe various components, it goes without saying that these components are not limited by these terms. These terms are used only to distinguish one component from another. Therefore, it goes without saying that the first component mentioned below may be the second component within the technical scope of the present invention.

명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Like reference numerals refer to like elements throughout the specification.

본 발명의 여러 실시예들의 각각 특징들이 부분적으로 또는 전체적으로 서로 결합 또는 조합 가능하며, 당업자가 충분히 이해할 수 있듯이 기술적으로 다양한 연동 및 구동이 가능하며, 각 실시예들이 서로에 대하여 독립적으로 실시 가능할 수도 있고 연관 관계로 함께 실시 가능할 수도 있다.It is to be understood that each of the features of the various embodiments of the present invention may be combined or combined with each other partially or entirely and technically various interlocking and driving is possible as will be appreciated by those skilled in the art, It may be possible to cooperate with each other in association.

이하, 첨부된 도면을 참조하여 본 발명의 다양한 실시예들을 상세히 설명한다.Various embodiments of the present invention will now be described in detail with reference to the accompanying drawings.

도 2는 본 발명의 일 실시예에 따른 복합 명령에 대한 실행 취소 방법을 수행하는 전자 문서 편집기의 개략적인 구성도이다. 도 2를 참조하면, 본 발명의 일 실시예에 따른 복합 명령에 대한 실행 취소 방법을 수행하는 전자 문서 편집기 (200) 는 수신부 (210), 저장부 (220) 및 실행부 (230) 를 포함한다.2 is a schematic block diagram of an electronic document editor for performing an undo method for a composite instruction according to an embodiment of the present invention. 2, an electronic document editor 200 for performing an execution cancellation method of a composite instruction according to an embodiment of the present invention includes a receiving unit 210, a storage unit 220, and an execution unit 230 .

수신부 (210) 는 복수의 편집 명령을 포함하는 복합 명령을 수신한다. 수신부 (210) 는 사용자로부터, 예를 들어, 스타일 변경 명령과 같이 폰트 크기 변경, 폰트 타입 변경 및 단락 정렬 방향 변경 등과 같은 편집 명령들을 포함하는 복합 명령을 수신할 수 있다. 수신부 (210) 는 명령어를 수신할 수 있는 프로세서일 수도 있고, 사용자로부터 터치 입력을 통해 명령을 수신할 수 있는 터치 스크린 디스플레이일 수도 있고, 터치 스크린 디스플레이에 표시된 사용자 인터페이스일 수도 있다.The receiving unit 210 receives a composite command including a plurality of editing commands. Receiving unit 210 may receive a compound command from the user, including edit commands, such as font size change, font type change, and paragraph sort direction change, such as a style change command. The receiving unit 210 may be a processor capable of receiving an instruction, a touch screen display capable of receiving a command from a user through a touch input, or a user interface displayed on a touch screen display.

저장부 (220) 는 수신된 복합 명령에 포함된 복수의 편집 명령 각각에 대응하는 명령어 아이디 및 플래그 (flag) 값을 순차적으로 스택 (stack) 에 저장한다. 예를 들어, 저장부 (220) 는 수신부 (210) 에 의해 수신된 복합 명령에 3개의 편집 명령이 포함된 경우, 3개의 편집 명령을 각각 취소하기 위한 취소 명령어의 아이디 및 플래그 값을 각각 스택에 저장할 수 있다. 저장부 (220) 는 일시적으로 명령어 아이디 및 플래그 값을 저장할 수 있는 메모리 또는 스토리지일 수도 있다.The storage unit 220 sequentially stores a command ID and a flag value corresponding to each of a plurality of edit commands included in the received composite command in a stack. For example, when the composite instruction received by the reception unit 210 includes three edit instructions, the storage unit 220 stores the ID and flag values of the cancel instruction for canceling each of the three edit instructions, Can be stored. The storage unit 220 may be a memory or storage capable of temporarily storing a command ID and a flag value.

수신부 (210) 는 스택에 저장된 최후의 편집 명령에 대한 실행 취소 명령을 수신할 수 있다. 수신부 (210) 는 저장부 (220) 에 의해 스택에 편집 명령이 저장된 경우, 저장된 편집 명령 중 스택의 최상단에 저장된 편집 명령에 대한 실행 취소 명령을 수신할 수 있다.The receiving unit 210 may receive an undo command for the last editing command stored in the stack. The receiving unit 210 may receive an execution cancel command for an editing command stored at the top of the stack among the stored editing commands when an editing command is stored in the stack by the storage unit 220. [

실행부 (230) 는 수신부 (210) 에 의해 실행 취소 명령이 수신된 후, 저장부 (220) 를 통해 저장된 플래그 값에 기초하여 실행 취소할 편집 명령을 결정하고, 저장부 (220) 를 통해 저장된 명령어 아이디에 대응하는 취소 명령어를 실행하여 실행 취소할 편집 명령을 실행 취소한다. 실행부 (230) 는 취소 명령어를 실행할 수 있는 프로세서일 수 있다.The execution unit 230 determines an editing command to be canceled based on the flag value stored in the storage unit 220 after the execution cancel command is received by the receiving unit 210, Execute the cancel command corresponding to the command ID to cancel the edit command to be canceled. Execution unit 230 may be a processor capable of executing a cancel command.

도 2에서는 식별의 편의를 위해 복합 명령에 대한 실행 취소 방법을 수행하는 전자 문서 편집기 (200) 내에 수신부 (210), 저장부 (220) 및 실행부 (230) 가 개별적인 구성으로 도시되었으나, 각각의 부는 구현 방법 또는 본 발명의 실시예에 따라 하나의 통합적인 형태 또는 분리적 형태로 설계 구현되는 것도 가능하다.2, the receiving unit 210, the storage unit 220, and the execution unit 230 are shown as individual components in the electronic document editor 200 that performs the execution cancellation method for the complex command for the convenience of identification. However, It is also possible that the components are designed and implemented in one integrated or separate form in accordance with the implementation method or embodiments of the present invention.

도 3은 본 발명의 일 실시예에 따른 복합 명령에 대한 실행 취소 방법을 설명하기 위한 순서도이다. 설명의 편의를 위해 도 2를 참조하여 설명한다.FIG. 3 is a flow chart for explaining an execution cancellation method for a composite instruction according to an embodiment of the present invention. Will be described with reference to Fig. 2 for convenience of explanation.

본 발명의 일 실시예에 따른 복합 명령에 대한 실행 취소 방법은 수신부 (210) 가 복수의 편집 명령을 포함하는 복합 명령을 수신함으로써 개시된다 (S310). 수신부 (210) 는 사용자로부터 복합 명령을 수신할 수 있다. 복합 명령이란 폰트 크기 변경 명령, 폰트 타입 변경 명령, 폰트 색깔 변경 명령, 단락 정렬 방향 변경 명령 및 단락 들여쓰기 변경 명령 등과 같은 전자 문서 편집기에서 일반적으로 실행할 수 있는 편집 명령들 중 2 이상의 편집 명령이 포함된 명령이다. 복합 명령은, 예를 들어, 스타일 변경 명령일 수도 있다.The method for canceling a composite instruction according to an embodiment of the present invention starts when the receiving unit 210 receives a compound instruction including a plurality of edit instructions (S310). The receiving unit 210 may receive a composite command from a user. The complex command includes two or more edit commands that are generally executable in an electronic document editor, such as a font size change command, a font type change command, a font color change command, a paragraph sort direction change command, and a paragraph indent change command . The compound command may be, for example, a style change command.

본 발명의 일 실시예에 따르면, 수신부 (210) 는 편집 명령을 수신하고, 수신된 편집 명령이 단일의 편집 명령인지 복합 명령인지 여부를 판단할 수도 있다. 즉, 편집 명령을 수신하는 경우, 수신부 (210) 는 먼저 편집 명령을 수신한 후 수신된 편집 명령에 복수의 편집 명령이 포함되었는지 여부를 분석하여 수신된 편집 명령이 복합 명령인지 여부를 판단할 수도 있다.According to an embodiment of the present invention, the receiving unit 210 may receive an editing command and determine whether the received editing command is a single editing command or a complex command. That is, when receiving the editing command, the receiving unit 210 may analyze whether or not a plurality of editing commands are included in the received editing command after receiving the editing command, and determine whether the received editing command is a complex command have.

다음으로, 저장부 (220) 는 복합 명령에 포함된 복수의 편집 명령 각각에 대응하는 명령어 아이디 및 플래그 값을 순차적으로 스택 (stack) 에 저장한다 (S320). 저장부 (220) 는 수신부 (210) 에 의해 수신된 복합 명령에 대응하는 하나의 명령어 아이디 및 하나의 플래그 값을 저장하는 것이 아니라, 복합 명령에 포함된 복수의 편집 명령 각각에 대응하는 명령어 아이디 및 플래그 값을 스택에 저장한다. 예를 들어, 저장부 (220) 는 수신된 복합 명령에 3개의 편집 명령이 포함된 경우 3개의 편집 명령을 실행 취소하기 위한 취소 명령어의 아이디 및 플래그 값을 순차적으로 저장한다. 명령어 아이디란 특정 편집 명령을 실행 취소 하기 위한 취소 명령어를 식별 가능하게 하는 아이디를 의미한다. 예를 들어, 수신부 (220) 가 폰트 크기 변경 명령을 수신한 경우, 저장부 (220) 에 의해 스택에 저장되는 명령어 아이디는 폰트 크기 변경 명령에 대한 취소 명령어를 식별 가능하게 하는 아이디일 수 있다. 플래그 값이란 스택에 저장된 명령어 아이디 및 플래그 값에 대응하는 편집 명령이 복합 명령에 포함된 편집 명령인지 복합 명령에 포함되지 않는 단일의 편집 명령인지 구별할 수 있도록 표시하기 위한 데이터를 의미한다. 본 발명의 일 실시예에 따르면, 플래그 값은 2가지의 상태를 나타낼 수 있는 바이너리 데이터 (binary data) 일 수도 있다. 예를 들어, 플래그 값은 0 또는 1일 수도 있고, “true” 또는 “false” 일 수도 있다. 스택이란 후입선출 (last in first out) 방식의 데이터 구조로서, 스택에 명령어 아이디 및 플래그 값을 저장 함으로써 실행 취소 명령을 수신하는 경우 가장 최근에 실행된 편집 명령을 실행 취소할 수 있다.Next, the storage unit 220 sequentially stores a command ID and a flag value corresponding to each of the plurality of edit commands included in the compound command in a stack (S320). The storage unit 220 does not store one instruction ID and one flag value corresponding to the compound instruction received by the receiving unit 210 but stores a command ID corresponding to each of a plurality of edit instructions included in the compound instruction, Stores the flag value on the stack. For example, when three edit commands are included in the received composite command, the storage unit 220 sequentially stores the ID and the flag value of the cancel command for canceling the three edit commands. The command ID means an ID that enables identification of a cancel command for canceling a specific edit command. For example, when the receiving unit 220 receives the font size change command, the command ID stored in the stack by the storage unit 220 may be an ID enabling identification of the cancel command for the font size change command. The flag value means data for indicating that the edit command corresponding to the command ID and the flag value stored in the stack can be distinguished from an edit command included in the compound command or a single edit command not included in the compound command. According to an embodiment of the present invention, the flag value may be binary data indicating two states. For example, the flag value may be 0 or 1, or may be " true " or " false ". The stack is a data structure of a last in first out method. By storing the instruction ID and the flag value on the stack, the most recently executed edit command can be canceled when the cancel command is received.

본 발명의 일 실시예에 따르면, 복합 명령에 포함된 복수의 편집 명령 각각에 대응하는 플래그 값은 동일할 수 있다. 또한, 단일의 편집 명령에 대응하는 플래그 값과 복합 명령에 포함된 복수의 편집 명령 각각에 대응하는 플래그 값은 서로 상이할 수 있다. 예를 들어, 복합 명령에 포함된 복수의 편집 명령 각각에 대응하는 플래그 값은 “true” 값이고, 복합 명령에 포함되지 않는 단일의 편집 명령에 대응하는 플래그 값은 “false” 값일 수도 있다.According to an embodiment of the present invention, the flag values corresponding to each of the plurality of edit commands included in the compound instruction may be the same. The flag value corresponding to a single edit command and the flag value corresponding to each of a plurality of edit commands included in the compound command may be different from each other. For example, a flag value corresponding to each of a plurality of edit commands included in the compound command may be a " true " value, and a flag value corresponding to a single edit command not included in the compound command may be a " false "

상술한 바와 같이, 복합 명령에 포함된 복수의 편집 명령에 대응하는 플래그 값을 저장함으로써, 스택 내에서 복합 명령에 의해 실행된 복수의 편집 명령을 구별할 수 있다.As described above, by storing the flag values corresponding to the plurality of edit commands contained in the compound command, it is possible to distinguish a plurality of edit commands executed by the compound command in the stack.

다음으로, 수신부 (210) 는 스택에 저장된 최후의 편집 명령에 대한 실행 취소 명령을 수신한다 (S330). 수신부 (210) 는 저장부 (220) 에 의해 스택에 마지막으로 저장된 편집 명령에 대한 실행 취소 명령을 사용자로부터 수신한다. 실행 취소 명령이란 실행 취소할 편집 명령을 결정하고 실행 취소하는 동작을 트리거 (trigger) 하기 위한 명령을 의미한다. 전술한 바와 같이, 스택은 후입선출 방식의 자료 구조이므로, 수신부 (210) 에 의해 수신되는 실행 취소 명령은 스택에 마지막으로 저장된 편집 명령에 대한 실행 취소 명령일 수 있다.Next, the receiving unit 210 receives an execution cancel command for the last edit command stored in the stack (S330). The receiving unit 210 receives from the user an undo command for the editing command last stored in the stack by the storage unit 220. [ An undo command is a command for triggering an operation to determine and undo an edit command to be undone. As described above, since the stack is a data structure of a last-in-first-out method, an undo command received by the receiving unit 210 may be an undo command for an editing command last stored in the stack.

다음으로, 실행부 (230) 는 실행 취소 명령이 수신된 후, 플래그 값에 기초하여 실행 취소할 편집 명령을 결정하고, 명령어 아이디를 이용하여 실행 취소할 편집 명령을 실행 취소한다 (S340). 실행부 (230) 는 스택에 저장된 플래그 값을 읽고 수신부 (210) 에 의해 수신된 실행 취소 명령을 통해 실행 취소할 편집 명령을 결정할 수 있다. 실행부 (230) 는 스택에 저장된 명령어 아이디를 이용하여 실행 취소할 편집 명령에 대한 취소 명령어를 식별하고, 식별된 취소 명령어를 통해 편집 명령을 실행 취소할 수 있다. 취소 명령어란 직접적으로 편집 명령을 실행 취소하기 위한 명령어를 의미하는 것으로서, 취소 명령어는 실행 취소 명령과 구별되어야 한다. 스택에 저장된 플래그 값을 이용함으로써, 실행부 (230) 는 1회의 복합 명령에 의해 실행된 편집 명령을 식별하여 일시에 실행 취소할 수 있고, 스택에 저장된 명령어 아이디를 이용함으로써, 실행부 (230) 는 별도의 명령어 테이블 없이 실행 취소 명령을 실행할 수 있다.Next, after the execution cancel command is received, the execution unit 230 determines an edit command to be undone based on the flag value, and cancels the edit command to be undone using the command ID (S340). The execution unit 230 may read the flag value stored in the stack and determine an edit command to be canceled through the cancel command received by the receiver unit 210. [ The execution unit 230 can identify the cancel command for the edit command to be canceled using the command ID stored in the stack, and can cancel the edit command through the identified cancel command. A cancel command means a command for directly canceling an edit command, and a cancel command must be distinguished from an undo command. By using the flag value stored in the stack, the execution unit 230 identifies the editing command executed by one compound command and can cancel execution at a time. By using the command ID stored in the stack, Can execute the undo command without a separate command table.

본 발명의 일 실시예에 따르면, 실행부 (230) 는 최후의 편집 명령에 대응하는 플래그 값이 복합 명령에 대응하는 플래그 값인 경우, 복합 명령에 대응하는 플래그 값을 갖는 연속하는 편집 명령들을 실행 취소할 수도 있다. 예를 들어, 실행부 (230) 는 스택에 마지막으로 저장된 플래그 값이 복합 명령에 대응하는 플래그 값인 경우, 그 플래그 값과 동일한 플래그 값을 갖고 최후의 편집 명령과 연속하는 편집 명령들을 인식한 후, 그 연속하는 편집 명령들을 저장된 취소 명령어를 이용하여 일시에 실행 취소할 수도 있다. 다른 예를 들면, 실행부 (230) 는 스택에 마지막으로 저장된 플래그 값이 복합 명령에 대응하는 플래그 값인 경우, 최후의 편집 명령을 실행 취소하고, 그 다음으로 저장된 플래그 값이 복합 명령에 대응하는 플래그 값인 경우, 그 플래그 값에 대응하는 편집 명령을 실행 취소하는 것과 같이 순차적으로 편집 명령을 실행 취소할 수도 있다.According to an embodiment of the present invention, when the flag value corresponding to the last edit command is a flag value corresponding to the composite command, the execution unit 230 cancels the continuous edit commands having the flag value corresponding to the composite command You may. For example, if the flag value stored last in the stack is a flag value corresponding to the compound command, the execution unit 230 recognizes the last edit command and subsequent edit commands with the same flag value as the flag value, It is also possible to undo the consecutive edit commands at a time using the stored cancel command. For example, when the flag value stored last in the stack is a flag value corresponding to the compound instruction, the execution unit 230 cancels the last editing instruction, and the flag value stored next is used as a flag Value, the editing command corresponding to the flag value may be canceled sequentially, such as by canceling the editing command.

상술한 바와 같이, 복합 명령이 수신된 경우 복합 명령에 포함된 복수의 편집 명령 각각에 대응하는 취소 명령어의 아이디를 저장하고 복합 명령에 포함된 편집 명령을 구별 가능하게 하는 플래그 값을 저장함으로써, 복합 명령에 대한 별도의 취소 명령어를 구현하지 않고 복합 명령에 포함된 편집 명령을 1회의 실행 취소 명령을 통해 실행 취소할 수 있다는 본 발명의 유리한 효과가 획득된다.As described above, when the compound instruction is received, the ID of the cancel instruction corresponding to each of the plurality of edit instructions included in the compound instruction is stored, and by storing the flag value for distinguishing the edit instruction contained in the compound instruction, The advantageous effect of the present invention is obtained that the edit command contained in the compound command can be undone through a single undo command without implementing a separate cancel command for the command.

도 4a 내지 도 4c는 본 발명의 일 실시예에 따른 복합 명령에 대한 실행 취소 방법에 따라 구현된 예시적인 실시예를 도시한 것이다. 도 4a 내지 도 4c에서는 설명의 편의를 위해 실행 취소 스택 (420) 을 도시하였으나, 실행 취소 스택 (420) 은 자료 구조를 설명하기 위해 도시된 것이고 가시적으로 표시되는 구성이 아닐 수 있다. 설명의 편의를 위해 도 2를 참조하여 설명한다.4A to 4C illustrate an exemplary embodiment implemented according to an undo method for a composite instruction according to an embodiment of the present invention. Although the undo stack 420 is shown in FIGS. 4A to 4C for the sake of convenience, the undo stack 420 is shown to explain the data structure and may not be a visible structure. Will be described with reference to Fig. 2 for convenience of explanation.

도 4a를 참조하면, 수신부 (210) 는 “Polaris office”라는 텍스트의 입력 명령을 수신하고, 단락의 왼쪽 정렬 명령을 수신한다. 수신부 (210) 에 의해 편집 명령이 수신된 경우, 전자문서 (410) 상에 “Polaris office”라는 텍스트가 왼쪽 정렬되어 표시된다. 수신부 (210) 에 의해 수신된 편집 명령 각각에 대응하여 저장부 (220) 는 실행 취소 스택 (420) 에 “Polaris office”라는 텍스트의 입력 명령에 대한 취소 명령어 및 플래그 값을 포함하는 제1 데이터 (421) 를 저장하고, 단락의 왼쪽 정렬 명령에 대한 취소 명령어 및 플래그 값을 포함하는 제2 데이터 (422) 를 저장한다. 단일의 편집 명령에 대한 플래그 값이 “false” 값이고 복합 명령에 포함된 복수의 편집 명령에 대한 플래그 값이 “true” 값이 되도록 설정된 경우, 텍스트의 입력 명령 및 단락의 왼쪽 정렬 명령은 단일의 편집 명령이므로, 제1 데이터 (421) 및 제2 데이터 (422) 에 포함된 플래그 값은 “false” 값이다.Referring to FIG. 4A, the receiving unit 210 receives a text input instruction of " Polaris office ", and receives a left sorting instruction of a paragraph. When an editing command is received by the receiving unit 210, the text " Polaris office " is displayed on the electronic document 410 in a left-aligned manner. Corresponding to each edit command received by the receiving unit 210, the storage unit 220 stores in the undo stack 420 the first data (" Polaris office " 421), and stores the second data 422 including the cancel command and the flag value for the left-aligned command of the paragraph. If the flag value for a single edit command is a value of "false" and the flag value for multiple edit commands contained in the compound command is set to be a value of "true", the command for text input and left- The flag value included in the first data 421 and the second data 422 is a value of " false ".

도 4b를 참조하면, 수신부 (210) 는 폰트 타입, 폰트 크기, 폰트 모양 및 단락 정렬을 변경하는 편집 명령을 포함하는 복합 명령을 수신한다. 수신부 (210) 에 의해 복합 명령이 수신된 경우, 전자 문서 (410) 상에서 텍스트는 폰트 타입, 폰트 크기, 폰트 모양 및 단락 정렬이 변경되어 표시된다. 저장부 (220) 는 복합 명령에 포함된 각각의 편집 명령에 대한 취소 명령어 및 플래그 값을 실행 취소 스택 (420) 에 개별적으로 저장한다. 즉, 저장부 (220) 는 실행 취소 스택 (420) 에 폰트 타입의 변경 명령에 대한 취소 명령어 및 플래그 값을 포함하는 제3 데이터 (423), 폰트 크기의 변경 명령에 대한 취소 명령어 및 플래그 값을 포함하는 제4 데이터 (424), 폰트 모양의 변경 명령에 대한 취소 명령어 및 플래그 값을 포함하는 제5 데이터 (425) 및 단락 정렬의 변경 명령에 대한 취소 명령어 및 플래그 값을 포함하는 제6 데이터 (426) 를 저장한다. 복합 명령에 포함된 복수의 편집 명령에 대한 플래그 값이 “true” 값이 되도록 설정된 경우, 제3 데이터 (423), 제4 데이터 (424), 제5 데이터 (425) 및 제6 데이터 (426) 에 포함된 플래그 값은 “true” 값이다.Referring to FIG. 4B, the receiving unit 210 receives a composite command including an edit command for changing a font type, a font size, a font shape, and a paragraph alignment. When a compound command is received by the receiving unit 210, text is displayed on the electronic document 410 with the font type, font size, font shape, and paragraph alignment changed. The storage unit 220 individually stores the cancel instruction and flag value for each edit instruction included in the compound instruction in the undo stack 420. That is, the storage unit 220 stores in the undo stack 420 the third data 423 including the cancel command and the flag value for the font type change command, the cancel command for the font size change command, Fifth data 425 including a cancel command and a flag value for a font-shaped change command, and a sixth data 425 including a cancel command and a flag value for a change command of a paragraph alignment. 426). The third data 423, the fourth data 424, the fifth data 425, and the sixth data 426 when the flag value for a plurality of edit commands included in the compound command is set to be a value of " Is a " true " value.

도 4c를 참조하면, 수신부 (210) 를 통해 실행 취소 명령이 수신된 경우, 실행부 (230) 는 실행 취소 스택 (420) 에 최후로 저장된 제6 데이터 (426) 에 포함된 플래그 값이 “true” 값이므로 제6 데이터 (426) 및 제6 데이터 (426) 와 연속하고 “true” 값이 포함된 제5 데이터 (425), 제4 데이터 (424) 및 제3 데이터 (423) 에 포함된 취소 명령어를 이용하여 복합 명령에 포함된 복수의 편집 명령을 모두 실행 취소한다. 복합 명령에 포함된 복수의 편집 명령이 모두 실행 취소된 경우, 전자 문서 (410) 상에는 복합 명령이 실행되기 전과 같이 텍스트가 표시되고, 실행 취소 스택 (420) 에서는 실행 취소된 복수의 편집 명령에 대응하는 데이터인 제3 데이터 (423), 제4 데이터 (424), 제5 데이터 (425) 및 제6 데이터 (426) 가 삭제된다.4C, when an execution cancel command is received through the receiver 210, the execution unit 230 determines whether the flag value included in the sixth data 426 stored last in the undo stack 420 is " true "Quot; value included in the fifth data 425, the fourth data 424 and the third data 423, which are continuous with the sixth data 426 and the sixth data 426 and contain a " true & Use the command to undo all the editing commands contained in the compound command. When a plurality of editing commands included in the compound command are all canceled, text is displayed on the electronic document 410 as before the compound command is executed, and the undo stack 420 corresponds to a plurality of undo edited commands The third data 423, the fourth data 424, the fifth data 425, and the sixth data 426 are deleted.

본 명세서에서, 각 블록 또는 각 단계는 특정된 논리적 기능 (들) 을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또한, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In this specification, each block or each step may represent a part of a module, segment or code that includes one or more executable instructions for executing the specified logical function (s). It should also be noted that in some alternative embodiments, the functions mentioned in the blocks or steps may occur out of order. For example, two blocks or steps shown in succession may in fact be performed substantially concurrently, or the blocks or steps may sometimes be performed in reverse order according to the corresponding function.

본 명세서에 개시된 실시예들과 관련하여 설명된 방법 또는 알고리즘의 단계는 프로세서에 의해 실행되는 하드웨어, 소프트웨어 모듈 또는 그 2 개의 결합으로 직접 구현될 수도 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드 디스크, 착탈형 디스크, CD-ROM 또는 당업계에 알려진 임의의 다른 형태의 저장 매체에 상주할 수도 있다. 예시적인 저장 매체는 프로세서에 커플링되며, 그 프로세서는 저장 매체로부터 정보를 판독할 수 있고 저장 매체에 정보를 기입할 수 있다. 다른 방법으로, 저장 매체는 프로세서와 일체형일 수도 있다. 프로세서 및 저장 매체는 주문형 집적회로 (ASIC) 내에 상주할 수도 있다. ASIC는 사용자 단말기 내에 상주할 수도 있다. 다른 방법으로, 프로세서 및 저장 매체는 사용자 단말기 내에 개별 컴포넌트로서 상주할 수도 있다.The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. The software module may reside in a RAM memory, a flash memory, a ROM memory, an EPROM memory, an EEPROM memory, a register, a hard disk, a removable disk, a CD-ROM or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor, which is capable of reading information from, and writing information to, the storage medium. Alternatively, the storage medium may be integral with the processor. The processor and the storage medium may reside within an application specific integrated circuit (ASIC). The ASIC may reside within the user terminal. Alternatively, the processor and the storage medium may reside as discrete components in a user terminal.

이상 첨부된 도면을 참조하여 본 발명의 실시예들을 더욱 상세하게 설명하였으나, 본 발명은 반드시 이러한 실시예로 국한되는 것은 아니고, 본 발명의 기술사상을 벗어나지 않는 범위 내에서 다양하게 변형실시될 수 있다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.Although the embodiments of the present invention have been described in detail with reference to the accompanying drawings, it is to be understood that the present invention is not limited to those embodiments and various changes and modifications may be made without departing from the scope of the present invention. . Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. Therefore, it should be understood that the above-described embodiments are illustrative in all aspects and not restrictive. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.

110 전자 문서
120 실행 취소 스택
121 텍스트 입력 명령의 실행 취소 명령
122 스타일 변경 명령의 실행 취소 명령
123 오른쪽 정렬 명령의 실행 취소 명령
200 복합 명령에 대한 실행 취소 방법을 수행하는 전자 문서 편집기
210 수신부
220 저장부
230 실행부
410 전자 문서
420 실행 취소 스택
421 제1 데이터
422 제2 데이터
423 제3 데이터
424 제4 데이터
425 제5 데이터
426 제6 데이터
110 Electronic documents
120 Undo stack
121 Undo command for text entry commands
122 Undo command for changing a style command
123 Undo command for right alignment command
200 Electronic document editor that performs undo method for compound command
210 receiver
220 storage unit
230 execution unit
410 Electronic Documentation
420 Undo stack
421 first data
422 Second data
423 third data
424 fourth data
425 fifth data
426 sixth data

Claims (11)

복수의 편집 명령을 포함하는 복합 명령을 수신하는 단계;
상기 복합 명령에 포함된 상기 복수의 편집 명령 각각에 대응하는 명령어 아이디 및 플래그 값을 순차적으로 스택 (stack) 에 저장하는 단계;
상기 스택에 저장된 최후의 편집 명령에 대한 실행 취소 명령을 수신하는 단계; 및
상기 실행 취소 명령이 수신된 후, 상기 플래그 값에 기초하여 실행 취소할 편집 명령을 결정하고, 상기 명령어 아이디를 이용하여 상기 실행 취소할 편집 명령을 실행 취소하는 단계를 포함하는 것을 특징으로 하는, 복합 명령에 대한 실행 취소 방법.
Receiving a compound command including a plurality of edit commands;
Sequentially storing a command ID and a flag value corresponding to each of the plurality of edit commands included in the compound command in a stack;
Receiving an undo command for a last edit command stored in the stack; And
Determining an edit command to be canceled based on the flag value after the execution cancel command is received and canceling the edit command to be canceled using the command ID, How to undo a command.
제 1 항에 있어서,
상기 복합 명령을 수신하는 단계는,
편집 명령을 수신하는 단계; 및
상기 편집 명령이 단일의 편집 명령인지 상기 복합 명령인지 여부를 판단하는 단계를 포함하는 것을 특징으로 하는, 복합 명령에 대한 실행 취소 방법.
The method according to claim 1,
Wherein the receiving the composite instruction comprises:
Receiving an edit command; And
And determining whether the edit command is a single edit command or a composite command.
제 2 항에 있어서,
상기 플래그 값은 바이너리 데이터 (binary data) 이고,
상기 복수의 편집 명령 각각에 대응하는 플래그 값은 서로 동일하고,
상기 단일의 편집 명령에 대응하는 플래그 값과 상기 복합 명령에 대응하는 플래그 값은 서로 상이한 것을 특징으로 하는, 복합 명령에 대한 실행 취소 방법.
3. The method of claim 2,
Wherein the flag value is binary data,
The flag values corresponding to each of the plurality of edit commands are equal to each other,
Wherein the flag value corresponding to the single edit command and the flag value corresponding to the compound command are different from each other.
제 3 항에 있어서,
상기 실행 취소하는 단계는,
상기 최후의 편집 명령에 대응하는 플래그 값이 상기 복합 명령에 대응하는 플래그 값인 경우, 상기 복합 명령에 대응하는 플래그 값을 갖는 연속하는 편집 명령들을 실행 취소하는 단계인 것을 특징으로 하는, 복합 명령에 대한 실행 취소 방법.
The method of claim 3,
Wherein the step of canceling includes:
And if the flag value corresponding to the last edit command is a flag value corresponding to the compound command, canceling the continuous editing commands having the flag value corresponding to the compound command. How to undo.
제 1 항에 있어서,
상기 복합 명령은 스타일 변경 명령인 것을 특징으로 하는, 복합 명령에 대한 실행취소 방법.
The method according to claim 1,
Wherein the compound instruction is a style change instruction.
수신부;
저장부; 및
실행부를 포함하고,
상기 수신부는 복수의 편집 명령을 포함하는 복합 명령을 수신하고,
상기 저장부는 상기 복합 명령에 포함된 상기 복수의 편집 명령 각각에 대응하는 명령어 아이디 및 플래그 값을 순차적으로 스택에 저장하고,
상기 수신부는 상기 스택에 저장된 최후의 편집 명령에 대한 실행 취소 명령을 수신하고,
상기 실행부는 상기 실행 취소 명령이 수신된 후, 상기 플래그 값에 기초하여 실행 취소할 편집 명령을 결정하고, 상기 명령어 아이디를 이용하여 상기 실행 취소할 편집 명령을 실행 취소하는 것을 특징으로 하는, 복합 명령에 대한 실행 취소 방법을 수행하는 장치.
A receiving unit;
A storage unit; And
And an execution unit,
Wherein the receiving unit receives a composite command including a plurality of edit commands,
Wherein the storage unit sequentially stores a command ID and a flag value corresponding to each of the plurality of edit commands included in the compound command in a stack,
The receiving unit receives an execution cancel command for the last edit command stored in the stack,
Wherein the execution unit determines an edit command to be canceled based on the flag value after the execution cancel command is received and cancels the edit command to be canceled using the command ID, A device that performs an undo method on.
제 6 항에 있어서,
상기 수신부는,
편집 명령을 수신하고, 상기 편집 명령이 단일의 편집 명령인지 상기 복합 명령인지 여부를 판단하는 것을 특징으로 하는, 복합 명령에 대한 실행 취소 방법을 수행하는 장치.
The method according to claim 6,
The receiver may further comprise:
And receiving an edit command and determining whether the edit command is a single edit command or a composite command.
제 7 항에 있어서,
상기 플래그 값은 바이너리 데이터이고,
상기 복수의 편집 명령 각각에 대응하는 플래그 값은 서로 동일하고,
상기 단일의 편집 명령에 대응하는 플래그 값과 상기 복합 명령에 대응하는 플래그 값은 서로 상이한 것을 특징으로 하는, 복합 명령에 대한 실행 취소 방법을 수행하는 장치.
8. The method of claim 7,
Wherein the flag value is binary data,
The flag values corresponding to each of the plurality of edit commands are equal to each other,
Wherein the flag value corresponding to the single edit command and the flag value corresponding to the compound command are different from each other.
제 8 항에 있어서,
상기 실행부는,
상기 최후의 편집 명령에 대응하는 플래그 값이 상기 복합 명령에 대응하는 플래그 값인 경우, 상기 복합 명령에 대응하는 플래그 값을 갖고 상기 최후의 편집 명령으로부터 연속하는 편집 명령들을 실행 취소하는 것을 특징으로 하는, 복합 명령에 대한 실행 취소 방법을 수행하는 장치.
9. The method of claim 8,
The execution unit may include:
When the flag value corresponding to the last editing instruction is a flag value corresponding to the compound instruction, the flag value corresponding to the compound instruction is canceled and the editing instructions subsequent to the last editing instruction are canceled. A device that performs an undo method on a compound command.
제 6 항에 있어서,
상기 복합 명령은 스타일 변경 명령인 것을 특징으로 하는, 복합 명령에 대한 실행 취소 방법을 수행하는 장치.
The method according to claim 6,
Wherein the compound instruction is a style change instruction.
복수의 편집 명령을 포함하는 복합 명령을 수신하고,
상기 복합 명령에 포함된 상기 복수의 편집 명령 각각에 대응하는 명령어 아이디 및 플래그 값을 순차적으로 스택에 저장하고,
상기 스택에 저장된 최후의 편집 명령에 대한 실행 취소 명령을 수신하고,
상기 실행 취소 명령이 수신된 후, 상기 플래그 값에 기초하여 실행 취소할 편집 명령을 결정하고, 상기 명령어 아이디를 이용하여 상기 실행 취소할 편집 명령을 실행 취소하는 명령어들의 세트를 포함하는 것을 특징으로 하는, 컴퓨터 판독 가능 매체.
Receiving a compound command including a plurality of edit commands,
Sequentially storing a command ID and a flag value corresponding to each of the plurality of edit commands included in the compound command in a stack,
Receiving an undo command for a last edit command stored in the stack,
And a set of instructions for determining an edit command to be canceled based on the flag value after the cancel command is received and canceling the edit command to be canceled using the command ID , Computer readable medium.
KR1020140170792A 2014-12-02 2014-12-02 Method for undoing multiple command KR101683448B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140170792A KR101683448B1 (en) 2014-12-02 2014-12-02 Method for undoing multiple command

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140170792A KR101683448B1 (en) 2014-12-02 2014-12-02 Method for undoing multiple command

Publications (2)

Publication Number Publication Date
KR20160066428A true KR20160066428A (en) 2016-06-10
KR101683448B1 KR101683448B1 (en) 2016-12-07

Family

ID=56190742

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140170792A KR101683448B1 (en) 2014-12-02 2014-12-02 Method for undoing multiple command

Country Status (1)

Country Link
KR (1) KR101683448B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190031921A (en) * 2017-09-19 2019-03-27 주식회사 한글과컴퓨터 Apparatus for ensuring editing reliability in respect of web document and operation method thereof
KR20190031922A (en) * 2017-09-19 2019-03-27 주식회사 한글과컴퓨터 Apparatus for ensuring editing reliability in respect of web document according to whether to edit single or edit simultaneously and operation method thereof
WO2022030866A1 (en) * 2020-08-04 2022-02-10 삼성전자 주식회사 Data processing device and method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09505164A (en) * 1993-11-12 1997-05-20 オブジェクト テクノロジー ライセンシング コーポレイション Compound Document Framework
JP2001504610A (en) * 1996-11-14 2001-04-03 ルノー・アンド・オスピー・スピーチ・プロダクツ・ナームローゼ・ベンノートシャープ Apparatus and method for indirectly grouping the contents of operation history stacks into groups
JP2002532805A (en) * 1998-12-17 2002-10-02 マイクロソフト コーポレイション System and method for undoing multiple editing tasks
KR20120011332A (en) * 2009-04-29 2012-02-07 마이크로소프트 코포레이션 Maintaining undo and redo capability across metadata merges

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09505164A (en) * 1993-11-12 1997-05-20 オブジェクト テクノロジー ライセンシング コーポレイション Compound Document Framework
JP2001504610A (en) * 1996-11-14 2001-04-03 ルノー・アンド・オスピー・スピーチ・プロダクツ・ナームローゼ・ベンノートシャープ Apparatus and method for indirectly grouping the contents of operation history stacks into groups
JP2002532805A (en) * 1998-12-17 2002-10-02 マイクロソフト コーポレイション System and method for undoing multiple editing tasks
KR20120011332A (en) * 2009-04-29 2012-02-07 마이크로소프트 코포레이션 Maintaining undo and redo capability across metadata merges

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190031921A (en) * 2017-09-19 2019-03-27 주식회사 한글과컴퓨터 Apparatus for ensuring editing reliability in respect of web document and operation method thereof
KR20190031922A (en) * 2017-09-19 2019-03-27 주식회사 한글과컴퓨터 Apparatus for ensuring editing reliability in respect of web document according to whether to edit single or edit simultaneously and operation method thereof
WO2022030866A1 (en) * 2020-08-04 2022-02-10 삼성전자 주식회사 Data processing device and method

Also Published As

Publication number Publication date
KR101683448B1 (en) 2016-12-07

Similar Documents

Publication Publication Date Title
US9087030B2 (en) Handling excessive input characters in a field
CN104598020A (en) PRESERVING EMOTION OF USER INPUT and devie
US10268764B2 (en) Ladder program editing device capable of displaying network comment
KR101683448B1 (en) Method for undoing multiple command
JP4056477B2 (en) A system for displaying display data copied to the clipboard
US20150033210A1 (en) Method and system for debugging a change-set
CN111124479A (en) Configuration file analysis method and system and electronic equipment
US20150347097A1 (en) Adaptive user interfaces
CN104182479B (en) A kind of method and device handling information
US20100042917A1 (en) Document processsing method
US10254959B2 (en) Method of inputting a character into a text string using a sliding touch gesture, and electronic device therefor
US20140351745A1 (en) Content navigation having a selection function and visual indicator thereof
CN111597009A (en) Application program display method and device and terminal equipment
GB2614153A (en) DSB operation with excluded region
CN111142871B (en) Front-end page development system, method, equipment and medium
CN104580704A (en) Method and device for viewing details of short messages
US9015658B2 (en) Automatic program generation device and automatic program generation method
CA2929625A1 (en) Software development support apparatus, software development support method, and computer readable medium
US20140372878A1 (en) Text editing system and method
CN105094668A (en) Message processing method and electronic device
KR20150087982A (en) Method and appratus for processing image by thread
US20170083699A1 (en) Dynamic inline assistance messaging
US8826232B2 (en) Metamodeling contextual navigation of computer software applications
KR20150107495A (en) Method for editing data in word processor
CN106537331A (en) Instruction processing method and device

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant