मैं मेनू मेनू में 'दृश्यमान' अभिव्यक्ति का उपयोग कर संदर्भ मेनू में कमांड की दृश्यता कॉन्फ़िगर करने का प्रयास कर रहा हूं।दृश्यमान संदर्भ मेनू में दिखाई देने के लिए जब
- राइट-क्लिक करें (या पैकेज देखें) संसाधन ध्यान में रखते हुए कुछ फ़ाइल प्रकारों (संसाधन)
- राइट-क्लिक करें: मुझे क्या करना कोशिश कर रहा हूँ आदेश संदर्भ मेनू में दिखाई केवल यदि आप बनाना है उपयुक्त संपादक जिसमें फ़ाइल प्रकार खुला है। यह पता लगा सकता है कि मेरा संपादक खुला है या संपादक के पास एक निश्चित संसाधन खुला है।
मैं पहली बार उपयोग करते हुए 'visibleWhen'> 'चयन (साथ)' भी कार्य किया है> 'पुनरावृति'> 'org.eclipse.core.resources.IResource (अनुकूलन)' तो संसाधन के लिए फाइल एक्सटेंशन जाँच । कोड नीचे सूचीबद्ध है। हालांकि, मुझे यकीन नहीं है कि वही आदेश कैसे प्राप्त करें जब आप सही संपादक पर राइट-क्लिक करें जिसमें फ़ाइल को सही एक्सटेंशन के साथ खोलें - ext1, ext2।
जांच रहा है कि मेरा संपादक सक्रिय है या नहीं, लेकिन अगर मैं उन फ़ाइलों पर क्लिक करता हूं जो मेरे प्रकार नहीं हैं, तो यह अभी भी संदर्भ मेनू में कमांड दिखाएगा।
कोई सिफारिशें? "ग्रहण प्लग-इन (तृतीय संस्करण)" संपादक संदर्भ मेनू के लिए कुछ उदाहरण दिखाता है लेकिन यह क्रियाओं का उपयोग करता है और मैं आदेशों के साथ चिपकना चाहता हूं।
धन्यवाद !!
<menuContribution
allPopups="false"
locationURI="popup:org.eclipse.ui.popup.any?before=additions">
<separator
name="com.test.ide.separator1"
visible="true">
</separator>
<menu
icon="icons/sample.gif"
label="Test Menu">
<command
commandId="com.test.commands.testCommand1"
icon="icons/sample.gif"
label="testCommand1"
style="push"
tooltip="This is a test command">
<visibleWhen
checkEnabled="false">
<with
variable="selection">
<iterate
ifEmpty="false"
operator="or">
<adapt
type="org.eclipse.core.resources.IResource">
<or>
<test
property="org.eclipse.core.resources.extension"
value="ext1">
</test>
<test
property="org.eclipse.core.resources.extension"
value="ext2">
</test>
</or>
</adapt>
</iterate>
</with>
</visibleWhen>
</command>
</menu>
</menuContribution>
यह सही है, लेकिन मैं थोड़ा पुनर्गठन अनुकूलन का सुझाव दूंगा: –