ব্লকলি > ক্ষেত্র

ফিল্ড ক্লাস

একটি সম্পাদনাযোগ্য ক্ষেত্রের জন্য বিমূর্ত শ্রেণী।

স্বাক্ষর:

export declare abstract class Field<T = any> implements IASTNodeLocationSvg, IASTNodeLocationWithBlock, IKeyboardAccessible, IRegistrable, ISerializable 

প্রয়োগ: IASTNodeLocationSvg , IASTNodeLocationWithBlock , IKeyboard অ্যাক্সেসযোগ্য , নিবন্ধনযোগ্য , ISerializable

কনস্ট্রাক্টর

কনস্ট্রাক্টর সংশোধক বর্ণনা
(নির্মাণকারী)(মান, যাচাইকারী, কনফিগারেশন) Field ক্লাসের একটি নতুন উদাহরণ তৈরি করে

বৈশিষ্ট্য

সম্পত্তি সংশোধক টাইপ বর্ণনা
সীমান্তরেক্ট_ protected SVGRectElement | নাল রেন্ডার করা ক্ষেত্রের SVG সীমানা উপাদান।
ক্লিক টার্গেট_ protected উপাদান | নাল যে উপাদানটিতে ক্লিক হ্যান্ডলার আবদ্ধ।
ধ্রুবক_ protected ধ্রুবক প্রদানকারী | নাল উৎস ব্লকের রেন্ডারারের সাথে যুক্ত ধ্রুবক।
কার্সার স্ট্রিং হটস্পটের উপরে মাউস কার্সার শৈলী যা সম্পাদককে শুরু করে।
DEFAULT_VALUE টি | নাল

**ফিল্ড**-এ সেট করা ডিফল্ট মানটিকে ওভাররাইট করতে, সরাসরি প্রোটোটাইপ আপডেট করুন।

উদাহরণ: FieldImage.prototype.DEFAULT_VALUE = null;

সম্পাদনাযোগ্য বুলিয়ান সম্পাদনাযোগ্য ক্ষেত্রগুলি সাধারণত কিছু ধরণের UI দেখায় যা নির্দেশ করে যে সেগুলি সম্পাদনাযোগ্য৷ তারা সিরিয়ালাইজার দ্বারা সংরক্ষণ করা হবে.
সক্রিয়_ protected বুলিয়ান একটি সম্পাদনাযোগ্য ব্লকে সম্পাদক ব্যবহার করে ক্ষেত্রের মান পরিবর্তন করা যেতে পারে?
ফিল্ড গ্রুপ_ protected SVGGE উপাদান | নাল রেন্ডার করা ক্ষেত্রের SVG গ্রুপ উপাদান।
নোংরা_ protected বুলিয়ান এই ব্লক পুনরায় রেন্ডার করা প্রয়োজন?
সর্বোচ্চ প্রদর্শনের দৈর্ঘ্য সংখ্যা একটি উপবৃত্ত যোগ করার আগে প্রদর্শনের জন্য পাঠ্যের সর্বাধিক অক্ষর৷
নাম? স্ট্রিং (ঐচ্ছিক) ক্ষেত্রের নাম। প্রতিটি ব্লকের মধ্যে অনন্য। স্ট্যাটিক লেবেল সাধারণত নামহীন হয়.
এনবিএসপি

static

readonly

(ঘোষিত নয়) নন-ব্রেকিং স্পেস।
সিরিয়ালাইজেবল বুলিয়ান ক্রমিকযোগ্য ক্ষেত্রগুলি সিরিয়ালাইজার দ্বারা সংরক্ষণ করা হয়, অ-ক্রমিক ক্ষেত্রগুলি নয়। সম্পাদনাযোগ্য ক্ষেত্রগুলিও ক্রমিক হতে হবে। এটি ডিফল্টভাবে হয় না যাতে SERIALIZABLE পিছনের দিকে সামঞ্জস্যপূর্ণ হয়।
আকার_ protected আকার
SKIP_SETUP

static

readonly

অনন্য প্রতীক একটি ফিল্ডের কনস্ট্রাক্টর যখন ফিল্ডের মান *সেট* না করে বা কনফিগার চালায়_ তখন সংকেত দিতে ব্যবহৃত একটি মান, এবং এর পরিবর্তে একটি সাবক্লাসকে এটি করার অনুমতি দেওয়া উচিত।
উৎস ব্লক_ protected ব্লক | নাল ব্লক এই ক্ষেত্র সংযুক্ত করা হয়. শূন্য হিসাবে শুরু হয়, তারপর init এ সেট করুন।
পাঠ্য বিষয়বস্তু_ protected পাঠ্য | নাল রেন্ডার করা ক্ষেত্রের পাঠ্য বিষয়বস্তুর উপাদান।
পাঠ্য উপাদান_ protected SVGTextElement | নাল রেন্ডার করা ক্ষেত্রের SVG পাঠ্য উপাদান।
যাচাইকারী_ protected ফিল্ড ভ্যালিডেটর <T> | নাল যখন ব্যবহারকারী একটি সম্পাদনাযোগ্য ক্ষেত্র সম্পাদনা করে তখন বৈধকরণ ফাংশন বলা হয়।
মান_ protected টি | নাল
দৃশ্যমান_ protected বুলিয়ান ক্ষেত্রটি কি দৃশ্যমান, বা ব্লকটি ধসে পড়ার কারণে লুকানো আছে?

পদ্ধতি

পদ্ধতি সংশোধক বর্ণনা
রঙ প্রয়োগ করুন()

ব্লকের রঙ/স্টাইলের সাথে মেলে ফিল্ড আপডেট করে।

যদি ক্ষেত্রের রঙ ব্লকের রঙের উপর নির্ভর করে তবে অ-বিমূর্ত উপ-শ্রেণীগুলি এটি বাস্তবায়ন করতে ইচ্ছুক হতে পারে। এটি স্বয়ংক্রিয়ভাবে প্রাসঙ্গিক সময়ে কল করা হবে, যেমন যখন প্যারেন্ট ব্লক বা রেন্ডারার পরিবর্তন হয়।

আরও তথ্যের জন্য ফিল্ড ডকুমেন্টেশন দেখুন, বা উদাহরণের জন্য FieldDropdown দেখুন।

bindEvents_() protected ইভেন্টগুলিকে মাঠের সাথে আবদ্ধ করুন। কাস্টম ইনপুট হ্যান্ডলিং করার প্রয়োজন হলে সাবক্লাস দ্বারা ওভাররাইড করা যেতে পারে।
কনফিগার_(কনফিগার) protected ক্ষেত্রে পাস করা কনফিগারেশন মানচিত্র প্রক্রিয়া করুন।
CreateBorderRect_() protected একটি ফিল্ড বর্ডার রেক্ট এলিমেন্ট তৈরি করুন। সাবক্লাস দ্বারা ওভাররাইড করা যাবে না। পরিবর্তে initView-এর ভিতরে ফাংশনের ফলাফল পরিবর্তন করুন, অথবা কল করার জন্য একটি পৃথক ফাংশন তৈরি করুন।
CreateTextElement_() protected একটি ক্ষেত্র পাঠ্য উপাদান তৈরি করুন। সাবক্লাস দ্বারা ওভাররাইড করা যাবে না। পরিবর্তে initView-এর ভিতরে ফাংশনের ফলাফল পরিবর্তন করুন, অথবা কল করার জন্য একটি পৃথক ফাংশন তৈরি করুন।
doClassValidation_(নতুন মান) protected

একটি ক্ষেত্রের মান সেট করার আগে পরিবর্তনগুলি যাচাই করুন৷ সাবক্লাস বাস্তবায়নের উদাহরণের জন্য **ফিল্ডড্রপডাউন** দেখুন।

**দ্রষ্টব্য:** বৈধকরণ T , null এবং undefined এর মধ্যে একটি বিকল্প প্রদান করে। **ক্ষেত্র** এর বাস্তবায়ন কখনই undefined ফিরে আসবে না, তবে নতুন মানটি যদি T এর সাথে সামঞ্জস্যপূর্ণ হয় তবে একটি উপশ্রেণীর জন্য undefined ফেরত দেওয়া বৈধ।

doClassValidation_(নতুন মান) protected
doValueInvalid_(_invalidValue, _fireChangeEvent) protected একটি অবৈধ মান ইনপুট ছিল ক্ষেত্র বিজ্ঞপ্তি ব্যবহৃত. সাবক্লাস দ্বারা ওভাররাইড করা যেতে পারে, FieldTextInput দেখুন। ডিফল্টরূপে কোন অপশন.
doValueUpdate_(নতুন মান) protected একটি ক্ষেত্রের মান আপডেট করতে ব্যবহৃত হয়। বাহ্যিক জিনিসগুলির মানগুলির কাস্টম স্টোরেজ/আপডেট করতে সাবক্লাস দ্বারা ওভাররাইড করা যেতে পারে।
Json(_বিকল্প) থেকে static

একটি JSON arg অবজেক্ট থেকে তাদের ফিল্ড সাবক্লাস তৈরি করতে সাবক্লাসগুলিকে এই পদ্ধতিটি পুনরায় প্রয়োগ করা উচিত।

ফিল্ডরেজিস্ট্রিতে একটি ফিল্ড সাবক্লাস নিবন্ধন করার চেষ্টা করা একটি ত্রুটি যদি সেই সাবক্লাসটি এই পদ্ধতিটি ওভাররাইড না করে থাকে।

getAbsoluteXY_() protected এই ক্ষেত্রের উপরের-বাম কোণে পরম স্থানাঙ্কগুলি ফেরত দিন। মূল (0,0) হল পৃষ্ঠার মূল অংশের উপরের-বাম কোণে।
getBorderRect() protected সীমানা আয়তক্ষেত্র উপাদান পায়।
getClickTarget_() protected ক্লিক হ্যান্ডলারকে আবদ্ধ করার উপাদান। স্পষ্টভাবে সেট করা না থাকলে, ক্ষেত্রের SVG রুটে ডিফল্ট হয়। যখন এই উপাদানটি একটি সম্পাদনাযোগ্য ক্ষেত্রে ক্লিক করা হয়, তখন সম্পাদক খুলবে।
getConstants() রেন্ডারার ধ্রুবক প্রদানকারী পান.
getDisplayText_() protected ব্লকে প্রদর্শনের জন্য এই ক্ষেত্র থেকে পাঠ্য পান। উপবৃত্তাকার এবং অন্যান্য বিন্যাসের কারণে getText থেকে ভিন্ন হতে পারে।
getFlipRtl() আমাদের RTL এ ফিল্ড ফ্লিপ করা উচিত কিনা তা রিটার্ন করে।
getSize()

ক্ষেত্রের উচ্চতা এবং প্রস্থ প্রদান করে।

এটিই *সাধারণভাবে* একমাত্র স্থান হওয়া উচিত যেখান থেকে রেন্ডার_ কল করা হয়।

getSourceBlock() এই ক্ষেত্র সংযুক্ত ব্লক পান.
getSvgRoot() এই সম্পাদনাযোগ্য ক্ষেত্রের জন্য গ্রুপ উপাদান পায়। আকার পরিমাপ এবং অবস্থানের জন্য ব্যবহৃত হয়।
getText_() protected এই ক্ষেত্রের প্রত্যাবর্তিত পাঠ্যকে ওভাররাইড করতে একটি বিকাশকারী হুক৷ ওভাররাইড করুন যদি এই ক্ষেত্রের মানের টেক্সট উপস্থাপনা শুধুমাত্র এর মানের একটি স্ট্রিং কাস্ট না হয়। একটি স্ট্রিং কাস্ট অবলম্বন করতে নাল ফিরে যান।
getText() এই ক্ষেত্র থেকে পাঠ্য পান. একটি স্ট্রিং-এ মান কাস্ট করার চেয়ে ভিন্ন আচরণ প্রদান করতে getText_ ওভাররাইড করুন।
getTextContent() protected পাঠ্য বিষয়বস্তু পায়.
getTextElement() protected পাঠ্য উপাদান পায়।
getTooltip() এই ক্ষেত্রের জন্য টুলটিপ পাঠ্য প্রদান করে।
getValidator() সম্পাদনাযোগ্য ক্ষেত্রগুলির জন্য বৈধতা ফাংশন পায়, বা সেট না থাকলে শূন্য।
getValue() ক্ষেত্রের বর্তমান মান পান।
initModel() এটি একটি ব্লকে ইনস্টল করার পরে ক্ষেত্রের মডেলটি শুরু করে। ডিফল্টরূপে কোন অপশন.
initView() protected এই ক্ষেত্রের জন্য ব্লক UI তৈরি করুন।
ক্লিকযোগ্য() এই ক্ষেত্রটি showEditor_ ফাংশন সংজ্ঞায়িত করে কিনা তা পরীক্ষা করুন।
isClickableInFlyout(অটোক্লোজিংফ্লাইআউট) ব্লকটি ফ্লাইআউটে থাকাকালীন ক্ষেত্রটি ক্লিকযোগ্য হবে কিনা তা পরীক্ষা করুন। ডিফল্ট হল যে ক্ষেত্রগুলি সর্বদা-খোলা ফ্লাইআউটগুলিতে যেমন সাধারণ টুলবক্সে ক্লিকযোগ্য, তবে স্বয়ংক্রিয়ভাবে বন্ধ হওয়া ফ্লাইআউট যেমন বিভাগ টুলবক্সে নয়। এই আচরণ পরিবর্তন করতে সাবক্লাস এই ফাংশন ওভাররাইড করতে পারে। মনে রাখবেন যে কোন প্রভাব ফেলতে এটির জন্য isClickable অবশ্যই সত্যে ফিরে আসবে।
বর্তমানে সম্পাদনাযোগ্য() এই ক্ষেত্রটি বর্তমানে সম্পাদনাযোগ্য কিনা তা পরীক্ষা করুন। কিছু ক্ষেত্র কখনই সম্পাদনাযোগ্য নয় (যেমন পাঠ্য লেবেল)। অন্যান্য ক্ষেত্রগুলি সম্পাদনাযোগ্য হতে পারে তবে অসম্পাদনযোগ্য ব্লকগুলিতে বিদ্যমান থাকতে পারে বা বর্তমানে নিষ্ক্রিয় হতে পারে৷
সক্রিয় () উৎস ব্লক সম্পাদনাযোগ্য হলে সম্পাদক ব্যবহার করে এই ক্ষেত্রের মান পরিবর্তন করা যায় কিনা তা পরীক্ষা করুন।
isFullBlockField() protected

এই ক্ষেত্রটি সম্পূর্ণ ব্লক গ্রহণ করবে কিনা তা নির্ধারণ করে।

এই ফাংশন ওভাররাইড করার সময় সতর্ক থাকুন। এটি আপনার প্রত্যাশা অনুযায়ী কাজ নাও করতে পারে কারণ আচরণটি হ্যাক করা হয়েছে। আপনি যদি এই ফাংশনটিকে ওভাররাইড করার কথা ভাবছেন, তাহলে অন্য পদ্ধতি আছে কিনা তা দেখতে আপনার উদ্দেশ্যমূলক আচরণ সহ ফোরামে পোস্ট করুন।

ক্রমানুযায়ী() XML রেন্ডারার দ্বারা এই ক্ষেত্রটি সিরিয়াল করা উচিত কিনা তা পরীক্ষা করুন৷ পিছনের সামঞ্জস্য এবং অসঙ্গতিপূর্ণ অবস্থার জন্য যুক্তি পরিচালনা করে।
isTabNavigable() ফিল্ডটি ট্যাব নেভিগেবল কিনা তা রিটার্ন করে।
isvisible() এই সম্পাদনাযোগ্য ক্ষেত্রটি দৃশ্যমান কিনা তা পায়।
লোড লিগ্যাসিস্টেট (কলিংক্লাস, রাষ্ট্র) পুরানো XML হুক ব্যবহার করে প্রদত্ত অবস্থা লোড করে, যদি সেগুলি ব্যবহার করা উচিত। লোডিং পরিচালনা করা হয়েছে নির্দেশ করার জন্য সত্য ফেরত দেয়, অন্যথায় মিথ্যা।
অবস্থান পরিবর্তন(_) ক্ষেত্রটিকে অবহিত করে যে এটি অবস্থান পরিবর্তন করেছে।
onMouseDown_(e) protected একটি মাঠে একটি পয়েন্টারডাউন ইভেন্ট পরিচালনা করুন।
অনশর্টকাট(_শর্টকাট) প্রদত্ত কীবোর্ড শর্টকাট পরিচালনা করে।
positionBorderRect_() protected একটি আকার পরিবর্তনের পরে একটি ক্ষেত্রের সীমানা রেক্টের অবস্থান করুন।
positionTextElement_(xOffset, contentWidth) protected একটি আকার পরিবর্তনের পরে একটি ক্ষেত্রের পাঠ্য উপাদান অবস্থান করুন। এটি LTR এবং RTL উভয় পজিশনিং পরিচালনা করে।
রেন্ডার_() protected

যেকোনো DOM উপাদান সরাতে/পুনঃআকার করতে getSize() দ্বারা ব্যবহৃত হয় এবং নতুন আকার পেতে।

ব্লকের আকার/আকৃতিতে প্রভাব ফেলে এমন সমস্ত রেন্ডারিং এখানে করা উচিত এবং getSize() দ্বারা ট্রিগার করা উচিত।

RepositionForWindowResize()

একটি উইন্ডোর আকার পরিবর্তন করার সময় WidgetDiv-এর স্থান পরিবর্তন করার জন্য একটি বিকাশকারী হুক৷ যদি আপনার ক্ষেত্রের একটি WidgetDiv থাকে যা উইন্ডোটির আকার পরিবর্তন করার সময় নিজেকে পুনরায় অবস্থান করতে হবে তাহলে আপনাকে এই হুকটি সংজ্ঞায়িত করতে হবে। উদাহরণস্বরূপ, টেক্সট ইনপুট ক্ষেত্রগুলি এই হুকটিকে সংজ্ঞায়িত করে যাতে ইনপুট WidgetDiv একটি উইন্ডো রিসাইজ ইভেন্টে নিজেকে পুনঃস্থাপন করতে পারে। এটি বিশেষ করে গুরুত্বপূর্ণ যখন মোডাল ইনপুটগুলি অক্ষম করা হয়েছে, কারণ সফ্ট কীবোর্ড খোলার সময় অ্যান্ড্রয়েড ডিভাইসগুলি একটি উইন্ডো রিসাইজ ইভেন্ট ফায়ার করবে৷

আপনি যদি চান WidgetDiv পুনরায় অবস্থানের পরিবর্তে নিজেকে লুকিয়ে রাখুক, তাহলে মিথ্যা ফেরত দিন। এটি ডিফল্ট আচরণ।

DropdownDivs ইতিমধ্যেই তাদের নিজস্ব পজিশনিং লজিক পরিচালনা করে, তাই আপনার ক্ষেত্রে শুধুমাত্র একটি DropdownDiv থাকলে আপনাকে এই ফাংশনটিকে ওভাররাইড করার দরকার নেই।

সেভ লিগ্যাসিস্টেট (কলিং ক্লাস) protected XML অবস্থার একটি স্ট্রিংফাইড সংস্করণ প্রদান করে, যদি এটি ব্যবহার করা উচিত। অন্যথায় এটি শূন্য প্রদান করে, ক্ষেত্রটিকে সংকেত দিতে তার নিজস্ব সিরিয়ালাইজেশন ব্যবহার করা উচিত।
সেট সক্ষম (সক্ষম) উৎস ব্লক সম্পাদনাযোগ্য হলে সম্পাদক ব্যবহার করে এই ক্ষেত্রের মান পরিবর্তন করা যাবে কিনা তা সেট করুন।
সেটসোর্সব্লক(ব্লক) একটি ব্লক এই ক্ষেত্র সংযুক্ত করুন.
setTooltip(নতুন টিপ) এই ক্ষেত্রের জন্য টুলটিপ সেট করে।
সেট ভ্যালিডেটর(হ্যান্ডলার)

সম্পাদনাযোগ্য ক্ষেত্রগুলির জন্য একটি নতুন বৈধতা ফাংশন সেট করে বা পূর্বে সেট করা একটি বৈধতা সাফ করে।

ভ্যালিডেটর ফাংশনটি নতুন ফিল্ড মান নেয় এবং যাচাইকৃত মান প্রদান করে। যাচাইকৃত মানটি হতে পারে ইনপুট মান, ইনপুট মানের একটি পরিবর্তিত সংস্করণ বা পরিবর্তনটি বাতিল করার জন্য নাল।

যদি ফাংশন কিছু ফেরত না দেয় (অথবা অনির্ধারিত প্রদান করে) নতুন মান বৈধ হিসাবে গৃহীত হয়। এটি একটি ক্ষেত্র-স্তরের পরিবর্তন ইভেন্ট বিজ্ঞপ্তি হিসাবে বৈধ ফাংশন ব্যবহার করে ক্ষেত্রগুলির জন্য অনুমতি দেওয়ার জন্য।

setValue(newValue, fireChangeEvent) ক্ষেত্রের মান পরিবর্তন করতে ব্যবহৃত হয়। বৈধতা এবং ঘটনা পরিচালনা করে। সাবক্লাসগুলিকে এই পদ্ধতির পরিবর্তে doClassValidation_ এবং doValueUpdate_ ওভাররাইড করা উচিত।
showEditor_(_e) protected ক্ষেত্রের জন্য একটি সম্পাদক তৈরি করতে একটি বিকাশকারী হুক৷ এটি ডিফল্টরূপে নো-অপ, এবং একটি সম্পাদক তৈরি করতে ওভাররাইড করা আবশ্যক৷
আপডেট সম্পাদনাযোগ্য() এই ক্ষেত্রটি সম্পাদনাযোগ্য কিনা তা নির্দেশ করে UI যোগ করুন বা সরান৷
আপডেট সাইজ_(মার্জিন) protected পাঠ্যের উপর ভিত্তি করে ক্ষেত্রের আকার আপডেট করে।