File indexing completed on 2024-05-19 05:35:25
0001 #ifndef oxygentransitions_h 0002 #define oxygentransitions_h 0003 0004 ////////////////////////////////////////////////////////////////////////////// 0005 // oxygentransitions.h 0006 // container for all transition engines 0007 // ------------------- 0008 // 0009 // SPDX-FileCopyrightText: 2009 Hugo Pereira Da Costa <hugo.pereira@free.fr> 0010 // 0011 // SPDX-License-Identifier: MIT 0012 ////////////////////////////////////////////////////////////////////////////// 0013 0014 #include "oxygencomboboxengine.h" 0015 #include "oxygenlabelengine.h" 0016 #include "oxygenlineeditengine.h" 0017 #include "oxygenstackedwidgetengine.h" 0018 0019 namespace Oxygen 0020 { 0021 //* stores engines 0022 class Transitions : public QObject 0023 { 0024 Q_OBJECT 0025 0026 public: 0027 //* constructor 0028 explicit Transitions(QObject *); 0029 0030 //* register animations corresponding to given widget, depending on its type. 0031 void registerWidget(QWidget *widget) const; 0032 0033 /** unregister all animations associated to a widget */ 0034 void unregisterWidget(QWidget *widget) const; 0035 0036 //* qlabel engine 0037 ComboBoxEngine &comboBoxEngine(void) const 0038 { 0039 return *_comboBoxEngine; 0040 } 0041 0042 //* qlabel engine 0043 LabelEngine &labelEngine(void) const 0044 { 0045 return *_labelEngine; 0046 } 0047 0048 //* qlineedit engine 0049 LineEditEngine &lineEditEngine(void) const 0050 { 0051 return *_lineEditEngine; 0052 } 0053 0054 //* stacked widget engine 0055 StackedWidgetEngine &stackedWidgetEngine(void) const 0056 { 0057 return *_stackedWidgetEngine; 0058 } 0059 0060 public Q_SLOTS: 0061 0062 //* setup engines 0063 void setupEngines(void); 0064 0065 private: 0066 //* register new engine 0067 void registerEngine(BaseEngine *engine) 0068 { 0069 _engines.push_back(engine); 0070 } 0071 0072 //* qcombobox engine 0073 ComboBoxEngine *_comboBoxEngine; 0074 0075 //* qlabel engine 0076 LabelEngine *_labelEngine; 0077 0078 //* qlineedit engine 0079 LineEditEngine *_lineEditEngine; 0080 0081 //* stacked widget engine 0082 StackedWidgetEngine *_stackedWidgetEngine; 0083 0084 //* keep list of existing engines 0085 QList<BaseEngine::Pointer> _engines; 0086 }; 0087 } 0088 0089 #endif