Wt examples  3.3.4
Public Member Functions | Private Member Functions | Private Attributes | List of all members
LettersWidget Class Reference

#include <LettersWidget.h>

Inheritance diagram for LettersWidget:
Inheritance graph
[legend]

Public Member Functions

 LettersWidget (Wt::WContainerWidget *parent=0)
 
void reset ()
 
Wt::Signal< char > & letterPushed ()
 
- Public Member Functions inherited from Wt::WWidget
virtual void setPositionScheme (PositionScheme scheme)=0
 
virtual PositionScheme positionScheme () const =0
 
virtual void setOffsets (const WLength &offset, WFlags< Side > sides=All)=0
 
virtual WLength offset (Side side) const =0
 
virtual void resize (const WLength &width, const WLength &height)
 
virtual WLength width () const =0
 
virtual WLength height () const =0
 
virtual void setMinimumSize (const WLength &width, const WLength &height)=0
 
virtual WLength minimumWidth () const =0
 
virtual WLength minimumHeight () const =0
 
virtual void setMaximumSize (const WLength &width, const WLength &height)=0
 
virtual WLength maximumWidth () const =0
 
virtual WLength maximumHeight () const =0
 
virtual void setLineHeight (const WLength &height)=0
 
virtual WLength lineHeight () const =0
 
virtual void setFloatSide (Side s)=0
 
virtual Side floatSide () const =0
 
virtual void setClearSides (WFlags< Side > sides)=0
 
virtual WFlags< SideclearSides () const =0
 
virtual void setMargin (const WLength &margin, WFlags< Side > sides=All)=0
 
virtual WLength margin (Side side) const =0
 
virtual void setHiddenKeepsGeometry (bool enabled)=0
 
virtual bool hiddenKeepsGeometry () const =0
 
virtual void setHidden (bool hidden, const WAnimation &animation=WAnimation())=0
 
virtual bool isHidden () const =0
 
virtual bool isVisible () const =0
 
virtual void setDisabled (bool disabled)=0
 
virtual bool isDisabled () const =0
 
virtual bool isEnabled () const =0
 
virtual void setPopup (bool popup)=0
 
virtual bool isPopup () const =0
 
virtual void setInline (bool inlined)=0
 
virtual bool isInline () const =0
 
virtual void setDecorationStyle (const WCssDecorationStyle &style)=0
 
virtual WCssDecorationStyledecorationStyle ()=0
 
virtual void setStyleClass (const WString &styleClass)=0
 
virtual WString styleClass () const =0
 
virtual void addStyleClass (const WString &styleClass, bool force=false)=0
 
virtual void removeStyleClass (const WString &styleClass, bool force=false)=0
 
virtual bool hasStyleClass (const WString &styleClass) const =0
 
virtual void setVerticalAlignment (AlignmentFlag alignment, const WLength &length=WLength::Auto)=0
 
virtual AlignmentFlag verticalAlignment () const =0
 
virtual WLength verticalAlignmentLength () const =0
 
virtual void setToolTip (const WString &text, TextFormat textFormat=PlainText)=0
 
virtual WString toolTip () const =0
 
virtual void setDeferredToolTip (bool enable, TextFormat textFormat=PlainText)=0
 
virtual void refresh ()
 
virtual void setAttributeValue (const std::string &name, const WString &value)=0
 
virtual WString attributeValue (const std::string &name) const =0
 
virtual void setJavaScriptMember (const std::string &name, const std::string &value)=0
 
virtual std::string javaScriptMember (const std::string &name) const =0
 
virtual void callJavaScriptMember (const std::string &name, const std::string &args)=0
 
virtual void load ()=0
 
virtual bool loaded () const =0
 
virtual void setCanReceiveFocus (bool enabled)=0
 
virtual bool canReceiveFocus () const =0
 
virtual void setFocus (bool focus)=0
 
virtual bool setFirstFocus ()=0
 
virtual bool hasFocus () const =0
 
virtual void setTabIndex (int index)=0
 
virtual int tabIndex () const =0
 
virtual void setId (const std::string &id)=0
 
virtual WWidgetfind (const std::string &name)=0
 
virtual WWidgetfindById (const std::string &id)=0
 
virtual void setSelectable (bool selectable)=0
 
virtual void doJavaScript (const std::string &js)=0
 

Private Member Functions

void processButton (Wt::WPushButton *b)
 
void processButtonPushed (const Wt::WKeyEvent &e, Wt::WPushButton *b)
 

Private Attributes

Wt::WTableimpl_
 
std::vector< Wt::WPushButton * > letterButtons_
 
Wt::Signal< char > letterPushed_
 

Additional Inherited Members

- Protected Member Functions inherited from Wt::WWidget
virtual void enableAjax ()=0
 
virtual void propagateSetEnabled (bool enabled)=0
 
virtual void render (WFlags< RenderFlag > flags)
 

Detailed Description

Definition at line 19 of file LettersWidget.h.

Constructor & Destructor Documentation

LettersWidget::LettersWidget ( Wt::WContainerWidget parent = 0)

Definition at line 16 of file LettersWidget.C.

17  : WCompositeWidget(parent)
18 {
19  setImplementation(impl_ = new WTable());
20 
21  impl_->resize(13*30, WLength::Auto);
22 
23  for (unsigned int i = 0; i < 26; ++i) {
24  std::string c(1, 'A' + i);
25  WPushButton *character = new WPushButton(c,
26  impl_->elementAt(i / 13, i % 13));
27  letterButtons_.push_back(character);
28  character->resize(WLength(30), WLength::Auto);
29 
30  character->clicked().connect
31  (boost::bind(&LettersWidget::processButton, this, character));
32 
33  WApplication::instance()->globalKeyPressed().connect
34  (boost::bind(&LettersWidget::processButtonPushed, this, _1, character));
35  }
36 }
void processButton(Wt::WPushButton *b)
Definition: LettersWidget.C:38
virtual void resize(const WLength &width, const WLength &height)
WTableCell * elementAt(int row, int column)
std::vector< Wt::WPushButton * > letterButtons_
Definition: LettersWidget.h:30
void processButtonPushed(const Wt::WKeyEvent &e, Wt::WPushButton *b)
Definition: LettersWidget.C:44
Wt::WTable * impl_
Definition: LettersWidget.h:29

Member Function Documentation

Wt::Signal<char>& LettersWidget::letterPushed ( )
inline

Definition at line 26 of file LettersWidget.h.

26 { return letterPushed_; }
Wt::Signal< char > letterPushed_
Definition: LettersWidget.h:32
void LettersWidget::processButton ( Wt::WPushButton b)
private

Definition at line 38 of file LettersWidget.C.

39 {
40  b->disable();
41  letterPushed_.emit(b->text().toUTF8()[0]);
42 }
void emit(A1 a1=NoClass::none, A2 a2=NoClass::none, A3 a3=NoClass::none, A4 a4=NoClass::none, A5 a5=NoClass::none, A6 a6=NoClass::none) const
Wt::Signal< char > letterPushed_
Definition: LettersWidget.h:32
const WString & text() const
std::string toUTF8() const
void LettersWidget::processButtonPushed ( const Wt::WKeyEvent e,
Wt::WPushButton b 
)
private

Definition at line 44 of file LettersWidget.C.

45 {
46  if(isHidden())
47  return;
48 
49  if(e.key() == b->text().toUTF8()[0])
50  processButton(b);
51 }
Key key() const
void processButton(Wt::WPushButton *b)
Definition: LettersWidget.C:38
const WString & text() const
std::string toUTF8() const
virtual bool isHidden() const =0
void LettersWidget::reset ( )

Definition at line 53 of file LettersWidget.C.

54 {
55  for (unsigned int i = 0; i < letterButtons_.size(); ++i)
56  letterButtons_[i]->enable();
57 
58  show();
59 }
std::vector< Wt::WPushButton * > letterButtons_
Definition: LettersWidget.h:30

Member Data Documentation

Wt::WTable* LettersWidget::impl_
private

Definition at line 29 of file LettersWidget.h.

std::vector<Wt::WPushButton *> LettersWidget::letterButtons_
private

Definition at line 30 of file LettersWidget.h.

Wt::Signal<char> LettersWidget::letterPushed_
private

Definition at line 32 of file LettersWidget.h.


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

Generated on Thu Nov 12 2015 for the C++ Web Toolkit (Wt) by doxygen 1.8.11