Don't use try for fittingView, and don't show remove item for modes.
(cherry picked from commit fd224d6)
This commit is contained in:
@@ -497,10 +497,11 @@ class FittingView(d.Display):
|
||||
while sel != -1 and sel not in self.blanks:
|
||||
mod = self.mods[self.GetItemData(sel)]
|
||||
|
||||
# Test if mod.isEmpty exists.
|
||||
try:
|
||||
mod.isEmpty
|
||||
except AttributeError:
|
||||
# Test if mod.isEmpty does not exist.
|
||||
# Certain special module can be missing this trait
|
||||
# Example: T3D modes
|
||||
if not hasattr(mod, 'isEmpty'):
|
||||
# Set it if missing, prevents later stack traces.
|
||||
mod.isEmpty = False
|
||||
|
||||
if not mod.isEmpty:
|
||||
|
||||
@@ -70,6 +70,17 @@ class ContextMenu(object):
|
||||
if m.display(srcContext, selection):
|
||||
amount += 1
|
||||
texts = m.getText(itemContext, selection)
|
||||
|
||||
# Check the selected item to see if it has special reasons for not showing the menu item
|
||||
skip_menu_item = False
|
||||
for sel in selection:
|
||||
if hasattr(sel, "_Mode__item") and texts == "Remove Module":
|
||||
# Don't show remove for modes, these are special modules that cannot be removed
|
||||
skip_menu_item = True
|
||||
|
||||
if skip_menu_item == True:
|
||||
continue
|
||||
|
||||
if isinstance(texts, basestring):
|
||||
texts = (texts,)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user