summaryrefslogtreecommitdiff
path: root/qt4/spec/Properties_Interface.xml
diff options
context:
space:
mode:
Diffstat (limited to 'qt4/spec/Properties_Interface.xml')
-rw-r--r--qt4/spec/Properties_Interface.xml194
1 files changed, 194 insertions, 0 deletions
diff --git a/qt4/spec/Properties_Interface.xml b/qt4/spec/Properties_Interface.xml
new file mode 100644
index 000000000..bc9c8b260
--- /dev/null
+++ b/qt4/spec/Properties_Interface.xml
@@ -0,0 +1,194 @@
+<?xml version="1.0" ?>
+<node name="/Properties_Interface" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
+ <tp:copyright> Copyright (C) 2005-2007 Collabora Limited </tp:copyright>
+ <tp:copyright> Copyright (C) 2005, 2006 Nokia Corporation </tp:copyright>
+ <tp:copyright> Copyright (C) 2006 INdT </tp:copyright>
+ <tp:license xmlns="http://www.w3.org/1999/xhtml">
+ <p>This library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Lesser General Public
+License as published by the Free Software Foundation; either
+version 2.1 of the License, or (at your option) any later version.</p>
+
+<p>This library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Lesser General Public License for more details.</p>
+
+<p>You should have received a copy of the GNU Lesser General Public
+License along with this library; if not, write to the Free Software
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</p>
+ </tp:license>
+ <interface name="org.freedesktop.Telepathy.Properties">
+
+ <tp:struct name="Property_Spec" array-name="Property_Spec_List">
+ <tp:docstring>A struct (property ID, property name, D-Bus signature,
+ flags) representing a property, as returned by ListProperties on the
+ Properties interface.</tp:docstring>
+ <tp:member type="u" name="Property_ID"/>
+ <tp:member type="s" name="Name"/>
+ <tp:member type="s" tp:type="DBus_Signature" name="Signature"/>
+ <tp:member type="u" tp:type="Property_Flags" name="Flags"/>
+ </tp:struct>
+
+ <tp:struct name="Property_Flags_Change"
+ array-name="Property_Flags_Change_List">
+ <tp:docstring>A struct (property ID, flags) representing a change to
+ a property's flags, as seen in the PropertyFlagsChanged signal on
+ the Properties interface.</tp:docstring>
+ <tp:member type="u" name="Property_ID"/>
+ <tp:member type="u" name="New_Flags"/>
+ </tp:struct>
+
+ <tp:simple-type name="Property_ID" type="u" array-name="Property_ID_List">
+ <tp:docstring>
+ An unsigned integer used to represent a Telepathy property.
+ </tp:docstring>
+ </tp:simple-type>
+
+ <tp:struct name="Property_Value" array-name="Property_Value_List">
+ <tp:docstring>A struct (property ID, value) representing a
+ property's value, as seen in the PropertiesChanged signal on
+ the Properties interface, returned by the GetProperties method
+ and passed to the SetProperties method.</tp:docstring>
+ <tp:member type="u" tp:type="Property_ID" name="Identifier"/>
+ <tp:member type="v" name="Value"/>
+ </tp:struct>
+
+ <method name="GetProperties" tp:name-for-bindings="Get_Properties">
+ <tp:docstring>
+ Returns an array of (identifier, value) pairs containing the current
+ values of the given properties.
+ </tp:docstring>
+ <arg direction="in" name="Properties" type="au" tp:type="Property_ID[]">
+ <tp:docstring>An array of property identifiers</tp:docstring>
+ </arg>
+ <arg direction="out" type="a(uv)" tp:type="Property_Value[]"
+ name="Values">
+ <!-- XXX: if we're ever breaking API compatibility, make this a{uv} -->
+ <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
+ <p>An array of structs containing:</p>
+ <ul>
+ <li>integer identifiers</li>
+ <li>variant boxed values</li>
+ </ul>
+ </tp:docstring>
+ </arg>
+ <tp:possible-errors>
+ <tp:error name="org.freedesktop.Telepathy.Error.Disconnected"/>
+ <tp:error name="org.freedesktop.Telepathy.Error.InvalidArgument">
+ <tp:docstring>
+ Some property identifier requested is invalid
+ </tp:docstring>
+ </tp:error>
+ <tp:error name="org.freedesktop.Telepathy.Error.PermissionDenied">
+ <tp:docstring>
+ Some property requested does not have the PROPERTY_FLAG_READ flag
+ </tp:docstring>
+ </tp:error>
+ </tp:possible-errors>
+ </method>
+ <method name="ListProperties" tp:name-for-bindings="List_Properties">
+ <tp:docstring>
+ Returns a dictionary of the properties available on this channel.
+ </tp:docstring>
+ <arg direction="out" type="a(ussu)" tp:type="Property_Spec[]"
+ name="Available_Properties">
+ <!-- XXX: if we're ever breaking API compatibility, make this
+ a{u(ssu)} ? -->
+ <tp:docstring>
+ An array of structs containing:
+ <ul>
+ <li>an integer identifier</li>
+ <li>a string property name</li>
+ <li>a string representing the D-Bus signature of this property</li>
+ <li>a bitwise OR of the flags applicable to this property</li>
+ </ul>
+ </tp:docstring>
+ </arg>
+ </method>
+ <signal name="PropertiesChanged" tp:name-for-bindings="Properties_Changed">
+ <tp:docstring>
+ Emitted when the value of readable properties has changed.
+ </tp:docstring>
+ <arg name="Properties" type="a(uv)" tp:type="Property_Value[]">
+ <!-- XXX: if we're ever breaking API compatibility, make this a{uv} -->
+ <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
+ <p>An array of structs containing:</p>
+ <ul>
+ <li>integer identifiers</li>
+ <li>variant boxed values</li>
+ </ul>
+ <p>The array should contain only properties whose values have
+ actually changed.</p>
+ </tp:docstring>
+ </arg>
+ </signal>
+ <signal name="PropertyFlagsChanged"
+ tp:name-for-bindings="Property_Flags_Changed">
+ <tp:docstring>
+ Emitted when the flags of some room properties have changed.
+ </tp:docstring>
+ <arg name="Properties" type="a(uu)" tp:type="Property_Flags_Change[]">
+ <!-- XXX: if we're ever breaking API compatibility, make this a{uu} -->
+ <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
+ <p>An array of structs containing:</p>
+ <ul>
+ <li>integer identifiers</li>
+ <li>a bitwise OR of the current flags</li>
+ </ul>
+ <p>The array should contain only properties whose flags have actually
+ changed.</p>
+ </tp:docstring>
+ </arg>
+ </signal>
+ <method name="SetProperties" tp:name-for-bindings="Set_Properties">
+ <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
+ <p>Takes an array of (identifier, value) pairs containing desired
+ values to set the given properties. In the case of any errors, no
+ properties will be changed. When the changes have been acknowledged
+ by the server, the PropertiesChanged signal will be emitted.</p>
+
+ <p>All properties given must have the PROPERTY_FLAG_WRITE flag, or
+ PermissionDenied will be returned. If any variants are of the wrong
+ type, NotAvailable will be returned. If any given property identifiers
+ are invalid, InvalidArgument will be returned.</p>
+ </tp:docstring>
+
+ <arg direction="in" name="Properties" type="a(uv)"
+ tp:type="Property_Value[]">
+ <!-- XXX: if we're ever breaking API compatibility, make this a{uv} -->
+ <tp:docstring>
+ An array mapping integer property identifiers to boxed values
+ </tp:docstring>
+ </arg>
+ <tp:possible-errors>
+ <tp:error name="org.freedesktop.Telepathy.Error.Disconnected"/>
+ <tp:error name="org.freedesktop.Telepathy.Error.InvalidArgument"/>
+ <tp:error name="org.freedesktop.Telepathy.Error.NotAvailable"/>
+ <tp:error name="org.freedesktop.Telepathy.Error.PermissionDenied"/>
+ <tp:error name="org.freedesktop.Telepathy.Error.NetworkError"/>
+ </tp:possible-errors>
+ </method>
+ <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
+ <p>Interface for channels and other objects, to allow querying and setting
+ properties. ListProperties returns which properties are valid for
+ the given channel, including their type, and an integer handle used to
+ refer to them in GetProperties, SetProperties, and the PropertiesChanged
+ signal. The values are represented by D-Bus variant types, and are
+ accompanied by flags indicating whether or not the property is readable or
+ writable.</p>
+
+ <p>Each property also has a flags value to indicate what methods are
+ available. This is a bitwise OR of PropertyFlags values.</p>
+ </tp:docstring>
+ <tp:flags name="Property_Flags" value-prefix="Property_Flag" type="u">
+ <tp:flag suffix="Read" value="1">
+ <tp:docstring>The property can be read</tp:docstring>
+ </tp:flag>
+ <tp:flag suffix="Write" value="2">
+ <tp:docstring>The property can be written</tp:docstring>
+ </tp:flag>
+ </tp:flags>
+ </interface>
+</node>
+<!-- vim:set sw=2 sts=2 et ft=xml: -->