PERFORCE change 123536 for review
Andrew Turner
andrew at FreeBSD.org
Sun Jul 15 12:09:42 UTC 2007
http://perforce.freebsd.org/chv.cgi?CH=123536
Change 123536 by andrew at andrew_hermies on 2007/07/15 12:08:40
Create a model for the update view and pass it to the controller
Parse the response from the list_updates call and display it
Affected files ...
.. //depot/projects/soc2007/andrew-update/frontend/facund.py#8 edit
.. //depot/projects/soc2007/andrew-update/frontend/facund/controller.py#2 edit
Differences ...
==== //depot/projects/soc2007/andrew-update/frontend/facund.py#8 (text+ko) ====
@@ -38,14 +38,16 @@
# fc.interact()
if __name__ == "__main__":
- model = facund.gui.ComputerTreeModel()
+ computerModel = facund.gui.ComputerTreeModel()
localComputer = facund.Computer("Local computer", '/tmp/facund')
localComputer.addDir('/')
- model.addComputer(localComputer)
+ computerModel.addComputer(localComputer)
+
+ updateModel = facund.gui.UpdateListModel()
mainWindow = facund.gui.MainWindow('facund-fe.glade')
- controller = facund.Controller(model, mainWindow);
+ controller = facund.Controller(mainWindow, computerModel, updateModel);
controller.run()
==== //depot/projects/soc2007/andrew-update/frontend/facund/controller.py#2 (text+ko) ====
@@ -25,12 +25,14 @@
#
class Controller:
- def __init__(self, computersModel, view):
+ def __init__(self, view, computersModel, updateModel):
self.__view = view
self.__view.setController(self)
self.__computersModel = computersModel
self.__view.setComputerTreeModel(self.__computersModel)
self.__currentComputer = None
+ self.__updateModel = updateModel
+ self.__view.setUpdateViewModel(self.__updateModel)
def run(self):
self.__view.run()
@@ -49,7 +51,16 @@
return
command = dir.getCommands()[position[2]]
- dir.runCommand(position[2])
+ response = dir.runCommand(position[2])
+ data = response.getData()
+ item = data.getData()[0]
+ # Each item will be a pair of <dir, update list>
+ pair = item.getData()
+ theDir = pair[0].getData()
+
+ self.__updateModel.empty()
+ for update in pair[1].getData():
+ self.__updateModel.addUpdate(update)
def getCurrentComputer(self):
return self.__currentComputer
More information about the p4-projects
mailing list