নির্বাচন হলো সেই কন্টেন্ট যা একটি খোলা উপস্থাপনা পৃষ্ঠার উপর ফোকাস করে, যেমন হাইলাইট করা টেক্সট বা টেবিলের একটি স্প্যান। এই নির্দেশিকাটি বর্ণনা করে যে অ্যাপস স্ক্রিপ্ট ব্যবহার করে একটি সক্রিয় উপস্থাপনায় কীভাবে নির্বাচন পেতে এবং সেট করতে হয়।
একটি স্ক্রিপ্ট শুধুমাত্র স্ক্রিপ্টটি চালানো ব্যবহারকারীর নির্বাচন অ্যাক্সেস করতে পারে।
স্ক্রিপ্টটি শুরু হওয়ার সময় কী ছিল তার একটি স্ন্যাপশট হল এই নির্বাচন। যদি ব্যবহারকারী ক্লিক করেন এবং স্ক্রিপ্টটি চলাকালীন নির্বাচনটি পরিবর্তন হয়, তাহলে সেই পরিবর্তনগুলি প্রতিফলিত হবে না।
নির্বাচন এবং নির্বাচনের ধরণ
Selection ক্লাস ব্যবহার করে নির্বাচনটি পড়ুন। নির্বাচিত বস্তুর ধরণের উপর ভিত্তি করে নির্বাচিত বস্তুগুলি পেতে ক্লাসটিতে বিভিন্ন পদ্ধতি রয়েছে।
SelectionType enum নির্দিষ্ট ধরণের নির্বাচিত বস্তুর প্রতিনিধিত্ব করে। উদাহরণস্বরূপ, যদি ব্যবহারকারী কোনও আকারে কিছু পাঠ্য নির্বাচন করে থাকেন, তবে নির্বাচনের ধরণটি হল TEXT । এই ক্ষেত্রে, আপনি selection.getTextRange() পদ্ধতি ব্যবহার করে নির্বাচিত পাঠ্যের পরিসর পুনরুদ্ধার করতে পারেন।
আপনি যে বস্তুটিতে নির্বাচনটি রয়েছে সেটিও পুনরুদ্ধার করতে পারেন। উদাহরণস্বরূপ, আপনি selection.getPageElementRange().getPageElements()[0] ব্যবহার করে নির্বাচিত পাঠ্য ধারণকারী আকৃতিটি পুনরুদ্ধার করতে পারেন। একইভাবে, যে পৃষ্ঠায় এনক্লোজিং আকৃতি রয়েছে সেটি হল বর্তমান সক্রিয় পৃষ্ঠা; সেই পৃষ্ঠাটি পুনরুদ্ধার করতে, selection.getCurrentPage() ব্যবহার করুন।
নির্বাচনটি পড়া
নির্বাচনটি পড়তে, নিম্নলিখিত উদাহরণে দেখানো Presentation.getSelection() পদ্ধতিটি ব্যবহার করুন:
বর্তমান পৃষ্ঠাটি পড়ুন
ব্যবহারকারী যে বর্তমান পৃষ্ঠাটি দেখছেন তা পুনরুদ্ধার করতে, getSelection() এবং getCurrentPage() পদ্ধতিগুলি নিম্নরূপ ব্যবহার করুন:
মনে রাখবেন যে বর্তমান পৃষ্ঠাটি নিম্নলিখিত যেকোনো ধরণের হতে পারে:
বর্তমান পৃষ্ঠায় এক বা একাধিক বস্তু নির্বাচিত থাকতে পারে, এবং SelectionType নির্বাচনের ধরণ নির্ধারণ করে।
নির্বাচনের ধরণের উপর ভিত্তি করে নির্বাচনটি পড়ুন।
নিম্নলিখিত উদাহরণটি দেখায় যে কীভাবে আপনি বর্তমান নির্বাচনটি টাইপ-উপযুক্ত উপায়ে পড়ার জন্য নির্বাচনের ধরণ ব্যবহার করতে পারেন।
পাঠ্য নির্বাচন পড়ুন
Selection.getTextRange() পদ্ধতি ব্যবহার করে টেক্সট নির্বাচন পড়ুন। টেক্সট নির্বাচন দুই ধরণের হয়:
- রেঞ্জ নির্বাচন : যদি কোন আকৃতিতে "Hello" লেখা থাকে এবং "He" নির্বাচন করা হয়, তাহলে ফিরে আসা রেঞ্জটিতে startIndex=0 এবং endIndex=2 থাকবে।
- কার্সার নির্বাচন : যদি কোন আকৃতিতে "Hello" লেখা থাকে এবং কার্সার "H" ("H|ello") এর পরে থাকে, তাহলে startIndex=1 এবং endIndex=1 সহ রিটার্ন করা পরিসরটি খালি পরিসর হবে।
নির্বাচন পরিবর্তন করা হচ্ছে
স্ক্রিপ্টটি ব্যবহারকারীর নির্বাচন পরিবর্তন করতে পারে। উপস্থাপনায় স্ক্রিপ্ট যে কোনও নির্বাচন পরিবর্তন করে তা স্ক্রিপ্ট কার্যকর করার সময়কালের জন্য পরবর্তী নির্বাচন ক্রিয়াকলাপগুলিতে প্রতিফলিত হয়।
স্ক্রিপ্ট এক্সিকিউশন সম্পূর্ণ হওয়ার পরে অথবা Presentation.saveAndClose() কল করার পরেই কেবল ব্যবহারকারীর ব্রাউজারে নির্বাচনের পরিবর্তনগুলি প্রতিফলিত হয়।
বর্তমান পৃষ্ঠাটি নির্বাচন করা হচ্ছে
সক্রিয় উপস্থাপনার একটি পৃষ্ঠাকে selectAsCurrentPage() পদ্ধতি ব্যবহার করে বর্তমান পৃষ্ঠা হিসেবে নির্বাচন করা যেতে পারে। এই পদ্ধতিটি পূর্ববর্তী যেকোনো পৃষ্ঠার উপাদান, পৃষ্ঠা, বা পাঠ্য নির্বাচন সরিয়ে দেয়। তাই বর্তমান পৃষ্ঠায় এই পদ্ধতিটি ব্যবহার করলে আপনি পৃষ্ঠার যেকোনো বর্তমান নির্বাচন অনির্বাচিত করতে পারবেন। উদাহরণস্বরূপ:
একটি পৃষ্ঠা উপাদান নির্বাচন করুন
একটি পৃষ্ঠার একটি পৃষ্ঠা উপাদান নির্বাচন করতে, PageElement.select() পদ্ধতিটি ব্যবহার করুন। এটি পূর্বে নির্বাচিত কোনও পৃষ্ঠা উপাদানকেও অনির্বাচিত করে।
select() এবং select(true) পদ্ধতিগুলি সমতুল্য।
উদাহরণস্বরূপ:
একাধিক পৃষ্ঠার উপাদান নির্বাচন করুন
নির্বাচনে অতিরিক্ত পৃষ্ঠা উপাদান যুক্ত করতে, PageElement.select(false) পদ্ধতিটি ব্যবহার করুন। সমস্ত পৃষ্ঠা উপাদান বর্তমান পৃষ্ঠায় থাকা আবশ্যক।
নির্বাচনটি রূপান্তর করুন
আপনার স্ক্রিপ্ট যে সম্পাদনাগুলি সম্পাদন করে তা বর্তমান নির্বাচনকে রূপান্তরিত করতে পারে, যাতে সম্পাদনার ফলে নির্বাচিত বিষয়গুলি পরিবর্তিত হয়। উদাহরণস্বরূপ:
- ধরুন আপনার দুটি আকৃতি A এবং B নির্বাচিত আছে।
- এরপর আপনার স্ক্রিপ্টটি A আকৃতিটি সরিয়ে ফেলবে।
- ফলস্বরূপ, নির্বাচনটি সম্পাদনার বিপরীতে রূপান্তরিত হয় যাতে শুধুমাত্র আকৃতি B নির্বাচন করা হয়।
নিম্নলিখিত উদাহরণটি দেখায় যে নির্বাচিত পৃষ্ঠার উপাদানগুলিকে ম্যানিপুলেট করে কীভাবে নির্বাচনকে রূপান্তরিত করা যায়।
টেক্সট নির্বাচন করুন
একটি আকৃতিতে বা একটি টেবিল কক্ষে থাকা টেক্সট TextRange.select() পদ্ধতি ব্যবহার করে নির্বাচন করা যেতে পারে। যদি টেক্সটটি একটি আকৃতিতে থাকে, তাহলে সেই আকৃতিটিও নির্বাচন করা হয়। যদি টেক্সটটি একটি টেবিল কক্ষে থাকে, তাহলে সেই টেবিল কক্ষ এবং তার আবদ্ধ টেবিল উভয়ই নির্বাচিত হয়।
এটি মূল পৃষ্ঠাটিকে বর্তমান পৃষ্ঠা হিসেবেও সেট করে।
একটি আকৃতিতে পরিসর নির্বাচন
নিচের উদাহরণটি দেখায় কিভাবে একটি আকৃতির মধ্যে থাকা টেক্সটের মধ্যে একটি পরিসর নির্বাচন করতে হয়।
একটি আকৃতিতে কার্সার নির্বাচন
নিচের উদাহরণটি দেখায় কিভাবে একটি আকৃতির মধ্যে থাকা টেক্সটের মধ্যে কার্সার নির্বাচন করতে হয়।
একটি টেবিল কক্ষে পরিসর নির্বাচন
নিচের উদাহরণটি দেখায় কিভাবে একটি টেবিল কক্ষে থাকা টেক্সটের মধ্যে একটি পরিসর নির্বাচন করতে হয়।
টেবিলসেলে কার্সার নির্বাচন
নিচের উদাহরণটি দেখায় কিভাবে একটি টেবিল কক্ষে থাকা টেক্সটের মধ্যে কার্সার নির্বাচন করতে হয়।
পাঠ্য সম্পাদনা সহ নির্বাচন রূপান্তর
নিম্নলিখিত উদাহরণটি দেখায় যে নির্বাচিত পাঠ্য সম্পাদনা করে কীভাবে নির্বাচনটি রূপান্তরিত করা যেতে পারে।
নির্বাচনমুক্ত করুন
টেক্সট বা পৃষ্ঠার উপাদানগুলি অনির্বাচন করার জন্য কোনও স্পষ্ট পদ্ধতি নেই। তবে, এই ফলাফলটি Page.selectAsCurrentPage() বা pageElement.select() পদ্ধতি ব্যবহার করে অর্জন করা যেতে পারে।
একটি বর্তমান পৃষ্ঠা নির্বাচন করুন
নিচের উদাহরণটি দেখায় যে কীভাবে একটি পৃষ্ঠার বর্তমান নির্বাচনগুলিকে বর্তমান পৃষ্ঠা হিসেবে সেট করে অনির্বাচিত করা যায়।
একটি পৃষ্ঠা উপাদান নির্বাচন করুন
নিচের উদাহরণটি দেখায় কিভাবে একটি পৃষ্ঠার উপাদান নির্বাচন করে একটি পৃষ্ঠার বর্তমান নির্বাচনগুলি অনির্বাচিত করা যায়, এইভাবে নির্বাচন থেকে অন্যান্য সমস্ত আইটেম সরিয়ে ফেলা যায়।