Wt: Wt::WOverlayLoadingIndicator Class Reference

Wt 3.3.0

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

- Class List
- Class Hierarchy
- Class Members

Public Member Functions
Wt::WOverlayLoadingIndicator Class Reference

A more obvious loading indicator that grays the window. More...

`#include <Wt/WOverlayLoadingIndicator>`

Inheritance diagram for Wt::WOverlayLoadingIndicator:
[legend]

List of all members.

## Public Member Functions
| WOverlayLoadingIndicator (const WString &styleClass=WString(), const WString &backgroundStyleClass=WString(), const WString &textStyleClass=WString())
| Construct the loading indicator.
virtual WWidget * | widget ()
| Returns the widget that visually represents the indicator.
virtual void | setMessage (const WString &text)
| Sets the message that you want to be displayed.

## Detailed Description

A more obvious loading indicator that grays the window.

This loading indicator uses a gray semi-transparent overlay to darken the window contents, and centers a loading icon (with some text).

Usage example:

     Wt::WApplication *app = Wt::WApplication::instance();
     app->setLoadingIndicator(new Wt::WOverlayLoadingIndicator());

The overlay loading indicator

Note:
  For this loading indicator to render properly in IE, you need to reset the "body" margin to 0. Using the inline stylesheet, this could be done using:

         WApplication::instance()->styleSheet().addRule("body", "margin: 0px");

### CSS

This widget does not provide styling, and can be styled using inline or external CSS as appropriate.

### i18n

The strings used in this class can be translated by overriding the default values for the following localization keys:

- Wt.WOverlayLoadingIndicator.Loading: Loading...

See also:
  WApplication::setLoadingIndicator()

## Constructor & Destructor Documentation

Wt::WOverlayLoadingIndicator::WOverlayLoadingIndicator | ( | const WString & | styleClass = `WString()`,
|  | const WString & | backgroundStyleClass = `WString()`,
|  | const WString & | textStyleClass = `WString()`
| ) |  |

Construct the loading indicator.

Parameters:

  styleClass | the style class for the central box
  backgroundStyleClass | the style class for the "background" part of the indicator
  textStyleClass | the style class for the text that is displayed

Note:
  if styleClass is not set, the central box gets the CSS style elements

                   background: white;
                   border: 3px solid #333333;
                   z-index: 10001; visibility: visible;
                   position: absolute; left: 50%; top: 50%;
                   margin-left: -50px; margin-top: -40px;
                   width: 100px; height: 80px;
                   font-family: arial,sans-serif;
                   text-align: center

  if backgroundStyleClass is not set, the background gets the CSS style elements

                   background: #DDDDDD;
                   height: 100%; width: 100%;
                   top: 0px; left: 0px;
                   z-index: 10000;
                   -moz-background-clip: -moz-initial;
                   -moz-background-origin: -moz-initial;
                   -moz-background-inline-policy: -moz-initial;
                   opacity: 0.5; filter: alpha(opacity=50); -moz-opacity:0.5;
                   position: absolute;

## Member Function Documentation

void Wt::WOverlayLoadingIndicator::setMessage | ( | const WString & | text | ) | `[virtual]`

Sets the message that you want to be displayed.

If the indicator is capable of displaying a text message, then you should reimplement this method to allow this message to be modified.

Implements Wt::WLoadingIndicator.

virtual WWidget* Wt::WOverlayLoadingIndicator::widget | ( |  | ) | `[virtual]`

Returns the widget that visually represents the indicator.

You should reimplement this method to return a widget that will be shown to indicate that a response is pending. The widget should be positioned using CSS.

The widget will be shown and hidden using WWidget::show() and WWidget::hide(). If you want to customize this behaviour, you should reimplement the WWidget::setHidden() method. Note that show() and hide() are stateless slots, and thus you need to make sure that your implementation comforms to that contract, so that it may be optimized to JavaScript (the server-side implementation will only be called during stateless slot prelearning).

Note:
  The widget will not be added to the WApplication::root() container.

Implements Wt::WLoadingIndicator.

All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator