aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHugo Parente Lima <hugo.lima@openbossa.org>2010-04-16 19:51:09 -0300
committerHugo Parente Lima <hugo.lima@openbossa.org>2010-04-29 15:19:37 -0300
commitd168458987ecec8008f7df97e3a8f64dc33018ff (patch)
treeb140ac8bf5ec8e9a08c9319b895679853c2db784
parentfaa90f5b7be896e50018b46778c6cc7aa5aba557 (diff)
Initial bindings for phonon
-rw-r--r--PySide/CMakeLists.txt4
-rw-r--r--PySide/phonon/CMakeLists.txt71
-rw-r--r--PySide/phonon/typesystem_phonon.xml148
3 files changed, 220 insertions, 3 deletions
diff --git a/PySide/CMakeLists.txt b/PySide/CMakeLists.txt
index 3f1a8aca1..d493180e9 100644
--- a/PySide/CMakeLists.txt
+++ b/PySide/CMakeLists.txt
@@ -74,7 +74,5 @@ HAS_QT_MODULE(QT_QTHELP_FOUND QtHelp)
HAS_QT_MODULE(QT_QTXMLPATTERNS_FOUND QtXmlPatterns)
HAS_QT_MODULE(QT_QTMAEMO5_FOUND QtMaemo5)
HAS_QT_MODULE(QT_QTSCRIPT_FOUND QtScript)
-
HAS_QT_MODULE(QT_QTMULTIMEDIA_FOUND QtMultimedia)
-
-
+HAS_QT_MODULE(QT_PHONON_FOUND phonon)
diff --git a/PySide/phonon/CMakeLists.txt b/PySide/phonon/CMakeLists.txt
new file mode 100644
index 000000000..5909c623f
--- /dev/null
+++ b/PySide/phonon/CMakeLists.txt
@@ -0,0 +1,71 @@
+project(phonon)
+
+set(phonon_SRC
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_abstractaudiooutput_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_abstractmediastream_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_abstractvideooutput_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_addoninterface_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_audiocapturedevice_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_audiochanneldescription_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_audiooutputdevicemodel_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_audiooutputdevice_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_audiooutput_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_backendcapabilities_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_backendinterface_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_effectdescriptionmodel_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_effectdescription_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_effectinterface_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_effectparameter_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_effectwidget_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_effect_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_mediacontroller_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_medianode_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_mediaobjectinterface_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_mediaobject_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_mediasource_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_module_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_path_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_platformplugin_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_seekslider_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_streaminterface_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_subtitledescription_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_videoplayer_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_videowidgetinterface_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_videowidget_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_volumefadereffect_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_volumefaderinterface_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_volumeslider_wrapper.cpp
+${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/phonon_wrapper.cpp
+)
+
+set(phonon_GLUE_CODE
+${CMAKE_CURRENT_SOURCE_DIR}/glue/phonon_backendcapabilities_notifier_wrapper.cpp
+)
+
+execute_generator(phonon phonon_SRC "${CMAKE_CURRENT_BINARY_DIR}:${QtCore_SOURCE_DIR}:${QtGui_BINARY_DIR}:${QtGui_SOURCE_DIR}:${phonon_SOURCE_DIR}")
+
+include_directories(${CMAKE_CURRENT_SOURCE_DIR}
+ ${QT_QTCORE_INCLUDE_DIR}
+ ${QT_QTGUI_INCLUDE_DIR}
+ ${QT_PHONON_INCLUDE_DIR}
+ ${PYTHON_INCLUDE_PATH}
+ ${SHIBOKEN_INCLUDE_DIR}
+ ${libpyside_SOURCE_DIR}
+ ${QtGui_BINARY_DIR}/PySide/QtGui/
+ ${QtCore_BINARY_DIR}/PySide/QtCore/
+ ${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon)
+add_library(phonon MODULE ${phonon_SRC})
+set_target_properties(phonon PROPERTIES PREFIX "")
+target_link_libraries(phonon
+ pyside
+ ${PYTHON_LIBRARIES}
+ ${QT_QTCORE_LIBRARY}
+ ${QT_QTGUI_LIBRARY}
+ ${QT_PHONON_LIBRARY})
+add_dependencies(phonon QtGui)
+
+# install
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/phonon.so
+ DESTINATION ${SITE_PACKAGE}/PySide)
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/PySide/phonon/pyside_phonon_python.h
+ DESTINATION include/PySide/phonon/)
diff --git a/PySide/phonon/typesystem_phonon.xml b/PySide/phonon/typesystem_phonon.xml
new file mode 100644
index 000000000..5f243415b
--- /dev/null
+++ b/PySide/phonon/typesystem_phonon.xml
@@ -0,0 +1,148 @@
+<?xml version="1.0"?>
+<typesystem package="PySide.phonon">
+ <load-typesystem name="typesystem_gui.xml" generate="no" />
+
+ <rejection class="Phonon::ObjectDescriptionData"/>
+ <rejection class="Phonon::ObjectDescriptionModelData"/>
+ <rejection class="Phonon::MediaNodeDestructionHandler"/>
+ <rejection class="Phonon::GlobalConfig"/>
+ <rejection class="Phonon::IODeviceStream"/>
+ <rejection class="Phonon::Factory"/>
+ <rejection class="Phonon::Experimental"/>
+ <rejection class="AudioOutputAdaptor"/>
+ <rejection class="*" field-name="k_ptr"/>
+
+ <namespace-type name="Phonon">
+ <extra-includes>
+ <include file-name="phononnamespace.h" location="global"/>
+ </extra-includes>
+ </namespace-type>
+ <namespace-type name="Phonon::BackendCapabilities" />
+
+ <!-- ### causes moc-related linker error -->
+ <!-- <object-type name="Phonon::BackendCapabilities::Notifier"/> -->
+
+ <enum-type name="Phonon::Category" />
+ <enum-type name="Phonon::DiscType"/>
+ <enum-type name="Phonon::ErrorType"/>
+ <enum-type name="Phonon::MetaData"/>
+ <enum-type name="Phonon::ObjectDescriptionType"/>
+ <enum-type name="Phonon::State"/>
+
+ <enum-type name="Phonon::AddonInterface::AngleCommand"/>
+ <enum-type name="Phonon::AddonInterface::ChapterCommand"/>
+ <enum-type name="Phonon::AddonInterface::Interface"/>
+ <enum-type name="Phonon::AddonInterface::NavigationCommand"/>
+ <enum-type name="Phonon::AddonInterface::TitleCommand"/>
+ <enum-type name="Phonon::AddonInterface::SubtitleCommand"/>
+ <enum-type name="Phonon::AddonInterface::AudioChannelCommand"/>
+ <enum-type name="Phonon::BackendInterface::Class"/>
+ <enum-type name="Phonon::EffectParameter::Hint" flags="Phonon::EffectParameter::Hints"/>
+ <enum-type name="Phonon::MediaController::Feature" flags="Phonon::MediaController::Features"/>
+ <enum-type name="Phonon::MediaSource::Type"/>
+ <enum-type name="Phonon::VideoWidget::AspectRatio"/>
+ <enum-type name="Phonon::VideoWidget::ScaleMode"/>
+ <enum-type name="Phonon::VolumeFaderEffect::FadeCurve"/>
+
+ <object-type name="Phonon::AbstractVideoOutput"/>
+ <object-type name="Phonon::AddonInterface"/>
+ <object-type name="Phonon::BackendInterface"/>
+ <object-type name="Phonon::EffectInterface"/>
+ <object-type name="Phonon::MediaNode"/>
+
+ <object-type name="Phonon::MediaObjectInterface"/>
+ <object-type name="Phonon::PlatformPlugin"/>
+ <object-type name="Phonon::StreamInterface"/>
+ <object-type name="Phonon::VideoWidgetInterface"/>
+ <object-type name="Phonon::VolumeFaderInterface"/>
+
+ <value-type name="Phonon::EffectParameter">
+ <modify-function signature="EffectParameter()" remove="all"/> <!-- internal -->
+ <modify-function signature="operator&lt;(const Phonon::EffectParameter &amp;)const" remove="all"/> <!-- internal -->
+ <modify-function signature="operator&gt;(const Phonon::EffectParameter &amp;)const" remove="all"/> <!-- internal -->
+ <modify-function signature="id()const" remove="all"/> <!-- internal -->
+ <modify-function signature="operator=(Phonon::EffectParameter)" remove="all"/> <!-- Covered by copy constructor -->
+ <modify-function signature="EffectParameter(Phonon::EffectParameter)" remove="all"/>
+ <modify-function signature="operator==(Phonon::EffectParameter)const" remove="all"/>
+ </value-type>
+ <value-type name="Phonon::MediaSource">
+ <modify-function signature="operator=(Phonon::MediaSource)" remove="all"/> <!-- Covered by copy constructor -->
+ </value-type>
+ <value-type name="Phonon::Path">
+ <modify-function signature="disconnect()" rename="disconnectPath"/>
+ <modify-function signature="operator=(Phonon::Path)" remove="all"/> <!-- Covered by copy constructor -->
+ <modify-function signature="insertEffect(Phonon::EffectDescription,Phonon::Effect*)">
+ <modify-argument index="1">
+ <parent index="this" action="add"/>
+ </modify-argument>
+ </modify-function>
+ <modify-function signature="insertEffect(Phonon::Effect*,Phonon::Effect*)">
+ <modify-argument index="1">
+ <parent index="this" action="add"/>
+ </modify-argument>
+ </modify-function>
+ <modify-function signature="removeEffect(Phonon::Effect*)">
+ <modify-argument index="1">
+ <parent index="this" action="remove"/>
+ </modify-argument>
+ </modify-function>
+ </value-type>
+ <value-type name="Phonon::ObjectDescription" generate="no"/>
+ <value-type name="Phonon::EffectDescription">
+ <modify-function signature="operator==(Phonon::ObjectDescription)const" remove="all"/>
+ <modify-function signature="operator!=(Phonon::ObjectDescription)const" remove="all"/>
+ <modify-function signature="fromIndex(int)" remove="all"/>
+ </value-type>
+ <value-type name="Phonon::AudioOutputDevice">
+ <modify-function signature="operator==(Phonon::ObjectDescription)const" remove="all"/>
+ <modify-function signature="operator!=(Phonon::ObjectDescription)const" remove="all"/>
+ <modify-function signature="fromIndex(int)" remove="all"/>
+ </value-type>
+
+ <value-type name="Phonon::AudioCaptureDevice">
+ <modify-function signature="operator==(Phonon::ObjectDescription)const" remove="all"/>
+ <modify-function signature="operator!=(Phonon::ObjectDescription)const" remove="all"/>
+ <modify-function signature="fromIndex(int)" remove="all"/>
+ </value-type>
+ <value-type name="Phonon::AudioChannelDescription">
+ <modify-function signature="operator==(Phonon::ObjectDescription)const" remove="all"/>
+ <modify-function signature="operator!=(Phonon::ObjectDescription)const" remove="all"/>
+ <modify-function signature="fromIndex(int)" remove="all"/>
+ </value-type>
+ <value-type name="Phonon::SubtitleDescription">
+ <modify-function signature="operator==(Phonon::ObjectDescription)const" remove="all"/>
+ <modify-function signature="operator!=(Phonon::ObjectDescription)const" remove="all"/>
+ <modify-function signature="fromIndex(int)" remove="all"/>
+ </value-type>
+
+
+ <object-type name="Phonon::ObjectDescriptionModel" generate="no"/>
+ <object-type name="Phonon::EffectDescriptionModel" />
+ <object-type name="Phonon::AudioOutputDeviceModel" />
+
+ <object-type name="Phonon::AbstractAudioOutput"/>
+ <object-type name="Phonon::AbstractMediaStream"/>
+ <object-type name="Phonon::AudioOutput"/>
+ <object-type name="Phonon::Effect"/>
+ <object-type name="Phonon::EffectWidget"/>
+ <object-type name="Phonon::MediaController"/>
+ <object-type name="Phonon::MediaObject" />
+ <object-type name="Phonon::SeekSlider">
+ <modify-function signature="setMediaObject(Phonon::MediaObject*)">
+ <modify-argument index="1">
+ <parent index="this" action="add"/>
+ </modify-argument>
+ </modify-function>
+ </object-type>
+ <object-type name="Phonon::VideoPlayer"/>
+ <object-type name="Phonon::VideoWidget"/>
+ <object-type name="Phonon::VolumeFaderEffect"/>
+ <object-type name="Phonon::VolumeSlider">
+ <modify-function signature="setAudioOutput(Phonon::AudioOutput*)">
+ <modify-argument index="1">
+ <parent index="this" action="add"/>
+ </modify-argument>
+ </modify-function>
+ </object-type>
+
+</typesystem>