This commit is contained in:
2021-11-26 19:12:52 +01:00
parent 83f0762027
commit 5c08dc4a5a
2 changed files with 29 additions and 108 deletions

View File

@@ -1,7 +1,13 @@
import sys
from typing import Optional
import constants
from aboutdialog import AboutDialog
from raven.mainwindow import MainWindow
from raven.pluginbase import PluginBase
from raven.pluginregistry import PluginRegistry
from raven.plugins.domain.menucontribution import MenuContribution
from raven.plugins.domain.raction import RAction
class RavenLogPlugin(PluginBase):
@@ -14,8 +20,29 @@ class RavenLogPlugin(PluginBase):
self.main_window = MainWindow()
return self.main_window
def get_menu_contributions(self) -> [MenuContribution]:
return [
MenuContribution("file", action=self._action_close(), action_id="close application"),
MenuContribution("help", action=self._action_about(), action_id="open about dialog"),
]
def current_file(self) -> Optional[str]:
return self.main_window.current_file()
return self.main_window.tabs.current_file()
def create_tab(self, file: str):
self.main_window.tabs.create_tab(file)
PluginRegistry.execute("after_open_file", file)
def _action_about(self) -> RAction:
about_action = RAction(
"&About",
action=lambda: AboutDialog().exec(),
icon_file=constants.raven_icon
)
return about_action
def _action_close(self) -> RAction:
icon = "close" if sys.platform == 'win32' or sys.platform == 'cygwin' else "exit"
close_action = RAction("E&xit", action=lambda: self.main_window.destruct(), shortcut='Ctrl+X',
icon_from_theme=icon)
return close_action