this might be a silly question, but still..
taking the following example from the qt docs:
Qt Code:
  1. class MyClass : public QObject
  2. {
  3. Q_OBJECT
  4. Q_PROPERTY(Priority priority READ priority WRITE setPriority NOTIFY priorityChanged)
  5. Q_ENUMS(Priority)
  6.  
  7. public:
  8. MyClass(QObject *parent = 0);
  9. ~MyClass();
  10.  
  11. enum Priority { High, Low, VeryHigh, VeryLow };
  12.  
  13. void setPriority(Priority priority)
  14. {
  15. m_priority = priority;
  16. emit priorityChanged(priority);
  17. }
  18. Priority priority() const
  19. { return m_priority; }
  20.  
  21. signals:
  22. void priorityChanged(Priority);
  23.  
  24. private:
  25. Priority m_priority;
  26. };
To copy to clipboard, switch view to plain text mode 
I'm having some trouble understanding this: if the property is not dynamic, declared as a class member and i am responsible for emitting its signals and writing the methods it uses, who am i declaring Q_PROPERTY for? what are the advantages of predefined properties over dynamic ones?