Skip to content

Commit

Permalink
Merge pull request #20810 from dalthviz/mainwindow_cleaning
Browse files Browse the repository at this point in the history
PR: Remove some unused methods from MainWindow and fix Code Analysis and Profiler actions in menus position
  • Loading branch information
ccordoba12 authored Apr 12, 2023
2 parents d10e9e9 + b9cfafa commit 5e858dc
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 81 deletions.
60 changes: 0 additions & 60 deletions spyder/app/mainwindow.py
Original file line number Diff line number Diff line change
Expand Up @@ -1054,66 +1054,6 @@ def free_memory(self):
"""Free memory after event."""
gc.collect()

def show_shortcuts(self, menu):
"""Show action shortcuts in menu."""
menu_actions = menu.actions()
for action in menu_actions:
if getattr(action, '_shown_shortcut', False):
# This is a SpyderAction
if action._shown_shortcut is not None:
action.setShortcut(action._shown_shortcut)
elif action.menu() is not None:
# This is submenu, so we need to call this again
self.show_shortcuts(action.menu())
else:
# We don't need to do anything for other elements
continue

def hide_shortcuts(self, menu):
"""Hide action shortcuts in menu."""
menu_actions = menu.actions()
for action in menu_actions:
if getattr(action, '_shown_shortcut', False):
# This is a SpyderAction
if action._shown_shortcut is not None:
action.setShortcut(QKeySequence())
elif action.menu() is not None:
# This is submenu, so we need to call this again
self.hide_shortcuts(action.menu())
else:
# We don't need to do anything for other elements
continue

def hide_options_menus(self):
"""Hide options menu when menubar is pressed in macOS."""
for plugin in self.widgetlist + self.thirdparty_plugins:
if plugin.CONF_SECTION == 'editor':
editorstack = self.editor.get_current_editorstack()
editorstack.menu.hide()
else:
try:
# New API
plugin.options_menu.hide()
except AttributeError:
# Old API
plugin._options_menu.hide()

def get_focus_widget_properties(self):
"""Get properties of focus widget
Returns tuple (widget, properties) where properties is a tuple of
booleans: (is_console, not_readonly, readwrite_editor)"""
from spyder.plugins.editor.widgets.base import TextEditBaseWidget
from spyder.plugins.ipythonconsole.widgets import ControlWidget
widget = QApplication.focusWidget()

textedit_properties = None
if isinstance(widget, (TextEditBaseWidget, ControlWidget)):
console = isinstance(widget, ControlWidget)
not_readonly = not widget.isReadOnly()
readwrite_editor = not_readonly and not console
textedit_properties = (console, not_readonly, readwrite_editor)
return widget, textedit_properties

def set_splash(self, message):
"""Set splash message"""
if self.splash is None:
Expand Down
7 changes: 5 additions & 2 deletions spyder/plugins/profiler/plugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
on_plugin_available, on_plugin_teardown)
from spyder.api.translations import _
from spyder.plugins.editor.api.run import FileRun
from spyder.plugins.mainmenu.api import ApplicationMenus, RunMenuSections
from spyder.plugins.profiler.api import ProfilerPyConfiguration
from spyder.plugins.profiler.confpage import ProfilerConfigPage
from spyder.plugins.profiler.widgets.main_widget import (
Expand All @@ -31,7 +32,6 @@
ExtendedRunExecutionParameters, PossibleRunResult)



class Profiler(SpyderDockablePlugin, RunExecutor):
"""
Profiler (after python's profile and pstats).
Expand Down Expand Up @@ -109,7 +109,10 @@ def on_run_available(self):
icon=self.create_icon('profiler'),
shortcut_context='profiler',
register_shortcut=True,
add_to_menu=True
add_to_menu={
"menu": ApplicationMenus.Run,
"section": RunMenuSections.RunInExecutors
}
)

@on_plugin_teardown(plugin=Plugins.Editor)
Expand Down
23 changes: 4 additions & 19 deletions spyder/plugins/pylint/plugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -132,17 +132,12 @@ def on_run_available(self):
icon=self.create_icon("pylint"),
shortcut_context='pylint',
register_shortcut=True,
add_to_menu=True
add_to_menu={
"menu": ApplicationMenus.Source,
"section": SourceMenuSections.CodeAnalysis
}
)

mainmenu = self.get_plugin(Plugins.MainMenu)
if mainmenu:
mainmenu.add_item_to_application_menu(
self.run_action,
menu_id=ApplicationMenus.Source,
section=SourceMenuSections.CodeAnalysis
)

@on_plugin_teardown(plugin=Plugins.Editor)
def on_editor_teardown(self):
widget = self.get_widget()
Expand All @@ -164,16 +159,6 @@ def on_projects_teardown(self):
projects.sig_project_loaded.disconnect(self._set_project_dir)
projects.sig_project_closed.disconnect(self._unset_project_dir)

@on_plugin_teardown(plugin=Plugins.MainMenu)
def on_main_menu_teardown(self):
mainmenu = self.get_plugin(Plugins.MainMenu)

if self.run_action is not None:
mainmenu.remove_item_from_application_menu(
self.run_action.name,
menu_id=ApplicationMenus.Source
)

@on_plugin_teardown(plugin=Plugins.Run)
def on_run_teardown(self):
run = self.get_plugin(Plugins.Run)
Expand Down

0 comments on commit 5e858dc

Please sign in to comment.