fresult ItemsListFormBase::DoLayout() { fresult fres; ubyte_t controlsCount = 5; Size caSz = _App->GetClientAreaSize(); Position caPos = _App->GetClientAreaPos(); fres = _Factories->GetPanelFactory()->GetPanel(caSz, caPos, controlsCount, CL_TRANSPARENT, &_FormPanel); ENSURESUCCESS(fres); //get stipes Panel* stripes = NULL; fres = GetStripesPanel(frmStripeOneTopOneBot, &stripes); ENSURESUCCESS(fres); if (stripes!=NULL) { fres = _FormPanel->AppendControl(stripes); ENSURESUCCESS(fres); } //get message title TextFieldFactory* tff = _Factories->GetTextFieldFactory(); FAILIF(tff==NULL); Position posTitle; posTitle.Left = 0; posTitle.Top = caPos.Top+4; tff->CurrentTextFormatHandle = TF_GRAYTEXT; fres = tff->GetTextBox(posTitle, 26, &_txtItemHeader); ENSURESUCCESS(fres); fres = _FormPanel->AppendControl(_txtItemHeader); ENSURESUCCESS(fres); tff->CurrentTextFormatHandle = TF_NORMAL_EVEN; Position posContent; Size szContent; //- for scroll menu fres = GetContentDimensions(&posContent, &szContent); ENSURESUCCESS(fres); szContent.Width = szContent.Width - 13; fres = tff->GetTextBox(posContent, szContent, &_txtItemContent); ENSURESUCCESS(fres); fres = _FormPanel->AppendControl(_txtItemContent); ENSURESUCCESS(fres); tff->ResetDefaults(); //get menu fres = CreateMenu(&_Menu); ENSURESUCCESS(fres); return SUCCESS; }
void View::Measure(const UIContext &dc, MeasureSpec horiz, MeasureSpec vert) { float contentW = 0.0f, contentH = 0.0f; GetContentDimensions(dc, contentW, contentH); MeasureBySpec(layoutParams_->width, contentW, horiz, &measuredWidth_); MeasureBySpec(layoutParams_->height, contentH, vert, &measuredHeight_); }
void View::GetContentDimensionsBySpec(const UIContext &dc, MeasureSpec horiz, MeasureSpec vert, float &w, float &h) const { GetContentDimensions(dc, w, h); }