X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fentry.cpp;h=44a169aad7f60283188bc84a3c82c92d2ad56bb8;hb=729cb06f85e2888a7ac1e72375380257936106c9;hp=12eff06ae4ffbc542e3b80726242b60ea03ee4ee;hpb=ec63df81f6c3f77454b0fe3bdae24876c84616b1;p=libs%2Fgltk.git diff --git a/source/entry.cpp b/source/entry.cpp index 12eff06..44a169a 100644 --- a/source/entry.cpp +++ b/source/entry.cpp @@ -28,7 +28,7 @@ Entry::Entry(const string &t): set_text(t); } -void Entry::autosize_special(const Part &part, Geometry &ageom) +void Entry::autosize_special(const Part &part, Geometry &ageom) const { if(part.get_name()=="text") { @@ -51,11 +51,12 @@ void Entry::autosize_special(const Part &part, Geometry &ageom) Geometry sgeom = part.get_geometry(); if(!sgeom.w || !sgeom.h) { - slider->autosize(); + Geometry wgeom; + slider->autosize(wgeom); if(!sgeom.w) - sgeom.w = slider->get_geometry().w; + sgeom.w = wgeom.w; if(!sgeom.h) - sgeom.h = slider->get_geometry().h; + sgeom.h = wgeom.h; } const Sides &margin = part.get_margin(); @@ -102,7 +103,7 @@ void Entry::set_multiline(bool m) void Entry::rebuild_special(const Part &part) { if(part.get_name()=="text") - text.build(part, geom, first_row, part_cache); + text.build(part, state, geom, first_row, part_cache); else if(part.get_name()=="cursor") { const Graphic *graphic = part.get_graphic(state); @@ -237,11 +238,12 @@ void Entry::reposition_slider() Geometry sgeom = slider_part->get_geometry(); if(!sgeom.w || !sgeom.h) { - slider->autosize(); + Geometry wgeom; + slider->autosize(wgeom); if(!sgeom.w) - sgeom.w = slider->get_geometry().w; + sgeom.w = wgeom.w; if(!sgeom.h) - sgeom.h = slider->get_geometry().h; + sgeom.h = wgeom.h; } slider_part->get_alignment().apply(sgeom, geom, slider_part->get_margin());