1 # Uncomment to have the test effects built
2 #add_subdirectory( test )
5 # Adds effect plugin with given name. Sources are given after the name
6 macro(KWIN4_ADD_EFFECT name)
7 kde4_add_plugin(kwin4_effect_${name} ${ARGN})
8 target_link_libraries(kwin4_effect_${name} kwineffects ${KDE4_KDEUI_LIBS} kephal)
9 install(TARGETS kwin4_effect_${name} DESTINATION ${PLUGIN_INSTALL_DIR})
10 endmacro(KWIN4_ADD_EFFECT)
12 macro(KWIN4_ADD_EFFECT_CONFIG name)
13 set(kwin4_effect_ui ) #empty
14 set(kwin4_effect_src ) #empty
16 if(file MATCHES \\.ui)
17 set(kwin4_effect_ui ${kwin4_effect_ui} ${file})
18 else(file MATCHES \\.ui)
19 set(kwin4_effect_src ${kwin4_effect_src} ${file})
20 endif(file MATCHES \\.ui)
22 kde4_add_ui_files(kwin4_effect_src ${kwin4_effect_ui})
23 kde4_add_plugin(kcm_kwin4_effect_${name} ${kwin4_effect_src})
24 target_link_libraries(kcm_kwin4_effect_${name} kwineffects ${KDE4_KIO_LIBS} ${KDE4_KDEUI_LIBS} kephal)
25 install(TARGETS kcm_kwin4_effect_${name} DESTINATION ${PLUGIN_INSTALL_DIR})
26 endmacro(KWIN4_ADD_EFFECT_CONFIG)
29 ${KDEBASE_WORKSPACE_SOURCE_DIR}/kwin/lib
32 install( FILES kwineffect.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR})
34 ### builtins - most important, ready-to-use effects
36 SET(kwin4_effect_builtins_sources
60 # their .desktop files
73 maketransparent.desktop
74 minimizeanimation.desktop
75 presentwindows.desktop
81 taskbarthumbnail.desktop
82 thumbnailaside.desktop
84 DESTINATION ${SERVICES_INSTALL_DIR}/kwin )
87 SET(kwin4_effect_builtins_config_sources
90 desktopgrid_config.cpp
92 diminactive_config.cpp
96 maketransparent_config.cpp
97 maketransparent_config.ui
98 presentwindows_config.cpp
99 presentwindows_config.ui
104 thumbnailaside_config.cpp
105 thumbnailaside_config.ui
107 configs_builtins.cpp)
109 boxswitch_config.desktop
110 desktopgrid_config.desktop
111 diminactive_config.desktop
112 magiclamp_config.desktop
113 maketransparent_config.desktop
114 presentwindows_config.desktop
115 shadow_config.desktop
116 showfps_config.desktop
117 thumbnailaside_config.desktop
119 DESTINATION ${SERVICES_INSTALL_DIR}/kwin )
121 if(KWIN_HAVE_OPENGL_COMPOSITING)
122 # opengl-based effects
123 SET(kwin4_effect_builtins_sources ${kwin4_effect_builtins_sources}
155 wobblywindows.desktop
156 DESTINATION ${SERVICES_INSTALL_DIR}/kwin )
161 data/explosion-start.png
162 data/explosion-end.png
165 data/blur-render.frag
166 data/blur-render.vert
171 data/lookingglass.frag
172 data/lookingglass.vert
173 data/shadow-texture.png
183 DESTINATION ${DATA_INSTALL_DIR}/kwin )
184 SET(kwin4_effect_builtins_config_sources ${kwin4_effect_builtins_config_sources}
185 coverswitch_config.cpp
186 coverswitch_config.ui
191 flipswitch_config.cpp
194 lookingglass_config.cpp
195 lookingglass_config.ui
205 trackmouse_config.cpp
206 wobblywindows_config.cpp
207 wobblywindows_config.ui
210 coverswitch_config.desktop
212 cylinder_config.desktop
213 flipswitch_config.desktop
214 invert_config.desktop
215 lookingglass_config.desktop
216 magnifier_config.desktop
217 mousemark_config.desktop
218 sharpen_config.desktop
220 sphere_config.desktop
221 trackmouse_config.desktop
222 wobblywindows_config.desktop
223 DESTINATION ${SERVICES_INSTALL_DIR}/kwin )
224 endif(KWIN_HAVE_OPENGL_COMPOSITING)
227 KWIN4_ADD_EFFECT(builtins ${kwin4_effect_builtins_sources})
228 KWIN4_ADD_EFFECT_CONFIG(builtins ${kwin4_effect_builtins_config_sources})
229 # link to xrender if necessary
230 if (KWIN_HAVE_XRENDER_COMPOSITING)
231 target_link_libraries(kwin4_effect_builtins ${X11_Xrender_LIB} ${X11_LIBRARIES} kephal)
232 endif (KWIN_HAVE_XRENDER_COMPOSITING)
237 ### videocapture plugin
238 include(UsePkgConfig)
239 PKGCONFIG(libcaptury CAPTURY_INCLUDES CAPTURY_LINK_DIR CAPTURY_LDFLAGS CAPTURY_CFLAGS)
240 if( CAPTURY_LDFLAGS )
241 SET( CAPTURY_FOUND TRUE )
242 endif( CAPTURY_LDFLAGS )
244 macro_log_feature(CAPTURY_FOUND "Captury framework library" "Realtime video capturing framework e.g. screen casts" "http://gitorious.org/projects/libcaptury" FALSE "0.3.0" "Provides for video recording desktop effects.")
246 macro_bool_to_01( CAPTURY_FOUND HAVE_CAPTURY )
248 KWIN4_ADD_EFFECT(videorecord videorecord.cpp)
249 KWIN4_ADD_EFFECT_CONFIG(videorecord videorecord_config.cpp)
250 target_link_libraries(kwin4_effect_videorecord ${KDE4_KIO_LIBS} ${CAPTURY_LDFLAGS})
251 install( FILES videorecord.desktop videorecord_config.desktop DESTINATION ${SERVICES_INSTALL_DIR}/kwin )
252 endif( CAPTURY_FOUND )