- else if(part.get_name()=="selection")
- {
- if(sel_index>=static_cast<int>(first) && sel_index<static_cast<int>(first+n_visible))
- {
- const Sides &margin = part.get_margin();
-
- Geometry pgeom = geom;
- pgeom.h = row_height;
- pgeom.w -= margin.left+margin.right;
-
- Geometry rgeom = part.get_geometry();
- rgeom.y += geom.h-margin.top-row_height*(sel_index-first+1);
- rgeom.x += margin.left;
- part.get_alignment().apply(rgeom, pgeom);
-
- cache.texture = part.get_graphic(state)->get_texture();
- cache.clear_mesh();
-
- GL::MeshBuilder bld(*cache.mesh);
- bld.matrix() *= GL::Matrix::translation(rgeom.x, rgeom.y, 0);
- part.get_graphic(state)->build(rgeom.w, rgeom.h, bld);
- }
- else
- cache.texture = 0;
- }
-}
-
-void List::render_special(const Part &part, GL::Renderer &renderer) const
-{
- if(part.get_name()=="slider")