]> git.tdb.fi Git - libs/gltk.git/blobdiff - source/partcache.h
Improve pointer grab handling
[libs/gltk.git] / source / partcache.h
index 90d1c94f5e36e90a19614cc39a9e8a56033d7945..4eef1166d1d9e75f0bc39bd27b087350e8cbf3c1 100644 (file)
@@ -22,14 +22,27 @@ struct CachedPart
 class PartCache
 {
 public:
+       class Rebuild
+       {
+       private:
+               PartCache &cache;
+
+       public:
+               Rebuild(PartCache &c): cache(c) { cache.begin_rebuild(); }
+               ~Rebuild() { cache.end_rebuild(); }
+       };
+
        typedef std::list<CachedPart> PartList;
 
 private:
+       bool rebuilding;
        PartList parts;
        PartList::iterator next;
        PartList::iterator current;
 
 public:
+       PartCache();
+
        void begin_rebuild();
        void insert_special(const Part &);
        GL::Mesh &create_mesh(const Part &, const GL::Texture2D &);