1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
|
#ifndef oxygenbaseanimationconfigwidget_h
#define oxygenbaseanimationconfigwidget_h
//////////////////////////////////////////////////////////////////////////////
// oxygenbaseanimationconfigwidget.h
// animation configuration item
// -------------------
//
// SPDX-FileCopyrightText: 2010 Hugo Pereira Da Costa <hugo.pereira@free.fr>
//
// SPDX-License-Identifier: MIT
//////////////////////////////////////////////////////////////////////////////
#include "oxygen_config_export.h"
#include <QCheckBox>
#include <QLayout>
#include <QWidget>
class Ui_AnimationConfigWidget;
namespace Oxygen
{
class AnimationConfigItem;
class OXYGEN_CONFIG_EXPORT BaseAnimationConfigWidget : public QWidget
{
Q_OBJECT
public:
//* constructor
explicit BaseAnimationConfigWidget(QWidget * = nullptr);
//* destructor
virtual ~BaseAnimationConfigWidget(void);
//* true if changed
virtual bool isChanged(void) const
{
return _changed;
}
Q_SIGNALS:
//* emmited when layout is changed
void layoutChanged(void);
//* emmited when changed
void changed(bool);
public Q_SLOTS:
//* read current configuration
virtual void load(void) = 0;
//* save current configuration
virtual void save(void) = 0;
protected Q_SLOTS:
//* update visible ites
virtual void updateItems(bool);
//* check whether configuration is changed and emit appropriate signal if yes
virtual void updateChanged() = 0;
protected:
//* get global animations enabled checkbox
QCheckBox *animationsEnabled(void) const;
//* add item to ui
virtual void setupItem(QGridLayout *, AnimationConfigItem *);
//* set changed state
virtual void setChanged(bool value)
{
_changed = value;
emit changed(value);
}
//* user interface
Ui_AnimationConfigWidget *ui = nullptr;
//* row index
int _row = 0;
private:
//* changed state
bool _changed = false;
};
}
#endif
|