kwin/effects/CMakeLists.txt
Martin Gräßlin bac5a27869 Resize effect: paints a rubber band on top of the window while resizing illustrating the geometry to change.
It requires some more adjustments so that the rubber band is also shown when window content is not shown during resize.

svn path=/trunk/KDE/kdebase/workspace/; revision=987091
2009-06-25 14:41:45 +00:00

108 lines
3.9 KiB
CMake

# Uncomment to have the test effects built as well
#add_subdirectory( _test )
# Adds effect plugin with given name. Sources are given after the name
macro( KWIN4_ADD_EFFECT name )
kde4_add_plugin( kwin4_effect_${name} ${ARGN} )
target_link_libraries( kwin4_effect_${name} kwineffects ${KDE4_KDEUI_LIBS} kephal )
install( TARGETS kwin4_effect_${name} DESTINATION ${PLUGIN_INSTALL_DIR} )
endmacro( KWIN4_ADD_EFFECT )
macro( KWIN4_ADD_EFFECT_CONFIG name )
set( kwin4_effect_ui ) # Initially empty
set( kwin4_effect_src ) # Initially empty
foreach( file ${ARGN} )
if( file MATCHES \\.ui )
set( kwin4_effect_ui ${kwin4_effect_ui} ${file} )
else( file MATCHES \\.ui )
set( kwin4_effect_src ${kwin4_effect_src} ${file} )
endif( file MATCHES \\.ui )
endforeach( file )
kde4_add_ui_files( kwin4_effect_src ${kwin4_effect_ui} )
kde4_add_plugin( kcm_kwin4_effect_${name} ${kwin4_effect_src} )
target_link_libraries( kcm_kwin4_effect_${name} kwineffects ${KDE4_KIO_LIBS} ${KDE4_KDEUI_LIBS} kephal )
install( TARGETS kcm_kwin4_effect_${name} DESTINATION ${PLUGIN_INSTALL_DIR} )
endmacro( KWIN4_ADD_EFFECT_CONFIG )
macro( KWIN4_EFFECT_LINK_XRENDER name )
if( KWIN_HAVE_XRENDER_COMPOSITING )
target_link_libraries( kwin4_effect_${name} ${X11_Xrender_LIB} ${X11_LIBRARIES} kephal )
endif( KWIN_HAVE_XRENDER_COMPOSITING )
endmacro( KWIN4_EFFECT_LINK_XRENDER )
# Make sure we can see our libraries
include_directories(
${KDEBASE_WORKSPACE_SOURCE_DIR}/kwin/lib
)
# Install the KWin/Effect service type
install( FILES kwineffect.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR} )
# Create initial variables
set( kwin4_effect_builtins_sources )
set( kwin4_effect_builtins_config_sources configs_builtins.cpp )
set( kwin4_effect_include_directories )
###############################################################################
# Built-in effects go here
# Common effects
include( boxswitch/CMakeLists.txt )
include( desktopgrid/CMakeLists.txt )
include( dialogparent/CMakeLists.txt )
include( diminactive/CMakeLists.txt )
include( dimscreen/CMakeLists.txt )
include( fade/CMakeLists.txt )
include( fadedesktop/CMakeLists.txt )
include( fallapart/CMakeLists.txt )
include( highlightwindow/CMakeLists.txt )
include( login/CMakeLists.txt )
include( logout/CMakeLists.txt )
include( magiclamp/CMakeLists.txt )
include( translucency/CMakeLists.txt )
include( minimizeanimation/CMakeLists.txt )
include( presentwindows/CMakeLists.txt )
include( resize/CMakeLists.txt )
include( scalein/CMakeLists.txt )
include( shadow/CMakeLists.txt )
include( showfps/CMakeLists.txt )
include( showpaint/CMakeLists.txt )
include( slide/CMakeLists.txt )
include( slideback/CMakeLists.txt )
include( taskbarthumbnail/CMakeLists.txt )
include( thumbnailaside/CMakeLists.txt )
include( zoom/CMakeLists.txt )
# OpenGL-specific effects
if( KWIN_HAVE_OPENGL_COMPOSITING )
#include( blur/CMakeLists.txt )
include( coverswitch/CMakeLists.txt )
include( cube/CMakeLists.txt )
include( explosion/CMakeLists.txt )
include( flipswitch/CMakeLists.txt )
include( invert/CMakeLists.txt )
include( lookingglass/CMakeLists.txt )
include( magnifier/CMakeLists.txt )
include( mousemark/CMakeLists.txt )
include( sharpen/CMakeLists.txt )
include( sheet/CMakeLists.txt )
include( snaphelper/CMakeLists.txt )
include( snow/CMakeLists.txt )
include( trackmouse/CMakeLists.txt )
include( wobblywindows/CMakeLists.txt )
endif( KWIN_HAVE_OPENGL_COMPOSITING )
###############################################################################
# Add the builtins plugin
KWIN4_ADD_EFFECT( builtins ${kwin4_effect_builtins_sources} )
KWIN4_ADD_EFFECT_CONFIG( builtins ${kwin4_effect_builtins_config_sources} )
KWIN4_EFFECT_LINK_XRENDER( builtins )
# Install global data files
install( FILES
_data/circle-edgy.png
_data/circle.png
DESTINATION ${DATA_INSTALL_DIR}/kwin )