<!-- ##### SECTION Title ##### -->
mate-triggers

<!-- ##### SECTION Short_Description ##### -->
Hierarchical signal mechanism for MATE events.

<!-- ##### SECTION Long_Description ##### -->
<para>
The triggers API provides a way for applications to tell MATE about
interesting events that then cause something to happen (for example, playing a
sound). An event can either be a function that is called, a sound that is
played or an external command that is run.
</para>
<para>
Each trigger can optionally have a <wordasword>level</wordasword> associated
with it and a <wordasword>section</wordasword>. The
<wordasword>section</wordasword> is a list of strings that help to classify the
event, which imposes a hierarchy on the trigger system. For example, messages
about the hard drive partition /dev/hda1 may come under the section ("system",
"device", "disk", "/dev/hda1"). This means that an application could trigger
all events for the ("system", "device") sections and include those events, or
be more specific and just trigger those for ("system", "device", "disk",
"/dev/hda1").
</para>
<para>
At the present time, triggers are not widely used in MATE, being mostly used
to play sound events in response to certain actions.
</para>

<!-- ##### SECTION See_Also ##### -->
<para>

</para>

<!-- ##### SECTION Stability_Level ##### -->


<!-- ##### SECTION Image ##### -->


<!-- ##### ENUM MateTriggerType ##### -->
<para>
These are the different types of triggers that can be activated by an
application.
</para>

@GTRIG_NONE: A null trigger type. Should never be used.
@GTRIG_FUNCTION: The trigger causes a function to be executed.
@GTRIG_COMMAND: The trigger causes a command to be executed (using execv()).
@GTRIG_MEDIAPLAY: The trigger causes a sound to be played.

<!-- ##### USER_FUNCTION MateTriggerActionFunction ##### -->
<para>
The signature of a function that can used as a target for #GTRIG_FUNCTION
types of #MateTrigger instances.
</para>

@msg: The human-readable message that was passed to mate_triggers_do(). May be
%NULL.
@level: The severity level of the event. May be %NULL.
@supinfo: The section in which the event belongs. This is a %NULL terminated
array.


<!-- ##### STRUCT MateTrigger ##### -->
<para>

</para>

@type: 

<!-- ##### FUNCTION mate_triggers_add_trigger ##### -->
<para>

</para>

@nt: 
@Varargs: 


<!-- ##### FUNCTION mate_triggers_vadd_trigger ##### -->
<para>

</para>

@nt: 
@supinfo: 


<!-- ##### FUNCTION mate_triggers_do ##### -->
<para>

</para>

@msg: 
@level: 
@Varargs: 


<!-- ##### FUNCTION mate_triggers_vdo ##### -->
<para>

</para>

@msg: 
@level: 
@supinfo: 


