LineCursor क्लास
लाइन कर्सर के लिए क्लास.
हस्ताक्षर:
export declare class LineCursor extends Marker
इन पर लागू होता है: मार्कर
निर्माता
निर्माता | मॉडिफ़ायर | ब्यौरा |
---|---|---|
(constructor)(workspace) | LineCursor क्लास का नया इंस्टेंस बनाता है |
प्रॉपर्टी
प्रॉपर्टी | मॉडिफ़ायर | टाइप | ब्यौरा |
---|---|---|---|
type | स्ट्रिंग | ||
फ़ाइल फ़ोल्डर |
|
WorkspaceSvg |
तरीके
तरीका | मॉडिफ़ायर | ब्यौरा |
---|---|---|
atEndOfLine() | यह फ़ंक्शन सिर्फ़ तब True दिखाता है, जब in() फ़ंक्शन को कॉल करने पर, जिस नोड पर नेविगेट किया जाता है वह वही हो जिस पर next() फ़ंक्शन को कॉल करने पर नेविगेट किया जाता है. इसका मतलब है कि LineCursor, प्रोग्राम की 'मौजूदा लाइन' के आखिर में हो. | |
getCurNode() | कर्सर की मौजूदा जगह की जानकारी पाएं. चुने गए ब्लॉक से मौजूदा नोड को अपडेट करने के लिए, सामान्य मार्कर getCurNode को बदल देता है. आम तौर पर, यह सिलेक्शन लिसनर के ज़रिए होता है. हालांकि, |
|
getFirstNode() | वर्कस्पेस पर मौजूद पहला ऐसा नोड पाएं जिस पर नेविगेट किया जा सकता है. अगर कोई नोड मौजूद नहीं है, तो null पाएं. | |
getLastNode() | फ़ाइल फ़ोल्डर में मौजूद, नेविगेट किया जा सकने वाला आखिरी नोड पाएं. अगर कोई नोड मौजूद नहीं है, तो null पाएं. | |
getNextNode(node, isValid, loop) | एएसटी में अगला नोड पाएं. इसके लिए, लूपबैक की अनुमति देना ज़रूरी नहीं है. | |
getPreviousNode(node, isValid, loop) | एएसटी में पिछला नोड पाएं. इसके लिए, लूपबैक की अनुमति देना ज़रूरी नहीं है. | |
in() | यह प्री-ऑर्डर ट्रैवर्सल में, कर्सर को अगले इनपुट कनेक्शन या फ़ील्ड पर ले जाता है. | |
next() | यह प्री-ऑर्डर ट्रैवर्सल में, कर्सर को अगले या पिछले कनेक्शन, अगले कनेक्शन या ब्लॉक पर ले जाता है. यह प्री-ऑर्डर ट्रैवर्सल में अगला नोड ढूंढता है. | |
out() | इस निर्देश से कर्सर को, प्री-ऑर्डर ट्रैवर्सल में पिछले इनपुट कनेक्शन या फ़ील्ड पर ले जाया जाता है. | |
postDelete() | ब्लॉक मिटाने के बाद, कर्सर को this.potentialNodes में पहली मान्य जगह पर ले जाएं. | |
preDelete(deletedBlock) | ब्लॉक को मिटाने के लिए, उन नोड की सूची बनाएं जिन पर कर्सर को बाद में ले जाया जा सकता है. इसके बाद, इस सूची को this.potentialNodes में सेव करें. डेटा मिटाने के बाद, उसे उस सूची के पहले मान्य नोड पर ले जाने के लिए, postDelete को कॉल करें. इन जगहों पर आज़माएं (प्राथमिकता के क्रम में): - मौजूदा जगह की जानकारी. - वह कनेक्शन जिससे मिटाया गया ब्लॉक जुड़ा है. - मिटाए गए ब्लॉक के अगले कनेक्शन से जुड़ा ब्लॉक. - मिटाए गए ब्लॉक का पैरंट ब्लॉक. - मिटाए गए ब्लॉक के नीचे, वर्कस्पेस पर कोई जगह. N.B.: ब्लॉक मिटाने पर, उस ब्लॉक के इनपुट से कनेक्ट किए गए सभी ब्लॉक भी मिट जाते हैं. हालांकि, इसके अगले कनेक्शन से कनेक्ट किए गए ब्लॉक नहीं मिटते. |
|
prev() | यह प्री-ऑर्डर ट्रैवर्सल में, कर्सर को पिछले अगले कनेक्शन या पिछले कनेक्शन पर ले जाता है. | |
setCurNode(newNode) | कर्सर की जगह सेट करें और उसे ड्रॉ करें. यह सामान्य मार्कर setCurNode लॉजिक को बदल देता है, ताकि सीधे this.drawer.draw() के बजाय this.drawMarker() को कॉल किया जा सके. |