/// <summary> /// Sets up the defaults dropdown menus. /// </summary> /// <param name="yPos">Relative Y position for buttons</param> /// <returns>Relative Y coordinate below the finished setup</returns> private float SetUpMenus(float yPos) { // Layout constants. const float LeftColumn = 200f; const float MenuWidth = 300f; // Starting y position. float currentY = yPos + Margin; for (int i = 0; i < SubServiceNames.Length; ++i) { // Row icon and label. PanelUtils.RowHeaderIcon(panel, ref currentY, SubServiceNames[i], IconNames[i], AtlasNames[i]); // Pop pack dropdown. PopMenus[i] = UIControls.AddLabelledDropDown(panel, LeftColumn, currentY, Translations.Translate("RPR_CAL_DEN"), MenuWidth, height: 20f, itemVertPadding: 6, accomodateLabel: false); // Save current index in object user data. PopMenus[i].objectUserData = i; // Event handler. PopMenus[i].eventSelectedIndexChanged += PopMenuChanged; // Floor pack on next row. currentY += RowHeight; // Floor pack dropdown. FloorMenus[i] = UIControls.AddLabelledDropDown(panel, LeftColumn, currentY, Translations.Translate("RPR_CAL_BFL"), MenuWidth, height: 20f, itemVertPadding: 6, accomodateLabel: false); // Add any additional controls. currentY = RowAdditions(currentY, i); // Next row. currentY += RowHeight + Margin; } // Return finishing Y position. return(currentY); }