• Skip to content
  • Skip to link menu
KDE 4.2 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::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::Motion< T >
 A single motion dynamics object. More...
class  KWin::PaintClipper
 Helper class for restricting painting area only to allowed area. More...
class  KWin::PaintClipper::Iterator
 Helper class to perform the clipped painting. 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   57
#define KWIN_EFFECT_CONFIG(name, classname)
#define KWIN_EFFECT_CONFIG_FACTORY   K_PLUGIN_FACTORY_DECLARATION(EffectFactory)
#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

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
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)
virtual void KWin::EffectsHandler::calcDesktopLayout (int *x, int *y, Qt::Orientation *orientation) const =0
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
static bool KWin::PaintClipper::clip ()
virtual void KWin::EffectsHandler::closeTabBox ()=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 ()
double KWin::Motion::decay () const
bool KWin::WindowQuad::decoration () const
virtual int KWin::EffectWindow::desktop () const =0
virtual void KWin::Effect::desktopChanged (int old)
virtual int KWin::EffectsHandler::desktopDown (int desktop, bool wrap) const =0
virtual QString KWin::EffectsHandler::desktopName (int desktop) const =0
virtual int KWin::EffectsHandler::desktopToLeft (int desktop, bool wrap) const =0
virtual int KWin::EffectsHandler::desktopToRight (int desktop, bool wrap) const =0
virtual int KWin::EffectsHandler::desktopUp (int desktop, bool wrap) 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
 KWin::Effect::Effect ()
static KConfigGroup KWin::EffectsHandler::effectConfig (const QString &effectname)
 KWin::EffectsHandler::EffectsHandler (CompositingType type)
 KWin::EffectWindow::EffectWindow ()
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 ()
virtual QRect KWin::EffectWindow::geometry () const =0
virtual void KWin::Effect::grabbedKeyboardEvent (QKeyEvent *e)
virtual bool KWin::EffectsHandler::grabKeyboard (Effect *effect)=0
virtual const EffectWindowGroup * KWin::EffectWindow::group () 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
virtual QPixmap KWin::EffectWindow::icon () const =0
virtual QRect KWin::EffectWindow::iconGeometry () const =0
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::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
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
 KWin::Motion::Motion (T initial=T(), double strength=7.5, double decay=0.5)
 KWin::Motion::Motion (const Motion< T > &other)
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)=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)
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)
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
virtual void KWin::EffectsHandler::setCurrentDesktop (int desktop)=0
void KWin::TimeLine::setCurveShape (CurveShape curveShape)
void KWin::Motion::setDecay (const double decay)
void KWin::TimeLine::setDuration (const int msec)
virtual void KWin::EffectsHandler::setElevatedWindow (EffectWindow *w, bool set)=0
static void KWin::Effect::setPositionTransformations (WindowPaintData &data, QRect &region, EffectWindow *w, const QRect &r, Qt::AspectRatioMode aspect)
void KWin::TimeLine::setProgress (const double progress)
void KWin::Motion::setStrength (const double strength)
void KWin::Motion::setStrengthDecay (const double strength, const double decay)
virtual void KWin::EffectsHandler::setTabBoxDesktop (int)=0
virtual void KWin::EffectsHandler::setTabBoxWindow (EffectWindow *)=0
void KWin::Motion::setTarget (const T target)
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 double KWin::EffectWindow::shadowBrightness (ShadowType type) const =0
virtual double KWin::EffectWindow::shadowOpacity (ShadowType type) const =0
virtual QList< QRect > KWin::EffectWindow::shadowQuads (ShadowType type) const =0
virtual double KWin::EffectWindow::shadowSaturation (ShadowType type) const =0
virtual int KWin::EffectsHandler::shadowTextureList (ShadowType type) const =0
virtual QList< QList< QImage > > KWin::EffectsHandler::shadowTextures ()=0
virtual QRegion KWin::EffectWindow::shape () const =0
virtual QSize KWin::EffectWindow::size () const =0
bool KWin::WindowQuadList::smoothNeeded () const
bool KWin::WindowQuad::smoothNeeded () const
WindowQuadList KWin::WindowQuadList::splitAtY (double y) const
virtual EffectWindowList KWin::EffectsHandler::stackingOrder () const =0
double KWin::Motion::strength () const
virtual void KWin::Effect::tabBoxAdded (int mode)
virtual void KWin::Effect::tabBoxClosed ()
virtual void KWin::Effect::tabBoxUpdated ()
T KWin::Motion::target () const
double KWin::WindowVertex::textureX () const
double KWin::WindowVertex::textureY () const
int KWin::TimeLine::time () const
 KWin::TimeLine::TimeLine (const TimeLine &other)
 KWin::TimeLine::TimeLine (int duration=0)
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::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 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::windowOpacityChanged (EffectWindow *c, double old_opacity)
 KWin::WindowQuad::WindowQuad (WindowQuadType type, int id=-1)
virtual QString KWin::EffectWindow::windowRole () const =0
virtual void KWin::EffectsHandler::windowToDesktop (EffectWindow *w, int desktop)=0
virtual void KWin::Effect::windowUnminimized (EffectWindow *c)
virtual void KWin::Effect::windowUserMovedResized (EffectWindow *c, bool first, bool last)
 KWin::WindowVertex::WindowVertex (double x, double y, double tx, double ty)
 KWin::WindowVertex::WindowVertex ()
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
virtual KWin::Effect::~Effect ()
virtual KWin::EffectsHandler::~EffectsHandler ()
virtual KWin::EffectWindow::~EffectWindow ()
 KWin::PaintClipper::Iterator::~Iterator ()
 KWin::Motion::~Motion ()
 KWin::PaintClipper::~PaintClipper ()
 KWin::TimeLine::~TimeLine ()
 KWin::WindowMotionManager::~WindowMotionManager ()

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
Motion< QPointF > 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 447 of file kwineffects.h.

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

Definition at line 165 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 168 of file kwineffects.h.

#define KWIN_EFFECT_API_VERSION_MAJOR   0

Definition at line 166 of file kwineffects.h.

#define KWIN_EFFECT_API_VERSION_MINOR   57

Definition at line 167 of file kwineffects.h.

#define KWIN_EFFECT_CONFIG ( name,
classname   ) 

Value:

K_PLUGIN_FACTORY(name##_factory, registerPlugin<classname>();) \
    K_EXPORT_PLUGIN(name##_factory("kcm_kwineffect_" #name))
Defines the function used to retrieve an effect's config widget E.g.

KWIN_EFFECT_CONFIG( flames, MyFlameEffectConfig )

Definition at line 464 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 471 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 456 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 288 of file kwineffects.h.

enum KWin::RotationData::RotationAxis [inherited]

Enumerator:
XAxis 
YAxis 
ZAxis 

Definition at line 1025 of file kwineffects.h.

enum KWin::WindowQuadType

Enumerator:
WindowQuadError 
WindowQuadContents 
WindowQuadDecoration 
EFFECT_QUAD_TYPE_START 

For internal use only.

Definition at line 171 of file kwineffects.h.


Function Documentation

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]

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

Increases the internal progress accounting of the timeline.

Definition at line 1042 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 1009 of file kwineffects.cpp.

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

Definition at line 274 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 268 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 it's 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 1212 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 1449 of file kwineffects.h.

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

Definition at line 182 of file kwineffects.cpp.

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

Definition at line 1639 of file kwineffects.h.

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

Definition at line 935 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 227 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::calcDesktopLayout ( int *  x,
int *  y,
Qt::Orientation *  orientation 
) const [pure virtual, inherited]

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 1127 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 1698 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]

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

Returns true if any clipping should be performed.

Definition at line 848 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::closeTabBox (  )  [pure virtual, inherited]

CompositingType KWin::EffectsHandler::compositingType (  )  const [inherited]

Definition at line 324 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 319 of file kwineffects.cpp.

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

Definition at line 314 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]

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 263 of file kwineffects.cpp.

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

Definition at line 1297 of file kwineffects.h.

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

Definition at line 1598 of file kwineffects.h.

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

void Effect::desktopChanged ( int  old  )  [virtual, inherited]

Definition at line 159 of file kwineffects.cpp.

virtual int KWin::EffectsHandler::desktopDown ( int  desktop,
bool  wrap 
) const [pure virtual, inherited]

virtual QString KWin::EffectsHandler::desktopName ( int  desktop  )  const [pure virtual, inherited]

virtual int KWin::EffectsHandler::desktopToLeft ( int  desktop,
bool  wrap 
) const [pure virtual, inherited]

virtual int KWin::EffectsHandler::desktopToRight ( int  desktop,
bool  wrap 
) const [pure virtual, inherited]

virtual int KWin::EffectsHandler::desktopUp ( int  desktop,
bool  wrap 
) const [pure virtual, inherited]

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 258 of file kwineffects.cpp.

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

Definition at line 253 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 1305 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 222 of file kwineffects.cpp.

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

Returns the duration of the timeline in msec.

Definition at line 981 of file kwineffects.cpp.

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

Definition at line 1605 of file kwineffects.h.

Effect::Effect (  )  [inherited]

Constructs new Effect object.

Definition at line 103 of file kwineffects.cpp.

KConfigGroup KWin::EffectsHandler::effectConfig ( const QString &  effectname  )  [static, inherited]

Returns:
KConfigGroup which holds given effect's config options

Definition at line 351 of file kwineffects.cpp.

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

Definition at line 283 of file kwineffects.cpp.

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

Definition at line 472 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 774 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 1712 of file kwineffects.h.

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

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

Definition at line 151 of file kwineffects.cpp.

virtual bool KWin::EffectsHandler::grabKeyboard ( Effect *  effect  )  [pure virtual, inherited]

virtual const EffectWindowGroup* KWin::EffectWindow::group (  )  const [pure virtual, inherited]

bool KWin::EffectWindow::hasDecoration (  )  const [inherited]

Definition at line 490 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]

virtual QPixmap KWin::EffectWindow::icon (  )  const [pure virtual, inherited]

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

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

Definition at line 1592 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 183 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 426 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::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 907 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 1438 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 480 of file kwineffects.cpp.

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

Definition at line 485 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 800 of file kwineffects.cpp.

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

Definition at line 1612 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 .

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

Definition at line 1621 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 736 of file kwineffects.cpp.

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

Definition at line 647 of file kwineffects.cpp.

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

Definition at line 690 of file kwineffects.cpp.

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

Definition at line 517 of file kwineffects.cpp.

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

Register a list of windows for managing.

Definition at line 1355 of file kwineffects.h.

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

Register a window for managing.

Definition at line 1086 of file kwineffects.cpp.

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

Return a list of all currently registered windows.

Definition at line 1433 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 1443 of file kwineffects.h.

virtual EffectWindowList KWin::EffectWindowGroup::members (  )  const [pure virtual, inherited]

template<typename T >
KWin::Motion< T >::Motion ( T  initial = T(),
double  strength = 7.5,
double  decay = 0.5 
) [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 "decay" relates to the amount of overshoot once the object reaches the target. A decay of 1.0 will cause never-ending oscillation and while a decay of 0.0 will cause no overshoot.

Definition at line 1673 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 1683 of file kwineffects.h.

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 187 of file kwineffects.cpp.

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

Definition at line 1541 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 1410 of file kwineffects.h.

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

As 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 1224 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::moveWindow ( EffectWindow *  w,
const QPoint &  pos 
) [pure virtual, inherited]

virtual WindowQuadType KWin::EffectsHandler::newWindowQuadType (  )  [pure virtual, inherited]

void KWin::PaintClipper::Iterator::next (  )  [inherited]

Definition at line 922 of file kwineffects.cpp.

virtual int KWin::EffectsHandler::numberOfDesktops (  )  const [pure virtual, inherited]

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 1578 of file kwineffects.h.

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

Definition at line 1571 of file kwineffects.h.

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

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

Definition at line 1663 of file kwineffects.h.

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

Definition at line 1645 of file kwineffects.h.

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

Definition at line 1651 of file kwineffects.h.

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

Definition at line 1657 of file kwineffects.h.

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

Definition at line 1517 of file kwineffects.h.

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

Definition at line 1523 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 853 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 197 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]

Definition at line 357 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]

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 1472 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]

Definition at line 421 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]

Definition at line 1480 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 212 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 834 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 202 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 217 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 192 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 207 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 1030 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 155 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 825 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 111 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 1016 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 1201 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 1184 of file kwineffects.cpp.

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

Definition at line 1627 of file kwineffects.h.

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

Definition at line 329 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 756 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 344 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::setActiveFullScreenEffect ( Effect *  e  )  [pure virtual, inherited]

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

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 1049 of file kwineffects.cpp.

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

Definition at line 1298 of file kwineffects.h.

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

Set the duration of the TimeLine.

Definition at line 986 of file kwineffects.cpp.

virtual void KWin::EffectsHandler::setElevatedWindow ( EffectWindow *  w,
bool  set 
) [pure virtual, inherited]

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 237 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 1023 of file kwineffects.cpp.

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

Definition at line 1296 of file kwineffects.h.

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

Definition at line 1299 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 1291 of file kwineffects.h.

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

Helper to mark that this window will be transformed.

Definition at line 55 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 48 of file kwineffects.cpp.

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

Definition at line 1289 of file kwineffects.h.

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

Definition at line 1293 of file kwineffects.h.

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

Definition at line 1548 of file kwineffects.h.

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

Definition at line 1554 of file kwineffects.h.

virtual double KWin::EffectWindow::shadowBrightness ( ShadowType  type  )  const [pure virtual, inherited]

Returns the desired brightness of the shadow.

virtual double KWin::EffectWindow::shadowOpacity ( ShadowType  type  )  const [pure virtual, inherited]

Returns the desired opacity of the shadow.

virtual QList<QRect> KWin::EffectWindow::shadowQuads ( ShadowType  type  )  const [pure virtual, inherited]

Returns the positions of the shadow quads to be rendered.

All positions are relative to the window's top-left corner.

virtual double KWin::EffectWindow::shadowSaturation ( ShadowType  type  )  const [pure virtual, inherited]

Returns the desired saturation of the shadow.

virtual int KWin::EffectsHandler::shadowTextureList ( ShadowType  type  )  const [pure virtual, inherited]

Returns the texture list offset for the requested type.

virtual QList< QList<QImage> > KWin::EffectsHandler::shadowTextures (  )  [pure virtual, inherited]

Returns the textures to be used in the shadow.

Textures are mapped to the quad that has the same list offset. E.g. texture[2] is rendered where the third QRect that EffectWindow::shadowQuads() returns is.

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 792 of file kwineffects.cpp.

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

Definition at line 562 of file kwineffects.cpp.

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

Definition at line 611 of file kwineffects.cpp.

virtual EffectWindowList KWin::EffectsHandler::stackingOrder (  )  const [pure virtual, inherited]

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

Definition at line 1295 of file kwineffects.h.

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

Definition at line 171 of file kwineffects.cpp.

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

Definition at line 175 of file kwineffects.cpp.

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

Definition at line 179 of file kwineffects.cpp.

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

Definition at line 1290 of file kwineffects.h.

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

Definition at line 1529 of file kwineffects.h.

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

Definition at line 1535 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 1036 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 965 of file kwineffects.cpp.

KWin::TimeLine::TimeLine ( 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 956 of file kwineffects.cpp.

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

Definition at line 1633 of file kwineffects.h.

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

Retrieve the current tranformed geometry of a registered window.

Definition at line 1245 of file kwineffects.cpp.

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

Definition at line 302 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 232 of file kwineffects.cpp.

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

Definition at line 1585 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 1108 of file kwineffects.cpp.

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

Deregister all windows, returning the manager to it's originally initiated state.

Definition at line 1121 of file kwineffects.cpp.

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 1288 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 993 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 999 of file kwineffects.cpp.

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

Definition at line 1292 of file kwineffects.h.

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

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

Definition at line 135 of file kwineffects.cpp.

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

Definition at line 123 of file kwineffects.cpp.

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

Return the window that has it's 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 1257 of file kwineffects.cpp.

virtual QString KWin::EffectWindow::windowClass (  )  const [pure virtual, inherited]

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

Definition at line 127 of file kwineffects.cpp.

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

Definition at line 163 of file kwineffects.cpp.

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

Definition at line 131 of file kwineffects.cpp.

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

Definition at line 167 of file kwineffects.cpp.

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

Definition at line 147 of file kwineffects.cpp.

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

Definition at line 139 of file kwineffects.cpp.

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

Definition at line 119 of file kwineffects.cpp.

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

Definition at line 1564 of file kwineffects.h.

virtual QString KWin::EffectWindow::windowRole (  )  const [pure virtual, inherited]

virtual void KWin::EffectsHandler::windowToDesktop ( EffectWindow *  w,
int  desktop 
) [pure virtual, inherited]

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

Definition at line 143 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 115 of file kwineffects.cpp.

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

Definition at line 1499 of file kwineffects.h.

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

Definition at line 1493 of file kwineffects.h.

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

Definition at line 1505 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 1511 of file kwineffects.h.

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

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

Destructs the Effect object.

Definition at line 107 of file kwineffects.cpp.

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

Definition at line 296 of file kwineffects.cpp.

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

Definition at line 476 of file kwineffects.cpp.

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

Definition at line 894 of file kwineffects.cpp.

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

Definition at line 1693 of file kwineffects.h.

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

Calls pop().

Definition at line 820 of file kwineffects.cpp.

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

Cleans up.

Definition at line 976 of file kwineffects.cpp.

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

Definition at line 1082 of file kwineffects.cpp.


Variable Documentation

float KWin::RotationData::angle [inherited]

Definition at line 1032 of file kwineffects.h.

RotationAxis KWin::RotationData::axis [inherited]

Definition at line 1031 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 992 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 947 of file kwineffects.h.

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

Definition at line 650 of file kwineffects.h.

double KWin::WindowPaintData::contents_opacity [inherited]

Definition at line 970 of file kwineffects.h.

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

Definition at line 648 of file kwineffects.h.

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

Definition at line 647 of file kwineffects.h.

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

Definition at line 645 of file kwineffects.h.

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

Definition at line 646 of file kwineffects.h.

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

Definition at line 649 of file kwineffects.h.

double KWin::WindowPaintData::decoration_opacity [inherited]

Definition at line 971 of file kwineffects.h.

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

Definition at line 642 of file kwineffects.h.

KWIN_EXPORT EffectsHandler * KWin::effects = 0

Pointer to the global EffectsHandler object.

Definition at line 465 of file kwineffects.cpp.

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

Definition at line 643 of file kwineffects.h.

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

Definition at line 641 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 969 of file kwineffects.h.

QRegion KWin::ScreenPrePaintData::paint [inherited]

Definition at line 1018 of file kwineffects.h.

QRegion KWin::WindowPrePaintData::paint [inherited]

Region that will be painted, in screen coordinates.

Definition at line 942 of file kwineffects.h.

WindowQuadList KWin::WindowPaintData::quads [inherited]

Definition at line 993 of file kwineffects.h.

WindowQuadList KWin::WindowPrePaintData::quads [inherited]

Definition at line 948 of file kwineffects.h.

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

Definition at line 1011 of file kwineffects.h.

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

Definition at line 998 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 986 of file kwineffects.h.

Motion<QPointF> KWin::WindowMotionManager::WindowMotion::scale [inherited]

Definition at line 1456 of file kwineffects.h.

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

Shader to be used for rendering, if any.

Definition at line 997 of file kwineffects.h.

float KWin::RotationData::xRotationPoint [inherited]

Definition at line 1033 of file kwineffects.h.

double KWin::ScreenPaintData::xScale [inherited]

Definition at line 1005 of file kwineffects.h.

double KWin::WindowPaintData::xScale [inherited]

Definition at line 972 of file kwineffects.h.

int KWin::ScreenPaintData::xTranslate [inherited]

Definition at line 1008 of file kwineffects.h.

int KWin::WindowPaintData::xTranslate [inherited]

Definition at line 975 of file kwineffects.h.

float KWin::RotationData::yRotationPoint [inherited]

Definition at line 1034 of file kwineffects.h.

double KWin::ScreenPaintData::yScale [inherited]

Definition at line 1006 of file kwineffects.h.

double KWin::WindowPaintData::yScale [inherited]

Definition at line 973 of file kwineffects.h.

int KWin::ScreenPaintData::yTranslate [inherited]

Definition at line 1009 of file kwineffects.h.

int KWin::WindowPaintData::yTranslate [inherited]

Definition at line 976 of file kwineffects.h.

float KWin::RotationData::zRotationPoint [inherited]

Definition at line 1035 of file kwineffects.h.

double KWin::ScreenPaintData::zScale [inherited]

Definition at line 1007 of file kwineffects.h.

double KWin::WindowPaintData::zScale [inherited]

Definition at line 974 of file kwineffects.h.

double KWin::ScreenPaintData::zTranslate [inherited]

Definition at line 1010 of file kwineffects.h.

double KWin::WindowPaintData::zTranslate [inherited]

Definition at line 977 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
Generated for API Reference by doxygen 1.5.7
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