7 #include <Wt/WApplication> 8 #include <Wt/WContainerWidget> 9 #include <Wt/WEnvironment> 10 #include <Wt/WPushButton> 43 void javaScriptTest();
54 useStyleSheet(
"chatapp.css");
56 messageResourceBundle().use(appRoot() +
"simplechat");
60 root()->addWidget(
new WText(WString::tr(
"introduction")));
64 chatWidget->setStyleClass(
"chat");
66 root()->addWidget(
new WText(WString::tr(
"details")));
68 WPushButton *b =
new WPushButton(
"I'm schizophrenic ...", root());
69 b->clicked().connect(b, &WPushButton::hide);
75 if(!
env_.javaScript()){
80 timer_ =
new Wt::WTimer(root());
93 chatWidget2->setStyleClass(
"chat");
109 login_(this,
"login")
112 useStyleSheet(
"chatwidget.css");
113 useStyleSheet(
"chatwidget_ie6.css",
"lt IE 7");
115 messageResourceBundle().use(appRoot() +
"simplechat");
117 const std::string *div = env.getParameter(
"div");
118 std::string defaultDiv =
"div";
123 setJavaScriptClass(*div);
125 bindWidget(chatWidget, *div);
129 std::string chat = javaScriptClass();
130 doJavaScript(
"if (window." + chat +
"User) " 131 + chat +
".emit(" + chat +
", 'login', " + chat +
"User);" 132 +
"document.body.appendChild(" + chatWidget->jsRef() +
");");
134 std::cerr <<
"Missing: parameter: 'div'" << std::endl;
150 int main(
int argc,
char **argv)
152 Wt::WServer server(argc, argv, WTHTTP_CONFIGURATION);
159 server.addEntryPoint(Wt::Application,
161 boost::ref(chatServer)));
162 server.addEntryPoint(Wt::WidgetSet,
164 boost::ref(chatServer)),
"/chat.js");
166 if (server.start()) {
167 int sig = Wt::WServer::waitForShutdown();
168 std::cerr <<
"Shutting down: (signal = " << sig <<
")" << std::endl;
SimpleChatServer & server_
int main(int argc, char **argv)
ChatApplication(const WEnvironment &env, SimpleChatServer &server)
Create a new instance.
WApplication * createApplication(const WEnvironment &env, SimpleChatServer &server)
Wt::WText * javaScriptError_
void addChatWidget()
Add another chat client.
const WEnvironment & env_
WApplication * createWidget(const WEnvironment &env, SimpleChatServer &server)
ChatWidget(const WEnvironment &env, SimpleChatServer &server)