HGWidget* HGView::parentGWidget() const { QObject* p = parent(); if (p) return NULL; QGraphicsProxyWidget* proxy = graphicsProxyWidget(); if (!proxy || !proxy->parent()) return NULL; p = proxy->parent(); return (p->property("isHGWidget").toBool()) ? static_cast<HGWidget*>(p) : NULL; }
void HGView::setAlignment(Qt::Alignment align) { HGWidget* widget = parentGWidget(); if (widget) { QObject* p = NULL; QGraphicsProxyWidget* proxy = graphicsProxyWidget(); if (!proxy || !(p = proxy->parent())) return; if (p->property("isHGWidget").toBool()) static_cast<HGWidget*>(p)->layout()->setAlignment(proxy,align); } else { QObject* p = parent(); if (p->property("isHQWidget").toBool()) { static_cast<HQWidget*>(p)->layout()->setAlignment(this,align); } else if(p->property("isHGView").toBool()) { static_cast<HGView*>(p)->layout()->setAlignment(this,align); } } }