Skip to content

Commit 6029c22

Browse files
committed
Added automatic autocroll enable/disable when vertical scroll bars goes in/out maximum bottom position.
1 parent 4df9665 commit 6029c22

3 files changed

Lines changed: 27 additions & 13 deletions

File tree

SUSTerm/SUSTerm.pro

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
QT += core gui
88
QT += serialport
99

10+
RC_ICONS = res/SUSTerm_ICO.png
1011
RC_FILE = resourcecollection.rc
1112

1213
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

SUSTerm/mainwindow.cpp

Lines changed: 23 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,20 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWi
7474
{
7575
if(scroll_ascii_slider_pos_v != current_slider_pos_v)
7676
{
77+
// Disable autoscroll checkbox if move out of bottom
78+
if(scroll_ascii_slider_pos_v < current_slider_pos_v)
79+
{
80+
if(ui->checkBox_autoScroll->isChecked())
81+
ui->checkBox_autoScroll->setChecked(false);
82+
}
83+
84+
// Enable autoscroll checkbox if move to bottom
85+
if(scroll_ascii_slider_pos_v >= scroll_ascii_v->maximum())
86+
{
87+
if(!ui->checkBox_autoScroll->isChecked())
88+
ui->checkBox_autoScroll->setChecked(true);
89+
}
90+
7791
scroll_hex_v->setValue(scroll_ascii_slider_pos_v);
7892
current_slider_pos_v = scroll_ascii_slider_pos_v;
7993
}
@@ -327,19 +341,15 @@ void MainWindow::CheckBoxAutoScrollToggled(void)
327341
{
328342
debug_print("Auto-Scroll CheckBox changed.");
329343

330-
// If user check autoscroll, move scroll bars to default positions
331-
if(ui->checkBox_autoScroll->isChecked())
332-
{
333-
QScrollBar *vertical_bar_ascii = ui->textBrowser_serial_0->verticalScrollBar();
334-
QScrollBar *horizontal_bar_ascii = ui->textBrowser_serial_0->horizontalScrollBar();
335-
QScrollBar *vertical_bar_hex = ui->textBrowser_serial_1->verticalScrollBar();
336-
QScrollBar *horizontal_bar_hex = ui->textBrowser_serial_1->horizontalScrollBar();
337-
338-
vertical_bar_ascii->setValue(vertical_bar_ascii->maximum());
339-
vertical_bar_hex->setValue(vertical_bar_hex->maximum());
340-
horizontal_bar_ascii->setValue(horizontal_bar_ascii->minimum());
341-
horizontal_bar_hex->setValue(horizontal_bar_hex->minimum());
342-
}
344+
QScrollBar *vertical_bar_ascii = ui->textBrowser_serial_0->verticalScrollBar();
345+
QScrollBar *horizontal_bar_ascii = ui->textBrowser_serial_0->horizontalScrollBar();
346+
QScrollBar *vertical_bar_hex = ui->textBrowser_serial_1->verticalScrollBar();
347+
QScrollBar *horizontal_bar_hex = ui->textBrowser_serial_1->horizontalScrollBar();
348+
349+
vertical_bar_ascii->setValue(vertical_bar_ascii->maximum());
350+
vertical_bar_hex->setValue(vertical_bar_hex->maximum());
351+
horizontal_bar_ascii->setValue(horizontal_bar_ascii->minimum());
352+
horizontal_bar_hex->setValue(horizontal_bar_hex->minimum());
343353
}
344354

345355
/**************************************************************************************************/

SUSTerm/mainwindow.ui

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -259,6 +259,9 @@
259259
<property name="spacing">
260260
<number>0</number>
261261
</property>
262+
<item>
263+
<layout class="QHBoxLayout" name="horizontalLayout"/>
264+
</item>
262265
<item>
263266
<widget class="QTextBrowser" name="textBrowser_serial_0">
264267
<property name="sizePolicy">

0 commit comments

Comments
 (0)