src/eric7/WebBrowser/Bookmarks/BookmarksDialog.py

branch
eric7
changeset 9482
a2bc06a54d9d
parent 9473
3f23dbf37dbe
child 9653
e67609152c5e
equal deleted inserted replaced
9481:0b936ff1bbb9 9482:a2bc06a54d9d
10 from PyQt6.QtCore import QModelIndex, Qt, QUrl, pyqtSignal 10 from PyQt6.QtCore import QModelIndex, Qt, QUrl, pyqtSignal
11 from PyQt6.QtGui import QCursor, QFontMetrics 11 from PyQt6.QtGui import QCursor, QFontMetrics
12 from PyQt6.QtWidgets import QApplication, QDialog, QInputDialog, QLineEdit, QMenu 12 from PyQt6.QtWidgets import QApplication, QDialog, QInputDialog, QLineEdit, QMenu
13 13
14 from eric7.EricCore.EricTreeSortFilterProxyModel import EricTreeSortFilterProxyModel 14 from eric7.EricCore.EricTreeSortFilterProxyModel import EricTreeSortFilterProxyModel
15 from eric7.WebBrowser.WebBrowserWindow import WebBrowserWindow
15 16
16 from .Ui_BookmarksDialog import Ui_BookmarksDialog 17 from .Ui_BookmarksDialog import Ui_BookmarksDialog
17 18
18 19
19 class BookmarksDialog(QDialog, Ui_BookmarksDialog): 20 class BookmarksDialog(QDialog, Ui_BookmarksDialog):
44 self.setupUi(self) 45 self.setupUi(self)
45 self.setWindowFlags(Qt.WindowType.Window) 46 self.setWindowFlags(Qt.WindowType.Window)
46 47
47 self.__bookmarksManager = manager 48 self.__bookmarksManager = manager
48 if self.__bookmarksManager is None: 49 if self.__bookmarksManager is None:
49 from eric7.WebBrowser.WebBrowserWindow import WebBrowserWindow
50
51 self.__bookmarksManager = WebBrowserWindow.bookmarksManager() 50 self.__bookmarksManager = WebBrowserWindow.bookmarksManager()
52 51
53 self.__bookmarksModel = self.__bookmarksManager.bookmarksModel() 52 self.__bookmarksModel = self.__bookmarksManager.bookmarksModel()
54 self.__proxyModel = EricTreeSortFilterProxyModel(self) 53 self.__proxyModel = EricTreeSortFilterProxyModel(self)
55 self.__proxyModel.setFilterKeyColumn(-1) 54 self.__proxyModel.setFilterKeyColumn(-1)
58 self.searchEdit.textChanged.connect(self.__proxyModel.setFilterFixedString) 57 self.searchEdit.textChanged.connect(self.__proxyModel.setFilterFixedString)
59 58
60 self.bookmarksTree.setModel(self.__proxyModel) 59 self.bookmarksTree.setModel(self.__proxyModel)
61 self.bookmarksTree.setExpanded(self.__proxyModel.index(0, 0), True) 60 self.bookmarksTree.setExpanded(self.__proxyModel.index(0, 0), True)
62 fm = QFontMetrics(self.font()) 61 fm = QFontMetrics(self.font())
63 try: 62 header = fm.horizontalAdvance("m") * 40
64 header = fm.horizontalAdvance("m") * 40
65 except AttributeError:
66 header = fm.width("m") * 40
67 self.bookmarksTree.header().resizeSection(0, header) 63 self.bookmarksTree.header().resizeSection(0, header)
68 self.bookmarksTree.header().setStretchLastSection(True) 64 self.bookmarksTree.header().setStretchLastSection(True)
69 self.bookmarksTree.setContextMenuPolicy(Qt.ContextMenuPolicy.CustomContextMenu) 65 self.bookmarksTree.setContextMenuPolicy(Qt.ContextMenuPolicy.CustomContextMenu)
70 66
71 self.bookmarksTree.activated.connect(self.__activated) 67 self.bookmarksTree.activated.connect(self.__activated)
256 or node.type() == BookmarkNode.Folder 252 or node.type() == BookmarkNode.Folder
257 ): 253 ):
258 return 254 return
259 255
260 if newWindow: 256 if newWindow:
261 from eric7.WebBrowser.WebBrowserWindow import WebBrowserWindow
262
263 url = idx.sibling(idx.row(), 1).data(BookmarksModel.UrlRole) 257 url = idx.sibling(idx.row(), 1).data(BookmarksModel.UrlRole)
264 if privateWindow: 258 if privateWindow:
265 WebBrowserWindow.mainWindow().newPrivateWindow(url) 259 WebBrowserWindow.mainWindow().newPrivateWindow(url)
266 else: 260 else:
267 WebBrowserWindow.mainWindow().newWindow(url) 261 WebBrowserWindow.mainWindow().newWindow(url)

eric ide

mercurial