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