WebBrowser/Bookmarks/BookmarksToolBar.py

Sun, 03 Apr 2016 16:22:18 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 03 Apr 2016 16:22:18 +0200
branch
QtWebEngine
changeset 4913
e16573640cb8
parent 4824
08153ef89fc1
child 5015
ca1d44f0f6b2
permissions
-rw-r--r--

Continued porting the web browser.

- some more code cleanup

0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
4631
5c1a96925da4 Updated copyright for 2016.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4021
diff changeset
3 # Copyright (c) 2009 - 2016 Detlev Offenbach <detlev@die-offenbachs.de>
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing a tool bar showing bookmarks.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
3145
a9de05d4a22f # __IGNORE_WARNING__ added/ removed.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 3058
diff changeset
10 from __future__ import unicode_literals
2525
8b507a9a2d40 Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2403
diff changeset
11
3656
441956d8fce5 Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
12 from PyQt5.QtCore import pyqtSignal, Qt, QUrl, QCoreApplication
441956d8fce5 Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
13 from PyQt5.QtGui import QCursor
441956d8fce5 Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
14 from PyQt5.QtWidgets import QMenu
4824
08153ef89fc1 Fixed an issue in the bookmarks toolbar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4808
diff changeset
15 from PyQt5.QtWebEngineWidgets import QWebEnginePage
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16
55
b5c84934de9c Renamed E4Gui to E5Gui.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
17 from E5Gui.E5ModelToolBar import E5ModelToolBar
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18
12
1d8dd9706f46 First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7
diff changeset
19 from .BookmarksModel import BookmarksModel
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
21
55
b5c84934de9c Renamed E4Gui to E5Gui.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
22 class BookmarksToolBar(E5ModelToolBar):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 Class implementing a tool bar showing bookmarks.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25
501
5c615a85241a Finished porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 484
diff changeset
26 @signal openUrl(QUrl, str) emitted to open a URL in the current tab
5c615a85241a Finished porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 484
diff changeset
27 @signal newUrl(QUrl, str) emitted to open a URL in a new tab
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 """
484
49be3c487f49 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 458
diff changeset
29 openUrl = pyqtSignal(QUrl, str)
49be3c487f49 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 458
diff changeset
30 newUrl = pyqtSignal(QUrl, str)
49be3c487f49 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 458
diff changeset
31
1170
a3731e520b28 Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1112
diff changeset
32 def __init__(self, mainWindow, model, parent=None):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 Constructor
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35
1170
a3731e520b28 Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1112
diff changeset
36 @param mainWindow reference to the main window (HelpWindow)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 @param model reference to the bookmarks model (BookmarksModel)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 @param parent reference to the parent widget (QWidget)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 """
3022
57179e4cdadd Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3002
diff changeset
40 E5ModelToolBar.__init__(
3656
441956d8fce5 Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
41 self, QCoreApplication.translate("BookmarksToolBar", "Bookmarks"),
3022
57179e4cdadd Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3002
diff changeset
42 parent)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43
1170
a3731e520b28 Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1112
diff changeset
44 self.__mw = mainWindow
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 self.__bookmarksModel = model
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46
4732
5ac4fc1dfc20 Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
47 self.__mw.bookmarksManager().bookmarksReloaded.connect(self.__rebuild)
1626
a77c8ea8582c Added capability to synchronise bookmarks, history, passwords and user agent settings via an FTP server.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1509
diff changeset
48
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
49 self.setModel(model)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50 self.setRootIndex(model.nodeIndex(
4732
5ac4fc1dfc20 Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
51 self.__mw.bookmarksManager().toolbar()))
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53 self.setContextMenuPolicy(Qt.CustomContextMenu)
458
1695e7a2db54 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 96
diff changeset
54 self.customContextMenuRequested.connect(self.__contextMenuRequested)
484
49be3c487f49 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 458
diff changeset
55 self.activated.connect(self.__bookmarkActivated)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57 self.setHidden(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 self.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60 self._build()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61
1626
a77c8ea8582c Added capability to synchronise bookmarks, history, passwords and user agent settings via an FTP server.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1509
diff changeset
62 def __rebuild(self):
a77c8ea8582c Added capability to synchronise bookmarks, history, passwords and user agent settings via an FTP server.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1509
diff changeset
63 """
a77c8ea8582c Added capability to synchronise bookmarks, history, passwords and user agent settings via an FTP server.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1509
diff changeset
64 Private slot to rebuild the toolbar.
a77c8ea8582c Added capability to synchronise bookmarks, history, passwords and user agent settings via an FTP server.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1509
diff changeset
65 """
a77c8ea8582c Added capability to synchronise bookmarks, history, passwords and user agent settings via an FTP server.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1509
diff changeset
66 self.__bookmarksModel = \
4732
5ac4fc1dfc20 Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
67 self.__mw.bookmarksManager().bookmarksModel()
1626
a77c8ea8582c Added capability to synchronise bookmarks, history, passwords and user agent settings via an FTP server.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1509
diff changeset
68 self.setModel(self.__bookmarksModel)
a77c8ea8582c Added capability to synchronise bookmarks, history, passwords and user agent settings via an FTP server.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1509
diff changeset
69 self.setRootIndex(self.__bookmarksModel.nodeIndex(
4732
5ac4fc1dfc20 Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
70 self.__mw.bookmarksManager().toolbar()))
1626
a77c8ea8582c Added capability to synchronise bookmarks, history, passwords and user agent settings via an FTP server.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1509
diff changeset
71 self._build()
a77c8ea8582c Added capability to synchronise bookmarks, history, passwords and user agent settings via an FTP server.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1509
diff changeset
72
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73 def __contextMenuRequested(self, pos):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
74 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75 Private slot to handle the context menu request.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
76
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
77 @param pos position the context menu shall be shown (QPoint)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
78 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
79 act = self.actionAt(pos)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
80 menu = QMenu()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
81
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
82 if act is not None:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
83 v = act.data()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
84
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
85 if act.menu() is None:
4808
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
86 menu.addAction(
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
87 self.tr("Open"),
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
88 self.__openBookmark).setData(v)
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
89 menu.addAction(
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
90 self.tr("Open in New Tab\tCtrl+LMB"),
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
91 self.__openBookmarkInNewTab).setData(v)
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
92 menu.addAction(
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
93 self.tr("Open in New Window"),
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
94 self.__openBookmarkInNewWindow).setData(v)
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
95 menu.addAction(
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
96 self.tr("Open in New Private Window"),
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
97 self.__openBookmarkInPrivateWindow).setData(v)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
98 menu.addSeparator()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
99
4808
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
100 menu.addAction(
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
101 self.tr("Remove"),
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
102 self.__removeBookmark).setData(v)
1733
231e6f05d274 Added a dialog to edit bookmark properties and the description to the add bookmark dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1626
diff changeset
103 menu.addSeparator()
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
104
4808
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
105 menu.addAction(
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
106 self.tr("Properties..."),
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
107 self.__edit).setData(v)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
108 menu.addSeparator()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
109
4808
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
110 menu.addAction(self.tr("Add Bookmark..."), self.__newBookmark)
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
111 menu.addAction(self.tr("Add Folder..."), self.__newFolder)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
112
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
113 menu.exec_(QCursor.pos())
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
114
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
115 def __bookmarkActivated(self, idx):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
116 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
117 Private slot handling the activation of a bookmark.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
118
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
119 @param idx index of the activated bookmark (QModelIndex)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
120 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
121 assert idx.isValid()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
122
1170
a3731e520b28 Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1112
diff changeset
123 if self._mouseButton == Qt.XButton1:
4913
e16573640cb8 Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4824
diff changeset
124 self.__mw.currentBrowser().triggerPageAction(QWebEnginePage.Back)
1170
a3731e520b28 Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1112
diff changeset
125 elif self._mouseButton == Qt.XButton2:
4913
e16573640cb8 Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4824
diff changeset
126 self.__mw.currentBrowser().triggerPageAction(
e16573640cb8 Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4824
diff changeset
127 QWebEnginePage.Forward)
1170
a3731e520b28 Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1112
diff changeset
128 elif self._mouseButton == Qt.LeftButton:
a3731e520b28 Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1112
diff changeset
129 if self._keyboardModifiers & Qt.ControlModifier:
a3731e520b28 Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1112
diff changeset
130 self.newUrl.emit(
a3731e520b28 Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1112
diff changeset
131 idx.data(BookmarksModel.UrlRole),
a3731e520b28 Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1112
diff changeset
132 idx.data(Qt.DisplayRole))
a3731e520b28 Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1112
diff changeset
133 else:
a3731e520b28 Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1112
diff changeset
134 self.openUrl.emit(
a3731e520b28 Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1112
diff changeset
135 idx.data(BookmarksModel.UrlRole),
a3731e520b28 Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1112
diff changeset
136 idx.data(Qt.DisplayRole))
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
137
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
138 def __openToolBarBookmark(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
139 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
140 Private slot to open a bookmark in the current browser tab.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
141 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
142 idx = self.index(self.sender())
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
143
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
144 if self._keyboardModifiers & Qt.ControlModifier:
484
49be3c487f49 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 458
diff changeset
145 self.newUrl.emit(
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
146 idx.data(BookmarksModel.UrlRole),
484
49be3c487f49 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 458
diff changeset
147 idx.data(Qt.DisplayRole))
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
148 else:
484
49be3c487f49 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 458
diff changeset
149 self.openUrl.emit(
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
150 idx.data(BookmarksModel.UrlRole),
484
49be3c487f49 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 458
diff changeset
151 idx.data(Qt.DisplayRole))
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
152 self.resetFlags()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
153
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
154 def __openBookmark(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
155 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
156 Private slot to open a bookmark in the current browser tab.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
157 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
158 idx = self.index(self.sender())
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
159
484
49be3c487f49 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 458
diff changeset
160 self.openUrl.emit(
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
161 idx.data(BookmarksModel.UrlRole),
484
49be3c487f49 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 458
diff changeset
162 idx.data(Qt.DisplayRole))
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
163
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
164 def __openBookmarkInNewTab(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
165 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
166 Private slot to open a bookmark in a new browser tab.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
167 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
168 idx = self.index(self.sender())
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
169
484
49be3c487f49 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 458
diff changeset
170 self.newUrl.emit(
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
171 idx.data(BookmarksModel.UrlRole),
484
49be3c487f49 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 458
diff changeset
172 idx.data(Qt.DisplayRole))
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
173
4808
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
174 def __openBookmarkInNewWindow(self):
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
175 """
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
176 Private slot to open a bookmark in a new window.
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
177 """
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
178 idx = self.index(self.sender())
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
179 url = idx.data(BookmarksModel.UrlRole)
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
180
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
181 from WebBrowser.WebBrowserWindow import WebBrowserWindow
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
182 WebBrowserWindow.mainWindow().newWindow(url)
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
183
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
184 def __openBookmarkInPrivateWindow(self):
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
185 """
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
186 Private slot to open a bookmark in a new private window.
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
187 """
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
188 idx = self.index(self.sender())
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
189 url = idx.data(BookmarksModel.UrlRole)
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
190
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
191 from WebBrowser.WebBrowserWindow import WebBrowserWindow
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
192 WebBrowserWindow.mainWindow().newPrivateWindow(url)
328e613165fe Continued porting the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4806
diff changeset
193
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
194 def __removeBookmark(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
195 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
196 Private slot to remove a bookmark.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
197 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
198 idx = self.index(self.sender())
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
199
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
200 self.__bookmarksModel.removeRow(idx.row(), self.rootIndex())
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
201
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
202 def __newBookmark(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
203 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
204 Private slot to add a new bookmark.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
205 """
2403
e3d7a861547c Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
206 from .AddBookmarkDialog import AddBookmarkDialog
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
207 dlg = AddBookmarkDialog()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
208 dlg.setCurrentIndex(self.rootIndex())
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
209 dlg.exec_()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
210
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
211 def __newFolder(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
212 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
213 Private slot to add a new bookmarks folder.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
214 """
2403
e3d7a861547c Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
215 from .AddBookmarkDialog import AddBookmarkDialog
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
216 dlg = AddBookmarkDialog()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
217 dlg.setCurrentIndex(self.rootIndex())
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
218 dlg.setFolder(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
219 dlg.exec_()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
220
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
221 def _createMenu(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
222 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
223 Protected method to create the menu for a tool bar action.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
224
55
b5c84934de9c Renamed E4Gui to E5Gui.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
225 @return menu for a tool bar action (E5ModelMenu)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
226 """
2403
e3d7a861547c Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
227 from .BookmarksMenu import BookmarksMenu
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
228 menu = BookmarksMenu(self)
484
49be3c487f49 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 458
diff changeset
229 menu.openUrl.connect(self.openUrl)
49be3c487f49 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 458
diff changeset
230 menu.newUrl.connect(self.newUrl)
96
9624a110667d Started to clean up the code supported by py3flakes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 55
diff changeset
231 return menu
1733
231e6f05d274 Added a dialog to edit bookmark properties and the description to the add bookmark dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1626
diff changeset
232
231e6f05d274 Added a dialog to edit bookmark properties and the description to the add bookmark dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1626
diff changeset
233 def __edit(self):
231e6f05d274 Added a dialog to edit bookmark properties and the description to the add bookmark dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1626
diff changeset
234 """
231e6f05d274 Added a dialog to edit bookmark properties and the description to the add bookmark dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1626
diff changeset
235 Private slot to edit a bookmarks properties.
231e6f05d274 Added a dialog to edit bookmark properties and the description to the add bookmark dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1626
diff changeset
236 """
2403
e3d7a861547c Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
237 from .BookmarkPropertiesDialog import BookmarkPropertiesDialog
1733
231e6f05d274 Added a dialog to edit bookmark properties and the description to the add bookmark dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1626
diff changeset
238 idx = self.index(self.sender())
231e6f05d274 Added a dialog to edit bookmark properties and the description to the add bookmark dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1626
diff changeset
239 node = self.__bookmarksModel.node(idx)
231e6f05d274 Added a dialog to edit bookmark properties and the description to the add bookmark dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1626
diff changeset
240 dlg = BookmarkPropertiesDialog(node)
231e6f05d274 Added a dialog to edit bookmark properties and the description to the add bookmark dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1626
diff changeset
241 dlg.exec_()

eric ide

mercurial