25class KWIN_EXPORT 
Tile : 
public QObject
 
   28    Q_PROPERTY(QRectF relativeGeometry READ relativeGeometry WRITE setRelativeGeometry NOTIFY relativeGeometryChanged)
 
   29    Q_PROPERTY(QRectF absoluteGeometry READ absoluteGeometry NOTIFY absoluteGeometryChanged)
 
   30    Q_PROPERTY(QRectF absoluteGeometryInScreen READ absoluteGeometryInScreen NOTIFY absoluteGeometryChanged)
 
   31    Q_PROPERTY(qreal padding READ padding WRITE setPadding NOTIFY paddingChanged)
 
   32    Q_PROPERTY(
int positionInLayout READ row NOTIFY rowChanged)
 
   33    Q_PROPERTY(
Tile *parent READ parentTile CONSTANT)
 
   34    Q_PROPERTY(QList<
KWin::
Tile *> tiles READ childTiles NOTIFY childTilesChanged)
 
   35    Q_PROPERTY(QList<
KWin::
Window *> windows READ windows NOTIFY windowsChanged)
 
   36    Q_PROPERTY(
bool isLayout READ isLayout NOTIFY isLayoutChanged)
 
   37    Q_PROPERTY(
bool canBeRemoved READ canBeRemoved CONSTANT)
 
   45    Q_ENUM(LayoutDirection)
 
   50    void setGeometryFromWindow(
const QRectF &geom);
 
   51    void setGeometryFromAbsolute(
const QRectF &geom);
 
   52    virtual void setRelativeGeometry(
const QRectF &geom);
 
   54    virtual bool supportsResizeGravity(
Gravity gravity);
 
   59    QRectF relativeGeometry() 
const;
 
   64    QRectF absoluteGeometry() 
const;
 
   70    QRectF absoluteGeometryInScreen() 
const;
 
   75    QRectF windowGeometry() 
const;
 
   80    QRectF maximizedWindowGeometry() 
const;
 
   82    bool isLayout() 
const;
 
   83    bool canBeRemoved() 
const;
 
   85    qreal padding() 
const;
 
   86    void setPadding(qreal padding);
 
   88    QuickTileMode quickTileMode() 
const;
 
   89    void setQuickTileMode(QuickTileMode mode);
 
   94    QList<Tile *> childTiles() 
const;
 
   99    QList<Tile *> descendants() 
const;
 
  104    void visitDescendants(std::function<
void(
const Tile *child)> callback) 
const;
 
  106    void resizeFromGravity(
Gravity gravity, 
int x_root, 
int y_root);
 
  108    Q_INVOKABLE 
void resizeByPixels(qreal delta, Qt::Edge edge);
 
  110    void addWindow(
Window *window);
 
  111    void removeWindow(
Window *window);
 
  112    QList<KWin::Window *> windows() 
const;
 
  115    int childCount() 
const;
 
  116    Tile *childTile(
int row);
 
  117    Tile *nextSibling() 
const;
 
  118    Tile *previousSibling() 
const;
 
  119    Tile *parentTile() 
const;
 
  124        return s_minimumSize;
 
 
  127    void destroyChild(
Tile *tile);
 
  132        T *t = 
new T(m_tiling, 
static_cast<T *
>(
this));
 
  133        t->setRelativeGeometry(relativeGeometry);
 
  134        insertChild(position, t);
 
 
  151    void insertChild(
int position, 
Tile *item);
 
  152    void removeChild(
Tile *child);
 
  155    QList<Tile *> m_children;
 
  156    QList<Window *> m_windows;
 
  160    QRectF m_relativeGeometry;
 
  161    static QSizeF s_minimumSize;
 
  162    QuickTileMode m_quickTileMode = QuickTileFlag::None;
 
  163    qreal m_padding = 4.0;