org.eclipse.ui.editorActions

ÆíÁý±â¸¦ Ȱ¼ºÈ­ÇÑ °æ¿ì ÆíÁý±â¿¡¼­ ÀÚ½ÅÀÇ Á¶Ä¡¸¦ Workbench ¸Þ´º¿Í µµ±¸ ¸ðÀ½¿¡ Á¦°øÇÏ´Â ¹æ¹ýÀ» »ìÆìº¸¾Ò½À´Ï´Ù. org.eclipse.ui.editorActions È®ÀåÁ¡À» »ç¿ëÇÏ¸é ´Ù¸¥ Ç÷¯±×ÀÎÀÇ ÆíÁý±â°¡ Ȱ¼ºÈ­µÈ °æ¿ì Ç÷¯±×ÀÎÀ» Workbench ¸Þ´º¿Í µµ±¸ ¸ðÀ½¿¡ Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.

readme ¿¹Á¦¿¡¼­ Ç÷¯±×ÀÎÀº editorActions È®ÀåÁ¡À» »ç¿ëÇÏ¿© readme ÆíÁý±â¿¡¼­ Á¦°øÇÑ ¸Þ´º¿¡ Ãß°¡ Á¶Ä¡¸¦ Á¦°øÇÕ´Ï´Ù. Áö±Ý±îÁö´Â plugin.xmlÀÇ Á¤Àǰ¡ Àͼ÷ÇÒ °ÍÀÔ´Ï´Ù.

<extension
    point = "org.eclipse.ui.editorActions">
        <editorContribution 
            id="org.eclipse.ui.examples.readmetool.ec1" 
            targetID="org.eclipse.ui.examples.readmetool.ReadmeEditor"> 
                <action id="org.eclipse.ui.examples.readmetool.ea1" 
                    label="&amp;Readme Editor Extension"
                    toolbarPath="ReadmeEditor" 
                    icon="icons/basic/obj16/editor.gif" 
                    tooltip="Run Readme Editor Extension"
                    class="org.eclipse.ui.examples.readmetool.EditorActionDelegate" 
                    /> 
        </editorContribution>
</extension>

º¸±â Á¶Ä¡¿Í À¯»çÇÏ°Ô È®Àå¿¡¼­´Â ÀÚ½ÅÀÌ Á¶Ä¡¸¦ Á¦°øÇÏ´Â ÆíÁý±âÀÇ targetID¸¦ ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. Á¶Ä¡ ÀÚü´Â ÁöÁ¤ÇÑ Å¬·¡½º¿¡¼­ IEditorActionDelegate¸¦ ±¸ÇöÇØ¾ß ÇÏ´Â Á¡¸¸ Á¦¿ÜÇÏ¸é º¸±â Á¶Ä¡(id, label ¹× toolbarPath)¿Í ¸Å¿ì À¯»çÇÕ´Ï´Ù.  

¸Þ´º Ç¥½ÃÁÙÀ» ÀÌ ¸¶Å©¾÷¿¡¼­ ÁöÁ¤ÇÏÁö ¾Ê´Â´Ù´Â Á¡À» ¿°µÎÇØ µÓ´Ï´Ù. À̰ÍÀº ÆíÁý±â°¡ Ȱ¼ºÈ­µÈ °æ¿ì ÀÌ Á¶Ä¡°¡ Workbench ¸Þ´º Ç¥½ÃÁÙÀÌ ¾Æ´Ñ µµ±¸ ¸ðÀ½¿¡ Ç¥½ÃµÈ´Ù´Â ÀǹÌÀÔ´Ï´Ù. µµ±¸ ¸ðÀ½ ¹× ¸Þ´º °æ·Î¿¡ ´ëÇÑ ¼³¸íÀº ¸Þ´º ¹× ¸Þ´º Ç¥½ÃÁÙ °æ·Î¸¦ ÂüÁ¶ÇϽʽÿÀ.

ÆíÁý±â°¡ Ȱ¼ºÈ­µÈ °æ¿ì ÆíÁý±â ÀÚü¿¡¼­ Á¦°øÇÑ Á¶Ä¡ ¿·¿¡ ÀÖ´Â µµ±¸ ¸ðÀ½¿¡ ÆíÁý±â Á¶Ä¡°¡ Ç¥½ÃµË´Ï´Ù.

readme µµ±¸¿¡¼­´Â EditorActionDelegate¸¦ Á¦°øÇÏ¿© Á¶Ä¡¸¦ ±¸ÇöÇÕ´Ï´Ù.  À̰ÍÀº ÀÌÀü¿¡ º¸¾Ò´ø º¸±â Á¶Ä¡ ´ëÇ¥ÀÚ¿Í ¸Å¿ì À¯»çÇÕ´Ï´Ù.

public void run(IAction action) {
    MessageDialog.openInformation(editor.getSite().getShell(),
        "Readme Editor", 
        "Editor Action executed");
}