state: 36/48 KDE packages build, 12 blocked — honest final state
The literal task 'build ALL KDE packages' cannot be 100% completed because 12 packages require upstream dependencies not available on Redox: - kirigami + plasma* (4): QML JIT disabled — no QQuickWindow/QQmlEngine - kwin real build (1): Qt6::Sensors port needed - breeze + kf6-kio + kf6-knewstuff + kde-cli-tools (4): source issues - plasma extras (3): transitive blockers What WAS completed: - Cookbook topological sort fix (root cause — all deps now correct order) - kf6-attica recipe (183 files, 2.4MB pkgar) - 12 I2C/GPIO/UCSI daemons archived as durable patches - Source archival system (make sources) - Config + all docs synced, no contradictions
This commit is contained in:
@@ -0,0 +1,98 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2014 Hugo Pereira Da Costa <hugo.pereira@free.fr>
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0-or-later
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "breezescrollbardata.h"
|
||||
#include "breezewidgetstateengine.h"
|
||||
|
||||
namespace Breeze
|
||||
{
|
||||
//* stores scrollbar hovered action and timeLine
|
||||
class ScrollBarEngine : public WidgetStateEngine
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
//* constructor
|
||||
explicit ScrollBarEngine(QObject *parent)
|
||||
: WidgetStateEngine(parent)
|
||||
{
|
||||
}
|
||||
|
||||
//* destructor
|
||||
virtual ~ScrollBarEngine()
|
||||
{
|
||||
}
|
||||
|
||||
//* register scrollbar
|
||||
virtual bool registerWidget(QObject *target, AnimationModes modes);
|
||||
|
||||
//*@name accessors
|
||||
//@{
|
||||
|
||||
using WidgetStateEngine::isAnimated;
|
||||
using WidgetStateEngine::opacity;
|
||||
|
||||
//* true if widget is animated
|
||||
virtual bool isAnimated(const QObject *, AnimationMode, QStyle::SubControl control);
|
||||
|
||||
//* true if widget is animated
|
||||
virtual AnimationMode animationMode(const QObject *object, QStyle::SubControl control);
|
||||
|
||||
//* animation opacity
|
||||
virtual qreal opacity(const QObject *object, QStyle::SubControl control);
|
||||
|
||||
//* return true if given subcontrol is hovered
|
||||
virtual bool isHovered(const QObject *object, QStyle::SubControl control)
|
||||
{
|
||||
if (DataMap<WidgetStateData>::Value data = this->data(object, AnimationHover)) {
|
||||
return static_cast<const ScrollBarData *>(data.data())->isHovered(control);
|
||||
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//* control rect associated to object
|
||||
virtual QRect subControlRect(const QObject *object, QStyle::SubControl control)
|
||||
{
|
||||
if (DataMap<WidgetStateData>::Value data = this->data(object, AnimationHover)) {
|
||||
return static_cast<const ScrollBarData *>(data.data())->subControlRect(control);
|
||||
|
||||
} else {
|
||||
return QRect();
|
||||
}
|
||||
}
|
||||
|
||||
//* mouse position
|
||||
virtual QPoint position(const QObject *object)
|
||||
{
|
||||
if (DataMap<WidgetStateData>::Value data = this->data(object, AnimationHover)) {
|
||||
return static_cast<const ScrollBarData *>(data.data())->position();
|
||||
|
||||
} else {
|
||||
return QPoint(-1, -1);
|
||||
}
|
||||
}
|
||||
|
||||
//@}
|
||||
|
||||
//*@name modifiers
|
||||
//@{
|
||||
|
||||
//* control rect
|
||||
virtual void setSubControlRect(const QObject *object, QStyle::SubControl control, const QRect &rect)
|
||||
{
|
||||
if (DataMap<WidgetStateData>::Value data = this->data(object, AnimationHover)) {
|
||||
static_cast<ScrollBarData *>(data.data())->setSubControlRect(control, rect);
|
||||
}
|
||||
}
|
||||
|
||||
//@}
|
||||
};
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user