class MainWindow(QMainWindow): def __init__(self, clnt_socket): QMainWindow.__init__(self) self.ui = Ui_MainWindow() self.ui.setupUi(self) self.clnt_socket = clnt_socket self.file_tv = FileView(self.ui.fileTabView, self.clnt_socket) self.local_tree = LocalTree(self.ui.localFileTv, self.file_tv) self.remote_tree = RemoteTree(self.ui.remoteFileTv, self.file_tv, self.clnt_socket) self.clnt_socket.mw_signal.connect(self.mw_update) def mw_update(self, ui_data): if self.isHidden(): self.show() if ui_data[0] == HW_DATA_TYPE_LOGIN: # [data_type, cid, [{"name":"hp", "cid":1}, {"name":"dell", "cid":2}]] login self.remote_tree.tree_view_update(ui_data) elif ui_data[0] == HW_DATA_TYPE_CMD: # [data_type, cid, cmd, path, list] tree/list if ui_data[2] is "tree": self.remote_tree.tree_view_update(ui_data) else: self.file_tv.file_view_update(ui_data)
def __init__(self, clnt_socket): QMainWindow.__init__(self) self.ui = Ui_MainWindow() self.ui.setupUi(self) self.clnt_socket = clnt_socket self.file_tv = FileView(self.ui.fileTabView, self.clnt_socket) self.local_tree = LocalTree(self.ui.localFileTv, self.file_tv) self.remote_tree = RemoteTree(self.ui.remoteFileTv, self.file_tv, self.clnt_socket) self.clnt_socket.mw_signal.connect(self.mw_update)
def __init__(self,parent= None): # QMainWindow.__init__(self) super(client, self).__init__(parent) self.ui = Ui_MainWindow() self.ui.setupUi(self) self.userModel = QStandardItemModel() self.itemHeadFriend=QStandardItem() self.itemHeadFriend.setData("linkMan",QtCore.Qt.DisplayRole) self.itemHeadStatis=QStandardItem() self.itemHeadStatis.setData("status",QtCore.Qt.DisplayRole) self.userModel.setHorizontalHeaderItem(0,self.itemHeadFriend) self.userModel.setHorizontalHeaderItem(1,self.itemHeadStatis) self.itemFriend=QStandardItem() self.itemFriend.setData("friend",QtCore.Qt.DisplayRole) self.userModel.insertRow(0,self.itemFriend) self.ui.linkManTreeView.setModel(self.userModel) self.connecting=None QtCore.QObject.connect(self.ui.linkManTreeView, QtCore.SIGNAL("clicked(QModelIndex)"), self,QtCore.SLOT("createMessageFrame(QModelIndex)")) self.messageFrame={}
class client(QMainWindow): def __init__(self,parent= None): # QMainWindow.__init__(self) super(client, self).__init__(parent) self.ui = Ui_MainWindow() self.ui.setupUi(self) self.userModel = QStandardItemModel() self.itemHeadFriend=QStandardItem() self.itemHeadFriend.setData("linkMan",QtCore.Qt.DisplayRole) self.itemHeadStatis=QStandardItem() self.itemHeadStatis.setData("status",QtCore.Qt.DisplayRole) self.userModel.setHorizontalHeaderItem(0,self.itemHeadFriend) self.userModel.setHorizontalHeaderItem(1,self.itemHeadStatis) self.itemFriend=QStandardItem() self.itemFriend.setData("friend",QtCore.Qt.DisplayRole) self.userModel.insertRow(0,self.itemFriend) self.ui.linkManTreeView.setModel(self.userModel) self.connecting=None QtCore.QObject.connect(self.ui.linkManTreeView, QtCore.SIGNAL("clicked(QModelIndex)"), self,QtCore.SLOT("createMessageFrame(QModelIndex)")) self.messageFrame={} def addLinkMan(self,linkMan,status): '''添加联系人''' itemLinkMan=QStandardItem() itemLinkMan.setData(linkMan,QtCore.Qt.DisplayRole) itemLinkManStatus=QStandardItem() itemLinkManStatus.setData(status,QtCore.Qt.DisplayRole) self.itemFriend.appendRow([itemLinkMan,itemLinkManStatus]) def createTempMessageFrame(self,user,friend): uiDebug(self.messageFrame) if self.messageFrame.has_key(friend): self.messageFrame[friend].show() else: try: frame = messageWin(self,user,friend) frame.setWindowTitle(friend) self.messageFrame[friend]=frame frame.show() #pylint: disable=W0702 except: pass uiDebug("mainPanelUi createMessageFrame()") def createMessageFrame(self,QModelIndex): '''创建对话窗口''' friend= self.userModel.data(QModelIndex) if self.userModel.indexFromItem(self.itemFriend) == QModelIndex: return if friend == "": return if friend == "inline": return uiDebug(self.messageFrame) if self.messageFrame.has_key(friend): self.messageFrame[friend].show() else: try: frame = messageWin(self,self.user,friend) frame.setWindowTitle(friend) self.messageFrame[friend]=frame frame.show() #pylint: disable=W0702 except: pass uiDebug("mainPanelUi createMessageFrame()")