Esempio n. 1
0
    def event_msg(self, id, val):
        data = Qt.QByteArray()

        s_val = "%04d" % val
        data.append(s_val)

        s_id = "%04d" % id
        data.append(s_id)

        return data
Esempio n. 2
0
    def restoreState(self, state):
        """
        Restore state of workspace's layout.

        Arguments:
            state (str): String representation of layout state.
        """
        if not state:
            return
        state = state.split(";")
        data = {}
        for item in state:
            value = item.split("=")
            if len(value) > 1:
                data[str(value[0])] = value[1]
        if "history_hdata" in data:
            state = Q.QByteArray(data["history_hdata"])
            self.history_hsplitter.restoreState(state)
        if "case_hdata" in data:
            state = Q.QByteArray(data["case_hdata"])
            self.case_hsplitter.restoreState(state)
        if "case_vdata" in data:
            state = Q.QByteArray(data["case_vdata"])
            self.case_vsplitter.restoreState(state)
Esempio n. 3
0
    def saveState(self):
        """
        Save state of workspace's layout.

        Returns:
            str: String representation of layout state, suitable for storage in
            preference file.
        """
        history_hdata = Q.QByteArray.\
            toBase64(self.history_hsplitter.saveState())
        case_hdata = Q.QByteArray.toBase64(self.case_hsplitter.saveState())
        case_vdata = Q.QByteArray.toBase64(self.case_vsplitter.saveState())
        data = []
        data.append("{}={}".format("history_hdata", history_hdata))
        data.append("{}={}".format("case_hdata", case_hdata))
        data.append("{}={}".format("case_vdata", case_vdata))
        return Q.QByteArray(str(";".join(data)))
Esempio n. 4
0
 def mimeData(self, midxs):
     mime_data = super().mimeData(midxs)
     if mime_data is None:
         mime_data = Qt.QMimeData()
     d = Qt.QByteArray()
     ds = Qt.QDataStream(d, Qt.QIODevice.WriteOnly)
     ds.writeUInt64(id(self))
     # There is an midx for every column of the dragged row(s), but our ROW_DRAG_MIME_TYPE data should contain only one entry per row
     packed_rows = set()
     for midx in midxs:
         assert midx.isValid()
         row = midx.row()
         if row in packed_rows:
             continue
         packed_rows.add(row)
         ds.writeInt64(row)
     mime_data.setData(ROWS_DRAG_MIME_TYPE, d)
     return mime_data