fresult xScatteredMenu::CreateTextMenu( Position* positions, char** texts, ubyte_t count, Size itemSize, TextFormat* format, TextFormat* selFormat, ScatteredMenu** oMnu ) { IMenuItem** items = new IMenuItem*[count]; (*oMnu) = new ScatteredMenu(); fresult fres; for (ubyte_t i =0; i< count; i++) { MenuItem* item = new MenuItem(); items[i] = item; TextField* tx; sword_t len = Length(texts[i]); Size buffSizeTx; buffSizeTx.Height =1; buffSizeTx.Width = (ubyte_t)len; fres = CreateTextField(texts[i], itemSize, positions[i], format, &tx, buffSizeTx); if (fres!=SUCCESS) { return fres; } fres = item->Init(tx,selFormat, NULL, tx, NULL, 0); if (fres!=SUCCESS) { return fres; } } //init menu fres = (*oMnu)->Init(items,count); if (fres != SUCCESS) { return fres; } return SUCCESS; }