Branch data Line data Source code
1 : : // SPDX-License-Identifier: GPL-3.0-or-later
2 : : // SPDX-FileCopyrightText: Andy Holmes <andrew.g.r.holmes@gmail.com>
3 : :
4 : : #pragma once
5 : :
6 : : #if !defined (VALENT_INSIDE) && !defined (VALENT_COMPILATION)
7 : : # error "Only <valent.h> can be included directly."
8 : : #endif
9 : :
10 : : #include "valent-extension.h"
11 : :
12 : : G_BEGIN_DECLS
13 : :
14 : : #define VALENT_TYPE_APPLICATION_PLUGIN (valent_application_plugin_get_type ())
15 : :
16 : : VALENT_AVAILABLE_IN_1_0
17 [ + - + - : 97 : G_DECLARE_DERIVABLE_TYPE (ValentApplicationPlugin, valent_application_plugin, VALENT, APPLICATION_PLUGIN, ValentExtension)
+ - ]
18 : :
19 : : struct _ValentApplicationPluginClass
20 : : {
21 : : ValentExtensionClass parent_class;
22 : :
23 : : /* virtual functions */
24 : : gboolean (*activate) (ValentApplicationPlugin *plugin);
25 : : int (*command_line) (ValentApplicationPlugin *plugin,
26 : : GApplicationCommandLine *command_line);
27 : : gboolean (*dbus_register) (ValentApplicationPlugin *plugin,
28 : : GDBusConnection *connection,
29 : : const char *object_path,
30 : : GError **error);
31 : : void (*dbus_unregister) (ValentApplicationPlugin *plugin,
32 : : GDBusConnection *connection,
33 : : const char *object_path);
34 : : gboolean (*open) (ValentApplicationPlugin *plugin,
35 : : GFile **files,
36 : : int n_files,
37 : : const char *hint);
38 : : void (*shutdown) (ValentApplicationPlugin *plugin);
39 : : void (*startup) (ValentApplicationPlugin *plugin);
40 : :
41 : : /*< private >*/
42 : : gpointer padding[8];
43 : : };
44 : :
45 : : VALENT_AVAILABLE_IN_1_0
46 : : gboolean valent_application_plugin_activate (ValentApplicationPlugin *plugin);
47 : : VALENT_AVAILABLE_IN_1_0
48 : : int valent_application_plugin_command_line (ValentApplicationPlugin *plugin,
49 : : GApplicationCommandLine *command_line);
50 : : VALENT_AVAILABLE_IN_1_0
51 : : gboolean valent_application_plugin_dbus_register (ValentApplicationPlugin *plugin,
52 : : GDBusConnection *connection,
53 : : const char *object_path,
54 : : GError **error);
55 : : VALENT_AVAILABLE_IN_1_0
56 : : void valent_application_plugin_dbus_unregister (ValentApplicationPlugin *plugin,
57 : : GDBusConnection *connection,
58 : : const char *object_path);
59 : : VALENT_AVAILABLE_IN_1_0
60 : : gboolean valent_application_plugin_open (ValentApplicationPlugin *plugin,
61 : : GFile **files,
62 : : int n_files,
63 : : const char *hint);
64 : : VALENT_AVAILABLE_IN_1_0
65 : : void valent_application_plugin_shutdown (ValentApplicationPlugin *plugin);
66 : : VALENT_AVAILABLE_IN_1_0
67 : : void valent_application_plugin_startup (ValentApplicationPlugin *plugin);
68 : :
69 : : G_END_DECLS
70 : :
|