gplugin/gplugin
Clone
Summary
Browse
Changes
Graph
A whole bunch of convey cleanups
2021-09-05, Gary Kramlich
683a9c8cda20
A whole bunch of convey cleanups
Testing Done:
Ran all of the plans (I think)
Reviewed at https://reviews.imfreedom.org/r/910/
Title: Vala Plugin Example
Slug: vala
## Vala Plugins
>
You **MUST** have the Vala bindings installed on your system for this to
>
work. They are built by the default GPlugin build.
### Example Vala Plugin
Like all plugins in GPlugin, Vala plugins must also implement the
`gplugin_query`
,
`gplugin_load`
, and
`gplugin_unload`
functions.
Due to the way
`GPlugin.PluginInfo`
info works, you must subclass it and set
your values in the new constructor.
The following is a basic Vala plugin.
```vala
using
GPlugin
;
public
class
BasicPluginInfo
:
GPlugin
.
PluginInfo
{
public
BasicPluginInfo
()
{
string
[]
authors
=
{
"author1"
};
Object
(
id
:
"gplugin/vala-basic-plugin"
,
abi_version
:
0x01020304
,
name
:
"basic plugin"
,
authors
:
authors
,
category
:
"test"
,
version
:
"version"
,
license_id
:
"license"
,
summary
:
"summary"
,
website
:
"website"
,
description
:
"description"
);
}
}
public
GPlugin
.
PluginInfo
gplugin_query
(
out
Error
error
)
{
error
=
null
;
return
new
BasicPluginInfo
();
}
public
bool
gplugin_load
(
GPlugin
.
Plugin
plugin
,
out
Error
error
)
{
error
=
null
;
return
true
;
}
public
bool
gplugin_unload
(
GPlugin
.
Plugin
plugin
,
out
Error
error
)
{
error
=
null
;
return
true
;
}
```