From 2dc0881edc87bf0f9e744ee633b280cf32f5979c Mon Sep 17 00:00:00 2001 From: Inso <insomniak.fr@gmail.com> Date: Wed, 5 Feb 2014 19:56:05 +0100 Subject: [PATCH] =?UTF-8?q?Listing=20des=20noeuds=20d'une=20communaut?= =?UTF-8?q?=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/cutecoin/gui/addAccountDialog.py | 11 +++++++---- .../models/account/communities/treeModel.py | 7 +++---- src/cutecoin/models/community/itemModel.py | 2 +- src/cutecoin/models/community/treeModel.py | 16 +++++++++------- src/cutecoin/models/node/itemModel.py | 4 ++-- 5 files changed, 22 insertions(+), 18 deletions(-) diff --git a/src/cutecoin/gui/addAccountDialog.py b/src/cutecoin/gui/addAccountDialog.py index 046914ca..f66916b8 100644 --- a/src/cutecoin/gui/addAccountDialog.py +++ b/src/cutecoin/gui/addAccountDialog.py @@ -6,6 +6,7 @@ Created on 2 févr. 2014 from cutecoin.gen_resources.addAccountDialog_uic import Ui_AddAccountDialog from PyQt5.QtWidgets import QDialog from cutecoin.gui.addCommunityDialog import AddCommunityDialog +from cutecoin.models.account import Account from cutecoin.models.account.communities import Communities from cutecoin.models.account.communities.treeModel import CommunitiesTreeModel @@ -25,21 +26,23 @@ class AddAccountDialog(QDialog, Ui_AddAccountDialog): # Set up the user interface from Designer. super(AddAccountDialog, self).__init__() self.setupUi(self) - self.communities = Communities() self.dialog = AddCommunityDialog(self) + self.setData() def setData(self): - self.communities = Communities() gpg = gnupg.GPG() availableKeys = gpg.list_keys(True) for key in availableKeys: self.pgpkeyList.addItem(key['uids'][0]) + + self.account = Account(self.pgpkeyList.currentText(), "", Communities()) + def openAddCommunityDialog(self): - self.dialog.setCommunities(self.communities) + self.dialog.setCommunities(self.account.communities) self.dialog.exec_() def validAddCommunityDialog(self): - self.communitiesTable.setModel(CommunitiesTreeModel(self.communities)) + self.communitiesTable.setModel(CommunitiesTreeModel(self.account)) diff --git a/src/cutecoin/models/account/communities/treeModel.py b/src/cutecoin/models/account/communities/treeModel.py index 2e6fa0e6..f375b6ef 100644 --- a/src/cutecoin/models/account/communities/treeModel.py +++ b/src/cutecoin/models/account/communities/treeModel.py @@ -5,10 +5,9 @@ Created on 5 févr. 2014 ''' from PyQt5.QtCore import QAbstractItemModel, Qt, QModelIndex -from cutecoin.models.node.itemModel import NodeTreeItem from cutecoin.models.account.communities.itemModel import CommunitiesItemModel from cutecoin.models.community.itemModel import CommunityItemModel -from cutecoin.models.node.itemModel import MainNodeTreeItem +from cutecoin.models.node.itemModel import MainNodeItem, NodeItem class CommunitiesTreeModel(QAbstractItemModel): ''' @@ -93,10 +92,10 @@ class CommunitiesTreeModel(QAbstractItemModel): communityItem = CommunityItemModel(community, self) self.rootItem.appendChild(communityItem) for mainNode in community.knownNodes: - mainNodeItem = MainNodeTreeItem(mainNode, communityItem) + mainNodeItem = MainNodeItem(mainNode, communityItem) communityItem.appendChild(mainNodeItem) for node in mainNode.downstreamPeers(): - nodeItem = NodeTreeItem(node, mainNodeItem) + nodeItem = NodeItem(node, mainNodeItem) mainNodeItem.appendChild(nodeItem) diff --git a/src/cutecoin/models/community/itemModel.py b/src/cutecoin/models/community/itemModel.py index 61ccfbcd..60c05d74 100644 --- a/src/cutecoin/models/community/itemModel.py +++ b/src/cutecoin/models/community/itemModel.py @@ -20,7 +20,7 @@ class CommunityItemModel(object): return len(self.mainNodeItems) def columnCount(self): - return len(self.itemData) + return 1 def data(self, column): try: diff --git a/src/cutecoin/models/community/treeModel.py b/src/cutecoin/models/community/treeModel.py index 53d4b71b..1515fc40 100644 --- a/src/cutecoin/models/community/treeModel.py +++ b/src/cutecoin/models/community/treeModel.py @@ -5,7 +5,7 @@ Created on 5 févr. 2014 ''' from PyQt5.QtCore import QAbstractItemModel, QModelIndex, Qt -from cutecoin.models.node.itemModel import NodeTreeItem +from cutecoin.models.node.itemModel import MainNodeItem, NodeItem from cutecoin.models.community.itemModel import CommunityItemModel class CommunityTreeModel(QAbstractItemModel): @@ -33,7 +33,7 @@ class CommunityTreeModel(QAbstractItemModel): item = index.internalPointer() - return item.data + return item.data(0) def flags(self, index): if not index.isValid(): @@ -43,7 +43,7 @@ class CommunityTreeModel(QAbstractItemModel): def headerData(self, section, orientation, role): if orientation == Qt.Horizontal and role == Qt.DisplayRole: - return self.rootItem.data + return self.rootItem.data(0) return None @@ -87,12 +87,14 @@ class CommunityTreeModel(QAbstractItemModel): def refreshTreeNodes(self): + + print("root : " + self.rootItem.data(0)) for mainNode in self.community.knownNodes: - mainNodeItem = NodeTreeItem(mainNode, self.rootItem) - print("mainNode : " + mainNode.getText()) + mainNodeItem = MainNodeItem(mainNode, self.rootItem) + print("mainNode : " + mainNode.getText() + " / " + mainNodeItem.data(0)) self.rootItem.appendChild(mainNodeItem) for node in mainNode.downstreamPeers(): - print("\t node : " + node.getText()) - nodeItem = NodeTreeItem(node, mainNodeItem) + nodeItem = NodeItem(node, mainNodeItem) + print("\t node : " + node.getText()+ " / " + nodeItem.data(0)) mainNodeItem.appendChild(nodeItem) diff --git a/src/cutecoin/models/node/itemModel.py b/src/cutecoin/models/node/itemModel.py index 61f16e28..c5f3afcb 100644 --- a/src/cutecoin/models/node/itemModel.py +++ b/src/cutecoin/models/node/itemModel.py @@ -5,7 +5,7 @@ Created on 5 févr. 2014 ''' -class NodeTreeItem(object): +class NodeItem(object): def __init__(self, node, mainNodeItem=None): self.mainNodeItem = mainNodeItem self.nodeText = node.getText() @@ -37,7 +37,7 @@ class NodeTreeItem(object): return 0 -class MainNodeTreeItem(object): +class MainNodeItem(object): def __init__(self, mainNode, communityItem=None): self.communityItem = communityItem self.mainNodeText = mainNode.getText() -- GitLab