docstr: Determine list of names of key modifiers for this platform.
  
  The names are used to build Tk bindings -- it doesn't matter if the
  keyboard has these keys, it matters if Tk understands them. The
  order is also important: key binding equality depends on it, so
  config-keys.def must use the same ordering.
docstr_tok: ["Determine","list","of","names","of","key","modifiers","for","this","platform",".","The","names","are","used","to","build","Tk","bindings","--","it","does","n't","matter","if","the","keyboard","has","these","keys",",","it","matters","if","Tk","understands","them",".","The","order","is","also","important",":","key","binding","equality","depends","on","it",",","so","config-keys.def","must","use","the","same","ordering","."]
code: def SetModifiersForPlatform(self):
      """Determine list of names of key modifiers for this platform.
  
      The names are used to build Tk bindings -- it doesn't matter if the
      keyboard has these keys, it matters if Tk understands them. The
      order is also important: key binding equality depends on it, so
      config-keys.def must use the same ordering.
      """
      if sys.platform == "darwin":
          self.modifiers = ["Shift", "Control", "Option", "Command"]
      else:
          self.modifiers = ["Control", "Alt", "Shift"]
      self.modifier_label = {"Control": "Ctrl"}
  
file_path: catboost/contrib/tools/python/src/Lib/idlelib/keybindingDialog.py
imports: from Tkinter import *
  import tkMessageBox
  import string
  import sys
label_desc: Use image node_id 3 for calling the GetKeysDialog obj's underlying member method code with example usage: obj.SetModifiersForPlatform() without return types