Пример #1
0
    def geomTreeWidgetChanged(self):
        print("geomTreeWidgetChanged")

        self.partitionsListWidget.clear()

        self.mountAction.setEnabled(False)
        self.unmountAction.setEnabled(False)

        pp = pprint.PrettyPrinter(width=41)

        # If a physical device was selected
        if hasattr(self.geomTreeWidget.selectedItems()[0], "di"):
            di = getattr(self.geomTreeWidget.selectedItems()[0], "di")
            self.partitionsListWidget.setStyleSheet(
                "QListWidget::item { text-align: center; margin-left: 2px; margin-right: 2px; margin-top: 2px; border: 2px solid grey }"
            )
            partitions = disks.get_partitions(di["name"])
            self.detailsPlainTextEdit.setPlainText(
                pp.pformat(di) + "\n\n" + pp.pformat(partitions))
            if len(partitions) > 0:
                partitions.pop(0)
                for p in partitions:
                    if p.name == None:
                        continue
                    item = QListWidgetItem(p.name + "\n" + p.type_or_label +
                                           " " + p.human_readable_size)
                    item.__setattr__("partition", p)
                    self.partitionsListWidget.addItem(item)
Пример #2
0
 def refresh_contact_list(self):
     cb_contact_list.clear()
     if self.TW_contact.currentIndex() == 0:
         self.tab_friend.clear()
         _contact_list = FRIEND_LIST
     elif self.TW_contact.currentIndex() == 1:
         self.tab_group.clear()
         _contact_list = GROUP_LIST
     else:
         self.tab_office.clear()
         _contact_list = OFFICE_LIST
     for i, contact in enumerate(_contact_list):
         widget = ContactWidget(contact, self.contact_select_changed)
         item = QListWidgetItem()
         item.setSizeHint(QSize(200, 50))
         item.__setattr__("wxid", contact["wxid"])
         item.__setattr__("row", i)
         if self.TW_contact.currentIndex() == 0:
             self.tab_friend.addItem(item)
             self.tab_friend.setItemWidget(item, widget)
         elif self.TW_contact.currentIndex() == 1:
             self.tab_group.addItem(item)
             self.tab_group.setItemWidget(item, widget)
         else:
             self.tab_office.addItem(item)
             self.tab_office.setItemWidget(item, widget)
     if current_row:
         if self.TW_contact.currentIndex() == 0:
             self.tab_friend.setCurrentRow(current_row)
         elif self.TW_contact.currentIndex() == 1:
             self.tab_group.setCurrentRow(current_row)
         else:
             self.tab_office.setCurrentRow(current_row)
Пример #3
0
 def search_contact(self):
     search_key = self.TE_contact_search.toPlainText()
     if search_key:
         if self.TW_contact.currentIndex() == 0:
             _contact_list = FRIEND_LIST
         elif self.TW_contact.currentIndex() == 1:
             _contact_list = GROUP_LIST
         else:
             _contact_list = OFFICE_LIST
         _list = []
         for contact in _contact_list:
             if search_key in contact["nickname"]:
                 _list.append(contact)
             elif remark := contact.get("remark"):
                 if search_key in remark:
                     _list.append(contact)
         self.LW_contact_search.clear()
         if _list:
             for contact in _list:
                 widget = ContactSearchWidget(contact)
                 item = QListWidgetItem()
                 item.setSizeHint(QSize(200, 50))
                 item.__setattr__("wxid", contact["wxid"])
                 self.LW_contact_search.addItem(item)
                 self.LW_contact_search.setItemWidget(item, widget)
             self.LW_contact_search.show()
             _list.clear()
         else:
             self.LW_contact_search.hide()
Пример #4
0
                    self.spy.query_contact_details(wxid)
        elif _type == 5:
            # 聊天消息
            for msg in data["data"]:
                if msg["msg_type"] == 37 and self.setting_widget.cb_auto_accept.checkState(
                ):
                    encryptusername = re.search(
                        "(?<=encryptusername=\").*?(?=\")",
                        msg["content"]).group()
                    ticket = re.search("(?<=ticket=\").*?(?=\")",
                                       msg["content"]).group()
                    self.spy.accept_new_contact(encryptusername, ticket)
                else:
                    widget = MessageWidget(msg)
                    item = QListWidgetItem()
                    item.__setattr__("wxid1", msg["wxid1"])
                    item.__setattr__("wxid2", "")
                    item.__setattr__("content", "")
                    if wxid2 := msg.get("wxid2"):
                        item.__setattr__("wxid2", wxid2)
                    if msg["msg_type"] == 1 or msg["msg_type"] == 1000:
                        item.__setattr__("content", msg["content"])
                        item.setToolTip(msg["content"])
                    item.setSizeHint(QSize(234, 65))
                    self.LW_chat_record.addItem(item)
                    self.LW_chat_record.setItemWidget(item, widget)
                    self.LW_chat_record.setCurrentRow(
                        self.LW_chat_record.count() - 1)

    def refresh_contact_list(self):
        cb_contact_list.clear()