Avoid drawing the scroll bars if the widget is non-visible
This commit is contained in:
parent
c93c0b6e33
commit
7c46d52ef4
|
@ -1,3 +1,6 @@
|
||||||
|
2019-06-02 Markus Gans <guru.mail@muenster.de>
|
||||||
|
* Avoid drawing the scroll bars if the widget is non-visible
|
||||||
|
|
||||||
2019-05-27 Markus Gans <guru.mail@muenster.de>
|
2019-05-27 Markus Gans <guru.mail@muenster.de>
|
||||||
* Use the Singleton design pattern to get a single object instance
|
* Use the Singleton design pattern to get a single object instance
|
||||||
via FTerm
|
via FTerm
|
||||||
|
@ -120,7 +123,7 @@
|
||||||
the switch statement with a vector of lambda expressions
|
the switch statement with a vector of lambda expressions
|
||||||
|
|
||||||
2018-12-09 Markus Gans <guru.mail@muenster.de>
|
2018-12-09 Markus Gans <guru.mail@muenster.de>
|
||||||
* Better handling of the scrollbar maximum
|
* Better handling of the scroll bar maximum
|
||||||
* Deactivate copy constructor and assignment operator with "= delete"
|
* Deactivate copy constructor and assignment operator with "= delete"
|
||||||
* Use nullptr instead of 0 to initialize a pointer values
|
* Use nullptr instead of 0 to initialize a pointer values
|
||||||
|
|
||||||
|
@ -136,7 +139,7 @@
|
||||||
* Fix compile in optimization level 2 for newer gcc
|
* Fix compile in optimization level 2 for newer gcc
|
||||||
|
|
||||||
2018-11-27 Markus Gans <guru.mail@muenster.de>
|
2018-11-27 Markus Gans <guru.mail@muenster.de>
|
||||||
* Correct vertical scrollbar position after sorting in FListView
|
* Correct vertical scroll bar position after sorting in FListView
|
||||||
|
|
||||||
2018-11-25 Markus Gans <guru.mail@muenster.de>
|
2018-11-25 Markus Gans <guru.mail@muenster.de>
|
||||||
* Version 0.5.0
|
* Version 0.5.0
|
||||||
|
|
|
@ -737,6 +737,8 @@ void FListBox::adjustSize()
|
||||||
hbar->setWidth (width + nf_offset, false);
|
hbar->setWidth (width + nf_offset, false);
|
||||||
hbar->resize();
|
hbar->resize();
|
||||||
|
|
||||||
|
if ( isShown() )
|
||||||
|
{
|
||||||
if ( isHorizontallyScrollable() )
|
if ( isHorizontallyScrollable() )
|
||||||
hbar->show();
|
hbar->show();
|
||||||
else
|
else
|
||||||
|
@ -746,6 +748,7 @@ void FListBox::adjustSize()
|
||||||
vbar->show();
|
vbar->show();
|
||||||
else
|
else
|
||||||
vbar->hide();
|
vbar->hide();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1180,11 +1183,14 @@ void FListBox::recalculateHorizontalBar (std::size_t len, bool has_brackets)
|
||||||
hbar->setPageSize (int(max_line_width), int(getWidth() - nf_offset - 4));
|
hbar->setPageSize (int(max_line_width), int(getWidth() - nf_offset - 4));
|
||||||
hbar->calculateSliderValues();
|
hbar->calculateSliderValues();
|
||||||
|
|
||||||
|
if ( isShown() )
|
||||||
|
{
|
||||||
if ( isHorizontallyScrollable() )
|
if ( isHorizontallyScrollable() )
|
||||||
hbar->show();
|
hbar->show();
|
||||||
else
|
else
|
||||||
hbar->hide();
|
hbar->hide();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
|
@ -1197,10 +1203,13 @@ void FListBox::recalculateVerticalBar (std::size_t element_count)
|
||||||
vbar->setPageSize (int(element_count), int(getHeight()) - 2);
|
vbar->setPageSize (int(element_count), int(getHeight()) - 2);
|
||||||
vbar->calculateSliderValues();
|
vbar->calculateSliderValues();
|
||||||
|
|
||||||
|
if ( isShown() )
|
||||||
|
{
|
||||||
if ( isVerticallyScrollable() )
|
if ( isVerticallyScrollable() )
|
||||||
vbar->show();
|
vbar->show();
|
||||||
else
|
else
|
||||||
vbar->hide();
|
vbar->hide();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
|
|
|
@ -1361,6 +1361,8 @@ void FListView::adjustSize()
|
||||||
hbar->setWidth (width, false);
|
hbar->setWidth (width, false);
|
||||||
hbar->resize();
|
hbar->resize();
|
||||||
|
|
||||||
|
if ( isShown() )
|
||||||
|
{
|
||||||
if ( isHorizontallyScrollable() )
|
if ( isHorizontallyScrollable() )
|
||||||
hbar->show();
|
hbar->show();
|
||||||
else
|
else
|
||||||
|
@ -1370,6 +1372,7 @@ void FListView::adjustSize()
|
||||||
vbar->show();
|
vbar->show();
|
||||||
else
|
else
|
||||||
vbar->hide();
|
vbar->hide();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1966,11 +1969,14 @@ void FListView::recalculateHorizontalBar (std::size_t len)
|
||||||
hbar->setPageSize (int(max_line_width), int(getWidth() - nf_offset) - 4);
|
hbar->setPageSize (int(max_line_width), int(getWidth() - nf_offset) - 4);
|
||||||
hbar->calculateSliderValues();
|
hbar->calculateSliderValues();
|
||||||
|
|
||||||
|
if ( isShown() )
|
||||||
|
{
|
||||||
if ( isHorizontallyScrollable() )
|
if ( isHorizontallyScrollable() )
|
||||||
hbar->show();
|
hbar->show();
|
||||||
else
|
else
|
||||||
hbar->hide();
|
hbar->hide();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
|
@ -1983,10 +1989,13 @@ void FListView::recalculateVerticalBar (std::size_t element_count)
|
||||||
vbar->setPageSize (int(element_count), int(getHeight()) - 2);
|
vbar->setPageSize (int(element_count), int(getHeight()) - 2);
|
||||||
vbar->calculateSliderValues();
|
vbar->calculateSliderValues();
|
||||||
|
|
||||||
|
if ( isShown() )
|
||||||
|
{
|
||||||
if ( isVerticallyScrollable() )
|
if ( isVerticallyScrollable() )
|
||||||
vbar->show();
|
vbar->show();
|
||||||
else
|
else
|
||||||
vbar->hide();
|
vbar->hide();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
|
|
|
@ -814,6 +814,9 @@ void FScrollView::calculateScrollbarPos()
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
void FScrollView::setHorizontalScrollBarVisibility()
|
void FScrollView::setHorizontalScrollBarVisibility()
|
||||||
{
|
{
|
||||||
|
if ( ! isShown() )
|
||||||
|
return;
|
||||||
|
|
||||||
switch ( hMode )
|
switch ( hMode )
|
||||||
{
|
{
|
||||||
case fc::Auto:
|
case fc::Auto:
|
||||||
|
@ -836,6 +839,9 @@ void FScrollView::setHorizontalScrollBarVisibility()
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
void FScrollView::setVerticalScrollBarVisibility()
|
void FScrollView::setVerticalScrollBarVisibility()
|
||||||
{
|
{
|
||||||
|
if ( ! isShown() )
|
||||||
|
return;
|
||||||
|
|
||||||
switch ( vMode )
|
switch ( vMode )
|
||||||
{
|
{
|
||||||
case fc::Auto:
|
case fc::Auto:
|
||||||
|
|
|
@ -1237,13 +1237,15 @@ inline void FTermLinux::initSpecialCharacter()
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
sInt16 FTermLinux::getFontPos (wchar_t ucs)
|
sInt16 FTermLinux::getFontPos (wchar_t ucs)
|
||||||
{
|
{
|
||||||
|
constexpr sInt16 NOT_FOUND = -1;
|
||||||
|
|
||||||
for (std::size_t n = 0; n < screen_unicode_map.entry_ct; n++)
|
for (std::size_t n = 0; n < screen_unicode_map.entry_ct; n++)
|
||||||
{
|
{
|
||||||
if ( screen_unicode_map.entries[n].unicode == ucs )
|
if ( screen_unicode_map.entries[n].unicode == ucs )
|
||||||
return sInt16(screen_unicode_map.entries[n].fontpos);
|
return sInt16(screen_unicode_map.entries[n].fontpos);
|
||||||
}
|
}
|
||||||
|
|
||||||
return -1;
|
return NOT_FOUND;
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
|
|
Loading…
Reference in New Issue