/** * Creates and adds main layout to the screen. */ void MainScreen::createMainLayout() { // Create and add the main layout to the screen. mMainLayout = new VerticalLayout(); mMainLayout->setBackgroundColor(0x220099); Screen::setMainWidget(mMainLayout); mGenderRadioGroup = new RadioGroup(); mMainLayout->addChild(mGenderRadioGroup); mFemaleButton = new RadioButton(); mFemaleButton->setTextColor(0xFF0000); mFemaleButton->setText("Female"); mMaleButton = new RadioButton(); mMaleButton->setText("Male"); mMaleButton->setTextColor(0x0000FF); mUnknownButton = new RadioButton(); mUnknownButton->setText("Alien"); mUnknownButton->setTextColor(0x00FF00); mGenderRadioGroup->addView(mFemaleButton); mGenderRadioGroup->addView(mMaleButton); mGenderRadioGroup->addView(mUnknownButton); mClearGenderSelection = new Button(); mClearGenderSelection->setText("Clear gender selection"); mMainLayout->addChild(mClearGenderSelection); HorizontalLayout* getGenderLayout = new HorizontalLayout(); getGenderLayout->setChildVerticalAlignment(MAW_ALIGNMENT_CENTER); mMainLayout->addChild(getGenderLayout); mGetGenderSelection = new Button(); mGetGenderSelection->setText("Get the gender selection"); getGenderLayout->addChild(mGetGenderSelection); mGenderSelectionLabel = new Label(); mGenderSelectionLabel->fillSpaceHorizontally(); getGenderLayout->addChild(mGenderSelectionLabel); HorizontalLayout* getCheckedLayout = new HorizontalLayout(); getCheckedLayout->setChildVerticalAlignment(MAW_ALIGNMENT_CENTER); mMainLayout->addChild(getCheckedLayout); mGetGenderChecked = new Button(); mGetGenderChecked->setText("Get male checked state"); getCheckedLayout->addChild(mGetGenderChecked); mGenderCheckedLabel = new Label(); mGenderCheckedLabel->fillSpaceHorizontally(); getCheckedLayout->addChild(mGenderCheckedLabel); mToggleMaleButton = new Button(); mToggleMaleButton->setText("Toggle(check) Male button"); mMainLayout->addChild(mToggleMaleButton); mGenderSelectionEvent = new Label(); mGenderSelectionEvent->setText("Radio Group event"); mMainLayout->addChild(mGenderSelectionEvent); mRadioButtonSelectEvent = new Label(); mRadioButtonSelectEvent->setText("Radio Button select event"); mMainLayout->addChild(mRadioButtonSelectEvent); mradioButtonUnselectEvent = new Label(); mradioButtonUnselectEvent->setText("Radio Button unselect event"); mMainLayout->addChild(mradioButtonUnselectEvent); }
void addCheckboxWidget(Layout* aTargetLayout) { VerticalLayout* betaWrapper = new VerticalLayout(); betaWrapper->fillSpaceHorizontally(); betaWrapper->wrapContentVertically(); betaWrapper->setPaddingTop(int(mFontSize * 0.5)); VerticalLayout* betaContainer = new VerticalLayout(); betaContainer->fillSpaceHorizontally(); betaContainer->wrapContentVertically(); betaContainer->setBackgroundColor(AUX_COLOR); setRoundPadding(aTargetLayout); HorizontalLayout* subSettingsContainer = new HorizontalLayout(); subSettingsContainer->fillSpaceHorizontally(); subSettingsContainer->wrapContentVertically(); subSettingsContainer->setChildVerticalAlignment(MAW_ALIGNMENT_CENTER); subSettingsContainer->setChildHorizontalAlignment(MAW_ALIGNMENT_RIGHT); Label* betaText = new Label(); betaText->setText("This is a checkBox"); betaText->setFontColor(LABEL_FONT_COLOR); betaText->setFontSize(mFontSize); betaText->fillSpaceHorizontally(); betaText->wrapContentVertically(); betaText->setTextHorizontalAlignment(MAW_ALIGNMENT_LEFT); CheckBox* betaCB = new CheckBox(); betaCB->wrapContentHorizontally(); betaCB->wrapContentVertically(); betaCB->setState(true); subSettingsContainer->addChild(betaText); subSettingsContainer->addChild(betaCB); betaContainer->addChild(subSettingsContainer); betaWrapper->addChild(betaContainer); aTargetLayout->addChild(betaWrapper); }
void MainScreen::renderAlarm(AlarmMsg alarm, float ratio) { String s; HorizontalLayout *mainItemLayout = new HorizontalLayout(); VerticalLayout *verticalTextLayout = new VerticalLayout(); Label *lbDaysTo = new Label(); Label *lbName = new Label(); Label *lbsplitter = new Label(); Label *lbMessage = new Label(); s = ""; String multi = ""; int val = alarm.DaysTo; if (val > 99) { val /= 30; multi = Lang::getString(GS_LETTERMONTH); if (val > 24) { val /= 12; multi = Lang::getString(GS_LETTERYEAR); } } if (val == 0) { s += Lang::getString(GS_NOW); } else if (val == -1) { s += Lang::getString(GS_YESTERDAY); } else { s += Convert::toString(val); s += multi; } mainItemLayout->setChildVerticalAlignment(MAW_ALIGNMENT_CENTER); mainItemLayout->setBackgroundColor(Styler::getClBgMessage()); mainItemLayout->fillSpaceHorizontally(); mainItemLayout->wrapContentHorizontally(); //DaysTo setup VerticalLayout* vlDaysTo = new VerticalLayout(); vlDaysTo->fillSpaceHorizontally(); vlDaysTo->wrapContentHorizontally(); vlDaysTo->setBackgroundColor(Styler::getClBgDaysLeft()); vlDaysTo->setChildVerticalAlignment(MAW_ALIGNMENT_CENTER); lbDaysTo->setText(s); int daysLeftFontSize = static_cast<int>(Styler::getSzFontDaysLeft() - ratio * (Styler::getSzFontDaysLeft() - Styler::getSzFontSize1())); if (val < 1) { daysLeftFontSize /= 2; } Styler::setLabelFont(lbDaysTo, Styler::fontnameDaysLeft, daysLeftFontSize); lbDaysTo->setFontSize(daysLeftFontSize); lbDaysTo->fillSpaceHorizontally(); lbDaysTo->fillSpaceVertically(); lbDaysTo->setWidth(Styler::getSzWidthDaysLeft()); lbDaysTo->setFontColor(Styler::getClFcDaysLeft()); lbDaysTo->setBackgroundColor(Styler::getClBgDaysLeft()); lbDaysTo->setTextVerticalAlignment(MAW_ALIGNMENT_CENTER); lbDaysTo->setTextHorizontalAlignment(MAW_ALIGNMENT_CENTER); vlDaysTo->addChild(lbDaysTo); //name and message setup Styler::setLabelFont(lbName, Styler::fontnameEventName); lbName->setText(alarm.Name); lbName->setFontSize(Styler::getSzFontSize1()); lbName->setFontColor(Styler::getClFcName()); lbName->setTextHorizontalAlignment(MAW_ALIGNMENT_LEFT); lbMessage->setText(alarm.Message); lbMessage->setFontSize(Styler::szFontLittleMessage()); lbMessage->setFontColor(Styler::getClFcMessage()); lbMessage->setTextHorizontalAlignment(MAW_ALIGNMENT_LEFT); Label* lbAir = new Label(); lbAir->setHeight(5); verticalTextLayout->addChild(lbName); verticalTextLayout->addChild(lbAir); verticalTextLayout->addChild(lbMessage); Styler::setLayoutPadding(verticalTextLayout, 3); verticalTextLayout->setPaddingLeft(Styler::getSzPadding() / 2); verticalTextLayout->setPaddingRight(Styler::getSzPadding() / 2); verticalTextLayout->wrapContentVertically(); verticalTextLayout->fillSpaceHorizontally(); mainItemLayout->addChild(vlDaysTo); mainItemLayout->addChild(lbsplitter); mainItemLayout->addChild(lbName); mainItemLayout->addChild(verticalTextLayout); mainItemLayout->wrapContentHorizontally(); lvAlarms->addChild(mainItemLayout); }