24{
25 WLabel *label;
26 int row = 0;
27
28
29 elementAt(row, 0)->setColumnSpan(3);
30 elementAt(row, 0)->setContentAlignment(AlignmentFlag::Top | AlignmentFlag::Center);
31 elementAt(row, 0)->setPadding(10);
32 WText *title = elementAt(row,0)->addWidget(std::make_unique<WText>(tr("example.form")));
33 title->decorationStyle().font().setSize(FontSize::XLarge);
34
35
36 ++row;
37 elementAt(row, 0)->setColumnSpan(3);
40
42 errorStyle.setForegroundColor(WColor("red"));
43 errorStyle.font().setSize(FontSize::Smaller);
44 errorStyle.font().setWeight(FontWeight::Bold);
45 errorStyle.font().setStyle(FontStyle::Italic);
46
47
48 ++row;
49 nameEdit_ = elementAt(row,2)->addWidget(std::make_unique<WLineEdit>());
50 label = elementAt(row,0)->addWidget(std::make_unique<WLabel>(tr("example.name")));
52 nameEdit_->setValidator(std::make_shared<WValidator>(
true));
54
55
56 ++row;
57 firstNameEdit_ = elementAt(row,2)->addWidget(std::make_unique<WLineEdit>());
58 label = elementAt(row,0)->addWidget(std::make_unique<WLabel>(tr("example.firstname")));
60
61
62 ++row;
63 countryEdit_ = elementAt(row,2)->addWidget(std::make_unique<WComboBox>());
69 label = elementAt(row,0)->addWidget(std::make_unique<WLabel>(tr("example.country")));
71 countryEdit_->setValidator(std::make_shared<WValidator>(
true));
73
74
75 ++row;
76 cityEdit_ = elementAt(row,2)->addWidget(std::make_unique<WComboBox>());
77 cityEdit_->addItem(tr(
"example.choosecountry"));
78 label = elementAt(row,0)->addWidget(std::make_unique<WLabel>(tr("example.city")));
80
81
82 ++row;
83 birthDateEdit_ = elementAt(row, 2)->addWidget(std::make_unique<WDateEdit>());
86 label = elementAt(row,0)->addWidget(std::make_unique<WLabel>(tr("example.birthdate")));
90
91
92 ++row;
93 childCountEdit_ = elementAt(row,2)->addWidget(std::make_unique<WLineEdit>(
"0"));
94 label = elementAt(row, 0)->addWidget(std::make_unique<WLabel>(tr("example.childcount")));
98
99 ++row;
100 remarksEdit_ = elementAt(row,2)->addWidget(std::make_unique<WTextArea>());
103 label = elementAt(row,0)->addWidget(std::make_unique<WLabel>(tr("example.remarks")));
105
106
107 ++row;
108 WPushButton *
submit = elementAt(row,0)->addWidget(std::make_unique<WPushButton>(tr(
"submit")));
110 submit->setMargin(15, Side::Top);
111 elementAt(row, 0)->setColumnSpan(3);
112 elementAt(row, 0)->setContentAlignment(AlignmentFlag::Top | AlignmentFlag::Center);
113
114
115 elementAt(2, 0)->resize(WLength(30, LengthUnit::FontEx), WLength::Auto);
116 elementAt(2, 1)->resize(20, WLength::Auto);
117}