view generator/typesystem_phonon.xml @ 282:256ab6cb8e85

Signals look-up andNew syntax for connect. The old one will not work from now on. This will allow for the signals overload. Although changes are done for both D1 and D2 versions, D1 won't work because of compiler bugs. I am tired of waiting for fixes.
author eldar
date Fri, 16 Oct 2009 02:43:59 +0000
parents e78566595089
children 91ed8edd442e
line wrap: on
line source

<?xml version="1.0" encoding="UTF-8"?>
<typesystem package="qt.phonon" default-superclass="qt.QtJambiObject">
<inject-code>
        qt.Utilities.loadQtLibrary("QtXml");
        qt.Utilities.loadQtLibrary("QtGui");
        qt.Utilities.loadQtLibrary("QtOpenGL");
        qt.Utilities.loadQtLibrary("phonon");
    </inject-code>

    <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="Phonon::ObjectDescriptionModel"/>
    <rejection class="Phonon::BackendCapabilities::Notifier"/>
    <rejection class="AudioOutputAdaptor"/>
    <rejection class="*" field-name="k_ptr"/>

    <namespace-type name="Phonon">
        <modify-function signature="createPlayer(Phonon::Category, Phonon::MediaSource)">
            <modify-argument index="2">
                <replace-default-expression with="null"/>
            </modify-argument>
        </modify-function>
        <modify-function signature="phononVersion()" access="private" rename="phononVersion_private" associated-to="phononVersion()"/>
        <inject-code>
            <import-file name="typesystem_phonon-java.java" quote-after-line="class Phonon___" quote-before-line="}// class"/>
        </inject-code>
    </namespace-type>
    <namespace-type name="Phonon::BackendCapabilities" java-name="BackendCapabilities"/>

    <enum-type name="Phonon::Category">
        <reject-enum-value name="LastCategory"/>
    </enum-type>
    <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::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"/>

    <interface-type name="Phonon::AbstractVideoOutput" java-name="AbstractVideoOutput"/>
    <interface-type name="Phonon::AddonInterface" java-name="AbstractAddon">
        <modify-function signature="interfaceCall(Phonon::AddonInterface::Interface, int, const QList&lt;QVariant&gt; &amp;)">
            <modify-argument index="3">
                <replace-default-expression with="null"/>
            </modify-argument>
        </modify-function>
    </interface-type>
    <interface-type name="Phonon::AudioOutputInterface" java-name="AudioOutputInterface"/>
    <interface-type name="Phonon::BackendInterface" java-name="AbstractBackend">
        <modify-function signature="createObject(Phonon::BackendInterface::Class, QObject *, const QList&lt;QVariant&gt; &amp;)">
            <modify-argument index="3">
                <replace-default-expression with="null"/>
            </modify-argument>
        </modify-function>
    </interface-type>
    <interface-type name="Phonon::EffectInterface" java-name="AbstractEffect"/>
    <interface-type name="Phonon::MediaNode" java-name="MediaNode"/>

    <interface-type name="Phonon::MediaObjectInterface" java-name="AbstractMediaObject"/>
    <interface-type name="Phonon::PlatformPlugin" java-name="PlatformPlugin">
        <modify-function signature="notification(const char *, const QString &amp;, const QStringList&lt;QString&gt; &amp;, QObject *, const char *)const">
            <modify-argument index="3">
                <replace-default-expression with="null"/>
            </modify-argument>
            <modify-argument index="1">
                <replace-type modified-type="java.lang.String"/>
                <conversion-rule class="shell">
                    jobject %out = qtjambi_from_qstring(__jni_env, QString::fromUtf8(QByteArray(%in)));
                </conversion-rule>
                <conversion-rule class="native">
                    QByteArray b1 = qtjambi_to_qstring(__jni_env, (jstring) %in).toUtf8();
                    const char* %out = b1.data();
                </conversion-rule>
            </modify-argument>
            <modify-argument index="5">
                <replace-type modified-type="java.lang.String"/>
                <conversion-rule class="shell">
                    jobject %out = qtjambi_from_qstring(__jni_env, QString::fromUtf8(QByteArray(%in)));
                </conversion-rule>
                <conversion-rule class="native">
                    QByteArray b2 = qtjambi_to_qstring(__jni_env, (jstring) %in).toUtf8();
                    const char* %out = b1.data();
                </conversion-rule>
            </modify-argument>
        </modify-function>
    </interface-type>
    <interface-type name="Phonon::StreamInterface" java-name="AbstractStream"/>
    <interface-type name="Phonon::VideoWidgetInterface" java-name="AbstractVideoWidget"/>
    <interface-type name="Phonon::VolumeFaderInterface" java-name="AbstractVolumeFader"/>

    <value-type name="Phonon::EffectParameter" java-name="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 -->
    </value-type>
    <value-type name="Phonon::MediaSource" java-name="MediaSource">
        <modify-function signature="operator=(Phonon::MediaSource)" remove="all"/> <!-- Covered by copy constructor -->
    </value-type>
    <value-type name="Phonon::Path" java-name="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">
                <reference-count action="add" variable-name="__rcEffects"/>
            </modify-argument>
            <modify-argument index="2">
                <reference-count action="ignore"/>
            </modify-argument>
        </modify-function>
        <modify-function signature="insertEffect(Phonon::Effect*,Phonon::Effect*)">
            <modify-argument index="1">
                <reference-count action="add" variable-name="__rcEffects"/>
            </modify-argument>
            <modify-argument index="2">
                <reference-count action="ignore"/>
            </modify-argument>
        </modify-function>
        <modify-function signature="removeEffect(Phonon::Effect*)">
            <modify-argument index="1">
                <reference-count action="remove" variable-name="__rcEffects"/>
            </modify-argument>
        </modify-function>
    </value-type>
    <value-type name="Phonon::ObjectDescription" generate="no"/>
    <value-type name="Phonon::EffectDescription" java-name="EffectDescription">
        <modify-function signature="fromIndex(int)" remove="all"/> <!-- temporarily removed so we can compile this (not needed in current API) -->
        <modify-function signature="operator!=(Phonon::ObjectDescription)const" remove="all"/>
        <modify-function signature="operator==(Phonon::ObjectDescription)const" access="private">
            <modify-argument index="1">
                <replace-type modified-type="qt.phonon.EffectDescription"/>
                <conversion-rule class="native">
                    Phonon::EffectDescription %out = (Phonon::EffectDescription ) *(Phonon::EffectDescription *)%in;
                </conversion-rule>
            </modify-argument>
        </modify-function>
        <modify-function signature="property(const char*)const" access="private"/>
        <inject-code>
            <import-file name="typesystem_phonon-java.java" quote-after-line="class ObjectDescriptionSubclass___" quote-before-line="}// class"/>
        </inject-code>
    </value-type>
    <value-type name="Phonon::AudioOutputDevice" java-name="AudioOutputDevice">
        <modify-function signature="fromIndex(int)" remove="all"/> <!-- temporarily removed so we can compile this (not needed in current API) -->
        <modify-function signature="operator==(Phonon::ObjectDescription)const" access="private">
            <modify-argument index="1">
                <replace-type modified-type="qt.phonon.AudioOutputDevice"/>
                <conversion-rule class="native">
                    Phonon::AudioOutputDevice %out = (Phonon::AudioOutputDevice) *(Phonon::AudioOutputDevice *)%in;
                </conversion-rule>
            </modify-argument>
        </modify-function>
        <modify-function signature="operator!=(Phonon::ObjectDescription)const" remove="all"/>
        <modify-function signature="property(const char*)const" access="private"/>
        <inject-code>
            <import-file name="typesystem_phonon-java.java" quote-after-line="class ObjectDescriptionSubclass___" quote-before-line="}// class"/>
        </inject-code>
    </value-type>

    <object-type name="Phonon::AbstractAudioOutput" java-name="AbstractAudioOutput"/>
    <object-type name="Phonon::AbstractMediaStream" java-name="AbstractMediaStream"/>
    <object-type name="Phonon::AudioOutput" java-name="AudioOutput"/>
    <object-type name="Phonon::Effect" java-name="Effect"/>
    <object-type name="Phonon::EffectWidget" java-name="EffectWidget"/>
    <object-type name="Phonon::MediaController" java-name="MediaController"/>
    <object-type name="Phonon::MediaObject" java-name="MediaObject">
        <modify-function signature="enqueue(const QList&lt;QUrl&gt; &amp;)" rename="enqueueUrls"/>
        <modify-function signature="setQueue(const QList&lt;QUrl&gt; &amp;)" rename="setQueueToUrls"/>
    </object-type>
    <object-type name="Phonon::SeekSlider" java-name="SeekSlider">
        <modify-function signature="setMediaObject(Phonon::MediaObject*)">
            <modify-argument index="1">
                <reference-count action="set" variable-name="__rcMediaObject"/>
            </modify-argument>
        </modify-function>
    </object-type>
    <object-type name="Phonon::VideoPlayer" java-name="VideoPlayer"/>
    <object-type name="Phonon::VideoWidget" java-name="VideoWidget"/>
    <object-type name="Phonon::VolumeFaderEffect" java-name="VolumeFaderEffect"/>
    <object-type name="Phonon::VolumeSlider" java-name="VolumeSlider">
        <modify-function signature="setAudioOutput(Phonon::AudioOutput*)">
            <modify-argument index="1">
                <reference-count action="set" variable-name="__rcAudioOutput"/>
            </modify-argument>
        </modify-function>
    </object-type>

    <suppress-warning text="WARNING(MetaJavaBuilder) :: Final class 'AbstractAudioOutput' set to non-final, as it is extended by other classes"/>
    <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'QDBus' does not have a type entry"/>
    <suppress-warning text="WARNING(MetaJavaBuilder) :: private virtual function 'create(const QString &amp; name)' in 'QTextCodecPlugin'"/>
    <suppress-warning text="WARNING(MetaJavaBuilder) :: private virtual function 'keys() const' in 'QTextCodecPlugin'"/>
    <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'MediaSource' has equals operators but no qHash() function"/>
    <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'Path' has equals operators but no qHash() function"/>
    <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'EffectParameter' has equals operators but no qHash() function"/>
    <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'Phonon_ObjectDescription' has equals operators but no qHash() function"/>
    <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'EffectDescription' has equals operators but no qHash() function"/>
    <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'AudioOutputDevice' has equals operators but no qHash() function"/>
    <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'Phonon::operator&lt;&lt;', unmatched return type 'QDebug'"/>
    <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'Phonon::ObjectDescription::ObjectDescription', unmatched parameter type 'QExplicitlySharedDataPointer&lt;ObjectDescriptionData&gt; const&amp;'"/>
    <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'Phonon::BackendCapabilities::notifier', unmatched return type 'Phonon::BackendCapabilities::Notifier*'"/>








  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::AudioOutputInterface' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.VolumeFaderEffect' for enum 'FadeCurve' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::MediaSource' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::MediaController' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'QAbstractXmlForwardIterator' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: enum 'QFormLayout::FormStyle' is specified in typesystem, but not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::AbstractAudioOutput' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.Phonon' for enum 'DiscType' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::AudioOutput' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.VideoWidget' for enum 'AspectRatio' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::Effect' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.MediaSource' for enum 'Type' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::VolumeSlider' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::BackendInterface' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::EffectParameter' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::VideoWidget' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::StreamInterface' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.Phonon' for enum 'ErrorType' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.VideoWidget' for enum 'ScaleMode' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.AbstractAddon' for enum 'Interface' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::MediaObjectInterface' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.Phonon' for enum 'MetaData' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::Path' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.EffectParameter' for enum 'Hint' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.MediaController' for enum 'Feature' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::VideoPlayer' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::MediaObject' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.AbstractBackend' for enum 'Class' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.AbstractAddon' for enum 'AngleCommand' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.AbstractAddon' for enum 'TitleCommand' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::VolumeFaderEffect' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::AudioOutputDevice' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::ObjectDescription' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::EffectDescription' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::VideoWidgetInterface' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::EffectInterface' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.Phonon' for enum 'State' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::SeekSlider' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.AbstractAddon' for enum 'NavigationCommand' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::MediaNode' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.Phonon' for enum 'Category' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'JObjectWrapper' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::AbstractMediaStream' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::PlatformPlugin' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::AddonInterface' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.Phonon' for enum 'ObjectDescriptionType' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: namespace 'qt.phonon.AbstractAddon' for enum 'ChapterCommand' is not declared"/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::AbstractVideoOutput' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::EffectWidget' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>
  <suppress-warning text="WARNING(MetaJavaBuilder) :: type 'Phonon::VolumeFaderInterface' is specified in typesystem, but not defined. This could potentially lead to compilation errors."/>


</typesystem>