SF.net SVN: fclient: [35] trunk/fclient/config.py
Status: Pre-Alpha
Brought to you by:
jurner
From: <jU...@us...> - 2007-11-02 08:30:16
|
Revision: 35 http://fclient.svn.sourceforge.net/fclient/?rev=35&view=rev Author: jUrner Date: 2007-11-02 01:30:13 -0700 (Fri, 02 Nov 2007) Log Message: ----------- poll delays can now be set + adjustements to recent Fcp channges Modified Paths: -------------- trunk/fclient/config.py Modified: trunk/fclient/config.py =================================================================== --- trunk/fclient/config.py 2007-11-02 08:28:13 UTC (rev 34) +++ trunk/fclient/config.py 2007-11-02 08:30:13 UTC (rev 35) @@ -28,13 +28,20 @@ "DlgPreferences": _(DocDir, 'dialogs', 'preferences.html'), } + #***************************************************************************** # #***************************************************************************** class Config(object): - def __init__(self, parent): + def __init__(self, parent, connectDelay=100, pollDelay=300): """ + @param parent: parent widget + @param connectDelay: (miliseconds) frequency by qich a connection to the node is made + @param pollDelay: (miliseconds) frequency the node is queried for the next message. A low + value will make messages from the node come in quickly but make the gui unresponsive + to user interaction + @ivar assistant: app global user docs management @ivar defaultDownloadsDir: default directory for downloads @ivar fcpClient: app global FcpClient @@ -49,12 +56,20 @@ #TODO: assistant can not handle locale dependend docs yet self.assistant = assistant.Assistant(parent, profile=AssistantProfile, pages=DocPages) self.defaultDownloadsDir = os.path.join(BaseDir, 'downloads') - self.fcpClient = None + self.language = language.Language([LanguageDir, ], translationPrefixes=TranslationPrefixes) - self.nodeHello = None + self.resources = resources.Resources([ResourceDir, ], ) self.settings = settingsbase.Settings(OrgName, AppName) + self.fcpClient = None + self.nodeHello = None + + self.connectDelay = connectDelay + self.pollDelay = pollDelay + + + self._pollTimer = QtCore.QTimer() self._connectMethod = None self._connectTimer = QtCore.QTimer() @@ -67,8 +82,8 @@ def connectFcpNode(self, eventConnectedHandler): """Establishes a connection to the freenet node - @param eventConnectedHandler: handler to handle the EventClientConnected of the client - @note: the clients EventClientConnected gets automatically connected in the call. So no + @param eventConnectedHandler: handler to handle the events.ClientConnected of the client + @note: the clients events.ClientConnected gets automatically connected in the call. So no need to connect once more. @note: make shure not to access the 'fcpClient' or 'nodeHello' attrs of the config before the handler gets called. @@ -78,20 +93,20 @@ from fclient_lib.fcp.fcp2_0 import FcpClient self.fcpClient = FcpClient( connectionName='', - verbosity=FcpClient.Verbosity.Debug, + #verbosity=FcpClient.Verbosity.Debug, ) - self.fcpClient.EventClientDisconnected += self.handleFcpClientDisconnected + self.fcpClient.events.ClientDisconnected += self.handleFcpClientDisconnected QtCore.QObject.connect( self._pollTimer, QtCore.SIGNAL('timeout()'), self.fcpClient.next ) self._connectMethod = self.fcpClient.connect() - self.fcpClient.EventClientConnected += eventConnectedHandler - self._connectTimer.start(100) + self.fcpClient.events.ClientConnected += eventConnectedHandler + self._connectTimer.start(self.connectDelay) else: - cb(self.fcpClient.EventClientConnected, self.nodeHello) + cb(self.fcpClient.events.ClientConnected, self.nodeHello) def handleFcpConnect(self): @@ -101,7 +116,7 @@ result = self._connectMethod.next() if result is not None: self.nodeHello = result - self._pollTimer.start(100) + self._pollTimer.start(self.pollDelay) except StopIteration: return This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |