mirror of
https://github.com/avrdudes/avrdude.git
synced 2026-09-29 20:38:44 +03:00
Implement progress indication
This commit is contained in:
@@ -154,6 +154,7 @@ class adgui(QObject):
|
||||
self.app = QApplication(sys.argv)
|
||||
|
||||
ad.set_msg_callback(self.msg_callback)
|
||||
ad.set_progress_callback(self.progress_callback)
|
||||
self.port = None
|
||||
self.dev_selected = None
|
||||
self.prog_selected = None
|
||||
@@ -279,6 +280,21 @@ class adgui(QObject):
|
||||
s += msg
|
||||
self.log(s, msglvl)
|
||||
|
||||
def progress_callback(self, percent: int, etime: float, hdr: str, finish: int):
|
||||
if hdr:
|
||||
self.adgui.operation.setText(hdr)
|
||||
self.adgui.progressBar.setEnabled(True)
|
||||
if finish != 0:
|
||||
self.adgui.progressBar.setValue(0)
|
||||
self.adgui.progressBar.setEnabled(False)
|
||||
self.adgui.time.setText("-:--")
|
||||
self.adgui.operation.setText("")
|
||||
else:
|
||||
self.adgui.progressBar.setValue(percent)
|
||||
secs = etime % 60
|
||||
mins = etime // 60
|
||||
self.adgui.time.setText(f"{mins}:{secs:02d}")
|
||||
|
||||
def update_device_cb(self):
|
||||
fams = list(self.devices.keys())
|
||||
#fams.sort()
|
||||
|
||||
@@ -31,7 +31,13 @@
|
||||
<number>15</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="percentage">
|
||||
<widget class="QLabel" name="operation">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>100</width>
|
||||
@@ -39,7 +45,7 @@
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>-- %</string>
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -64,6 +70,9 @@
|
||||
<property name="text">
|
||||
<string>--:--</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
|
||||
Reference in New Issue
Block a user