@@ -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/* *************************************************************************************************/
0 commit comments