| 54 QColor indexColorForID (qint32 id) const; |
54 QColor indexColorForID (qint32 id) const; |
| 55 void needMerge(); |
55 void needMerge(); |
| 56 Q_SLOT void recompile(); |
56 Q_SLOT void recompile(); |
| 57 void dropObjectInfo (const QModelIndex &index); |
57 void dropObjectInfo (const QModelIndex &index); |
| 58 Q_SLOT void forgetObject(QModelIndex index); |
58 Q_SLOT void forgetObject(QModelIndex index); |
| 59 void stageForCompilation(QModelIndex index); |
59 void stageForCompilation(const QModelIndex &index); |
| 60 void unstage (QModelIndex index); |
60 void unstage (const QModelIndex &index); |
| 61 LDObject* resolveObject(const QModelIndex& index); |
|
| 62 |
61 |
| 63 QMap<QPersistentModelIndex, ObjectVboData> m_objectInfo; |
62 QMap<QPersistentModelIndex, ObjectVboData> m_objectInfo; |
| 64 QSet<QPersistentModelIndex> m_staged; // Objects that need to be compiled |
63 QSet<QPersistentModelIndex> m_staged; // Objects that need to be compiled |
| 65 GLuint m_vbo[NumVbos]; |
64 GLuint m_vbo[NumVbos]; |
| 66 bool m_vboChanged[NumVbos] = {true}; |
65 bool m_vboChanged[NumVbos] = {true}; |
| 67 int m_vboSizes[NumVbos] = {0}; |
66 int m_vboSizes[NumVbos] = {0}; |
| 68 GLRenderer* m_renderer; |
67 GLRenderer* m_renderer; |
| |
68 |
| |
69 private slots: |
| |
70 void handleRowInsertion(const QModelIndex&, int first, int last); |
| |
71 void handleRowRemoval(const QModelIndex&, int first, int last); |
| |
72 void handleDataChange(const QModelIndex& topLeft, const QModelIndex &bottomRight); |
| 69 }; |
73 }; |
| 70 |
74 |
| 71 #define CHECK_GL_ERROR() { checkGLError(this, __FILE__, __LINE__); } |
75 #define CHECK_GL_ERROR() { checkGLError(this, __FILE__, __LINE__); } |
| 72 void checkGLError (HierarchyElement* element, QString file, int line); |
76 void checkGLError (HierarchyElement* element, QString file, int line); |