µ¿Àû ÄÁÅØ½ºÆ® µµ¿ò¸»

À§ÁöÆ®(widget)¿Í ÄÁÅØ½ºÆ® ID¸¦ Á¤ÀûÀ¸·Î ¿¬°ü½ÃŰ´Â °Í ¿Ü¿¡, º¸´Ù µ¿ÀûÀÎ ÄÁÅØ½ºÆ® µµ¿ò¸» ±â´ÉÀ» À§ÇØ ÀÌ Á¤º¸¸¦ µ¿ÀûÀ¸·Î Á¦°øÇÒ ¼ö ÀÖ½À´Ï´Ù. µµ¿ò¸» ½Ã½ºÅÛÀº ÄÁÅØ½ºÆ® ID¸¦ »ç¿ëÇÏ¿© ÀÏÄ¡ÇÏ´Â org.eclipse.help.IContext ¿ÀºêÁ§Æ®¸¦ ã½À´Ï´Ù. »õ µµ¿ò¸» º¸±â´Â Workbench ÆÄÆ®(º¸±â ¹× ÆíÁý±â) Ȱ¼ºÈ­¸¦ ÃßÀûÇϰí org.eclipse.help.IContextProvider ÀÎÅÍÆäÀ̽º¿¡ ÀûÇÕÇÑÁö ¿©ºÎ¸¦ È®ÀÎÇÕ´Ï´Ù. ÀûÇÕÇÑ °æ¿ì, º¸±â´Â ÄÁÅØ½ºÆ® Á¦°øÀÚ¸¦ »ç¿ëÇÏ¿© IContext ¿ÀºêÁ§Æ®¸¦ ã¾Æ Çʼö Á¤º¸¸¦ °¡Á®¿É´Ï´Ù. ½Ç½Ã°£À¸·Î ÀÌ ¿ÀºêÁ§Æ®¸¦ ij½ÃÇϰųª ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.

ÄÁÅØ½ºÆ® ¿ÀºêÁ§Æ®¸¦ µ¿ÀûÀ¸·Î ÀÛ¼ºÇÒ Workbench ÆÄÆ®´Â IContextProvider.class ¿ÀºêÁ§Æ®¿¡ Ű·Î Àû¿ëÇØ¾ß ÇÕ´Ï´Ù.

public Object getAdapter(Class key) {
	if (key.equals(IContextProvider.class)) {
		return new MyContextProvider();
	}
	return super.getAdapter(key);
}

ÄÁÅØ½ºÆ® Á¦°øÀÚ ÀÎÅÍÆäÀ̽º´Â ¼¼ °¡Áö ¸Þ¼Òµå¸¦ ±¸ÇöÇØ¾ß ÇÕ´Ï´Ù.

public class MyContextProvider implements IContextProvider {
	int getContextChangeMask() {
		return NONE;
	}
	IContext getContext(Object target) {
		return myContext;
	}
	String getSearchExpression(Object target) {
		return null;
	}
}

ÄÁÅØ½ºÆ® º¯°æ ¸¶½ºÅ©°¡ NONEÀ» ¸®ÅÏÇÏ´Â °æ¿ì, Workbench ÆÄÆ®°¡ Ȱ¼ºÈ­µÉ ¶§ ÄÁÅØ½ºÆ® ¿ÀºêÁ§Æ®¸¦ Á¦°øÇØ¾ß ÇÕ´Ï´Ù. SELECTIONÀÌ ¸®ÅϵǸé, ÆÄÆ®¿¡¼­ ÇöÀç ¼±ÅûçÇ×°ú °ü·ÃµÈ ÄÁÅØ½ºÆ® ¿ÀºêÁ§Æ®¸¦ Á¦°øÇØ¾ß ÇÕ´Ï´Ù. ÆÄÆ® ¼±Åà Á¦°øÀÚ°¡ ¼±ÅûçÇ× º¯°æ À̺¥Æ®¸¦ »¡°²°Ô Ç¥½ÃÇÒ ¶§¸¶´Ù ÄÁÅØ½ºÆ® Á¦°øÀÚ¿¡°Ô ÄÁÅØ½ºÆ® ¿ÀºêÁ§Æ®¸¦ Á¦°øÇϵµ·Ï ¿ä±¸ÇÕ´Ï´Ù.

¼±ÅÃÀûÀ¸·Î, µ¿Àû µµ¿ò¸»ÀÇ °Ë»ö Ç¥Çö½ÄÀ» Á¦°øÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ÆÄÆ® À̸§°ú Perspective À̸§À» Á¶ÇÕÇÏ¿© »ç¿ëÇÒ °æ¿ì ´ëºÎºÐÀÇ °æ¿ì ÁÁÀº °á°ú¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.

Âü°í: ÄÁÅØ½ºÆ® Á¦°øÀÚ¸¦ »ç¿ëÇÏ´Â °Í À̿ܿ¡µµ(¶Ç´Â ´ë½Å »ç¿ë) XML ¾î³ëÅ×À̼ÇÀ» ÄÁÅØ½ºÆ® µµ¿ò¸»ÀÇ ÇÊÅÍ ÁÖÁ¦¿¡¼­ »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù.