10#include <Wt/WApplication.h>
11#include <Wt/WContainerWidget.h>
24 Lang(
const std::string& code,
const std::string& path,
25 const std::string& shortDescription,
26 const std::string& longDescription) :
44template <
typename Function>
53 WContainerWidget::load();
61template <
typename Function>
62std::unique_ptr<DeferredWidget<Function>>
deferCreate(Function f)
64 return std::make_unique<DeferredWidget<Function>>(f);
67class Home :
public WApplication
70 Home(
const WEnvironment& env, Dbo::SqlConnectionPool& blogDb,
71 const std::string& title,
72 const std::string& resourceBundle,
const std::string& cssPath);
79 virtual std::unique_ptr<WWidget>
examples() = 0;
81 virtual std::unique_ptr<WWidget>
sourceViewer(
const std::string &deployPath) = 0;
91 WString
tr(
const char *key);
92 std::string
href(
const std::string& url,
const std::string& description);
107 std::unique_ptr<WWidget>
blog();
108 std::unique_ptr<WWidget>
status();
109 std::unique_ptr<WWidget>
features();
113 std::unique_ptr<WWidget>
download();
120 void readNews(WTable *newsTable,
const std::string& newsfile);
122 std::unique_ptr<WWidget>
wrapView(std::unique_ptr<WWidget> (
Home::*createFunction)());
std::unique_ptr< DeferredWidget< Function > > deferCreate(Function f)
std::unique_ptr< WWidget > blog()
std::unique_ptr< WWidget > community()
std::unique_ptr< WWidget > linkSourceBrowser(const std::string &examplePath)
void readNews(WTable *newsTable, const std::string &newsfile)
WStackedWidget * contents_
std::unique_ptr< WWidget > download()
void addLanguage(const Lang &l)
WTabWidget * examplesMenu_
void googleAnalyticsLogger()
virtual std::unique_ptr< WWidget > createQuoteForm()=0
std::string href(const std::string &url, const std::string &description)
std::unique_ptr< WWidget > wrapView(std::unique_ptr< WWidget >(Home::*createFunction)())
std::unique_ptr< WWidget > otherLanguage()
void setLanguage(int language)
std::unique_ptr< WWidget > documentation()
virtual std::unique_ptr< WWidget > examples()=0
Dbo::SqlConnectionPool & blogDb_
WString tr(const char *key)
virtual std::string filePrefix() const =0
std::unique_ptr< WWidget > quoteForm()
std::unique_ptr< WWidget > features()
void readReleases(WTable *releaseTable)
std::unique_ptr< WContainerWidget > sideBarContent_
std::unique_ptr< WWidget > status()
void logInternalPath(const std::string &path)
std::vector< Lang > languages
virtual std::unique_ptr< WWidget > sourceViewer(const std::string &deployPath)=0
void setLanguageFromPath()
std::unique_ptr< WWidget > introduction()
void chatSetUser(const WString &name)
std::string longDescription_
Lang(const std::string &code, const std::string &path, const std::string &shortDescription, const std::string &longDescription)
std::string shortDescription_