Wt: Wt::WReadOnlyProxyModel Class Reference

Wt 4.10.4

Loading...
Searching...
No Matches
Public Member Functions | List of all members
Wt::WReadOnlyProxyModel Class Reference
Model/view system

A read-only wrapper for a source model. More...

`#include <Wt/WReadOnlyProxyModel.h>`

Inheritance diagram for Wt::WReadOnlyProxyModel:
[legend]

## Public Member Functions
| WReadOnlyProxyModel ()
| Constructor.
virtual WModelIndex | mapFromSource (const WModelIndex &sourceIndex) const override
| Maps a source model index to the proxy model.
virtual WModelIndex | mapToSource (const WModelIndex &proxyIndex) const override
| Maps a proxy model index to the source model.
virtual int | columnCount (const WModelIndex &parent=WModelIndex()) const override
| Returns the number of columns.
virtual int | rowCount (const WModelIndex &parent=WModelIndex()) const override
| Returns the number of rows.
virtual WModelIndex | parent (const WModelIndex &index) const override
| Returns the parent for a model index.
virtual WModelIndex | index (int row, int column, const WModelIndex &parent=WModelIndex()) const override
| Returns the child index for the given row and column.
virtual bool | setData (const WModelIndex &index, const cpp17::any &value, ItemDataRole role=ItemDataRole::Edit) override
| Always returns `false` and has no effect.
virtual bool | setItemData (const WModelIndex &index, const DataMap &values) override
| Always returns `false` and has no effect.
virtual bool | setHeaderData (int section, Orientation orientation, const cpp17::any &value, ItemDataRole role=ItemDataRole::Edit) override
| Always returns `false` and has no effect.
virtual bool | insertColumns (int column, int count, const WModelIndex &parent) override
| Always returns `false` and has no effect.
virtual bool | removeColumns (int column, int count, const WModelIndex &parent) override
| Always returns `false` and has no effect.
virtual void | dropEvent (const WDropEvent &e, DropAction action, int row, int column, const WModelIndex &parent) override
| Has no effect.
bool | setData (int row, int column, const cpp17::any &value, ItemDataRole role=ItemDataRole::Edit, const WModelIndex &parent=WModelIndex())
| Sets data at the given row and column.
bool | setHeaderData (int section, const cpp17::any &value)
| Sets column header data.
Public Member Functions inherited from Wt::WAbstractProxyModel
| WAbstractProxyModel ()
| Constructor.
virtual void | setSourceModel (const std::shared_ptr< WAbstractItemModel > &sourceModel)
| Sets the source model.
std::shared_ptr< WAbstractItemModel > | sourceModel () const
| Returns the source model.
virtual cpp17::any | data (const WModelIndex &index, ItemDataRole role=ItemDataRole::Display) const override
| Returns the data at a specific model index.
virtual cpp17::any | headerData (int section, Orientation orientation=Orientation::Horizontal, ItemDataRole role=ItemDataRole::Display) const override
| Returns the row or column header data.
virtual WFlags< ItemFlag > | flags (const WModelIndex &index) const override
| Returns the flags for an item.
virtual WFlags< HeaderFlag > | headerFlags (int section, Orientation orientation=Orientation::Horizontal) const override
| Returns the flags for a header.
virtual std::string | mimeType () const override
| Returns a mime-type for dragging a set of indexes.
virtual std::vector< std::string > | acceptDropMimeTypes () const override
| Returns a list of mime-types that could be accepted for a drop event.
virtual void * | toRawIndex (const WModelIndex &index) const override
| Converts a model index to a raw pointer that remains valid while the model's layout is changed.
virtual WModelIndex | fromRawIndex (void *rawIndex) const override
| Converts a raw pointer to a model index.
bool | setData (int row, int column, const cpp17::any &value, ItemDataRole role=ItemDataRole::Edit, const WModelIndex &parent=WModelIndex())
| Sets data at the given row and column.
cpp17::any | data (int row, int column, ItemDataRole role=ItemDataRole::Display, const WModelIndex &parent=WModelIndex()) const
| Returns the data item at the given column and row.
bool | setHeaderData (int section, const cpp17::any &value)
| Sets column header data.
Public Member Functions inherited from Wt::WAbstractItemModel
| WAbstractItemModel ()
| Creates a new data model.
virtual bool | hasChildren (const WModelIndex &index) const
| Returns if there are children at an index.
virtual DataMap | itemData (const WModelIndex &index) const
| Returns all data at a specific index.
virtual WModelIndexList | match (const WModelIndex &start, ItemDataRole role, const cpp17::any &value, int hits=-1, WFlags< MatchFlag > flags=WFlags< MatchFlag >(MatchFlag::StartsWith|MatchFlag::Wrap)) const
| Returns an index list for data items that match.
cpp17::any | data (int row, int column, ItemDataRole role=ItemDataRole::Display, const WModelIndex &parent=WModelIndex()) const
| Returns the data item at the given column and row.
virtual bool | hasIndex (int row, int column, const WModelIndex &parent=WModelIndex()) const
| Returns if an index at the given position is valid (i.e. falls within the column-row bounds).
virtual bool | insertRows (int row, int count, const WModelIndex &parent=WModelIndex())
| Inserts one or more rows.
virtual bool | removeRows (int row, int count, const WModelIndex &parent=WModelIndex())
| Removes rows.
bool | setHeaderData (int section, const cpp17::any &value)
| Sets column header data.
virtual void | sort (int column, SortOrder order=SortOrder::Ascending)
| Sorts the model according to a particular column.
virtual void | expandColumn (int column)
| Expands a column.
virtual void | collapseColumn (int column)
| Collapses a column.
virtual void | dropEvent (const WDropEvent &e, DropAction action, const WModelIndex &index, Wt::Side side)
| Handles a drop event.
bool | insertColumn (int column, const WModelIndex &parent=WModelIndex())
| Inserts one column.
bool | insertRow (int row, const WModelIndex &parent=WModelIndex())
| Inserts one row.
bool | removeColumn (int column, const WModelIndex &parent=WModelIndex())
| Removes one column.
bool | removeRow (int row, const WModelIndex &parent=WModelIndex())
| Removes one row.
bool | setData (int row, int column, const cpp17::any &value, ItemDataRole role=ItemDataRole::Edit, const WModelIndex &parent=WModelIndex())
| Sets data at the given row and column.
virtual Signal< WModelIndex, int, int > & | columnsAboutToBeInserted ()
| Signal emitted before a number of columns will be inserted.
virtual Signal< WModelIndex, int, int > & | columnsAboutToBeRemoved ()
| Signal emitted before a number of columns will be removed.
virtual Signal< WModelIndex, int, int > & | columnsInserted ()
| Signal emitted after a number of columns were inserted.
virtual Signal< WModelIndex, int, int > & | columnsRemoved ()
| Signal emitted after a number of columns were removed.
virtual Signal< WModelIndex, int, int > & | rowsAboutToBeInserted ()
| Signal emitted before a number of rows will be inserted.
virtual Signal< WModelIndex, int, int > & | rowsAboutToBeRemoved ()
| Signal emitted before a number of rows will be removed.
virtual Signal< WModelIndex, int, int > & | rowsInserted ()
| Signal emitted after a number of rows were inserted.
virtual Signal< WModelIndex, int, int > & | rowsRemoved ()
| Signal emitted after a number of rows were removed.
virtual Signal< WModelIndex, WModelIndex > & | dataChanged ()
| Signal emitted when some data was changed.
virtual Signal< Orientation, int, int > & | headerDataChanged ()
| Signal emitted when some header data was changed.
virtual Signal & | layoutAboutToBeChanged ()
| Signal emitted when the layout is about to be changed.
virtual Signal & | layoutChanged ()
| Signal emitted when the layout is changed.
virtual Signal & | modelReset ()
| Signal emitted when the model was reset.
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 const std::string | id () const
| Returns the (unique) identifier for this object.
virtual void | setObjectName (const std::string &name)
| Sets an object name.
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::WAbstractItemModel
typedef std::map< ItemDataRole, cpp17::any > | DataMap
| Data map.
Public Types inherited from Wt::WObject
typedef void(WObject::*) | Method()
| Typedef for a WObject method without arguments.
Static Public Member Functions inherited from Wt::WObject
Protected Types inherited from Wt::WAbstractProxyModel
typedef std::map< WModelIndex, BaseItem * > | ItemMap
| A map for items.
Protected Member Functions inherited from Wt::WAbstractProxyModel
WModelIndex | createSourceIndex (int row, int column, void *ptr) const
| Create a source model index.
void | startShiftModelIndexes (const WModelIndex &sourceParent, int start, int count, ItemMap &items)
| Utility methods to shift items in an item map.
Protected Member Functions inherited from Wt::WAbstractItemModel
void | reset ()
| Resets the model and invalidate any data.
WModelIndex | createIndex (int row, int column, void *ptr) const
| Creates a model index for the given row and column.
WModelIndex | createIndex (int row, int column, ::uint64_t id) const
| Creates a model index for the given row and column.
void | beginInsertColumns (const WModelIndex &parent, int first, int last)
| Method to be called before inserting columns.
void | beginInsertRows (const WModelIndex &parent, int first, int last)
| Method to be called before inserting rows.
void | beginRemoveColumns (const WModelIndex &parent, int first, int last)
| Method to be called before removing columns.
void | beginRemoveRows (const WModelIndex &parent, int first, int last)
| Method to be called before removing rows.
void | endInsertColumns ()
| Method to be called after inserting columns.
void | endInsertRows ()
| Method to be called after inserting rows.
void | endRemoveColumns ()
| Method to be called after removing columns.
void | endRemoveRows ()
| Method to be called after removing rows.
virtual void | copyData (const WModelIndex &sIndex, const WModelIndex &dIndex)
| Copy data to an index in this model.
Protected Member Functions inherited from Wt::WObject
virtual WStatelessSlot * | getStateless (Method method)
| On-demand stateless slot implementation.

## Detailed Description

A read-only wrapper for a source model.

This is a simple proxy model which provides a read-only view on a source model. This is convenient for situations where you want to share a common read-only source model between different sessions.

## Member Function Documentation

## ◆ columnCount()

virtual int Wt::WReadOnlyProxyModel::columnCount | ( | const WModelIndex & | parent = WModelIndex() | ) | const
| overridevirtual

Returns the number of columns.

This returns the column count of the source model.

Implements Wt::WAbstractItemModel.

## ◆ index()

virtual WModelIndex Wt::WReadOnlyProxyModel::index | ( | int | row,
|  | int | column,
|  | const WModelIndex & | parent = WModelIndex() ) const
| overridevirtual

Returns the child index for the given row and column.

Returns the index in the source model.

Implements Wt::WAbstractItemModel.

## ◆ mapFromSource()

virtual WModelIndex Wt::WReadOnlyProxyModel::mapFromSource | ( | const WModelIndex & | sourceIndex | ) | const
| overridevirtual

Maps a source model index to the proxy model.

Returns the sourceIndex unmodified.

Implements Wt::WAbstractProxyModel.

## ◆ mapToSource()

virtual WModelIndex Wt::WReadOnlyProxyModel::mapToSource | ( | const WModelIndex & | proxyIndex | ) | const
| overridevirtual

Maps a proxy model index to the source model.

Returns the proxyIndex unmodified.

Implements Wt::WAbstractProxyModel.

## ◆ parent()

virtual WModelIndex Wt::WReadOnlyProxyModel::parent | ( | const WModelIndex & | index | ) | const
| overridevirtual

Returns the parent for a model index.

Returns the parent of the given index in the source model.

Implements Wt::WAbstractItemModel.

## ◆ rowCount()

virtual int Wt::WReadOnlyProxyModel::rowCount | ( | const WModelIndex & | parent = WModelIndex() | ) | const
| overridevirtual

Returns the number of rows.

This returns the row count of the source model.

Implements Wt::WAbstractItemModel.

## ◆ setData()

bool Wt::WAbstractItemModel::setData | ( | int | row,
|  | int | column,
|  | const cpp17::any & | value,
|  | ItemDataRole | role = ItemDataRole::Edit,
|  | const WModelIndex & | parent = WModelIndex() )

Sets data at the given row and column.

This is a convience method, and is equivalent to:

setData(index(row, column, parent), value, role);
Wt::WReadOnlyProxyModel::setData
virtual bool setData(const WModelIndex &index, const cpp17::any &value, ItemDataRole role=ItemDataRole::Edit) override
Always returns false and has no effect.
Wt::WReadOnlyProxyModel::parent
virtual WModelIndex parent(const WModelIndex &index) const override
Returns the parent for a model index.
Wt::WReadOnlyProxyModel::index
virtual WModelIndex index(int row, int column, const WModelIndex &parent=WModelIndex()) const override
Returns the child index for the given row and column.

Returns `true` if the operation was successful.

See also
  setData(), index()

## ◆ setHeaderData()

bool Wt::WAbstractItemModel::setHeaderData | ( | int | section,
|  | const cpp17::any & | value )

Sets column header data.

Returns `true` if the operation was successful.

See also
  setHeaderData(int, Orientation, const cpp17::any&, int)