³»ºÎ ÆíÁý±âÀÇ °æ¿ì Workbench â°ú ÆíÁý±â ÆÄÆ® »çÀÌ¿¡¼ ¿Ïº®ÇÑ ÅëÇÕÀÌ ÀÌ·ç¾îÁú ¼ö ÀÖ½À´Ï´Ù. Àß¶ó³»±â, º¹»ç, ºÙ¿©³Ö±â µî°ú °°Àº ¿©·¯ °øÅë Á¶Ä¡¸¦ »ç¿ëÇÏ¿© Workbench ¸Þ´º¿Í µµ±¸ ¸ðÀ½À» ¹Ì¸® ·ÎµåÇÕ´Ï´Ù. Ȱ¼º ÆÄÆ®ÀÎ º¸±â ¶Ç´Â ÆíÁý±â¿¡¼ ÀÌ Á¶Ä¡¿¡ ´ëÇÑ ±¸ÇöÀ» Á¦°øÇÏ°Ô µË´Ï´Ù. ³»ºÎ ÆíÁý±â¿¡¼´Â Workbench â¿¡ ³ªÅ¸³ª´Â »õ Á¶Ä¡µµ Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ Á¶Ä¡´Â ÆíÁý±â°¡ Ȱ¼ºÈµÈ °æ¿ì¿¡¸¸ ³ªÅ¸³³´Ï´Ù.
Workbench¿Í ¿ÜºÎ ÆíÁý±â »çÀÌÀÇ ÅëÇÕ Á¤µµ´Â Á» ´ú ¾ö°ÝÇÕ´Ï´Ù. ÀÌ °æ¿ì Workbench¿¡¼ ÆíÁý±â¸¦ ½ÇÇàÇÒ ¼ö ÀÖÁö¸¸ ±× ÈÄ¿¡´Â ¿ÜºÎ ÆíÁý±âÀÇ »óŸ¦ È®ÀÎÇϰųª ÆÄÀÏ ½Ã½ºÅÛÀ» Á¦¿ÜÇÑ ´Ù¸¥ ¼ö´ÜÀ¸·Î °øµ¿ ÀÛ¾÷À» ÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀÌ ¾ø½À´Ï´Ù.
<!ELEMENT extension (editor*)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ELEMENT editor (contentTypeBinding*)>
<!ATTLIST editor
id CDATA #REQUIRED
name CDATA #REQUIRED
icon CDATA #IMPLIED
extensions CDATA #IMPLIED
class CDATA #IMPLIED
command CDATA #IMPLIED
launcher CDATA #IMPLIED
contributorClass CDATA #IMPLIED
default (true | false) "false"
filenames CDATA #IMPLIED
symbolicFontName CDATA #IMPLIED
matchingStrategy CDATA #IMPLIED>
ÀÌ ¼Ó¼ºÀº Áö±ÝÀº ÆÄÀÏ À̸§ ¹× È®Àå ¿¬°ü¿¡¸¸ Àû¿ëµÊÀ» Âü°íÇϽʽÿÀ. ÄÁÅÙÃ÷ À¯Çü ¹ÙÀεù¿¡´Â Àû¿ëµÇÁö ¾Ê½À´Ï´Ù. ÄÁÅÙÃ÷ À¯Çü ±â¹Ý ºÐ¼®Àº ¼±Âø¼øÀ¸·Î ¹ß»ýÇϸç, ¸í½ÃÀûÀ¸·Î ÁöÁ¤µÇÁö ¾Ê½À´Ï´Ù.
<!ELEMENT contentTypeBinding EMPTY>
<!ATTLIST contentTypeBinding
contentTypeId CDATA #REQUIRED>
Æ÷ÇÔÇÏ´Â ÆíÁý±â¿¡ ÁöÁ¤µÈ ÄÁÅÙÃ÷ À¯ÇüÀÌ Á¤ÀǵǾî ÀÖ°í ÇØ´ç À¯ÇüÀÇ ÆÄÀÏ ÆíÁý¿¡ ÀûÇÕÇÔÀ» Ç¥½ÃÇÕ´Ï´Ù.
<extension point=
"org.eclipse.ui.editors"
>
<editor id=
"com.xyz.XMLEditor"
name=
"Fancy XYZ XML editor"
icon=
"./icons/XMLEditor.gif"
extensions=
"xml"
class=
"com.xyz.XMLEditor"
contributorClass=
"com.xyz.XMLEditorContributor"
symbolicFontName=
"org.eclipse.jface.textfont"
default=
"false"
>
</editor>
</extension>
launcher ¼Ó¼ºÀ» »ç¿ëÇÒ °æ¿ì ÆíÁý±âµµ ¿ÜºÎ ÇÁ·Î±×·¥À¸·Î 󸮵˴ϴÙ. ÀÌ °æ¿ì ÁöÁ¤ÇÑ Å¬·¡½º¿¡¼ org.eclipse.ui.IEditorLauncher¸¦ ±¸ÇöÇØ¾ß ÇÕ´Ï´Ù. ½ÇÇà±â°¡ ÀνºÅϽºÈµÈ ´ÙÀ½ open(IFile file)À» È£ÃâÇÏ¿© ÆíÁý±â¸¦ ½ÇÇàÇÕ´Ï´Ù.
class ¼Ó¼ºÀ» »ç¿ëÇÒ °æ¿ì ³»ºÎ ÆíÁý±â·Î 󸮵Ǹç, ÁöÁ¤µÈ Ŭ·¡½º¿¡¼ org.eclipse.ui.IEditorPart¸¦ ±¸ÇöÇØ¾ß ÇÕ´Ï´Ù. »õ·Î¿î ÆíÁý±â À¯ÇüÀ» Á¤ÀÇÇÒ ¶§´Â ¼ºêŬ·¡½º org.eclipse.ui.EditorPart¸¦ ÀϹÝÀûÀ¸·Î »ç¿ëÇÕ´Ï´Ù. contributorClass ¼Ó¼ºµµ Á¤ÀÇÇØ¾ß ÇÕ´Ï´Ù. ÁöÁ¤µÈ Ŭ·¡½º´Â org.eclipse.ui.IEditorActionBarContributor¸¦ ±¸ÇöÇØ¾ß Çϸç, ÆíÁý±â À¯ÇüÀÇ ±â´ÉÀ» ¹Ý¿µÇÏ´Â Workbench ¸Þ´º ¹× µµ±¸ ¸ðÀ½¿¡ »õ Á¶Ä¡¸¦ Ãß°¡ÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù.
Workbench¿¡´Â ƯÁ¤ÇÑ À¯ÇüÀÇ ÆíÁý±â°¡ Çϳª ÀÌ»ó ¿·Á ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î Java ÆíÁý±â°¡ Çϳª ÀÌ»ó ¿·Á ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù. Á¶Ä¡¿Í Á¶Ä¡ À̹ÌÁö¸¦ Áߺ¹À¸·Î »ý¼ºÇÏÁö ¾Ê±â À§ÇØ ÆíÁý±â °³³äÀÌ µÑ·Î ºÐÇҵǾú½À´Ï´Ù. IEditorActionBarContributor´Â Á¶Ä¡ÀÇ »ý¼ºÀ» ´ã´çÇϰí, ÆíÁý±â´Â Á¶Ä¡ ±¸ÇöÀ» ´ã´çÇÕ´Ï´Ù. ¶ÇÇÑ, ¿·Á ÀÖ´Â ÆíÁý±âµéÀÌ ÀÌ Á¦°øÀÚ¸¦ °øÀ¯ÇÕ´Ï´Ù. ÀÌ·¯ÇÑ µðÀÚÀÎ ¶§¹®¿¡ Çϳª ÀÌ»óÀÇ ¿·Á ÀÖ´Â ÆíÁý±â¿¡ ´ëÇØ Á¶Ä¡ ÁýÇÕÀº Çϳª¸¸ ÀÖ½À´Ï´Ù.
Á¦°øÀÚ´Â ÆíÁý±â À¯ÇüÀ» ¹Ý¿µÇÏ´Â Workbench ¸Þ´º¿Í µµ±¸ ¸ðÀ½¿¡ »õ·Î¿î Á¶Ä¡¸¦ Ãß°¡ÇÕ´Ï´Ù. ÀÌ·¯ÇÑ Á¶Ä¡´Â °øÀ¯µÇ¸ç È£ÃâÇÒ °æ¿ì Ȱ¼ºÈµÈ ÆíÁý±â¿¡¼ ¼öÇàµË´Ï´Ù. Ȱ¼ºÈµÈ ÆíÁý±â´Â IEditorActionBarContributor.setActiveEditor¸¦ È£ÃâÇÏ¿© Á¦°øÀÚ·Î Àü´ÞµË´Ï´Ù. Workbench â¿¡ ÀÖ´Â ÁÖ ±×·ì°ú Á¶Ä¡ÀÇ ID´Â org.eclipse.ui.IWorkbenchActionConstants¿¡¼ Á¤Àǵ˴ϴÙ. ÁÖ ±×·ì°ú Á¶Ä¡ÀÇ ID´Â »õ·Î¿î Á¶Ä¡¸¦ Ãß°¡ÇÒ ¶§ ÂüÁ¶ ÁöÁ¡À¸·Î »ç¿ëµÇ¾î¾ß ÇÕ´Ï´Ù. path ¼Ó¼º¿¡ ´ëÇÑ ´ÙÀ½ °ªÀ» »ç¿ëÇÏ¿© »óÀ§ ·¹º§ ¸Þ´º¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
Copyright (c) 2002, 2005 IBM Corporation and others.
All rights reserved. º» ÇÁ·Î±×·¥ ¹× º» ÇÁ·Î±×·¥¿¡ µ¿ºÀµÇ´Â ÀÚ·á´Â º» ¹èÆ÷¹°¿¡ µ¿ºÀµÇ´Â Eclipse Public License v1.0ÀÇ Á¶Ç׿¡ µû¶ó »ç¿ëÇØ¾ß Çϸç
À¥ »çÀÌÆ®(http://www.eclipse.org/legal/epl-v10.html)¿¡¼µµ °ü·Ã »çÇ×À» ÂüÁ¶ÇÒ ¼ö ÀÖ½À´Ï´Ù.