]> git.tdb.fi Git - libs/gltk.git/blobdiff - source/hslider.cpp
Refactor widget autosizing
[libs/gltk.git] / source / hslider.cpp
index 837b2ba5c2dae4a0344da91665661079c7e427ef..35d0a411d36ce2eb26936e66597627a0a3c6bea2 100644 (file)
@@ -12,19 +12,14 @@ HSlider::HSlider():
        slider_size(1)
 { }
 
-void HSlider::autosize()
+void HSlider::autosize_special(const Part &part, Geometry &ageom)
 {
-       if(!style)
-               return;
-
-       Widget::autosize();
-
-       if(const Part *slider_part = style->get_part("slider"))
+       if(part.get_name()=="slider")
        {
-               const Sides &margin = slider_part->get_margin();
-               const Geometry &pgeom = slider_part->get_geometry();
-               geom.w = std::max(geom.w, pgeom.w*3/2+margin.left+margin.right);
-               geom.h = std::max(geom.h, pgeom.h+margin.top+margin.bottom);
+               const Sides &margin = part.get_margin();
+               const Geometry &pgeom = part.get_geometry();
+               ageom.w = std::max(ageom.w, pgeom.w*3/2+margin.left+margin.right);
+               ageom.h = std::max(ageom.h, pgeom.h+margin.top+margin.bottom);
        }
 }