/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
/*
* This file is part of the LibreOffice project .
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License , v . 2 . 0 . If a copy of the MPL was not distributed with this
* file , You can obtain one at http : //mozilla.org/MPL/2.0/.
*/
#include <QtInstanceScrollbar.hxx>
#include <QtInstanceScrollbar.moc>
QtInstanceScrollbar::QtInstanceScrollbar(QScrollBar* pScrollBar)
: QtInstanceWidget(pScrollBar)
, m_pScrollBar(pScrollBar)
{
assert(m_pScrollBar);
connect(m_pScrollBar, &QScrollBar::valueChanged, this ,
&QtInstanceScrollbar::signalValueChanged);
}
void QtInstanceScrollbar::adjustment_configure(int , int , int , int , int , int )
{
assert(false && "not implemented yet" );
}
int QtInstanceScrollbar::adjustment_get_value() const
{
SolarMutexGuard g;
int nValue = 0 ;
GetQtInstance().RunInMainThread([&] { nValue = m_pScrollBar->value(); });
return nValue;
}
void QtInstanceScrollbar::adjustment_set_value(int nValue)
{
SolarMutexGuard g;
GetQtInstance().RunInMainThread([&] { m_pScrollBar->setValue(nValue); });
}
int QtInstanceScrollbar::adjustment_get_upper() const
{
SolarMutexGuard g;
int nMax = 0 ;
GetQtInstance().RunInMainThread([&] { nMax = m_pScrollBar->maximum(); });
return nMax;
}
void QtInstanceScrollbar::adjustment_set_upper(int nUpper)
{
SolarMutexGuard g;
GetQtInstance().RunInMainThread([&] { m_pScrollBar->setMaximum(nUpper); });
}
int QtInstanceScrollbar::adjustment_get_page_size() const
{
assert(false && "Not implemented yet" );
return 0 ;
}
void QtInstanceScrollbar::adjustment_set_page_size(int ) { assert(false && "not implemented yet" ); }
int QtInstanceScrollbar::adjustment_get_page_increment() const
{
SolarMutexGuard g;
int nPageStep = 0 ;
GetQtInstance().RunInMainThread([&] { nPageStep = m_pScrollBar->pageStep(); });
return nPageStep;
}
void QtInstanceScrollbar::adjustment_set_page_increment(int nSize)
{
SolarMutexGuard g;
GetQtInstance().RunInMainThread([&] { m_pScrollBar->setPageStep(nSize); });
}
int QtInstanceScrollbar::adjustment_get_step_increment() const
{
SolarMutexGuard g;
int nSingleStep = 0 ;
GetQtInstance().RunInMainThread([&] { nSingleStep = m_pScrollBar->singleStep(); });
return nSingleStep;
}
void QtInstanceScrollbar::adjustment_set_step_increment(int nSize)
{
SolarMutexGuard g;
GetQtInstance().RunInMainThread([&] { m_pScrollBar->setSingleStep(nSize); });
}
int QtInstanceScrollbar::adjustment_get_lower() const
{
SolarMutexGuard g;
int nMin = 0 ;
GetQtInstance().RunInMainThread([&] { nMin = m_pScrollBar->minimum(); });
return nMin;
}
void QtInstanceScrollbar::adjustment_set_lower(int nLower)
{
SolarMutexGuard g;
GetQtInstance().RunInMainThread([&] { m_pScrollBar->setMinimum(nLower); });
}
int QtInstanceScrollbar::get_scroll_thickness() const
{
SolarMutexGuard g;
int nThickness = 0 ;
GetQtInstance().RunInMainThread([&] {
if (m_pScrollBar->orientation() == Qt::Horizontal)
nThickness = m_pScrollBar->height();
else
nThickness = m_pScrollBar->width();
});
return nThickness;
}
void QtInstanceScrollbar::set_scroll_thickness(int nThickness)
{
SolarMutexGuard g;
GetQtInstance().RunInMainThread([&] {
if (m_pScrollBar->orientation() == Qt::Horizontal)
m_pScrollBar->resize(m_pScrollBar->width(), nThickness);
else
m_pScrollBar->resize(nThickness, m_pScrollBar->height());
});
}
void QtInstanceScrollbar::set_scroll_swap_arrows(bool ) { assert(false && "not implemented yet" ); }
ScrollType QtInstanceScrollbar::get_scroll_type() const
{
assert(false && "not implemented yet" );
return ScrollType::DontKnow;
}
void QtInstanceScrollbar::signalValueChanged()
{
SolarMutexGuard g;
signal_adjustment_value_changed();
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
Messung V0.5 in Prozent C=98 H=100 G=98
¤ Dauer der Verarbeitung: 0.13 Sekunden
(vorverarbeitet am 2026-09-29)
¤
*© Formatika GbR, Deutschland