eric6/Helpviewer/Bookmarks/BookmarkPropertiesDialog.py

changeset 6942
2602857055c5
parent 6645
ad476851d7e0
equal deleted inserted replaced
6941:f99d60d6b59b 6942:2602857055c5
1 # -*- coding: utf-8 -*-
2
3 # Copyright (c) 2012 - 2019 Detlev Offenbach <detlev@die-offenbachs.de>
4 #
5
6 """
7 Module implementing a dialog to show and edit bookmark properties.
8 """
9
10 from __future__ import unicode_literals
11
12 from PyQt5.QtWidgets import QDialog
13
14 from .Ui_BookmarkPropertiesDialog import Ui_BookmarkPropertiesDialog
15
16
17 class BookmarkPropertiesDialog(QDialog, Ui_BookmarkPropertiesDialog):
18 """
19 Class implementing a dialog to show and edit bookmark properties.
20 """
21 def __init__(self, node, parent=None):
22 """
23 Constructor
24
25 @param node reference to the bookmark (BookmarkNode)
26 @param parent reference to the parent widget (QWidget)
27 """
28 super(BookmarkPropertiesDialog, self).__init__(parent)
29 self.setupUi(self)
30
31 from .BookmarkNode import BookmarkNode
32 self.__node = node
33 if self.__node.type() == BookmarkNode.Folder:
34 self.addressLabel.hide()
35 self.addressEdit.hide()
36
37 self.nameEdit.setText(self.__node.title)
38 self.descriptionEdit.setPlainText(self.__node.desc)
39 self.addressEdit.setText(self.__node.url)
40
41 def accept(self):
42 """
43 Public slot handling the acceptance of the dialog.
44 """
45 from .BookmarkNode import BookmarkNode
46
47 if (self.__node.type() == BookmarkNode.Bookmark and
48 not self.addressEdit.text()) or \
49 not self.nameEdit.text():
50 super(BookmarkPropertiesDialog, self).accept()
51 return
52
53 import Helpviewer.HelpWindow
54 bookmarksManager = Helpviewer.HelpWindow.HelpWindow.bookmarksManager()
55 title = self.nameEdit.text()
56 if title != self.__node.title:
57 bookmarksManager.setTitle(self.__node, title)
58 if self.__node.type() == BookmarkNode.Bookmark:
59 url = self.addressEdit.text()
60 if url != self.__node.url:
61 bookmarksManager.setUrl(self.__node, url)
62 description = self.descriptionEdit.toPlainText()
63 if description != self.__node.desc:
64 self.__node.desc = description
65 bookmarksManager.setNodeChanged(self.__node)
66
67 super(BookmarkPropertiesDialog, self).accept()

eric ide

mercurial