|
Wt
4.10.4
|
A selection box allows selection from a list of options. More...
#include <Wt/WSelectionBox.h>
Public Member Functions | |
| WSelectionBox () | |
| Constructor. | |
| int | verticalSize () const |
| Returns the number of items that are visible. | |
| void | setVerticalSize (int items) |
| Sets the number of items that are visible. | |
| void | setSelectionMode (SelectionMode mode) |
| Sets the selection mode. | |
| virtual SelectionMode | selectionMode () const override |
| Returns the selection mode. | |
| const std::set< int > & | selectedIndexes () const |
| Returns the current selection (in Wt::SelectionMode::Extended mode). | |
| void | setSelectedIndexes (const std::set< int > &selection) |
| Sets the selection (in Wt::SelectionMode::Extended mode). | |
| void | clearSelection () |
| Clears the current selection. | |
Public Member Functions inherited from Wt::WComboBox | |
| WComboBox () | |
| Creates an empty combo-box.. | |
| void | addItem (const WString &text) |
| Adds an option item. | |
| int | count () const |
| Returns the number of items. | |
| int | currentIndex () const |
| Returns the currently selected item. | |
| void | insertItem (int index, const WString &text) |
| Inserts an item at the specified position. | |
| void | removeItem (int index) |
| Removes the item at the specified position. | |
| void | setCurrentIndex (int index) |
| Changes the current selection. | |
| void | setItemText (int index, const WString &text) |
| Changes the text for a specified option. | |
| const WString | currentText () const |
| Returns the text of the currently selected item. | |
| const WString | itemText (int index) const |
| Returns the text of a particular item. | |
| void | setModel (const std::shared_ptr< WAbstractItemModel > model) |
| Sets the model to be used for the items. | |
| void | setModelColumn (int index) |
| Sets the column in the model to be used for the items. | |
| std::shared_ptr< WAbstractItemModel > | model () const |
| Returns the data model. | |
| int | findText (const WString &text, WFlags< MatchFlag > flags=MatchFlag::Exactly|MatchFlag::CaseSensitive) const |
| Returns the index of the first item that matches a text. | |
| virtual WString | valueText () const override |
| Returns the current value. | |
| virtual void | setValueText (const WString &value) override |
| Sets the current value. | |
| virtual void | refresh () override |
| Refresh the widget. | |
| void | clear () |
| Clears all items. | |
| Signal< int > & | activated () |
| Signal emitted when the selection changed. | |
| Signal< WString > & | sactivated () |
| Signal emitted when the selection changed. | |
| void | setNoSelectionEnabled (bool enabled) |
| Enables the ability to have 'no currently selected' item. | |
| bool | noSelectionEnabled () const |
| Returns whether 'no selection' is a valid state. | |
Public Member Functions inherited from Wt::WFormWidget | |
| WFormWidget () | |
| Creates a WFormWidget. | |
| ~WFormWidget () | |
| Destructor. | |
| WLabel * | label () const |
| Returns the label associated with this widget. | |
| virtual void | setHidden (bool hidden, const WAnimation &animation=WAnimation()) override |
| Sets the hidden state of this widget. | |
| void | setValidator (const std::shared_ptr< WValidator > &validator) |
| Sets a validator for this field. | |
| virtual std::shared_ptr< WValidator > | validator () const |
| Returns the validator. | |
| virtual ValidationState | validate () |
| Validates the field. | |
| void | setEnabled (bool enabled) |
| Sets whether the widget is enabled. | |
| virtual void | setReadOnly (bool readOnly) |
| Sets the element read-only. | |
| bool | isReadOnly () const |
| Returns whether the form element is read-only. | |
| virtual void | setPlaceholderText (const WString &placeholder) |
| Sets the placeholder text. | |
| const WString & | placeholderText () const |
| Returns the placeholder text. | |
| EventSignal & | changed () |
| Signal emitted when the value was changed. | |
| Signal< WValidator::Result > & | validated () |
| Signal emitted when the widget is being validated. | |
| virtual void | setToolTip (const WString &text, TextFormat textFormat=TextFormat::Plain) override |
| Sets a tooltip. | |
| virtual bool | canReceiveFocus () const override |
| Returns whether the widget can receive focus. | |
| virtual int | tabIndex () const override |
| Returns the tab index. | |
Public Member Functions inherited from Wt::WInteractWidget | |
| WInteractWidget () | |
| Create an InteractWidget. | |
| EventSignal< WKeyEvent > & | keyWentDown () |
| Event signal emitted when a keyboard key is pushed down. | |
| EventSignal< WKeyEvent > & | keyPressed () |
| Event signal emitted when a "character" was entered. | |
| EventSignal< WKeyEvent > & | keyWentUp () |
| Event signal emitted when a keyboard key is released. | |
| EventSignal & | enterPressed () |
| Event signal emitted when enter was pressed. | |
| EventSignal & | escapePressed () |
| Event signal emitted when escape was pressed. | |
| EventSignal< WMouseEvent > & | clicked () |
| Event signal emitted when the primary mouse button was clicked on this widget. | |
| EventSignal< WMouseEvent > & | doubleClicked () |
| Event signal emitted when the primary mouse button was double clicked on this widget. | |
| EventSignal< WMouseEvent > & | mouseWentDown () |
| Event signal emitted when a mouse button was pushed down on this widget. | |
| EventSignal< WMouseEvent > & | mouseWentUp () |
| Event signal emitted when a mouse button was released on this widget. | |
| EventSignal< WMouseEvent > & | mouseWentOut () |
| Event signal emitted when the mouse went out of this widget. | |
| EventSignal< WMouseEvent > & | mouseWentOver () |
| Event signal emitted when the mouse entered this widget. | |
| EventSignal< WMouseEvent > & | mouseMoved () |
| Event signal emitted when the mouse moved over this widget. | |
| EventSignal< WMouseEvent > & | mouseDragged () |
| Event signal emitted when the mouse is dragged over this widget. | |
| EventSignal< WMouseEvent > & | mouseWheel () |
| Event signal emitted when the mouse scroll wheel was used. | |
| EventSignal< WTouchEvent > & | touchStarted () |
| Event signal emitted when a finger is placed on the screen. | |
| EventSignal< WTouchEvent > & | touchEnded () |
| Event signal emitted when a finger is removed from the screen. | |
| EventSignal< WTouchEvent > & | touchMoved () |
| Event signal emitted when a finger, which is already placed on the screen, is moved across the screen. | |
| EventSignal< WGestureEvent > & | gestureStarted () |
| Event signal emitted when a gesture is started. | |
| EventSignal< WGestureEvent > & | gestureChanged () |
| Event signal emitted when a gesture is changed. | |
| EventSignal< WGestureEvent > & | gestureEnded () |
| Event signal emitted when a gesture is ended. | |
| void | setDraggable (const std::string &mimeType, WWidget *dragWidget=nullptr, bool isDragWidgetOnly=false, WObject *sourceWidget=nullptr) |
| Configure dragging for drag and drop. | |
| void | unsetDraggable () |
| Disable drag & drop for this widget. | |
| void | setMouseOverDelay (int delay) |
| Sets a delay for the mouse over event. | |
| int | mouseOverDelay () const |
| Returns the mouse over signal delay. | |
| virtual void | setPopup (bool popup) override |
| Lets the widget overlay over other sibling widgets. | |
| virtual void | load () override |
| Loads content just before the widget is used. | |
| virtual bool | isEnabled () const override |
| Returns whether the widget is enabled. | |
Public Member Functions inherited from Wt::WWebWidget | |
| WWebWidget () | |
| Construct a WebWidget. | |
| virtual std::vector< WWidget * > | children () const override |
| Returns child widgets. | |
| Signal & | childrenChanged () |
| Signal emitted when children have been added or removed. | |
| virtual void | setPositionScheme (PositionScheme scheme) override |
| Sets the CSS position scheme. | |
| virtual PositionScheme | positionScheme () const override |
| Returns the CSS position scheme. | |
| virtual void | setOffsets (const WLength &offset, WFlags< Side > sides=AllSides) override |
| Sets CSS offsets for a non-statically positioned widget. | |
| virtual WLength | offset (Side s) const override |
| Returns a CSS offset. | |
| virtual void | resize (const WLength &width, const WLength &height) override |
| Resizes the widget. | |
| virtual WLength | width () const override |
| Returns the width. | |
| virtual WLength | height () const override |
| Returns the height. | |
| virtual void | setMinimumSize (const WLength &width, const WLength &height) override |
| Sets a minimum size. | |
| virtual WLength | minimumWidth () const override |
| Returns the minimum width. | |
| virtual WLength | minimumHeight () const override |
| Returns the minimum height. | |
| virtual void | setMaximumSize (const WLength &width, const WLength &height) override |
| Sets a maximum size. | |
| virtual WLength | maximumWidth () const override |
| Returns the maximum width. | |
| virtual WLength | maximumHeight () const override |
| Returns the maximum height. | |
| virtual void | setLineHeight (const WLength &height) override |
| Sets the CSS line height for contained text. | |
| virtual WLength | lineHeight () const override |
| Returns the CSS line height for contained text. | |
| virtual void | setFloatSide (Side s) override |
| Specifies a CSS float side. | |
| virtual Side | floatSide () const override |
| Returns the CSS float side. | |
| virtual void | setClearSides (WFlags< Side > sides) override |
| Sets the sides that should be cleared of floats. | |
| virtual WFlags< Side > | clearSides () const override |
| Returns the sides that should remain empty. | |
| virtual void | setMargin (const WLength &margin, WFlags< Side > sides=AllSides) override |
| Sets CSS margins around the widget. | |
| virtual WLength | margin (Side side) const override |
| Returns a CSS margin set. | |
| virtual void | setHiddenKeepsGeometry (bool enabled) override |
| Sets whether the widget keeps its geometry when hidden. | |
| virtual bool | hiddenKeepsGeometry () const override |
| Returns whether the widget keeps its geometry when hidden. | |
| virtual bool | isHidden () const override |
| Returns whether the widget is set hidden. | |
| virtual bool | isVisible () const override |
| Returns whether the widget is visible. | |
| virtual void | setDisabled (bool disabled) override |
| Sets whether the widget is disabled. | |
| virtual bool | isDisabled () const override |
| Returns whether the widget is set disabled. | |
| virtual bool | isPopup () const override |
| Returns whether the widget is overlayed. | |
| virtual void | setInline (bool isInline) override |
| Sets whether the widget is displayed inline or as a block. | |
| virtual bool | isInline () const override |
| Returns whether the widget is displayed inline or as block. | |
| virtual void | setDecorationStyle (const WCssDecorationStyle &style) override |
| Sets a CSS decoration style. | |
| virtual WCssDecorationStyle & | decorationStyle () override |
| Returns the decoration style of this widget. | |
| virtual void | setStyleClass (const WString &styleClass) override |
| Sets (one or more) CSS style classes. | |
| virtual WString | styleClass () const override |
| Returns the CSS style class. | |
| virtual void | addStyleClass (const WString &styleClass, bool force=false) override |
| Adds a CSS style class. | |
| virtual void | removeStyleClass (const WString &styleClass, bool force=false) override |
| Removes a CSS style class. | |
| virtual bool | hasStyleClass (const WString &styleClass) const override |
| Returns whether the widget has a style class. | |
| virtual void | setVerticalAlignment (AlignmentFlag alignment, const WLength &length=WLength()) override |
| Sets the vertical alignment. | |
| virtual AlignmentFlag | verticalAlignment () const override |
| Returns the vertical alignment. | |
| virtual WLength | verticalAlignmentLength () const override |
| Returns the fixed vertical alignment that was set. | |
| virtual void | setDeferredToolTip (bool enable, TextFormat textFormat=TextFormat::Plain) override |
| Enable deferred tooltip. | |
| virtual WString | toolTip () const override |
| Returns the tooltip. | |
| virtual void | setAttributeValue (const std::string &name, const WString &value) override |
| Sets an attribute value. | |
| virtual WString | attributeValue (const std::string &name) const override |
| Returns an attribute value. | |
| virtual void | setJavaScriptMember (const std::string &name, const std::string &value) override |
| Sets a JavaScript member. | |
| virtual std::string | javaScriptMember (const std::string &name) const override |
| Returns the value of a JavaScript member. | |
| virtual void | callJavaScriptMember (const std::string &name, const std::string &args) override |
| Calls a JavaScript member. | |
| virtual bool | loaded () const override |
| Returns whether this widget has been loaded. | |
| virtual void | setId (const std::string &id) override |
| Sets the CSS Id. | |
| virtual WWidget * | find (const std::string &name) override |
| Finds a descendent widget by name. | |
| virtual WWidget * | findById (const std::string &id) override |
| Finds a descendent widget by id. | |
| virtual void | setSelectable (bool selectable) override |
| Sets as selectable. | |
| virtual void | doJavaScript (const std::string &javascript) override |
| Executes the given JavaScript statements when the widget is rendered or updated. | |
| virtual const std::string | id () const override |
| Returns the (unique) identifier for this object. | |
| void | setLoadLaterWhenInvisible (bool) |
| Change the way the widget is loaded when invisible. | |
| std::string | htmlTagName () const |
| returns the current html tag name | |
| void | setHtmlTagName (const std::string &tag) |
| set the custom HTML tag name | |
| virtual void | setCanReceiveFocus (bool enabled) override |
| Sets whether the widget can receive focus. | |
| virtual bool | setFirstFocus () override |
| Set focus on the widget's first descendant. | |
| virtual void | setFocus (bool focus) override |
| Sets focus. | |
| virtual bool | hasFocus () const override |
| Returns whether the widget currently has the focus. | |
| virtual void | setTabIndex (int index) override |
| Sets the tab index. | |
| EventSignal & | blurred () |
| Signal emitted when the widget lost focus. | |
| EventSignal & | focussed () |
| Signal emitted when the widget recieved focus. | |
| virtual bool | scrollVisibilityEnabled () const final override |
| Returns whether scroll visibility detection is enabled for this widget. | |
| virtual void | setScrollVisibilityEnabled (bool enabled) final override |
| Sets whether scroll visibility detection is enabled for this widget. | |
| virtual int | scrollVisibilityMargin () const final override |
| Returns the margin around the viewport within which the widget is considered visible. | |
| virtual void | setScrollVisibilityMargin (int margin) final override |
| Sets the margin around the viewport within which the widget is considered visible. | |
| virtual Signal< bool > & | scrollVisibilityChanged () final override |
| Signal triggered when the scroll visibility of this widget changes. | |
| virtual bool | isScrollVisible () const final override |
| Returns whether this widget is currently considered scroll visible. | |
| virtual void | setThemeStyleEnabled (bool enabled) final override |
| Sets whether theme styling for a widget is enabled or disabled. | |
| virtual bool | isThemeStyleEnabled () const final override |
| Returns whether this widget is currently styled by the chosen theme. | |
| virtual void | setObjectName (const std::string &name) override |
| Sets an object name. | |
| void | setFocus () |
| Sets focus. | |
| virtual void | setFocus (bool focus)=0 |
| Sets focus. | |
Public Member Functions inherited from Wt::WWidget | |
| virtual | ~WWidget () |
| Destructor. | |
| WWidget * | parent () const |
| Returns the parent widget. | |
| virtual std::unique_ptr< WWidget > | removeWidget (WWidget *widget) |
| Removes a child widget. | |
| template<typename Widget > | |
| std::unique_ptr< Widget > | removeWidget (Widget *widget) |
| Removes a child widget. | |
| std::unique_ptr< WWidget > | removeFromParent () |
| Removes the widget from its parent. | |
| void | setWidth (const WLength &width) |
| Sets the width. | |
| void | setHeight (const WLength &height) |
| Sets the height. | |
| virtual void | positionAt (const WWidget *widget, Orientation orientation=Orientation::Vertical) |
| Positions a widget next to another widget. | |
| virtual void | toggleStyleClass (const WString &styleClass, bool add, bool force=false) |
| Toggles a CSS style class. | |
| std::string | jsRef () const |
| Returns a JavaScript expression to the corresponding DOM node. | |
| void | setFocus () |
| Sets focus. | |
| virtual void | acceptDrops (const std::string &mimeType, const WString &hoverStyleClass=WString()) |
| Sets a mime type to be accepted for dropping. | |
| virtual void | stopAcceptDrops (const std::string &mimeType) |
| Indicates that a mime type is no longer accepted for dropping. | |
| virtual void | htmlText (std::ostream &out) |
| Streams the (X)HTML representation. | |
| bool | isRendered () const |
| Returns whether the widget is rendered. | |
| void | hide () |
| Hides the widget. | |
| void | animateHide (const WAnimation &animation) |
| Hides the widget using an animation. | |
| void | show () |
| Shows the widget. | |
| void | animateShow (const WAnimation &animation) |
| Shows the widget using an animation. | |
| void | enable () |
| Enables the widget. | |
| void | disable () |
| Disable thes widget. | |
| bool | layoutSizeAware () const |
| Returns whether the widget is layout size aware. | |
Public Member Functions inherited from Wt::WObject | |
| void | addChild (std::unique_ptr< WObject > child) |
| Add a child WObject whose lifetime is determined by this WObject. | |
| template<typename Child > | |
| Child * | addChild (std::unique_ptr< Child > child) |
| Add a child WObject, returning a raw pointer. | |
| std::unique_ptr< WObject > | removeChild (WObject *child) |
| Remove a child WObject, so its lifetime is no longer determined by this WObject. | |
| template<typename Child > | |
| std::unique_ptr< Child > | removeChild (Child *child) |
| Remove a child WObject, so its lifetime is no longer determined by this WObject. | |
| virtual std::string | objectName () const |
| Returns the object name. | |
| void | resetLearnedSlots () |
| Resets learned stateless slot implementations. | |
| template<class T > | |
| void | resetLearnedSlot (void(T::*method)()) |
| Resets a learned stateless slot implementation. | |
| template<class T > | |
| WStatelessSlot * | implementStateless (void(T::*method)()) |
| Declares a slot to be stateless and learn client-side behaviour on first invocation. | |
| template<class T > | |
| WStatelessSlot * | implementStateless (void(T::*method)(), void(T::*undoMethod)()) |
| Declares a slot to be stateless and learn client-side behaviour in advance. | |
| void | isNotStateless () |
| Marks the current function as not stateless. | |
| template<class T > | |
| WStatelessSlot * | implementJavaScript (void(T::*method)(), const std::string &jsCode) |
| Provides a JavaScript implementation for a method. | |
Public Member Functions inherited from Wt::Core::observable | |
| observable () noexcept | |
| Default constructor. | |
| virtual | ~observable () |
| Destructor. | |
| template<typename... Args, typename C > | |
| auto | bindSafe (void(C::*method)(Args...)) noexcept |
| Protects a method call against object destruction. | |
| template<typename... Args, typename C > | |
| auto | bindSafe (void(C::*method)(Args...) const) const noexcept |
| Protects a const method call against object destruction. | |
| template<typename Function > | |
| auto | bindSafe (const Function &function) noexcept |
| Protects a function against object destruction. | |
Additional Inherited Members | |
Public Types inherited from Wt::WObject | |
| typedef void(WObject::* | Method) () |
| Typedef for a WObject method without arguments. | |
Static Public Member Functions inherited from Wt::WWebWidget | |
| static std::string | jsStringLiteral (const std::string &v, char delimiter='\'') |
| Turn a CharEncoding::UTF8 encoded string into a JavaScript string literal. | |
Static Public Member Functions inherited from Wt::WWidget | |
| static WString | tr (const char *key) |
| Short hand for WString::tr() | |
Protected Member Functions inherited from Wt::WFormWidget | |
| virtual void | enableAjax () override |
| Progresses to an Ajax-enabled widget. | |
| virtual void | render (WFlags< RenderFlag > flags) override |
| Renders the widget. | |
| virtual void | propagateSetEnabled (bool enabled) override |
| Propagates that a widget was enabled or disabled through children. | |
Protected Member Functions inherited from Wt::WWebWidget | |
| virtual WStatelessSlot * | getStateless (Method method) override |
| On-demand stateless slot implementation. | |
Protected Member Functions inherited from Wt::WWidget | |
| void | setLayoutSizeAware (bool sizeAware) |
| Sets the widget to be aware of its size set by a layout manager. | |
| virtual void | layoutSizeChanged (int width, int height) |
| Virtual method that indicates a size change. | |
| WWidget () | |
| Creates a widget. | |
| virtual void | dropEvent (WDropEvent dropEvent) |
| Handles a drop event. | |
| virtual int | boxPadding (Orientation orientation) const |
| Returns the widget's built-in padding. | |
| virtual int | boxBorder (Orientation orientation) const |
| Returns the widget's built-in border width. | |
| void | scheduleRender (WFlags< RepaintFlag > flags=None) |
| Schedules rerendering of the widget. | |
A selection box allows selection from a list of options.
By default, a selection box may be used to let the user select one item from a list. This may be changed to multiple selection mode using setSelectionMode().
The current selection may be set and read using setCurrentIndex() and currentIndex(), for SelectionMode::Single mode, or setSelectedIndexes() and selectedIndexes() for Wt::SelectionMode::Extended mode. The activated() and sactivated() signals are not emited in the Wt::SelectionMode::Extended mode, use the changed() signal.
WSelectionBox is an MVC view class, using a simple string list model by default. The model may be populated using WComboBox::addItem() or WComboBox::insertItem() and the contents can be cleared through clear(). These methods manipulate the underlying model().
To use the selectionbox with a custom model instead of the default WStringListModel, use setModel().
Usage example:
WSelectionBox is an inline widget.
The widget corresponds to the HTML <select> tag and does not provide styling. It can be styled using inline or external CSS as appropriate.
| void Wt::WSelectionBox::clearSelection | ( | ) |
Clears the current selection.
Clears the current selection.
Returns the current selection (in Wt::SelectionMode::Extended mode).
Get the list of currently selected items. This method is only defined when selectionMode() is Wt::SelectionMode::Extended. Otherwise, you should use currentIndex() to get item currently selected.
|
overridevirtual |
Returns the selection mode.
Reimplemented from Wt::WComboBox.
Sets the selection (in Wt::SelectionMode::Extended mode).
For an Wt::SelectionMode::Extended mode, set the list of currently selected items.
| void Wt::WSelectionBox::setSelectionMode | ( | SelectionMode | mode | ) |
Sets the selection mode.
The default selection mode is SelectionMode::Single. You can change to Wt::SelectionMode::Extended to allow selection of multiple items.