Ç÷¯±×ÀÎÀÌ ¸Þ´º È®ÀåÁ¡ Áß Çϳª¸¦ »ç¿ëÇÏ¿© Workbench UI¿¡ Á¶Ä¡¸¦ Á¦°øÇÒ °æ¿ì, ¸Þ´º¿¡¼ »ç¿ëÇÒ ¼ö Àְųª °¡½ÃÀûÀÎ ¸Þ´º Ç׸ñÀÇ Á¶°ÇÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. Ç÷¯±×ÀÎÀº ¼±ÅûçÇ× °è¼ö ¹× ¼±ÅûçÇ× Å¬·¡½º µîÀÇ °£´ÜÇÑ »ç¿ë °¡´É Á¶°ÇÀ» Á¦°øÇÒ ¼ö ÀÖÀ» »Ó ¾Æ´Ï¶ó ºÎ¿ï Ç¥Çö½ÄÀ» »ç¿ëÇÏ¿© Á¶Ä¡¸¦ »ç¿ë °¡´ÉÇÏ°Ô ÇÒ ¼ö ÀÖ½À´Ï´Ù.
ºÎ¿ï Ç¥Çö½Ä¿¡´Â °£´ÜÇÑ ºÎ¿ï ¿¬»êÀÚ(NOT, AND, OR) ¹× ´ÙÀ½ Á¶°ÇÀ» Æò°¡ÇÒ ¼ö ÀÖ´Â ¹Ì¸® Á¤ÀÇµÈ Ç¥Çö½ÄÀÌ Æ÷Ç﵃ ¼ö ÀÖ½À´Ï´Ù.
objectClass - ¼±ÅûçÇ×ÀÇ °¢ ¿ÀºêÁ§Æ®°¡ Ŭ·¡½º¸¦ ±¸ÇöÇϰųª ¼ºêŬ·¡½º·Î ºÐ·ùÇÏ´Â °æ¿ì trueÀÔ´Ï´Ù.
objectState - À̸§ ÁöÁ¤ ¼Ó¼ºÀÌ ÁöÁ¤µÈ °ª°ú °°À» °æ¿ì trueÀÔ´Ï´Ù. IActionFilter°¡ Ç¥Çö½ÄÀ» Æò°¡ÇÏ´Â µ¥ µµ¿òÀÌ µË´Ï´Ù. Á¶Ä¡ ÇÊÅÍ´Â ´ë»ó ¼±ÅûçÇ× ¹× À̸§ ÁöÁ¤ ¼Ó¼º °ªÀ» ±âÁØÀ¸·Î Á¶Ä¡ÀÇ È°¼ºÈ ±âÁØÀ» µ¿ÀûÀ¸·Î ¿¬»êÇÕ´Ï´Ù.
systemProperty - À̸§ ÁöÁ¤ ½Ã½ºÅÛ Æ¯¼ºÀÌ ÁöÁ¤µÈ °ª°ú °°À» °æ¿ì trueÀÔ´Ï´Ù.
pluginState - ÁöÁ¤µÈ Ç÷¯±×ÀÎ(ID¼ø)ÀÌ ¼³Ä¡µÇ°Å³ª Ȱ¼ºÈµÇ¾î¾ß ÇÏ´ÂÁö ¿©ºÎ¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
¿¹¸¦ µé¾î ´ÙÀ½ ½º´ÏÆêÀº Á¶Ä¡ ¼¼Æ®ÀÇ °¡»ó Á¶Ä¡¿¡ »ç¿ëµÉ ¼ö ÀÖ´Â »ç¿ë °¡´ÉÇÑ Ç¥Çö½ÄÀ» ³ªÅ¸³À´Ï´Ù.
<action id="org.eclipse.examples.actionEnablement.class" label="Red Element" menubarPath="additions" class="org.eclipse.examples.actionEnablement.ObjectTestAction"> <enablement> <and> <objectClass name="org.eclipse.examples.actionEnablement.TestElement"/> <objectState name="name" value="red"/> </and> </enablement> </action>
<action id="org.eclipse.examples.actionEnablement.property" label="Property" menubarPath="additions" class="org.eclipse.examples.actionEnablement.PropertyTestAction"> <enablement> <systemProperty name="MyTestProperty" value="puppy"/> </enablement> </action>
<action id="org.eclipse.examples.actionEnablement.pluginState" label="Installed" menubarPath="additions" class="org.eclipse.examples.actionEnablement.PluginTestAction"> <enablement> <pluginState id="x.y.z.anotherPlugin" value="installed"/> </enablement> </action>
ÀÌ Ç¥Çö½ÄÀÇ ÀÚ¼¼ÇÑ »ùÇà ¹× XML¿¡ ´ëÇÑ Àüü ¼³¸íÀº È®ÀåÁ¡ÀÇ ÂüÁ¶ ¹®¼¸¦ ÂüÁ¶ÇϽʽÿÀ.
´ÙÀ½ Å×ÀÌºí¿¡¼´Â Á¶Ä¡¸¦ Á¦°øÇÏ´Â È®ÀåÁ¡À» ³ª¿Çϰí XML ¸¶Å©¾÷ ¼Ó¼º ¹× ºÎ¿ï Ç¥Çö½ÄÀ» »ç¿ëÇÏ¿© »ç¿ë °¡´É¼º¿¡ ¿µÇâÀ» ÁÖ´Â ¹æ¹ýÀ» ¿ä¾àÇÕ´Ï´Ù.
È®ÀåÁ¡ À̸§ |
»ç¿ë °¡´É¼º¿¡ ¿µÇâÀ» ÁÖ´Â ¼Ó¼º |
ºÎ¿ï Ç¥Çö½Ä |
---|---|---|
enablesFor - Á¶Ä¡À» »ç¿ëÇϱâ À§ÇØ ÃæÁ·µÇ¾î¾ß ÇÏ´Â ¼±ÅûçÇ× °è¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù. selection class - ¼±ÅÃÇÑ ¿ÀºêÁ§Æ®°¡ Á¶Ä¡¸¦ »ç¿ë °¡´ÉÇϵµ·Ï ±¸ÇöÇϰųª ¼ºêŬ·¡½º·Î ºÐ·ùÇØ¾ß Çϴ Ŭ·¡½º selection name - ¼±ÅûçÇ×ÀÇ ¿ÀºêÁ§Æ®¿¡ Àû¿ëµÉ ¼ö ÀÖ´Â ¿ÍÀϵå Ä«µå ÇÊÅÍ |
visibility - ºÎ¿ï Ç¥Çö½Ä ¸Þ´º Ç׸ñÀÌ ¸Þ´º¿¡¼ º¸ÀÌ´ÂÁö ¿©ºÎ¸¦ Á¦¾îÇÕ´Ï´Ù. enablement - ºÎ¿ï Ç¥Çö½Ä ¸Þ´º Ç׸ñÀÌ ¸Þ´º¿¡¼ »ç¿ë °¡´ÉÇÑÁö ¿©ºÎ¸¦ Á¦¾îÇÕ´Ï´Ù. »ç¿ë °¡´É¼º Ç¥Çö½ÄÀ» Àû¿ëÇϱâ Àü¿¡ enablesFor ¼Ó¼º°ú selection class ¹× nameÀÌ ÃæÁ·µÇ¾î¾ß ÇÕ´Ï´Ù. |
|
(¿ÀºêÁ§Æ® Áö½Ã¹® Àü¿ë) objectClass - ¼±ÅûçÇ×ÀÇ ¿ÀºêÁ§Æ®°¡ ±¸ÇöÇϰųª ¼ºêŬ·¡½º·Î ºÐ·ùÇØ¾ß Çϴ Ŭ·¡½º¸¦ ÁöÁ¤ÇÕ´Ï´Ù. (¿ÀºêÁ§Æ® ¹× Ç¥½Ã±â Áö½Ã¹®) enablesFor - Á¶Ä¡À» »ç¿ëÇϱâ À§ÇØ ÃæÁ·µÇ¾î¾ß ÇÏ´Â ¼±ÅûçÇ× °è¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù. selection class - Á¶Ä¡¸¦ »ç¿ëÇϱâ À§ÇØ ¼±ÅÃµÈ ¿ÀºêÁ§Æ®°¡ ±¸ÇöÇϰųª ¼ºêŬ·¡½º·Î ºÐ·ùÇØ¾ß Çϴ Ŭ·¡½º selection name - ¼±ÅûçÇ×ÀÇ ¿ÀºêÁ§Æ®¿¡ Àû¿ëµÉ ¼ö ÀÖ´Â ¿ÍÀϵå Ä«µå ÇÊÅÍ
|
(¿ÀºêÁ§Æ® ¹× Ç¥½Ã±â Áö½Ã¹®) visibility - ºÎ¿ï Ç¥Çö½Ä ¸Þ´º Ç׸ñÀÌ ¸Þ´º¿¡¼ º¸ÀÌ´ÂÁö ¿©ºÎ¸¦ Á¦¾îÇÕ´Ï´Ù. enablement - ºÎ¿ï Ç¥Çö½Ä ¸Þ´º Ç׸ñÀÌ ¸Þ´º¿¡¼ »ç¿ë °¡´ÉÇÑÁö ¿©ºÎ¸¦ Á¦¾îÇÕ´Ï´Ù. »ç¿ë °¡´É¼º Ç¥Çö½ÄÀ» Àû¿ëÇϱâ Àü¿¡ enablesFor ¼Ó¼º°ú selection class ¹× nameÀÌ ÃæÁ·µÇ¾î¾ß ÇÕ´Ï´Ù. |
ÄÁÅÙÃ÷ À¯ÇüÀ» Á¤ÀÇÇÏ´Â ±â´É(ÄÁÅÙÃ÷ À¯Çü ÂüÁ¶)À» ºÎ¿ï Ç¥Çö½Ä°ú °áÇÕÇÏ¿© ÀÚ¿øÀÇ ÄÁÅÙÃ÷ À¯ÇüÀ» ±âÁØÀ¸·Î ƯÁ¤ Ȱ¼ºÀ̳ª °¡½Ã¼º Á¶°ÇÀ» Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ ½º´ÏÆêÀº ¼±ÅÃµÈ ÆÄÀÏÀÇ ÄÁÅÙÃ÷°¡ Ç÷¯±×ÀΠƯ¼ö ÄÁÅÙÃ÷ À¯Çü°ú ÀÏÄ¡ÇÏ´Â °æ¿ì¿¡¸¸ ÆË¾÷ ¸Þ´º Ç׸ñÀ» º¼ ¼ö ÀÖ°Ô ÇÕ´Ï´Ù.
<extension point="org.eclipse.ui.popupMenus">
<objectContribution
id="com.example.objectContributions"
objectClass="org.eclipse.core.resources.IFile"
nameFilter="*.xml">
<visibility>
<or>
<objectState
name="contentTypeId"
value="com.example.employeeRecordContentType"/>
<objectState
name="contentTypeId"
value="com.example.customerRecordContentType"/>
</or>
</visibility>
<action id="com.example.action1"
...
contentTypeId ¼Ó¼ºÀ» objectState Ç¥Çö½Ä¿¡¼ »ç¿ëÇÏ¿© ¼±ÅÃµÈ xml ÆÄÀÏÀÇ ÄÁÅÙÃ÷ À¯ÇüÀ» °Ë»çÇÒ ¼ö ÀÖ½À´Ï´Ù. À̷νá Ç÷¯±×ÀÎÀÌ Æ¯Á¤ ÆÄÀÏ À¯Çü°ú °ü·ÃµÈ ¸Þ´º Á¶Ä¡¸¦ »ç¿ë °¡´ÉÇÏ°Ô Çϰųª Ç¥½ÃÇϱâ Àü¿¡ ƯÁ¤ ÄÁÅÙÃ÷ °Ë»ç¸¦ Àû¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÄÁÅÙÃ÷ À¯Çü È®ÀåÀÚ¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº ÄÁÅÙÃ÷ À¯ÇüÀ» ÂüÁ¶ÇϽʽÿÀ.