eric7/HelpViewer/HelpViewerImplQWE.py

branch
eric7
changeset 8900
9c153ce17d74
parent 8881
54e42bc2437a
child 9172
4bac907a4c74
equal deleted inserted replaced
8899:764178f2124d 8900:9c153ce17d74
5 5
6 """ 6 """
7 Module implementing the help viewer base class. 7 Module implementing the help viewer base class.
8 """ 8 """
9 9
10 import contextlib
10 import functools 11 import functools
11 12
12 from PyQt6.QtCore import pyqtSlot, Qt, QEvent, QTimer, QUrl, QPoint 13 from PyQt6.QtCore import pyqtSlot, Qt, QEvent, QTimer, QUrl, QPoint
13 from PyQt6.QtGui import QGuiApplication, QClipboard, QContextMenuEvent 14 from PyQt6.QtGui import QGuiApplication, QClipboard, QContextMenuEvent
14 from PyQt6.QtWidgets import QMenu 15 from PyQt6.QtWidgets import QMenu
610 self.tr("Copy Page URL to Clipboard")) 611 self.tr("Copy Page URL to Clipboard"))
611 act.setData(self.link()) 612 act.setData(self.link())
612 act.triggered.connect( 613 act.triggered.connect(
613 functools.partial(self.__copyLink, act)) 614 functools.partial(self.__copyLink, act))
614 615
616 act = menu.addAction(
617 UI.PixmapCache.getIcon("bookmark22"),
618 self.tr("Bookmark Page"))
619 act.setData({
620 "title": self.pageTitle(),
621 "url": self.link()
622 })
623 act.triggered.connect(
624 functools.partial(self.__bookmarkPage, act))
625
615 menu.addSeparator() 626 menu.addSeparator()
616 627
617 act = menu.addAction( 628 act = menu.addAction(
618 UI.PixmapCache.getIcon("zoomIn"), 629 UI.PixmapCache.getIcon("zoomIn"),
619 self.tr("Zoom in"), 630 self.tr("Zoom in"),
717 if url.isEmpty(): 728 if url.isEmpty():
718 return 729 return
719 730
720 self.__helpViewerWidget.openUrlNewBackgroundPage(url) 731 self.__helpViewerWidget.openUrlNewBackgroundPage(url)
721 732
733 def __bookmarkPage(self, act):
734 """
735 Private method called by the context menu to bookmark the page.
736
737 @param act reference to the action that triggered
738 @type QAction
739 """
740 data = act.data()
741 if data:
742 with contextlib.suppress(KeyError):
743 url = data["url"]
744 title = data["title"]
745
746 self.__helpViewerWidget.bookmarkPage(title, url)
747
722 def __copyLink(self, act): 748 def __copyLink(self, act):
723 """ 749 """
724 Private method called by the context menu to copy a link to the 750 Private method called by the context menu to copy a link to the
725 clipboard. 751 clipboard.
726 752

eric ide

mercurial