src/eric7/Network/IRC/IrcServerEditDialog.py

branch
eric7
changeset 9209
b99e7fd55fd3
parent 8881
54e42bc2437a
child 9221
bf71ee032bb4
equal deleted inserted replaced
9208:3fc8dfeb6ebe 9209:b99e7fd55fd3
1 # -*- coding: utf-8 -*-
2
3 # Copyright (c) 2012 - 2022 Detlev Offenbach <detlev@die-offenbachs.de>
4 #
5
6 """
7 Module implementing a dialog for editing the IRC server configuration.
8 """
9
10 from PyQt6.QtCore import pyqtSlot
11 from PyQt6.QtWidgets import QDialog, QDialogButtonBox
12
13 from .Ui_IrcServerEditDialog import Ui_IrcServerEditDialog
14
15
16 class IrcServerEditDialog(QDialog, Ui_IrcServerEditDialog):
17 """
18 Class implementing a dialog for editing the IRC server configuration.
19 """
20 def __init__(self, server, parent=None):
21 """
22 Constructor
23
24 @param server reference to the IRC server object (IrcServer)
25 @param parent reference to the parent widget (QWidget)
26 """
27 super().__init__(parent)
28 self.setupUi(self)
29
30 self.__okButton = self.buttonBox.button(
31 QDialogButtonBox.StandardButton.Ok)
32
33 if server:
34 self.serverEdit.setText(server.getName())
35 self.portSpinBox.setValue(server.getPort())
36 self.passwordEdit.setText(server.getPassword())
37 self.sslCheckBox.setChecked(server.useSSL())
38
39 self.__updateOkButton()
40
41 msh = self.minimumSizeHint()
42 self.resize(max(self.width(), msh.width()), msh.height())
43
44 def __updateOkButton(self):
45 """
46 Private method to update the OK button state.
47 """
48 self.__okButton.setEnabled(self.serverEdit.text() != "")
49
50 @pyqtSlot(str)
51 def on_serverEdit_textChanged(self, name):
52 """
53 Private slot handling changes of the server name.
54
55 @param name current name of the server (string)
56 """
57 self.__updateOkButton()
58
59 def getServer(self):
60 """
61 Public method to create a server object from the data entered into
62 the dialog.
63
64 @return server object (IrcServer)
65 """
66 from .IrcNetworkManager import IrcServer
67 server = IrcServer(self.serverEdit.text())
68 server.setPort(self.portSpinBox.value())
69 server.setPassword(self.passwordEdit.text())
70 server.setUseSSL(self.sslCheckBox.isChecked())
71
72 return server

eric ide

mercurial