18 from .BookmarkNode import BookmarkNode |
18 from .BookmarkNode import BookmarkNode |
19 from .BookmarksModel import BookmarksModel |
19 from .BookmarksModel import BookmarksModel |
20 from .DefaultBookmarks import DefaultBookmarks |
20 from .DefaultBookmarks import DefaultBookmarks |
21 from .XbelReader import XbelReader |
21 from .XbelReader import XbelReader |
22 from .XbelWriter import XbelWriter |
22 from .XbelWriter import XbelWriter |
|
23 from .NsHtmlWriter import NsHtmlWriter |
23 from .BookmarksImportDialog import BookmarksImportDialog |
24 from .BookmarksImportDialog import BookmarksImportDialog |
24 |
25 |
25 from Utilities.AutoSaver import AutoSaver |
26 from Utilities.AutoSaver import AutoSaver |
26 import Utilities |
27 import Utilities |
27 import Preferences |
28 import Preferences |
317 """ |
318 """ |
318 fileName, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( |
319 fileName, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( |
319 None, |
320 None, |
320 self.trUtf8("Export Bookmarks"), |
321 self.trUtf8("Export Bookmarks"), |
321 "eric5_bookmarks.xbel", |
322 "eric5_bookmarks.xbel", |
322 self.trUtf8("XBEL bookmarks (*.xbel);;XBEL bookmarks (*.xml)")) |
323 self.trUtf8("XBEL bookmarks (*.xbel);;" |
|
324 "XBEL bookmarks (*.xml);;" |
|
325 "HTML Bookmarks (*.html)")) |
323 if not fileName: |
326 if not fileName: |
324 return |
327 return |
325 |
328 |
326 ext = QFileInfo(fileName).suffix() |
329 ext = QFileInfo(fileName).suffix() |
327 if not ext: |
330 if not ext: |
328 ex = selectedFilter.split("(*")[1].split(")")[0] |
331 ex = selectedFilter.split("(*")[1].split(")")[0] |
329 if ex: |
332 if ex: |
330 fileName += ex |
333 fileName += ex |
331 |
334 |
332 writer = XbelWriter() |
335 ext = QFileInfo(fileName).suffix() |
|
336 if ext == "html": |
|
337 writer = NsHtmlWriter() |
|
338 else: |
|
339 writer = XbelWriter() |
333 if not writer.write(fileName, self.__bookmarkRootNode): |
340 if not writer.write(fileName, self.__bookmarkRootNode): |
334 E5MessageBox.critical(None, |
341 E5MessageBox.critical(None, |
335 self.trUtf8("Exporting Bookmarks"), |
342 self.trUtf8("Exporting Bookmarks"), |
336 self.trUtf8("""Error exporting bookmarks to <b>{0}</b>.""")\ |
343 self.trUtf8("""Error exporting bookmarks to <b>{0}</b>.""")\ |
337 .format(fileName)) |
344 .format(fileName)) |