chalk

KisGroupLayer Class Reference

#include <kis_group_layer.h>

Inheritance diagram for KisGroupLayer:
KisLayer

Signals

void sigDirty (TQRect rc)
 

Public Member Functions

 KisGroupLayer (KisImage *img, const TQString &name, TQ_UINT8 opacity)
 
 KisGroupLayer (const KisGroupLayer &rhs)
 
virtual KisLayerSP clone () const
 
virtual void setDirty (bool propagate=true)
 
virtual void setDirty (const TQRect &rect, bool propagate=true)
 
virtual void activate ()
 
virtual void deactivate ()
 
virtual TQ_INT32 x () const
 
virtual void setX (TQ_INT32)
 
virtual TQ_INT32 y () const
 
virtual void setY (TQ_INT32)
 
virtual void setImage (KisImage *image)
 
virtual TQRect extent () const
 
virtual TQRect exactBounds () const
 
virtual bool accept (KisLayerVisitor &v)
 
virtual void resetProjection (KisPaintDevice *to=0)
 
virtual KisPaintDeviceSP projection (const TQRect &rect)
 
virtual uint childCount () const
 
virtual KisLayerSP firstChild () const
 
virtual KisLayerSP lastChild () const
 
virtual KisLayerSP at (int index) const
 
virtual int index (KisLayerSP layer) const
 
virtual void setIndex (KisLayerSP layer, int index)
 
virtual bool addLayer (KisLayerSP newLayer, int index)
 
virtual bool addLayer (KisLayerSP newLayer, KisLayerSP aboveThis)
 
virtual bool removeLayer (int index)
 
virtual bool removeLayer (KisLayerSP layer)
 
virtual TQImage createThumbnail (TQ_INT32 w, TQ_INT32 h)
 
virtual bool paintLayerInducesProjectionOptimization (KisPaintLayer *l)
 
- Public Member Functions inherited from KisLayer
 KisLayer (KisImage *img, const TQString &name, TQ_UINT8 opacity)
 
 KisLayer (const KisLayer &rhs)
 
virtual void setClean (const TQRect &rect)
 
virtual bool dirty ()
 
virtual bool dirty (const TQRect &rc)
 
virtual TQRect dirtyRect () const
 
int id () const
 
virtual int index () const
 
virtual void setIndex (int index)
 
virtual KisGroupLayerSP parent () const
 
virtual KisLayerSP prevSibling () const
 
virtual KisLayerSP nextSibling () const
 
KisLayerSP siblingAbove () const
 
KisLayerSP siblingBelow () const
 
virtual KisLayerSP findLayer (const TQString &name) const
 
virtual KisLayerSP findLayer (int id) const
 
virtual int numLayers (int type=0) const
 
virtual KNamedCommand * moveCommand (TQPoint oldPosition, TQPoint newPosition)
 
virtual const bool visible () const
 
virtual void setVisible (bool v)
 
KNamedCommand * setVisibleCommand (bool visiblel)
 
TQ_UINT8 opacity () const
 
void setOpacity (TQ_UINT8 val)
 
KNamedCommand * setOpacityCommand (TQ_UINT8 val)
 
KNamedCommand * setOpacityCommand (TQ_UINT8 prevOpacity, TQ_UINT8 newOpacity)
 
bool locked () const
 
void setLocked (bool l)
 
KNamedCommand * setLockedCommand (bool locked)
 
void notifyPropertyChanged ()
 
bool temporary () const
 
void setTemporary (bool t)
 
virtual TQString name () const
 
virtual void setName (const TQString &name)
 
KisCompositeOp compositeOp ()
 
void setCompositeOp (const KisCompositeOp &compositeOp)
 
KNamedCommand * setCompositeOpCommand (const KisCompositeOp &compositeOp)
 
KisImage * image () const
 
KisUndoAdapter * undoAdapter () const
 
virtual void paintSelection (TQImage &img, TQ_INT32 x, TQ_INT32 y, TQ_INT32 w, TQ_INT32 h)
 
virtual void paintSelection (TQImage &img, const TQRect &scaledImageRect, const TQSize &scaledImageSize, const TQSize &imageSize)
 
virtual void paintMaskInactiveLayers (TQImage &img, TQ_INT32 x, TQ_INT32 y, TQ_INT32 w, TQ_INT32 h)
 

Additional Inherited Members

- Public Types inherited from KisLayer
enum  { Visible = 1 , Hidden = 2 , Locked = 4 , Unlocked = 8 }
 

Detailed Description

A KisLayer that bundles child layers into a single layer.

The top layer is firstChild(), with index 0; the bottommost lastChild() with index childCount() - 1. KisLayer::nextSibling() moves towards higher indices, from the top to the bottom layer; prevSibling() the reverse. (Implementation detail: internally, the indices are reversed, for speed.)

Definition at line 36 of file kis_group_layer.h.

Constructor & Destructor Documentation

◆ KisGroupLayer() [1/2]

KisGroupLayer::KisGroupLayer ( KisImage *  img,
const TQString &  name,
TQ_UINT8  opacity 
)

Definition at line 34 of file kis_group_layer.cpp.

◆ KisGroupLayer() [2/2]

KisGroupLayer::KisGroupLayer ( const KisGroupLayer &  rhs)

Definition at line 42 of file kis_group_layer.cpp.

◆ ~KisGroupLayer()

KisGroupLayer::~KisGroupLayer ( )
virtual

Definition at line 60 of file kis_group_layer.cpp.

Member Function Documentation

◆ accept()

virtual bool KisGroupLayer::accept ( KisLayerVisitor &  )
inlinevirtual

Accept the KisLayerVisitor (for the Visitor design pattern), should call the correct function on the KisLayerVisitor for this layer type.

Implements KisLayer.

Definition at line 79 of file kis_group_layer.h.

◆ activate()

virtual void KisGroupLayer::activate ( )
inlinevirtual

Called when the layer is made active.

Reimplemented from KisLayer.

Definition at line 63 of file kis_group_layer.h.

◆ addLayer() [1/2]

bool KisGroupLayer::addLayer ( KisLayerSP  newLayer,
int  index 
)
virtual

Adds the layer to this group at the specified index.

childCount() is a valid index and appends to the end. Fails and returns false if the layer is already in this group or any other (remove it first.)

Definition at line 163 of file kis_group_layer.cpp.

◆ addLayer() [2/2]

bool KisGroupLayer::addLayer ( KisLayerSP  newLayer,
KisLayerSP  aboveThis 
)
virtual

Add the specified layer above the specified layer (if aboveThis == 0, the bottom is used)

Definition at line 186 of file kis_group_layer.cpp.

◆ at()

KisLayerSP KisGroupLayer::at ( int  index) const
virtual

Returns the layer at the specified index.

Definition at line 140 of file kis_group_layer.cpp.

◆ childCount()

uint KisGroupLayer::childCount ( ) const
virtual

Returns how many direct child layers this layer has (not recursive).

Reimplemented from KisLayer.

Definition at line 125 of file kis_group_layer.cpp.

◆ clone()

KisLayerSP KisGroupLayer::clone ( ) const
virtual

Return a copy of this layer.

Implements KisLayer.

Definition at line 55 of file kis_group_layer.cpp.

◆ createThumbnail()

TQImage KisGroupLayer::createThumbnail ( TQ_INT32  w,
TQ_INT32  h 
)
virtual

Returns a thumbnail in requested size.

The TQImage may have transparent parts. May also return 0

Reimplemented from KisLayer.

Definition at line 299 of file kis_group_layer.cpp.

◆ deactivate()

virtual void KisGroupLayer::deactivate ( )
inlinevirtual

Called when another layer is made active.

Reimplemented from KisLayer.

Definition at line 65 of file kis_group_layer.h.

◆ exactBounds()

TQRect KisGroupLayer::exactBounds ( ) const
virtual

Returns the exact bounds of where the actual data resides in this layer.

Implements KisLayer.

Definition at line 252 of file kis_group_layer.cpp.

◆ extent()

TQRect KisGroupLayer::extent ( ) const
virtual

Returns an approximation of where the bounds on actual data are in this layer.

Implements KisLayer.

Definition at line 240 of file kis_group_layer.cpp.

◆ firstChild()

KisLayerSP KisGroupLayer::firstChild ( ) const
virtual

Returns the first child layer of this layer (if it supports that).

Reimplemented from KisLayer.

Definition at line 130 of file kis_group_layer.cpp.

◆ index()

int KisGroupLayer::index ( KisLayerSP  layer) const
virtual

Returns the index of the layer if it's in this group, or -1 otherwise.

Definition at line 147 of file kis_group_layer.cpp.

◆ lastChild()

KisLayerSP KisGroupLayer::lastChild ( ) const
virtual

Returns the last child layer of this layer (if it supports that).

Reimplemented from KisLayer.

Definition at line 135 of file kis_group_layer.cpp.

◆ paintLayerInducesProjectionOptimization()

bool KisGroupLayer::paintLayerInducesProjectionOptimization ( KisPaintLayer *  l)
virtual

Returns if the layer will induce the projection hack (if the only layer in this group)

Definition at line 86 of file kis_group_layer.cpp.

◆ projection()

KisPaintDeviceSP KisGroupLayer::projection ( const TQRect &  rect)
virtual

will copy from to, if !0, CoW!!

Definition at line 91 of file kis_group_layer.cpp.

◆ removeLayer() [1/2]

bool KisGroupLayer::removeLayer ( int  index)
virtual

Removes the layer at the specified index from the group.

Definition at line 196 of file kis_group_layer.cpp.

◆ removeLayer() [2/2]

bool KisGroupLayer::removeLayer ( KisLayerSP  layer)
virtual

Removes the layer from this group. Fails if there's no such layer in this group.

Definition at line 220 of file kis_group_layer.cpp.

◆ resetProjection()

void KisGroupLayer::resetProjection ( KisPaintDevice *  to = 0)
virtual

XXX ### look into Copy on Write here (CoW)

Definition at line 78 of file kis_group_layer.cpp.

◆ setDirty() [1/2]

void KisGroupLayer::setDirty ( bool  propagate = true)
virtual

Set the entire layer extent dirty; this percolates up to parent layers all the way to the root layer.

Reimplemented from KisLayer.

Definition at line 66 of file kis_group_layer.cpp.

◆ setDirty() [2/2]

void KisGroupLayer::setDirty ( const TQRect &  rect,
bool  propagate = true 
)
virtual

Add the given rect to the set of dirty rects for this layer; this percolates up to parent layers all the way to the root layer.

Reimplemented from KisLayer.

Definition at line 72 of file kis_group_layer.cpp.

◆ setImage()

void KisGroupLayer::setImage ( KisImage *  image)
virtual

Reimplemented from KisLayer.

Definition at line 231 of file kis_group_layer.cpp.

◆ setIndex()

void KisGroupLayer::setIndex ( KisLayerSP  layer,
int  index 
)
virtual

Moves the specified layer to the specified index in the group, if it's already a member of this group.

Definition at line 154 of file kis_group_layer.cpp.

◆ setX()

void KisGroupLayer::setX ( TQ_INT32  x)
virtual

Implements KisLayer.

Definition at line 269 of file kis_group_layer.cpp.

◆ setY()

void KisGroupLayer::setY ( TQ_INT32  y)
virtual

Implements KisLayer.

Definition at line 286 of file kis_group_layer.cpp.

◆ x()

TQ_INT32 KisGroupLayer::x ( ) const
virtual

Implements KisLayer.

Definition at line 264 of file kis_group_layer.cpp.

◆ y()

TQ_INT32 KisGroupLayer::y ( ) const
virtual

Implements KisLayer.

Definition at line 281 of file kis_group_layer.cpp.


The documentation for this class was generated from the following files: