bpo-35555: IDLE: Gray out Code Context menu item on non-editors (GH-11282) (GH-11300)

The Code Context menu item only works on Editor windows so disable it for others.
(cherry picked from commit 8874f511e7473b08d6b0ccd9261dd415a072a34d)

Co-authored-by: Cheryl Sabella <cheryl.sabella@gmail.com>
diff --git a/Lib/idlelib/NEWS.txt b/Lib/idlelib/NEWS.txt
index 1e4edd9..ca4bd05 100644
--- a/Lib/idlelib/NEWS.txt
+++ b/Lib/idlelib/NEWS.txt
@@ -3,6 +3,8 @@
 ======================================
 
 
+bpo-35555: Gray out Code Context menu entry when it's not applicable.
+
 bpo-22703: Improve the Code Context and Zoom Height menu labels.
 The Code Context menu label now toggles between Show/Hide Code Context.
 The Zoom Height menu now toggles between Zoom/Restore Height.
diff --git a/Lib/idlelib/outwin.py b/Lib/idlelib/outwin.py
index e962142..f6361eb 100644
--- a/Lib/idlelib/outwin.py
+++ b/Lib/idlelib/outwin.py
@@ -78,6 +78,8 @@
         EditorWindow.__init__(self, *args)
         self.text.bind("<<goto-file-line>>", self.goto_file_line)
         self.text.unbind("<<toggle-code-context>>")
+        self.menudict['options'].entryconfig('*Code Context',
+                                             state='disabled')
 
     # Customize EditorWindow
     def ispythonsource(self, filename):