|  |  |  | gedit Reference Manual |  | 
|---|---|---|---|---|
| Top | Description | ||||
#include <gedit/gedit-message-type.h>
                    GeditMessageType;
GType               gedit_message_type_get_type         (void);
gboolean            gedit_message_type_is_supported     (GType type);
gchar *             gedit_message_type_identifier       (const gchar *object_path,
                                                         const gchar *method);
gboolean            gedit_message_type_is_valid_object_path
                                                        (const gchar *object_path);
GeditMessageType *  gedit_message_type_new              (const gchar *object_path,
                                                         const gchar *method,
                                                         guint num_optional,
                                                         ...);
GeditMessageType *  gedit_message_type_new_valist       (const gchar *object_path,
                                                         const gchar *method,
                                                         guint num_optional,
                                                         va_list va_args);
GeditMessageType *  gedit_message_type_ref              (GeditMessageType *message_type);
void                gedit_message_type_unref            (GeditMessageType *message_type);
void                gedit_message_type_set              (GeditMessageType *message_type,
                                                         guint num_optional,
                                                         ...);
void                gedit_message_type_set_valist       (GeditMessageType *message_type,
                                                         guint num_optional,
                                                         va_list va_args);
GeditMessage *      gedit_message_type_instantiate      (GeditMessageType *message_type,
                                                         ...);
GeditMessage *      gedit_message_type_instantiate_valist
                                                        (GeditMessageType *message_type,
                                                         va_list va_args);
const gchar *       gedit_message_type_get_object_path  (GeditMessageType *message_type);
const gchar *       gedit_message_type_get_method       (GeditMessageType *message_type);
GType               gedit_message_type_lookup           (GeditMessageType *message_type,
                                                         const gchar *key);
void                gedit_message_type_foreach          (GeditMessageType *message_type,
                                                         GeditMessageTypeForeach func,
                                                         gpointer user_data);
A message type is a prototype description for a GeditMessage used to transmit messages on a GeditMessageBus. The message type describes the Object Path, Method and Arguments of the message.
A message type can contain any number of required and optional arguments.
To instantiate a GeditMessage from a GeditMessageType, use 
gedit_message_type_instantiate().
Registering a new message type on a GeditMessageBus with
gedit_message_bus_register() internally creates a new GeditMessageType. When
then using gedit_message_bus_send(), an actual instantiation of the 
registered type is internally created and send over the bus.
Example 4.
| 1 2 3 4 5 6 7 8 9 10 11 | // Defining a new message type GeditMessageType *message_type = gedit_message_type_new ("/plugins/example", "method", 0, "arg1", G_TYPE_STRING, NULL); // Instantiating an actual message from the type GeditMessage *message = gedit_message_type_instantiate (message_type, "arg1", "Hello World", NULL); | 
GType gedit_message_type_get_type (void);
Retrieves the GType object which is associated with the GeditMessageType class.
| Returns : | the GType associated with GeditMessageType. | 
gboolean gedit_message_type_is_supported (GType type);
Returns if type is GType supported by the message system.
| 
 | the GType | 
| Returns : | TRUEiftypeis a supported GType | 
gchar *             gedit_message_type_identifier       (const gchar *object_path,
                                                         const gchar *method);
Get the string identifier for method at object_path.
| 
 | the object path | 
| 
 | the method | 
| Returns : | the identifier for methodatobject_path | 
gboolean            gedit_message_type_is_valid_object_path
                                                        (const gchar *object_path);
Returns whether object_path is a valid object path
| 
 | the object path | 
| Returns : | TRUEifobject_pathis a valid object path | 
GeditMessageType * gedit_message_type_new (const gchar *object_path, const gchar *method, guint num_optional, ...);
Create a new GeditMessageType for method at object_path. Argument names
and values are supplied by the NULL terminated variable argument list.
The last num_optional provided arguments are considered optional.
| 
 | the object path | 
| 
 | the method | 
| 
 | number of optional arguments | 
| 
 | key/gtype pair variable argument list | 
| Returns : | the newly constructed GeditMessageType | 
GeditMessageType * gedit_message_type_new_valist (const gchar *object_path, const gchar *method, guint num_optional, va_list va_args);
Create a new GeditMessageType for method at object_path. Argument names
and values are supplied by the NULL terminated variable argument list.
The last num_optional provided arguments are considered optional.
| 
 | the object path | 
| 
 | the method | 
| 
 | number of optional arguments | 
| 
 | |
| Returns : | the newly constructed GeditMessageType | 
GeditMessageType * gedit_message_type_ref (GeditMessageType *message_type);
Increases the reference count on message_type.
| 
 | the GeditMessageType | 
| Returns : | message_type | 
void gedit_message_type_unref (GeditMessageType *message_type);
Decreases the reference count on message_type. When the reference count
drops to 0, message_type is destroyed.
| 
 | the GeditMessageType | 
void gedit_message_type_set (GeditMessageType *message_type, guint num_optional, ...);
Sets argument names/types supplied by the NULL terminated variable
argument list. The last num_optional provided arguments are considered
optional.
| 
 | the GeditMessageType | 
| 
 | number of optional arguments | 
| 
 | key/gtype pair variable argument list | 
void gedit_message_type_set_valist (GeditMessageType *message_type, guint num_optional, va_list va_args);
Sets argument names/types supplied by the NULL terminated variable
argument list var_args. The last num_optional provided arguments are 
considered optional.
| 
 | the GeditMessageType | 
| 
 | number of optional arguments | 
| 
 | 
GeditMessage * gedit_message_type_instantiate (GeditMessageType *message_type, ...);
Instantiate a new message from the message type with specific values for the message arguments.
| 
 | the GeditMessageType | 
| 
 | NULL terminated variable list of key/value pairs | 
| Returns : | the newly created message | 
GeditMessage * gedit_message_type_instantiate_valist (GeditMessageType *message_type, va_list va_args);
Instantiate a new message from the message type with specific values for the message arguments.
| 
 | the GeditMessageType | 
| 
 | NULL terminated variable list of key/value pairs | 
| Returns : | the newly created message | 
const gchar * gedit_message_type_get_object_path (GeditMessageType *message_type);
Get the message type object path.
| 
 | the GeditMessageType | 
| Returns : | the message type object path | 
const gchar * gedit_message_type_get_method (GeditMessageType *message_type);
Get the message type method.
| 
 | the GeditMessageType | 
| Returns : | the message type method | 
GType gedit_message_type_lookup (GeditMessageType *message_type, const gchar *key);
Get the argument key GType.
| 
 | the GeditMessageType | 
| 
 | the argument key | 
| Returns : | the GType of key | 
void gedit_message_type_foreach (GeditMessageType *message_type, GeditMessageTypeForeach func, gpointer user_data);
Calls func for each argument in the message type.
| 
 | the GeditMessageType | 
| 
 | the callback function | 
| 
 | user data supplied to the callback function |