def set_row_file_name(self, file_name, row_index, is_checked=True):
     file_name_item = QTableWidgetItem(" " + file_name)
     if is_checked:
         file_name_item.setCheckState(Qt.Checked)
     else:
         file_name_item.setCheckState(Qt.Unchecked)
     self.setItem(row_index, 0, file_name_item)
    def _addObjectToTable(self, row, name, obj, checked=True):
        typeName = obj.typeName
        print('adding to table: %s (%s)' % (name, typeName))
        tableItem = QTableWidgetItem(name)
        if checked:
            tableItem.setCheckState(Qt.Checked)
        else:
            tableItem.setCheckState(Qt.Unchecked)

        self._ui.tableWidget.setItem(
            row, self.objectTableHeaderColumns['landmarks'], tableItem)
Exemple #3
0
 def _fill_list_with_joints(self, controller):
     #self.jointTableWidget.clear()
     for joint_name in controller.get_animated_joints():
         insertRow = self.jointTableWidget.rowCount()
         self.jointTableWidget.insertRow(insertRow)
         indexItem = QTableWidgetItem("")
         indexItem.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled)
         indexItem.setCheckState(Qt.Unchecked)
         self.jointTableWidget.setItem(insertRow, 0, indexItem)
         self.jointTableWidget.setItem(insertRow, 1,
                                       QTableWidgetItem(str(joint_name)))
Exemple #4
0
    def addObjectToList(self, sceneId, name, color):
        insertRow = self.rowCount()
        self.insertRow(insertRow)

        indexItem = QTableWidgetItem(str(sceneId))
        indexItem.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled)
        indexItem.setCheckState(Qt.Checked)

        self.setItem(insertRow, 0, indexItem)
        self.setItem(insertRow, 1, QTableWidgetItem(str(name)))
        self.setItem(insertRow, 2, QTableWidgetItem(""))
        self.item(insertRow, 2).setBackground(
            QColor(255 * color[0], 255 * color[1], 255 * color[2]))
 def fill_db_table_with_skeletons(self):
     self.db_skeletons = []
     self.skeletonDBTableWidget.clear()
     skeleton_list = get_skeletons_from_remote_db(self.db_url)
     for idx, s in skeleton_list:
         insertRow = self.skeletonDBTableWidget.rowCount()
         self.skeletonDBTableWidget.insertRow(insertRow)
         indexItem = QTableWidgetItem("")
         indexItem.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled)
         indexItem.setCheckState(Qt.Checked)
         self.skeletonDBTableWidget.setItem(insertRow, 0, indexItem)
         self.skeletonDBTableWidget.setItem(insertRow, 1, QTableWidgetItem(str(s)))
         self.db_skeletons.append(s)
Exemple #6
0
    def _addObjectToTable(self, row, name, obj, checked=True):
        typeName = obj.typeName
        # print typeName
        # print name
        tableItem = QTableWidgetItem(name)
        if checked:
            tableItem.setCheckState(Qt.Checked)
        else:
            tableItem.setCheckState(Qt.Unchecked)

        self._ui.tableWidget.setItem(row,
                                     self.objectTableHeaderColumns['visible'],
                                     tableItem)
 def fill_local_table_with_skeletons(self):
     self.skeletonLocalTableWidget.clear()
     self.local_skeletons = []
     
     if not os.path.isdir(self.local_skeleton_dir):
         return
     for filename in glob.glob(self.local_skeleton_dir + os.sep + "*.json"):
         name = filename.split(os.sep)[-1][:-5]
         insertRow = self.skeletonLocalTableWidget.rowCount()
         self.skeletonLocalTableWidget.insertRow(insertRow)
         indexItem = QTableWidgetItem("")
         indexItem.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled)
         indexItem.setCheckState(Qt.Unchecked)
         self.skeletonLocalTableWidget.setItem(insertRow, 0, indexItem)
         self.skeletonLocalTableWidget.setItem(insertRow, 1, QTableWidgetItem(str(name)))
         self.local_skeletons.append(name)
Exemple #8
0
 def go_result(self):
     self.ui.table_result.clear()
     self.ui.table_result.setRowCount(self.now.wil_max)
     self.ui.table_result.setColumnCount(2)
     self.ui.table_result.setHorizontalHeaderItem(0, QTableWidgetItem("답"))
     self.ui.table_result.setHorizontalHeaderItem(1, QTableWidgetItem("대답"))
     self.ui.table_result.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
     for i, (v, r) in enumerate(zip(self.now.sample, self.now.replies)):
         item1 = QTableWidgetItem(f"{self.now.now_tds.vec2element(v)}")
         item1.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
         item2 = QTableWidgetItem(f"{r}")
         item2.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled | Qt.ItemIsUserCheckable)
         item2.setCheckState(Qt.Unchecked) # TODO: 일치 과정
         self.ui.table_result.setItem(i, 0, item1)
         self.ui.table_result.setItem(i, 1, item2)
     self.ui.front.setCurrentIndex(7)
Exemple #9
0
 def update_table_opacities(self, allalpha=None):
     bin_opacitieslst = eval(self.bin_opacities)
     self.binstable_isready = False
     for binopacity in bin_opacitieslst:
         if not allalpha:
             alpha = float(binopacity.split(",")[0])
         else:
             alpha = allalpha
         bin = int(binopacity.split(",")[1])
         item = QTableWidgetItem()
         item.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled)
         if alpha < 0.5:
             item.setCheckState(Qt.Unchecked)
         else:
             item.setCheckState(Qt.Checked)
         item.setFlags(item.flags() ^ Qt.ItemIsEditable)
         self.binstable.setItem(bin, 3, item)
     self.binstable_isready = True
 def populate_table_view(self):
     object_class_name_list = self.relationship_class[
         "object_class_name_list"].split(",")
     self.table_view.setRowCount(len(self.relationships))
     self.table_view.setColumnCount(len(object_class_name_list) + 1)
     labels = [""] + object_class_name_list
     self.table_view.setHorizontalHeaderLabels(labels)
     self.table_view.verticalHeader().hide()
     for row, relationship in enumerate(self.relationships):
         item = QTableWidgetItem()
         item.setFlags(Qt.ItemIsEnabled)
         item.setCheckState(Qt.Checked)
         self.table_view.setItem(row, 0, item)
         for column, object_name in enumerate(relationship):
             item = QTableWidgetItem(object_name)
             item.setFlags(Qt.ItemIsEnabled)
             self.table_view.setItem(row, column + 1, item)
     self.table_view.resizeColumnsToContents()
     self.resize_window_to_columns()
Exemple #11
0
    def show_playlists(self):
        dirs = get_dir_of_db()
        webdb_dat = dirs['webdb.dat']
        self.playlists = get_playlist(webdb_dat)

        # 这个地方本来想用enumerate, 但是因为没有歌的歌单要跳过,所以就不能用了
        i = 0
        for pid, playlist in self.playlists.items():
            if len(playlist['songs']) == 0:
                continue
            self.tableWidget.insertRow(i)
            item1 = QTableWidgetItem(playlist['playlist_name'])
            item1.setFlags(Qt.ItemIsSelectable | Qt.ItemIsUserCheckable | Qt.ItemIsEnabled)
            item1.setCheckState(Qt.Unchecked)
            self.tableWidget.setItem(i, 0, item1)

            item2 = QTableWidgetItem(str(len(playlist['songs'])))
            item2.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
            self.tableWidget.setItem(i, 1, item2)

            item3 = QTableWidgetItem(playlist['username'])
            item3.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
            self.tableWidget.setItem(i, 2, item3)

            self.column2playlist.append(pid)
            i += 1

        # bellows are songs info
        library_dat = dirs['library.dat']
        self.all_song_info = tid2dir_offline(library_dat, webdb_dat)

        # bellows are selecting the playlists which are selected last time
        if self.config['pids']:
            for element in self.get_all_playlist_element():
                pid = self.column2playlist[element.row()]
                if pid in self.config['pids']:
                    element.setCheckState(Qt.Checked)
Exemple #12
0
 def updateTable(self):
     for rowIndex in range(self.sceneObjectTableWidget.rowCount()):
         indexItem = QTableWidgetItem(str(rowIndex))
         indexItem.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled)
         indexItem.setCheckState(Qt.Unchecked)
         self.sceneObjectTableWidget.setItem(rowIndex, 0, indexItem)
Exemple #13
0
    def update(self):
        if self.cctbxproc:
            if self.cctbxproc.stdout:
                print(self.cctbxproc.stdout.read().decode("utf-8"))
            if self.cctbxproc.stderr:
                print(self.cctbxproc.stderr.read().decode("utf-8"))
        if self.out:
            print(self.out.decode("utf-8"))
        if self.err:
            print(self.err.decode("utf-8"))
        if self.zmq_context:
            try:
                msg = self.socket.recv(
                    flags=zmq.NOBLOCK
                )  #To empty the socket from previous messages
                msgstr = msg.decode()
                self.infodict = eval(msgstr)
                #print("received from cctbx: " + str(self.infodict))
                if self.infodict:

                    if self.infodict.get("hklscenes_arrays"):
                        self.hklscenes_arrays = self.infodict.get(
                            "hklscenes_arrays", [])

                    if self.infodict.get("array_infotpls"):
                        self.array_infotpls = self.infodict.get(
                            "array_infotpls", [])

                    if self.infodict.get("bin_data_label"):
                        self.BinDataComboBox.setCurrentText(
                            self.infodict["bin_data_label"])

                    if self.infodict.get("bin_infotpls"):
                        self.bin_infotpls = self.infodict["bin_infotpls"]

                        self.nbins = len(self.bin_infotpls)
                        self.updatingNbins = True
                        self.Nbins_spinBox.setValue(self.nbins)
                        self.updatingNbins = False
                        self.binstable.clearContents()
                        self.binstable.setRowCount(self.nbins)
                        for row, bin_infotpl in enumerate(self.bin_infotpls):
                            for col, elm in enumerate(bin_infotpl):
                                # only allow changing the last column with opacity values
                                if col != 3:
                                    item = QTableWidgetItem(str(elm))
                                else:
                                    item = QTableWidgetItem()
                                    item.setFlags(Qt.ItemIsUserCheckable
                                                  | Qt.ItemIsEnabled)
                                    item.setCheckState(Qt.Checked)
                                item.setFlags(item.flags() ^ Qt.ItemIsEditable)
                                self.binstable.setItem(row, col, item)
                        if self.bin_opacities:
                            self.update_table_opacities()

                    if self.infodict.get("bin_opacities"):
                        self.bin_opacities = self.infodict["bin_opacities"]
                        if self.binstable.rowCount() > 0:
                            self.update_table_opacities()

                    if self.infodict.get("html_url"):
                        self.html_url = self.infodict["html_url"]
                        if self.UseOSbrowser == False:
                            self.BrowserBox.setUrl(self.html_url)
                            # workaround for background colour bug in chromium
                            # https://bugreports.qt.io/browse/QTBUG-41960
                            self.BrowserBox.page().setBackgroundColor(
                                QColor(100, 100, 100, 1.0))

                    if self.infodict.get("spacegroups"):
                        self.spacegroups = self.infodict.get("spacegroups", [])
                        self.SpaceGroupComboBox.clear()
                        self.SpaceGroupComboBox.addItems(self.spacegroups)

                    if self.infodict.get("merge_data"):
                        self.mergedata = self.infodict["merge_data"]

                    currentinfostr = ""
                    if self.infodict.get("info"):
                        currentinfostr = self.infodict.get("info", [])

                    if self.infodict.get("NewFileLoaded"):
                        self.NewFileLoaded = self.infodict.get(
                            "NewFileLoaded", False)

                    if self.infodict.get("NewHKLscenes"):
                        self.NewHKLscenes = self.infodict.get(
                            "NewHKLscenes", False)

                    self.fileisvalid = True
                    #print("ngl_hkl_infodict: " + str(ngl_hkl_infodict))

                    if currentinfostr:
                        #print(currentinfostr)
                        self.infostr += currentinfostr + "\n"
                        # display no more than self.bufsize bytes of text
                        self.infostr = self.infostr[-self.bufsize:]
                        self.textInfo.setPlainText(self.infostr)
                        self.textInfo.verticalScrollBar().setValue(
                            self.textInfo.verticalScrollBar().maximum())

                    if self.NewFileLoaded and self.NewHKLscenes:
                        #if self.mergedata == True : val = Qt.CheckState.Checked
                        #if self.mergedata == None : val = Qt.CheckState.PartiallyChecked
                        #if self.mergedata == False : val = Qt.CheckState.Unchecked
                        #self.mergecheckbox.setCheckState(val )
                        #print("got hklscenes: " + str(self.hklscenes_arrays))

                        self.MillerComboBox.clear()
                        self.MillerComboBox.addItems(
                            [e[3] for e in self.hklscenes_arrays])
                        self.MillerComboBox.setCurrentIndex(
                            -1)  # unselect the first item in the list
                        self.comboviewwidth = 0
                        for e in self.hklscenes_arrays:
                            self.comboviewwidth = max(
                                self.comboviewwidth,
                                self.MillerComboBox.fontMetrics().width(e[3]))
                        self.MillerComboBox.view().setMinimumWidth(
                            self.comboviewwidth)

                        self.millertable.clearContents()
                        self.millertable.setRowCount(len(
                            self.hklscenes_arrays))
                        for n, millarr in enumerate(self.array_infotpls):
                            for m, elm in enumerate(millarr):
                                self.millertable.setItem(
                                    n, m, QTableWidgetItem(str(elm)))
                        self.functionTabWidget.setDisabled(True)
                        self.NewFileLoaded = False

                    if self.NewHKLscenes:
                        self.BinDataComboBox.clear()
                        self.BinDataComboBox.addItems(
                            ["Resolution"] +
                            [e[3] for e in self.hklscenes_arrays])
                        self.BinDataComboBox.view().setMinimumWidth(
                            self.comboviewwidth)
                        #self.BinDataComboBox.setCurrentIndex(-1) # unselect the first item in the list
                        self.NewHKLscenes = False

            except Exception as e:
                errmsg = str(e)
                if "Resource temporarily unavailable" not in errmsg:
                    print(errmsg + traceback.format_exc(limit=10))
                pass
Exemple #14
0
 def createCheckBoxItem(self):
     checkbox = QTableWidgetItem(True)
     checkbox.setCheckState(Qt.Checked)
     return checkbox
Exemple #15
0
    def build_analysis(self) -> None:
        """"""
        columns = ['Data analisys',
                   'PID',
                   'CPU%',
                   'Memory',
                   'Status',
                   ]

        start_index = self.parent_frame.tableWidget_anlaysis.rowCount() - 1
        if self.parent_frame.tableWidget_anlaysis.rowCount() == 0:
            self.parent_frame.tableWidget_anlaysis.clear()
            self.parent_frame.tableWidget_anlaysis.setRowCount(0)
            self.parent_frame.tableWidget_anlaysis.setColumnCount(len(columns))
            self.parent_frame.tableWidget_anlaysis.setHorizontalHeaderLabels(
                columns)
            already_items = []

            to_remove = []
            to_add = [self.parent_frame.listWidget_projects_analysis.item(i).text(
            ) for i in range(self.parent_frame.listWidget_projects_analysis.count())]

        else:
            # start_index = 0
            already_items = [self.parent_frame.tableWidget_anlaysis.item(
                i, 0).text() for i in range(self.parent_frame.tableWidget_anlaysis.rowCount())]
            new_ones = [self.parent_frame.listWidget_projects_analysis.item(
                i).text() for i in range(self.parent_frame.listWidget_projects_analysis.count())]

            to_remove = set(already_items) - set(new_ones)
            to_add = set(new_ones) - set(already_items)

        for i, script_name in enumerate(to_add):

            if script_name.startswith('_'):
                continue

            if script_name in already_items:
                continue

            # if item.text().startswith('Tutorial |'):
                # continue

            self.parent_frame.tableWidget_anlaysis.insertRow(start_index + i)
            for j in range(len(columns)):

                if j == 0:
                    item = QTableWidgetItem(script_name)
                    item.setCheckState(Qt.Unchecked)
                    item.is_running = False
                else:
                    item = QTableWidgetItem()

                if 0 < j < 4:
                    item.setTextAlignment(Qt.AlignCenter)

                item.setFlags(item.flags() & ~Qt.ItemIsEditable
                              & ~Qt.ItemIsSelectable)
                self.parent_frame.tableWidget_anlaysis.setItem(
                    start_index + i, j, item)

                self.parent_frame.tableWidget_anlaysis.cellWidget(
                    start_index + i, j)

        for script_name in to_remove:
            for i in range(self.parent_frame.tableWidget_anlaysis.rowCount()):
                item = self.parent_frame.tableWidget_anlaysis.item(i, 0)
                if item.text() == script_name:
                    if not item.checkState() == Qt.Checked:
                        self.parent_frame.tableWidget_anlaysis.removeRow(i)
                    else:
                        item.to_remove = True
                    break

        self.parent_frame.tableWidget_anlaysis.sortByColumn(0)
 def set_row_file_name(self, file_name, row_index):
     file_name_item = QTableWidgetItem(" " + file_name)
     file_name_item.setCheckState(Qt.Checked)
     self.setItem(row_index, self.column_ids["Name"], file_name_item)