Skip to content

Commit 5a2e6c6

Browse files
authored
Merge pull request #269 from ptersilie/nopygame
Show warning when pygame is not available
2 parents aa291fa + a28fdc5 commit 5a2e6c6

2 files changed

Lines changed: 16 additions & 3 deletions

File tree

‎lib/eco/eco.py‎

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424

2525
try:
2626
import __pypy__
27-
print("Warning: PyQt4 is currently not supported in PyPy. Some features thus have been disabled.")
27+
print("Warning: PyQt is currently not supported in PyPy. Some features thus have been disabled.")
2828
except ImportError:
2929
pass
3030

@@ -611,11 +611,12 @@ def __init__(self):
611611
import pydot
612612
self.ui.actionParse_Tree.triggered.connect(self.showParseView)
613613
self.ui.actionStateGraph.triggered.connect(self.showStateView)
614+
self.ui.actionPvShow.triggered.connect(self.showPygameTree)
614615
except ImportError:
615-
sys.stderr.write("Warning: pydot not installed, so viewing of trees is disabled.\n")
616+
sys.stderr.write("Warning: pydot not installed. Viewing of parse trees/graphs disabled.\n")
616617
self.ui.actionParse_Tree.setEnabled(False)
618+
self.ui.actionPvShow.setEnabled(False)
617619
self.ui.actionStateGraph.setEnabled(False)
618-
self.ui.actionPvShow.triggered.connect(self.showPygameTree)
619620

620621
self.ui.actionSettings.triggered.connect(self.showSettingsView)
621622
self.ui.actionAbout.triggered.connect(self.showAboutView)
@@ -833,6 +834,14 @@ def contextMenu(self, pos):
833834
self.btReparse([])
834835

835836
def showPygameTree(self):
837+
os.environ['PYGAME_HIDE_SUPPORT_PROMPT'] = "hide"
838+
try:
839+
import pygame
840+
except ImportError:
841+
sys.stderr.write("Warning: pygame not installed. Interactive viewing of parse trees disabled.\n")
842+
self.ui.actionPvShow.setEnabled(False)
843+
return
844+
836845
if not self.pgviewer:
837846
editor = self.getEditor()
838847
tree = editor.tm.main_lbox
@@ -1491,6 +1500,7 @@ def toggle_menu(self, enabled=True):
14911500
self.ui.actionParse_Tree.setEnabled(enabled)
14921501
except ImportError:
14931502
pass
1503+
self.ui.actionPvShow.setEnabled(enabled)
14941504
self.ui.actionCode_complete.setEnabled(enabled)
14951505
self.ui.menuChange_language_box.setEnabled(enabled)
14961506
self.ui.actionPreview.setEnabled(enabled)

‎lib/eco/gui/gui.ui‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -853,6 +853,9 @@
853853
<property name="text">
854854
<string>TreeView (Pygame)</string>
855855
</property>
856+
<property name="enabled">
857+
<bool>false</bool>
858+
</property>
856859
</action>
857860
<action name="actionAutomatic_language_box_detection">
858861
<property name="checkable">

0 commit comments

Comments
 (0)