Advertisement
Guest User

BoilerplateHolder

a guest
Jun 20th, 2019
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.14 KB | None | 0 0
  1. template<typename T>
  2. class BoilerplateHolder: public QObject {
  3.     Q_OBJECT
  4. public:
  5.    BiolerplateHolder(T&& value): m_value{std::forward(value)} {}
  6.    T get() { return m_value; } //pokusiłbym się o usunięcie gettera i settera i przeciążenie odpowiednich operatorów
  7.    void set(T newValue) { m_value = newValue; emit valueChanged(); }
  8. signals:
  9.     void valueChanged();  
  10. private:
  11.    T m_value;
  12. }
  13. class TicksPerPower : public QObject {
  14.     Q_OBJECT
  15.     Q_PROPERTY(BoilerplateHolder<int> minPowerLevel READ minPowerLevel WRITE setMinPowerLevel NOTIFY minPowerLevelChanged)
  16.     Q_PROPERTY(BoilerplateHolder<int> maxPowerLevel READ maxPowerLevel WRITE setMaxPowerLevel NOTIFY maxPowerLevelChanged)
  17.     Q_PROPERTY(BoilerplateHolder<int> minPowerTicks READ minPowerTicks WRITE setMinPowerTicks NOTIFY minPowerTicksChanged)
  18.     Q_PROPERTY(BoilerplateHolder<int> maxPowerTicks READ maxPowerTicks WRITE setMaxPowerTicks NOTIFY maxPowerTicksChanged)
  19. private:
  20.     BoilerplateHolder<int> m_minPowerLevel{};
  21.     BoilerplateHolder<int> m_minPowerTicks{};
  22.  
  23.     BoilerplateHolder<int> m_maxPowerLevel{};
  24.     BoilerplateHolder<int> m_maxPowerTicks{};
  25. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement