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 peasc.peastypes;
26 
27 public import gtkc.gtktypes;
28 
29 /**
30  * A proxy class to access the actual plugin.
31  */
32 public alias GObject PeasExtension;
33 
34 /**
35  * These identify the various errors that can occur while
36  * loading a plugin.
37  */
38 public enum PeasPluginInfoError
39 {
40 	/**
41 	 * The plugin failed to load.
42 	 */
43 	LOADING_FAILED = 0,
44 	/**
45 	 * The plugin's loader was not found.
46 	 */
47 	LOADER_NOT_FOUND = 1,
48 	/**
49 	 * A dependency of the plugin was not found.
50 	 */
51 	DEP_NOT_FOUND = 2,
52 	/**
53 	 * A dependency of the plugin failed to load.
54 	 */
55 	DEP_LOADING_FAILED = 3,
56 }
57 alias PeasPluginInfoError PluginInfoError;
58 struct GIArgument;
59 
60 struct PeasActivatable;
61 
62 /**
63  * Provides an interface for activatable plugins.
64  */
65 struct PeasActivatableInterface
66 {
67 	/**
68 	 * The parent interface.
69 	 */
70 	GTypeInterface gIface;
71 	/** */
72 	extern(C) void function(PeasActivatable* activatable) activate;
73 	/** */
74 	extern(C) void function(PeasActivatable* activatable) deactivate;
75 	/** */
76 	extern(C) void function(PeasActivatable* activatable) updateState;
77 }
78 
79 struct PeasEngine
80 {
81 	GObject parent;
82 	PeasEnginePrivate* priv;
83 }
84 
85 /**
86  * Class structure for #PeasEngine.
87  */
88 struct PeasEngineClass
89 {
90 	/**
91 	 * The parent class.
92 	 */
93 	GObjectClass parentClass;
94 	/** */
95 	extern(C) void function(PeasEngine* engine, PeasPluginInfo* info) loadPlugin;
96 	/** */
97 	extern(C) void function(PeasEngine* engine, PeasPluginInfo* info) unloadPlugin;
98 	void*[8] padding;
99 }
100 
101 struct PeasEnginePrivate;
102 
103 struct PeasExtensionBase
104 {
105 	GObject parent;
106 	PeasExtensionBasePrivate* priv;
107 }
108 
109 /**
110  * The class structure of #PeasExtensionBase.
111  */
112 struct PeasExtensionBaseClass
113 {
114 	/**
115 	 * The parent class.
116 	 */
117 	GObjectClass parentClass;
118 	void*[8] padding;
119 }
120 
121 struct PeasExtensionBasePrivate;
122 
123 struct PeasExtensionSet
124 {
125 	GObject parent;
126 	PeasExtensionSetPrivate* priv;
127 }
128 
129 /**
130  * The class structure for #PeasExtensionSet.
131  */
132 struct PeasExtensionSetClass
133 {
134 	/**
135 	 * The parent class.
136 	 */
137 	GObjectClass parentClass;
138 	/** */
139 	extern(C) int function(PeasExtensionSet* set, const(char)* methodName, GIArgument* args) call;
140 	/** */
141 	extern(C) void function(PeasExtensionSet* set, PeasPluginInfo* info, PeasExtension* exten) extensionAdded;
142 	/** */
143 	extern(C) void function(PeasExtensionSet* set, PeasPluginInfo* info, PeasExtension* exten) extensionRemoved;
144 	void*[8] padding;
145 }
146 
147 struct PeasExtensionSetPrivate;
148 
149 struct PeasObjectModule
150 {
151 	GTypeModule parent;
152 	PeasObjectModulePrivate* priv;
153 }
154 
155 /**
156  * The class structure for #PeasObjectModule.
157  */
158 struct PeasObjectModuleClass
159 {
160 	/**
161 	 * The parent class.
162 	 */
163 	GTypeModuleClass parentClass;
164 	void*[8] padding;
165 }
166 
167 struct PeasObjectModulePrivate;
168 
169 struct PeasPluginInfo;
170 
171 struct PeasGtkConfigurable;
172 
173 /**
174  * Provides an interface for configurable plugins.
175  */
176 struct PeasGtkConfigurableInterface
177 {
178 	/**
179 	 * The parent interface.
180 	 */
181 	GTypeInterface gIface;
182 	/**
183 	 *
184 	 * Params:
185 	 *     configurable = A #PeasGtkConfigurable
186 	 * Return: A #GtkWidget used for configuration.
187 	 */
188 	extern(C) GtkWidget* function(PeasGtkConfigurable* configurable) createConfigureWidget;
189 }
190 
191 struct PeasGtkPluginManager
192 {
193 	GtkBox box;
194 	PeasGtkPluginManagerPrivate* priv;
195 }
196 
197 /**
198  * The class structure for #PeasGtkPluginManager.
199  */
200 struct PeasGtkPluginManagerClass
201 {
202 	/**
203 	 * The parent class.
204 	 */
205 	GtkBoxClass parentClass;
206 	void*[8] padding;
207 }
208 
209 struct PeasGtkPluginManagerPrivate;
210 
211 struct PeasGtkPluginManagerView
212 {
213 	GtkTreeView parent;
214 	PeasGtkPluginManagerViewPrivate* priv;
215 }
216 
217 /**
218  * The class structure for #PeasGtkPluginManagerView.
219  */
220 struct PeasGtkPluginManagerViewClass
221 {
222 	/**
223 	 * The parent class.
224 	 */
225 	GtkTreeViewClass parentClass;
226 	/** */
227 	extern(C) void function(PeasGtkPluginManagerView* view, GtkMenu* menu) populatePopup;
228 	void*[8] padding;
229 }
230 
231 struct PeasGtkPluginManagerViewPrivate;
232 
233 /**
234  * This function is passed to peas_extension_set_foreach() and
235  * will be called for each extension in @set.
236  *
237  * Params:
238  *     set = A #PeasExtensionSet.
239  *     info = A #PeasPluginInfo.
240  *     exten = A #PeasExtension.
241  *     data = Optional data passed to the function.
242  *
243  * Since: 1.2
244  */
245 public alias extern(C) void function(PeasExtensionSet* set, PeasPluginInfo* info, PeasExtension* exten, void* data) PeasExtensionSetForeachFunc;
246 
247 /**
248  * A #PeasFactoryFunc is a factory function which will instanciate a new
249  * extension of a given type. g_object_newv() is such a function.
250  *
251  * It is used with peas_object_module_register_extension_factory().
252  *
253  * Params:
254  *     nParameters = The number of paramteters.
255  *     parameters = The parameters.
256  *     userData = Optional data to be passed to the function, or %NULL.
257  *
258  * Return: The created object.
259  */
260 public alias extern(C) GObject* function(uint nParameters, GParameter* parameters, void* userData) PeasFactoryFunc;