761e0d9de7
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
167 lines
3.7 KiB
C++
167 lines
3.7 KiB
C++
/*
|
|
* SPDX-FileCopyrightText: 2014 Hugo Pereira Da Costa <hugo.pereira@free.fr>
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include "breezebusyindicatorengine.h"
|
|
#include "breezedialengine.h"
|
|
#include "breezeheaderviewengine.h"
|
|
#include "breezescrollbarengine.h"
|
|
#include "breezespinboxengine.h"
|
|
#include "breezestackedwidgetengine.h"
|
|
#include "breezetabbarengine.h"
|
|
#include "breezetoolboxengine.h"
|
|
#include "breezewidgetstateengine.h"
|
|
|
|
#include <QList>
|
|
#include <QObject>
|
|
|
|
namespace Breeze
|
|
{
|
|
//* stores engines
|
|
class Animations : public QObject
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
//* constructor
|
|
explicit Animations();
|
|
|
|
//* register animations corresponding to given widget, depending on its type.
|
|
void registerWidget(QWidget *widget) const;
|
|
|
|
/** unregister all animations associated to a widget */
|
|
void unregisterWidget(QWidget *widget) const;
|
|
|
|
//* enability engine
|
|
[[nodiscard]] WidgetStateEngine &widgetEnabilityEngine() const
|
|
{
|
|
return *_widgetEnabilityEngine;
|
|
}
|
|
|
|
//* abstractButton engine
|
|
[[nodiscard]] WidgetStateEngine &widgetStateEngine() const
|
|
{
|
|
return *_widgetStateEngine;
|
|
}
|
|
|
|
//* editable combobox arrow hover engine
|
|
[[nodiscard]] WidgetStateEngine &comboBoxEngine() const
|
|
{
|
|
return *_comboBoxEngine;
|
|
}
|
|
|
|
//* Tool buttons arrow hover engine
|
|
[[nodiscard]] WidgetStateEngine &toolButtonEngine() const
|
|
{
|
|
return *_toolButtonEngine;
|
|
}
|
|
|
|
//* item view engine
|
|
[[nodiscard]] WidgetStateEngine &inputWidgetEngine() const
|
|
{
|
|
return *_inputWidgetEngine;
|
|
}
|
|
|
|
//* busy indicator
|
|
[[nodiscard]] BusyIndicatorEngine &busyIndicatorEngine() const
|
|
{
|
|
return *_busyIndicatorEngine;
|
|
}
|
|
|
|
//* header view engine
|
|
[[nodiscard]] HeaderViewEngine &headerViewEngine() const
|
|
{
|
|
return *_headerViewEngine;
|
|
}
|
|
|
|
//* scrollbar engine
|
|
[[nodiscard]] ScrollBarEngine &scrollBarEngine() const
|
|
{
|
|
return *_scrollBarEngine;
|
|
}
|
|
|
|
//* dial engine
|
|
[[nodiscard]] DialEngine &dialEngine() const
|
|
{
|
|
return *_dialEngine;
|
|
}
|
|
|
|
//* spinbox engine
|
|
[[nodiscard]] SpinBoxEngine &spinBoxEngine() const
|
|
{
|
|
return *_spinBoxEngine;
|
|
}
|
|
|
|
//* tabbar
|
|
[[nodiscard]] TabBarEngine &tabBarEngine() const
|
|
{
|
|
return *_tabBarEngine;
|
|
}
|
|
|
|
//* toolbox
|
|
[[nodiscard]] ToolBoxEngine &toolBoxEngine() const
|
|
{
|
|
return *_toolBoxEngine;
|
|
}
|
|
|
|
//* setup engines
|
|
void setupEngines();
|
|
|
|
protected Q_SLOTS:
|
|
|
|
//* enregister engine
|
|
void unregisterEngine(QObject *);
|
|
|
|
private:
|
|
//* register new engine
|
|
void registerEngine(BaseEngine *);
|
|
|
|
//* busy indicator
|
|
BusyIndicatorEngine *_busyIndicatorEngine = nullptr;
|
|
|
|
//* headerview hover effect
|
|
HeaderViewEngine *_headerViewEngine = nullptr;
|
|
|
|
//* widget enability engine
|
|
WidgetStateEngine *_widgetEnabilityEngine = nullptr;
|
|
|
|
//* abstract button engine
|
|
WidgetStateEngine *_widgetStateEngine = nullptr;
|
|
|
|
//* editable combobox arrow hover effect
|
|
WidgetStateEngine *_comboBoxEngine = nullptr;
|
|
|
|
//* menu toolbutton arrow hover effect
|
|
WidgetStateEngine *_toolButtonEngine = nullptr;
|
|
|
|
//* item view engine
|
|
WidgetStateEngine *_inputWidgetEngine = nullptr;
|
|
|
|
//* scrollbar engine
|
|
ScrollBarEngine *_scrollBarEngine = nullptr;
|
|
|
|
//* dial engine
|
|
DialEngine *_dialEngine = nullptr;
|
|
|
|
//* spinbox engine
|
|
SpinBoxEngine *_spinBoxEngine = nullptr;
|
|
|
|
//* stacked widget engine
|
|
StackedWidgetEngine *_stackedWidgetEngine = nullptr;
|
|
|
|
//* tabbar engine
|
|
TabBarEngine *_tabBarEngine = nullptr;
|
|
|
|
//* toolbar engine
|
|
ToolBoxEngine *_toolBoxEngine = nullptr;
|
|
|
|
//* keep list of existing engines
|
|
QList<BaseEngine::Pointer> _engines;
|
|
};
|
|
|
|
}
|