Exemplo n.º 1
0
    def __init__(self, revs, parent=None):
        super(RevisionTab, self).__init__(parent)

        layout = QtGui.QGridLayout()
        layout.addWidget(QtGui.QLabel("Type:"), 1, 0)
        layout.addWidget(QtGui.QLabel("Modification time:"), 2, 0)
        layout.addWidget(QtGui.QLabel("Size:"), 3, 0)
        layout.addWidget(QtGui.QLabel("Stores:"), 4, 0)

        col = 1
        for rev in revs:
            stat = Connector().stat(rev)

            layout.addWidget(RevButton(rev, True), 0, col)
            layout.addWidget(QtGui.QLabel(Registry().getDisplayString(stat.type())), 1, col)
            layout.addWidget(QtGui.QLabel(str(stat.mtime())), 2, col)
            size = 0
            for part in stat.parts():
                size += stat.size(part)
            for unit in ["Bytes", "KiB", "MiB", "GiB"]:
                if size < (1 << 10):
                    break
                else:
                    size = size >> 10
            sizeText = "%d %s (%d parts)" % (size, unit, len(stat.parts()))
            layout.addWidget(QtGui.QLabel(sizeText), 3, col)

            storeLayout = QtGui.QVBoxLayout()
            for store in Connector().lookup_rev(rev):
                storeLayout.addWidget(DocButton(store, True))
            layout.addLayout(storeLayout, 4, col)

            col += 1

        self.setLayout(layout)
 def __update(self):
     if self.__seen:
         self.__unwatch()
         self.__available = len(Connector().lookup_rev(self.__rev)) > 0
     else:
         self.__available = False
         try:
             stat = Connector().stat(self.__rev)
             self.__mtime = stat.mtime()
             self.__seen = True
             self.__available = True
             self.__view._addParents(stat.parents())
             self.__unwatch()
         except IOError:
             self.__watch()
             return
	def __update(self):
		if self.__seen:
			self.__unwatch()
			self.__available = len(Connector().lookup_rev(self.__rev)) > 0
		else:
			self.__available = False
			try:
				stat = Connector().stat(self.__rev)
				self.__mtime = stat.mtime()
				self.__seen = True
				self.__available = True
				self.__view._addParents(stat.parents())
				self.__unwatch()
			except IOError:
				self.__watch()
				return
Exemplo n.º 4
0
    def __init__(self, revs, parent=None):
        super(HistoryTab, self).__init__(parent)

        # TODO: implement something nice gitk like...
        self.__historyList = []
        self.__historyRevs = []
        heads = revs[:]
        while len(heads) > 0:
            newHeads = []
            for rev in heads:
                try:
                    if rev not in self.__historyRevs:
                        stat = Connector().stat(rev)
                        mtime = str(stat.mtime())
                        comment = ""
                        if 'META' in stat.parts():
                            try:
                                with Connector().peek(rev) as r:
                                    metaData = struct.loads(r.readAll('META'))
                                    comment = extractMetaData(
                                        metaData, [
                                            "org.hotchpotch.annotation",
                                            "comment"
                                        ], "")
                            except IOError:
                                pass
                        self.__historyList.append(mtime + " - " + comment)
                        self.__historyRevs.append(rev)
                        newHeads.extend(stat.parents())
                except IOError:
                    pass
            heads = newHeads

        self.__historyListBox = QtGui.QListWidget()
        self.__historyListBox.setSizePolicy(QtGui.QSizePolicy.Ignored,
                                            QtGui.QSizePolicy.Ignored)
        self.__historyListBox.insertItems(0, self.__historyList)
        QtCore.QObject.connect(
            self.__historyListBox,
            QtCore.SIGNAL("itemDoubleClicked(QListWidgetItem *)"), self.__open)

        layout = QtGui.QVBoxLayout()
        layout.addWidget(self.__historyListBox)
        self.setLayout(layout)
Exemplo n.º 5
0
    def __init__(self, revs, parent=None):
        super(HistoryTab, self).__init__(parent)

        # TODO: implement something nice gitk like...
        self.__historyList = []
        self.__historyRevs = []
        heads = revs[:]
        while len(heads) > 0:
            newHeads = []
            for rev in heads:
                try:
                    if rev not in self.__historyRevs:
                        stat = Connector().stat(rev)
                        mtime = str(stat.mtime())
                        comment = ""
                        if "META" in stat.parts():
                            try:
                                with Connector().peek(rev) as r:
                                    metaData = struct.loads(r.readAll("META"))
                                    comment = extractMetaData(metaData, ["org.hotchpotch.annotation", "comment"], "")
                            except IOError:
                                pass
                        self.__historyList.append(mtime + " - " + comment)
                        self.__historyRevs.append(rev)
                        newHeads.extend(stat.parents())
                except IOError:
                    pass
            heads = newHeads

        self.__historyListBox = QtGui.QListWidget()
        self.__historyListBox.setSizePolicy(QtGui.QSizePolicy.Ignored, QtGui.QSizePolicy.Ignored)
        self.__historyListBox.insertItems(0, self.__historyList)
        QtCore.QObject.connect(
            self.__historyListBox, QtCore.SIGNAL("itemDoubleClicked(QListWidgetItem *)"), self.__open
        )

        layout = QtGui.QVBoxLayout()
        layout.addWidget(self.__historyListBox)
        self.setLayout(layout)
Exemplo n.º 6
0
    def __init__(self, revs, parent=None):
        super(RevisionTab, self).__init__(parent)

        layout = QtGui.QGridLayout()
        layout.addWidget(QtGui.QLabel("Type:"), 1, 0)
        layout.addWidget(QtGui.QLabel("Modification time:"), 2, 0)
        layout.addWidget(QtGui.QLabel("Size:"), 3, 0)
        layout.addWidget(QtGui.QLabel("Stores:"), 4, 0)

        col = 1
        for rev in revs:
            stat = Connector().stat(rev)

            layout.addWidget(RevButton(rev, True), 0, col)
            layout.addWidget(
                QtGui.QLabel(Registry().getDisplayString(stat.type())), 1, col)
            layout.addWidget(QtGui.QLabel(str(stat.mtime())), 2, col)
            size = 0
            for part in stat.parts():
                size += stat.size(part)
            for unit in ['Bytes', 'KiB', 'MiB', 'GiB']:
                if size < (1 << 10):
                    break
                else:
                    size = size >> 10
            sizeText = "%d %s (%d parts)" % (size, unit, len(stat.parts()))
            layout.addWidget(QtGui.QLabel(sizeText), 3, col)

            storeLayout = QtGui.QVBoxLayout()
            for store in Connector().lookup_rev(rev):
                storeLayout.addWidget(DocButton(store, True))
            layout.addLayout(storeLayout, 4, col)

            col += 1

        self.setLayout(layout)