##// END OF EJS Templates
Reads variable's metadata to retrieve the type of data series (scalar, vector, spectrogram)
Reads variable's metadata to retrieve the type of data series (scalar, vector, spectrogram)

File last commit:

r929:5ec3f5d1277b
r1304:23206e07bbc2
Show More
MacScrollBarStyle.cpp
40 lines | 1.3 KiB | text/x-c | CppLexer
/ gui / src / Visualization / MacScrollBarStyle.cpp
Thibaud Rabillard
New style on mac to keep the scrollbars visible
r929 #include "Visualization/MacScrollBarStyle.h"
#include <QWidget>
int MacScrollBarStyle::styleHint(QStyle::StyleHint hint, const QStyleOption *option,
const QWidget *widget, QStyleHintReturn *returnData) const
{
switch (hint) {
case SH_ScrollBar_Transient:
return false; // Makes the scrollbar always visible
case SH_ScrollView_FrameOnlyAroundContents:
return true; // Avoid that the scrollbar is drawn on top of the widget
default:
break;
}
return QProxyStyle::styleHint(hint, option, widget, returnData);
}
void MacScrollBarStyle::selfInstallOn(QWidget *widget, bool installOnSubWidgets)
{
// Note: a style can be installed on a particular widget but it is not automatically applied its
// children widgets.
QList<QWidget *> widgetsToStyle{widget};
while (!widgetsToStyle.isEmpty()) {
auto widget = widgetsToStyle.takeFirst();
widget->setStyle(this);
if (installOnSubWidgets) {
for (auto child : widget->children()) {
auto childWidget = qobject_cast<QWidget *>(child);
if (childWidget) {
widgetsToStyle << childWidget;
}
}
}
}
}