SF.net SVN: fclient:[921] trunk/fclient/fclient
Status: Pre-Alpha
Brought to you by:
jurner
|
From: <jU...@us...> - 2008-08-16 10:54:52
|
Revision: 921
http://fclient.svn.sourceforge.net/fclient/?rev=921&view=rev
Author: jUrner
Date: 2008-08-16 10:55:00 +0000 (Sat, 16 Aug 2008)
Log Message:
-----------
redesdigned view objects
Modified Paths:
--------------
trunk/fclient/fclient/fclient.py
trunk/fclient/fclient/impl/MainWindow/MainWindow.py
trunk/fclient/fclient/impl/ViewBrowser/SideBars/SideBarLoadDetails.py
trunk/fclient/fclient/impl/ViewBrowser/ViewBrowser.py
trunk/fclient/fclient/impl/ViewConnection/ViewConnection.py
trunk/fclient/fclient/impl/ViewDownloads/ViewDownloads.py
trunk/fclient/fclient/impl/ViewLogger/ViewLogger.py
trunk/fclient/fclient/impl/ViewUploads/ViewUploads.py
trunk/fclient/fclient/impl/config.py
Modified: trunk/fclient/fclient/fclient.py
===================================================================
--- trunk/fclient/fclient/fclient.py 2008-08-16 08:22:18 UTC (rev 920)
+++ trunk/fclient/fclient/fclient.py 2008-08-16 10:55:00 UTC (rev 921)
@@ -12,13 +12,13 @@
from .impl import config
from .impl.lib.qt4ex import singleapp
-from .impl.MainWindow import MainWindow
-from .impl.View import ViewWidget
-from .impl.ViewBrowser import ViewBrowser
-from .impl.ViewConnection import ViewConnection
-from .impl.ViewDownloads import ViewDownloads
-from .impl.ViewLogger import ViewLogger
-from .impl.ViewUploads import ViewUploads
+from .impl.MainWindow.ViewObject import ViewObjectMainWindow
+from .impl.ViewView.ViewObject import ViewObjectView
+from .impl.ViewConnection.ViewObject import ViewObjectConnection
+from .impl.ViewBrowser.ViewObject import ViewObjectBrowser
+from .impl.ViewDownloads.ViewObject import ViewObjectDownloads
+from .impl.ViewLogger.ViewObject import ViewObjectLogger
+from .impl.ViewUploads.ViewObject import ViewObjectUploads
from .impl.DlgSingleAppError import DlgSingleAppError
#*************************************************************
@@ -30,8 +30,8 @@
#TODO: looks like no way to bring the window to the foreground
# the calls do not work on x11. may work on windows though
#
- ##QtGui.QApplication.instance().setActiveWindow(self.userData)
- ##self.userData.activateWindow()
+ ##QtGui.QApplication.instance().setActiveWindow(self.userData.widget())
+ ##self.userData.widget().activateWindow()
pass
def main():
@@ -70,20 +70,37 @@
else: # everything went well. start gui
app = QtGui.QApplication(sys.argv)
- mainWindow = MainWindow.MainWindow()
- singleApp.userData = mainWindow
+
+ #print MainWindow.ViewObject
+
+ voMainWindow = ViewObjectMainWindow(None)
+ voMainWindow.create()
+ singleApp.userData = voMainWindow
- viewWidget = ViewWidget(mainWindow)
- mainWindow.setCentralWidget(viewWidget)
- viewWidget.addTopViews(
- ViewConnection.ViewConnectionWidget(mainWindow),
- ViewBrowser.ViewBrowserWidget(mainWindow),
- ViewDownloads.ViewDownloadsWidget(mainWindow),
- ViewUploads.ViewUploadsWidget(mainWindow),
+ voView = ViewObjectView(voMainWindow)
+ viewWidget = voView.create()
+ voMainWindow.widget().setCentralWidget(viewWidget)
+
+ topViews = (
+ ViewObjectConnection,
+ ViewObjectBrowser,
+ ViewObjectDownloads,
+ ViewObjectUploads,
)
- viewWidget.addBottomViews(ViewLogger.ViewLoggerWidget(mainWindow))
+ for view in topViews:
+ view = view(voView)
+ view.create()
+ viewWidget.addTopViews(view)
- mainWindow.show()
+ bottomViews = (
+ ViewObjectLogger,
+ )
+ for view in bottomViews:
+ view = view(voView)
+ view.create()
+ viewWidget.addBottomViews(view)
+
+ voMainWindow.widget().show()
res = app.exec_()
sys.exit(res)
Modified: trunk/fclient/fclient/impl/MainWindow/MainWindow.py
===================================================================
--- trunk/fclient/fclient/impl/MainWindow/MainWindow.py 2008-08-16 08:22:18 UTC (rev 920)
+++ trunk/fclient/fclient/impl/MainWindow/MainWindow.py 2008-08-16 10:55:00 UTC (rev 921)
@@ -33,8 +33,6 @@
self._isCreated = False
self.setupUi(self)
- config.ObjectRegistry.register(self)
-
self.fcSettings = Settings.Settings().restore()
self.fcActions = Actions.Actions(self)
self.setMenuBar(MenuBar.MenuBar(self))
Modified: trunk/fclient/fclient/impl/ViewBrowser/SideBars/SideBarLoadDetails.py
===================================================================
--- trunk/fclient/fclient/impl/ViewBrowser/SideBars/SideBarLoadDetails.py 2008-08-16 08:22:18 UTC (rev 920)
+++ trunk/fclient/fclient/impl/ViewBrowser/SideBars/SideBarLoadDetails.py 2008-08-16 10:55:00 UTC (rev 921)
@@ -68,8 +68,6 @@
self.statusNames = {} # TreeItem.Status* --> displayName
self.setupUi(self)
-
- config.ObjectRegistry.register(self)
self.fcSettings = SideBarLoadDetailsSettings(self).restore()
self.baseKey = None # base key of the page
Modified: trunk/fclient/fclient/impl/ViewBrowser/ViewBrowser.py
===================================================================
--- trunk/fclient/fclient/impl/ViewBrowser/ViewBrowser.py 2008-08-16 08:22:18 UTC (rev 920)
+++ trunk/fclient/fclient/impl/ViewBrowser/ViewBrowser.py 2008-08-16 10:55:00 UTC (rev 921)
@@ -82,18 +82,6 @@
#*****************************************************************************************
#
#*****************************************************************************************
-class BrowserWidgetViewObject(config.ViewObject):
-
- def __init__(self, parent):
- config.ViewObject. __init__(self, parent)
-
- self.name=parent.objectName()
- self.displayName=self.trUtf8('Browser')
- self.icon=QtGui.QIcon()
-
-#*****************************************************************************************
-#
-#*****************************************************************************************
class ViewBrowserWidget(QtGui.QWidget, Ui_ViewBrowserWidget):
IdTabBrowsers = 'tabBrowsers'
@@ -123,14 +111,9 @@
self.menuSideBars = QtGui.QMenu(self.trUtf8('Side bars')) #TODO: retranslate
self.setupUi(self)
- config.ObjectRegistry.register(self)
-
self.isCreated = False
- self._initialConfigDataArrived = False
-
self.fcSettings = Settings.Settings(self).restore()
self.fcActions = Actions.Actions(self)
- self.fcViewObject = BrowserWidgetViewObject(self)
self.fcGlobalFeedback = GlobalFeedback.GlobalFeedback(self, idGlobalFeedback)
# setup
@@ -308,9 +291,10 @@
if browser is None:
return False
- connectionWidget = config.ObjectRegistry.get(config.IdViewConnectionWidget, None)
- if connectionWidget is None:
- raise ValueError('No connection widget found')
+ connectionView = config.ObjectRegistry.get(config.IdViewObjectConnection, None)
+ if connectionView is None:
+ raise ValueError('No connection view found')
+ connectionWidget = connectionView.widget()
# load url
url.setScheme('http')
@@ -774,29 +758,38 @@
#**********************************************************************************
if __name__ == '__main__':
import sys
- from ..ViewLogger import ViewLoggerWidget
- from ..MainWindow import MainWindow
- from ..View import ViewWidget
- from ..ViewConnection import ViewConnectionWidget
- from ..ViewDownloads import ViewDownloadsWidget
+ from ..MainWindow.ViewObject import ViewObjectMainWindow
+ from ..ViewView.ViewObject import ViewObjectView
+ from ..ViewConnection.ViewObject import ViewObjectConnection
+ from ..ViewLogger.ViewObject import ViewObjectLogger
+ from ..ViewBrowser.ViewObject import ViewObjectBrowser
app = QtGui.QApplication(sys.argv)
- mainWindow = MainWindow.MainWindow()
- viewWidget = ViewWidget(mainWindow)
- mainWindow.setCentralWidget(viewWidget)
-
- browserWidget = ViewBrowserWidget(mainWindow)
- viewWidget.addTopViews(
- ViewConnectionWidget(mainWindow),
- browserWidget,
- ViewDownloadsWidget(mainWindow),
+ voMainWindow = ViewObjectMainWindow(None)
+ voMainWindow.create()
+
+ voView = ViewObjectView(voMainWindow)
+ viewWidget = voView.create()
+ voMainWindow.widget().setCentralWidget(viewWidget)
+
+ topViews = (
+ ViewObjectConnection,
+ ViewObjectBrowser,
)
- viewWidget.addBottomViews(
- ViewLoggerWidget(mainWindow),
- )
-
- mainWindow.show()
+ for view in topViews:
+ view = view(voView)
+ view.create()
+ viewWidget.addTopViews(view)
+
+ bottomViews = (
+ ViewObjectLogger,
+ )
+ for view in bottomViews:
+ view = view(voView)
+ view.create()
+ viewWidget.addBottomViews(view)
+
+ voMainWindow.widget().show()
res = app.exec_()
sys.exit(res)
-
Modified: trunk/fclient/fclient/impl/ViewConnection/ViewConnection.py
===================================================================
--- trunk/fclient/fclient/impl/ViewConnection/ViewConnection.py 2008-08-16 08:22:18 UTC (rev 920)
+++ trunk/fclient/fclient/impl/ViewConnection/ViewConnection.py 2008-08-16 10:55:00 UTC (rev 921)
@@ -95,17 +95,6 @@
spinPort = parent.controlById(parent.IdFproxySpinConnectionPort)
spinPort.setValue(self.value('FproxyConnectionPort'))
-
-class ConnectionViewObject(config.ViewObject):
-
- def __init__(self, parent):
- config.ViewObject. __init__(self, parent)
-
- self.name=parent.objectName()
- self.displayName=self.trUtf8('Connection')
- self.icon=QtGui.QIcon()
-
-
#**********************************************************************************
#
#**********************************************************************************
@@ -177,10 +166,8 @@
spinPort.setRange(0, 0xFFFF) #TODO: no idea if port range (0, 0xFFFF) this is reasonable
self._isCreated = False
- config.ObjectRegistry.register(self)
self.fcSettings = Settings(self).restore()
self.fcActions = Actions(self)
- self.fcViewObject = ConnectionViewObject(self)
self.fcGlobalFeedback = GlobalFeedback(self,idGlobalFeedback)
self._connectionTimer = ConnectionTimer(self)
Modified: trunk/fclient/fclient/impl/ViewDownloads/ViewDownloads.py
===================================================================
--- trunk/fclient/fclient/impl/ViewDownloads/ViewDownloads.py 2008-08-16 08:22:18 UTC (rev 920)
+++ trunk/fclient/fclient/impl/ViewDownloads/ViewDownloads.py 2008-08-16 10:55:00 UTC (rev 921)
@@ -78,17 +78,6 @@
# self.labelFeedbackWrap.setPath(unicode(qString))
-
-class DownloadsViewObject(config.ViewObject):
-
- def __init__(self, parent):
- config.ViewObject. __init__(self, parent)
-
- self.name=parent.objectName()
- self.displayName=self.trUtf8('Downloads')
- self.icon=QtGui.QIcon()
-
-
class DownloadsWidgetSettings(config.SettingsBase):
@@ -107,9 +96,7 @@
BaseRequestsWidget.RequestsWidget.__init__(self, parent)
self.setObjectName(config.IdViewDownloadsWidget)
- config.ObjectRegistry.register(self)
self.fcSettings = DownloadsWidgetSettings(self).restore()
- self.fcViewObject = DownloadsViewObject(self)
self.fcGlobalFeedback = DownloadsWidgetGlobalFeedback(self, idGlobalFeedback)
# setup menus
@@ -181,23 +168,39 @@
#**********************************************************************************
if __name__ == '__main__':
import sys
- from .. import View
- from ..ViewConnection import ViewConnection
- from ..ViewLogger import ViewLogger
- from ..MainWindow import MainWindow
-
+ from ..MainWindow.ViewObject import ViewObjectMainWindow
+ from ..ViewView.ViewObject import ViewObjectView
+ from ..ViewConnection.ViewObject import ViewObjectConnection
+ from ..ViewLogger.ViewObject import ViewObjectLogger
+ from ..ViewDownloads.ViewObject import ViewObjectDownloads
+
app = QtGui.QApplication(sys.argv)
- mainWindow = MainWindow.MainWindow()
- viewWidget = View.ViewWidget(mainWindow)
- mainWindow.setCentralWidget(viewWidget)
-
- viewWidget.addTopViews(
- ViewConnection.ViewConnectionWidget(None),
- ViewDownloadsWidget(None),
+ voMainWindow = ViewObjectMainWindow(None)
+ voMainWindow.create()
+
+ voView = ViewObjectView(voMainWindow)
+ viewWidget = voView.create()
+ voMainWindow.widget().setCentralWidget(viewWidget)
+
+ topViews = (
+ ViewObjectConnection,
+ ViewObjectDownloads,
)
- viewWidget.addBottomViews(ViewLogger.ViewLoggerWidget(None))
+ for view in topViews:
+ view = view(voView)
+ view.create()
+ viewWidget.addTopViews(view)
+
+ bottomViews = (
+ ViewObjectLogger,
+ )
+ for view in bottomViews:
+ view = view(voView)
+ view.create()
+ viewWidget.addBottomViews(view)
+
+ voMainWindow.widget().show()
+ res = app.exec_()
+ sys.exit(res)
- mainWindow.show()
- res = app.exec_()
- sys.exit(res)
\ No newline at end of file
Modified: trunk/fclient/fclient/impl/ViewLogger/ViewLogger.py
===================================================================
--- trunk/fclient/fclient/impl/ViewLogger/ViewLogger.py 2008-08-16 08:22:18 UTC (rev 920)
+++ trunk/fclient/fclient/impl/ViewLogger/ViewLogger.py 2008-08-16 10:55:00 UTC (rev 921)
@@ -121,17 +121,6 @@
('ColorFgVerbosityCHATTY', 'QColor', QtGui.QColor('lightslategray')),
)
-
-class LoggerViewObject(config.ViewObject):
-
- def __init__(self, parent):
- config.ViewObject. __init__(self, parent)
-
- self.name=parent.objectName()
- self.displayName=self.trUtf8('Logger')
- self.icon=QtGui.QIcon()
-
-
#***********************************************************************
#
#***********************************************************************
@@ -158,11 +147,8 @@
self._mainWindowMenus = {} #TODO: wrap along with toolbars to a handy class MainWindowStuff
self.setupUi(self)
- config.ObjectRegistry.register(self)
-
self.fcActions = Actions(self)
self.fcSettings = Settings(self).restore()
- self.fcViewObject = LoggerViewObject(self)
self.fcGlobalFeedback = GlobalFeedback(self, idGlobalFeedback)
Modified: trunk/fclient/fclient/impl/ViewUploads/ViewUploads.py
===================================================================
--- trunk/fclient/fclient/impl/ViewUploads/ViewUploads.py 2008-08-16 08:22:18 UTC (rev 920)
+++ trunk/fclient/fclient/impl/ViewUploads/ViewUploads.py 2008-08-16 10:55:00 UTC (rev 921)
@@ -79,17 +79,6 @@
# self.labelFeedbackWrap.setPath(unicode(qString))
-
-class DownloadsViewObject(config.ViewObject):
-
- def __init__(self, parent):
- config.ViewObject. __init__(self, parent)
-
- self.name=parent.objectName()
- self.displayName=self.trUtf8('Uploads')
- self.icon=QtGui.QIcon()
-
-
class UploadsWidgetSettings(config.SettingsBase):
@@ -107,9 +96,7 @@
BaseRequestsWidget.RequestsWidget.__init__(self, parent)
self.setObjectName(config.IdViewUploadsWidget)
- config.ObjectRegistry.register(self)
self.fcSettings = UploadsWidgetSettings(self).restore()
- self.fcViewObject = DownloadsViewObject(self)
self.fcGlobalFeedback = UploadsWidgetGlobalFeedback(self, idGlobalFeedback)
# setup menus
@@ -159,23 +146,38 @@
#**********************************************************************************
if __name__ == '__main__':
import sys
- from .. import View
- from ..ViewConnection import ViewConnection
- from ..ViewLogger import ViewLogger
- from ..MainWindow import MainWindow
-
+ from ..MainWindow.ViewObject import ViewObjectMainWindow
+ from ..ViewView.ViewObject import ViewObjectView
+ from ..ViewConnection.ViewObject import ViewObjectConnection
+ from ..ViewLogger.ViewObject import ViewObjectLogger
+ from ..ViewUploads.ViewObject import ViewObjectUploads
+
app = QtGui.QApplication(sys.argv)
- mainWindow = MainWindow.MainWindow()
- viewWidget = View.ViewWidget(mainWindow)
- mainWindow.setCentralWidget(viewWidget)
-
- viewWidget.addTopViews(
- ViewConnection.ViewConnectionWidget(None),
- ViewUploadsWidget(None),
+ voMainWindow = ViewObjectMainWindow(None)
+ voMainWindow.create()
+
+ voView = ViewObjectView(voMainWindow)
+ viewWidget = voView.create()
+ voMainWindow.widget().setCentralWidget(viewWidget)
+
+ topViews = (
+ ViewObjectConnection,
+ ViewObjectUploads,
)
- viewWidget.addBottomViews(ViewLogger.ViewLoggerWidget(None))
-
- mainWindow.show()
+ for view in topViews:
+ view = view(voView)
+ view.create()
+ viewWidget.addTopViews(view)
+
+ bottomViews = (
+ ViewObjectLogger,
+ )
+ for view in bottomViews:
+ view = view(voView)
+ view.create()
+ viewWidget.addBottomViews(view)
+
+ voMainWindow.widget().show()
res = app.exec_()
sys.exit(res)
\ No newline at end of file
Modified: trunk/fclient/fclient/impl/config.py
===================================================================
--- trunk/fclient/fclient/impl/config.py 2008-08-16 08:22:18 UTC (rev 920)
+++ trunk/fclient/fclient/impl/config.py 2008-08-16 10:55:00 UTC (rev 921)
@@ -50,6 +50,16 @@
IdSideBarLoadDetails = 'SideBarLoadDetails'
+#####
+IdViewObjectBrowser = QtCore.QString('ViewObjectBrowser')
+IdViewObjectConnection = QtCore.QString('ViewObjectConnection')
+IdViewObjectDownloads = QtCore.QString('ViewObjectDownloads')
+IdViewObjectLogger = QtCore.QString('ViewObjectLogger')
+IdViewObjectMainWindow = QtCore.QString('ViewObjectMainWindow')
+IdViewObjectUploads = QtCore.QString('ViewObjectUploads')
+IdViewObjectView = QtCore.QString('ViewObjectView')
+
+
class ObjectRegistry(weakref.WeakValueDictionary):
"""global object registry
@@ -57,19 +67,19 @@
ObjectRegistry is actually a WeakValueDictionary. so use as a dict
"""
- def register(self, obj):
+ def register(self, viewObject):
"""regisdters an object in the registry
- @param obj: (QObject) object to register
+ @param viewObject: view object to register
@note: QObject.objectName() is taken as id. ids have to be unique throughout the runtime of the gui
"""
- ido = str(obj.objectName())
+ ido = viewObject.name()
if ido in self:
- raise ValueError('ui object already registered: %s' % ido)
- self[ido] = obj
+ raise ValueError('view object already registered: %s' % ido)
+ self[ido] = viewObject
+
+ def unregister(self, viewObject):
+ del self[str(viewObject.name())]
- def unregister(self, obj):
- del self[str(obj.objectName())]
-
ObjectRegistry = ObjectRegistry()
#**********************************************************************************
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|