59 wgt.GetRenderer().CommitInvalidation(Rect(
GetSizeOf(wgt)));
66 pCon->GetRenderer().CommitInvalidation(
GetBoundsOf(wgt));
72 wgt.GetView().SetLocation(pt);
73 CallEvent<Move>(wgt, UIEventArgs(wgt));
79 wgt.GetRenderer().SetSize(s);
80 wgt.GetView().SetSize(s);
81 CallEvent<Resize>(wgt, UIEventArgs(wgt));
122 r = pWgt->GetRenderer().CommitInvalidation(r);
130 auto& sender(e.GetSender());
134 wgt.GetRenderer().Paint(sender, std::move(e));
139 PaintEventArgs e(wgt, pc);
149 pFrm->MoveToTop(wgt);
161 Widget::Widget(
const Rect& r,
Color b,
Color f)
162 : view_ptr(new View(r)), renderer_ptr(new Renderer()),
163 controller_ptr(new WidgetController(false)),
164 Background(SolidBrush(b)), ForeColor(f)
168 Widget::Widget(
const Widget& wgt)
172 Background(wgt.Background), ForeColor(wgt.ForeColor)
180 Widget::InitializeEvents()
183 += std::bind(&Widget::Refresh,
this, std::placeholders::_1);
187 Widget::GetController()
const
191 return *controller_ptr;
195 Widget::SetRenderer(unique_ptr<Renderer>&& p)
197 renderer_ptr = p ? std::move(p) : unique_ptr<Renderer>(
new Renderer());
201 Widget::SetView(unique_ptr<View>&& p)
203 view_ptr = p ? std::move(p)
210 if(!e.ClipArea.IsUnstrictlyEmpty())
212 auto pr(GetChildren());
214 while(pr.first != pr.second)