14 pyqtSignal, QT_TRANSLATE_NOOP, QObject, QFile, QIODevice, QXmlStreamReader, |
14 pyqtSignal, QT_TRANSLATE_NOOP, QObject, QFile, QIODevice, QXmlStreamReader, |
15 QDateTime, QFileInfo, QUrl, QCoreApplication, QUndoStack, QUndoCommand |
15 QDateTime, QFileInfo, QUrl, QCoreApplication, QUndoStack, QUndoCommand |
16 ) |
16 ) |
17 from PyQt6.QtWidgets import QDialog |
17 from PyQt6.QtWidgets import QDialog |
18 |
18 |
19 from E5Gui import E5MessageBox, E5FileDialog |
19 from E5Gui import EricMessageBox, EricFileDialog |
20 |
20 |
21 from .BookmarkNode import BookmarkNode |
21 from .BookmarkNode import BookmarkNode |
22 |
22 |
23 from Utilities.AutoSaver import AutoSaver |
23 from Utilities.AutoSaver import AutoSaver |
24 import Utilities |
24 import Utilities |
134 |
134 |
135 from .XbelReader import XbelReader |
135 from .XbelReader import XbelReader |
136 reader = XbelReader() |
136 reader = XbelReader() |
137 self.__bookmarkRootNode = reader.read(bookmarkFile) |
137 self.__bookmarkRootNode = reader.read(bookmarkFile) |
138 if reader.error() != QXmlStreamReader.Error.NoError: |
138 if reader.error() != QXmlStreamReader.Error.NoError: |
139 E5MessageBox.warning( |
139 EricMessageBox.warning( |
140 None, |
140 None, |
141 self.tr("Loading Bookmarks"), |
141 self.tr("Loading Bookmarks"), |
142 self.tr( |
142 self.tr( |
143 """Error when loading bookmarks on line {0},""" |
143 """Error when loading bookmarks on line {0},""" |
144 """ column {1}:\n {2}""") |
144 """ column {1}:\n {2}""") |
203 |
203 |
204 # save root folder titles in English (i.e. not localized) |
204 # save root folder titles in English (i.e. not localized) |
205 self.__menu.title = BOOKMARKMENU |
205 self.__menu.title = BOOKMARKMENU |
206 self.__toolbar.title = BOOKMARKBAR |
206 self.__toolbar.title = BOOKMARKBAR |
207 if not writer.write(bookmarkFile, self.__bookmarkRootNode): |
207 if not writer.write(bookmarkFile, self.__bookmarkRootNode): |
208 E5MessageBox.warning( |
208 EricMessageBox.warning( |
209 None, |
209 None, |
210 self.tr("Saving Bookmarks"), |
210 self.tr("Saving Bookmarks"), |
211 self.tr("""Error saving bookmarks to <b>{0}</b>.""") |
211 self.tr("""Error saving bookmarks to <b>{0}</b>.""") |
212 .format(bookmarkFile)) |
212 .format(bookmarkFile)) |
213 |
213 |
385 |
385 |
386 def exportBookmarks(self): |
386 def exportBookmarks(self): |
387 """ |
387 """ |
388 Public method to export the bookmarks. |
388 Public method to export the bookmarks. |
389 """ |
389 """ |
390 fileName, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( |
390 fileName, selectedFilter = EricFileDialog.getSaveFileNameAndFilter( |
391 None, |
391 None, |
392 self.tr("Export Bookmarks"), |
392 self.tr("Export Bookmarks"), |
393 "eric7_bookmarks.xbel", |
393 "eric7_bookmarks.xbel", |
394 self.tr("XBEL bookmarks (*.xbel);;" |
394 self.tr("XBEL bookmarks (*.xbel);;" |
395 "XBEL bookmarks (*.xml);;" |
395 "XBEL bookmarks (*.xml);;" |
409 writer = NsHtmlWriter() |
409 writer = NsHtmlWriter() |
410 else: |
410 else: |
411 from .XbelWriter import XbelWriter |
411 from .XbelWriter import XbelWriter |
412 writer = XbelWriter() |
412 writer = XbelWriter() |
413 if not writer.write(fileName, self.__bookmarkRootNode): |
413 if not writer.write(fileName, self.__bookmarkRootNode): |
414 E5MessageBox.critical( |
414 EricMessageBox.critical( |
415 None, |
415 None, |
416 self.tr("Exporting Bookmarks"), |
416 self.tr("Exporting Bookmarks"), |
417 self.tr("""Error exporting bookmarks to <b>{0}</b>.""") |
417 self.tr("""Error exporting bookmarks to <b>{0}</b>.""") |
418 .format(fileName)) |
418 .format(fileName)) |
419 |
419 |