src/modeleditcontext.h

changeset 5
593a658cba8e
parent 3
55a55a9ec2c2
child 8
44679e468ba9
equal deleted inserted replaced
4:68988ebc2a68 5:593a658cba8e
4 4
5 class Model::EditContext 5 class Model::EditContext
6 { 6 {
7 public: 7 public:
8 template<typename T, typename... Args> 8 template<typename T, typename... Args>
9 modelobjects::BaseObject* append(Args&&... args); 9 T* append(Args&&... args);
10 template<typename T, typename... Args> 10 template<typename T, typename... Args>
11 modelobjects::BaseObject* insert(int position, Args&&... args); 11 T* insert(int position, Args&&... args);
12 void setObjectProperty( 12 void setObjectProperty(
13 modelobjects::BaseObject* object, 13 modelobjects::BaseObject* object,
14 modelobjects::Property property, 14 modelobjects::Property property,
15 const QVariant &value); 15 const QVariant &value);
16 private: 16 private:
18 friend class Model; 18 friend class Model;
19 Model& model; 19 Model& model;
20 }; 20 };
21 21
22 template<typename T, typename... Args> 22 template<typename T, typename... Args>
23 modelobjects::BaseObject* Model::EditContext::append(Args&&... args) 23 T* Model::EditContext::append(Args&&... args)
24 { 24 {
25 return this->model.append<T>(args...); 25 return this->model.append<T>(args...);
26 } 26 }
27 27
28 template<typename T, typename... Args> 28 template<typename T, typename... Args>
29 modelobjects::BaseObject* Model::EditContext::insert(int position, Args&&... args) 29 T* Model::EditContext::insert(int position, Args&&... args)
30 { 30 {
31 return this->model.insert<T>(position, args...); 31 return this->model.insert<T>(position, args...);
32 } 32 }

mercurial