इनपुट को इनलाइन या बाहरी तौर पर रेंडर किया जा सकता है. इससे यह कंट्रोल होता है कि वैल्यू इनपुट के लिए कनेक्टर, ब्लॉक के अंदर (इनलाइन) या बाहरी किनारे (एक्सटर्नल) पर रेंडर किए जाएं या नहीं. साथ ही, यह भी कंट्रोल होता है कि इनपुट एक ही या अलग-अलग पंक्तियों में रेंडर किए जाएं या नहीं.
ब्लॉक की परिभाषा में, वैकल्पिक बूलियन दिया जा सकता है. इससे यह कंट्रोल किया जा सकता है कि इनपुट इनलाइन हैं या नहीं.
JSON
{
// ...,
"inputsInline": true
}
JavaScript
init: function() {
// ...
this.setInputsInline(true);
}
जब यह बूलियन true
(इनलाइन इनपुट) पर सेट होता है, तो:
- वैल्यू इनपुट के लिए कनेक्टर, ब्लॉक के अंदर रेंडर किए जाते हैं.
- स्टेटमेंट के इनपुट, अपनी लाइन में रेंडर किए जाते हैं.
- डमी, लाइन के आखिर में मौजूद, और वैल्यू इनपुट, सभी एक ही लाइन में रेंडर किए जाते हैं. हालांकि, स्टेटमेंट के बाद मौजूद कोई भी इनपुट या लाइन के आखिर में मौजूद इनपुट, नई लाइन में रेंडर किया जाता है.
false
(बाहरी इनपुट) पर सेट होने पर:
- वैल्यू इनपुट के लिए कनेक्टर, ब्लॉक के बाहरी किनारे पर रेंडर किए जाते हैं.
- सभी इनपुट अपनी लाइन में रेंडर किए जाते हैं. हालांकि, डमी इनपुट के बाद मौजूद लाइन के आखिर में मौजूद इनपुट, डमी इनपुट की लाइन में रेंडर किया जाता है.
अगर आपको इसे विज़ुअलाइज़ करने में समस्या आ रही है, तो Blockly डेवलपर टूल में ब्लॉक बनाएं और inputs
ड्रॉपडाउन (automatic
, external
, inline
) के लिए अलग-अलग सेटिंग चुनें.
अगर इस बूलियन की जानकारी नहीं दी गई है, तो Blockly कुछ अनुमान लगाने के लिए, कुछ हेयुरिस्टिक्स का इस्तेमाल करेगा कि कौनसा मोड सबसे अच्छा है. यह मानते हुए कि Blockly सही विकल्प चुनता है, इस फ़ील्ड को बिना तय किए छोड़ना बेहतर होता है. ऐसा इसलिए, क्योंकि अलग-अलग भाषाओं के अनुवाद अपने-आप अलग-अलग मोड में हो सकते हैं. इंटरपोलेशन टोकन के क्रम में, "set %1 to %2"
(बाहरी इनपुट) और
"put %2 in %1"
(इनलाइन इनपुट) का उदाहरण देखें.
जब किसी ब्लॉक में संख्याएं जैसे छोटे इनपुट होने की संभावना हो, तो इनलाइन इनपुट का इस्तेमाल करें. उपयोगकर्ता, संदर्भ मेन्यू की मदद से इस विकल्प को टॉगल कर सकता है.