cocoa - IBPlugin: Adding additional objects on drag from IB Library -


मेरे पास सूची दृश्य वर्ग है, जैसे एनएससीोलप्लेक्शन को एक अतिरिक्त प्रोटोटाइप आइटम की आवश्यकता है और एक प्रोटोटाइप देखें किसी भी उपयोग के लिए इंटरफ़ेस बिल्डर में लाइब्रेरी से एक NSCollectionView छोड़ते समय उन दो सहायक आइटम स्वचालित रूप से बनाए जाते हैं। हालांकि, मैं इस आधिकारिक एप्पल दस्तावेज़ को इस उपयोग के मामले से निपटने में नहीं बता सका (इसका वर्णन कैसे किया गया है)।

ऐप्पल देव मार्गदर्शिका के माध्यम से खोदने पर मुझे ":" मिल सकता है। कोड मैं अपनी सहायक वस्तुओं को पुस्तकालय से ड्रॉप पर प्राप्त करने में कामयाब रहा:

  - (शून्य) ibDidAddToDesignableDocument: (IBDocument *) दस्तावेज़ {[सुपर ibDidAddToDesignableDocument: document]; NSView * प्रोटोटाइपदृश्य = [[[NSView alloc] initWithFrame: NSMakeRect (0.0, 0.0, 300, 65.0)] autorelease]; DLListViewItem * प्रोटोटाइपव्यूआईटीम = [[[DLListViewItem alloc] initWithNibName: शून्य बंडल: शून्य] आटोरालेज़]; [दस्तावेज addObject: प्रोटोटाइप दृश्य आईटीपी के लिए माता-पिता: शून्य]; [दस्तावेज addObject: प्रोटोटाइप दृश्य से जनक: शून्य]; [दस्तावेज़ कनेक्टऑटलेट: @ सोर्सऑब्जेक्ट के "देखें": प्रोटोटाइप देखेंइस्टम टू डेस्टिनेशन ऑब्जेक्ट: प्रोटोटाइपदृश्य]; [दस्तावेज कनेक्टऑटलेट: @ "सूची देखें" स्रोत का ऑब्जेक्ट: प्रोटोटाइप देखेंइस्टम से डीस्टेशन ऑब्जेक्ट: स्व]; [दस्तावेज़ कनेक्टऑप्टलेट: @ "प्रोटोटाइप इटैम" का सोर्सऑब्जेक्ट: सेल्फ डेस्टेशन ऑब्जेक्ट: प्रोटोटाइपव्यूइटम]; }  

हालांकि ...

... आईबी ने उन ऑक्स मदों को जोड़ा है NSCollectionView के लिए केवल वास्तविक लाइब्रेरी से प्रारंभिक खींचें , "ibDidAddToDesignableDocument:" के किसी भी अन्य कॉल पर नहीं, जैसे कि जब आइटम को एम्बेड करना, प्रतिलिपि बनाना या डुप्लिकेट करना (जब मेरी विधि होगी, और सभी पर)

इससे मुझे आश्चर्य होता है कि क्या ऐप्पल वास्तव में इसका इस्तेमाल करता है "आईबीडीडएडटीओडीसीजनीय डॉक्यूमेंट:" और अगर मैं इसके साथ सही रास्ते पर हूं

एक यह कैसे ठीक तरह से अनुकरण करता है? मुझे "ibDidAddToDesignableDocument:" के लिए विभिन्न संदर्भों के बीच भेद करने का एक कठिन समय हो रहा है। किसी ने सफलतापूर्वक ऐसा किया?
दुर्भाग्य से Google, Google Code, GitHub, या दस्तावेज़ीकरण से कोई भी उपयोगी जानकारी प्रकट नहीं हुई है, इसलिए मुझे यहां सहायता की बेहद जरूरत है। अग्रिम धन्यवाद!

संपादित करें: ओह महान, यह प्रश्न सिर्फ मुझे तुम्मिलित बैज लाया, यरे! नहीं। मैं वास्तव में उपयोगी उत्तर में हूं, लेकिन धन्यवाद वैसे भी;)

मैं इस पर एक प्लगइन पर संघर्ष किया था जो मैंने खुद थोड़ी देर पहले किया था। मेरे मामले में मैं यह देखने के लिए ऑब्जेक्ट की एक संपत्ति की जांच कर पा रहा था कि क्या वह पहले ही आरंभीकृत हो चुका था और उस मामले में सहायक वस्तुओं को जोड़ने को छोड़ दिया गया था। मेरा मानना ​​है कि बीडब्लूटलकिट कुछ आंतरिक जांच का उपयोग करता है जो समान है। क्या आप अपने ऑब्जेक्ट की 'प्रोटोटाइप इटैम्' प्रॉपर्टी की जांच नहीं कर सकते हैं कि आपको अपने ऑक्स ऑब्जेक्ट्स को छोड़ने की आवश्यकता है?


Comments