Network/IRC/IrcNetworkManager.py

changeset 2232
47290dad6d0b
parent 2231
241df9311ade
child 2234
1e33501a0d33
equal deleted inserted replaced
2231:241df9311ade 2232:47290dad6d0b
5 5
6 """ 6 """
7 Module implementing the IRC data structures and their manager. 7 Module implementing the IRC data structures and their manager.
8 """ 8 """
9 9
10 from PyQt4.QtCore import pyqtSignal, QObject 10 from PyQt4.QtCore import pyqtSignal, QObject, QCoreApplication
11 11
12 import Utilities 12 import Utilities
13 from Utilities.AutoSaver import AutoSaver 13 from Utilities.AutoSaver import AutoSaver
14 from Utilities.crypto import pwConvert 14 from Utilities.crypto import pwConvert
15 import Preferences 15 import Preferences
18 class IrcIdentity(QObject): 18 class IrcIdentity(QObject):
19 """ 19 """
20 Class implementing the IRC identity object. 20 Class implementing the IRC identity object.
21 """ 21 """
22 DefaultIdentityName = "0default" 22 DefaultIdentityName = "0default"
23 DefaultIdentityDisplay = QCoreApplication.translate("IrcIdentity", "Default Identity")
23 24
24 def __init__(self, name, parent=None): 25 def __init__(self, name, parent=None):
25 """ 26 """
26 Constructor 27 Constructor
27 28
349 350
350 351
351 class IrcNetworkManager(QObject): 352 class IrcNetworkManager(QObject):
352 """ 353 """
353 Class implementing the IRC identity object. 354 Class implementing the IRC identity object.
355
356 @signal dataChanged() emitted after some data has changed
357 @signal networksChanged() emitted after a network object has changed
354 """ 358 """
355 dataChanged = pyqtSignal() 359 dataChanged = pyqtSignal()
360 networksChanged = pyqtSignal()
356 361
357 def __init__(self, parent=None): 362 def __init__(self, parent=None):
358 """ 363 """
359 Constructor 364 Constructor
360 365
541 546
542 @param identity reference to the identity to add (IrcIdentity) 547 @param identity reference to the identity to add (IrcIdentity)
543 """ 548 """
544 name = identity.getName() 549 name = identity.getName()
545 self.__identities[name] = identity 550 self.__identities[name] = identity
546 self.dataChanged.emit() 551 self.identityChanged()
547 552
548 def deleteIdentity(self, name): 553 def deleteIdentity(self, name):
549 """ 554 """
550 Public method to delete the given identity. 555 Public method to delete the given identity.
551 556
552 @param name name of the identity to delete (string) 557 @param name name of the identity to delete (string)
553 """ 558 """
554 if name in self.__identities and name != IrcIdentity.DefaultIdentityName: 559 if name in self.__identities and name != IrcIdentity.DefaultIdentityName:
555 del self.__identities[name] 560 del self.__identities[name]
556 self.dataChanged.emit() 561 self.identityChanged()
557 562
558 def renameIdentity(self, oldName, newName): 563 def renameIdentity(self, oldName, newName):
559 """ 564 """
560 Public method to rename an identity. 565 Public method to rename an identity.
561 566
568 573
569 for network in self.__networks: 574 for network in self.__networks:
570 if network.getIdentityName() == oldName: 575 if network.getIdentityName() == oldName:
571 network.setIdentityName(newName) 576 network.setIdentityName(newName)
572 577
573 self.dataChanged.emit() 578 self.identityChanged()
574 579
575 def identityChanged(self): 580 def identityChanged(self):
576 """ 581 """
577 Public method to indicate a change of an identity object. 582 Public method to indicate a change of an identity object.
578 """ 583 """
656 661
657 self.networkChanged() 662 self.networkChanged()
658 663
659 return network 664 return network
660 665
666 def deleteNetwork(self, name):
667 """
668 Public method to delete the given network.
669
670 @param name name of the network to delete (string)
671 """
672 if name in self.__networks:
673 del self.__networks[name]
674 self.networkChanged()
675
661 def networkChanged(self): 676 def networkChanged(self):
662 """ 677 """
663 Public method to indicate a change of a network object. 678 Public method to indicate a change of a network object.
664 """ 679 """
665 self.dataChanged.emit() 680 self.dataChanged.emit()
681 self.networksChanged.emit()
666 682
667 def getNetworkNames(self): 683 def getNetworkNames(self):
668 """ 684 """
669 Public method to get a list of all known network names. 685 Public method to get a list of all known network names.
670 686

eric ide

mercurial