14 from PyQt6.QtWidgets import QWidget, QToolButton, QLabel, QTabWidget |
14 from PyQt6.QtWidgets import QWidget, QToolButton, QLabel, QTabWidget |
15 from PyQt6.QtNetwork import QTcpSocket, QAbstractSocket |
15 from PyQt6.QtNetwork import QTcpSocket, QAbstractSocket |
16 |
16 |
17 try: |
17 try: |
18 from PyQt6.QtNetwork import QSslSocket, QSslConfiguration |
18 from PyQt6.QtNetwork import QSslSocket, QSslConfiguration |
19 from EricNetwork.EricSslErrorHandler import EricSslErrorHandler, EricSslErrorState |
19 from eric7.EricNetwork.EricSslErrorHandler import ( |
|
20 EricSslErrorHandler, |
|
21 EricSslErrorState, |
|
22 ) |
20 |
23 |
21 SSL_AVAILABLE = True |
24 SSL_AVAILABLE = True |
22 except ImportError: |
25 except ImportError: |
23 SSL_AVAILABLE = False |
26 SSL_AVAILABLE = False |
24 |
27 |
25 from EricWidgets import EricMessageBox |
28 from eric7.EricWidgets import EricMessageBox |
26 |
29 |
27 from .Ui_IrcWidget import Ui_IrcWidget |
30 from .Ui_IrcWidget import Ui_IrcWidget |
28 |
31 |
29 import Preferences |
32 from eric7 import Preferences |
30 import UI.PixmapCache |
33 from eric7.EricGui import EricPixmapCache |
31 |
34 |
32 from Globals import isMacPlatform |
35 from eric7.Globals import isMacPlatform |
33 |
36 |
34 from UI.Info import Version, Copyright |
37 from eric7.UI.Info import Version, Copyright |
35 |
38 |
36 |
39 |
37 class IrcWidget(QWidget, Ui_IrcWidget): |
40 class IrcWidget(QWidget, Ui_IrcWidget): |
38 """ |
41 """ |
39 Class implementing the IRC window. |
42 Class implementing the IRC window. |
59 from .IrcNetworkManager import IrcNetworkManager |
62 from .IrcNetworkManager import IrcNetworkManager |
60 |
63 |
61 self.__ircNetworkManager = IrcNetworkManager(self) |
64 self.__ircNetworkManager = IrcNetworkManager(self) |
62 |
65 |
63 self.__leaveButton = QToolButton(self) |
66 self.__leaveButton = QToolButton(self) |
64 self.__leaveButton.setIcon(UI.PixmapCache.getIcon("ircCloseChannel")) |
67 self.__leaveButton.setIcon(EricPixmapCache.getIcon("ircCloseChannel")) |
65 self.__leaveButton.setToolTip(self.tr("Press to leave the current channel")) |
68 self.__leaveButton.setToolTip(self.tr("Press to leave the current channel")) |
66 self.__leaveButton.clicked.connect(self.__leaveChannel) |
69 self.__leaveButton.clicked.connect(self.__leaveChannel) |
67 self.__leaveButton.setEnabled(False) |
70 self.__leaveButton.setEnabled(False) |
68 self.channelsWidget.setCornerWidget( |
71 self.channelsWidget.setCornerWidget( |
69 self.__leaveButton, Qt.Corner.BottomRightCorner |
72 self.__leaveButton, Qt.Corner.BottomRightCorner |
108 (re.compile(r"""PING\s+:(.*)"""), self.__ping), |
111 (re.compile(r"""PING\s+:(.*)"""), self.__ping), |
109 ] |
112 ] |
110 self.__prefixRe = re.compile(r""".*\sPREFIX=\((.*)\)([^ ]+).*""") |
113 self.__prefixRe = re.compile(r""".*\sPREFIX=\((.*)\)([^ ]+).*""") |
111 self.__chanTypesRe = re.compile(r""".*\sCHANTYPES=([^ ]+).*""") |
114 self.__chanTypesRe = re.compile(r""".*\sCHANTYPES=([^ ]+).*""") |
112 |
115 |
113 ircPic = UI.PixmapCache.getPixmap("irc128") |
116 ircPic = EricPixmapCache.getPixmap("irc128") |
114 self.__emptyLabel = QLabel() |
117 self.__emptyLabel = QLabel() |
115 self.__emptyLabel.setPixmap(ircPic) |
118 self.__emptyLabel.setPixmap(ircPic) |
116 self.__emptyLabel.setAlignment( |
119 self.__emptyLabel.setAlignment( |
117 Qt.AlignmentFlag.AlignVCenter | Qt.AlignmentFlag.AlignHCenter |
120 Qt.AlignmentFlag.AlignVCenter | Qt.AlignmentFlag.AlignHCenter |
118 ) |
121 ) |