Wt: Wt::WInPlaceEdit Class Reference

Wt 3.3.0

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes

- Class List
- Class Hierarchy
- Class Members

Public Member Functions
Wt::WInPlaceEdit Class Reference

A widget that provides in-place-editable text. More...

`#include <Wt/WInPlaceEdit>`

Inheritance diagram for Wt::WInPlaceEdit:
[legend]

List of all members.

## Public Member Functions
| WInPlaceEdit (const WString &text, WContainerWidget *parent=0)
| Creates an in-place edit with the given text.
const WString & | text () const
| Returns the current value.
void | setText (const WString &text)
| Sets the current value.
void | setEmptyText (const WString &emptyText)
| Sets the empty text to be shown when the field is empty and not being edited.
const WString & | emptyText ()
| Returns the empty text to be shown when the field is empty and not being edited.
WLineEdit * | lineEdit () const
| Returns the line edit.
WText * | textWidget () const
| Returns the WText widget that renders the current string.
WPushButton * | saveButton () const
| Returns the save button.
WPushButton * | cancelButton () const
| Returns the cancel button.
Signal< WString > & | valueChanged ()
| Signal emitted when the value has been changed.
void | setButtonsEnabled (bool enabled=true)
| Displays the Save and 'Cancel' button during editing.

## Detailed Description

A widget that provides in-place-editable text.

The WInPlaceEdit provides a text that may be edited in place by the user by clicking on it. When clicked, the text turns into a line edit, with optionally a save and cancel button (see setButtonsEnabled()).

When the user saves the edit, the valueChanged() signal is emitted.

Usage example:

     Wt::WContainerWidget *w = new Wt::WContainerWidget();
     new Wt::WText("Name: ", w);
     Wt::WInPlaceEdit *edit = new Wt::WInPlaceEdit("Bob Smith", w);
     edit->setStyleClass("inplace");

This code will produce an edit that looks like:

WInPlaceEdit text mode

When the text is clicked, the edit will expand to become:

WInPlaceEdit edit mode

### CSS

A WInPlaceEdit widget renders as a `<span>` containing a WText, a WLineEdit and optional buttons (WPushButton). All these widgets may be styled as such. It does not provide style information.

In particular, you may want to provide a visual indication that the text is editable e.g. using a hover effect:

CSS stylesheet:

     .inplace span:hover {
        background-color: gray;
     }

## Member Function Documentation

WPushButton* Wt::WInPlaceEdit::cancelButton | ( |  | ) | const

Returns the cancel button.

This method returns `0` if the buttons were disabled.

See also:
  saveButton(), setButtonsEnabled()

const WString & Wt::WInPlaceEdit::emptyText | ( |  | ) |

Returns the empty text to be shown when the field is empty and not being edited.

See also:
  setEmptyText()

WLineEdit* Wt::WInPlaceEdit::lineEdit | ( |  | ) | const

Returns the line edit.

You may use this for example to set a validator on the line edit.

WPushButton* Wt::WInPlaceEdit::saveButton | ( |  | ) | const

Returns the save button.

This method returns `0` if the buttons were disabled.

See also:
  cancelButton(), setButtonsEnabled()

void Wt::WInPlaceEdit::setButtonsEnabled | ( | bool | enabled = `true` | ) |

Displays the Save and 'Cancel' button during editing.

By default, the Save and Cancel buttons are shown. Call this function with `enabled` = `false` to only show a line edit.

In this mode, the enter key or any event that causes focus to be lost saves the value while the escape key cancels the editing.

void Wt::WInPlaceEdit::setEmptyText | ( | const WString & | emptyText | ) |

Sets the empty text to be shown when the field is empty and not being edited.

See also:
  emptyText()

void Wt::WInPlaceEdit::setText | ( | const WString & | text | ) |

Sets the current value.

See also:
  text()

const WString & Wt::WInPlaceEdit::text | ( |  | ) | const

Returns the current value.

See also:
  setText()

WText* Wt::WInPlaceEdit::textWidget | ( |  | ) | const

Returns the WText widget that renders the current string.

You may use this for example to set the text format of the displayed string.

Signal<WString>& Wt::WInPlaceEdit::valueChanged | ( |  | ) |

Signal emitted when the value has been changed.

The signal argument provides the new value.

All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator