इवेंट का नेमस्पेस
क्लास
कक्षा | ब्यौरा |
---|---|
BlockBase | ब्लॉक से जुड़े किसी भी इवेंट के लिए एब्स्ट्रैक्ट क्लास. |
BlockChange | किसी ब्लॉक के किसी एलिमेंट (जैसे, फ़ील्ड की वैल्यू, टिप्पणियां वगैरह) में बदलाव होने पर, दर्शकों को सूचना भेजती है. |
BlockCreate | ब्लॉक (या ब्लॉक का कनेक्ट किया गया स्टैक) बनने पर, दर्शकों को सूचना देता है. |
BlockDelete | किसी ब्लॉक या ब्लॉक के कनेक्ट किए गए स्टैक को मिटाने पर, दर्शकों को सूचना दी जाती है. |
BlockDrag | जब किसी ब्लॉक को मैन्युअल तरीके से खींचकर/ड्रॉप करके रखा जाता है, तब दर्शकों को इसकी सूचना दी जाती है. |
BlockFieldIntermediateChange | जब किसी ब्लॉक के फ़ील्ड की वैल्यू बदल जाती है, लेकिन बदलाव पूरा नहीं होता है, तब यह इवेंट सुनने वालों को इसकी सूचना देता है. इसके बाद, ब्लॉक में बदलाव होने का इवेंट होता है. |
BlockMove | ब्लॉक को किसी दूसरे सेक्शन में ले जाने पर, दर्शकों को सूचना दी जाती है. यह एक कनेक्शन से दूसरे कनेक्शन पर या फ़ाइल फ़ोल्डर की एक जगह से दूसरी जगह पर हो सकता है. |
BubbleOpen | बबल ओपन इवेंट के लिए क्लास. |
सेटिंग | इससे दर्शकों को यह सूचना मिलती है कि ब्लॉकली के किसी एलिमेंट पर क्लिक किया गया है. |
CommentBase | टिप्पणी वाले इवेंट के लिए ऐब्स्ट्रैक्ट क्लास. |
CommentChange | यह सुनने वालों को सूचना देता है कि Workspace की किसी टिप्पणी का कॉन्टेंट बदल गया है. |
CommentCollapse | |
CommentCreate | दर्शकों को सूचना देता है कि वर्कस्पेस में कोई टिप्पणी की गई है. |
CommentDelete | दर्शकों को सूचना देती है कि वर्कस्पेस में की गई कोई टिप्पणी मिटा दी गई है. |
CommentDrag | जब किसी टिप्पणी को मैन्युअल तरीके से खींचकर/छोड़कर उसकी जगह बदली जाती है, तब दर्शकों को इसकी सूचना दी जाती है. |
CommentMove | दर्शकों को यह सूचना देता है कि वर्कस्पेस की किसी टिप्पणी को दूसरी जगह ले जाया गया है. |
CommentResize | दर्शकों को यह सूचना देता है कि वर्कस्पेस की किसी टिप्पणी का साइज़ बदला गया है. |
FinishedLoading | जब वर्कस्पेस, JSON/XML से डेसिरियलाइज़ हो जाता है, तब यह ऑडियंस को सूचना देता है. |
चुना गया | चुने गए इवेंट के लिए क्लास. यह सुनने वालों को सूचना देता है कि कोई नया एलिमेंट चुना गया है. |
ThemeChange | दर्शकों को सूचना देती है कि वर्कस्पेस की थीम बदल गई है. |
ToolboxItemSelect | यह सुनने वालों को बताता है कि टूलबॉक्स का कोई आइटम चुना गया है. |
TrashcanOpen | ट्रैश कैन के खुलने या बंद होने पर, दर्शकों को सूचना दी जाती है. |
UiBase | यूज़र इंटरफ़ेस (यूआई) इवेंट के लिए बुनियादी क्लास. यूज़र इंटरफ़ेस (यूआई) इवेंट ऐसे इवेंट होते हैं जिन्हें कई उपयोगकर्ताओं के साथ बदलाव करने की सुविधा के काम करने के लिए, वायर पर भेजने की ज़रूरत नहीं होती. जैसे, वर्कस्पेस को स्क्रोल करना, ज़ूम करना, टूलबॉक्स की कैटगरी खोलना. यूज़र इंटरफ़ेस (यूआई) इवेंट, पहले जैसा नहीं किए जा सकते या फिर से नहीं किए जा सकते. |
VarBase | वैरिएबल इवेंट के लिए ऐब्स्ट्रैक्ट क्लास. |
VarCreate | यह सुनने वालों को बताता है कि कोई वैरिएबल मॉडल बनाया गया है. |
VarDelete | यह सूचना देता है कि वैरिएबल मॉडल मिटा दिया गया है. |
VarRename | यह सुनने वालों को बताता है कि किसी वैरिएबल मॉडल का नाम बदल दिया गया है. |
VarTypeChange | यह ऑब्जेक्ट, किसी वैरिएबल के टाइप में हुए बदलाव के बारे में, ऑब्जर्वर को सूचना देता है. |
ViewportChange | यह सूचना देता है कि वर्कस्पेस के प्लैटफ़ॉर्म की पोज़िशन या स्केल बदल गया है. वर्कस्पेस का साइज़ अपने-आप बदलने पर सूचना नहीं मिलती. |
ऐब्स्ट्रैक्ट क्लास
एब्स्ट्रैक्ट क्लास | ब्यौरा |
---|---|
एब्स्ट्रैक्ट | किसी इवेंट के लिए ऐब्स्ट्रैक्ट क्लास. |
एनुमरेशन
इन्यूमरेशन | ब्यौरा |
---|---|
BubbleType | |
ClickTarget |
फ़ंक्शन
फ़ंक्शन | ब्यौरा |
---|---|
clearPendingUndo() | पहले से मौजूद, पहले किए गए बदलावों को पहले जैसा करने के लिए, उन इवेंट में बदलाव करें जो अभी तक ट्रिगर नहीं हुए हैं. ऐसा करने से, इवेंट ट्रिगर होने पर वे पहले किए गए बदलावों को पहले जैसा करने वाले स्टैक में नहीं जाएंगे. Workspace.clearUndo से कॉल किया जाता है. |
disable() | इवेंट भेजना बंद करें. इस फ़ंक्शन को हर बार कॉल करने पर, enable फ़ंक्शन को भी कॉल करना ज़रूरी है. |
disableOrphans(event) | यह सेट करें कि ब्लॉक बंद है या नहीं. यह इस बात पर निर्भर करता है कि ब्लॉक ठीक से कनेक्ट है या नहीं. इसका इस्तेमाल उन ऐप्लिकेशन में करें जहां सभी ब्लॉक को किसी टॉप ब्लॉक से कनेक्ट करना ज़रूरी हो. |
enable() | इवेंट भेजना शुरू करें. हालांकि, अगर इवेंट बंद करने का अनुरोध करने पर वे पहले से ही बंद थे, तो ऐसा नहीं होगा. |
filter(queue) | डुप्लीकेट इवेंट मर्ज करके, शून्य वैल्यू वाले इवेंट हटाकर, और BlockChange इवेंट को फिर से क्रम में लगाकर, सूची में मौजूद इवेंट फ़िल्टर करें. इस सुविधा का इतिहास: इस फ़ंक्शन को मूल रूप से cf257ea5 कमिट में जोड़ा गया था. इसका मकसद, डिस्पैच किए गए इवेंट की कुल संख्या को काफ़ी कम करना था. शुरुआत में, इसका असर सिर्फ़ BlockMove इवेंट पर पड़ा था. हालांकि, समय के साथ अन्य इवेंट भी जोड़े गए. कोड को 5578458 कमिट में जोड़े गए BlockChange इवेंट का क्रम बदलने के लिए जोड़ा गया था. ऐसा करने की वजहें साफ़ तौर पर नहीं बताई जा सकतीं. हालांकि, ऐसा हो सकता है कि ब्लॉक में बदलाव करने के दौरान इवेंट के क्रम से जुड़ी समस्याओं को ठीक करने के लिए, ऐसा किया गया हो. हालांकि, इस कोशिश में कुछ हद तक ही सफलता मिली. इस कोड को फ़ंक्शन के सबसे ऊपर, मर्ज करने और शून्य वैल्यू हटाने से पहले जोड़ा जाना चाहिए था. हालांकि, अब इसकी वजहें याद नहीं हैं. इस गड़बड़ी की पूरी जानकारी और गड़बड़ी को ठीक करने के लिए किए गए अधूरे/गलत तरीके की वजह से हुई कुछ गड़बड़ियों के बारे में जानने के लिए, गड़बड़ी की जांच से जुड़ी ये रिपोर्ट देखें: https://github.com/google/blockly/issues/8225#issuecomment-2195751783 https://github.com/google/blockly/issues/2037#issuecomment-2209696351 बाद में, PR #1205 में ओ(n^2) को लीनियर-टाइम से बदल दिया गया. हालांकि, इसके बाद कुछ और सुधार किए गए. अगस्त 2024 में, कई अहम बदलाव किए गए थे: इस फ़ंक्शन को पहले Workspace.prototype.undo से कॉल किया जाता था. हालांकि, इस फ़ंक्शन की वजह से इवेंट में बदलाव होने की वजह से समस्या #7026 हुई. ध्यान दें कि इवेंट, आगे के क्रम के मुकाबले पीछे के क्रम में अलग तरीके से जोड़े जाएंगे. इस समस्या को ठीक करने के लिए, पहले fireNow में कोड जोड़ा गया था (PR #7069 में), ताकि किसी भी ऐसे वर्कस्पेस के .undoStack_ और .redoStack_ को पोस्ट-फ़िल्टर किया जा सके जो हाल ही में इवेंट डिस्पैच करने में शामिल था. इससे समस्या ठीक हो गई, लेकिन इसमें काफ़ी जटिलताएं भी बढ़ गईं. साथ ही, यह समझना मुश्किल हो गया कि इवेंट को पहले जैसा करने/फिर से करने के लिए कैसे प्रोसेस किया जाता है. इसलिए, पहले जैसा करने के लिए किए गए कॉल और पोस्ट-प्रोसेसिंग कोड, दोनों को हटा दिया गया. साथ ही, forward=true को डिफ़ॉल्ट तौर पर सेट कर दिया गया, जबकि forward=false के साथ फ़ंक्शन को कॉल करने की सुविधा बंद कर दी गई. साथ ही, BlockChange इवेंट का क्रम बदलने वाले बग वाले कोड को, enqueueEvent नाम के नए फ़ंक्शन में उसी फ़ंक्शन के कम बग वाले वर्शन से बदल दिया गया. enqueueEvent को fireInternal से कॉल किया जाता है. इससे यह पक्का होता है कि फ़िल्टर के कॉल होने पर इवेंट सही क्रम में होंगे. इसके अलावा, इवेंट मर्ज करने वाले कोड में बदलाव किया गया है, ताकि सिर्फ़ आस-पास के इवेंट मर्ज किए जाएं. इससे, इवेंट को मर्ज करने की सुविधा को लागू करना आसान हो गया. साथ ही, यह भी पक्का किया जा सका कि इवेंट को मर्ज करने से, उनका क्रम न बदले. |
fire(event) | लिसनर बदलने के लिए, डिस्पैच किए जाने वाले इवेंट को सूची में जोड़ें. ध्यान दें: - इवेंट को टाइम आउट होने तक लाइन में लगाया जाता है. आम तौर पर, रेंडरिंग पूरी होने के बाद या मौजूदा माइक्रोटास्क के खत्म होने पर ऐसा किया जाता है. हालांकि, अगर इवेंट ब्राउज़र में नहीं चल रहे हैं, तो ऐसा नहीं किया जाता. - सूची में जोड़े गए इवेंट में, बाद में जोड़े गए इवेंट के साथ जोड़कर, नुकसान पहुंचाने वाले बदलाव किए जा सकते हैं. हालांकि, ऐसा सिर्फ़ तब तक किया जा सकता है, जब तक इवेंट ट्रिगर नहीं हो जाते. - जिन वर्कस्पेस पर असर पड़ा है उन पर, fireChangeListener तरीके से इवेंट भेजे जाते हैं. |
fromJson(json, workspace) | JSON को किसी इवेंट में डिकोड करें. |
get(eventType) | रजिस्ट्री से किसी खास इवेंट टाइप के लिए क्लास पाता है. |
getGroup() | मौजूदा ग्रुप. |
getRecordUndo() | यह बताता है कि इवेंट, पहले जैसा करने वाले स्टैक में जोड़े जाएंगे या नहीं. |
isEnabled() | यह बताता है कि इवेंट ट्रिगर किए जा सकते हैं या नहीं. |
setGroup(state) | ग्रुप शुरू या बंद करना. |
setRecordUndo(newValue) | इससे यह तय होता है कि इवेंट को पहले जैसा करने की सुविधा वाले स्टैक में जोड़ा जाए या नहीं. |
इंटरफ़ेस
वैरिएबल
वैरिएबल | ब्यौरा |
---|---|
BLOCK_CHANGE | |
BLOCK_CREATE | |
BLOCK_DELETE | |
BLOCK_DRAG | |
BLOCK_FIELD_INTERMEDIATE_CHANGE | |
BLOCK_MOVE | |
BUBBLE_OPEN | |
BUMP_EVENTS | उन इवेंट की सूची जिनकी वजह से ऑब्जेक्ट, फ़ाइल फ़ोल्डर के दिखने वाले हिस्से में वापस आ जाते हैं. इसे बंपिंग से अलग रखें, ताकि डिसकनेक्ट किए गए कनेक्शन कनेक्टेड न दिखें. |
बदलें | |
क्लिक करें | |
COMMENT_CHANGE | |
COMMENT_CREATE | |
COMMENT_DELETE | |
COMMENT_DRAG | |
COMMENT_MOVE | |
COMMENT_RESIZE | |
बनाएं | |
मिटाएं | |
FINISHED_LOADING | |
MOVE | |
चुने गए | |
THEME_CHANGE | |
TOOLBOX_ITEM_SELECT | |
TRASHCAN_OPEN | |
यूज़र इंटरफ़ेस (यूआई) | |
VAR_CREATE | |
VAR_DELETE | |
VAR_RENAME | |
VIEWPORT_CHANGE |
कई एलियस
टाइप का उपनाम | ब्यौरा |
---|---|
BumpEvent | इवेंट का टाइप, जिसकी वजह से ऑब्जेक्ट, वर्कस्पेस के दिखने वाले हिस्से में वापस आ जाते हैं. इसे बंपिंग से अलग रखें, ताकि डिसकनेक्ट किए गए कनेक्शन कनेक्टेड न दिखें. |