• Skip to content
  • Skip to link menu
KDE 4.4 API Reference
  • KDE API Reference
  • API Reference
  • Sitemap
  • Contact Us
 

KWinLibraries

KWin effects library

KWin effects library contains necessary classes for creating new KWin compositing effects. More...

Classes

class  KWin::Effect
 Base class for all KWin effects. More...
class  KWin::EffectFrame
 Helper class for displaying text and icons in frames. More...
class  KWin::EffectsHandler
 Manager class that handles all the effects. More...
class  KWin::EffectWindow
 Representation of a window used by/for Effect classes. More...
class  KWin::EffectWindowGroup
class  KWin::GlobalShortcutsEditor
class  KWin::PaintClipper::Iterator
 Helper class to perform the clipped painting. More...
class  KWin::Motion< T >
class  KWin::Motion1D
 A single 1D motion dynamics object. More...
class  KWin::Motion2D
 A single 2D motion dynamics object. More...
class  KWin::PaintClipper
 Helper class for restricting painting area only to allowed area. More...
class  KWin::RotationData
class  KWin::ScreenPaintData
class  KWin::ScreenPrePaintData
class  KWin::TimeLine
 Wrapper class for using timelines in KWin effects. More...
class  KWin::WindowMotionManager
 Helper class for motion dynamics in KWin effects. More...
class  KWin::WindowPaintData
class  KWin::WindowPrePaintData
class  KWin::WindowQuad
 Class representing one area of a window. More...
class  KWin::WindowQuadList
class  KWin::WindowVertex
 Vertex class. More...

Defines

#define KWIN_EFFECT(name, classname)
#define KWIN_EFFECT_API_MAKE_VERSION(major, minor)   (( major ) << 8 | ( minor ))
#define KWIN_EFFECT_API_VERSION
#define KWIN_EFFECT_API_VERSION_MAJOR   0
#define KWIN_EFFECT_API_VERSION_MINOR   108
#define KWIN_EFFECT_CONFIG(name, classname)
#define KWIN_EFFECT_CONFIG_FACTORY   K_PLUGIN_FACTORY_DECLARATION(EffectFactory)
#define KWIN_EFFECT_CONFIG_MULTIPLE(name, singles)
#define KWIN_EFFECT_CONFIG_SINGLE(name, classname)   registerPlugin<classname>(#name);
#define KWIN_EFFECT_SUPPORTED(name, function)

Enumerations

enum  KWin::Effect::ReconfigureFlag { KWin::Effect::ReconfigureAll = 1 << 0 }
enum  KWin::RotationData::RotationAxis { KWin::RotationData::XAxis, KWin::RotationData::YAxis, KWin::RotationData::ZAxis }
enum  KWin::WindowQuadType { KWin::WindowQuadError, KWin::WindowQuadContents, KWin::WindowQuadDecoration, KWin::EFFECT_QUAD_TYPE_START = 100 }

Functions

 KWin::Effect::Effect ()
 KWin::EffectFrame::EffectFrame (Style style, bool staticSize=true, QPoint position=QPoint(-1,-1), Qt::Alignment alignment=Qt::AlignCenter)
 KWin::EffectsHandler::EffectsHandler (CompositingType type)
 KWin::EffectWindow::EffectWindow ()
 KWin::Motion::Motion (T initial, double strength, double smoothness)
 KWin::Motion::Motion (const Motion< T > &other)
 KWin::Motion1D::Motion1D (const Motion1D &other)
 KWin::Motion2D::Motion2D (const Motion2D &other)
 KWin::TimeLine::TimeLine (const TimeLine &other)
 KWin::TimeLine::TimeLine (const int duration=0)
 KWin::WindowQuad::WindowQuad (WindowQuadType type, int id=-1)
 KWin::WindowVertex::WindowVertex (double x, double y, double tx, double ty)
 KWin::WindowVertex::WindowVertex ()
virtual KWin::Effect::~Effect ()
 KWin::EffectFrame::~EffectFrame ()
virtual KWin::EffectsHandler::~EffectsHandler ()
virtual KWin::EffectWindow::~EffectWindow ()
 KWin::PaintClipper::Iterator::~Iterator ()
 KWin::Motion::~Motion ()
 KWin::Motion1D::~Motion1D ()
 KWin::Motion2D::~Motion2D ()
 KWin::PaintClipper::~PaintClipper ()
 KWin::TimeLine::~TimeLine ()
 KWin::WindowMotionManager::~WindowMotionManager ()
virtual bool KWin::EffectWindow::acceptsFocus () const =0
virtual void KWin::EffectsHandler::activateWindow (EffectWindow *c)=0
virtual Effect * KWin::EffectsHandler::activeFullScreenEffect () const =0
virtual int KWin::EffectsHandler::activeScreen () const =0
virtual EffectWindow * KWin::EffectsHandler::activeWindow () const =0
virtual int KWin::EffectsHandler::addDesktop (QPoint coords)=0
void KWin::TimeLine::addProgress (const double progress)
virtual void KWin::EffectWindow::addRepaint (int x, int y, int w, int h)=0
virtual void KWin::EffectWindow::addRepaint (const QRect &r)=0
virtual void KWin::EffectsHandler::addRepaint (int x, int y, int w, int h)=0
virtual void KWin::EffectsHandler::addRepaint (const QRegion &r)=0
virtual void KWin::EffectsHandler::addRepaint (const QRect &r)=0
virtual void KWin::EffectWindow::addRepaintFull ()=0
virtual void KWin::EffectsHandler::addRepaintFull ()=0
void KWin::TimeLine::addTime (const int msec)
static double KWin::Effect::animationTime (int defaultTime)
static double KWin::Effect::animationTime (const KConfigGroup &cfg, const QString &key, int defaultTime)
virtual double KWin::EffectsHandler::animationTimeFactor () const =0
void KWin::WindowMotionManager::apply (EffectWindow *w, WindowPaintData &data)
bool KWin::WindowMotionManager::areWindowsMoving ()
virtual bool KWin::Effect::borderActivated (ElectricBorder border)
double KWin::WindowQuad::bottom () const
QRect KWin::PaintClipper::Iterator::boundingRect () const
virtual WindowQuadList KWin::EffectWindow::buildQuads (bool force=false) const =0
virtual void KWin::EffectsHandler::buildQuads (EffectWindow *w, WindowQuadList &quadList)=0
virtual void KWin::Effect::buildQuads (EffectWindow *w, WindowQuadList &quadList)
void KWin::WindowMotionManager::calculate (int time)
void KWin::Motion::calculate (const int msec)
virtual QString KWin::EffectWindow::caption () const =0
virtual void KWin::EffectsHandler::checkElectricBorder (const QPoint &pos, Time time)=0
virtual QRect KWin::EffectsHandler::clientArea (clientAreaOption, const QPoint &p, int desktop) const =0
virtual QRect KWin::EffectsHandler::clientArea (clientAreaOption, const EffectWindow *c) const =0
virtual QRect KWin::EffectsHandler::clientArea (clientAreaOption, int screen, int desktop) const =0
virtual void KWin::Effect::clientGroupItemAdded (EffectWindow *from, EffectWindow *to)
virtual void KWin::Effect::clientGroupItemRemoved (EffectWindow *c, EffectWindow *group)
virtual void KWin::Effect::clientGroupItemSwitched (EffectWindow *from, EffectWindow *to)
static bool KWin::PaintClipper::clip ()
virtual void KWin::EffectsHandler::closeTabBox ()=0
virtual void KWin::EffectWindow::closeWindow () const =0
CompositingType KWin::EffectsHandler::compositingType () const
virtual QRect KWin::EffectWindow::contentsRect () const =0
virtual Window KWin::EffectsHandler::createFullScreenInputWindow (Effect *e, const QCursor &cursor)
Window KWin::EffectsHandler::createInputWindow (Effect *e, const QRect &r, const QCursor &cursor)
virtual Window KWin::EffectsHandler::createInputWindow (Effect *e, int x, int y, int w, int h, const QCursor &cursor)=0
virtual int KWin::EffectsHandler::currentDesktop () const =0
virtual int KWin::EffectsHandler::currentTabBoxDesktop () const =0
virtual QList< int > KWin::EffectsHandler::currentTabBoxDesktopList () const =0
virtual EffectWindow * KWin::EffectsHandler::currentTabBoxWindow () const =0
virtual EffectWindowList KWin::EffectsHandler::currentTabBoxWindowList () const =0
virtual QPoint KWin::EffectsHandler::cursorPos () const =0
static QPoint KWin::Effect::cursorPos ()
bool KWin::WindowQuad::decoration () const
virtual void KWin::EffectsHandler::deleteDesktop (int id)=0
virtual void KWin::EffectWindow::deleteProperty (long atom) const =0
virtual int KWin::EffectWindow::desktop () const =0
virtual int KWin::EffectsHandler::desktopAbove (int desktop=0, bool wrap=true) const =0
virtual int KWin::EffectsHandler::desktopAtCoords (QPoint coords) const =0
virtual int KWin::EffectsHandler::desktopBelow (int desktop=0, bool wrap=true) const =0
virtual void KWin::Effect::desktopChanged (int old)
virtual QPoint KWin::EffectsHandler::desktopCoords (int id) const =0
virtual QPoint KWin::EffectsHandler::desktopGridCoords (int id) const =0
virtual int KWin::EffectsHandler::desktopGridHeight () const =0
virtual QSize KWin::EffectsHandler::desktopGridSize () const =0
virtual int KWin::EffectsHandler::desktopGridWidth () const =0
virtual QString KWin::EffectsHandler::desktopName (int desktop) const =0
virtual int KWin::EffectsHandler::desktopToLeft (int desktop=0, bool wrap=true) const =0
virtual int KWin::EffectsHandler::desktopToRight (int desktop=0, bool wrap=true) const =0
virtual void KWin::EffectsHandler::destroyInputWindow (Window w)=0
virtual void KWin::EffectWindow::disablePainting (int reason)=0
static int KWin::Effect::displayHeight ()
static int KWin::Effect::displayWidth ()
T KWin::Motion::distance () const
virtual void KWin::EffectsHandler::drawWindow (EffectWindow *w, int mask, QRegion region, WindowPaintData &data)=0
virtual void KWin::Effect::drawWindow (EffectWindow *w, int mask, QRegion region, WindowPaintData &data)
int KWin::TimeLine::duration () const
bool KWin::WindowQuad::effect () const
static KConfigGroup KWin::EffectsHandler::effectConfig (const QString &effectname)
virtual void KWin::EffectWindow::enablePainting (int reason)=0
WindowQuadList KWin::WindowQuadList::filterOut (WindowQuadType type) const
virtual EffectWindow * KWin::EffectWindow::findModal ()=0
virtual EffectWindow * KWin::EffectsHandler::findWindow (WId id) const =0
void KWin::Motion::finish ()
QFont KWin::EffectFrame::font () const
void KWin::EffectFrame::free ()
QRect KWin::EffectFrame::geometry () const
virtual QRect KWin::EffectWindow::geometry () const =0
virtual void * KWin::EffectsHandler::getProxy (QString name)=0
virtual void KWin::Effect::grabbedKeyboardEvent (QKeyEvent *e)
virtual bool KWin::EffectsHandler::grabKeyboard (Effect *effect)=0
virtual const EffectWindowGroup * KWin::EffectWindow::group () const =0
virtual bool KWin::EffectWindow::hasAlpha () const =0
bool KWin::EffectWindow::hasDecoration () const
virtual bool KWin::EffectsHandler::hasDecorationShadows () const =0
virtual bool KWin::EffectWindow::hasOwnShape () const =0
virtual int KWin::EffectWindow::height () const =0
QPixmap KWin::EffectFrame::icon () const
virtual QPixmap KWin::EffectWindow::icon () const =0
virtual QRect KWin::EffectWindow::iconGeometry () const =0
QSize KWin::EffectFrame::iconSize () const
int KWin::WindowQuad::id () const
KWIN_EXPORT QRect KWin::infiniteRegion ()
static double KWin::Effect::interpolate (double x, double y, double a)
virtual bool KWin::EffectWindow::isComboBox () const =0
virtual bool KWin::EffectWindow::isDeleted () const =0
virtual bool KWin::EffectWindow::isDesktop () const =0
virtual bool KWin::EffectsHandler::isDesktopLayoutDynamic () const =0
virtual bool KWin::EffectWindow::isDialog () const =0
virtual bool KWin::EffectWindow::isDNDIcon () const =0
virtual bool KWin::EffectWindow::isDock () const =0
bool KWin::PaintClipper::Iterator::isDone ()
virtual bool KWin::EffectWindow::isDropdownMenu () const =0
virtual bool KWin::EffectWindow::isManaged () const =0
bool KWin::WindowMotionManager::isManaging (EffectWindow *w)
virtual bool KWin::EffectWindow::isMenu () const =0
virtual bool KWin::EffectWindow::isMinimized () const =0
virtual bool KWin::EffectWindow::isModal () const =0
virtual bool KWin::EffectWindow::isMovable () const =0
virtual bool KWin::EffectWindow::isMovableAcrossScreens () const =0
virtual bool KWin::EffectWindow::isNormalWindow () const =0
virtual bool KWin::EffectWindow::isNotification () const =0
virtual bool KWin::EffectWindow::isOnAllDesktops () const =0
virtual bool KWin::EffectWindow::isOnCurrentDesktop () const
virtual bool KWin::EffectWindow::isOnDesktop (int d) const
virtual bool KWin::EffectWindow::isPaintingEnabled ()=0
virtual bool KWin::EffectWindow::isPopupMenu () const =0
virtual bool KWin::EffectWindow::isSpecialWindow () const =0
virtual bool KWin::EffectWindow::isSplash () const =0
virtual bool KWin::EffectWindow::isToolbar () const =0
virtual bool KWin::EffectWindow::isTooltip () const =0
virtual bool KWin::EffectWindow::isTopMenu () const =0
bool KWin::WindowQuadList::isTransformed () const
bool KWin::WindowQuad::isTransformed () const
virtual bool KWin::EffectWindow::isUserMove () const =0
virtual bool KWin::EffectWindow::isUserResize () const =0
virtual bool KWin::EffectWindow::isUtility () const =0
virtual bool KWin::EffectWindow::keepAbove () const =0
double KWin::WindowQuad::left () const
virtual EffectWindowList KWin::EffectWindow::mainWindows () const =0
void KWin::WindowQuadList::makeArrays (float **vertices, float **texcoords) const
WindowQuadList KWin::WindowQuadList::makeGrid (int maxquadsize) const
WindowQuadList KWin::WindowQuadList::makeRegularGrid (int xSubdivisions, int ySubdivisions) const
WindowQuad KWin::WindowQuad::makeSubQuad (double x1, double y1, double x2, double y2) const
void KWin::WindowMotionManager::manage (EffectWindowList list)
void KWin::WindowMotionManager::manage (EffectWindow *w)
EffectWindowList KWin::WindowMotionManager::managedWindows () const
bool KWin::WindowMotionManager::managingWindows ()
virtual EffectWindowList KWin::EffectWindowGroup::members () const =0
virtual void KWin::EffectWindow::minimize () const =0
virtual void KWin::Effect::mouseChanged (const QPoint &pos, const QPoint &oldpos, Qt::MouseButtons buttons, Qt::MouseButtons oldbuttons, Qt::KeyboardModifiers modifiers, Qt::KeyboardModifiers oldmodifiers)
void KWin::WindowVertex::move (double x, double y)
void KWin::WindowMotionManager::moveWindow (EffectWindow *w, QRect target)
void KWin::WindowMotionManager::moveWindow (EffectWindow *w, QPoint target, double scale=1.0, double yScale=0.0)
virtual void KWin::EffectsHandler::moveWindow (EffectWindow *w, const QPoint &pos, bool snap=false, double snapAdjust=1.0)=0
virtual WindowQuadType KWin::EffectsHandler::newWindowQuadType ()=0
void KWin::PaintClipper::Iterator::next ()
virtual int KWin::EffectsHandler::numberOfDesktops () const =0
virtual int KWin::EffectsHandler::numScreens () const =0
virtual double KWin::EffectWindow::opacity () const =0
const WindowVertex & KWin::WindowQuad::operator[] (int index) const
WindowVertex & KWin::WindowQuad::operator[] (int index)
virtual bool KWin::EffectsHandler::optionRollOverDesktops () const =0
double KWin::WindowQuad::originalBottom () const
double KWin::WindowQuad::originalLeft () const
double KWin::WindowQuad::originalRight () const
double KWin::WindowQuad::originalTop () const
double KWin::WindowVertex::originalX () const
double KWin::WindowVertex::originalY () const
static QRegion KWin::PaintClipper::paintArea ()
virtual void KWin::EffectsHandler::paintScreen (int mask, QRegion region, ScreenPaintData &data)=0
virtual void KWin::Effect::paintScreen (int mask, QRegion region, ScreenPaintData &data)
bool KWin::EffectsHandler::paintText (const QString &text, const QRect &rect, const QColor &color, const QFont &font=QFont(), const Qt::Alignment &alignment=Qt::AlignCenter)
bool KWin::EffectsHandler::paintText (const QString &text, const QPoint &center, int maxwidth, const QColor &color, const QFont &font=QFont())
bool KWin::EffectsHandler::paintTextWithBackground (const QString &text, const QRect &rect, const QColor &color, const QColor &bgcolor, const QFont &font=QFont(), const Qt::Alignment &alignment=Qt::AlignCenter)
bool KWin::EffectsHandler::paintTextWithBackground (const QString &text, const QPoint &center, int maxwidth, const QColor &color, const QColor &bgcolor, const QFont &font=QFont())
virtual void KWin::EffectsHandler::paintWindow (EffectWindow *w, int mask, QRegion region, WindowPaintData &data)=0
virtual void KWin::Effect::paintWindow (EffectWindow *w, int mask, QRegion region, WindowPaintData &data)
static void KWin::PaintClipper::pop (const QRegion &allowed_area)
virtual GLRenderTarget * KWin::EffectsHandler::popRenderTarget ()=0
virtual QPoint KWin::EffectWindow::pos () const =0
virtual void KWin::EffectsHandler::postPaintScreen ()=0
virtual void KWin::Effect::postPaintScreen ()
virtual void KWin::EffectsHandler::postPaintWindow (EffectWindow *w)=0
virtual void KWin::Effect::postPaintWindow (EffectWindow *w)
virtual void KWin::EffectsHandler::prePaintScreen (ScreenPrePaintData &data, int time)=0
virtual void KWin::Effect::prePaintScreen (ScreenPrePaintData &data, int time)
virtual void KWin::EffectsHandler::prePaintWindow (EffectWindow *w, WindowPrePaintData &data, int time)=0
virtual void KWin::Effect::prePaintWindow (EffectWindow *w, WindowPrePaintData &data, int time)
double KWin::TimeLine::progress () const
virtual void KWin::Effect::propertyNotify (EffectWindow *w, long atom)
virtual void * KWin::Effect::proxy ()
static void KWin::PaintClipper::push (const QRegion &allowed_area)
virtual void KWin::EffectsHandler::pushRenderTarget (GLRenderTarget *target)=0
virtual QByteArray KWin::EffectWindow::readProperty (long atom, long type, int format) const =0
virtual void KWin::EffectsHandler::reconfigure ()=0
virtual void KWin::Effect::reconfigure (ReconfigureFlags flags)
virtual QRect KWin::EffectWindow::rect () const =0
virtual void KWin::EffectsHandler::refTabBox ()=0
virtual void KWin::EffectWindow::refWindow ()=0
virtual void KWin::EffectsHandler::registerPropertyType (long atom, bool reg)=0
void KWin::TimeLine::removeTime (const int msec)
void KWin::EffectFrame::render (QRegion region=infiniteRegion(), double opacity=1.0, double frameOpacity=1.0)
virtual void KWin::EffectsHandler::reserveElectricBorder (ElectricBorder border)=0
virtual void KWin::EffectsHandler::reserveElectricBorderSwitching (bool reserve)=0
void KWin::WindowMotionManager::reset (EffectWindow *w)
void KWin::WindowMotionManager::reset ()
double KWin::WindowQuad::right () const
bool KWin::EffectsHandler::saturationSupported () const
virtual int KWin::EffectWindow::screen () const =0
virtual int KWin::EffectsHandler::screenNumber (const QPoint &pos) const =0
WindowQuadList KWin::WindowQuadList::select (WindowQuadType type) const
static void KWin::EffectsHandler::sendReloadMessage (const QString &effectname)
virtual void KWin::EffectsHandler::setActiveFullScreenEffect (Effect *e)=0
void KWin::EffectFrame::setAlignment (Qt::Alignment alignment)
virtual void KWin::EffectsHandler::setCurrentDesktop (int desktop)=0
void KWin::TimeLine::setCurveShape (CurveShape curveShape)
void KWin::TimeLine::setDuration (const int msec)
virtual void KWin::EffectsHandler::setElevatedWindow (EffectWindow *w, bool set)=0
void KWin::EffectFrame::setFont (const QFont &font)
void KWin::EffectFrame::setGeometry (const QRect &geometry, bool force=false)
void KWin::EffectFrame::setIcon (const QPixmap &icon)
void KWin::EffectFrame::setIconSize (const QSize &size)
void KWin::EffectFrame::setPosition (const QPoint &point)
static void KWin::Effect::setPositionTransformations (WindowPaintData &data, QRect &region, EffectWindow *w, const QRect &r, Qt::AspectRatioMode aspect)
void KWin::TimeLine::setProgress (const double progress)
virtual void KWin::EffectsHandler::setShowingDesktop (bool showing)=0
void KWin::Motion::setSmoothness (const double smoothness)
void KWin::Motion::setStrength (const double strength)
virtual void KWin::EffectsHandler::setTabBoxDesktop (int)=0
virtual void KWin::EffectsHandler::setTabBoxWindow (EffectWindow *)=0
void KWin::Motion::setTarget (const T target)
void KWin::EffectFrame::setText (const QString &text)
void KWin::WindowPrePaintData::setTransformed ()
void KWin::WindowPrePaintData::setTranslucent ()
void KWin::Motion::setValue (const T value)
void KWin::Motion::setVelocity (const T velocity)
void KWin::WindowVertex::setX (double x)
void KWin::WindowVertex::setY (double y)
virtual QRegion KWin::EffectWindow::shape () const =0
virtual QSize KWin::EffectWindow::size () const =0
bool KWin::WindowQuadList::smoothNeeded () const
bool KWin::WindowQuad::smoothNeeded () const
double KWin::Motion::smoothness () const
WindowQuadList KWin::WindowQuadList::splitAtY (double y) const
virtual EffectWindowList KWin::EffectsHandler::stackingOrder () const =0
virtual void KWin::EffectsHandler::startMousePolling ()=0
virtual void KWin::EffectsHandler::stopMousePolling ()=0
double KWin::Motion::strength () const
static QColor KWin::EffectFrame::styledTextColor ()
virtual void KWin::Effect::tabBoxAdded (int mode)
virtual void KWin::Effect::tabBoxClosed ()
virtual void KWin::Effect::tabBoxKeyEvent (QKeyEvent *event)
virtual void KWin::Effect::tabBoxUpdated ()
T KWin::Motion::target () const
QRectF KWin::WindowMotionManager::targetGeometry (EffectWindow *w) const
QString KWin::EffectFrame::text () const
double KWin::WindowVertex::textureX () const
double KWin::WindowVertex::textureY () const
int KWin::TimeLine::time () const
double KWin::WindowQuad::top () const
QRectF KWin::WindowMotionManager::transformedGeometry (EffectWindow *w) const
virtual QRect KWin::EffectsHandler::transformWindowDamage (EffectWindow *w, const QRect &r)
virtual QRect KWin::Effect::transformWindowDamage (EffectWindow *w, const QRect &r)
WindowQuadType KWin::WindowQuad::type () const
virtual void KWin::EffectsHandler::ungrabKeyboard ()=0
void KWin::WindowMotionManager::unmanage (EffectWindow *w)
void KWin::WindowMotionManager::unmanageAll ()
virtual void KWin::EffectWindow::unminimize () const =0
virtual void KWin::EffectsHandler::unrefTabBox ()=0
virtual void KWin::EffectWindow::unrefWindow ()=0
virtual void KWin::EffectsHandler::unreserveElectricBorder (ElectricBorder border)=0
T KWin::Motion::value () const
double KWin::TimeLine::value () const
double KWin::TimeLine::valueForTime (const int msec) const
T KWin::Motion::velocity () const
virtual bool KWin::EffectWindow::visibleInClientGroup () const =0
virtual int KWin::EffectWindow::width () const =0
virtual void KWin::Effect::windowActivated (EffectWindow *c)
virtual void KWin::Effect::windowAdded (EffectWindow *c)
EffectWindow * KWin::WindowMotionManager::windowAtPoint (QPoint point, bool useStackingOrder=true) const
virtual QString KWin::EffectWindow::windowClass () const =0
virtual void KWin::Effect::windowClosed (EffectWindow *c)
virtual void KWin::Effect::windowDamaged (EffectWindow *w, const QRect &r)
virtual void KWin::Effect::windowDeleted (EffectWindow *c)
virtual void KWin::Effect::windowGeometryShapeChanged (EffectWindow *w, const QRect &old)
virtual void KWin::Effect::windowInputMouseEvent (Window w, QEvent *e)
virtual void KWin::Effect::windowMinimized (EffectWindow *c)
virtual void KWin::Effect::windowMoveResizeGeometryUpdate (EffectWindow *c, const QRect &geometry)
virtual void KWin::Effect::windowOpacityChanged (EffectWindow *c, double old_opacity)
virtual QString KWin::EffectWindow::windowRole () const =0
virtual void KWin::EffectsHandler::windowToDesktop (EffectWindow *w, int desktop)=0
virtual void KWin::EffectsHandler::windowToScreen (EffectWindow *w, int screen)=0
virtual void KWin::Effect::windowUnminimized (EffectWindow *c)
virtual void KWin::Effect::windowUserMovedResized (EffectWindow *c, bool first, bool last)
virtual int KWin::EffectsHandler::workspaceHeight () const =0
virtual int KWin::EffectsHandler::workspaceWidth () const =0
double KWin::WindowVertex::x () const
virtual int KWin::EffectWindow::x () const =0
virtual unsigned long KWin::EffectsHandler::xrenderBufferPicture ()=0
double KWin::WindowVertex::y () const
virtual int KWin::EffectWindow::y () const =0

Variables

float KWin::RotationData::angle
RotationAxis KWin::RotationData::axis
double KWin::WindowPaintData::brightness
QRegion KWin::WindowPrePaintData::clip
CompositingType KWin::EffectsHandler::compositing_type
double KWin::WindowPaintData::contents_opacity
int KWin::EffectsHandler::current_build_quads
int KWin::EffectsHandler::current_draw_window
int KWin::EffectsHandler::current_paint_screen
int KWin::EffectsHandler::current_paint_window
int KWin::EffectsHandler::current_transform
double KWin::WindowPaintData::decoration_opacity
QHash< QString, KLibrary * > KWin::EffectsHandler::effect_libraries
EffectsHandler * KWin::effects = 0
QList< InputWindowPair > KWin::EffectsHandler::input_windows
QVector< EffectPair > KWin::EffectsHandler::loaded_effects
double KWin::WindowPaintData::opacity
QRegion KWin::ScreenPrePaintData::paint
QRegion KWin::WindowPrePaintData::paint
WindowQuadList KWin::WindowPaintData::quads
WindowQuadList KWin::WindowPrePaintData::quads
RotationData * KWin::ScreenPaintData::rotation
RotationData * KWin::WindowPaintData::rotation
double KWin::WindowPaintData::saturation
Motion2D KWin::WindowMotionManager::WindowMotion::scale
GLShader * KWin::WindowPaintData::shader
float KWin::RotationData::xRotationPoint
double KWin::ScreenPaintData::xScale
double KWin::WindowPaintData::xScale
int KWin::ScreenPaintData::xTranslate
int KWin::WindowPaintData::xTranslate
float KWin::RotationData::yRotationPoint
double KWin::ScreenPaintData::yScale
double KWin::WindowPaintData::yScale
int KWin::ScreenPaintData::yTranslate
int KWin::WindowPaintData::yTranslate
float KWin::RotationData::zRotationPoint
double KWin::ScreenPaintData::zScale
double KWin::WindowPaintData::zScale
double KWin::ScreenPaintData::zTranslate
double KWin::WindowPaintData::zTranslate

Detailed Description

KWin effects library contains necessary classes for creating new KWin compositing effects.

Creating new effects

This example will demonstrate the basics of creating an effect. We'll use CoolEffect as the class name, cooleffect as internal name and "Cool Effect" as user-visible name of the effect.

This example doesn't demonstrate how to write the effect's code. For that, see the documentation of the Effect class.

CoolEffect class

First you need to create CoolEffect class which has to be a subclass of KWin::Effect. In that class you can reimplement various virtual methods to control how and where the windows are drawn.

KWIN_EFFECT macro

To make KWin aware of your new effect, you first need to use the KWIN_EFFECT macro to connect your effect's class to it's internal name. The internal name is used by KWin to identify your effect. It can be freely chosen (although it must be a single word), must be unique and won't be shown to the user. For our example, you would use the macro like this:

 KWIN_EFFECT(cooleffect, CoolEffect)

Buildsystem

To build the effect, you can use the KWIN_ADD_EFFECT() cmake macro which can be found in effects/CMakeLists.txt file in KWin's source. First argument of the macro is the name of the library that will contain your effect. Although not strictly required, it is usually a good idea to use the same name as your effect's internal name there. Following arguments to the macro are the files containing your effect's source. If our effect's source is in cooleffect.cpp, we'd use following:

  KWIN_ADD_EFFECT(cooleffect cooleffect.cpp)

This macro takes care of compiling your effect. You'll also need to install your effect's .desktop file, so the example CMakeLists.txt file would be as follows:

  KWIN_ADD_EFFECT(cooleffect cooleffect.cpp)
  install( FILES cooleffect.desktop DESTINATION ${SERVICES_INSTALL_DIR}/kwin )

Effect's .desktop file

You will also need to create .desktop file to set name, description, icon and other properties of your effect. Important fields of the .desktop file are:

  • Name User-visible name of your effect
  • Icon Name of the icon of the effect
  • Comment Short description of the effect
  • Type must be "Service"
  • X-KDE-ServiceTypes must be "KWin/Effect"
  • X-KDE-PluginInfo-Name effect's internal name as passed to the KWIN_EFFECT macro plus "kwin4_effect_" prefix
  • X-KDE-PluginInfo-Category effect's category. Should be one of Appearance, Accessibility, Window Management, Demos, Tests, Misc
  • X-KDE-PluginInfo-EnabledByDefault whether the effect should be enabled by default (use sparingly). Default is false
  • X-KDE-Library name of the library containing the effect. This is the first argument passed to the KWIN_ADD_EFFECT macro in cmake file plus "kwin4_effect_" prefix.

Example cooleffect.desktop file follows:

[Desktop Entry]
Name=Cool Effect
Comment=The coolest effect you've ever seen
Icon=preferences-system-windows-effect-cooleffect

Type=Service
X-KDE-ServiceTypes=KWin/Effect
X-KDE-PluginInfo-Author=My Name
X-KDE-PluginInfo-Email=my@email.here
X-KDE-PluginInfo-Name=kwin4_effect_cooleffect
X-KDE-PluginInfo-Category=Misc
X-KDE-Library=kwin4_effect_cooleffect

Accessing windows and workspace

Effects can gain access to the properties of windows and workspace via EffectWindow and EffectsHandler classes.

There is one global EffectsHandler object which you can access using the effects pointer. For each window, there is an EffectWindow object which can be used to read window properties such as position and also to change them.

For more information about this, see the documentation of the corresponding classes.


Define Documentation

#define KWIN_EFFECT ( name,
classname   ) 
Value:
extern "C" { \
        KWIN_EXPORT Effect* effect_create_kwin4_effect_##name() { return new classname; } \
        KWIN_EXPORT int effect_version_kwin4_effect_##name() { return KWIN_EFFECT_API_VERSION; } \
    }

Defines the class to be used for effect with given name.

The name must be same as effect's X-KDE-PluginInfo-Name values in .desktop file, but without the "kwin4_effect_" prefix. E.g. KWIN_EFFECT( flames, MyFlameEffect ) In this case object of MyFlameEffect class would be created when effect "flames" (which has X-KDE-PluginInfo-Name=kwin4_effect_flames in .desktop file) is loaded.

Definition at line 468 of file kwineffects.h.

#define KWIN_EFFECT_API_MAKE_VERSION ( major,
minor   )     (( major ) << 8 | ( minor ))

Definition at line 171 of file kwineffects.h.

#define KWIN_EFFECT_API_VERSION
Value:
KWIN_EFFECT_API_MAKE_VERSION( \
    KWIN_EFFECT_API_VERSION_MAJOR, KWIN_EFFECT_API_VERSION_MINOR )

Definition at line 174 of file kwineffects.h.

#define KWIN_EFFECT_API_VERSION_MAJOR   0

Definition at line 172 of file kwineffects.h.

#define KWIN_EFFECT_API_VERSION_MINOR   108

Definition at line 173 of file kwineffects.h.

#define KWIN_EFFECT_CONFIG ( name,
classname   ) 
Value:
K_PLUGIN_FACTORY(EffectFactory, registerPlugin<classname>(#name);) \
    K_EXPORT_PLUGIN(EffectFactory("kcm_kwin4_effect_" #name))

Defines the function used to retrieve an effect's config widget E.g.

KWIN_EFFECT_CONFIG( flames, MyFlameEffectConfig )

Definition at line 485 of file kwineffects.h.

#define KWIN_EFFECT_CONFIG_FACTORY   K_PLUGIN_FACTORY_DECLARATION(EffectFactory)

The declaration of the factory to export the effect.

Definition at line 506 of file kwineffects.h.

#define KWIN_EFFECT_CONFIG_MULTIPLE ( name,
singles   ) 
Value:
K_PLUGIN_FACTORY(EffectFactory, singles) \
    K_EXPORT_PLUGIN(EffectFactory("kcm_kwin4_effect_" #name))

Defines the function used to retrieve multiple effects' config widget E.g.

KWIN_EFFECT_CONFIG_MULTIPLE( flames, KWIN_EFFECT_CONFIG_SINGLE( flames, MyFlameEffectConfig ) KWIN_EFFECT_CONFIG_SINGLE( fire, MyFireEffectConfig ) )

Definition at line 495 of file kwineffects.h.

#define KWIN_EFFECT_CONFIG_SINGLE ( name,
classname   )     registerPlugin<classname>(#name);
See also:
KWIN_EFFECT_CONFIG_MULTIPLE

Definition at line 501 of file kwineffects.h.

#define KWIN_EFFECT_SUPPORTED ( name,
function   ) 
Value:
extern "C" { \
        KWIN_EXPORT bool effect_supported_kwin4_effect_##name() { return function; } \
    }

Defines the function used to check whether an effect is supported E.g.

KWIN_EFFECT_SUPPORTED( flames, MyFlameEffect::supported() )

Definition at line 477 of file kwineffects.h.


Enumeration Type Documentation

enum KWin::Effect::ReconfigureFlag [inherited]

Flags describing which parts of configuration have changed.

Enumerator:
ReconfigureAll 

Definition at line 298 of file kwineffects.h.

enum KWin::RotationData::RotationAxis [inherited]
Enumerator:
XAxis 
YAxis 
ZAxis 

Definition at line 1147 of file kwineffects.h.

enum KWin::WindowQuadType
Enumerator:
WindowQuadError 
WindowQuadContents 
WindowQuadDecoration 
EFFECT_QUAD_TYPE_START 

For internal use only.

Definition at line 177 of file kwineffects.h.


Function Documentation

Effect::Effect (  )  [inherited]

Constructs new Effect object.

Definition at line 105 of file kwineffects.cpp.

KWin::EffectFrame::EffectFrame ( Style  style,
bool  staticSize = true,
QPoint  position = QPoint( -1, -1 ),
Qt::Alignment  alignment = Qt::AlignCenter 
) [explicit, inherited]

Creates a new frame object.

If the frame does not have a static size then it will be located at position with alignment. A non-static frame will automatically adjust its size to fit the contents.

Definition at line 1353 of file kwineffects.cpp.

KWin::EffectsHandler::EffectsHandler ( CompositingType  type  )  [inherited]

Definition at line 311 of file kwineffects.cpp.

KWin::EffectWindow::EffectWindow (  )  [inherited]

Definition at line 500 of file kwineffects.cpp.

template<typename T>
KWin::Motion< T >::Motion ( T  initial,
double  strength,
double  smoothness 
) [inline, explicit, inherited]

Creates a new motion object.

"Strength" is the amount of acceleration that is applied to the object when the target changes and "smoothness" relates to how fast the object can change its direction and speed.

Definition at line 1927 of file kwineffects.h.

template<typename T>
KWin::Motion< T >::Motion ( const Motion< T > &  other  )  [inline, inherited]

Creates an exact copy of another motion object, including position, target and velocity.

Definition at line 1937 of file kwineffects.h.

KWin::Motion1D::Motion1D ( const Motion1D &  other  )  [inherited]

Definition at line 1109 of file kwineffects.cpp.

KWin::Motion2D::Motion2D ( const Motion2D &  other  )  [inherited]

Definition at line 1127 of file kwineffects.cpp.

KWin::TimeLine::TimeLine ( const TimeLine &  other  )  [inherited]

Creates a copy of the TimeLine so we can have the state copied as well.

Definition at line 993 of file kwineffects.cpp.

KWin::TimeLine::TimeLine ( const int  duration = 0  )  [explicit, inherited]

Creates a TimeLine and computes the progress data.

Usually, for larger animations you want to choose values more towards 300 milliseconds. For small animations, values around 150 milliseconds are sensible. Note that duration 0 is not valid.

Definition at line 984 of file kwineffects.cpp.

KWin::WindowQuad::WindowQuad ( WindowQuadType  type,
int  id = -1 
) [inline, explicit, inherited]

Definition at line 1818 of file kwineffects.h.

KWin::WindowVertex::WindowVertex ( double  x,
double  y,
double  tx,
double  ty 
) [inline, inherited]

Definition at line 1753 of file kwineffects.h.

KWin::WindowVertex::WindowVertex (  )  [inline, inherited]

Definition at line 1747 of file kwineffects.h.

Effect::~Effect (  )  [virtual, inherited]

Destructs the Effect object.

Definition at line 109 of file kwineffects.cpp.

KWin::EffectFrame::~EffectFrame (  )  [inherited]

Definition at line 1384 of file kwineffects.cpp.

KWin::EffectsHandler::~EffectsHandler (  )  [virtual, inherited]

Definition at line 324 of file kwineffects.cpp.

KWin::EffectWindow::~EffectWindow (  )  [virtual, inherited]

Definition at line 504 of file kwineffects.cpp.

KWin::PaintClipper::Iterator::~Iterator (  )  [inherited]

Definition at line 922 of file kwineffects.cpp.

template<typename T >
KWin::Motion< T >::~Motion (  )  [inline, inherited]

Definition at line 1947 of file kwineffects.h.

KWin::Motion1D::~Motion1D (  )  [inherited]

Definition at line 1114 of file kwineffects.cpp.

KWin::Motion2D::~Motion2D (  )  [inherited]

Definition at line 1132 of file kwineffects.cpp.

KWin::PaintClipper::~PaintClipper (  )  [inherited]

Calls pop().

Definition at line 848 of file kwineffects.cpp.

KWin::TimeLine::~TimeLine (  )  [inherited]

Cleans up.

Definition at line 1004 of file kwineffects.cpp.

KWin::WindowMotionManager::~WindowMotionManager (  )  [inherited]

Definition at line 1146 of file kwineffects.cpp.

virtual bool KWin::EffectWindow::acceptsFocus (  )  const [pure virtual, inherited]

Returns whether or not the window can accept keyboard focus.

virtual void KWin::EffectsHandler::activateWindow ( EffectWindow *  c  )  [pure virtual, inherited]
virtual Effect* KWin::EffectsHandler::activeFullScreenEffect (  )  const [pure virtual, inherited]
virtual int KWin::EffectsHandler::activeScreen (  )  const [pure virtual, inherited]
virtual EffectWindow* KWin::EffectsHandler::activeWindow (  )  const [pure virtual, inherited]
virtual int KWin::EffectsHandler::addDesktop ( QPoint  coords  )  [pure virtual, inherited]

Create new desktop at the point coords.

Returns:
The ID of the created desktop
void KWin::TimeLine::addProgress ( const double  progress  )  [inherited]

Increases the internal progress accounting of the timeline.

Definition at line 1070 of file kwineffects.cpp.

virtual void KWin::EffectWindow::addRepaint ( int  x,
int  y,
int  w,
int  h 
) [pure virtual, inherited]
virtual void KWin::EffectWindow::addRepaint ( const QRect &  r  )  [pure virtual, inherited]
virtual void KWin::EffectsHandler::addRepaint ( int  x,
int  y,
int  w,
int  h 
) [pure virtual, inherited]
virtual void KWin::EffectsHandler::addRepaint ( const QRegion &  r  )  [pure virtual, inherited]
virtual void KWin::EffectsHandler::addRepaint ( const QRect &  r  )  [pure virtual, inherited]
virtual void KWin::EffectWindow::addRepaintFull (  )  [pure virtual, inherited]
virtual void KWin::EffectsHandler::addRepaintFull (  )  [pure virtual, inherited]

Schedules the entire workspace to be repainted next time.

If you call it during painting (including prepaint) then it does not affect the current painting.

void KWin::TimeLine::addTime ( const int  msec  )  [inherited]

Increases the internal counter, this is usually done in prePaintWindow().

Definition at line 1037 of file kwineffects.cpp.

double Effect::animationTime ( int  defaultTime  )  [static, inherited]

Definition at line 302 of file kwineffects.cpp.

double Effect::animationTime ( const KConfigGroup &  cfg,
const QString &  key,
int  defaultTime 
) [static, inherited]

Read animation time from the configuration and possibly adjust using animationTimeFactor().

The configuration value in the effect should also have special value 'default' (set using QSpinBox::setSpecialValueText()) with the value 0. This special value is adjusted using the global animation speed, otherwise the exact time configured is returned.

Parameters:
cfg configuration group to read value from
key configuration key to read value from
defaultTime default animation time in milliseconds

Definition at line 296 of file kwineffects.cpp.

virtual double KWin::EffectsHandler::animationTimeFactor (  )  const [pure virtual, inherited]

Factor by which animation speed in the effect should be modified (multiplied).

If configurable in the effect itself, the option should have also 'default' animation speed. The actual value should be determined using animationTime(). Note: The factor can be also 0, so make sure your code can cope with 0ms time if used manually.

void KWin::WindowMotionManager::apply ( EffectWindow *  w,
WindowPaintData &  data 
) [inherited]

Modify a registered window's paint data to make it appear at its real location on the screen.

Usually called in paintWindow(). Remember to flag the window as having been transformed in prePaintWindow() by calling WindowPrePaintData::setTransformed()

Definition at line 1277 of file kwineffects.cpp.

bool KWin::WindowMotionManager::areWindowsMoving (  )  [inline, inherited]

Returns whether all windows have reached their targets yet or not.

Can be used to see if an effect should be processed and displayed or not.

Definition at line 1595 of file kwineffects.h.

bool Effect::borderActivated ( ElectricBorder  border  )  [virtual, inherited]

Definition at line 210 of file kwineffects.cpp.

double KWin::WindowQuad::bottom (  )  const [inline, inherited]

Definition at line 1893 of file kwineffects.h.

QRect KWin::PaintClipper::Iterator::boundingRect (  )  const [inherited]

Definition at line 963 of file kwineffects.cpp.

virtual WindowQuadList KWin::EffectWindow::buildQuads ( bool  force = false  )  const [pure virtual, inherited]

Returns the unmodified window quad list.

Can also be used to force rebuilding.

virtual void KWin::EffectsHandler::buildQuads ( EffectWindow *  w,
WindowQuadList &  quadList 
) [pure virtual, inherited]
void Effect::buildQuads ( EffectWindow *  w,
WindowQuadList &  quadList 
) [virtual, inherited]

Define new window quads so that they can be transformed by other effects.

It's up to the effect to keep track of them.

Definition at line 255 of file kwineffects.cpp.

void KWin::WindowMotionManager::calculate ( int  time  )  [inherited]

Determine the new positions for windows that have not reached their target.

Called once per frame, usually in prePaintScreen(). Remember to set the Effect::PAINT_SCREEN_WITH_TRANSFORMED_WINDOWS flag.

Definition at line 1192 of file kwineffects.cpp.

template<typename T >
void KWin::Motion< T >::calculate ( const int  msec  )  [inline, inherited]

Calculates the new position if not at the target.

Called once per frame only.

Definition at line 1952 of file kwineffects.h.

virtual QString KWin::EffectWindow::caption (  )  const [pure virtual, inherited]
virtual void KWin::EffectsHandler::checkElectricBorder ( const QPoint &  pos,
Time  time 
) [pure virtual, inherited]
virtual QRect KWin::EffectsHandler::clientArea ( clientAreaOption  ,
const QPoint &  p,
int  desktop 
) const [pure virtual, inherited]
virtual QRect KWin::EffectsHandler::clientArea ( clientAreaOption  ,
const EffectWindow *  c 
) const [pure virtual, inherited]
virtual QRect KWin::EffectsHandler::clientArea ( clientAreaOption  ,
int  screen,
int  desktop 
) const [pure virtual, inherited]
void Effect::clientGroupItemAdded ( EffectWindow *  from,
EffectWindow *  to 
) [virtual, inherited]

Definition at line 162 of file kwineffects.cpp.

void Effect::clientGroupItemRemoved ( EffectWindow *  c,
EffectWindow *  group 
) [virtual, inherited]

Definition at line 166 of file kwineffects.cpp.

void Effect::clientGroupItemSwitched ( EffectWindow *  from,
EffectWindow *  to 
) [virtual, inherited]

Definition at line 158 of file kwineffects.cpp.

bool KWin::PaintClipper::clip (  )  [static, inherited]

Returns true if any clipping should be performed.

Definition at line 876 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::closeTabBox (  )  [pure virtual, inherited]
virtual void KWin::EffectWindow::closeWindow (  )  const [pure virtual, inherited]
CompositingType KWin::EffectsHandler::compositingType (  )  const [inherited]

Definition at line 352 of file kwineffects.cpp.

virtual QRect KWin::EffectWindow::contentsRect (  )  const [pure virtual, inherited]

Geometry of the actual window contents inside the whole (including decorations) window.

Window KWin::EffectsHandler::createFullScreenInputWindow ( Effect *  e,
const QCursor &  cursor 
) [virtual, inherited]

Definition at line 347 of file kwineffects.cpp.

Window KWin::EffectsHandler::createInputWindow ( Effect *  e,
const QRect &  r,
const QCursor &  cursor 
) [inherited]

Definition at line 342 of file kwineffects.cpp.

virtual Window KWin::EffectsHandler::createInputWindow ( Effect *  e,
int  x,
int  y,
int  w,
int  h,
const QCursor &  cursor 
) [pure virtual, inherited]
virtual int KWin::EffectsHandler::currentDesktop (  )  const [pure virtual, inherited]
Returns:
The ID of the current desktop.
virtual int KWin::EffectsHandler::currentTabBoxDesktop (  )  const [pure virtual, inherited]
virtual QList< int > KWin::EffectsHandler::currentTabBoxDesktopList (  )  const [pure virtual, inherited]
virtual EffectWindow* KWin::EffectsHandler::currentTabBoxWindow (  )  const [pure virtual, inherited]
virtual EffectWindowList KWin::EffectsHandler::currentTabBoxWindowList (  )  const [pure virtual, inherited]
virtual QPoint KWin::EffectsHandler::cursorPos (  )  const [pure virtual, inherited]
QPoint Effect::cursorPos (  )  [static, inherited]

Definition at line 291 of file kwineffects.cpp.

bool KWin::WindowQuad::decoration (  )  const [inline, inherited]

Definition at line 1852 of file kwineffects.h.

virtual void KWin::EffectsHandler::deleteDesktop ( int  id  )  [pure virtual, inherited]

Deletes the desktop with the ID id.

All desktops with an ID greater than the one that was deleted will have their IDs' decremented.

virtual void KWin::EffectWindow::deleteProperty ( long  atom  )  const [pure virtual, inherited]
virtual int KWin::EffectWindow::desktop (  )  const [pure virtual, inherited]
virtual int KWin::EffectsHandler::desktopAbove ( int  desktop = 0,
bool  wrap = true 
) const [pure virtual, inherited]
Returns:
The ID of the desktop above desktop id. Wraps around to the bottom of the layout if wrap is set. If id is not set use the current one.
virtual int KWin::EffectsHandler::desktopAtCoords ( QPoint  coords  )  const [pure virtual, inherited]
Returns:
The ID of the desktop at the point coords or 0 if no desktop exists at that point. coords is to be in grid units.
virtual int KWin::EffectsHandler::desktopBelow ( int  desktop = 0,
bool  wrap = true 
) const [pure virtual, inherited]
Returns:
The ID of the desktop below desktop id. Wraps around to the top of the layout if wrap is set. If id is not set use the current one.
void Effect::desktopChanged ( int  old  )  [virtual, inherited]

Definition at line 182 of file kwineffects.cpp.

virtual QPoint KWin::EffectsHandler::desktopCoords ( int  id  )  const [pure virtual, inherited]
Returns:
The coords of the top-left corner of desktop id in pixels.
virtual QPoint KWin::EffectsHandler::desktopGridCoords ( int  id  )  const [pure virtual, inherited]
Returns:
The coords of desktop id in grid units.
virtual int KWin::EffectsHandler::desktopGridHeight (  )  const [pure virtual, inherited]
Returns:
The height of desktop layout in grid units.
virtual QSize KWin::EffectsHandler::desktopGridSize (  )  const [pure virtual, inherited]
Returns:
The size of desktop layout in grid units.
virtual int KWin::EffectsHandler::desktopGridWidth (  )  const [pure virtual, inherited]
Returns:
The width of desktop layout in grid units.
virtual QString KWin::EffectsHandler::desktopName ( int  desktop  )  const [pure virtual, inherited]
virtual int KWin::EffectsHandler::desktopToLeft ( int  desktop = 0,
bool  wrap = true 
) const [pure virtual, inherited]
Returns:
The ID of the desktop to the left of desktop id. Wraps around to the right of the layout if wrap is set. If id is not set use the current one.
virtual int KWin::EffectsHandler::desktopToRight ( int  desktop = 0,
bool  wrap = true 
) const [pure virtual, inherited]
Returns:
The ID of the desktop to the right of desktop id. Wraps around to the left of the layout if wrap is set. If id is not set use the current one.
virtual void KWin::EffectsHandler::destroyInputWindow ( Window  w  )  [pure virtual, inherited]
virtual void KWin::EffectWindow::disablePainting ( int  reason  )  [pure virtual, inherited]
int Effect::displayHeight (  )  [static, inherited]

Definition at line 286 of file kwineffects.cpp.

int Effect::displayWidth (  )  [static, inherited]

Definition at line 281 of file kwineffects.cpp.

template<typename T>
T KWin::Motion< T >::distance (  )  const [inline, inherited]

The distance between the current position and the target.

Definition at line 1416 of file kwineffects.h.

virtual void KWin::EffectsHandler::drawWindow ( EffectWindow *  w,
int  mask,
QRegion  region,
WindowPaintData &  data 
) [pure virtual, inherited]
void Effect::drawWindow ( EffectWindow *  w,
int  mask,
QRegion  region,
WindowPaintData &  data 
) [virtual, inherited]

Can be called to draw multiple copies (e.g.

thumbnails) of a window. You can change window's opacity/brightness/etc here, but you can't do any transformations

Definition at line 250 of file kwineffects.cpp.

int KWin::TimeLine::duration (  )  const [inherited]

Returns the duration of the timeline in msec.

Definition at line 1009 of file kwineffects.cpp.

bool KWin::WindowQuad::effect (  )  const [inline, inherited]

Definition at line 1859 of file kwineffects.h.

KConfigGroup KWin::EffectsHandler::effectConfig ( const QString &  effectname  )  [static, inherited]
Returns:
KConfigGroup which holds given effect's config options

Definition at line 379 of file kwineffects.cpp.

virtual void KWin::EffectWindow::enablePainting ( int  reason  )  [pure virtual, inherited]
WindowQuadList KWin::WindowQuadList::filterOut ( WindowQuadType  type  )  const [inherited]

Definition at line 802 of file kwineffects.cpp.

virtual EffectWindow* KWin::EffectWindow::findModal (  )  [pure virtual, inherited]
virtual EffectWindow* KWin::EffectsHandler::findWindow ( WId  id  )  const [pure virtual, inherited]
template<typename T >
void KWin::Motion< T >::finish (  )  [inline, inherited]

Place the object on top of the target immediately, bypassing all movement calculation.

Definition at line 1969 of file kwineffects.h.

QFont KWin::EffectFrame::font (  )  const [inline, inherited]

Definition at line 1664 of file kwineffects.h.

void KWin::EffectFrame::free (  )  [inherited]

Delete any existing textures to free up graphics memory.

They will be automatically recreated the next time they are required.

Definition at line 1396 of file kwineffects.cpp.

QRect KWin::EffectFrame::geometry (  )  const [inline, inherited]

Definition at line 1657 of file kwineffects.h.

virtual QRect KWin::EffectWindow::geometry (  )  const [pure virtual, inherited]
virtual void* KWin::EffectsHandler::getProxy ( QString  name  )  [pure virtual, inherited]

Retrieve the proxy class for an effect if it has one.

Will return NULL if the effect isn't loaded or doesn't have a proxy class.

void Effect::grabbedKeyboardEvent ( QKeyEvent *  e  )  [virtual, inherited]

Definition at line 174 of file kwineffects.cpp.

virtual bool KWin::EffectsHandler::grabKeyboard ( Effect *  effect  )  [pure virtual, inherited]
virtual const EffectWindowGroup* KWin::EffectWindow::group (  )  const [pure virtual, inherited]
virtual bool KWin::EffectWindow::hasAlpha (  )  const [pure virtual, inherited]
bool KWin::EffectWindow::hasDecoration (  )  const [inherited]

Definition at line 518 of file kwineffects.cpp.

virtual bool KWin::EffectsHandler::hasDecorationShadows (  )  const [pure virtual, inherited]

Returns true if the active window decoration has shadow API hooks.

virtual bool KWin::EffectWindow::hasOwnShape (  )  const [pure virtual, inherited]

For internal use only.

Do not use

virtual int KWin::EffectWindow::height (  )  const [pure virtual, inherited]
QPixmap KWin::EffectFrame::icon (  )  const [inline, inherited]

Definition at line 1670 of file kwineffects.h.

virtual QPixmap KWin::EffectWindow::icon (  )  const [pure virtual, inherited]
virtual QRect KWin::EffectWindow::iconGeometry (  )  const [pure virtual, inherited]
QSize KWin::EffectFrame::iconSize (  )  const [inline, inherited]

Definition at line 1673 of file kwineffects.h.

int KWin::WindowQuad::id (  )  const [inline, inherited]

Definition at line 1846 of file kwineffects.h.

KWIN_EXPORT QRect KWin::infiniteRegion (  )  [inline]

Infinite region (i.e.

a special region type saying that everything needs to be painted).

Definition at line 189 of file kwineffects.h.

static double KWin::Effect::interpolate ( double  x,
double  y,
double  a 
) [inline, static, inherited]

Linearly interpolates between x and y.

Returns x when a = 0; returns y when a = 1.

Definition at line 447 of file kwineffects.h.

virtual bool KWin::EffectWindow::isComboBox (  )  const [pure virtual, inherited]

Returns whether the window is a combobox popup.

See _NET_WM_WINDOW_TYPE_COMBO at http://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

virtual bool KWin::EffectWindow::isDeleted (  )  const [pure virtual, inherited]
virtual bool KWin::EffectWindow::isDesktop (  )  const [pure virtual, inherited]

Returns whether the window is a desktop background window (the one with wallpaper).

See _NET_WM_WINDOW_TYPE_DESKTOP at http://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

virtual bool KWin::EffectsHandler::isDesktopLayoutDynamic (  )  const [pure virtual, inherited]
Returns:
Whether or not the desktop layout is allowed to be modified by the user.
virtual bool KWin::EffectWindow::isDialog (  )  const [pure virtual, inherited]

Returns whether the window is a dialog window.

See _NET_WM_WINDOW_TYPE_DIALOG at http://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

virtual bool KWin::EffectWindow::isDNDIcon (  )  const [pure virtual, inherited]

Returns whether the window is a Drag&Drop icon.

See _NET_WM_WINDOW_TYPE_DND at http://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

virtual bool KWin::EffectWindow::isDock (  )  const [pure virtual, inherited]

Returns whether the window is a dock (i.e.

a panel). See _NET_WM_WINDOW_TYPE_DOCK at http://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

bool KWin::PaintClipper::Iterator::isDone (  )  [inherited]

Definition at line 935 of file kwineffects.cpp.

virtual bool KWin::EffectWindow::isDropdownMenu (  )  const [pure virtual, inherited]

Returns whether the window is a dropdown menu (i.e.

a popup directly or indirectly open from the applications menubar). See _NET_WM_WINDOW_TYPE_DROPDOWN_MENU at http://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

virtual bool KWin::EffectWindow::isManaged (  )  const [pure virtual, inherited]

Returns whether the window is managed by KWin (it has control over its placement and other aspects, as opposed to override-redirect windows that are entirely handled by the application).

bool KWin::WindowMotionManager::isManaging ( EffectWindow *  w  )  [inline, inherited]

Returns whether or not a specified window is being managed by this manager object.

Definition at line 1584 of file kwineffects.h.

virtual bool KWin::EffectWindow::isMenu (  )  const [pure virtual, inherited]

Returns whether the window is a torn-off menu.

See _NET_WM_WINDOW_TYPE_MENU at http://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

virtual bool KWin::EffectWindow::isMinimized (  )  const [pure virtual, inherited]
virtual bool KWin::EffectWindow::isModal (  )  const [pure virtual, inherited]
virtual bool KWin::EffectWindow::isMovable (  )  const [pure virtual, inherited]
virtual bool KWin::EffectWindow::isMovableAcrossScreens (  )  const [pure virtual, inherited]
virtual bool KWin::EffectWindow::isNormalWindow (  )  const [pure virtual, inherited]

Returns whether the window is a "normal" window, i.e.

an application or any other window for which none of the specialized window types fit. See _NET_WM_WINDOW_TYPE_NORMAL at http://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

virtual bool KWin::EffectWindow::isNotification (  )  const [pure virtual, inherited]

Returns whether the window is a window with a notification.

See _NET_WM_WINDOW_TYPE_NOTIFICATION at http://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

virtual bool KWin::EffectWindow::isOnAllDesktops (  )  const [pure virtual, inherited]
bool KWin::EffectWindow::isOnCurrentDesktop (  )  const [virtual, inherited]

Definition at line 508 of file kwineffects.cpp.

bool KWin::EffectWindow::isOnDesktop ( int  d  )  const [virtual, inherited]

Definition at line 513 of file kwineffects.cpp.

virtual bool KWin::EffectWindow::isPaintingEnabled (  )  [pure virtual, inherited]
virtual bool KWin::EffectWindow::isPopupMenu (  )  const [pure virtual, inherited]

Returns whether the window is a popup menu (that is not a torn-off or dropdown menu).

See _NET_WM_WINDOW_TYPE_POPUP_MENU at http://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

virtual bool KWin::EffectWindow::isSpecialWindow (  )  const [pure virtual, inherited]

Returns whether the window is any of special windows types (desktop, dock, splash, .

..), i.e. window types that usually don't have a window frame and the user does not use window management (moving, raising,...) on them.

virtual bool KWin::EffectWindow::isSplash (  )  const [pure virtual, inherited]

Returns whether the window is a splashscreen.

Note that many (especially older) applications do not support marking their splash windows with this type. See _NET_WM_WINDOW_TYPE_SPLASH at http://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

virtual bool KWin::EffectWindow::isToolbar (  )  const [pure virtual, inherited]

Returns whether the window is a standalone (detached) toolbar window.

See _NET_WM_WINDOW_TYPE_TOOLBAR at http://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

virtual bool KWin::EffectWindow::isTooltip (  )  const [pure virtual, inherited]

Returns whether the window is a tooltip.

See _NET_WM_WINDOW_TYPE_TOOLTIP at http://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

virtual bool KWin::EffectWindow::isTopMenu (  )  const [pure virtual, inherited]

Returns whether the window is standalone menubar (AKA macmenu).

This window type is a KDE extension.

bool KWin::WindowQuadList::isTransformed (  )  const [inherited]

Definition at line 828 of file kwineffects.cpp.

bool KWin::WindowQuad::isTransformed (  )  const [inline, inherited]

Definition at line 1866 of file kwineffects.h.

virtual bool KWin::EffectWindow::isUserMove (  )  const [pure virtual, inherited]
virtual bool KWin::EffectWindow::isUserResize (  )  const [pure virtual, inherited]
virtual bool KWin::EffectWindow::isUtility (  )  const [pure virtual, inherited]

Returns whether the window is a utility window, such as a tool window.

See _NET_WM_WINDOW_TYPE_UTILITY at http://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

virtual bool KWin::EffectWindow::keepAbove (  )  const [pure virtual, inherited]

Returns whether or not the window is kept above all other windows.

double KWin::WindowQuad::left (  )  const [inline, inherited]

Definition at line 1875 of file kwineffects.h.

virtual EffectWindowList KWin::EffectWindow::mainWindows (  )  const [pure virtual, inherited]
void KWin::WindowQuadList::makeArrays ( float **  vertices,
float **  texcoords 
) const [inherited]

Definition at line 764 of file kwineffects.cpp.

WindowQuadList KWin::WindowQuadList::makeGrid ( int  maxquadsize  )  const [inherited]

Definition at line 675 of file kwineffects.cpp.

WindowQuadList KWin::WindowQuadList::makeRegularGrid ( int  xSubdivisions,
int  ySubdivisions 
) const [inherited]

Definition at line 718 of file kwineffects.cpp.

WindowQuad KWin::WindowQuad::makeSubQuad ( double  x1,
double  y1,
double  x2,
double  y2 
) const [inherited]

Definition at line 545 of file kwineffects.cpp.

void KWin::WindowMotionManager::manage ( EffectWindowList  list  )  [inline, inherited]

Register a list of windows for managing.

Definition at line 1496 of file kwineffects.h.

void KWin::WindowMotionManager::manage ( EffectWindow *  w  )  [inherited]

Register a window for managing.

Definition at line 1150 of file kwineffects.cpp.

EffectWindowList KWin::WindowMotionManager::managedWindows (  )  const [inline, inherited]

Return a list of all currently registered windows.

Definition at line 1579 of file kwineffects.h.

bool KWin::WindowMotionManager::managingWindows (  )  [inline, inherited]

Returns whether or not this manager object is actually managing any windows or not.

Definition at line 1589 of file kwineffects.h.

virtual EffectWindowList KWin::EffectWindowGroup::members (  )  const [pure virtual, inherited]
virtual void KWin::EffectWindow::minimize (  )  const [pure virtual, inherited]
void Effect::mouseChanged ( const QPoint &  pos,
const QPoint &  oldpos,
Qt::MouseButtons  buttons,
Qt::MouseButtons  oldbuttons,
Qt::KeyboardModifiers  modifiers,
Qt::KeyboardModifiers  oldmodifiers 
) [virtual, inherited]

Definition at line 215 of file kwineffects.cpp.

void KWin::WindowVertex::move ( double  x,
double  y 
) [inline, inherited]

Definition at line 1795 of file kwineffects.h.

void KWin::WindowMotionManager::moveWindow ( EffectWindow *  w,
QRect  target 
) [inline, inherited]

This is an overloaded method, provided for convenience.

Ask the manager to move the window to the target rectangle. Automatically determines scale.

Definition at line 1551 of file kwineffects.h.

void KWin::WindowMotionManager::moveWindow ( EffectWindow *  w,
QPoint  target,
double  scale = 1.0,
double  yScale = 0.0 
) [inherited]

Ask the manager to move the window to the target position with the specified scale.

If `yScale` is not provided or set to 0.0, `scale` will be used as the scale in the vertical direction as well as in the horizontal direction.

Definition at line 1289 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::moveWindow ( EffectWindow *  w,
const QPoint &  pos,
bool  snap = false,
double  snapAdjust = 1.0 
) [pure virtual, inherited]
virtual WindowQuadType KWin::EffectsHandler::newWindowQuadType (  )  [pure virtual, inherited]
void KWin::PaintClipper::Iterator::next (  )  [inherited]

Definition at line 950 of file kwineffects.cpp.

virtual int KWin::EffectsHandler::numberOfDesktops (  )  const [pure virtual, inherited]
Returns:
Total number of desktops currently in existence.
virtual int KWin::EffectsHandler::numScreens (  )  const [pure virtual, inherited]
virtual double KWin::EffectWindow::opacity (  )  const [pure virtual, inherited]
const WindowVertex & KWin::WindowQuad::operator[] ( int  index  )  const [inline, inherited]

Definition at line 1832 of file kwineffects.h.

WindowVertex & KWin::WindowQuad::operator[] ( int  index  )  [inline, inherited]

Definition at line 1825 of file kwineffects.h.

virtual bool KWin::EffectsHandler::optionRollOverDesktops (  )  const [pure virtual, inherited]
double KWin::WindowQuad::originalBottom (  )  const [inline, inherited]

Definition at line 1917 of file kwineffects.h.

double KWin::WindowQuad::originalLeft (  )  const [inline, inherited]

Definition at line 1899 of file kwineffects.h.

double KWin::WindowQuad::originalRight (  )  const [inline, inherited]

Definition at line 1905 of file kwineffects.h.

double KWin::WindowQuad::originalTop (  )  const [inline, inherited]

Definition at line 1911 of file kwineffects.h.

double KWin::WindowVertex::originalX (  )  const [inline, inherited]

Definition at line 1771 of file kwineffects.h.

double KWin::WindowVertex::originalY (  )  const [inline, inherited]

Definition at line 1777 of file kwineffects.h.

QRegion KWin::PaintClipper::paintArea (  )  [static, inherited]

If clip() returns true, this function gives the resulting area in which painting is allowed.

It is usually simpler to use the helper Iterator class.

Definition at line 881 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::paintScreen ( int  mask,
QRegion  region,
ScreenPaintData &  data 
) [pure virtual, inherited]
void Effect::paintScreen ( int  mask,
QRegion  region,
ScreenPaintData &  data 
) [virtual, inherited]

In this method you can:.

  • paint something on top of the windows (by painting after calling effects->paintScreen())
  • paint multiple desktops and/or multiple copies of the same desktop by calling effects->paintScreen() multiple times

Definition at line 225 of file kwineffects.cpp.

bool KWin::EffectsHandler::paintText ( const QString &  text,
const QRect &  rect,
const QColor &  color,
const QFont &  font = QFont(),
const Qt::Alignment &  alignment = Qt::AlignCenter 
) [inherited]
Deprecated:
See also:
EffectFrame

Definition at line 385 of file kwineffects.cpp.

bool KWin::EffectsHandler::paintText ( const QString &  text,
const QPoint &  center,
int  maxwidth,
const QColor &  color,
const QFont &  font = QFont() 
) [inline, inherited]
Deprecated:
See also:
EffectFrame Paints given text onto screen, possibly in elided form
Parameters:
text 
center center point of the painted text
maxwidth if text is longer than this, is will be elided
color color of the text, may contain alpha
font font for the text

Definition at line 1726 of file kwineffects.h.

bool KWin::EffectsHandler::paintTextWithBackground ( const QString &  text,
const QRect &  rect,
const QColor &  color,
const QColor &  bgcolor,
const QFont &  font = QFont(),
const Qt::Alignment &  alignment = Qt::AlignCenter 
) [inherited]
Deprecated:
See also:
EffectFrame

Definition at line 449 of file kwineffects.cpp.

bool KWin::EffectsHandler::paintTextWithBackground ( const QString &  text,
const QPoint &  center,
int  maxwidth,
const QColor &  color,
const QColor &  bgcolor,
const QFont &  font = QFont() 
) [inline, inherited]
Deprecated:
See also:
EffectFrame

Definition at line 1734 of file kwineffects.h.

virtual void KWin::EffectsHandler::paintWindow ( EffectWindow *  w,
int  mask,
QRegion  region,
WindowPaintData &  data 
) [pure virtual, inherited]
void Effect::paintWindow ( EffectWindow *  w,
int  mask,
QRegion  region,
WindowPaintData &  data 
) [virtual, inherited]

This is the main method for painting windows.

In this method you can:

  • do various transformations
  • change opacity of the window
  • change brightness and/or saturation, if it's supported

Definition at line 240 of file kwineffects.cpp.

void KWin::PaintClipper::pop ( const QRegion &  allowed_area  )  [static, inherited]

Removes the given area.

It must match the top item in the stack.

Definition at line 862 of file kwineffects.cpp.

virtual GLRenderTarget* KWin::EffectsHandler::popRenderTarget (  )  [pure virtual, inherited]
virtual QPoint KWin::EffectWindow::pos (  )  const [pure virtual, inherited]
virtual void KWin::EffectsHandler::postPaintScreen (  )  [pure virtual, inherited]
void Effect::postPaintScreen (  )  [virtual, inherited]

Called after all the painting has been finished.

In this method you can:

  • schedule next repaint in case of animations You shouldn't paint anything here.

Definition at line 230 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::postPaintWindow ( EffectWindow *  w  )  [pure virtual, inherited]
void Effect::postPaintWindow ( EffectWindow *  w  )  [virtual, inherited]

Called for every window after all painting has been finished.

In this method you can:

  • schedule next repaint for individual window(s) in case of animations You shouldn't paint anything here.

Definition at line 245 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::prePaintScreen ( ScreenPrePaintData &  data,
int  time 
) [pure virtual, inherited]
void Effect::prePaintScreen ( ScreenPrePaintData &  data,
int  time 
) [virtual, inherited]

Called before starting to paint the screen.

In this method you can:

  • set whether the windows or the entire screen will be transformed
  • change the region of the screen that will be painted
  • do various housekeeping tasks such as initing your effect's variables for the upcoming paint pass or updating animation's progress

Definition at line 220 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::prePaintWindow ( EffectWindow *  w,
WindowPrePaintData &  data,
int  time 
) [pure virtual, inherited]
void Effect::prePaintWindow ( EffectWindow *  w,
WindowPrePaintData &  data,
int  time 
) [virtual, inherited]

Called for every window before the actual paint pass In this method you can:.

  • enable or disable painting of the window (e.g. enable paiting of minimized window)
  • set window to be painted with translucency
  • set window to be transformed
  • request the window to be divided into multiple parts

Definition at line 235 of file kwineffects.cpp.

double KWin::TimeLine::progress (  )  const [inherited]

Returns the progress of the TimeLine, between 0.0 and 1.0.

The value returned is equivalent to the y-axis on a curve.

Definition at line 1058 of file kwineffects.cpp.

void Effect::propertyNotify ( EffectWindow *  w,
long  atom 
) [virtual, inherited]

Receives events registered for using EffectsHandler::registerPropertyType().

Use readProperty() to get the property data. Note that the property may be already set on the window, so doing the same processing from windowAdded() (e.g. simply calling propertyNotify() from it) is usually needed.

Definition at line 178 of file kwineffects.cpp.

void * Effect::proxy (  )  [virtual, inherited]

Called when another effect requests the proxy for this effect.

Definition at line 117 of file kwineffects.cpp.

void KWin::PaintClipper::push ( const QRegion &  allowed_area  )  [static, inherited]

Allows painting only in the given area.

When areas have been already specified, painting is allowed only in the intersection of all areas.

Definition at line 853 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::pushRenderTarget ( GLRenderTarget *  target  )  [pure virtual, inherited]
virtual QByteArray KWin::EffectWindow::readProperty ( long  atom,
long  type,
int  format 
) const [pure virtual, inherited]
virtual void KWin::EffectsHandler::reconfigure (  )  [pure virtual, inherited]
void Effect::reconfigure ( ReconfigureFlags  flags  )  [virtual, inherited]

Called when configuration changes (either the effect's or KWin's global).

Definition at line 113 of file kwineffects.cpp.

virtual QRect KWin::EffectWindow::rect (  )  const [pure virtual, inherited]
virtual void KWin::EffectsHandler::refTabBox (  )  [pure virtual, inherited]
virtual void KWin::EffectWindow::refWindow (  )  [pure virtual, inherited]
virtual void KWin::EffectsHandler::registerPropertyType ( long  atom,
bool  reg 
) [pure virtual, inherited]

Makes KWin core watch PropertyNotify events for the given atom, or stops watching if reg is false (must be called the same number of times as registering).

Events are sent using Effect::propertyNotify(). Note that even events that haven't been registered for can be received.

void KWin::TimeLine::removeTime ( const int  msec  )  [inherited]

Decreases the internal counter, this is usually done in prePaintWindow().

This function comes handy for reverse animations.

Definition at line 1044 of file kwineffects.cpp.

void KWin::EffectFrame::render ( QRegion  region = infiniteRegion(),
double  opacity = 1.0,
double  frameOpacity = 1.0 
) [inherited]

Render the frame.

Definition at line 1412 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::reserveElectricBorder ( ElectricBorder  border  )  [pure virtual, inherited]
virtual void KWin::EffectsHandler::reserveElectricBorderSwitching ( bool  reserve  )  [pure virtual, inherited]
void KWin::WindowMotionManager::reset ( EffectWindow *  w  )  [inherited]

Resets the motion target and current value of a single window.

Definition at line 1266 of file kwineffects.cpp.

void KWin::WindowMotionManager::reset (  )  [inherited]

Set all motion targets and values back to where the windows were before transformations.

The same as unmanaging then remanaging all windows.

Definition at line 1249 of file kwineffects.cpp.

double KWin::WindowQuad::right (  )  const [inline, inherited]

Definition at line 1881 of file kwineffects.h.

bool KWin::EffectsHandler::saturationSupported (  )  const [inherited]

Definition at line 357 of file kwineffects.cpp.

virtual int KWin::EffectWindow::screen (  )  const [pure virtual, inherited]
virtual int KWin::EffectsHandler::screenNumber ( const QPoint &  pos  )  const [pure virtual, inherited]
WindowQuadList KWin::WindowQuadList::select ( WindowQuadType  type  )  const [inherited]

Definition at line 784 of file kwineffects.cpp.

void KWin::EffectsHandler::sendReloadMessage ( const QString &  effectname  )  [static, inherited]

Sends message over DCOP to reload given effect.

Parameters:
effectname effect's name without "kwin4_effect_" prefix. Can be called from effect's config module to apply config changes.

Definition at line 372 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::setActiveFullScreenEffect ( Effect *  e  )  [pure virtual, inherited]
void KWin::EffectFrame::setAlignment ( Qt::Alignment  alignment  )  [inline, inherited]

Set the text alignment for static frames and the position alignment for non-static.

Definition at line 1654 of file kwineffects.h.

virtual void KWin::EffectsHandler::setCurrentDesktop ( int  desktop  )  [pure virtual, inherited]

Set the current desktop to desktop.

void KWin::TimeLine::setCurveShape ( CurveShape  curveShape  )  [inherited]

Set the CurveShape.

The CurveShape describes the relation between the value and the time. progress is between 0 and 1 It's used as input for the timeline, the x axis of the curve.

Definition at line 1077 of file kwineffects.cpp.

void KWin::TimeLine::setDuration ( const int  msec  )  [inherited]

Set the duration of the TimeLine.

Definition at line 1014 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::setElevatedWindow ( EffectWindow *  w,
bool  set 
) [pure virtual, inherited]
void KWin::EffectFrame::setFont ( const QFont &  font  )  [inherited]

Definition at line 1639 of file kwineffects.cpp.

void KWin::EffectFrame::setGeometry ( const QRect &  geometry,
bool  force = false 
) [inherited]

Definition at line 1577 of file kwineffects.cpp.

void KWin::EffectFrame::setIcon ( const QPixmap &  icon  )  [inherited]

Set the icon that will appear on the left-hand size of the frame.

Definition at line 1664 of file kwineffects.cpp.

void KWin::EffectFrame::setIconSize ( const QSize &  size  )  [inherited]

Definition at line 1671 of file kwineffects.cpp.

void KWin::EffectFrame::setPosition ( const QPoint &  point  )  [inherited]

Definition at line 1571 of file kwineffects.cpp.

void Effect::setPositionTransformations ( WindowPaintData &  data,
QRect &  region,
EffectWindow *  w,
const QRect &  r,
Qt::AspectRatioMode  aspect 
) [static, inherited]

Helper to set WindowPaintData and QRegion to necessary transformations so that a following drawWindow() would put the window at the requested geometry (useful for thumbnails).

Definition at line 265 of file kwineffects.cpp.

void KWin::TimeLine::setProgress ( const double  progress  )  [inherited]

Set the time to progress * duration.

This will change the internal time in the TimeLine. It's usually used in prePaintWindow() or prePaintScreen() so the value() taken in paint* is increased.

Definition at line 1051 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::setShowingDesktop ( bool  showing  )  [pure virtual, inherited]
template<typename T>
void KWin::Motion< T >::setSmoothness ( const double  smoothness  )  [inline, inherited]

Definition at line 1411 of file kwineffects.h.

template<typename T>
void KWin::Motion< T >::setStrength ( const double  strength  )  [inline, inherited]

Definition at line 1409 of file kwineffects.h.

virtual void KWin::EffectsHandler::setTabBoxDesktop ( int   )  [pure virtual, inherited]
virtual void KWin::EffectsHandler::setTabBoxWindow ( EffectWindow *   )  [pure virtual, inherited]
template<typename T>
void KWin::Motion< T >::setTarget ( const T  target  )  [inline, inherited]

Definition at line 1404 of file kwineffects.h.

void KWin::EffectFrame::setText ( const QString &  text  )  [inherited]

Definition at line 1615 of file kwineffects.cpp.

void KWin::WindowPrePaintData::setTransformed (  )  [inherited]

Helper to mark that this window will be transformed.

Definition at line 57 of file kwineffects.cpp.

void KWin::WindowPrePaintData::setTranslucent (  )  [inherited]

Simple helper that sets data to say the window will be painted as non-opaque.

Takes also care of changing the regions.

Definition at line 50 of file kwineffects.cpp.

template<typename T>
void KWin::Motion< T >::setValue ( const T  value  )  [inline, inherited]

Definition at line 1402 of file kwineffects.h.

template<typename T>
void KWin::Motion< T >::setVelocity ( const T  velocity  )  [inline, inherited]

Definition at line 1406 of file kwineffects.h.

void KWin::WindowVertex::setX ( double  x  )  [inline, inherited]

Definition at line 1802 of file kwineffects.h.

void KWin::WindowVertex::setY ( double  y  )  [inline, inherited]

Definition at line 1808 of file kwineffects.h.

virtual QRegion KWin::EffectWindow::shape (  )  const [pure virtual, inherited]
virtual QSize KWin::EffectWindow::size (  )  const [pure virtual, inherited]
bool KWin::WindowQuadList::smoothNeeded (  )  const [inherited]

Definition at line 820 of file kwineffects.cpp.

bool KWin::WindowQuad::smoothNeeded (  )  const [inherited]

Definition at line 590 of file kwineffects.cpp.

template<typename T>
double KWin::Motion< T >::smoothness (  )  const [inline, inherited]

Definition at line 1410 of file kwineffects.h.

WindowQuadList KWin::WindowQuadList::splitAtY ( double  y  )  const [inherited]

Definition at line 639 of file kwineffects.cpp.

virtual EffectWindowList KWin::EffectsHandler::stackingOrder (  )  const [pure virtual, inherited]
virtual void KWin::EffectsHandler::startMousePolling (  )  [pure virtual, inherited]
virtual void KWin::EffectsHandler::stopMousePolling (  )  [pure virtual, inherited]
template<typename T>
double KWin::Motion< T >::strength (  )  const [inline, inherited]

Definition at line 1408 of file kwineffects.h.

QColor KWin::EffectFrame::styledTextColor (  )  [static, inherited]

The foreground text color as specified by the default Plasma theme.

Definition at line 1677 of file kwineffects.cpp.

void Effect::tabBoxAdded ( int  mode  )  [virtual, inherited]

Definition at line 194 of file kwineffects.cpp.

void Effect::tabBoxClosed (  )  [virtual, inherited]

Definition at line 198 of file kwineffects.cpp.

void Effect::tabBoxKeyEvent ( QKeyEvent *  event  )  [virtual, inherited]

Definition at line 206 of file kwineffects.cpp.

void Effect::tabBoxUpdated (  )  [virtual, inherited]

Definition at line 202 of file kwineffects.cpp.

template<typename T>
T KWin::Motion< T >::target (  )  const [inline, inherited]

Definition at line 1403 of file kwineffects.h.

QRectF KWin::WindowMotionManager::targetGeometry ( EffectWindow *  w  )  const [inherited]

Retrieve the current target geometry of a registered window.

Definition at line 1322 of file kwineffects.cpp.

QString KWin::EffectFrame::text (  )  const [inline, inherited]

Definition at line 1661 of file kwineffects.h.

double KWin::WindowVertex::textureX (  )  const [inline, inherited]

Definition at line 1783 of file kwineffects.h.

double KWin::WindowVertex::textureY (  )  const [inline, inherited]

Definition at line 1789 of file kwineffects.h.

int KWin::TimeLine::time (  )  const [inherited]

Returns the current time of the TimeLine, between 0 and duration() The value returned is equivalent to the x-axis on a curve.

Definition at line 1064 of file kwineffects.cpp.

double KWin::WindowQuad::top (  )  const [inline, inherited]

Definition at line 1887 of file kwineffects.h.

QRectF KWin::WindowMotionManager::transformedGeometry ( EffectWindow *  w  )  const [inherited]

Retrieve the current tranformed geometry of a registered window.

Definition at line 1310 of file kwineffects.cpp.

QRect KWin::EffectsHandler::transformWindowDamage ( EffectWindow *  w,
const QRect &  r 
) [virtual, inherited]

Definition at line 330 of file kwineffects.cpp.

QRect Effect::transformWindowDamage ( EffectWindow *  w,
const QRect &  r 
) [virtual, inherited]

This function is used e.g.

by the shadow effect which adds area around windows that needs to be painted as well - e.g. when a window is hidden and the workspace needs to be repainted at that area, shadow's transformWindowDamage() adds the shadow area to it, so that it is repainted as well.

Definition at line 260 of file kwineffects.cpp.

WindowQuadType KWin::WindowQuad::type (  )  const [inline, inherited]

Definition at line 1839 of file kwineffects.h.

virtual void KWin::EffectsHandler::ungrabKeyboard (  )  [pure virtual, inherited]
void KWin::WindowMotionManager::unmanage ( EffectWindow *  w  )  [inherited]

Deregister a window.

All transformations applied to the window will be permanently removed and cannot be recovered.

Definition at line 1173 of file kwineffects.cpp.

void KWin::WindowMotionManager::unmanageAll (  )  [inherited]

Deregister all windows, returning the manager to its originally initiated state.

Definition at line 1186 of file kwineffects.cpp.

virtual void KWin::EffectWindow::unminimize (  )  const [pure virtual, inherited]
virtual void KWin::EffectsHandler::unrefTabBox (  )  [pure virtual, inherited]
virtual void KWin::EffectWindow::unrefWindow (  )  [pure virtual, inherited]
virtual void KWin::EffectsHandler::unreserveElectricBorder ( ElectricBorder  border  )  [pure virtual, inherited]
template<typename T>
T KWin::Motion< T >::value (  )  const [inline, inherited]

Definition at line 1401 of file kwineffects.h.

double KWin::TimeLine::value (  )  const [inherited]

Returns the Value at the time set, this method will usually be used to get the progress in the paintWindow() and related methods.

The value represents the y-axis' value corresponding to the current progress (or time) set by setProgress(), addProgress(), addTime(), removeTime()

Definition at line 1021 of file kwineffects.cpp.

double KWin::TimeLine::valueForTime ( const int  msec  )  const [inherited]

Returns the Value at the time provided, this method will usually be used to get the progress in the paintWindow() and related methods, the y value of the current state x.

Definition at line 1027 of file kwineffects.cpp.

template<typename T>
T KWin::Motion< T >::velocity (  )  const [inline, inherited]

Definition at line 1405 of file kwineffects.h.

virtual bool KWin::EffectWindow::visibleInClientGroup (  )  const [pure virtual, inherited]
virtual int KWin::EffectWindow::width (  )  const [pure virtual, inherited]
void Effect::windowActivated ( EffectWindow *  c  )  [virtual, inherited]

Definition at line 146 of file kwineffects.cpp.

void Effect::windowAdded ( EffectWindow *  c  )  [virtual, inherited]

Definition at line 134 of file kwineffects.cpp.

EffectWindow * KWin::WindowMotionManager::windowAtPoint ( QPoint  point,
bool  useStackingOrder = true 
) const [inherited]

Return the window that has its transformed geometry under the specified point.

It is recommended to use the stacking order as it's what the user sees, but it is slightly slower to process.

Definition at line 1334 of file kwineffects.cpp.

virtual QString KWin::EffectWindow::windowClass (  )  const [pure virtual, inherited]
void Effect::windowClosed ( EffectWindow *  c  )  [virtual, inherited]

Definition at line 138 of file kwineffects.cpp.

void Effect::windowDamaged ( EffectWindow *  w,
const QRect &  r 
) [virtual, inherited]

Definition at line 186 of file kwineffects.cpp.

void Effect::windowDeleted ( EffectWindow *  c  )  [virtual, inherited]

Definition at line 142 of file kwineffects.cpp.

void Effect::windowGeometryShapeChanged ( EffectWindow *  w,
const QRect &  old 
) [virtual, inherited]

Definition at line 190 of file kwineffects.cpp.

void Effect::windowInputMouseEvent ( Window  w,
QEvent *  e 
) [virtual, inherited]

Definition at line 170 of file kwineffects.cpp.

void Effect::windowMinimized ( EffectWindow *  c  )  [virtual, inherited]

Definition at line 150 of file kwineffects.cpp.

void Effect::windowMoveResizeGeometryUpdate ( EffectWindow *  c,
const QRect &  geometry 
) [virtual, inherited]

called when the geometry changed during moving/resizing.

Definition at line 126 of file kwineffects.cpp.

void Effect::windowOpacityChanged ( EffectWindow *  c,
double  old_opacity 
) [virtual, inherited]

Definition at line 130 of file kwineffects.cpp.

virtual QString KWin::EffectWindow::windowRole (  )  const [pure virtual, inherited]
virtual void KWin::EffectsHandler::windowToDesktop ( EffectWindow *  w,
int  desktop 
) [pure virtual, inherited]
virtual void KWin::EffectsHandler::windowToScreen ( EffectWindow *  w,
int  screen 
) [pure virtual, inherited]
void Effect::windowUnminimized ( EffectWindow *  c  )  [virtual, inherited]

Definition at line 154 of file kwineffects.cpp.

void Effect::windowUserMovedResized ( EffectWindow *  c,
bool  first,
bool  last 
) [virtual, inherited]

called when moved/resized or once after it's finished

Definition at line 122 of file kwineffects.cpp.

virtual int KWin::EffectsHandler::workspaceHeight (  )  const [pure virtual, inherited]
Returns:
The height of desktop layout in pixels.
virtual int KWin::EffectsHandler::workspaceWidth (  )  const [pure virtual, inherited]
Returns:
The width of desktop layout in pixels.
double KWin::WindowVertex::x (  )  const [inline, inherited]

Definition at line 1759 of file kwineffects.h.

virtual int KWin::EffectWindow::x (  )  const [pure virtual, inherited]
virtual unsigned long KWin::EffectsHandler::xrenderBufferPicture (  )  [pure virtual, inherited]
double KWin::WindowVertex::y (  )  const [inline, inherited]

Definition at line 1765 of file kwineffects.h.

virtual int KWin::EffectWindow::y (  )  const [pure virtual, inherited]

Variable Documentation

float KWin::RotationData::angle [inherited]

Definition at line 1154 of file kwineffects.h.

RotationAxis KWin::RotationData::axis [inherited]

Definition at line 1153 of file kwineffects.h.

double KWin::WindowPaintData::brightness [inherited]

Brightness of the window, in range [0; 1] 1 means that the window is unchanged, 0 means that it's completely black.

0.5 would make it 50% darker than usual

Definition at line 1114 of file kwineffects.h.

QRegion KWin::WindowPrePaintData::clip [inherited]

The clip region will be substracted from paint region of following windows.

I.e. window will definitely cover it's clip region

Definition at line 1069 of file kwineffects.h.

CompositingType KWin::EffectsHandler::compositing_type [protected, inherited]

Definition at line 773 of file kwineffects.h.

double KWin::WindowPaintData::contents_opacity [inherited]

Definition at line 1092 of file kwineffects.h.

int KWin::EffectsHandler::current_build_quads [protected, inherited]

Definition at line 771 of file kwineffects.h.

int KWin::EffectsHandler::current_draw_window [protected, inherited]

Definition at line 770 of file kwineffects.h.

int KWin::EffectsHandler::current_paint_screen [protected, inherited]

Definition at line 768 of file kwineffects.h.

int KWin::EffectsHandler::current_paint_window [protected, inherited]

Definition at line 769 of file kwineffects.h.

int KWin::EffectsHandler::current_transform [protected, inherited]

Definition at line 772 of file kwineffects.h.

double KWin::WindowPaintData::decoration_opacity [inherited]

Definition at line 1093 of file kwineffects.h.

QHash< QString, KLibrary* > KWin::EffectsHandler::effect_libraries [protected, inherited]

Definition at line 765 of file kwineffects.h.

KWIN_EXPORT EffectsHandler * KWin::effects = 0

Pointer to the global EffectsHandler object.

Definition at line 493 of file kwineffects.cpp.

QList< InputWindowPair > KWin::EffectsHandler::input_windows [protected, inherited]

Definition at line 766 of file kwineffects.h.

QVector< EffectPair > KWin::EffectsHandler::loaded_effects [protected, inherited]

Definition at line 764 of file kwineffects.h.

double KWin::WindowPaintData::opacity [inherited]

Window opacity, in range 0 = transparent to 1 = fully opaque Opacity for contents is opacity*contents_opacity, the same way for decoration.

Definition at line 1091 of file kwineffects.h.

QRegion KWin::ScreenPrePaintData::paint [inherited]

Definition at line 1140 of file kwineffects.h.

QRegion KWin::WindowPrePaintData::paint [inherited]

Region that will be painted, in screen coordinates.

Definition at line 1064 of file kwineffects.h.

WindowQuadList KWin::WindowPaintData::quads [inherited]

Definition at line 1115 of file kwineffects.h.

WindowQuadList KWin::WindowPrePaintData::quads [inherited]

Definition at line 1070 of file kwineffects.h.

RotationData* KWin::ScreenPaintData::rotation [inherited]

Definition at line 1133 of file kwineffects.h.

RotationData* KWin::WindowPaintData::rotation [inherited]

Definition at line 1120 of file kwineffects.h.

double KWin::WindowPaintData::saturation [inherited]

Saturation of the window, in range [0; 1] 1 means that the window is unchanged, 0 means that it's completely unsaturated (greyscale).

0.5 would make the colors less intense, but not completely grey Use EffectsHandler::saturationSupported() to find out whether saturation is supported by the system, otherwise this value has no effect.

Definition at line 1108 of file kwineffects.h.

Motion2D KWin::WindowMotionManager::WindowMotion::scale [inherited]

Definition at line 1602 of file kwineffects.h.

GLShader* KWin::WindowPaintData::shader [inherited]

Shader to be used for rendering, if any.

Definition at line 1119 of file kwineffects.h.

float KWin::RotationData::xRotationPoint [inherited]

Definition at line 1155 of file kwineffects.h.

double KWin::ScreenPaintData::xScale [inherited]

Definition at line 1127 of file kwineffects.h.

double KWin::WindowPaintData::xScale [inherited]

Definition at line 1094 of file kwineffects.h.

int KWin::ScreenPaintData::xTranslate [inherited]

Definition at line 1130 of file kwineffects.h.

int KWin::WindowPaintData::xTranslate [inherited]

Definition at line 1097 of file kwineffects.h.

float KWin::RotationData::yRotationPoint [inherited]

Definition at line 1156 of file kwineffects.h.

double KWin::ScreenPaintData::yScale [inherited]

Definition at line 1128 of file kwineffects.h.

double KWin::WindowPaintData::yScale [inherited]

Definition at line 1095 of file kwineffects.h.

int KWin::ScreenPaintData::yTranslate [inherited]

Definition at line 1131 of file kwineffects.h.

int KWin::WindowPaintData::yTranslate [inherited]

Definition at line 1098 of file kwineffects.h.

float KWin::RotationData::zRotationPoint [inherited]

Definition at line 1157 of file kwineffects.h.

double KWin::ScreenPaintData::zScale [inherited]

Definition at line 1129 of file kwineffects.h.

double KWin::WindowPaintData::zScale [inherited]

Definition at line 1096 of file kwineffects.h.

double KWin::ScreenPaintData::zTranslate [inherited]

Definition at line 1132 of file kwineffects.h.

double KWin::WindowPaintData::zTranslate [inherited]

Definition at line 1099 of file kwineffects.h.

KWinLibraries

Skip menu "KWinLibraries"
  • Main Page
  • Modules
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

API Reference

Skip menu "API Reference"
  • KWin
  •   KWin Libraries
  • Libraries
  •   libkworkspace
  •   libsolidcontrol
  •   libtaskmanager
  • Plasma
  •     Animators
  •     Applets
  •     Engines
  • Solid Modules
  • System Settings
  •   SystemSettingsView
Generated for API Reference by doxygen 1.5.9-20090814
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal