Exemple #1
0
 void UpdateLayout()
 {
     if (Child()) {
         InternalSetExpand(
             Child(),
             WinPoint(
                 XExpand() == 0 ? 0 : XExpand(),
                 YExpand() == 0 ? 0 : YExpand()
             )
         );
         Child()->UpdateLayout();
         InternalSetSize(WinPoint(
             Child()->XSize(),
             Child()->YSize()
         ));
         InternalSetOffset(Child(), WinPoint(0, 0));
     } else {
         InternalSetSize(
             WinPoint(
                 max(0, XExpand()),
                 max(0, YExpand())
             )
         );
     }
 }
void Pane::SetOffset(const WinPoint& point)
{
    InternalSetOffset(point);
    NeedLayout();
}