Google Workspace-এ কাস্টম মেনু

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

ডকস, শীটস, স্লাইডস বা ফর্মস-এ কাস্টম মেনু

অ্যাপস স্ক্রিপ্ট ডকস, শীটস, স্লাইডস বা ফর্মস-এ নতুন মেনু যোগ করতে পারে, যেখানে প্রতিটি মেনু আইটেম একটি স্ক্রিপ্টের ফাংশনের সাথে সংযুক্ত থাকে। (ফর্মস-এর ক্ষেত্রে, কাস্টম মেনুগুলো শুধুমাত্র সেই এডিটর দেখতে পান যিনি ফর্মটি পরিবর্তন করার জন্য খোলেন, সেই ব্যবহারকারী দেখতে পান না যিনি উত্তর দেওয়ার জন্য ফর্মটি খোলেন।)

শুধুমাত্র বাউন্ড স্ক্রিপ্টই মেনু তৈরি করতে পারে। ব্যবহারকারী যখন কোনো ফাইল খোলে তখন মেনুটি প্রদর্শন করার জন্য, মেনুর কোডটি একটি onOpen ফাংশনের মধ্যে লিখুন।

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

function onOpen() {
  const ui = SpreadsheetApp.getUi();
  // Or DocumentApp, SlidesApp or FormApp.
  ui.createMenu('Custom Menu')
      .addItem('First item', 'menuItem1')
      .addSeparator()
      .addSubMenu(ui.createMenu('Sub-menu')
          .addItem('Second item', 'menuItem2'))
      .addToUi();
}

function menuItem1() {
  SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.
      .alert('You clicked the first menu item!');
}

function menuItem2() {
  SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.
      .alert('You clicked the second menu item!');
}

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

এডিটর অ্যাড-অনগুলিতেও মেনু আইটেম থাকতে পারে, কিন্তু সেগুলি কীভাবে সংজ্ঞায়িত করা হবে তার জন্য বিশেষ নিয়ম ব্যবহার করা হয়।

শীটে ক্লিকযোগ্য ছবি এবং অঙ্কন

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

  1. শীটস-এ, স্প্রেডশীটের সাথে সংযুক্ত একটি স্ক্রিপ্ট তৈরি করতে এক্সটেনশন > অ্যাপস স্ক্রিপ্ট মেনু আইটেমটি নির্বাচন করুন।
  2. স্ক্রিপ্ট এডিটর থেকে যেকোনো কোড মুছে ফেলুন এবং নিচের কোডটি পেস্ট করুন।
function showMessageBox() {
  SpreadsheetApp.getUi().alert('You clicked it!');
}
  1. শীটসে ফিরে যান এবং Insert > Image অথবা Insert > Drawing নির্বাচন করে একটি ছবি বা অঙ্কন সন্নিবেশ করুন।
  2. ছবি বা অঙ্কনটি যুক্ত করার পর, সেটিতে ক্লিক করুন। উপরের ডান কোণায় একটি ছোট ড্রপ-ডাউন মেনু সিলেক্টর দেখা যাবে। সেটিতে ক্লিক করে ‘Assign script’ বেছে নিন।
  3. প্রদর্শিত ডায়ালগ বক্সে, আপনি যে অ্যাপস স্ক্রিপ্ট ফাংশনটি চালাতে চান তার নামটি বন্ধনী ছাড়া টাইপ করুন — এই ক্ষেত্রে, showMessageBoxOK- তে ক্লিক করুন।
  4. ছবি বা অঙ্কনটিতে আবার ক্লিক করুন। এখন ফাংশনটি কার্যকর হবে।

স্ক্রিপ্টটি শুধুমাত্র ওয়েব ব্রাউজারে ছবি বা ড্রয়িং-এ ক্লিক করলেই কার্যকর হয়। মোবাইলে ছবি বা ড্রয়িং-এ ক্লিক করা হলে স্ক্রিপ্টটি কার্যকর হয় না।