<node name="/StatusNotifierItem">
  <interface name="org.kde.StatusNotifierItem">
    <property name="Category" type="s" access="read"/>
    <property name="Id" type="s" access="read"/>
    <property name="Title" type="s" access="read"/>
    <property name="Status" type="s" access="read"/>
    <property name="WindowId" type="i" access="read"/>
    <property name="Menu" type="o" access="read" />

    <!-- main icon -->
    <!-- names are preferred over pixmaps -->
    <property name="IconName" type="s" access="read" />
    <property name="IconThemePath" type="s" access="read" />

    <!-- struct containing width, height and image data-->
    <!-- implementation has been dropped as of now -->
    <property name="IconPixmap" type="a(iiay)" access="read" />

    <!-- not used in ayatana code, no test case so far -->
    <property name="OverlayIconName" type="s" access="read"/>
    <property name="OverlayIconPixmap" type="a(iiay)" access="read" />

    <!-- Requesting attention icon -->
    <property name="AttentionIconName" type="s" access="read"/>

    <!--same definition as image-->
    <property name="AttentionIconPixmap" type="a(iiay)" access="read" />

    <!-- tooltip data -->
    <!--(iiay) is an image-->
    <property name="ToolTip" type="(sa(iiay)ss)" access="read" />

    <!-- interaction: actually, we do not use them. -->
    <method name="Activate">
      <arg name="x" type="i" direction="in"/>
      <arg name="y" type="i" direction="in"/>
    </method>
    <method name="SecondaryActivate">
      <arg name="x" type="i" direction="in"/>
      <arg name="y" type="i" direction="in"/>
    </method>
    <method name="Scroll">
      <arg name="delta" type="i" direction="in"/>
      <arg name="dir"   type="s" direction="in"/>
    </method>

    <!-- Signals: the client wants to change something in the status-->
    <signal name="NewTitle"></signal>
    <signal name="NewIcon"></signal>
    <signal name="NewIconThemePath"></signal>
    <signal name="NewAttentionIcon"></signal>
    <signal name="NewOverlayIcon"></signal>
    <signal name="NewToolTip"></signal>
    <signal name="NewStatus">
      <arg name="status" type="s" />
    </signal>

    <!-- ayatana labels -->
    <signal name="XAyatanaNewLabel">
      <arg type="s" name="label" direction="out" />
      <arg type="s" name="guide" direction="out" />
    </signal>
    <property name="XAyatanaLabel" type="s" access="read" />
    <property name="XAyatanaLabelGuide" type="s" access="read" />
  </interface>
</node>
