40 lines
782 B
C++
Executable File
40 lines
782 B
C++
Executable File
|
|
|
|
|
|
#pragma once
|
|
|
|
#include "lts_base.h"
|
|
#include "lts_widgets_export.h"
|
|
|
|
#include <QSplitterHandle>
|
|
#include <QList>
|
|
#include <QPropertyAnimation>
|
|
|
|
namespace LtsWidgets
|
|
{
|
|
|
|
class LTSWIDGETS_EXPORT LtsSplitterHandle : public QSplitterHandle
|
|
{
|
|
Q_OBJECT
|
|
Q_PROPERTY(QColor splittercolor READ splitterColor WRITE setCurrentColor DESIGNABLE false)
|
|
|
|
public:
|
|
explicit LtsSplitterHandle(Qt::Orientation orientation, QSplitter *parent = nullptr);
|
|
~LtsSplitterHandle();
|
|
|
|
void paintEvent(QPaintEvent *event) override;
|
|
void animate();
|
|
|
|
QColor splitterColor() const;
|
|
void setCurrentColor(const QColor ¤tcolor);
|
|
|
|
private:
|
|
bool m_animate {false};
|
|
QColor m_endColor {Qt::black};
|
|
QColor m_currentColor{QColor(239,87,50)};
|
|
QPropertyAnimation *m_colorAnimation;
|
|
|
|
};
|
|
|
|
}
|