2017-06-07 10:09:24 +02:00
|
|
|
#pragma once
|
2017-01-03 21:19:33 +01:00
|
|
|
|
|
|
|
#include "QString"
|
|
|
|
|
2017-04-14 17:52:22 +02:00
|
|
|
namespace chatterino {
|
2017-06-26 16:41:20 +02:00
|
|
|
|
2017-12-31 00:50:07 +01:00
|
|
|
class ThemeManager;
|
2017-06-26 16:41:20 +02:00
|
|
|
|
2017-04-14 17:52:22 +02:00
|
|
|
namespace widgets {
|
2017-01-18 21:30:23 +01:00
|
|
|
|
2017-06-26 16:41:20 +02:00
|
|
|
class ScrollBar;
|
|
|
|
|
2017-01-03 21:19:33 +01:00
|
|
|
class ScrollBarHighlight
|
|
|
|
{
|
|
|
|
public:
|
2017-01-11 18:52:09 +01:00
|
|
|
enum Style { Default, Left, Right, SingleLine };
|
2017-01-03 21:19:33 +01:00
|
|
|
|
2017-06-26 16:41:20 +02:00
|
|
|
ScrollBarHighlight(double _position, int _colorIndex, ScrollBar *parent, Style _style = Default,
|
2017-04-12 17:46:44 +02:00
|
|
|
QString _tag = "");
|
2017-01-03 21:19:33 +01:00
|
|
|
|
2017-12-31 00:50:07 +01:00
|
|
|
ThemeManager &themeManager;
|
2017-06-26 16:41:20 +02:00
|
|
|
|
|
|
|
double getPosition()
|
2017-01-11 18:52:09 +01:00
|
|
|
{
|
2017-06-26 16:41:20 +02:00
|
|
|
return this->position;
|
2017-01-03 21:19:33 +01:00
|
|
|
}
|
|
|
|
|
2017-06-26 16:41:20 +02:00
|
|
|
int getColorIndex()
|
2017-01-11 18:52:09 +01:00
|
|
|
{
|
2017-06-26 16:41:20 +02:00
|
|
|
return this->colorIndex;
|
2017-01-03 21:19:33 +01:00
|
|
|
}
|
|
|
|
|
2017-06-26 16:41:20 +02:00
|
|
|
Style getStyle()
|
2017-01-11 18:52:09 +01:00
|
|
|
{
|
2017-06-26 16:41:20 +02:00
|
|
|
return this->style;
|
2017-01-03 21:19:33 +01:00
|
|
|
}
|
|
|
|
|
2017-04-12 17:46:44 +02:00
|
|
|
QString getTag()
|
2017-01-11 18:52:09 +01:00
|
|
|
{
|
2017-06-26 16:41:20 +02:00
|
|
|
return this->tag;
|
2017-01-03 21:19:33 +01:00
|
|
|
}
|
|
|
|
|
2017-05-27 16:16:39 +02:00
|
|
|
ScrollBarHighlight *next = nullptr;
|
2017-01-03 21:19:33 +01:00
|
|
|
|
|
|
|
private:
|
2017-06-26 16:41:20 +02:00
|
|
|
double position;
|
|
|
|
int colorIndex;
|
|
|
|
Style style;
|
|
|
|
QString tag;
|
2017-01-03 21:19:33 +01:00
|
|
|
};
|
2017-05-27 16:16:39 +02:00
|
|
|
|
|
|
|
} // namespace widgets
|
|
|
|
} // namespace chatterino
|