18#ifndef QGSLAYOUTMODEL_H 
   19#define QGSLAYOUTMODEL_H 
   25#include <QAbstractItemModel> 
   26#include <QSortFilterProxyModel> 
   72    QModelIndex index( 
int row, 
int column, 
const QModelIndex &parent = QModelIndex() ) 
const override;
 
   73    QModelIndex parent( 
const QModelIndex &index ) 
const override;
 
   74    int rowCount( 
const QModelIndex &parent = QModelIndex() ) 
const override;
 
   75    int columnCount( 
const QModelIndex &parent = QModelIndex() ) 
const override;
 
   76    QVariant data( 
const QModelIndex &index, 
int role ) 
const override;
 
   77    Qt::ItemFlags flags( 
const QModelIndex &index ) 
const override;
 
   78    bool setData( 
const QModelIndex &index, 
const QVariant &value, 
int role ) 
override;
 
   79    QVariant headerData( 
int section, Qt::Orientation orientation, 
int role = Qt::DisplayRole ) 
const override;
 
   80    Qt::DropActions supportedDropActions() 
const override;
 
   81    QStringList mimeTypes() 
const override;
 
   82    QMimeData *mimeData( 
const QModelIndexList &indexes ) 
const override;
 
   83    bool dropMimeData( 
const QMimeData *data, Qt::DropAction action, 
int row, 
int column, 
const QModelIndex &parent ) 
override;
 
   84    bool removeRows( 
int row, 
int count, 
const QModelIndex &parent = QModelIndex() ) 
override;
 
   97    int zOrderListSize() 
const;
 
  187    QList<QgsLayoutItem *> &zOrderList();
 
  204    void setItemRestored( QgsComposerItem *item );
 
  246    QgsLayoutItem *itemFromIndex( 
const QModelIndex &index ) 
const;
 
  252    QModelIndex indexForItem( 
QgsLayoutItem *item, 
int column = 0 );
 
  262    void setSelected( 
const QModelIndex &index );
 
  269    QList<QgsLayoutItem *> mItemZList;
 
  272    QList<QgsLayoutItem *> mItemsInScene;
 
  286    void refreshItemsInScene();
 
  293    void rebuildSceneItemList();
 
  295    friend class TestQgsLayoutModel;
 
  296    friend class TestQgsLayoutGui;
 
  336    void setExceptedItemList( 
const QList< QgsLayoutItem * > &items );
 
  353    QgsLayoutItem *itemFromSourceIndex( 
const QModelIndex &sourceIndex ) 
const;
 
  366    void setAllowEmptyItem( 
bool allowEmpty );
 
  373    bool allowEmptyItem() 
const;
 
  383    void setItemFlags( QgsLayoutItem::Flags flags );
 
  393    QgsLayoutItem::Flags itemFlags() 
const;
 
  396    bool filterAcceptsRow( 
int sourceRow, 
const QModelIndex &sourceParent ) 
const override;
 
  397    bool lessThan( 
const QModelIndex &left, 
const QModelIndex &right ) 
const override;
 
  402    QList< QgsLayoutItem * > mExceptedList;
 
  403    bool mAllowEmpty = 
false;
 
  404    QgsLayoutItem::Flags mItemFlags = QgsLayoutItem::Flags();
 
Base class for graphical items within a QgsLayout.
 
A model for items attached to a layout.
 
Columns
Columns returned by the model.
 
@ LockStatus
Item lock status checkbox.
 
Allows for filtering a QgsLayoutModel by item type.
 
QgsLayoutModel * sourceLayerModel() const
Returns the QgsLayoutModel used in this proxy model.
 
QgsLayout * layout()
Returns the associated layout.
 
QgsLayoutItemRegistry::ItemType filterType() const
Returns the current item type filter, or QgsLayoutItemRegistry::LayoutItem if no item type filter is ...
 
QList< QgsLayoutItem * > exceptedItemList() const
Returns the list of specific items excluded from the model.
 
Base class for layouts, which can contain items such as maps, labels, scalebars, etc.