#include #include #include #include #include class PanelApplication : public Wt::WApplication { public: PanelApplication(const Wt::WEnvironment& env); }; PanelApplication::PanelApplication(const Wt::WEnvironment& env) : Wt::WApplication(env) { setTitle("Animated Panel Demo"); const Wt::WAnimation animation(Wt::AnimationEffect::SlideInFromTop, Wt::TimingFunction::Linear, 1000); auto panelContents = std::make_unique(); auto layout = panelContents->setLayout(std::make_unique()); layout->addWidget(std::make_unique("Text 0"), 0, 0); layout->addWidget(std::make_unique("Text 1"), 0, 1); layout->addWidget(std::make_unique("Text 2"), 0, 2); layout->addWidget(std::make_unique("Text 3"), 0, 3); layout->addWidget(std::make_unique("Text 4"), 0, 4); auto thePanel = std::make_unique(); thePanel->setTitle("The Panel"); thePanel->setCentralWidget(std::move(panelContents)); thePanel->setCollapsible(true); thePanel->setAnimation(animation); thePanel->setCollapsed(true); this->root()->addWidget(std::move(thePanel)); } int main(int argc, char **argv) { return Wt::WRun(argc, argv, [](const Wt::WEnvironment& env) { return std::make_unique(env); }); }