मैं ग्रहण पैकेज एक्सप्लोरर के संदर्भ मेनू से किसी आइटम में उपमेनू प्रविष्टि जोड़ने का प्रयास कर रहा हूं।org.eclipse.ui.menus का उपयोग कर ग्रहण पैकेज एक्सप्लोरर संदर्भ मेनू आइटम में उपमेनू प्रविष्टि कैसे जोड़ें?
मेनू प्रविष्टि पहले से ही किसी अन्य प्लगइन में org.eclipse.ui.popupMenus के माध्यम से परिभाषित की गई है, जिस पर मैं काम कर रहा हूं। (वह प्लगइन मेरी प्लगइन की निर्भरता सूची में जोड़ा गया है)। इसके उपमेनू में भी आइटम जोड़े गए हैं, लेकिन org.eclipse.ui.popupMenus का उपयोग भी कर रहे हैं, और मैं org.eclipse.ui.menus के माध्यम से ऐसा करने की कोशिश कर रहा हूं।
के साथ शुरू करने के लिए, मैं निम्नलिखित किया:
- मैं org.eclipse.ui.commands और org.eclipse.ui.menus एक्सटेंशन जोड़।
- मैं एक आदेश में क्रमश: इस तरह एक menuContribution परिभाषित:
यह किसी भी संदर्भ मेनू में आइटम कहते हैं ... इसलिए मैं "org.eclipse.ui.popup को बदलने के लिए होता है .any? बाद = जोड़ों "submenu की आईडी के साथ locationurI से मैं अपने आइटम में दिखाना चाहता हूं।
मेरी समस्या है: सही स्थान कैसे निर्धारित करें? मैं मेनू जासूस (ALT + SHIFT + F2) का इस्तेमाल किया और सबमेनू मैं करने के लिए योगदान करना चाहते हैं का निरीक्षण किया, और मैं निम्नलिखित यूआरआइ प्राप्त किया:
मेनू: YYY के बाद = ZZZ, जहां:
YYY मेनू की आईडी है जिसे पहले से परिभाषित किया गया है और जिसके लिए मैं सबमेनू आइटम ज़ेडज़ेड जोड़ना चाहता हूं, सबमेनू से कार्रवाई की आईडी है, जिसे मैंने क्लिक किया है (जासूस का उपयोग करके)
मैंने निम्न कोशिश की, लेकिन उपमेनू आइटम प्रकट नहीं होता है:
- मेनू: YYY
- पॉपअप [के बाद = जोड़?] [? = परिवर्धन के बाद] YYY
कृपया मदद :)
क्या आपने पॉपअप की कोशिश की है: YYYY? बाद = ZZZ? – mhussein
हां, मैंने भी कोशिश की है, और इससे मदद नहीं मिली। लेकिन मैंने अभी इसे काम करने में कामयाब रहा है। मुझे एक नया मेनू योगदान और एक ही आईडी और लेबल वाला मेन्यू परिभाषित करना था जैसा मेनू पहले से परिभाषित किया गया है - YYY और YYY का लेबल, इस तरह: <मेनू कंट्रोल्यूशन locationURI = "popup: org.eclipse.ui.navigator.ProjectExplorer # PopupMenu = परिवर्धन के बाद "> <मेनू आईडी =" YYY " लेबल =" YYYs_label "> menuContribution> इस के साथ , और साथ locationURI की जगह:" पॉपअप: YYY = परिवर्धन के बाद " अब यह काम कर रहा है। मुझे नहीं पता कि यह करने का सही तरीका है, लेकिन यह काम करता है। – catalina
... और आपकी रुचि के लिए बहुत कुछ धन्यवाद और मेरी मदद करने की कोशिश करने के लिए :) – catalina