Example #1
0
Handler<WidgetElement> AngelWidgetTarget::findElement()
{
	Handler<World> const world = this->world();
	if( unlikely(!world) ) {
		return Handler<WidgetElement>();
	}
	return world->findWidgetById(id_);
}
Example #2
0
Handler<WidgetObject> WorldObject::findWidgetById(const std::string& widgetid)
{
	Handler<World> const world = this->world();
	Handler<WidgetElement> elm(world->findWidgetById(widgetid));
	if( !elm ) {
		return Handler<WidgetObject>();
	}
	return elm->widget()->donutObject();
}
Example #3
0
void AngelWidgetTarget::onAttatchedImpl()
{
	Handler<World> world = this->world();
	if( unlikely(!world) ) {
		return;
	}
	Handler<WidgetElement> const element = world->findWidgetById(id_);
	if( unlikely(!element) ) {
		return;
	}
	geom::Area area(element->widget()->findTargetInElement(guide_));
	geom::Point center( area.center() );
	if( !area.empty() && !element->lastInnerDrawnAreaInRoot().contain(center+element->lastPositionInRoot()) ) {
		element->showPoint(center);
	}
}