2009-05-26 8 views
6

का उपयोग करके आईडीई में फ़ाइल को संपादित किया जा रहा है, तो यह पता लगाने के लिए कि मैंने ओपन टूल्स एपीआई का उपयोग करके एक छोटा आईडीई प्लग-इन बनाया है जो साफ़केस एक्सेस करता है। इसमें मेनू आइटम "चेक इन", "चेक आउट" इत्यादि हैं। यह ठीक काम करता है, लेकिन अगर मैं आईडीई संपादक में टाइप करना शुरू करता हूं या मैं फ़ाइल को सहेजने का प्रयास करता हूं तो मैं इसे केवल पढ़ने-योग्य फ़ाइल को देखना चाहता हूं। क्या अपको लगता है ये हो सकता है?ओपन टूल्स एपीआई

मैंने कुछ चीजों की कोशिश की लेकिन अंततः छोड़ दिया। IOTAEditorServices.KeyboardServices में AddKeyboardBinding विधि है जो वादा करता है। इसका उपयोग करके मैंने बाइंडिंग प्रकार बीटीपार्टियल (और बाद में बीटी कॉम्प्लेटी की कोशिश की) के साथ एक नोटिफ़ायर जोड़ा और प्लग-इन ने कुछ शॉर्टकट कुंजी प्रेस का पता लगाना शुरू कर दिया लेकिन सभी कीबोर्ड ईवेंट नहीं, इससे दूर ... किसी भी विचार की बहुत सराहना की जाएगी!

+0

क्या आपने अपनी समस्या का समाधान किया? मुझे आपका कोड देखना अच्छा लगेगा। मैंने अभी एक समान प्रश्न पूछा है: http://stackoverflow.com/questions/6670621/how-to-hook-a-method-to-the-edit-event-in-delphi-7-ide – neves

+0

@neves: आप [टोंड्रेज] (http://stackoverflow.com/users/11480/tondrej) के [answser] (http://stackoverflow.com/a/909485/744588) पर बेहतर ध्यान केंद्रित करेंगे। संभवतः, 'user112365' अब ज़िंदा नहीं है और एसओ पर लात मार रहा है। – menjaraz

उत्तर

1

मुझे किसी भी तरह से संभव होना चाहिए: हम SourceConexion (http://www.epocalipse.com/scx.htm) का उपयोग यहां करते हैं, जो स्रोत को संपादित करने या फ़ॉर्म को बदलने से पहले फ़ाइल को ऑटो चेक-आउट करता है।

JVCS आईडीई एकीकरण समर्थन हासिल है, यह है खुला स्रोत, शायद वे यह भी लागू कर दिया है: http://jedivcs.sourceforge.net/

7

मुझे लगता है कि "स्वच्छ" जिस तरह से प्रत्येक संपादक को IOTAEditorNotifier ऊपर हुक और अपने IOTAEditor.Modified विधि कहा जाता है आईडीई द्वारा जब भी संपादक की सामग्री संशोधित की जाती है, चाहे कीबोर्ड, माउस या किसी अन्य प्लगइन से प्रोग्रामेटिक रूप से।

Here एक उदाहरण है जो आईडीई में खोले जा रहे फ़ाइलों की अधिसूचना के लिए IOTAIDENotifier पंजीकृत करता है ताकि यह IOTAEditorNotifier उदाहरण पंजीकृत कर सके।

+0

बहुत बहुत धन्यवाद। इस तरह लगता है काम करना चाहिए। मैं इसे आज़मा दूंगा और आपको बाद में बता दूंगा, सबसे अधिक संभावना शुक्रवार को। –

+0

@ user112365 क्या आपने कभी यह पता लगाया है? मैंने कोशिश की लेकिन समस्या यह है कि केवल पढ़ने के लिए फ़ाइलों को संशोधित नहीं किया जा सकता है। तो IOTAEditor.Modified कभी नहीं निकाल दिया जाता है। – santiagoIT

+0

@ सैंटियागोइट मुझे लगता है कि आप संपादन बफर से केवल-पढ़ने वाले ध्वज को हटा सकते हैं भले ही फ़ाइल स्वयं केवल पढ़ने योग्य हो। –

संबंधित मुद्दे