1 /*
2  * This file is part of gtkD.
3  *
4  * gtkD is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU Lesser General Public License
6  * as published by the Free Software Foundation; either version 3
7  * of the License, or (at your option) any later version, with
8  * some exceptions, please read the COPYING file.
9  *
10  * gtkD is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public License
16  * along with gtkD; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA
18  */
19 
20 // generated automatically - do not change
21 // find conversion definition on APILookup.txt
22 // implement new conversion functionalities on the wrap.utils pakage
23 
24 
25 module peas.c.types;
26 
27 public import gio.c.types;
28 public import glib.c.types;
29 public import gobject.c.types;
30 public import gtk.c.types;
31 
32 
33 /**
34  * A proxy class to access the actual plugin.
35  */
36 public alias GObject PeasExtension;
37 
38 /**
39  * These identify the various errors that can occur while
40  * loading a plugin.
41  */
42 public enum PeasPluginInfoError
43 {
44 	/**
45 	 * The plugin failed to load.
46 	 */
47 	LOADING_FAILED = 0,
48 	/**
49 	 * The plugin's loader was not found.
50 	 */
51 	LOADER_NOT_FOUND = 1,
52 	/**
53 	 * A dependency of the plugin was not found.
54 	 */
55 	DEP_NOT_FOUND = 2,
56 	/**
57 	 * A dependency of the plugin failed to load.
58 	 */
59 	DEP_LOADING_FAILED = 3,
60 }
61 alias PeasPluginInfoError PluginInfoError;
62 struct GIArgument;
63 
64 struct PeasActivatable;
65 
66 /**
67  * Provides an interface for activatable plugins.
68  */
69 struct PeasActivatableInterface
70 {
71 	/**
72 	 * The parent interface.
73 	 */
74 	GTypeInterface gIface;
75 	/** */
76 	extern(C) void function(PeasActivatable* activatable) activate;
77 	/** */
78 	extern(C) void function(PeasActivatable* activatable) deactivate;
79 	/** */
80 	extern(C) void function(PeasActivatable* activatable) updateState;
81 }
82 
83 struct PeasEngine
84 {
85 	GObject parent;
86 	PeasEnginePrivate* priv;
87 }
88 
89 /**
90  * Class structure for #PeasEngine.
91  */
92 struct PeasEngineClass
93 {
94 	/**
95 	 * The parent class.
96 	 */
97 	GObjectClass parentClass;
98 	/** */
99 	extern(C) void function(PeasEngine* engine, PeasPluginInfo* info) loadPlugin;
100 	/** */
101 	extern(C) void function(PeasEngine* engine, PeasPluginInfo* info) unloadPlugin;
102 	void*[8] padding;
103 }
104 
105 struct PeasEnginePrivate;
106 
107 struct PeasExtensionBase
108 {
109 	GObject parent;
110 	PeasExtensionBasePrivate* priv;
111 }
112 
113 /**
114  * The class structure of #PeasExtensionBase.
115  */
116 struct PeasExtensionBaseClass
117 {
118 	/**
119 	 * The parent class.
120 	 */
121 	GObjectClass parentClass;
122 	void*[8] padding;
123 }
124 
125 struct PeasExtensionBasePrivate;
126 
127 struct PeasExtensionSet
128 {
129 	GObject parent;
130 	PeasExtensionSetPrivate* priv;
131 }
132 
133 /**
134  * The class structure for #PeasExtensionSet.
135  */
136 struct PeasExtensionSetClass
137 {
138 	/**
139 	 * The parent class.
140 	 */
141 	GObjectClass parentClass;
142 	/** */
143 	extern(C) int function(PeasExtensionSet* set, const(char)* methodName, GIArgument* args) call;
144 	/** */
145 	extern(C) void function(PeasExtensionSet* set, PeasPluginInfo* info, PeasExtension* exten) extensionAdded;
146 	/** */
147 	extern(C) void function(PeasExtensionSet* set, PeasPluginInfo* info, PeasExtension* exten) extensionRemoved;
148 	void*[8] padding;
149 }
150 
151 struct PeasExtensionSetPrivate;
152 
153 struct PeasObjectModule
154 {
155 	GTypeModule parent;
156 	PeasObjectModulePrivate* priv;
157 }
158 
159 /**
160  * The class structure for #PeasObjectModule.
161  */
162 struct PeasObjectModuleClass
163 {
164 	/**
165 	 * The parent class.
166 	 */
167 	GTypeModuleClass parentClass;
168 	void*[8] padding;
169 }
170 
171 struct PeasObjectModulePrivate;
172 
173 struct PeasPluginInfo;
174 
175 struct PeasGtkConfigurable;
176 
177 /**
178  * Provides an interface for configurable plugins.
179  */
180 struct PeasGtkConfigurableInterface
181 {
182 	/**
183 	 * The parent interface.
184 	 */
185 	GTypeInterface gIface;
186 	/**
187 	 *
188 	 * Params:
189 	 *     configurable = A #PeasGtkConfigurable
190 	 * Returns: A #GtkWidget used for configuration.
191 	 */
192 	extern(C) GtkWidget* function(PeasGtkConfigurable* configurable) createConfigureWidget;
193 }
194 
195 struct PeasGtkPluginManager
196 {
197 	GtkBox box;
198 	PeasGtkPluginManagerPrivate* priv;
199 }
200 
201 /**
202  * The class structure for #PeasGtkPluginManager.
203  */
204 struct PeasGtkPluginManagerClass
205 {
206 	/**
207 	 * The parent class.
208 	 */
209 	GtkBoxClass parentClass;
210 	void*[8] padding;
211 }
212 
213 struct PeasGtkPluginManagerPrivate;
214 
215 struct PeasGtkPluginManagerView
216 {
217 	GtkTreeView parent;
218 	PeasGtkPluginManagerViewPrivate* priv;
219 }
220 
221 /**
222  * The class structure for #PeasGtkPluginManagerView.
223  */
224 struct PeasGtkPluginManagerViewClass
225 {
226 	/**
227 	 * The parent class.
228 	 */
229 	GtkTreeViewClass parentClass;
230 	/** */
231 	extern(C) void function(PeasGtkPluginManagerView* view, GtkMenu* menu) populatePopup;
232 	void*[8] padding;
233 }
234 
235 struct PeasGtkPluginManagerViewPrivate;
236 
237 /**
238  * This function is passed to peas_extension_set_foreach() and
239  * will be called for each extension in @set.
240  *
241  * Params:
242  *     set = A #PeasExtensionSet.
243  *     info = A #PeasPluginInfo.
244  *     exten = A #PeasExtension.
245  *     data = Optional data passed to the function.
246  *
247  * Since: 1.2
248  */
249 public alias extern(C) void function(PeasExtensionSet* set, PeasPluginInfo* info, PeasExtension* exten, void* data) PeasExtensionSetForeachFunc;
250 
251 /**
252  * A #PeasFactoryFunc is a factory function which will instanciate a new
253  * extension of a given type. g_object_newv() is such a function.
254  *
255  * It is used with peas_object_module_register_extension_factory().
256  *
257  * Params:
258  *     nParameters = The number of paramteters.
259  *     parameters = The parameters.
260  *     userData = Optional data to be passed to the function, or %NULL.
261  *
262  * Returns: The created object.
263  */
264 public alias extern(C) GObject* function(uint nParameters, GParameter* parameters, void* userData) PeasFactoryFunc;