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 gsvc.gsvtypes;
26 
27 public import gtkc.gtktypes;
28 
29 public enum GtkSourceBackgroundPatternType
30 {
31 	/**
32 	 * no pattern
33 	 */
34 	NONE = 0,
35 	/**
36 	 * grid pattern
37 	 */
38 	GRID = 1,
39 }
40 alias GtkSourceBackgroundPatternType BackgroundPatternType;
41 
42 public enum GtkSourceBracketMatchType
43 {
44 	/**
45 	 * there is no bracket to match.
46 	 */
47 	NONE = 0,
48 	/**
49 	 * matching a bracket
50 	 * failed because the maximum range was reached.
51 	 */
52 	OUT_OF_RANGE = 1,
53 	/**
54 	 * a matching bracket was not found.
55 	 */
56 	NOT_FOUND = 2,
57 	/**
58 	 * a matching bracket was found.
59 	 */
60 	FOUND = 3,
61 }
62 alias GtkSourceBracketMatchType BracketMatchType;
63 
64 public enum GtkSourceChangeCaseType
65 {
66 	/**
67 	 * change case to lowercase.
68 	 */
69 	LOWER = 0,
70 	/**
71 	 * change case to uppercase.
72 	 */
73 	UPPER = 1,
74 	/**
75 	 * toggle case of each character.
76 	 */
77 	TOGGLE = 2,
78 	/**
79 	 * capitalize each word.
80 	 */
81 	TITLE = 3,
82 }
83 alias GtkSourceChangeCaseType ChangeCaseType;
84 
85 public enum GtkSourceCompletionActivation
86 {
87 	/**
88 	 * None.
89 	 */
90 	NONE = 0,
91 	/**
92 	 * Interactive activation. By
93 	 * default, it occurs on each insertion in the #GtkTextBuffer. This can be
94 	 * blocked temporarily with gtk_source_completion_block_interactive().
95 	 */
96 	INTERACTIVE = 1,
97 	/**
98 	 * User requested activation.
99 	 * By default, it occurs when the user presses
100 	 * <keycombo><keycap>Control</keycap><keycap>space</keycap></keycombo>.
101 	 */
102 	USER_REQUESTED = 2,
103 }
104 alias GtkSourceCompletionActivation CompletionActivation;
105 
106 /**
107  * An error code used with %GTK_SOURCE_COMPLETION_ERROR in a #GError returned
108  * from a completion-related function.
109  */
110 public enum GtkSourceCompletionError
111 {
112 	/**
113 	 * The #GtkSourceCompletionProvider
114 	 * is already bound to the #GtkSourceCompletion object.
115 	 */
116 	ALREADY_BOUND = 0,
117 	/**
118 	 * The #GtkSourceCompletionProvider is
119 	 * not bound to the #GtkSourceCompletion object.
120 	 */
121 	NOT_BOUND = 1,
122 }
123 alias GtkSourceCompletionError CompletionError;
124 
125 public enum GtkSourceCompressionType
126 {
127 	/**
128 	 * plain text.
129 	 */
130 	NONE = 0,
131 	/**
132 	 * gzip compression.
133 	 */
134 	GZIP = 1,
135 }
136 alias GtkSourceCompressionType CompressionType;
137 
138 /**
139  * GtkSourceDrawSpacesFlags determine what kind of spaces whould be drawn. If none
140  * of GTK_SOURCE_DRAW_SPACES_LEADING, GTK_SOURCE_DRAW_SPACES_TEXT or
141  * GTK_SOURCE_DRAW_SPACES_TRAILING is specified, whitespaces at any position in
142  * the line will be drawn (i.e. it has the same effect as specifying all of them).
143  *
144  * Deprecated: Use #GtkSourceSpaceTypeFlags and
145  * #GtkSourceSpaceLocationFlags instead.
146  */
147 public enum GtkSourceDrawSpacesFlags
148 {
149 	/**
150 	 * whether the space character should be drawn.
151 	 */
152 	SPACE = 1,
153 	/**
154 	 * whether the tab character should be drawn.
155 	 */
156 	TAB = 2,
157 	/**
158 	 * whether the line breaks should be drawn. If
159 	 * the #GtkSourceBuffer:implicit-trailing-newline property is %TRUE, a line
160 	 * break is also drawn at the end of the buffer.
161 	 */
162 	NEWLINE = 4,
163 	/**
164 	 * whether the non-breaking whitespaces should be drawn.
165 	 */
166 	NBSP = 8,
167 	/**
168 	 * whether leading whitespaces should be drawn.
169 	 */
170 	LEADING = 16,
171 	/**
172 	 * whether whitespaces inside text should be drawn.
173 	 */
174 	TEXT = 32,
175 	/**
176 	 * whether trailing whitespaces should be drawn.
177 	 */
178 	TRAILING = 64,
179 	/**
180 	 * wheter all kind of spaces should be drawn.
181 	 */
182 	ALL = 127,
183 }
184 alias GtkSourceDrawSpacesFlags DrawSpacesFlags;
185 
186 /**
187  * An error code used with the %GTK_SOURCE_FILE_LOADER_ERROR domain.
188  */
189 public enum GtkSourceFileLoaderError
190 {
191 	/**
192 	 * The file is too big.
193 	 */
194 	TOO_BIG = 0,
195 	/**
196 	 * It is not
197 	 * possible to detect the encoding automatically.
198 	 */
199 	ENCODING_AUTO_DETECTION_FAILED = 1,
200 	/**
201 	 * There was an encoding
202 	 * conversion error and it was needed to use a fallback character.
203 	 */
204 	CONVERSION_FALLBACK = 2,
205 }
206 alias GtkSourceFileLoaderError FileLoaderError;
207 
208 /**
209  * An error code used with the %GTK_SOURCE_FILE_SAVER_ERROR domain.
210  *
211  * Since: 3.14
212  */
213 public enum GtkSourceFileSaverError
214 {
215 	/**
216 	 * The buffer contains invalid
217 	 * characters.
218 	 */
219 	INVALID_CHARS = 0,
220 	/**
221 	 * The file is externally
222 	 * modified.
223 	 */
224 	EXTERNALLY_MODIFIED = 1,
225 }
226 alias GtkSourceFileSaverError FileSaverError;
227 
228 /**
229  * Flags to define the behavior of a #GtkSourceFileSaver.
230  *
231  * Since: 3.14
232  */
233 public enum GtkSourceFileSaverFlags
234 {
235 	/**
236 	 * No flags.
237 	 */
238 	NONE = 0,
239 	/**
240 	 * Ignore invalid characters.
241 	 */
242 	IGNORE_INVALID_CHARS = 1,
243 	/**
244 	 * Save file despite external modifications.
245 	 */
246 	IGNORE_MODIFICATION_TIME = 2,
247 	/**
248 	 * Create a backup before saving the file.
249 	 */
250 	CREATE_BACKUP = 4,
251 }
252 alias GtkSourceFileSaverFlags FileSaverFlags;
253 
254 /**
255  * The alignment mode of the renderer, when a cell spans multiple lines (due to
256  * text wrapping).
257  */
258 public enum GtkSourceGutterRendererAlignmentMode
259 {
260 	/**
261 	 * The full cell.
262 	 */
263 	CELL = 0,
264 	/**
265 	 * The first line.
266 	 */
267 	FIRST = 1,
268 	/**
269 	 * The last line.
270 	 */
271 	LAST = 2,
272 }
273 alias GtkSourceGutterRendererAlignmentMode GutterRendererAlignmentMode;
274 
275 public enum GtkSourceGutterRendererState
276 {
277 	/**
278 	 * normal state
279 	 */
280 	NORMAL = 0,
281 	/**
282 	 * area in the renderer represents the
283 	 * line on which the insert cursor is currently positioned
284 	 */
285 	CURSOR = 1,
286 	/**
287 	 * the mouse pointer is currently
288 	 * over the activatable area of the renderer
289 	 */
290 	PRELIT = 2,
291 	/**
292 	 * area in the renderer represents
293 	 * a line in the buffer which contains part of the selection
294 	 */
295 	SELECTED = 4,
296 }
297 alias GtkSourceGutterRendererState GutterRendererState;
298 
299 public enum GtkSourceNewlineType
300 {
301 	/**
302 	 * line feed, used on UNIX.
303 	 */
304 	LF = 0,
305 	/**
306 	 * carriage return, used on Mac.
307 	 */
308 	CR = 1,
309 	/**
310 	 * carriage return followed by a line feed, used
311 	 * on Windows.
312 	 */
313 	CR_LF = 2,
314 }
315 alias GtkSourceNewlineType NewlineType;
316 
317 public enum GtkSourceSmartHomeEndType
318 {
319 	/**
320 	 * smart-home-end disabled.
321 	 */
322 	DISABLED = 0,
323 	/**
324 	 * move to the first/last
325 	 * non-whitespace character on the first press of the HOME/END keys and
326 	 * to the beginning/end of the line on the second press.
327 	 */
328 	BEFORE = 1,
329 	/**
330 	 * move to the beginning/end of the
331 	 * line on the first press of the HOME/END keys and to the first/last
332 	 * non-whitespace character on the second press.
333 	 */
334 	AFTER = 2,
335 	/**
336 	 * always move to the first/last
337 	 * non-whitespace character when the HOME/END keys are pressed.
338 	 */
339 	ALWAYS = 3,
340 }
341 alias GtkSourceSmartHomeEndType SmartHomeEndType;
342 
343 public enum GtkSourceSortFlags
344 {
345 	/**
346 	 * no flags specified
347 	 */
348 	NONE = 0,
349 	/**
350 	 * case sensitive sort
351 	 */
352 	CASE_SENSITIVE = 1,
353 	/**
354 	 * sort in reverse order
355 	 */
356 	REVERSE_ORDER = 2,
357 	/**
358 	 * remove duplicates
359 	 */
360 	REMOVE_DUPLICATES = 4,
361 }
362 alias GtkSourceSortFlags SortFlags;
363 
364 /**
365  * #GtkSourceSpaceLocationFlags contains flags for white space locations.
366  *
367  * If a line contains only white spaces (no text), the white spaces match both
368  * %GTK_SOURCE_SPACE_LOCATION_LEADING and %GTK_SOURCE_SPACE_LOCATION_TRAILING.
369  *
370  * Since: 3.24
371  */
372 public enum GtkSourceSpaceLocationFlags
373 {
374 	/**
375 	 * No flags.
376 	 */
377 	NONE = 0,
378 	/**
379 	 * Leading white spaces on a line, i.e. the
380 	 * indentation.
381 	 */
382 	LEADING = 1,
383 	/**
384 	 * White spaces inside a line of text.
385 	 */
386 	INSIDE_TEXT = 2,
387 	/**
388 	 * Trailing white spaces on a line.
389 	 */
390 	TRAILING = 4,
391 	/**
392 	 * White spaces anywhere.
393 	 */
394 	ALL = 7,
395 }
396 alias GtkSourceSpaceLocationFlags SpaceLocationFlags;
397 
398 /**
399  * #GtkSourceSpaceTypeFlags contains flags for white space types.
400  *
401  * Since: 3.24
402  */
403 public enum GtkSourceSpaceTypeFlags
404 {
405 	/**
406 	 * No flags.
407 	 */
408 	NONE = 0,
409 	/**
410 	 * Space character.
411 	 */
412 	SPACE = 1,
413 	/**
414 	 * Tab character.
415 	 */
416 	TAB = 2,
417 	/**
418 	 * Line break character. If the
419 	 * #GtkSourceBuffer:implicit-trailing-newline property is %TRUE,
420 	 * #GtkSourceSpaceDrawer also draws a line break at the end of the buffer.
421 	 */
422 	NEWLINE = 4,
423 	/**
424 	 * Non-breaking space character.
425 	 */
426 	NBSP = 8,
427 	/**
428 	 * All white spaces.
429 	 */
430 	ALL = 15,
431 }
432 alias GtkSourceSpaceTypeFlags SpaceTypeFlags;
433 
434 public enum GtkSourceViewGutterPosition
435 {
436 	/**
437 	 * the gutter position of the lines
438 	 * renderer
439 	 */
440 	LINES = -30,
441 	/**
442 	 * the gutter position of the marks
443 	 * renderer
444 	 */
445 	MARKS = -20,
446 }
447 alias GtkSourceViewGutterPosition ViewGutterPosition;
448 
449 struct GtkSourceBuffer
450 {
451 	GtkTextBuffer parentInstance;
452 	GtkSourceBufferPrivate* priv;
453 }
454 
455 struct GtkSourceBufferClass
456 {
457 	GtkTextBufferClass parentClass;
458 	/** */
459 	extern(C) void function(GtkSourceBuffer* buffer) undo;
460 	/** */
461 	extern(C) void function(GtkSourceBuffer* buffer) redo;
462 	/** */
463 	extern(C) void function(GtkSourceBuffer* buffer, GtkTextIter* iter, GtkSourceBracketMatchType state) bracketMatched;
464 	/** */
465 	extern(C) void function() GtkSourceReserved1;
466 	/** */
467 	extern(C) void function() GtkSourceReserved2;
468 	/** */
469 	extern(C) void function() GtkSourceReserved3;
470 }
471 
472 struct GtkSourceBufferPrivate;
473 
474 struct GtkSourceCompletion
475 {
476 	GObject parentInstance;
477 	GtkSourceCompletionPrivate* priv;
478 }
479 
480 struct GtkSourceCompletionClass
481 {
482 	GObjectClass parentClass;
483 	/** */
484 	extern(C) int function(GtkSourceCompletion* completion, GtkSourceCompletionProvider* provider, GtkSourceCompletionProposal* proposal) proposalActivated;
485 	/** */
486 	extern(C) void function(GtkSourceCompletion* completion) show;
487 	/** */
488 	extern(C) void function(GtkSourceCompletion* completion) hide;
489 	/** */
490 	extern(C) void function(GtkSourceCompletion* completion, GtkSourceCompletionContext* context) populateContext;
491 	/** */
492 	extern(C) void function(GtkSourceCompletion* completion, GtkScrollStep step, int num) moveCursor;
493 	/** */
494 	extern(C) void function(GtkSourceCompletion* completion, GtkScrollStep step, int num) movePage;
495 	/** */
496 	extern(C) void function(GtkSourceCompletion* completion) activateProposal;
497 }
498 
499 struct GtkSourceCompletionContext
500 {
501 	GObject parent;
502 	GtkSourceCompletionContextPrivate* priv;
503 }
504 
505 struct GtkSourceCompletionContextClass
506 {
507 	GObjectClass parentClass;
508 	/** */
509 	extern(C) void function(GtkSourceCompletionContext* context) cancelled;
510 	/** */
511 	extern(C) void function() GtkSourceReserved1;
512 	/** */
513 	extern(C) void function() GtkSourceReserved2;
514 	/** */
515 	extern(C) void function() GtkSourceReserved3;
516 }
517 
518 struct GtkSourceCompletionContextPrivate;
519 
520 struct GtkSourceCompletionInfo
521 {
522 	GtkWindow parent;
523 	GtkSourceCompletionInfoPrivate* priv;
524 }
525 
526 struct GtkSourceCompletionInfoClass
527 {
528 	GtkWindowClass parentClass;
529 	/** */
530 	extern(C) void function(GtkSourceCompletionInfo* info) beforeShow;
531 }
532 
533 struct GtkSourceCompletionInfoPrivate;
534 
535 struct GtkSourceCompletionItem
536 {
537 	GObject parent;
538 	GtkSourceCompletionItemPrivate* priv;
539 }
540 
541 struct GtkSourceCompletionItemClass
542 {
543 	GObjectClass parentClass;
544 }
545 
546 struct GtkSourceCompletionItemPrivate;
547 
548 struct GtkSourceCompletionPrivate;
549 
550 struct GtkSourceCompletionProposal;
551 
552 /**
553  * The virtual function table for #GtkSourceCompletionProposal.
554  */
555 struct GtkSourceCompletionProposalIface
556 {
557 	/**
558 	 * The parent interface.
559 	 */
560 	GTypeInterface parent;
561 	/**
562 	 *
563 	 * Params:
564 	 *     proposal = a #GtkSourceCompletionProposal.
565 	 * Returns: a new string containing the label of @proposal.
566 	 */
567 	extern(C) char* function(GtkSourceCompletionProposal* proposal) getLabel;
568 	/**
569 	 *
570 	 * Params:
571 	 *     proposal = a #GtkSourceCompletionProposal.
572 	 * Returns: a new string containing the label of @proposal with markup.
573 	 */
574 	extern(C) char* function(GtkSourceCompletionProposal* proposal) getMarkup;
575 	/**
576 	 *
577 	 * Params:
578 	 *     proposal = a #GtkSourceCompletionProposal.
579 	 * Returns: a new string containing the text of @proposal.
580 	 */
581 	extern(C) char* function(GtkSourceCompletionProposal* proposal) getText;
582 	/**
583 	 *
584 	 * Params:
585 	 *     proposal = a #GtkSourceCompletionProposal.
586 	 * Returns: A #GdkPixbuf with the icon of @proposal.
587 	 */
588 	extern(C) GdkPixbuf* function(GtkSourceCompletionProposal* proposal) getIcon;
589 	/**
590 	 *
591 	 * Params:
592 	 *     proposal = a #GtkSourceCompletionProposal.
593 	 * Returns: The icon name of @proposal.
594 	 */
595 	extern(C) const(char)* function(GtkSourceCompletionProposal* proposal) getIconName;
596 	/**
597 	 *
598 	 * Params:
599 	 *     proposal = a #GtkSourceCompletionProposal.
600 	 * Returns: A #GIcon with the icon of @proposal.
601 	 */
602 	extern(C) GIcon* function(GtkSourceCompletionProposal* proposal) getGicon;
603 	/**
604 	 *
605 	 * Params:
606 	 *     proposal = a #GtkSourceCompletionProposal.
607 	 * Returns: a newly-allocated string containing
608 	 *     extra information of @proposal or %NULL if no extra information is associated
609 	 *     to @proposal.
610 	 */
611 	extern(C) char* function(GtkSourceCompletionProposal* proposal) getInfo;
612 	/**
613 	 *
614 	 * Params:
615 	 *     proposal = a #GtkSourceCompletionProposal.
616 	 * Returns: The hash value of @proposal.
617 	 */
618 	extern(C) uint function(GtkSourceCompletionProposal* proposal) hash;
619 	/**
620 	 *
621 	 * Params:
622 	 *     proposal = a #GtkSourceCompletionProposal.
623 	 *     other = a #GtkSourceCompletionProposal.
624 	 * Returns: %TRUE if @proposal and @object are the same proposal
625 	 */
626 	extern(C) int function(GtkSourceCompletionProposal* proposal, GtkSourceCompletionProposal* other) equal;
627 	/** */
628 	extern(C) void function(GtkSourceCompletionProposal* proposal) changed;
629 }
630 
631 struct GtkSourceCompletionProvider;
632 
633 /**
634  * The virtual function table for #GtkSourceCompletionProvider.
635  */
636 struct GtkSourceCompletionProviderIface
637 {
638 	/**
639 	 * The parent interface.
640 	 */
641 	GTypeInterface gIface;
642 	/**
643 	 *
644 	 * Params:
645 	 *     provider = a #GtkSourceCompletionProvider.
646 	 * Returns: a new string containing the name of the provider.
647 	 */
648 	extern(C) char* function(GtkSourceCompletionProvider* provider) getName;
649 	/**
650 	 *
651 	 * Params:
652 	 *     provider = The #GtkSourceCompletionProvider
653 	 * Returns: The icon to be used for the provider,
654 	 *     or %NULL if the provider does not have a special icon.
655 	 */
656 	extern(C) GdkPixbuf* function(GtkSourceCompletionProvider* provider) getIcon;
657 	/**
658 	 *
659 	 * Params:
660 	 *     provider = The #GtkSourceCompletionProvider
661 	 * Returns: The icon name to be used for the provider,
662 	 *     or %NULL if the provider does not have a special icon.
663 	 */
664 	extern(C) const(char)* function(GtkSourceCompletionProvider* provider) getIconName;
665 	/**
666 	 *
667 	 * Params:
668 	 *     provider = The #GtkSourceCompletionProvider
669 	 * Returns: The icon to be used for the provider,
670 	 *     or %NULL if the provider does not have a special icon.
671 	 */
672 	extern(C) GIcon* function(GtkSourceCompletionProvider* provider) getGicon;
673 	/** */
674 	extern(C) void function(GtkSourceCompletionProvider* provider, GtkSourceCompletionContext* context) populate;
675 	/**
676 	 *
677 	 * Params:
678 	 *     provider = a #GtkSourceCompletionProvider.
679 	 *     context = a #GtkSourceCompletionContext.
680 	 * Returns: %TRUE if @provider matches the completion context, %FALSE otherwise.
681 	 */
682 	extern(C) int function(GtkSourceCompletionProvider* provider, GtkSourceCompletionContext* context) match;
683 	/**
684 	 *
685 	 * Params:
686 	 *     provider = a #GtkSourceCompletionProvider.
687 	 * Returns: a combination of #GtkSourceCompletionActivation.
688 	 */
689 	extern(C) GtkSourceCompletionActivation function(GtkSourceCompletionProvider* provider) getActivation;
690 	/**
691 	 *
692 	 * Params:
693 	 *     provider = a #GtkSourceCompletionProvider.
694 	 *     proposal = a currently selected #GtkSourceCompletionProposal.
695 	 * Returns: a custom #GtkWidget to show extra
696 	 *     information about @proposal, or %NULL if the provider does not have a special
697 	 *     info widget.
698 	 */
699 	extern(C) GtkWidget* function(GtkSourceCompletionProvider* provider, GtkSourceCompletionProposal* proposal) getInfoWidget;
700 	/** */
701 	extern(C) void function(GtkSourceCompletionProvider* provider, GtkSourceCompletionProposal* proposal, GtkSourceCompletionInfo* info) updateInfo;
702 	/**
703 	 *
704 	 * Params:
705 	 *     provider = a #GtkSourceCompletionProvider.
706 	 *     context = a #GtkSourceCompletionContext.
707 	 *     proposal = a #GtkSourceCompletionProposal.
708 	 *     iter = a #GtkTextIter.
709 	 * Returns: %TRUE if @iter was set for @proposal, %FALSE otherwise.
710 	 */
711 	extern(C) int function(GtkSourceCompletionProvider* provider, GtkSourceCompletionContext* context, GtkSourceCompletionProposal* proposal, GtkTextIter* iter) getStartIter;
712 	/**
713 	 *
714 	 * Params:
715 	 *     provider = a #GtkSourceCompletionProvider.
716 	 *     proposal = a #GtkSourceCompletionProposal.
717 	 *     iter = a #GtkTextIter.
718 	 * Returns: %TRUE to indicate that the proposal activation has been handled,
719 	 *     %FALSE otherwise.
720 	 */
721 	extern(C) int function(GtkSourceCompletionProvider* provider, GtkSourceCompletionProposal* proposal, GtkTextIter* iter) activateProposal;
722 	/**
723 	 *
724 	 * Params:
725 	 *     provider = a #GtkSourceCompletionProvider.
726 	 * Returns: the interactive delay in milliseconds.
727 	 */
728 	extern(C) int function(GtkSourceCompletionProvider* provider) getInteractiveDelay;
729 	/**
730 	 *
731 	 * Params:
732 	 *     provider = a #GtkSourceCompletionProvider.
733 	 * Returns: the provider priority.
734 	 */
735 	extern(C) int function(GtkSourceCompletionProvider* provider) getPriority;
736 }
737 
738 struct GtkSourceCompletionWords
739 {
740 	GObject parent;
741 	GtkSourceCompletionWordsPrivate* priv;
742 }
743 
744 struct GtkSourceCompletionWordsClass
745 {
746 	GObjectClass parentClass;
747 }
748 
749 struct GtkSourceCompletionWordsPrivate;
750 
751 struct GtkSourceEncoding;
752 
753 struct GtkSourceFile
754 {
755 	GObject parent;
756 	GtkSourceFilePrivate* priv;
757 }
758 
759 struct GtkSourceFileClass
760 {
761 	GObjectClass parentClass;
762 	void*[10] padding;
763 }
764 
765 struct GtkSourceFileLoader
766 {
767 	GObject parent;
768 	GtkSourceFileLoaderPrivate* priv;
769 }
770 
771 struct GtkSourceFileLoaderClass
772 {
773 	GObjectClass parentClass;
774 	void*[10] padding;
775 }
776 
777 struct GtkSourceFileLoaderPrivate;
778 
779 struct GtkSourceFilePrivate;
780 
781 struct GtkSourceFileSaver
782 {
783 	GObject object;
784 	GtkSourceFileSaverPrivate* priv;
785 }
786 
787 struct GtkSourceFileSaverClass
788 {
789 	GObjectClass parentClass;
790 	void*[10] padding;
791 }
792 
793 struct GtkSourceFileSaverPrivate;
794 
795 struct GtkSourceGutter
796 {
797 	GObject parent;
798 	GtkSourceGutterPrivate* priv;
799 }
800 
801 struct GtkSourceGutterClass
802 {
803 	GObjectClass parentClass;
804 }
805 
806 struct GtkSourceGutterPrivate;
807 
808 struct GtkSourceGutterRenderer
809 {
810 	GObject parent;
811 	GtkSourceGutterRendererPrivate* priv;
812 }
813 
814 struct GtkSourceGutterRendererClass
815 {
816 	GObjectClass parentClass;
817 	/** */
818 	extern(C) void function(GtkSourceGutterRenderer* renderer, cairo_t* cr, GdkRectangle* backgroundArea, GdkRectangle* cellArea, GtkTextIter* start, GtkTextIter* end) begin;
819 	/** */
820 	extern(C) void function(GtkSourceGutterRenderer* renderer, cairo_t* cr, GdkRectangle* backgroundArea, GdkRectangle* cellArea, GtkTextIter* start, GtkTextIter* end, GtkSourceGutterRendererState state) draw;
821 	/** */
822 	extern(C) void function(GtkSourceGutterRenderer* renderer) end;
823 	/** */
824 	extern(C) void function(GtkSourceGutterRenderer* renderer, GtkTextView* oldView) changeView;
825 	/** */
826 	extern(C) void function(GtkSourceGutterRenderer* renderer, GtkTextBuffer* oldBuffer) changeBuffer;
827 	/**
828 	 *
829 	 * Params:
830 	 *     renderer = a #GtkSourceGutterRenderer
831 	 *     iter = a #GtkTextIter at the start of the line to be activated
832 	 *     area = a #GdkRectangle of the cell area to be activated
833 	 *     event = the event that triggered the query
834 	 * Returns: %TRUE if the renderer can be activated, %FALSE otherwise
835 	 */
836 	extern(C) int function(GtkSourceGutterRenderer* renderer, GtkTextIter* iter, GdkRectangle* area, GdkEvent* event) queryActivatable;
837 	/** */
838 	extern(C) void function(GtkSourceGutterRenderer* renderer, GtkTextIter* iter, GdkRectangle* area, GdkEvent* event) activate;
839 	/** */
840 	extern(C) void function(GtkSourceGutterRenderer* renderer) queueDraw;
841 	/**
842 	 *
843 	 * Params:
844 	 *     renderer = a #GtkSourceGutterRenderer.
845 	 *     iter = a #GtkTextIter.
846 	 *     area = a #GdkRectangle.
847 	 *     x = The x position of the tooltip.
848 	 *     y = The y position of the tooltip.
849 	 *     tooltip = a #GtkTooltip.
850 	 * Returns: %TRUE if the tooltip has been set, %FALSE otherwise
851 	 */
852 	extern(C) int function(GtkSourceGutterRenderer* renderer, GtkTextIter* iter, GdkRectangle* area, int x, int y, GtkTooltip* tooltip) queryTooltip;
853 	/** */
854 	extern(C) void function(GtkSourceGutterRenderer* renderer, GtkTextIter* start, GtkTextIter* end, GtkSourceGutterRendererState state) queryData;
855 }
856 
857 struct GtkSourceGutterRendererPixbuf
858 {
859 	GtkSourceGutterRenderer parent;
860 	GtkSourceGutterRendererPixbufPrivate* priv;
861 }
862 
863 struct GtkSourceGutterRendererPixbufClass
864 {
865 	GtkSourceGutterRendererClass parentClass;
866 }
867 
868 struct GtkSourceGutterRendererPixbufPrivate;
869 
870 struct GtkSourceGutterRendererPrivate;
871 
872 struct GtkSourceGutterRendererText
873 {
874 	GtkSourceGutterRenderer parent;
875 	GtkSourceGutterRendererTextPrivate* priv;
876 }
877 
878 struct GtkSourceGutterRendererTextClass
879 {
880 	GtkSourceGutterRendererClass parentClass;
881 }
882 
883 struct GtkSourceGutterRendererTextPrivate;
884 
885 struct GtkSourceLanguage
886 {
887 	GObject parentInstance;
888 	GtkSourceLanguagePrivate* priv;
889 }
890 
891 struct GtkSourceLanguageClass
892 {
893 	GObjectClass parentClass;
894 	/** */
895 	extern(C) void function() GtkSourceReserved1;
896 	/** */
897 	extern(C) void function() GtkSourceReserved2;
898 }
899 
900 struct GtkSourceLanguageManager
901 {
902 	GObject parentInstance;
903 	GtkSourceLanguageManagerPrivate* priv;
904 }
905 
906 struct GtkSourceLanguageManagerClass
907 {
908 	GObjectClass parentClass;
909 	/** */
910 	extern(C) void function() GtkSourceReserved1;
911 	/** */
912 	extern(C) void function() GtkSourceReserved2;
913 	/** */
914 	extern(C) void function() GtkSourceReserved3;
915 	/** */
916 	extern(C) void function() GtkSourceReserved4;
917 }
918 
919 struct GtkSourceLanguageManagerPrivate;
920 
921 struct GtkSourceLanguagePrivate;
922 
923 struct GtkSourceMap
924 {
925 	GtkSourceView parentInstance;
926 }
927 
928 struct GtkSourceMapClass
929 {
930 	GtkSourceViewClass parentClass;
931 	void*[10] padding;
932 }
933 
934 struct GtkSourceMark
935 {
936 	GtkTextMark parentInstance;
937 	GtkSourceMarkPrivate* priv;
938 }
939 
940 struct GtkSourceMarkAttributes
941 {
942 	GObject parent;
943 	GtkSourceMarkAttributesPrivate* priv;
944 }
945 
946 struct GtkSourceMarkAttributesClass
947 {
948 	GObjectClass parentClass;
949 }
950 
951 struct GtkSourceMarkAttributesPrivate;
952 
953 struct GtkSourceMarkClass
954 {
955 	GtkTextMarkClass parentClass;
956 	/** */
957 	extern(C) void function() GtkSourceReserved1;
958 	/** */
959 	extern(C) void function() GtkSourceReserved2;
960 }
961 
962 struct GtkSourceMarkPrivate;
963 
964 struct GtkSourcePrintCompositor
965 {
966 	GObject parentInstance;
967 	GtkSourcePrintCompositorPrivate* priv;
968 }
969 
970 struct GtkSourcePrintCompositorClass
971 {
972 	GObjectClass parentClass;
973 	/** */
974 	extern(C) void function() GtkSourceReserved1;
975 	/** */
976 	extern(C) void function() GtkSourceReserved2;
977 }
978 
979 struct GtkSourcePrintCompositorPrivate;
980 
981 struct GtkSourceRegion
982 {
983 	GObject parentInstance;
984 }
985 
986 struct GtkSourceRegionClass
987 {
988 	GObjectClass parentClass;
989 	void*[8] padding;
990 }
991 
992 struct GtkSourceRegionIter
993 {
994 	void* dummy1;
995 	uint dummy2;
996 	void* dummy3;
997 }
998 
999 struct GtkSourceSearchContext
1000 {
1001 	GObject parent;
1002 	GtkSourceSearchContextPrivate* priv;
1003 }
1004 
1005 struct GtkSourceSearchContextClass
1006 {
1007 	GObjectClass parentClass;
1008 	void*[10] padding;
1009 }
1010 
1011 struct GtkSourceSearchContextPrivate;
1012 
1013 struct GtkSourceSearchSettings
1014 {
1015 	GObject parent;
1016 	GtkSourceSearchSettingsPrivate* priv;
1017 }
1018 
1019 struct GtkSourceSearchSettingsClass
1020 {
1021 	GObjectClass parentClass;
1022 	void*[10] padding;
1023 }
1024 
1025 struct GtkSourceSearchSettingsPrivate;
1026 
1027 struct GtkSourceSpaceDrawer
1028 {
1029 	GObject parent;
1030 	GtkSourceSpaceDrawerPrivate* priv;
1031 }
1032 
1033 struct GtkSourceSpaceDrawerClass
1034 {
1035 	GObjectClass parentClass;
1036 	void*[20] padding;
1037 }
1038 
1039 struct GtkSourceSpaceDrawerPrivate;
1040 
1041 struct GtkSourceStyle;
1042 
1043 struct GtkSourceStyleClass;
1044 
1045 struct GtkSourceStyleScheme
1046 {
1047 	GObject base;
1048 	GtkSourceStyleSchemePrivate* priv;
1049 }
1050 
1051 struct GtkSourceStyleSchemeChooser;
1052 
1053 struct GtkSourceStyleSchemeChooserButton
1054 {
1055 	GtkButton parent;
1056 }
1057 
1058 struct GtkSourceStyleSchemeChooserButtonClass
1059 {
1060 	GtkButtonClass parent;
1061 }
1062 
1063 struct GtkSourceStyleSchemeChooserInterface
1064 {
1065 	GTypeInterface baseInterface;
1066 	/**
1067 	 *
1068 	 * Params:
1069 	 *     chooser = a #GtkSourceStyleSchemeChooser
1070 	 * Returns: the currently-selected scheme.
1071 	 */
1072 	extern(C) GtkSourceStyleScheme* function(GtkSourceStyleSchemeChooser* chooser) getStyleScheme;
1073 	/** */
1074 	extern(C) void function(GtkSourceStyleSchemeChooser* chooser, GtkSourceStyleScheme* scheme) setStyleScheme;
1075 	void*[12] padding;
1076 }
1077 
1078 struct GtkSourceStyleSchemeChooserWidget
1079 {
1080 	GtkBin parent;
1081 }
1082 
1083 struct GtkSourceStyleSchemeChooserWidgetClass
1084 {
1085 	GtkBinClass parent;
1086 }
1087 
1088 struct GtkSourceStyleSchemeClass
1089 {
1090 	GObjectClass baseClass;
1091 	/** */
1092 	extern(C) void function() GtkSourceReserved1;
1093 	/** */
1094 	extern(C) void function() GtkSourceReserved2;
1095 }
1096 
1097 struct GtkSourceStyleSchemeManager
1098 {
1099 	GObject parent;
1100 	GtkSourceStyleSchemeManagerPrivate* priv;
1101 }
1102 
1103 struct GtkSourceStyleSchemeManagerClass
1104 {
1105 	GObjectClass parentClass;
1106 	/** */
1107 	extern(C) void function() GtkSourceReserved1;
1108 	/** */
1109 	extern(C) void function() GtkSourceReserved2;
1110 	/** */
1111 	extern(C) void function() GtkSourceReserved3;
1112 	/** */
1113 	extern(C) void function() GtkSourceReserved4;
1114 }
1115 
1116 struct GtkSourceStyleSchemeManagerPrivate;
1117 
1118 struct GtkSourceStyleSchemePrivate;
1119 
1120 struct GtkSourceTag
1121 {
1122 	GtkTextTag parentInstance;
1123 }
1124 
1125 struct GtkSourceTagClass
1126 {
1127 	GtkTextTagClass parentClass;
1128 	void*[10] padding;
1129 }
1130 
1131 struct GtkSourceUndoManager;
1132 
1133 struct GtkSourceUndoManagerIface
1134 {
1135 	GTypeInterface parent;
1136 	/**
1137 	 *
1138 	 * Params:
1139 	 *     manager = a #GtkSourceUndoManager.
1140 	 * Returns: %TRUE if there are undo operations available, %FALSE otherwise
1141 	 */
1142 	extern(C) int function(GtkSourceUndoManager* manager) canUndo;
1143 	/**
1144 	 *
1145 	 * Params:
1146 	 *     manager = a #GtkSourceUndoManager.
1147 	 * Returns: %TRUE if there are redo operations available, %FALSE otherwise
1148 	 */
1149 	extern(C) int function(GtkSourceUndoManager* manager) canRedo;
1150 	/** */
1151 	extern(C) void function(GtkSourceUndoManager* manager) undo;
1152 	/** */
1153 	extern(C) void function(GtkSourceUndoManager* manager) redo;
1154 	/** */
1155 	extern(C) void function(GtkSourceUndoManager* manager) beginNotUndoableAction;
1156 	/** */
1157 	extern(C) void function(GtkSourceUndoManager* manager) endNotUndoableAction;
1158 	/** */
1159 	extern(C) void function(GtkSourceUndoManager* manager) canUndoChanged;
1160 	/** */
1161 	extern(C) void function(GtkSourceUndoManager* manager) canRedoChanged;
1162 }
1163 
1164 struct GtkSourceView
1165 {
1166 	GtkTextView parent;
1167 	GtkSourceViewPrivate* priv;
1168 }
1169 
1170 struct GtkSourceViewClass
1171 {
1172 	GtkTextViewClass parentClass;
1173 	/** */
1174 	extern(C) void function(GtkSourceView* view) undo;
1175 	/** */
1176 	extern(C) void function(GtkSourceView* view) redo;
1177 	/** */
1178 	extern(C) void function(GtkSourceView* view, GtkTextIter* iter, GdkEvent* event) lineMarkActivated;
1179 	/** */
1180 	extern(C) void function(GtkSourceView* view) showCompletion;
1181 	/** */
1182 	extern(C) void function(GtkSourceView* view, int copy, int step) moveLines;
1183 	/** */
1184 	extern(C) void function(GtkSourceView* view, int step) moveWords;
1185 }
1186 
1187 struct GtkSourceViewPrivate;
1188 
1189 /**
1190  * Type definition for a function that will be called to create a
1191  * #GMountOperation. This is useful for creating a #GtkMountOperation.
1192  *
1193  * Params:
1194  *     file = a #GtkSourceFile.
1195  *     userdata = user data
1196  *
1197  * Since: 3.14
1198  */
1199 public alias extern(C) GMountOperation* function(GtkSourceFile* file, void* userdata) GtkSourceMountOperationFactory;