Wt examples  4.5.0
Public Member Functions | Private Attributes | List of all members
ChatWidget Class Reference

A chat application widget. More...

Inheritance diagram for ChatWidget:
Inheritance graph
[legend]

Public Member Functions

 ChatWidget (const Wt::WEnvironment &env, SimpleChatServer &server)
 

Private Attributes

Wt::JSignal< Wt::WString > login_
 

Detailed Description

A chat application widget.

Definition at line 99 of file simpleChat.C.

Constructor & Destructor Documentation

◆ ChatWidget()

ChatWidget::ChatWidget ( const Wt::WEnvironment &  env,
SimpleChatServer server 
)

Definition at line 108 of file simpleChat.C.

109  : Wt::WApplication(env),
110  login_(this, "login")
111 {
112  setCssTheme("");
113  useStyleSheet("chatwidget.css");
114  useStyleSheet("chatwidget_ie6.css", "lt IE 7");
115 
116  messageResourceBundle().use(appRoot() + "simplechat");
117 
118  const std::string *div = env.getParameter("div");
119  std::string defaultDiv = "div";
120  if (!div)
121  div = &defaultDiv;
122 
123  if (div) {
124  setJavaScriptClass(*div);
125  std::unique_ptr<PopupChatWidget> chatWidgetPtr =
126  std::make_unique<PopupChatWidget>(server, *div);
127  PopupChatWidget *chatWidget = chatWidgetPtr.get();
128  bindWidget(std::move(chatWidgetPtr), *div);
129 
130  login_.connect(chatWidget, &PopupChatWidget::setName);
131 
132  std::string chat = javaScriptClass();
133  doJavaScript("if (window." + chat + "User) "
134  + chat + ".emit(" + chat + ", 'login', " + chat + "User);"
135  + "document.body.appendChild(" + chatWidget->jsRef() + ");");
136  } else {
137  std::cerr << "Missing: parameter: 'div'" << std::endl;
138  quit();
139  }
140 }
Wt::JSignal< Wt::WString > login_
Definition: simpleChat.C:105
A popup chat widget.
void setName(const Wt::WString &name)

Member Data Documentation

◆ login_

Wt::JSignal<Wt::WString> ChatWidget::login_
private

Definition at line 105 of file simpleChat.C.


The documentation for this class was generated from the following file:

Generated on Sat Aug 14 2021 for the C++ Web Toolkit (Wt) by doxygen 1.9.1