/* codecore.h generated by valac 0.56.9, the Vala compiler, do not modify */

#ifndef __SRC_CODECORE_H__
#define __SRC_CODECORE_H__

#include <gio/gio.h>
#include <gtk/gtk.h>
#include <glib-object.h>
#include <handy.h>
#include <stdlib.h>
#include <string.h>
#include <glib.h>
#include <granite.h>
#include <gee.h>
#include <float.h>
#include <math.h>
#include <pango/pango.h>
#include <gtksourceview/gtksource.h>
#include <libgit2-glib/ggit.h>
#include <gdk-pixbuf/gdk-pixbuf.h>
#include <gdk/gdk.h>
#include <vala.h>

G_BEGIN_DECLS

#if !defined(VALA_EXTERN)
#if defined(_MSC_VER)
#define VALA_EXTERN __declspec(dllexport) extern
#elif __GNUC__ >= 4
#define VALA_EXTERN __attribute__((visibility("default"))) extern
#else
#define VALA_EXTERN extern
#endif
#endif
#define SCRATCH_MAIN_WINDOW_FONT_SIZE_MAX 72
#define SCRATCH_MAIN_WINDOW_FONT_SIZE_MIN 7
#define SCRATCH_MAIN_WINDOW_ACTION_GROUP "win"
#define SCRATCH_MAIN_WINDOW_ACTION_PREFIX SCRATCH_MAIN_WINDOW_ACTION_GROUP "."
#define SCRATCH_MAIN_WINDOW_ACTION_FIND "action_find"
#define SCRATCH_MAIN_WINDOW_ACTION_FIND_NEXT "action_find_next"
#define SCRATCH_MAIN_WINDOW_ACTION_FIND_PREVIOUS "action_find_previous"
#define SCRATCH_MAIN_WINDOW_ACTION_FIND_GLOBAL "action_find_global"
#define SCRATCH_MAIN_WINDOW_ACTION_OPEN "action_open"
#define SCRATCH_MAIN_WINDOW_ACTION_OPEN_FOLDER "action_open_folder"
#define SCRATCH_MAIN_WINDOW_ACTION_COLLAPSE_ALL_FOLDERS "action_collapse_all_folders"
#define SCRATCH_MAIN_WINDOW_ACTION_ORDER_FOLDERS "action_order_folders"
#define SCRATCH_MAIN_WINDOW_ACTION_GO_TO "action_go_to"
#define SCRATCH_MAIN_WINDOW_ACTION_SORT_LINES "action_sort_lines"
#define SCRATCH_MAIN_WINDOW_ACTION_NEW_TAB "action_new_tab"
#define SCRATCH_MAIN_WINDOW_ACTION_NEW_FROM_CLIPBOARD "action_new_from_clipboard"
#define SCRATCH_MAIN_WINDOW_ACTION_PREFERENCES "preferences"
#define SCRATCH_MAIN_WINDOW_ACTION_UNDO "action_undo"
#define SCRATCH_MAIN_WINDOW_ACTION_REDO "action_redo"
#define SCRATCH_MAIN_WINDOW_ACTION_REVERT "action_revert"
#define SCRATCH_MAIN_WINDOW_ACTION_SAVE "action_save"
#define SCRATCH_MAIN_WINDOW_ACTION_SAVE_AS "action_save_as"
#define SCRATCH_MAIN_WINDOW_ACTION_SHOW_FIND "action_show_find"
#define SCRATCH_MAIN_WINDOW_ACTION_TEMPLATES "action_templates"
#define SCRATCH_MAIN_WINDOW_ACTION_SHOW_REPLACE "action_show_replace"
#define SCRATCH_MAIN_WINDOW_ACTION_TO_LOWER_CASE "action_to_lower_case"
#define SCRATCH_MAIN_WINDOW_ACTION_TO_UPPER_CASE "action_to_upper_case"
#define SCRATCH_MAIN_WINDOW_ACTION_DUPLICATE "action_duplicate"
#define SCRATCH_MAIN_WINDOW_ACTION_FULLSCREEN "action_fullscreen"
#define SCRATCH_MAIN_WINDOW_ACTION_QUIT "action_quit"
#define SCRATCH_MAIN_WINDOW_ACTION_ZOOM_DEFAULT "action_zoom_default"
#define SCRATCH_MAIN_WINDOW_ACTION_ZOOM_IN "action_zoom_in"
#define SCRATCH_MAIN_WINDOW_ACTION_ZOOM_OUT "action_zoom_out"
#define SCRATCH_MAIN_WINDOW_ACTION_TOGGLE_COMMENT "action_toggle_comment"
#define SCRATCH_MAIN_WINDOW_ACTION_TOGGLE_SIDEBAR "action_toggle_sidebar"
#define SCRATCH_MAIN_WINDOW_ACTION_TOGGLE_OUTLINE "action_toggle_outline"
#define SCRATCH_MAIN_WINDOW_ACTION_TOGGLE_TERMINAL "action-toggle-terminal"
#define SCRATCH_MAIN_WINDOW_ACTION_NEXT_TAB "action_next_tab"
#define SCRATCH_MAIN_WINDOW_ACTION_PREVIOUS_TAB "action_previous_tab"
#define SCRATCH_MAIN_WINDOW_ACTION_CLEAR_LINES "action_clear_lines"
#define SCRATCH_MAIN_WINDOW_ACTION_NEW_BRANCH "action_new_branch"
#define SCRATCH_MAIN_WINDOW_ACTION_CLOSE_TAB "action_close_tab"
#define SCRATCH_MAIN_WINDOW_ACTION_CLOSE_PROJECT_DOCS "action_close_project_docs"
#define SCRATCH_MAIN_WINDOW_ACTION_HIDE_PROJECT_DOCS "action_hide_project_docs"
#define SCRATCH_MAIN_WINDOW_ACTION_RESTORE_PROJECT_DOCS "action_restore_project_docs"
#define SCRATCH_WIDGETS_SOURCE_GUTTER_RENDERER_ADDED_STYLE_ID "diff:added-line"
#define SCRATCH_WIDGETS_SOURCE_GUTTER_RENDERER_REMOVED_STYLE_ID "diff:removed-line"
#define SCRATCH_WIDGETS_SOURCE_GUTTER_RENDERER_CHANGED_STYLE_ID "diff:changed-line"
#define SCRATCH_WIDGETS_SOURCE_GUTTER_RENDERER_REPLACES_DELETED_STYLE_ID "diff:special-case"
#define SCRATCH_WIDGETS_SOURCE_GUTTER_RENDERER_NONE_STYLE_ID "background-pattern"
#define CONSTANTS_GETTEXT_PACKAGE "io.elementary.code"
#define CONSTANTS_PROJECT_NAME "io.elementary.code"
#define CONSTANTS_VERSION "7.1.0"
#define CONSTANTS_PLUGINDIR "/usr/lib/io.elementary.code/plugins"
#define CONSTANTS_INSTALL_PREFIX "/usr"
#define CONSTANTS_DATADIR "/usr/share"
#define CONSTANTS_LOCALEDIR "/usr/share/locale"
#define CONSTANTS_BRANCH ""

#define SCRATCH_TYPE_APPLICATION (scratch_application_get_type ())
#define SCRATCH_APPLICATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_TYPE_APPLICATION, ScratchApplication))
#define SCRATCH_APPLICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_TYPE_APPLICATION, ScratchApplicationClass))
#define SCRATCH_IS_APPLICATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_TYPE_APPLICATION))
#define SCRATCH_IS_APPLICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_TYPE_APPLICATION))
#define SCRATCH_APPLICATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_TYPE_APPLICATION, ScratchApplicationClass))

typedef struct _ScratchApplication ScratchApplication;
typedef struct _ScratchApplicationClass ScratchApplicationClass;
typedef struct _ScratchApplicationPrivate ScratchApplicationPrivate;

#define SCRATCH_TYPE_MAIN_WINDOW (scratch_main_window_get_type ())
#define SCRATCH_MAIN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_TYPE_MAIN_WINDOW, ScratchMainWindow))
#define SCRATCH_MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_TYPE_MAIN_WINDOW, ScratchMainWindowClass))
#define SCRATCH_IS_MAIN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_TYPE_MAIN_WINDOW))
#define SCRATCH_IS_MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_TYPE_MAIN_WINDOW))
#define SCRATCH_MAIN_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_TYPE_MAIN_WINDOW, ScratchMainWindowClass))

typedef struct _ScratchMainWindow ScratchMainWindow;
typedef struct _ScratchMainWindowClass ScratchMainWindowClass;
typedef struct _ScratchMainWindowPrivate ScratchMainWindowPrivate;

#define SCRATCH_WIDGETS_TYPE_DOCUMENT_VIEW (scratch_widgets_document_view_get_type ())
#define SCRATCH_WIDGETS_DOCUMENT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_WIDGETS_TYPE_DOCUMENT_VIEW, ScratchWidgetsDocumentView))
#define SCRATCH_WIDGETS_DOCUMENT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_WIDGETS_TYPE_DOCUMENT_VIEW, ScratchWidgetsDocumentViewClass))
#define SCRATCH_WIDGETS_IS_DOCUMENT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_WIDGETS_TYPE_DOCUMENT_VIEW))
#define SCRATCH_WIDGETS_IS_DOCUMENT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_WIDGETS_TYPE_DOCUMENT_VIEW))
#define SCRATCH_WIDGETS_DOCUMENT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_WIDGETS_TYPE_DOCUMENT_VIEW, ScratchWidgetsDocumentViewClass))

typedef struct _ScratchWidgetsDocumentView ScratchWidgetsDocumentView;
typedef struct _ScratchWidgetsDocumentViewClass ScratchWidgetsDocumentViewClass;

#define SCRATCH_TYPE_HEADER_BAR (scratch_header_bar_get_type ())
#define SCRATCH_HEADER_BAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_TYPE_HEADER_BAR, ScratchHeaderBar))
#define SCRATCH_HEADER_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_TYPE_HEADER_BAR, ScratchHeaderBarClass))
#define SCRATCH_IS_HEADER_BAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_TYPE_HEADER_BAR))
#define SCRATCH_IS_HEADER_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_TYPE_HEADER_BAR))
#define SCRATCH_HEADER_BAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_TYPE_HEADER_BAR, ScratchHeaderBarClass))

typedef struct _ScratchHeaderBar ScratchHeaderBar;
typedef struct _ScratchHeaderBarClass ScratchHeaderBarClass;

#define SCRATCH_WIDGETS_TYPE_SEARCH_BAR (scratch_widgets_search_bar_get_type ())
#define SCRATCH_WIDGETS_SEARCH_BAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_WIDGETS_TYPE_SEARCH_BAR, ScratchWidgetsSearchBar))
#define SCRATCH_WIDGETS_SEARCH_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_WIDGETS_TYPE_SEARCH_BAR, ScratchWidgetsSearchBarClass))
#define SCRATCH_WIDGETS_IS_SEARCH_BAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_WIDGETS_TYPE_SEARCH_BAR))
#define SCRATCH_WIDGETS_IS_SEARCH_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_WIDGETS_TYPE_SEARCH_BAR))
#define SCRATCH_WIDGETS_SEARCH_BAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_WIDGETS_TYPE_SEARCH_BAR, ScratchWidgetsSearchBarClass))

typedef struct _ScratchWidgetsSearchBar ScratchWidgetsSearchBar;
typedef struct _ScratchWidgetsSearchBarClass ScratchWidgetsSearchBarClass;

#define CODE_TYPE_SIDEBAR (code_sidebar_get_type ())
#define CODE_SIDEBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CODE_TYPE_SIDEBAR, CodeSidebar))
#define CODE_SIDEBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CODE_TYPE_SIDEBAR, CodeSidebarClass))
#define CODE_IS_SIDEBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CODE_TYPE_SIDEBAR))
#define CODE_IS_SIDEBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CODE_TYPE_SIDEBAR))
#define CODE_SIDEBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CODE_TYPE_SIDEBAR, CodeSidebarClass))

typedef struct _CodeSidebar CodeSidebar;
typedef struct _CodeSidebarClass CodeSidebarClass;

#define SCRATCH_SERVICES_TYPE_DOCUMENT (scratch_services_document_get_type ())
#define SCRATCH_SERVICES_DOCUMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_SERVICES_TYPE_DOCUMENT, ScratchServicesDocument))
#define SCRATCH_SERVICES_DOCUMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_SERVICES_TYPE_DOCUMENT, ScratchServicesDocumentClass))
#define SCRATCH_SERVICES_IS_DOCUMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_SERVICES_TYPE_DOCUMENT))
#define SCRATCH_SERVICES_IS_DOCUMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_SERVICES_TYPE_DOCUMENT))
#define SCRATCH_SERVICES_DOCUMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_SERVICES_TYPE_DOCUMENT, ScratchServicesDocumentClass))

typedef struct _ScratchServicesDocument ScratchServicesDocument;
typedef struct _ScratchServicesDocumentClass ScratchServicesDocumentClass;

#define SCRATCH_DIALOGS_TYPE_PREFERENCES (scratch_dialogs_preferences_get_type ())
#define SCRATCH_DIALOGS_PREFERENCES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_DIALOGS_TYPE_PREFERENCES, ScratchDialogsPreferences))
#define SCRATCH_DIALOGS_PREFERENCES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_DIALOGS_TYPE_PREFERENCES, ScratchDialogsPreferencesClass))
#define SCRATCH_DIALOGS_IS_PREFERENCES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_DIALOGS_TYPE_PREFERENCES))
#define SCRATCH_DIALOGS_IS_PREFERENCES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_DIALOGS_TYPE_PREFERENCES))
#define SCRATCH_DIALOGS_PREFERENCES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_DIALOGS_TYPE_PREFERENCES, ScratchDialogsPreferencesClass))

typedef struct _ScratchDialogsPreferences ScratchDialogsPreferences;
typedef struct _ScratchDialogsPreferencesClass ScratchDialogsPreferencesClass;
typedef struct _ScratchDialogsPreferencesPrivate ScratchDialogsPreferencesPrivate;

#define SCRATCH_SERVICES_TYPE_PLUGINS_MANAGER (scratch_services_plugins_manager_get_type ())
#define SCRATCH_SERVICES_PLUGINS_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_SERVICES_TYPE_PLUGINS_MANAGER, ScratchServicesPluginsManager))
#define SCRATCH_SERVICES_PLUGINS_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_SERVICES_TYPE_PLUGINS_MANAGER, ScratchServicesPluginsManagerClass))
#define SCRATCH_SERVICES_IS_PLUGINS_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_SERVICES_TYPE_PLUGINS_MANAGER))
#define SCRATCH_SERVICES_IS_PLUGINS_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_SERVICES_TYPE_PLUGINS_MANAGER))
#define SCRATCH_SERVICES_PLUGINS_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_SERVICES_TYPE_PLUGINS_MANAGER, ScratchServicesPluginsManagerClass))

typedef struct _ScratchServicesPluginsManager ScratchServicesPluginsManager;
typedef struct _ScratchServicesPluginsManagerClass ScratchServicesPluginsManagerClass;

#define SCRATCH_DIALOGS_TYPE_RESTORE_CONFIRMATION_DIALOG (scratch_dialogs_restore_confirmation_dialog_get_type ())
#define SCRATCH_DIALOGS_RESTORE_CONFIRMATION_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_DIALOGS_TYPE_RESTORE_CONFIRMATION_DIALOG, ScratchDialogsRestoreConfirmationDialog))
#define SCRATCH_DIALOGS_RESTORE_CONFIRMATION_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_DIALOGS_TYPE_RESTORE_CONFIRMATION_DIALOG, ScratchDialogsRestoreConfirmationDialogClass))
#define SCRATCH_DIALOGS_IS_RESTORE_CONFIRMATION_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_DIALOGS_TYPE_RESTORE_CONFIRMATION_DIALOG))
#define SCRATCH_DIALOGS_IS_RESTORE_CONFIRMATION_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_DIALOGS_TYPE_RESTORE_CONFIRMATION_DIALOG))
#define SCRATCH_DIALOGS_RESTORE_CONFIRMATION_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_DIALOGS_TYPE_RESTORE_CONFIRMATION_DIALOG, ScratchDialogsRestoreConfirmationDialogClass))

typedef struct _ScratchDialogsRestoreConfirmationDialog ScratchDialogsRestoreConfirmationDialog;
typedef struct _ScratchDialogsRestoreConfirmationDialogClass ScratchDialogsRestoreConfirmationDialogClass;
typedef struct _ScratchDialogsRestoreConfirmationDialogPrivate ScratchDialogsRestoreConfirmationDialogPrivate;

#define SCRATCH_DIALOGS_TYPE_GLOBAL_SEARCH_DIALOG (scratch_dialogs_global_search_dialog_get_type ())
#define SCRATCH_DIALOGS_GLOBAL_SEARCH_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_DIALOGS_TYPE_GLOBAL_SEARCH_DIALOG, ScratchDialogsGlobalSearchDialog))
#define SCRATCH_DIALOGS_GLOBAL_SEARCH_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_DIALOGS_TYPE_GLOBAL_SEARCH_DIALOG, ScratchDialogsGlobalSearchDialogClass))
#define SCRATCH_DIALOGS_IS_GLOBAL_SEARCH_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_DIALOGS_TYPE_GLOBAL_SEARCH_DIALOG))
#define SCRATCH_DIALOGS_IS_GLOBAL_SEARCH_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_DIALOGS_TYPE_GLOBAL_SEARCH_DIALOG))
#define SCRATCH_DIALOGS_GLOBAL_SEARCH_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_DIALOGS_TYPE_GLOBAL_SEARCH_DIALOG, ScratchDialogsGlobalSearchDialogClass))

typedef struct _ScratchDialogsGlobalSearchDialog ScratchDialogsGlobalSearchDialog;
typedef struct _ScratchDialogsGlobalSearchDialogClass ScratchDialogsGlobalSearchDialogClass;
typedef struct _ScratchDialogsGlobalSearchDialogPrivate ScratchDialogsGlobalSearchDialogPrivate;

#define SCRATCH_DIALOGS_TYPE_NEW_BRANCH_DIALOG (scratch_dialogs_new_branch_dialog_get_type ())
#define SCRATCH_DIALOGS_NEW_BRANCH_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_DIALOGS_TYPE_NEW_BRANCH_DIALOG, ScratchDialogsNewBranchDialog))
#define SCRATCH_DIALOGS_NEW_BRANCH_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_DIALOGS_TYPE_NEW_BRANCH_DIALOG, ScratchDialogsNewBranchDialogClass))
#define SCRATCH_DIALOGS_IS_NEW_BRANCH_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_DIALOGS_TYPE_NEW_BRANCH_DIALOG))
#define SCRATCH_DIALOGS_IS_NEW_BRANCH_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_DIALOGS_TYPE_NEW_BRANCH_DIALOG))
#define SCRATCH_DIALOGS_NEW_BRANCH_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_DIALOGS_TYPE_NEW_BRANCH_DIALOG, ScratchDialogsNewBranchDialogClass))

typedef struct _ScratchDialogsNewBranchDialog ScratchDialogsNewBranchDialog;
typedef struct _ScratchDialogsNewBranchDialogClass ScratchDialogsNewBranchDialogClass;
typedef struct _ScratchDialogsNewBranchDialogPrivate ScratchDialogsNewBranchDialogPrivate;

#define SCRATCH_FOLDER_MANAGER_TYPE_ITEM (scratch_folder_manager_item_get_type ())
#define SCRATCH_FOLDER_MANAGER_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_FOLDER_MANAGER_TYPE_ITEM, ScratchFolderManagerItem))
#define SCRATCH_FOLDER_MANAGER_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_FOLDER_MANAGER_TYPE_ITEM, ScratchFolderManagerItemClass))
#define SCRATCH_FOLDER_MANAGER_IS_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_FOLDER_MANAGER_TYPE_ITEM))
#define SCRATCH_FOLDER_MANAGER_IS_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_FOLDER_MANAGER_TYPE_ITEM))
#define SCRATCH_FOLDER_MANAGER_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_FOLDER_MANAGER_TYPE_ITEM, ScratchFolderManagerItemClass))

typedef struct _ScratchFolderManagerItem ScratchFolderManagerItem;
typedef struct _ScratchFolderManagerItemClass ScratchFolderManagerItemClass;

#define SCRATCH_FOLDER_MANAGER_TYPE_FOLDER_ITEM (scratch_folder_manager_folder_item_get_type ())
#define SCRATCH_FOLDER_MANAGER_FOLDER_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_FOLDER_MANAGER_TYPE_FOLDER_ITEM, ScratchFolderManagerFolderItem))
#define SCRATCH_FOLDER_MANAGER_FOLDER_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_FOLDER_MANAGER_TYPE_FOLDER_ITEM, ScratchFolderManagerFolderItemClass))
#define SCRATCH_FOLDER_MANAGER_IS_FOLDER_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_FOLDER_MANAGER_TYPE_FOLDER_ITEM))
#define SCRATCH_FOLDER_MANAGER_IS_FOLDER_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_FOLDER_MANAGER_TYPE_FOLDER_ITEM))
#define SCRATCH_FOLDER_MANAGER_FOLDER_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_FOLDER_MANAGER_TYPE_FOLDER_ITEM, ScratchFolderManagerFolderItemClass))

typedef struct _ScratchFolderManagerFolderItem ScratchFolderManagerFolderItem;
typedef struct _ScratchFolderManagerFolderItemClass ScratchFolderManagerFolderItemClass;

#define SCRATCH_FOLDER_MANAGER_TYPE_PROJECT_FOLDER_ITEM (scratch_folder_manager_project_folder_item_get_type ())
#define SCRATCH_FOLDER_MANAGER_PROJECT_FOLDER_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_FOLDER_MANAGER_TYPE_PROJECT_FOLDER_ITEM, ScratchFolderManagerProjectFolderItem))
#define SCRATCH_FOLDER_MANAGER_PROJECT_FOLDER_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_FOLDER_MANAGER_TYPE_PROJECT_FOLDER_ITEM, ScratchFolderManagerProjectFolderItemClass))
#define SCRATCH_FOLDER_MANAGER_IS_PROJECT_FOLDER_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_FOLDER_MANAGER_TYPE_PROJECT_FOLDER_ITEM))
#define SCRATCH_FOLDER_MANAGER_IS_PROJECT_FOLDER_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_FOLDER_MANAGER_TYPE_PROJECT_FOLDER_ITEM))
#define SCRATCH_FOLDER_MANAGER_PROJECT_FOLDER_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_FOLDER_MANAGER_TYPE_PROJECT_FOLDER_ITEM, ScratchFolderManagerProjectFolderItemClass))

typedef struct _ScratchFolderManagerProjectFolderItem ScratchFolderManagerProjectFolderItem;
typedef struct _ScratchFolderManagerProjectFolderItemClass ScratchFolderManagerProjectFolderItemClass;

#define TYPE_CONTRACT_MENU_ITEM (contract_menu_item_get_type ())
#define CONTRACT_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTRACT_MENU_ITEM, ContractMenuItem))
#define CONTRACT_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTRACT_MENU_ITEM, ContractMenuItemClass))
#define IS_CONTRACT_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTRACT_MENU_ITEM))
#define IS_CONTRACT_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTRACT_MENU_ITEM))
#define CONTRACT_MENU_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTRACT_MENU_ITEM, ContractMenuItemClass))

typedef struct _ContractMenuItem ContractMenuItem;
typedef struct _ContractMenuItemClass ContractMenuItemClass;
typedef struct _ContractMenuItemPrivate ContractMenuItemPrivate;

#define SCRATCH_FOLDER_MANAGER_TYPE_FILE (scratch_folder_manager_file_get_type ())
#define SCRATCH_FOLDER_MANAGER_FILE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_FOLDER_MANAGER_TYPE_FILE, ScratchFolderManagerFile))
#define SCRATCH_FOLDER_MANAGER_FILE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_FOLDER_MANAGER_TYPE_FILE, ScratchFolderManagerFileClass))
#define SCRATCH_FOLDER_MANAGER_IS_FILE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_FOLDER_MANAGER_TYPE_FILE))
#define SCRATCH_FOLDER_MANAGER_IS_FILE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_FOLDER_MANAGER_TYPE_FILE))
#define SCRATCH_FOLDER_MANAGER_FILE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_FOLDER_MANAGER_TYPE_FILE, ScratchFolderManagerFileClass))

typedef struct _ScratchFolderManagerFile ScratchFolderManagerFile;
typedef struct _ScratchFolderManagerFileClass ScratchFolderManagerFileClass;
typedef struct _ScratchFolderManagerFilePrivate ScratchFolderManagerFilePrivate;
typedef struct _ScratchFolderManagerItemPrivate ScratchFolderManagerItemPrivate;

#define SCRATCH_FOLDER_MANAGER_TYPE_FILE_ITEM (scratch_folder_manager_file_item_get_type ())
#define SCRATCH_FOLDER_MANAGER_FILE_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_FOLDER_MANAGER_TYPE_FILE_ITEM, ScratchFolderManagerFileItem))
#define SCRATCH_FOLDER_MANAGER_FILE_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_FOLDER_MANAGER_TYPE_FILE_ITEM, ScratchFolderManagerFileItemClass))
#define SCRATCH_FOLDER_MANAGER_IS_FILE_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_FOLDER_MANAGER_TYPE_FILE_ITEM))
#define SCRATCH_FOLDER_MANAGER_IS_FILE_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_FOLDER_MANAGER_TYPE_FILE_ITEM))
#define SCRATCH_FOLDER_MANAGER_FILE_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_FOLDER_MANAGER_TYPE_FILE_ITEM, ScratchFolderManagerFileItemClass))

typedef struct _ScratchFolderManagerFileItem ScratchFolderManagerFileItem;
typedef struct _ScratchFolderManagerFileItemClass ScratchFolderManagerFileItemClass;
typedef struct _ScratchFolderManagerFileItemPrivate ScratchFolderManagerFileItemPrivate;

#define SCRATCH_FOLDER_MANAGER_TYPE_FILE_VIEW (scratch_folder_manager_file_view_get_type ())
#define SCRATCH_FOLDER_MANAGER_FILE_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_FOLDER_MANAGER_TYPE_FILE_VIEW, ScratchFolderManagerFileView))
#define SCRATCH_FOLDER_MANAGER_FILE_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_FOLDER_MANAGER_TYPE_FILE_VIEW, ScratchFolderManagerFileViewClass))
#define SCRATCH_FOLDER_MANAGER_IS_FILE_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_FOLDER_MANAGER_TYPE_FILE_VIEW))
#define SCRATCH_FOLDER_MANAGER_IS_FILE_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_FOLDER_MANAGER_TYPE_FILE_VIEW))
#define SCRATCH_FOLDER_MANAGER_FILE_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_FOLDER_MANAGER_TYPE_FILE_VIEW, ScratchFolderManagerFileViewClass))

typedef struct _ScratchFolderManagerFileView ScratchFolderManagerFileView;
typedef struct _ScratchFolderManagerFileViewClass ScratchFolderManagerFileViewClass;

#define CODE_TYPE_PANE_SWITCHER (code_pane_switcher_get_type ())
#define CODE_PANE_SWITCHER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CODE_TYPE_PANE_SWITCHER, CodePaneSwitcher))
#define CODE_IS_PANE_SWITCHER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CODE_TYPE_PANE_SWITCHER))
#define CODE_PANE_SWITCHER_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), CODE_TYPE_PANE_SWITCHER, CodePaneSwitcherIface))

typedef struct _CodePaneSwitcher CodePaneSwitcher;
typedef struct _CodePaneSwitcherIface CodePaneSwitcherIface;
typedef struct _ScratchFolderManagerFileViewPrivate ScratchFolderManagerFileViewPrivate;
typedef struct _ScratchFolderManagerFolderItemPrivate ScratchFolderManagerFolderItemPrivate;
typedef struct _ScratchFolderManagerProjectFolderItemPrivate ScratchFolderManagerProjectFolderItemPrivate;
typedef enum  {
	SCRATCH_SERVICES_VC_STATUS_NONE,
	SCRATCH_SERVICES_VC_STATUS_ADDED,
	SCRATCH_SERVICES_VC_STATUS_CHANGED,
	SCRATCH_SERVICES_VC_STATUS_REMOVED,
	SCRATCH_SERVICES_VC_STATUS_REPLACES_DELETED,
	SCRATCH_SERVICES_VC_STATUS_OTHER
} ScratchServicesVCStatus;

#define SCRATCH_SERVICES_TYPE_VC_STATUS (scratch_services_vc_status_get_type ())

#define SCRATCH_SERVICES_TYPE_MONITORED_REPOSITORY (scratch_services_monitored_repository_get_type ())
#define SCRATCH_SERVICES_MONITORED_REPOSITORY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_SERVICES_TYPE_MONITORED_REPOSITORY, ScratchServicesMonitoredRepository))
#define SCRATCH_SERVICES_MONITORED_REPOSITORY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_SERVICES_TYPE_MONITORED_REPOSITORY, ScratchServicesMonitoredRepositoryClass))
#define SCRATCH_SERVICES_IS_MONITORED_REPOSITORY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_SERVICES_TYPE_MONITORED_REPOSITORY))
#define SCRATCH_SERVICES_IS_MONITORED_REPOSITORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_SERVICES_TYPE_MONITORED_REPOSITORY))
#define SCRATCH_SERVICES_MONITORED_REPOSITORY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_SERVICES_TYPE_MONITORED_REPOSITORY, ScratchServicesMonitoredRepositoryClass))

typedef struct _ScratchServicesMonitoredRepository ScratchServicesMonitoredRepository;
typedef struct _ScratchServicesMonitoredRepositoryClass ScratchServicesMonitoredRepositoryClass;

#define SCRATCH_TYPE_COMMENT_TOGGLER (scratch_comment_toggler_get_type ())
#define SCRATCH_COMMENT_TOGGLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_TYPE_COMMENT_TOGGLER, ScratchCommentToggler))
#define SCRATCH_COMMENT_TOGGLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_TYPE_COMMENT_TOGGLER, ScratchCommentTogglerClass))
#define SCRATCH_IS_COMMENT_TOGGLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_TYPE_COMMENT_TOGGLER))
#define SCRATCH_IS_COMMENT_TOGGLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_TYPE_COMMENT_TOGGLER))
#define SCRATCH_COMMENT_TOGGLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_TYPE_COMMENT_TOGGLER, ScratchCommentTogglerClass))

typedef struct _ScratchCommentToggler ScratchCommentToggler;
typedef struct _ScratchCommentTogglerClass ScratchCommentTogglerClass;
typedef struct _ScratchCommentTogglerPrivate ScratchCommentTogglerPrivate;
typedef enum  {
	SCRATCH_SERVICES_DOCUMENT_STATES_NORMAL,
	SCRATCH_SERVICES_DOCUMENT_STATES_READONLY
} ScratchServicesDocumentStates;

#define SCRATCH_SERVICES_TYPE_DOCUMENT_STATES (scratch_services_document_states_get_type ())
typedef struct _ScratchServicesDocumentPrivate ScratchServicesDocumentPrivate;

#define SCRATCH_WIDGETS_TYPE_SOURCE_VIEW (scratch_widgets_source_view_get_type ())
#define SCRATCH_WIDGETS_SOURCE_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_WIDGETS_TYPE_SOURCE_VIEW, ScratchWidgetsSourceView))
#define SCRATCH_WIDGETS_SOURCE_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_WIDGETS_TYPE_SOURCE_VIEW, ScratchWidgetsSourceViewClass))
#define SCRATCH_WIDGETS_IS_SOURCE_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_WIDGETS_TYPE_SOURCE_VIEW))
#define SCRATCH_WIDGETS_IS_SOURCE_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_WIDGETS_TYPE_SOURCE_VIEW))
#define SCRATCH_WIDGETS_SOURCE_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_WIDGETS_TYPE_SOURCE_VIEW, ScratchWidgetsSourceViewClass))

typedef struct _ScratchWidgetsSourceView ScratchWidgetsSourceView;
typedef struct _ScratchWidgetsSourceViewClass ScratchWidgetsSourceViewClass;
typedef void (*ScratchServicesDocumentVoidFunc) (gpointer user_data);

#define SCRATCH_SERVICES_TYPE_DOCUMENT_MANAGER (scratch_services_document_manager_get_type ())
#define SCRATCH_SERVICES_DOCUMENT_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_SERVICES_TYPE_DOCUMENT_MANAGER, ScratchServicesDocumentManager))
#define SCRATCH_SERVICES_DOCUMENT_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_SERVICES_TYPE_DOCUMENT_MANAGER, ScratchServicesDocumentManagerClass))
#define SCRATCH_SERVICES_IS_DOCUMENT_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_SERVICES_TYPE_DOCUMENT_MANAGER))
#define SCRATCH_SERVICES_IS_DOCUMENT_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_SERVICES_TYPE_DOCUMENT_MANAGER))
#define SCRATCH_SERVICES_DOCUMENT_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_SERVICES_TYPE_DOCUMENT_MANAGER, ScratchServicesDocumentManagerClass))

typedef struct _ScratchServicesDocumentManager ScratchServicesDocumentManager;
typedef struct _ScratchServicesDocumentManagerClass ScratchServicesDocumentManagerClass;
typedef struct _ScratchServicesDocumentManagerPrivate ScratchServicesDocumentManagerPrivate;
typedef enum  {
	SCRATCH_SERVICES_FILE_OPTION_EXISTS,
	SCRATCH_SERVICES_FILE_OPTION_IS_DIR,
	SCRATCH_SERVICES_FILE_OPTION_IS_EXECUTABLE
} ScratchServicesFileOption;

#define SCRATCH_SERVICES_TYPE_FILE_OPTION (scratch_services_file_option_get_type ())

#define SCRATCH_SERVICES_TYPE_FILE_HANDLER (scratch_services_file_handler_get_type ())
#define SCRATCH_SERVICES_FILE_HANDLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_SERVICES_TYPE_FILE_HANDLER, ScratchServicesFileHandler))
#define SCRATCH_SERVICES_FILE_HANDLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_SERVICES_TYPE_FILE_HANDLER, ScratchServicesFileHandlerClass))
#define SCRATCH_SERVICES_IS_FILE_HANDLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_SERVICES_TYPE_FILE_HANDLER))
#define SCRATCH_SERVICES_IS_FILE_HANDLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_SERVICES_TYPE_FILE_HANDLER))
#define SCRATCH_SERVICES_FILE_HANDLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_SERVICES_TYPE_FILE_HANDLER, ScratchServicesFileHandlerClass))

typedef struct _ScratchServicesFileHandler ScratchServicesFileHandler;
typedef struct _ScratchServicesFileHandlerClass ScratchServicesFileHandlerClass;
typedef struct _ScratchServicesFileHandlerPrivate ScratchServicesFileHandlerPrivate;

#define SCRATCH_SERVICES_TYPE_GIT_MANAGER (scratch_services_git_manager_get_type ())
#define SCRATCH_SERVICES_GIT_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_SERVICES_TYPE_GIT_MANAGER, ScratchServicesGitManager))
#define SCRATCH_SERVICES_GIT_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_SERVICES_TYPE_GIT_MANAGER, ScratchServicesGitManagerClass))
#define SCRATCH_SERVICES_IS_GIT_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_SERVICES_TYPE_GIT_MANAGER))
#define SCRATCH_SERVICES_IS_GIT_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_SERVICES_TYPE_GIT_MANAGER))
#define SCRATCH_SERVICES_GIT_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_SERVICES_TYPE_GIT_MANAGER, ScratchServicesGitManagerClass))

typedef struct _ScratchServicesGitManager ScratchServicesGitManager;
typedef struct _ScratchServicesGitManagerClass ScratchServicesGitManagerClass;
typedef struct _ScratchServicesGitManagerPrivate ScratchServicesGitManagerPrivate;
typedef struct _ScratchServicesMonitoredRepositoryPrivate ScratchServicesMonitoredRepositoryPrivate;

#define SCRATCH_SERVICES_TYPE_INTERFACE (scratch_services_interface_get_type ())
#define SCRATCH_SERVICES_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_SERVICES_TYPE_INTERFACE, ScratchServicesInterface))
#define SCRATCH_SERVICES_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_SERVICES_TYPE_INTERFACE, ScratchServicesInterfaceClass))
#define SCRATCH_SERVICES_IS_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_SERVICES_TYPE_INTERFACE))
#define SCRATCH_SERVICES_IS_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_SERVICES_TYPE_INTERFACE))
#define SCRATCH_SERVICES_INTERFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_SERVICES_TYPE_INTERFACE, ScratchServicesInterfaceClass))

typedef struct _ScratchServicesInterface ScratchServicesInterface;
typedef struct _ScratchServicesInterfaceClass ScratchServicesInterfaceClass;
typedef struct _ScratchServicesInterfacePrivate ScratchServicesInterfacePrivate;

#define SCRATCH_TYPE_TEMPLATE_MANAGER (scratch_template_manager_get_type ())
#define SCRATCH_TEMPLATE_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_TYPE_TEMPLATE_MANAGER, ScratchTemplateManager))
#define SCRATCH_TEMPLATE_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_TYPE_TEMPLATE_MANAGER, ScratchTemplateManagerClass))
#define SCRATCH_IS_TEMPLATE_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_TYPE_TEMPLATE_MANAGER))
#define SCRATCH_IS_TEMPLATE_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_TYPE_TEMPLATE_MANAGER))
#define SCRATCH_TEMPLATE_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_TYPE_TEMPLATE_MANAGER, ScratchTemplateManagerClass))

typedef struct _ScratchTemplateManager ScratchTemplateManager;
typedef struct _ScratchTemplateManagerClass ScratchTemplateManagerClass;
typedef struct _ScratchServicesPluginsManagerPrivate ScratchServicesPluginsManagerPrivate;
typedef enum  {
	SCRATCH_SCRATCH_WINDOW_STATE_NORMAL = 0,
	SCRATCH_SCRATCH_WINDOW_STATE_MAXIMIZED = 1,
	SCRATCH_SCRATCH_WINDOW_STATE_FULLSCREEN = 2
} ScratchScratchWindowState;

#define SCRATCH_TYPE_SCRATCH_WINDOW_STATE (scratch_scratch_window_state_get_type ())
typedef enum  {
	SCRATCH_SCRATCH_DRAW_SPACES_STATE_NEVER = 0,
	SCRATCH_SCRATCH_DRAW_SPACES_STATE_FOR_SELECTION = 1,
	SCRATCH_SCRATCH_DRAW_SPACES_STATE_ALWAYS = 2
} ScratchScratchDrawSpacesState;

#define SCRATCH_TYPE_SCRATCH_DRAW_SPACES_STATE (scratch_scratch_draw_spaces_state_get_type ())

#define SCRATCH_TYPE_TEMPLATE (scratch_template_get_type ())
#define SCRATCH_TEMPLATE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_TYPE_TEMPLATE, ScratchTemplate))
#define SCRATCH_TEMPLATE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_TYPE_TEMPLATE, ScratchTemplateClass))
#define SCRATCH_IS_TEMPLATE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_TYPE_TEMPLATE))
#define SCRATCH_IS_TEMPLATE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_TYPE_TEMPLATE))
#define SCRATCH_TEMPLATE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_TYPE_TEMPLATE, ScratchTemplateClass))

typedef struct _ScratchTemplate ScratchTemplate;
typedef struct _ScratchTemplateClass ScratchTemplateClass;
typedef struct _ScratchTemplatePrivate ScratchTemplatePrivate;

#define SCRATCH_TYPE_TEST_TEMPLATE (scratch_test_template_get_type ())
#define SCRATCH_TEST_TEMPLATE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_TYPE_TEST_TEMPLATE, ScratchTestTemplate))
#define SCRATCH_TEST_TEMPLATE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_TYPE_TEST_TEMPLATE, ScratchTestTemplateClass))
#define SCRATCH_IS_TEST_TEMPLATE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_TYPE_TEST_TEMPLATE))
#define SCRATCH_IS_TEST_TEMPLATE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_TYPE_TEST_TEMPLATE))
#define SCRATCH_TEST_TEMPLATE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_TYPE_TEST_TEMPLATE, ScratchTestTemplateClass))

typedef struct _ScratchTestTemplate ScratchTestTemplate;
typedef struct _ScratchTestTemplateClass ScratchTestTemplateClass;
typedef struct _ScratchTestTemplatePrivate ScratchTestTemplatePrivate;

#define TYPE_TEMPLATE_BUTTON (template_button_get_type ())
#define TEMPLATE_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TEMPLATE_BUTTON, TemplateButton))
#define TEMPLATE_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TEMPLATE_BUTTON, TemplateButtonClass))
#define IS_TEMPLATE_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TEMPLATE_BUTTON))
#define IS_TEMPLATE_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TEMPLATE_BUTTON))
#define TEMPLATE_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TEMPLATE_BUTTON, TemplateButtonClass))

typedef struct _TemplateButton TemplateButton;
typedef struct _TemplateButtonClass TemplateButtonClass;
typedef struct _TemplateButtonPrivate TemplateButtonPrivate;
typedef struct _ScratchTemplateManagerPrivate ScratchTemplateManagerPrivate;

#define CODE_TYPE_CHOOSE_PROJECT_BUTTON (code_choose_project_button_get_type ())
#define CODE_CHOOSE_PROJECT_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CODE_TYPE_CHOOSE_PROJECT_BUTTON, CodeChooseProjectButton))
#define CODE_CHOOSE_PROJECT_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CODE_TYPE_CHOOSE_PROJECT_BUTTON, CodeChooseProjectButtonClass))
#define CODE_IS_CHOOSE_PROJECT_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CODE_TYPE_CHOOSE_PROJECT_BUTTON))
#define CODE_IS_CHOOSE_PROJECT_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CODE_TYPE_CHOOSE_PROJECT_BUTTON))
#define CODE_CHOOSE_PROJECT_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CODE_TYPE_CHOOSE_PROJECT_BUTTON, CodeChooseProjectButtonClass))

typedef struct _CodeChooseProjectButton CodeChooseProjectButton;
typedef struct _CodeChooseProjectButtonClass CodeChooseProjectButtonClass;
typedef struct _CodeChooseProjectButtonPrivate CodeChooseProjectButtonPrivate;

#define CODE_CHOOSE_PROJECT_BUTTON_TYPE_PROJECT_ROW (code_choose_project_button_project_row_get_type ())
#define CODE_CHOOSE_PROJECT_BUTTON_PROJECT_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CODE_CHOOSE_PROJECT_BUTTON_TYPE_PROJECT_ROW, CodeChooseProjectButtonProjectRow))
#define CODE_CHOOSE_PROJECT_BUTTON_PROJECT_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CODE_CHOOSE_PROJECT_BUTTON_TYPE_PROJECT_ROW, CodeChooseProjectButtonProjectRowClass))
#define CODE_CHOOSE_PROJECT_BUTTON_IS_PROJECT_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CODE_CHOOSE_PROJECT_BUTTON_TYPE_PROJECT_ROW))
#define CODE_CHOOSE_PROJECT_BUTTON_IS_PROJECT_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CODE_CHOOSE_PROJECT_BUTTON_TYPE_PROJECT_ROW))
#define CODE_CHOOSE_PROJECT_BUTTON_PROJECT_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CODE_CHOOSE_PROJECT_BUTTON_TYPE_PROJECT_ROW, CodeChooseProjectButtonProjectRowClass))

typedef struct _CodeChooseProjectButtonProjectRow CodeChooseProjectButtonProjectRow;
typedef struct _CodeChooseProjectButtonProjectRowClass CodeChooseProjectButtonProjectRowClass;
typedef struct _CodeChooseProjectButtonProjectRowPrivate CodeChooseProjectButtonProjectRowPrivate;
typedef struct _ScratchWidgetsDocumentViewPrivate ScratchWidgetsDocumentViewPrivate;
typedef enum  {
	SCRATCH_WIDGETS_DOCUMENT_VIEW_TARGET_TYPE_URI_LIST
} ScratchWidgetsDocumentViewTargetType;

#define SCRATCH_WIDGETS_DOCUMENT_VIEW_TYPE_TARGET_TYPE (scratch_widgets_document_view_target_type_get_type ())

#define CODE_TYPE_FORMAT_BAR (code_format_bar_get_type ())
#define CODE_FORMAT_BAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CODE_TYPE_FORMAT_BAR, CodeFormatBar))
#define CODE_FORMAT_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CODE_TYPE_FORMAT_BAR, CodeFormatBarClass))
#define CODE_IS_FORMAT_BAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CODE_TYPE_FORMAT_BAR))
#define CODE_IS_FORMAT_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CODE_TYPE_FORMAT_BAR))
#define CODE_FORMAT_BAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CODE_TYPE_FORMAT_BAR, CodeFormatBarClass))

typedef struct _CodeFormatBar CodeFormatBar;
typedef struct _CodeFormatBarClass CodeFormatBarClass;
typedef struct _CodeFormatBarPrivate CodeFormatBarPrivate;

#define CODE_FORMAT_BAR_TYPE_FORMAT_BUTTON (code_format_bar_format_button_get_type ())
#define CODE_FORMAT_BAR_FORMAT_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CODE_FORMAT_BAR_TYPE_FORMAT_BUTTON, CodeFormatBarFormatButton))
#define CODE_FORMAT_BAR_FORMAT_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CODE_FORMAT_BAR_TYPE_FORMAT_BUTTON, CodeFormatBarFormatButtonClass))
#define CODE_FORMAT_BAR_IS_FORMAT_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CODE_FORMAT_BAR_TYPE_FORMAT_BUTTON))
#define CODE_FORMAT_BAR_IS_FORMAT_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CODE_FORMAT_BAR_TYPE_FORMAT_BUTTON))
#define CODE_FORMAT_BAR_FORMAT_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CODE_FORMAT_BAR_TYPE_FORMAT_BUTTON, CodeFormatBarFormatButtonClass))

typedef struct _CodeFormatBarFormatButton CodeFormatBarFormatButton;
typedef struct _CodeFormatBarFormatButtonClass CodeFormatBarFormatButtonClass;
typedef struct _CodeFormatBarFormatButtonPrivate CodeFormatBarFormatButtonPrivate;

#define CODE_FORMAT_BAR_TYPE_LANG_ENTRY (code_format_bar_lang_entry_get_type ())
#define CODE_FORMAT_BAR_LANG_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CODE_FORMAT_BAR_TYPE_LANG_ENTRY, CodeFormatBarLangEntry))
#define CODE_FORMAT_BAR_LANG_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CODE_FORMAT_BAR_TYPE_LANG_ENTRY, CodeFormatBarLangEntryClass))
#define CODE_FORMAT_BAR_IS_LANG_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CODE_FORMAT_BAR_TYPE_LANG_ENTRY))
#define CODE_FORMAT_BAR_IS_LANG_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CODE_FORMAT_BAR_TYPE_LANG_ENTRY))
#define CODE_FORMAT_BAR_LANG_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CODE_FORMAT_BAR_TYPE_LANG_ENTRY, CodeFormatBarLangEntryClass))

typedef struct _CodeFormatBarLangEntry CodeFormatBarLangEntry;
typedef struct _CodeFormatBarLangEntryClass CodeFormatBarLangEntryClass;
typedef struct _CodeFormatBarLangEntryPrivate CodeFormatBarLangEntryPrivate;

#define SCRATCH_WIDGETS_TYPE_SOURCE_GUTTER_RENDERER (scratch_widgets_source_gutter_renderer_get_type ())
#define SCRATCH_WIDGETS_SOURCE_GUTTER_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_WIDGETS_TYPE_SOURCE_GUTTER_RENDERER, ScratchWidgetsSourceGutterRenderer))
#define SCRATCH_WIDGETS_SOURCE_GUTTER_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_WIDGETS_TYPE_SOURCE_GUTTER_RENDERER, ScratchWidgetsSourceGutterRendererClass))
#define SCRATCH_WIDGETS_IS_SOURCE_GUTTER_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_WIDGETS_TYPE_SOURCE_GUTTER_RENDERER))
#define SCRATCH_WIDGETS_IS_SOURCE_GUTTER_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_WIDGETS_TYPE_SOURCE_GUTTER_RENDERER))
#define SCRATCH_WIDGETS_SOURCE_GUTTER_RENDERER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_WIDGETS_TYPE_SOURCE_GUTTER_RENDERER, ScratchWidgetsSourceGutterRendererClass))

typedef struct _ScratchWidgetsSourceGutterRenderer ScratchWidgetsSourceGutterRenderer;
typedef struct _ScratchWidgetsSourceGutterRendererClass ScratchWidgetsSourceGutterRendererClass;
typedef struct _ScratchWidgetsSourceGutterRendererPrivate ScratchWidgetsSourceGutterRendererPrivate;
typedef struct _ScratchHeaderBarPrivate ScratchHeaderBarPrivate;
typedef struct _CodeSidebarPrivate CodeSidebarPrivate;
typedef struct _ScratchWidgetsSearchBarPrivate ScratchWidgetsSearchBarPrivate;
typedef struct _ScratchWidgetsSourceViewPrivate ScratchWidgetsSourceViewPrivate;

#define CODE_TYPE_TERMINAL (code_terminal_get_type ())
#define CODE_TERMINAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CODE_TYPE_TERMINAL, CodeTerminal))
#define CODE_TERMINAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CODE_TYPE_TERMINAL, CodeTerminalClass))
#define CODE_IS_TERMINAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CODE_TYPE_TERMINAL))
#define CODE_IS_TERMINAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CODE_TYPE_TERMINAL))
#define CODE_TERMINAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CODE_TYPE_TERMINAL, CodeTerminalClass))

typedef struct _CodeTerminal CodeTerminal;
typedef struct _CodeTerminalClass CodeTerminalClass;
typedef struct _CodeTerminalPrivate CodeTerminalPrivate;

#define CODE_TYPE_WELCOME_VIEW (code_welcome_view_get_type ())
#define CODE_WELCOME_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CODE_TYPE_WELCOME_VIEW, CodeWelcomeView))
#define CODE_WELCOME_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CODE_TYPE_WELCOME_VIEW, CodeWelcomeViewClass))
#define CODE_IS_WELCOME_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CODE_TYPE_WELCOME_VIEW))
#define CODE_IS_WELCOME_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CODE_TYPE_WELCOME_VIEW))
#define CODE_WELCOME_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CODE_TYPE_WELCOME_VIEW, CodeWelcomeViewClass))

typedef struct _CodeWelcomeView CodeWelcomeView;
typedef struct _CodeWelcomeViewClass CodeWelcomeViewClass;
typedef struct _CodeWelcomeViewPrivate CodeWelcomeViewPrivate;

#define SCRATCH_SERVICES_TYPE_SYMBOL_OUTLINE (scratch_services_symbol_outline_get_type ())
#define SCRATCH_SERVICES_SYMBOL_OUTLINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_SERVICES_TYPE_SYMBOL_OUTLINE, ScratchServicesSymbolOutline))
#define SCRATCH_SERVICES_SYMBOL_OUTLINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_SERVICES_TYPE_SYMBOL_OUTLINE, ScratchServicesSymbolOutlineClass))
#define SCRATCH_SERVICES_IS_SYMBOL_OUTLINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_SERVICES_TYPE_SYMBOL_OUTLINE))
#define SCRATCH_SERVICES_IS_SYMBOL_OUTLINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_SERVICES_TYPE_SYMBOL_OUTLINE))
#define SCRATCH_SERVICES_SYMBOL_OUTLINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_SERVICES_TYPE_SYMBOL_OUTLINE, ScratchServicesSymbolOutlineClass))

typedef struct _ScratchServicesSymbolOutline ScratchServicesSymbolOutline;
typedef struct _ScratchServicesSymbolOutlineClass ScratchServicesSymbolOutlineClass;
typedef struct _ScratchServicesSymbolOutlinePrivate ScratchServicesSymbolOutlinePrivate;

#define SCRATCH_SERVICES_TYPE_VALA_SYMBOL_ITEM (scratch_services_vala_symbol_item_get_type ())
#define SCRATCH_SERVICES_VALA_SYMBOL_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_SERVICES_TYPE_VALA_SYMBOL_ITEM, ScratchServicesValaSymbolItem))
#define SCRATCH_SERVICES_VALA_SYMBOL_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_SERVICES_TYPE_VALA_SYMBOL_ITEM, ScratchServicesValaSymbolItemClass))
#define SCRATCH_SERVICES_IS_VALA_SYMBOL_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_SERVICES_TYPE_VALA_SYMBOL_ITEM))
#define SCRATCH_SERVICES_IS_VALA_SYMBOL_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_SERVICES_TYPE_VALA_SYMBOL_ITEM))
#define SCRATCH_SERVICES_VALA_SYMBOL_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_SERVICES_TYPE_VALA_SYMBOL_ITEM, ScratchServicesValaSymbolItemClass))

typedef struct _ScratchServicesValaSymbolItem ScratchServicesValaSymbolItem;
typedef struct _ScratchServicesValaSymbolItemClass ScratchServicesValaSymbolItemClass;
typedef struct _ScratchServicesValaSymbolItemPrivate ScratchServicesValaSymbolItemPrivate;

#define SCRATCH_SERVICES_TYPE_VALA_SYMBOL_OUTLINE (scratch_services_vala_symbol_outline_get_type ())
#define SCRATCH_SERVICES_VALA_SYMBOL_OUTLINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_SERVICES_TYPE_VALA_SYMBOL_OUTLINE, ScratchServicesValaSymbolOutline))
#define SCRATCH_SERVICES_VALA_SYMBOL_OUTLINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_SERVICES_TYPE_VALA_SYMBOL_OUTLINE, ScratchServicesValaSymbolOutlineClass))
#define SCRATCH_SERVICES_IS_VALA_SYMBOL_OUTLINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_SERVICES_TYPE_VALA_SYMBOL_OUTLINE))
#define SCRATCH_SERVICES_IS_VALA_SYMBOL_OUTLINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_SERVICES_TYPE_VALA_SYMBOL_OUTLINE))
#define SCRATCH_SERVICES_VALA_SYMBOL_OUTLINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_SERVICES_TYPE_VALA_SYMBOL_OUTLINE, ScratchServicesValaSymbolOutlineClass))

typedef struct _ScratchServicesValaSymbolOutline ScratchServicesValaSymbolOutline;
typedef struct _ScratchServicesValaSymbolOutlineClass ScratchServicesValaSymbolOutlineClass;
typedef struct _ScratchServicesValaSymbolOutlinePrivate ScratchServicesValaSymbolOutlinePrivate;

#define TYPE_REPORT (report_get_type ())
#define REPORT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_REPORT, Report))
#define REPORT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_REPORT, ReportClass))
#define IS_REPORT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_REPORT))
#define IS_REPORT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_REPORT))
#define REPORT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_REPORT, ReportClass))

typedef struct _Report Report;
typedef struct _ReportClass ReportClass;
typedef struct _ReportPrivate ReportPrivate;

#define CODE_PLUGINS_TYPE_VALA_SYMBOL_RESOLVER (code_plugins_vala_symbol_resolver_get_type ())
#define CODE_PLUGINS_VALA_SYMBOL_RESOLVER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CODE_PLUGINS_TYPE_VALA_SYMBOL_RESOLVER, CodePluginsValaSymbolResolver))
#define CODE_PLUGINS_VALA_SYMBOL_RESOLVER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CODE_PLUGINS_TYPE_VALA_SYMBOL_RESOLVER, CodePluginsValaSymbolResolverClass))
#define CODE_PLUGINS_IS_VALA_SYMBOL_RESOLVER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CODE_PLUGINS_TYPE_VALA_SYMBOL_RESOLVER))
#define CODE_PLUGINS_IS_VALA_SYMBOL_RESOLVER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CODE_PLUGINS_TYPE_VALA_SYMBOL_RESOLVER))
#define CODE_PLUGINS_VALA_SYMBOL_RESOLVER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CODE_PLUGINS_TYPE_VALA_SYMBOL_RESOLVER, CodePluginsValaSymbolResolverClass))

typedef struct _CodePluginsValaSymbolResolver CodePluginsValaSymbolResolver;
typedef struct _CodePluginsValaSymbolResolverClass CodePluginsValaSymbolResolverClass;
typedef struct _CodePluginsValaSymbolResolverPrivate CodePluginsValaSymbolResolverPrivate;

#define SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL (scratch_services_ctags_symbol_get_type ())
#define SCRATCH_SERVICES_CTAGS_SYMBOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL, ScratchServicesCtagsSymbol))
#define SCRATCH_SERVICES_CTAGS_SYMBOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL, ScratchServicesCtagsSymbolClass))
#define SCRATCH_SERVICES_IS_CTAGS_SYMBOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL))
#define SCRATCH_SERVICES_IS_CTAGS_SYMBOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL))
#define SCRATCH_SERVICES_CTAGS_SYMBOL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL, ScratchServicesCtagsSymbolClass))

typedef struct _ScratchServicesCtagsSymbol ScratchServicesCtagsSymbol;
typedef struct _ScratchServicesCtagsSymbolClass ScratchServicesCtagsSymbolClass;
typedef struct _ScratchServicesCtagsSymbolPrivate ScratchServicesCtagsSymbolPrivate;

#define SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL_ITER (scratch_services_ctags_symbol_iter_get_type ())
#define SCRATCH_SERVICES_CTAGS_SYMBOL_ITER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL_ITER, ScratchServicesCtagsSymbolIter))
#define SCRATCH_SERVICES_CTAGS_SYMBOL_ITER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL_ITER, ScratchServicesCtagsSymbolIterClass))
#define SCRATCH_SERVICES_IS_CTAGS_SYMBOL_ITER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL_ITER))
#define SCRATCH_SERVICES_IS_CTAGS_SYMBOL_ITER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL_ITER))
#define SCRATCH_SERVICES_CTAGS_SYMBOL_ITER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL_ITER, ScratchServicesCtagsSymbolIterClass))

typedef struct _ScratchServicesCtagsSymbolIter ScratchServicesCtagsSymbolIter;
typedef struct _ScratchServicesCtagsSymbolIterClass ScratchServicesCtagsSymbolIterClass;
typedef struct _ScratchServicesCtagsSymbolIterPrivate ScratchServicesCtagsSymbolIterPrivate;

#define SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL_OUTLINE (scratch_services_ctags_symbol_outline_get_type ())
#define SCRATCH_SERVICES_CTAGS_SYMBOL_OUTLINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL_OUTLINE, ScratchServicesCtagsSymbolOutline))
#define SCRATCH_SERVICES_CTAGS_SYMBOL_OUTLINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL_OUTLINE, ScratchServicesCtagsSymbolOutlineClass))
#define SCRATCH_SERVICES_IS_CTAGS_SYMBOL_OUTLINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL_OUTLINE))
#define SCRATCH_SERVICES_IS_CTAGS_SYMBOL_OUTLINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL_OUTLINE))
#define SCRATCH_SERVICES_CTAGS_SYMBOL_OUTLINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SCRATCH_SERVICES_TYPE_CTAGS_SYMBOL_OUTLINE, ScratchServicesCtagsSymbolOutlineClass))

typedef struct _ScratchServicesCtagsSymbolOutline ScratchServicesCtagsSymbolOutline;
typedef struct _ScratchServicesCtagsSymbolOutlineClass ScratchServicesCtagsSymbolOutlineClass;
typedef struct _ScratchServicesCtagsSymbolOutlinePrivate ScratchServicesCtagsSymbolOutlinePrivate;

struct _ScratchApplication {
	GtkApplication parent_instance;
	ScratchApplicationPrivate * priv;
};

struct _ScratchApplicationClass {
	GtkApplicationClass parent_class;
};

struct _ScratchMainWindow {
	HdyWindow parent_instance;
	ScratchMainWindowPrivate * priv;
	ScratchWidgetsDocumentView* document_view;
	ScratchHeaderBar* toolbar;
	ScratchWidgetsSearchBar* search_bar;
	CodeSidebar* sidebar;
	GtkClipboard* clipboard;
};

struct _ScratchMainWindowClass {
	HdyWindowClass parent_class;
};

struct _ScratchDialogsPreferences {
	GraniteDialog parent_instance;
	ScratchDialogsPreferencesPrivate * priv;
};

struct _ScratchDialogsPreferencesClass {
	GraniteDialogClass parent_class;
};

struct _ScratchDialogsRestoreConfirmationDialog {
	GraniteMessageDialog parent_instance;
	ScratchDialogsRestoreConfirmationDialogPrivate * priv;
};

struct _ScratchDialogsRestoreConfirmationDialogClass {
	GraniteMessageDialogClass parent_class;
};

struct _ScratchDialogsGlobalSearchDialog {
	GraniteMessageDialog parent_instance;
	ScratchDialogsGlobalSearchDialogPrivate * priv;
};

struct _ScratchDialogsGlobalSearchDialogClass {
	GraniteMessageDialogClass parent_class;
};

struct _ScratchDialogsNewBranchDialog {
	GraniteMessageDialog parent_instance;
	ScratchDialogsNewBranchDialogPrivate * priv;
};

struct _ScratchDialogsNewBranchDialogClass {
	GraniteMessageDialogClass parent_class;
};

struct _ContractMenuItem {
	GtkMenuItem parent_instance;
	ContractMenuItemPrivate * priv;
};

struct _ContractMenuItemClass {
	GtkMenuItemClass parent_class;
};

struct _ScratchFolderManagerFile {
	GObject parent_instance;
	ScratchFolderManagerFilePrivate * priv;
};

struct _ScratchFolderManagerFileClass {
	GObjectClass parent_class;
};

struct _ScratchFolderManagerItem {
	GraniteWidgetsSourceListExpandableItem parent_instance;
	ScratchFolderManagerItemPrivate * priv;
};

struct _ScratchFolderManagerItemClass {
	GraniteWidgetsSourceListExpandableItemClass parent_class;
};

struct _ScratchFolderManagerFileItem {
	ScratchFolderManagerItem parent_instance;
	ScratchFolderManagerFileItemPrivate * priv;
};

struct _ScratchFolderManagerFileItemClass {
	ScratchFolderManagerItemClass parent_class;
};

struct _CodePaneSwitcherIface {
	GTypeInterface parent_iface;
	const gchar* (*get_icon_name) (CodePaneSwitcher* self);
	void (*set_icon_name) (CodePaneSwitcher* self, const gchar* value);
	const gchar* (*get_title) (CodePaneSwitcher* self);
	void (*set_title) (CodePaneSwitcher* self, const gchar* value);
};

struct _ScratchFolderManagerFileView {
	GraniteWidgetsSourceList parent_instance;
	ScratchFolderManagerFileViewPrivate * priv;
};

struct _ScratchFolderManagerFileViewClass {
	GraniteWidgetsSourceListClass parent_class;
};

struct _ScratchFolderManagerFolderItem {
	ScratchFolderManagerItem parent_instance;
	ScratchFolderManagerFolderItemPrivate * priv;
};

struct _ScratchFolderManagerFolderItemClass {
	ScratchFolderManagerItemClass parent_class;
};

struct _ScratchFolderManagerProjectFolderItem {
	ScratchFolderManagerFolderItem parent_instance;
	ScratchFolderManagerProjectFolderItemPrivate * priv;
};

struct _ScratchFolderManagerProjectFolderItemClass {
	ScratchFolderManagerFolderItemClass parent_class;
};

struct _ScratchCommentToggler {
	GTypeInstance parent_instance;
	volatile int ref_count;
	ScratchCommentTogglerPrivate * priv;
};

struct _ScratchCommentTogglerClass {
	GTypeClass parent_class;
	void (*finalize) (ScratchCommentToggler *self);
};

struct _ScratchServicesDocument {
	GraniteWidgetsTab parent_instance;
	ScratchServicesDocumentPrivate * priv;
	GtkStack* main_stack;
	ScratchWidgetsSourceView* source_view;
	gchar* original_content;
	gboolean saved;
};

struct _ScratchServicesDocumentClass {
	GraniteWidgetsTabClass parent_class;
};

struct _ScratchServicesDocumentManager {
	GObject parent_instance;
	ScratchServicesDocumentManagerPrivate * priv;
};

struct _ScratchServicesDocumentManagerClass {
	GObjectClass parent_class;
};

struct _ScratchServicesFileHandler {
	GObject parent_instance;
	ScratchServicesFileHandlerPrivate * priv;
};

struct _ScratchServicesFileHandlerClass {
	GObjectClass parent_class;
};

struct _ScratchServicesGitManager {
	GObject parent_instance;
	ScratchServicesGitManagerPrivate * priv;
};

struct _ScratchServicesGitManagerClass {
	GObjectClass parent_class;
};

struct _ScratchServicesMonitoredRepository {
	GObject parent_instance;
	ScratchServicesMonitoredRepositoryPrivate * priv;
};

struct _ScratchServicesMonitoredRepositoryClass {
	GObjectClass parent_class;
};

struct _ScratchServicesInterface {
	GObject parent_instance;
	ScratchServicesInterfacePrivate * priv;
	ScratchServicesPluginsManager* manager;
};

struct _ScratchServicesInterfaceClass {
	GObjectClass parent_class;
};

struct _ScratchServicesPluginsManager {
	GObject parent_instance;
	ScratchServicesPluginsManagerPrivate * priv;
	ScratchMainWindow* window;
};

struct _ScratchServicesPluginsManagerClass {
	GObjectClass parent_class;
};

struct _ScratchTemplate {
	GObject parent_instance;
	ScratchTemplatePrivate * priv;
};

struct _ScratchTemplateClass {
	GObjectClass parent_class;
	GtkWidget* (*get_creation_box) (ScratchTemplate* self);
};

struct _ScratchTestTemplate {
	ScratchTemplate parent_instance;
	ScratchTestTemplatePrivate * priv;
};

struct _ScratchTestTemplateClass {
	ScratchTemplateClass parent_class;
};

struct _TemplateButton {
	GtkButton parent_instance;
	TemplateButtonPrivate * priv;
};

struct _TemplateButtonClass {
	GtkButtonClass parent_class;
};

struct _ScratchTemplateManager {
	GObject parent_instance;
	ScratchTemplateManagerPrivate * priv;
	gboolean template_available;
};

struct _ScratchTemplateManagerClass {
	GObjectClass parent_class;
};

struct _CodeChooseProjectButton {
	GtkMenuButton parent_instance;
	CodeChooseProjectButtonPrivate * priv;
};

struct _CodeChooseProjectButtonClass {
	GtkMenuButtonClass parent_class;
};

struct _CodeChooseProjectButtonProjectRow {
	GtkListBoxRow parent_instance;
	CodeChooseProjectButtonProjectRowPrivate * priv;
};

struct _CodeChooseProjectButtonProjectRowClass {
	GtkListBoxRowClass parent_class;
};

struct _ScratchWidgetsDocumentView {
	GraniteWidgetsDynamicNotebook parent_instance;
	ScratchWidgetsDocumentViewPrivate * priv;
	GList* docs;
	gboolean is_closing;
};

struct _ScratchWidgetsDocumentViewClass {
	GraniteWidgetsDynamicNotebookClass parent_class;
};

struct _CodeFormatBar {
	GtkBox parent_instance;
	CodeFormatBarPrivate * priv;
};

struct _CodeFormatBarClass {
	GtkBoxClass parent_class;
};

struct _CodeFormatBarFormatButton {
	GtkMenuButton parent_instance;
	CodeFormatBarFormatButtonPrivate * priv;
};

struct _CodeFormatBarFormatButtonClass {
	GtkMenuButtonClass parent_class;
};

struct _CodeFormatBarLangEntry {
	GtkListBoxRow parent_instance;
	CodeFormatBarLangEntryPrivate * priv;
};

struct _CodeFormatBarLangEntryClass {
	GtkListBoxRowClass parent_class;
};

struct _ScratchWidgetsSourceGutterRenderer {
	GtkSourceGutterRenderer parent_instance;
	ScratchWidgetsSourceGutterRendererPrivate * priv;
	GeeHashMap* line_status_map;
	GeeHashMap* status_color_map;
};

struct _ScratchWidgetsSourceGutterRendererClass {
	GtkSourceGutterRendererClass parent_class;
};

struct _ScratchHeaderBar {
	HdyHeaderBar parent_instance;
	ScratchHeaderBarPrivate * priv;
	CodeFormatBar* format_bar;
	GtkMenu* share_menu;
	GtkMenuButton* share_app_menu;
};

struct _ScratchHeaderBarClass {
	HdyHeaderBarClass parent_class;
};

struct _CodeSidebar {
	GtkGrid parent_instance;
	CodeSidebarPrivate * priv;
};

struct _CodeSidebarClass {
	GtkGridClass parent_class;
};

struct _ScratchWidgetsSearchBar {
	GtkFlowBox parent_instance;
	ScratchWidgetsSearchBarPrivate * priv;
	GtkSearchEntry* search_entry;
	GtkSearchEntry* replace_entry;
};

struct _ScratchWidgetsSearchBarClass {
	GtkFlowBoxClass parent_class;
};

struct _ScratchWidgetsSourceView {
	GtkSourceView parent_instance;
	ScratchWidgetsSourceViewPrivate * priv;
	GtkSourceLanguageManager* manager;
	GtkSourceStyleSchemeManager* style_scheme_manager;
	GtkCssProvider* font_css_provider;
	GtkTextTag* warning_tag;
	GtkTextTag* error_tag;
};

struct _ScratchWidgetsSourceViewClass {
	GtkSourceViewClass parent_class;
};

struct _CodeTerminal {
	GtkBox parent_instance;
	CodeTerminalPrivate * priv;
};

struct _CodeTerminalClass {
	GtkBoxClass parent_class;
};

struct _CodeWelcomeView {
	GraniteWidgetsWelcome parent_instance;
	CodeWelcomeViewPrivate * priv;
};

struct _CodeWelcomeViewClass {
	GraniteWidgetsWelcomeClass parent_class;
};

struct _ScratchServicesSymbolOutline {
	GObject parent_instance;
	ScratchServicesSymbolOutlinePrivate * priv;
	GraniteWidgetsSourceList* store;
	GraniteWidgetsSourceListExpandableItem* root;
	GtkCssProvider* source_list_style_provider;
};

struct _ScratchServicesSymbolOutlineClass {
	GObjectClass parent_class;
	void (*parse_symbols) (ScratchServicesSymbolOutline* self);
};

struct _ScratchServicesValaSymbolItem {
	GraniteWidgetsSourceListExpandableItem parent_instance;
	ScratchServicesValaSymbolItemPrivate * priv;
};

struct _ScratchServicesValaSymbolItemClass {
	GraniteWidgetsSourceListExpandableItemClass parent_class;
};

struct _ScratchServicesValaSymbolOutline {
	ScratchServicesSymbolOutline parent_instance;
	ScratchServicesValaSymbolOutlinePrivate * priv;
};

struct _ScratchServicesValaSymbolOutlineClass {
	ScratchServicesSymbolOutlineClass parent_class;
};

struct _Report {
	ValaReport parent_instance;
	ReportPrivate * priv;
};

struct _ReportClass {
	ValaReportClass parent_class;
};

struct _CodePluginsValaSymbolResolver {
	ValaSymbolResolver parent_instance;
	CodePluginsValaSymbolResolverPrivate * priv;
};

struct _CodePluginsValaSymbolResolverClass {
	ValaSymbolResolverClass parent_class;
};

struct _ScratchServicesCtagsSymbol {
	GraniteWidgetsSourceListExpandableItem parent_instance;
	ScratchServicesCtagsSymbolPrivate * priv;
};

struct _ScratchServicesCtagsSymbolClass {
	GraniteWidgetsSourceListExpandableItemClass parent_class;
};

struct _ScratchServicesCtagsSymbolIter {
	GObject parent_instance;
	ScratchServicesCtagsSymbolIterPrivate * priv;
};

struct _ScratchServicesCtagsSymbolIterClass {
	GObjectClass parent_class;
};

struct _ScratchServicesCtagsSymbolOutline {
	ScratchServicesSymbolOutline parent_instance;
	ScratchServicesCtagsSymbolOutlinePrivate * priv;
};

struct _ScratchServicesCtagsSymbolOutlineClass {
	ScratchServicesSymbolOutlineClass parent_class;
};

VALA_EXTERN GSettings* scratch_saved_state;
VALA_EXTERN GSettings* scratch_settings;
VALA_EXTERN GSettings* scratch_service_settings;
VALA_EXTERN GSettings* scratch_privacy_settings;
VALA_EXTERN GType scratch_application_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchApplication, g_object_unref)
VALA_EXTERN GType scratch_main_window_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchMainWindow, g_object_unref)
VALA_EXTERN ScratchMainWindow* scratch_application_get_last_window (ScratchApplication* self);
static gint scratch_application_main (gchar** args,
                               gint args_length1);
VALA_EXTERN ScratchApplication* scratch_application_new (void);
VALA_EXTERN ScratchApplication* scratch_application_construct (GType object_type);
VALA_EXTERN const gchar* scratch_application_get_data_home_folder_unsaved (ScratchApplication* self);
VALA_EXTERN const gchar* scratch_application_get_default_font (ScratchApplication* self);
VALA_EXTERN void scratch_application_set_default_font (ScratchApplication* self,
                                           const gchar* value);
VALA_EXTERN GType scratch_widgets_document_view_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchWidgetsDocumentView, g_object_unref)
VALA_EXTERN GType scratch_header_bar_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchHeaderBar, g_object_unref)
VALA_EXTERN GType scratch_widgets_search_bar_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchWidgetsSearchBar, g_object_unref)
VALA_EXTERN GType code_sidebar_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (CodeSidebar, g_object_unref)
VALA_EXTERN GeeMultiMap* scratch_main_window_action_accelerators;
VALA_EXTERN ScratchMainWindow* scratch_main_window_new (gboolean restore_docs);
VALA_EXTERN ScratchMainWindow* scratch_main_window_construct (GType object_type,
                                                  gboolean restore_docs);
VALA_EXTERN GType scratch_services_document_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchServicesDocument, g_object_unref)
VALA_EXTERN ScratchServicesDocument* scratch_main_window_get_current_document (ScratchMainWindow* self);
VALA_EXTERN ScratchServicesDocument* scratch_main_window_get_focused_document (ScratchMainWindow* self);
VALA_EXTERN void scratch_main_window_open_folder (ScratchMainWindow* self,
                                      GFile* folder);
VALA_EXTERN void scratch_main_window_open_document (ScratchMainWindow* self,
                                        ScratchServicesDocument* doc,
                                        gboolean focus,
                                        gint cursor_position);
VALA_EXTERN void scratch_main_window_close_document (ScratchMainWindow* self,
                                         ScratchServicesDocument* doc);
VALA_EXTERN gboolean scratch_main_window_quit_source_func (ScratchMainWindow* self);
VALA_EXTERN void scratch_main_window_set_default_zoom (ScratchMainWindow* self);
VALA_EXTERN void scratch_main_window_action_zoom_in (ScratchMainWindow* self);
VALA_EXTERN void scratch_main_window_action_zoom_out (ScratchMainWindow* self);
VALA_EXTERN gchar* scratch_main_window_get_current_font (ScratchMainWindow* self);
VALA_EXTERN gdouble scratch_main_window_get_current_font_size (ScratchMainWindow* self);
VALA_EXTERN gchar* scratch_main_window_get_default_font (ScratchMainWindow* self);
VALA_EXTERN gdouble scratch_main_window_get_default_font_size (ScratchMainWindow* self);
VALA_EXTERN ScratchApplication* scratch_main_window_get_app (ScratchMainWindow* self);
VALA_EXTERN gboolean scratch_main_window_get_restore_docs (ScratchMainWindow* self);
VALA_EXTERN GSimpleActionGroup* scratch_main_window_get_actions (ScratchMainWindow* self);
VALA_EXTERN gchar* scratch_utils_last_path;
VALA_EXTERN GSimpleAction* scratch_utils_action_from_group (const gchar* action_name,
                                                GSimpleActionGroup* action_group);
VALA_EXTERN gchar* scratch_utils_pango_font_description_to_css (PangoFontDescription* font_descr);
VALA_EXTERN gchar* scratch_utils_replace_home_with_tilde (const gchar* path);
VALA_EXTERN gboolean scratch_utils_find_unique_path (GFile* f1,
                                         GFile* f2,
                                         gchar** path1,
                                         gchar** path2);
VALA_EXTERN GType scratch_dialogs_preferences_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchDialogsPreferences, g_object_unref)
VALA_EXTERN GType scratch_services_plugins_manager_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchServicesPluginsManager, g_object_unref)
VALA_EXTERN ScratchDialogsPreferences* scratch_dialogs_preferences_new (GtkWindow* parent,
                                                            ScratchServicesPluginsManager* plugins);
VALA_EXTERN ScratchDialogsPreferences* scratch_dialogs_preferences_construct (GType object_type,
                                                                  GtkWindow* parent,
                                                                  ScratchServicesPluginsManager* plugins);
VALA_EXTERN GType scratch_dialogs_restore_confirmation_dialog_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchDialogsRestoreConfirmationDialog, g_object_unref)
VALA_EXTERN ScratchDialogsRestoreConfirmationDialog* scratch_dialogs_restore_confirmation_dialog_new (ScratchMainWindow* parent);
VALA_EXTERN ScratchDialogsRestoreConfirmationDialog* scratch_dialogs_restore_confirmation_dialog_construct (GType object_type,
                                                                                                ScratchMainWindow* parent);
VALA_EXTERN GType scratch_dialogs_global_search_dialog_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchDialogsGlobalSearchDialog, g_object_unref)
VALA_EXTERN ScratchDialogsGlobalSearchDialog* scratch_dialogs_global_search_dialog_new (const gchar* folder_name,
                                                                            gboolean is_repo);
VALA_EXTERN ScratchDialogsGlobalSearchDialog* scratch_dialogs_global_search_dialog_construct (GType object_type,
                                                                                  const gchar* folder_name,
                                                                                  gboolean is_repo);
VALA_EXTERN const gchar* scratch_dialogs_global_search_dialog_get_folder_name (ScratchDialogsGlobalSearchDialog* self);
VALA_EXTERN gboolean scratch_dialogs_global_search_dialog_get_is_repo (ScratchDialogsGlobalSearchDialog* self);
VALA_EXTERN const gchar* scratch_dialogs_global_search_dialog_get_search_term (ScratchDialogsGlobalSearchDialog* self);
VALA_EXTERN void scratch_dialogs_global_search_dialog_set_search_term (ScratchDialogsGlobalSearchDialog* self,
                                                           const gchar* value);
VALA_EXTERN gboolean scratch_dialogs_global_search_dialog_get_use_regex (ScratchDialogsGlobalSearchDialog* self);
VALA_EXTERN void scratch_dialogs_global_search_dialog_set_use_regex (ScratchDialogsGlobalSearchDialog* self,
                                                         gboolean value);
VALA_EXTERN gboolean scratch_dialogs_global_search_dialog_get_case_sensitive (ScratchDialogsGlobalSearchDialog* self);
VALA_EXTERN void scratch_dialogs_global_search_dialog_set_case_sensitive (ScratchDialogsGlobalSearchDialog* self,
                                                              gboolean value);
VALA_EXTERN GType scratch_dialogs_new_branch_dialog_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchDialogsNewBranchDialog, g_object_unref)
VALA_EXTERN GType scratch_folder_manager_item_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchFolderManagerItem, g_object_unref)
VALA_EXTERN GType scratch_folder_manager_folder_item_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchFolderManagerFolderItem, g_object_unref)
VALA_EXTERN GType scratch_folder_manager_project_folder_item_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchFolderManagerProjectFolderItem, g_object_unref)
VALA_EXTERN ScratchDialogsNewBranchDialog* scratch_dialogs_new_branch_dialog_new (ScratchFolderManagerProjectFolderItem* project);
VALA_EXTERN ScratchDialogsNewBranchDialog* scratch_dialogs_new_branch_dialog_construct (GType object_type,
                                                                            ScratchFolderManagerProjectFolderItem* project);
VALA_EXTERN ScratchFolderManagerProjectFolderItem* scratch_dialogs_new_branch_dialog_get_active_project (ScratchDialogsNewBranchDialog* self);
VALA_EXTERN const gchar* scratch_dialogs_new_branch_dialog_get_new_branch_name (ScratchDialogsNewBranchDialog* self);
VALA_EXTERN GType contract_menu_item_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ContractMenuItem, g_object_unref)
VALA_EXTERN ContractMenuItem* contract_menu_item_new (GraniteServicesContract* contract,
                                          GFile* file);
VALA_EXTERN ContractMenuItem* contract_menu_item_construct (GType object_type,
                                                GraniteServicesContract* contract,
                                                GFile* file);
VALA_EXTERN GType scratch_folder_manager_file_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchFolderManagerFile, g_object_unref)
VALA_EXTERN ScratchFolderManagerFile* scratch_folder_manager_file_new (const gchar* path);
VALA_EXTERN ScratchFolderManagerFile* scratch_folder_manager_file_construct (GType object_type,
                                                                 const gchar* path);
VALA_EXTERN gboolean scratch_folder_manager_file_is_valid_directory (ScratchFolderManagerFile* self,
                                                         gboolean allow_hidden);
VALA_EXTERN void scratch_folder_manager_file_rename (ScratchFolderManagerFile* self,
                                         const gchar* name);
VALA_EXTERN void scratch_folder_manager_file_trash (ScratchFolderManagerFile* self);
VALA_EXTERN gint scratch_folder_manager_file_compare (ScratchFolderManagerFile* a,
                                          ScratchFolderManagerFile* b);
VALA_EXTERN void scratch_folder_manager_file_invalidate_cache (ScratchFolderManagerFile* self);
VALA_EXTERN GFile* scratch_folder_manager_file_get_file (ScratchFolderManagerFile* self);
VALA_EXTERN gchar* scratch_folder_manager_file_get_path (ScratchFolderManagerFile* self);
VALA_EXTERN void scratch_folder_manager_file_set_path (ScratchFolderManagerFile* self,
                                           const gchar* value);
VALA_EXTERN const gchar* scratch_folder_manager_file_get_name (ScratchFolderManagerFile* self);
VALA_EXTERN GIcon* scratch_folder_manager_file_get_icon (ScratchFolderManagerFile* self);
VALA_EXTERN gboolean scratch_folder_manager_file_get_exists (ScratchFolderManagerFile* self);
VALA_EXTERN gboolean scratch_folder_manager_file_get_is_temporary (ScratchFolderManagerFile* self);
VALA_EXTERN gboolean scratch_folder_manager_file_get_is_valid_textfile (ScratchFolderManagerFile* self);
VALA_EXTERN gboolean scratch_folder_manager_file_get_is_executable (ScratchFolderManagerFile* self);
VALA_EXTERN GeeCollection* scratch_folder_manager_file_get_children (ScratchFolderManagerFile* self);
VALA_EXTERN GType scratch_folder_manager_file_item_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchFolderManagerFileItem, g_object_unref)
VALA_EXTERN GType scratch_folder_manager_file_view_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchFolderManagerFileView, g_object_unref)
VALA_EXTERN ScratchFolderManagerFileItem* scratch_folder_manager_file_item_new (ScratchFolderManagerFile* file,
                                                                    ScratchFolderManagerFileView* view);
VALA_EXTERN ScratchFolderManagerFileItem* scratch_folder_manager_file_item_construct (GType object_type,
                                                                          ScratchFolderManagerFile* file,
                                                                          ScratchFolderManagerFileView* view);
VALA_EXTERN GType code_pane_switcher_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (CodePaneSwitcher, g_object_unref)
VALA_EXTERN void scratch_folder_manager_file_view_restore_saved_state (ScratchFolderManagerFileView* self);
VALA_EXTERN void scratch_folder_manager_file_view_open_folder (ScratchFolderManagerFileView* self,
                                                   ScratchFolderManagerFile* folder);
VALA_EXTERN void scratch_folder_manager_file_view_collapse_all (ScratchFolderManagerFileView* self);
VALA_EXTERN void scratch_folder_manager_file_view_order_folders (ScratchFolderManagerFileView* self);
VALA_EXTERN void scratch_folder_manager_file_view_select_path (ScratchFolderManagerFileView* self,
                                                   const gchar* path);
VALA_EXTERN void scratch_folder_manager_file_view_collapse_other_projects (ScratchFolderManagerFileView* self,
                                                               const gchar* keep_open_path);
VALA_EXTERN ScratchFolderManagerProjectFolderItem* scratch_folder_manager_file_view_get_project_for_file (ScratchFolderManagerFileView* self,
                                                                                              GFile* file);
VALA_EXTERN GraniteWidgetsSourceListItem* scratch_folder_manager_file_view_expand_to_path (ScratchFolderManagerFileView* self,
                                                                               const gchar* path);
VALA_EXTERN void scratch_folder_manager_file_view_search_global (ScratchFolderManagerFileView* self,
                                                     const gchar* path,
                                                     const gchar* term);
VALA_EXTERN void scratch_folder_manager_file_view_clear_badges (ScratchFolderManagerFileView* self);
VALA_EXTERN void scratch_folder_manager_file_view_new_branch (ScratchFolderManagerFileView* self,
                                                  const gchar* active_project_path);
VALA_EXTERN ScratchFolderManagerFileView* scratch_folder_manager_file_view_new (void);
VALA_EXTERN ScratchFolderManagerFileView* scratch_folder_manager_file_view_construct (GType object_type);
VALA_EXTERN gboolean scratch_folder_manager_file_view_get_ignore_next_select (ScratchFolderManagerFileView* self);
VALA_EXTERN void scratch_folder_manager_file_view_set_ignore_next_select (ScratchFolderManagerFileView* self,
                                                              gboolean value);
VALA_EXTERN const gchar* scratch_folder_manager_file_view_get_active_project_path (ScratchFolderManagerFileView* self);
VALA_EXTERN ScratchFolderManagerFolderItem* scratch_folder_manager_folder_item_new (ScratchFolderManagerFile* file,
                                                                        ScratchFolderManagerFileView* view);
VALA_EXTERN ScratchFolderManagerFolderItem* scratch_folder_manager_folder_item_construct (GType object_type,
                                                                              ScratchFolderManagerFile* file,
                                                                              ScratchFolderManagerFileView* view);
VALA_EXTERN GtkMenuItem* scratch_folder_manager_folder_item_create_submenu_for_open_in (ScratchFolderManagerFolderItem* self,
                                                                            GFileInfo* info,
                                                                            const gchar* file_type);
VALA_EXTERN GtkMenuItem* scratch_folder_manager_folder_item_create_submenu_for_new (ScratchFolderManagerFolderItem* self);
VALA_EXTERN void scratch_folder_manager_folder_item_remove_all_badges (ScratchFolderManagerFolderItem* self);
VALA_EXTERN void scratch_folder_manager_folder_item_add (ScratchFolderManagerFolderItem* self,
                                             GraniteWidgetsSourceListItem* item);
VALA_EXTERN void scratch_folder_manager_folder_item_remove (ScratchFolderManagerFolderItem* self,
                                                GraniteWidgetsSourceListItem* item);
VALA_EXTERN void scratch_folder_manager_folder_item_clear (ScratchFolderManagerFolderItem* self);
VALA_EXTERN void scratch_folder_manager_item_rename (ScratchFolderManagerItem* self,
                                         const gchar* new_name);
VALA_EXTERN void scratch_folder_manager_item_trash (ScratchFolderManagerItem* self);
VALA_EXTERN void scratch_folder_manager_item_show_app_chooser (ScratchFolderManagerItem* self,
                                                   ScratchFolderManagerFile* file);
VALA_EXTERN void scratch_folder_manager_item_launch_app_with_file (ScratchFolderManagerItem* self,
                                                       GAppInfo* app_info,
                                                       GFile* file);
VALA_EXTERN ScratchFolderManagerProjectFolderItem* scratch_folder_manager_item_get_root_folder (ScratchFolderManagerItem* self,
                                                                                    GraniteWidgetsSourceListExpandableItem* start);
VALA_EXTERN ScratchFolderManagerItem* scratch_folder_manager_item_construct (GType object_type);
VALA_EXTERN ScratchFolderManagerFile* scratch_folder_manager_item_get_file (ScratchFolderManagerItem* self);
VALA_EXTERN ScratchFolderManagerFileView* scratch_folder_manager_item_get_view (ScratchFolderManagerItem* self);
VALA_EXTERN gchar* scratch_folder_manager_item_get_path (ScratchFolderManagerItem* self);
VALA_EXTERN void scratch_folder_manager_item_set_path (ScratchFolderManagerItem* self,
                                           const gchar* value);
VALA_EXTERN ScratchFolderManagerProjectFolderItem* scratch_folder_manager_project_folder_item_new (ScratchFolderManagerFile* file,
                                                                                       ScratchFolderManagerFileView* view);
VALA_EXTERN ScratchFolderManagerProjectFolderItem* scratch_folder_manager_project_folder_item_construct (GType object_type,
                                                                                             ScratchFolderManagerFile* file,
                                                                                             ScratchFolderManagerFileView* view);
VALA_EXTERN void scratch_folder_manager_project_folder_item_child_folder_changed (ScratchFolderManagerProjectFolderItem* self,
                                                                      ScratchFolderManagerFolderItem* folder);
VALA_EXTERN void scratch_folder_manager_project_folder_item_child_folder_loaded (ScratchFolderManagerProjectFolderItem* self,
                                                                     ScratchFolderManagerFolderItem* folder);
VALA_EXTERN void scratch_folder_manager_project_folder_item_update_item_status (ScratchFolderManagerProjectFolderItem* self,
                                                                    ScratchFolderManagerFolderItem* start_folder);
VALA_EXTERN gboolean scratch_folder_manager_project_folder_item_contains_file (ScratchFolderManagerProjectFolderItem* self,
                                                                   GFile* descendant);
VALA_EXTERN void scratch_folder_manager_project_folder_item_new_branch (ScratchFolderManagerProjectFolderItem* self,
                                                            const gchar* branch_name);
VALA_EXTERN GList* scratch_folder_manager_project_folder_item_get_branch_names (ScratchFolderManagerProjectFolderItem* self);
VALA_EXTERN gboolean scratch_folder_manager_project_folder_item_has_local_branch_name (ScratchFolderManagerProjectFolderItem* self,
                                                                           const gchar* name);
VALA_EXTERN gchar* scratch_folder_manager_project_folder_item_get_current_branch_name (ScratchFolderManagerProjectFolderItem* self);
VALA_EXTERN gboolean scratch_folder_manager_project_folder_item_is_valid_new_branch_name (ScratchFolderManagerProjectFolderItem* self,
                                                                              const gchar* new_name);
VALA_EXTERN void scratch_folder_manager_project_folder_item_global_search (ScratchFolderManagerProjectFolderItem* self,
                                                               GFile* start_folder,
                                                               const gchar* term);
VALA_EXTERN GType scratch_services_vc_status_get_type (void) G_GNUC_CONST ;
VALA_EXTERN void scratch_folder_manager_project_folder_item_refresh_diff (ScratchFolderManagerProjectFolderItem* self,
                                                              GeeHashMap** line_status_map,
                                                              const gchar* doc_path);
VALA_EXTERN GType scratch_services_monitored_repository_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchServicesMonitoredRepository, g_object_unref)
VALA_EXTERN ScratchServicesMonitoredRepository* scratch_folder_manager_project_folder_item_get_monitored_repo (ScratchFolderManagerProjectFolderItem* self);
VALA_EXTERN gboolean scratch_folder_manager_project_folder_item_get_is_git_repo (ScratchFolderManagerProjectFolderItem* self);
VALA_EXTERN gpointer scratch_comment_toggler_ref (gpointer instance);
VALA_EXTERN void scratch_comment_toggler_unref (gpointer instance);
VALA_EXTERN GParamSpec* scratch_param_spec_comment_toggler (const gchar* name,
                                                const gchar* nick,
                                                const gchar* blurb,
                                                GType object_type,
                                                GParamFlags flags);
VALA_EXTERN void scratch_value_set_comment_toggler (GValue* value,
                                        gpointer v_object);
VALA_EXTERN void scratch_value_take_comment_toggler (GValue* value,
                                         gpointer v_object);
VALA_EXTERN gpointer scratch_value_get_comment_toggler (const GValue* value);
VALA_EXTERN GType scratch_comment_toggler_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchCommentToggler, scratch_comment_toggler_unref)
VALA_EXTERN gboolean scratch_comment_toggler_language_has_comments (GtkSourceLanguage* lang);
VALA_EXTERN void scratch_comment_toggler_toggle_comment (GtkSourceBuffer* buffer);
VALA_EXTERN ScratchCommentToggler* scratch_comment_toggler_new (void);
VALA_EXTERN ScratchCommentToggler* scratch_comment_toggler_construct (GType object_type);
VALA_EXTERN GType scratch_services_document_states_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GType scratch_widgets_source_view_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchWidgetsSourceView, g_object_unref)
VALA_EXTERN ScratchServicesDocument* scratch_services_document_new (GSimpleActionGroup* actions,
                                                        GFile* file);
VALA_EXTERN ScratchServicesDocument* scratch_services_document_construct (GType object_type,
                                                              GSimpleActionGroup* actions,
                                                              GFile* file);
VALA_EXTERN void scratch_services_document_toggle_changed_handlers (ScratchServicesDocument* self,
                                                        gboolean enabled);
VALA_EXTERN void scratch_services_document_open (ScratchServicesDocument* self,
                                     gboolean force,
                                     GAsyncReadyCallback _callback_,
                                     gpointer _user_data_);
VALA_EXTERN void scratch_services_document_open_finish (ScratchServicesDocument* self,
                                            GAsyncResult* _res_);
VALA_EXTERN void scratch_services_document_do_close (ScratchServicesDocument* self,
                                         gboolean app_closing,
                                         GAsyncReadyCallback _callback_,
                                         gpointer _user_data_);
VALA_EXTERN gboolean scratch_services_document_do_close_finish (ScratchServicesDocument* self,
                                                    GAsyncResult* _res_);
VALA_EXTERN void scratch_services_document_save_request (ScratchServicesDocument* self);
VALA_EXTERN void scratch_services_document_save_with_hold (ScratchServicesDocument* self,
                                               gboolean force,
                                               gboolean saving_as,
                                               GAsyncReadyCallback _callback_,
                                               gpointer _user_data_);
VALA_EXTERN gboolean scratch_services_document_save_with_hold_finish (ScratchServicesDocument* self,
                                                          GAsyncResult* _res_);
VALA_EXTERN void scratch_services_document_save_as_with_hold (ScratchServicesDocument* self,
                                                  GAsyncReadyCallback _callback_,
                                                  gpointer _user_data_);
VALA_EXTERN gboolean scratch_services_document_save_as_with_hold_finish (ScratchServicesDocument* self,
                                                             GAsyncResult* _res_);
VALA_EXTERN gboolean scratch_services_document_move (ScratchServicesDocument* self,
                                         GFile* new_dest);
VALA_EXTERN void scratch_services_document_focus (ScratchServicesDocument* self);
VALA_EXTERN gchar* scratch_services_document_get_uri (ScratchServicesDocument* self);
VALA_EXTERN gchar* scratch_services_document_get_basename (ScratchServicesDocument* self);
VALA_EXTERN gchar* scratch_services_document_get_directory (ScratchServicesDocument* self);
VALA_EXTERN gchar* scratch_services_document_get_tab_tooltip (ScratchServicesDocument* self);
VALA_EXTERN void scratch_services_document_undo (ScratchServicesDocument* self);
VALA_EXTERN void scratch_services_document_redo (ScratchServicesDocument* self);
VALA_EXTERN void scratch_services_document_revert (ScratchServicesDocument* self);
VALA_EXTERN gchar* scratch_services_document_get_text (ScratchServicesDocument* self);
VALA_EXTERN gchar* scratch_services_document_get_selected_text (ScratchServicesDocument* self,
                                                    gboolean replace_newline);
VALA_EXTERN gchar* scratch_services_document_get_language_name (ScratchServicesDocument* self);
VALA_EXTERN gchar* scratch_services_document_get_language_id (ScratchServicesDocument* self);
VALA_EXTERN void scratch_services_document_duplicate_selection (ScratchServicesDocument* self);
VALA_EXTERN void scratch_services_document_check_undoable_actions (ScratchServicesDocument* self);
VALA_EXTERN void scratch_services_document_set_saved_status (ScratchServicesDocument* self,
                                                 gboolean val);
VALA_EXTERN gboolean scratch_services_document_can_write (ScratchServicesDocument* self);
VALA_EXTERN gboolean scratch_services_document_exists (ScratchServicesDocument* self,
                                           GCancellable* cancellable);
VALA_EXTERN void scratch_services_document_show_outline (ScratchServicesDocument* self,
                                             gboolean show);
VALA_EXTERN void scratch_services_document_goto (ScratchServicesDocument* self,
                                     gint line);
VALA_EXTERN GSimpleActionGroup* scratch_services_document_get_actions (ScratchServicesDocument* self);
VALA_EXTERN void scratch_services_document_set_actions (ScratchServicesDocument* self,
                                            GSimpleActionGroup* value);
VALA_EXTERN gboolean scratch_services_document_get_is_file_temporary (ScratchServicesDocument* self);
VALA_EXTERN GFile* scratch_services_document_get_file (ScratchServicesDocument* self);
VALA_EXTERN void scratch_services_document_set_tab_name (ScratchServicesDocument* self,
                                             const gchar* value);
VALA_EXTERN const gchar* scratch_services_document_get_mime_type (ScratchServicesDocument* self);
VALA_EXTERN gboolean scratch_services_document_get_locked (ScratchServicesDocument* self);
VALA_EXTERN void scratch_services_document_set_locked (ScratchServicesDocument* self,
                                           gboolean value);
VALA_EXTERN GType scratch_services_document_manager_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchServicesDocumentManager, g_object_unref)
VALA_EXTERN ScratchServicesDocumentManager* scratch_services_document_manager_get_instance (void);
VALA_EXTERN void scratch_services_document_manager_make_restorable (ScratchServicesDocumentManager* self,
                                                        ScratchServicesDocument* doc);
VALA_EXTERN void scratch_services_document_manager_add_open_document (ScratchServicesDocumentManager* self,
                                                          ScratchServicesDocument* doc);
VALA_EXTERN void scratch_services_document_manager_remove_open_document (ScratchServicesDocumentManager* self,
                                                             ScratchServicesDocument* doc);
VALA_EXTERN void scratch_services_document_manager_remove_project (ScratchServicesDocumentManager* self,
                                                       const gchar* project_path);
VALA_EXTERN GeeCollection* scratch_services_document_manager_take_restorable_paths (ScratchServicesDocumentManager* self,
                                                                        const gchar* project_path);
VALA_EXTERN guint scratch_services_document_manager_restorable_for_project (ScratchServicesDocumentManager* self,
                                                                const gchar* project_path);
VALA_EXTERN guint scratch_services_document_manager_open_for_project (ScratchServicesDocumentManager* self,
                                                          const gchar* project_path);
VALA_EXTERN ScratchServicesDocumentManager* scratch_services_document_manager_new (void);
VALA_EXTERN ScratchServicesDocumentManager* scratch_services_document_manager_construct (GType object_type);
VALA_EXTERN GType scratch_services_file_option_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GType scratch_services_file_handler_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchServicesFileHandler, g_object_unref)
VALA_EXTERN gboolean scratch_services_file_handler_can_open_file (GFile* file,
                                                      gboolean* is_folder);
VALA_EXTERN void scratch_services_file_handler_load_content_from_file (GFile* file,
                                                           GAsyncReadyCallback _callback_,
                                                           gpointer _user_data_);
VALA_EXTERN gchar* scratch_services_file_handler_load_content_from_file_finish (GAsyncResult* _res_);
VALA_EXTERN gchar* scratch_services_file_handler_load_content_from_file_sync (GFile* file);
VALA_EXTERN gboolean scratch_services_file_handler_move (const gchar* path,
                                             const gchar* new_path);
VALA_EXTERN gboolean scratch_services_file_handler_move_uri (const gchar* uri,
                                                 const gchar* new_uri);
VALA_EXTERN gboolean scratch_services_file_handler_copy (const gchar* path,
                                             const gchar* new_path);
VALA_EXTERN ScratchServicesFileHandler* scratch_services_file_handler_new (void);
VALA_EXTERN ScratchServicesFileHandler* scratch_services_file_handler_construct (GType object_type);
VALA_EXTERN GType scratch_services_git_manager_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchServicesGitManager, g_object_unref)
VALA_EXTERN ScratchServicesGitManager* scratch_services_git_manager_get_instance (void);
VALA_EXTERN ScratchServicesMonitoredRepository* scratch_services_git_manager_add_project (ScratchServicesGitManager* self,
                                                                              ScratchFolderManagerProjectFolderItem* root_folder);
VALA_EXTERN void scratch_services_git_manager_remove_project (ScratchServicesGitManager* self,
                                                  ScratchFolderManagerProjectFolderItem* root_folder);
VALA_EXTERN GListStore* scratch_services_git_manager_get_project_liststore (ScratchServicesGitManager* self);
VALA_EXTERN const gchar* scratch_services_git_manager_get_active_project_path (ScratchServicesGitManager* self);
VALA_EXTERN void scratch_services_git_manager_set_active_project_path (ScratchServicesGitManager* self,
                                                           const gchar* value);
VALA_EXTERN ScratchServicesMonitoredRepository* scratch_services_monitored_repository_new (GgitRepository* _git_repo);
VALA_EXTERN ScratchServicesMonitoredRepository* scratch_services_monitored_repository_construct (GType object_type,
                                                                                     GgitRepository* _git_repo);
VALA_EXTERN const gchar* scratch_services_monitored_repository_get_current_branch (ScratchServicesMonitoredRepository* self);
VALA_EXTERN GList* scratch_services_monitored_repository_get_local_branches (ScratchServicesMonitoredRepository* self);
VALA_EXTERN gboolean scratch_services_monitored_repository_has_local_branch_name (ScratchServicesMonitoredRepository* self,
                                                                      const gchar* name);
VALA_EXTERN gboolean scratch_services_monitored_repository_is_valid_new_local_branch_name (ScratchServicesMonitoredRepository* self,
                                                                               const gchar* new_name);
VALA_EXTERN void scratch_services_monitored_repository_change_branch (ScratchServicesMonitoredRepository* self,
                                                          const gchar* new_branch_name,
                                                          GError** error);
VALA_EXTERN void scratch_services_monitored_repository_create_new_branch (ScratchServicesMonitoredRepository* self,
                                                              const gchar* name,
                                                              GError** error);
VALA_EXTERN void scratch_services_monitored_repository_update_status_map (ScratchServicesMonitoredRepository* self);
VALA_EXTERN gboolean scratch_services_monitored_repository_path_is_ignored (ScratchServicesMonitoredRepository* self,
                                                                const gchar* path,
                                                                GError** error);
VALA_EXTERN void scratch_services_monitored_repository_refresh_diff (ScratchServicesMonitoredRepository* self,
                                                         const gchar* file_path,
                                                         GeeHashMap** line_status_map);
VALA_EXTERN GgitRepository* scratch_services_monitored_repository_get_git_repo (ScratchServicesMonitoredRepository* self);
VALA_EXTERN void scratch_services_monitored_repository_set_git_repo (ScratchServicesMonitoredRepository* self,
                                                         GgitRepository* value);
VALA_EXTERN const gchar* scratch_services_monitored_repository_get_branch_name (ScratchServicesMonitoredRepository* self);
VALA_EXTERN void scratch_services_monitored_repository_set_branch_name (ScratchServicesMonitoredRepository* self,
                                                            const gchar* value);
VALA_EXTERN gboolean scratch_services_monitored_repository_get_head_is_branch (ScratchServicesMonitoredRepository* self);
VALA_EXTERN GeeSet* scratch_services_monitored_repository_get_non_current_entries (ScratchServicesMonitoredRepository* self);
VALA_EXTERN gboolean scratch_services_monitored_repository_get_has_uncommitted (ScratchServicesMonitoredRepository* self);
VALA_EXTERN GType scratch_services_interface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchServicesInterface, g_object_unref)
VALA_EXTERN ScratchServicesInterface* scratch_services_interface_new (ScratchServicesPluginsManager* manager);
VALA_EXTERN ScratchServicesInterface* scratch_services_interface_construct (GType object_type,
                                                                ScratchServicesPluginsManager* manager);
VALA_EXTERN ScratchServicesDocument* scratch_services_interface_open_file (ScratchServicesInterface* self,
                                                               GFile* file);
VALA_EXTERN void scratch_services_interface_close_document (ScratchServicesInterface* self,
                                                ScratchServicesDocument* doc);
VALA_EXTERN GType scratch_template_manager_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchTemplateManager, g_object_unref)
VALA_EXTERN ScratchTemplateManager* scratch_services_interface_get_template_manager (ScratchServicesInterface* self);
VALA_EXTERN ScratchServicesPluginsManager* scratch_services_plugins_manager_new (ScratchMainWindow* window);
VALA_EXTERN ScratchServicesPluginsManager* scratch_services_plugins_manager_construct (GType object_type,
                                                                           ScratchMainWindow* window);
VALA_EXTERN GtkWidget* scratch_services_plugins_manager_get_view (ScratchServicesPluginsManager* self);
VALA_EXTERN ScratchServicesInterface* scratch_services_plugins_manager_get_plugin_iface (ScratchServicesPluginsManager* self);
VALA_EXTERN GType scratch_scratch_window_state_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GType scratch_scratch_draw_spaces_state_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GType scratch_template_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchTemplate, g_object_unref)
VALA_EXTERN GtkWidget* scratch_template_get_creation_box (ScratchTemplate* self);
VALA_EXTERN void scratch_template_configure_template (const gchar* origin,
                                          const gchar* destination,
                                          GeeHashMap* variables);
VALA_EXTERN void scratch_template_enumerate_directory (GFile* origin,
                                           GeeTreeSet* files,
                                           GeeTreeSet* directories);
VALA_EXTERN void scratch_template_info_directory (GFile* file,
                                      gboolean* is_directory,
                                      gboolean* exists);
VALA_EXTERN ScratchTemplate* scratch_template_construct (GType object_type);
VALA_EXTERN GType scratch_test_template_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchTestTemplate, g_object_unref)
VALA_EXTERN ScratchTestTemplate* scratch_test_template_new (void);
VALA_EXTERN ScratchTestTemplate* scratch_test_template_construct (GType object_type);
VALA_EXTERN GType template_button_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TemplateButton, g_object_unref)
VALA_EXTERN TemplateButton* template_button_new (const gchar* title,
                                     const gchar* description,
                                     const gchar* icon);
VALA_EXTERN TemplateButton* template_button_construct (GType object_type,
                                           const gchar* title,
                                           const gchar* description,
                                           const gchar* icon);
VALA_EXTERN void template_button_set_icon_from_pixbuf (TemplateButton* self,
                                           GdkPixbuf* pixbuf);
VALA_EXTERN ScratchTemplateManager* scratch_template_manager_new (void);
VALA_EXTERN ScratchTemplateManager* scratch_template_manager_construct (GType object_type);
VALA_EXTERN void scratch_template_manager_register_template (ScratchTemplateManager* self,
                                                 const gchar* icon_id,
                                                 const gchar* label,
                                                 const gchar* description,
                                                 GType template_type);
VALA_EXTERN void scratch_template_manager_show_window (ScratchTemplateManager* self,
                                           GtkWidget* parent);
VALA_EXTERN GType code_choose_project_button_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (CodeChooseProjectButton, g_object_unref)
VALA_EXTERN void code_choose_project_button_set_document (CodeChooseProjectButton* self,
                                              ScratchServicesDocument* doc);
VALA_EXTERN void code_choose_project_button_set_active_path (CodeChooseProjectButton* self,
                                                 const gchar* active_path);
VALA_EXTERN CodeChooseProjectButton* code_choose_project_button_new (void);
VALA_EXTERN CodeChooseProjectButton* code_choose_project_button_construct (GType object_type);
VALA_EXTERN GType code_choose_project_button_project_row_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (CodeChooseProjectButtonProjectRow, g_object_unref)
VALA_EXTERN CodeChooseProjectButtonProjectRow* code_choose_project_button_project_row_new (const gchar* project_path);
VALA_EXTERN CodeChooseProjectButtonProjectRow* code_choose_project_button_project_row_construct (GType object_type,
                                                                                     const gchar* project_path);
VALA_EXTERN gboolean code_choose_project_button_project_row_get_active (CodeChooseProjectButtonProjectRow* self);
VALA_EXTERN void code_choose_project_button_project_row_set_active (CodeChooseProjectButtonProjectRow* self,
                                                        gboolean value);
VALA_EXTERN const gchar* code_choose_project_button_project_row_get_project_path (CodeChooseProjectButtonProjectRow* self);
VALA_EXTERN const gchar* code_choose_project_button_project_row_get_project_name (CodeChooseProjectButtonProjectRow* self);
VALA_EXTERN GtkRadioButton* code_choose_project_button_project_row_get_project_radio (CodeChooseProjectButtonProjectRow* self);
VALA_EXTERN GType scratch_widgets_document_view_target_type_get_type (void) G_GNUC_CONST ;
VALA_EXTERN ScratchWidgetsDocumentView* scratch_widgets_document_view_new (ScratchMainWindow* window);
VALA_EXTERN ScratchWidgetsDocumentView* scratch_widgets_document_view_construct (GType object_type,
                                                                     ScratchMainWindow* window);
VALA_EXTERN void scratch_widgets_document_view_update_outline_visible (ScratchWidgetsDocumentView* self);
VALA_EXTERN void scratch_widgets_document_view_new_document (ScratchWidgetsDocumentView* self);
VALA_EXTERN void scratch_widgets_document_view_new_document_from_clipboard (ScratchWidgetsDocumentView* self,
                                                                const gchar* clipboard);
VALA_EXTERN void scratch_widgets_document_view_open_document (ScratchWidgetsDocumentView* self,
                                                  ScratchServicesDocument* doc,
                                                  gboolean focus,
                                                  gint cursor_position);
VALA_EXTERN void scratch_widgets_document_view_duplicate_document (ScratchWidgetsDocumentView* self,
                                                       ScratchServicesDocument* original);
VALA_EXTERN void scratch_widgets_document_view_next_document (ScratchWidgetsDocumentView* self);
VALA_EXTERN void scratch_widgets_document_view_previous_document (ScratchWidgetsDocumentView* self);
VALA_EXTERN void scratch_widgets_document_view_close_document (ScratchWidgetsDocumentView* self,
                                                   ScratchServicesDocument* doc);
VALA_EXTERN void scratch_widgets_document_view_request_placeholder_if_empty (ScratchWidgetsDocumentView* self);
VALA_EXTERN void scratch_widgets_document_view_focus (ScratchWidgetsDocumentView* self);
VALA_EXTERN void scratch_widgets_document_view_save_opened_files (ScratchWidgetsDocumentView* self);
VALA_EXTERN ScratchMainWindow* scratch_widgets_document_view_get_window (ScratchWidgetsDocumentView* self);
VALA_EXTERN void scratch_widgets_document_view_set_window (ScratchWidgetsDocumentView* self,
                                               ScratchMainWindow* value);
VALA_EXTERN ScratchServicesDocument* scratch_widgets_document_view_get_current_document (ScratchWidgetsDocumentView* self);
VALA_EXTERN void scratch_widgets_document_view_set_current_document (ScratchWidgetsDocumentView* self,
                                                         ScratchServicesDocument* value);
VALA_EXTERN gboolean scratch_widgets_document_view_get_outline_visible (ScratchWidgetsDocumentView* self);
VALA_EXTERN void scratch_widgets_document_view_set_outline_visible (ScratchWidgetsDocumentView* self,
                                                        gboolean value);
VALA_EXTERN GType code_format_bar_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (CodeFormatBar, g_object_unref)
VALA_EXTERN void code_format_bar_set_document (CodeFormatBar* self,
                                   ScratchServicesDocument* doc);
VALA_EXTERN void code_format_bar_set_insert_spaces_instead_of_tabs (CodeFormatBar* self,
                                                        gboolean use_spaces);
VALA_EXTERN void code_format_bar_set_tab_width (CodeFormatBar* self,
                                    gint indent_width);
VALA_EXTERN CodeFormatBar* code_format_bar_new (void);
VALA_EXTERN CodeFormatBar* code_format_bar_construct (GType object_type);
VALA_EXTERN gboolean code_format_bar_get_tab_style_set_by_editor_config (CodeFormatBar* self);
VALA_EXTERN void code_format_bar_set_tab_style_set_by_editor_config (CodeFormatBar* self,
                                                         gboolean value);
VALA_EXTERN gboolean code_format_bar_get_tab_width_set_by_editor_config (CodeFormatBar* self);
VALA_EXTERN void code_format_bar_set_tab_width_set_by_editor_config (CodeFormatBar* self,
                                                         gboolean value);
VALA_EXTERN GType code_format_bar_format_button_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (CodeFormatBarFormatButton, g_object_unref)
VALA_EXTERN CodeFormatBarFormatButton* code_format_bar_get_line_menubutton (CodeFormatBar* self);
VALA_EXTERN GtkInfoBar* code_format_bar_get_editorconfig_infobar (CodeFormatBar* self);
VALA_EXTERN void code_format_bar_set_editorconfig_infobar (CodeFormatBar* self,
                                               GtkInfoBar* value);
VALA_EXTERN GtkBox* code_format_bar_get_tab_box (CodeFormatBar* self);
VALA_EXTERN void code_format_bar_set_tab_box (CodeFormatBar* self,
                                  GtkBox* value);
VALA_EXTERN GtkSpinButton* code_format_bar_get_width_spinbutton (CodeFormatBar* self);
VALA_EXTERN void code_format_bar_set_width_spinbutton (CodeFormatBar* self,
                                           GtkSpinButton* value);
VALA_EXTERN CodeFormatBarFormatButton* code_format_bar_format_button_new (void);
VALA_EXTERN CodeFormatBarFormatButton* code_format_bar_format_button_construct (GType object_type);
VALA_EXTERN void code_format_bar_format_button_set_text (CodeFormatBarFormatButton* self,
                                             const gchar* value);
VALA_EXTERN GIcon* code_format_bar_format_button_get_icon (CodeFormatBarFormatButton* self);
VALA_EXTERN void code_format_bar_format_button_set_icon (CodeFormatBarFormatButton* self,
                                             GIcon* value);
VALA_EXTERN GType code_format_bar_lang_entry_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (CodeFormatBarLangEntry, g_object_unref)
VALA_EXTERN CodeFormatBarLangEntry* code_format_bar_lang_entry_new (const gchar* lang_id,
                                                        const gchar* lang_name,
                                                        GSList* group);
VALA_EXTERN CodeFormatBarLangEntry* code_format_bar_lang_entry_construct (GType object_type,
                                                              const gchar* lang_id,
                                                              const gchar* lang_name,
                                                              GSList* group);
VALA_EXTERN GSList* code_format_bar_lang_entry_get_radio_group (CodeFormatBarLangEntry* self);
VALA_EXTERN const gchar* code_format_bar_lang_entry_get_lang_id (CodeFormatBarLangEntry* self);
VALA_EXTERN const gchar* code_format_bar_lang_entry_get_lang_name (CodeFormatBarLangEntry* self);
VALA_EXTERN GSList* code_format_bar_lang_entry_get_group (CodeFormatBarLangEntry* self);
VALA_EXTERN gboolean code_format_bar_lang_entry_get_active (CodeFormatBarLangEntry* self);
VALA_EXTERN void code_format_bar_lang_entry_set_active (CodeFormatBarLangEntry* self,
                                            gboolean value);
VALA_EXTERN gboolean code_format_bar_lang_entry_get_selected (CodeFormatBarLangEntry* self);
VALA_EXTERN void code_format_bar_lang_entry_set_selected (CodeFormatBarLangEntry* self,
                                              gboolean value);
VALA_EXTERN GType scratch_widgets_source_gutter_renderer_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchWidgetsSourceGutterRenderer, g_object_unref)
VALA_EXTERN void scratch_widgets_source_gutter_renderer_set_style_scheme (ScratchWidgetsSourceGutterRenderer* self,
                                                              GtkSourceStyleScheme* scheme);
VALA_EXTERN ScratchWidgetsSourceGutterRenderer* scratch_widgets_source_gutter_renderer_new (void);
VALA_EXTERN ScratchWidgetsSourceGutterRenderer* scratch_widgets_source_gutter_renderer_construct (GType object_type);
VALA_EXTERN ScratchFolderManagerProjectFolderItem* scratch_widgets_source_gutter_renderer_get_project (ScratchWidgetsSourceGutterRenderer* self);
VALA_EXTERN void scratch_widgets_source_gutter_renderer_set_project (ScratchWidgetsSourceGutterRenderer* self,
                                                         ScratchFolderManagerProjectFolderItem* value);
VALA_EXTERN ScratchHeaderBar* scratch_header_bar_new (void);
VALA_EXTERN ScratchHeaderBar* scratch_header_bar_construct (GType object_type);
VALA_EXTERN void scratch_header_bar_document_available (ScratchHeaderBar* self,
                                            gboolean has_document);
VALA_EXTERN void scratch_header_bar_set_document_focus (ScratchHeaderBar* self,
                                            ScratchServicesDocument* doc);
VALA_EXTERN GtkButton* scratch_header_bar_get_templates_button (ScratchHeaderBar* self);
VALA_EXTERN GtkToggleButton* scratch_header_bar_get_find_button (ScratchHeaderBar* self);
VALA_EXTERN GtkToggleButton* scratch_header_bar_get_outline_button (ScratchHeaderBar* self);
VALA_EXTERN GtkToggleButton* scratch_header_bar_get_sidebar_button (ScratchHeaderBar* self);
VALA_EXTERN void code_sidebar_add_tab (CodeSidebar* self,
                           CodePaneSwitcher* tab);
VALA_EXTERN void code_sidebar_remove_tab (CodeSidebar* self,
                              CodePaneSwitcher* tab);
VALA_EXTERN CodeSidebar* code_sidebar_new (void);
VALA_EXTERN CodeSidebar* code_sidebar_construct (GType object_type);
VALA_EXTERN GtkStack* code_sidebar_get_stack (CodeSidebar* self);
VALA_EXTERN CodeChooseProjectButton* code_sidebar_get_choose_project_button (CodeSidebar* self);
VALA_EXTERN HdyHeaderBar* code_sidebar_get_headerbar (CodeSidebar* self);
VALA_EXTERN const gchar* code_pane_switcher_get_icon_name (CodePaneSwitcher* self);
VALA_EXTERN void code_pane_switcher_set_icon_name (CodePaneSwitcher* self,
                                       const gchar* value);
VALA_EXTERN const gchar* code_pane_switcher_get_title (CodePaneSwitcher* self);
VALA_EXTERN void code_pane_switcher_set_title (CodePaneSwitcher* self,
                                   const gchar* value);
VALA_EXTERN ScratchWidgetsSearchBar* scratch_widgets_search_bar_new (ScratchMainWindow* window);
VALA_EXTERN ScratchWidgetsSearchBar* scratch_widgets_search_bar_construct (GType object_type,
                                                               ScratchMainWindow* window);
VALA_EXTERN void scratch_widgets_search_bar_set_text_view (ScratchWidgetsSearchBar* self,
                                               ScratchWidgetsSourceView* text_view);
VALA_EXTERN gboolean scratch_widgets_search_bar_search (ScratchWidgetsSearchBar* self);
VALA_EXTERN void scratch_widgets_search_bar_highlight_none (ScratchWidgetsSearchBar* self);
VALA_EXTERN void scratch_widgets_search_bar_search_previous (ScratchWidgetsSearchBar* self);
VALA_EXTERN void scratch_widgets_search_bar_search_next (ScratchWidgetsSearchBar* self);
VALA_EXTERN ScratchMainWindow* scratch_widgets_search_bar_get_window (ScratchWidgetsSearchBar* self);
VALA_EXTERN ScratchWidgetsSourceView* scratch_widgets_source_view_new (void);
VALA_EXTERN ScratchWidgetsSourceView* scratch_widgets_source_view_construct (GType object_type);
VALA_EXTERN void scratch_widgets_source_view_change_syntax_highlight_from_file (ScratchWidgetsSourceView* self,
                                                                    GFile* file);
VALA_EXTERN void scratch_widgets_source_view_go_to_line (ScratchWidgetsSourceView* self,
                                             gint line,
                                             gint offset);
VALA_EXTERN gchar* scratch_widgets_source_view_get_selected_text (ScratchWidgetsSourceView* self,
                                                      gboolean replace_new_line);
VALA_EXTERN void scratch_widgets_source_view_duplicate_selection (ScratchWidgetsSourceView* self);
VALA_EXTERN void scratch_widgets_source_view_sort_selected_lines (ScratchWidgetsSourceView* self);
VALA_EXTERN void scratch_widgets_source_view_clear_selected_lines (ScratchWidgetsSourceView* self);
VALA_EXTERN void scratch_widgets_source_view_set_text (ScratchWidgetsSourceView* self,
                                           const gchar* text,
                                           gboolean opening);
VALA_EXTERN gchar* scratch_widgets_source_view_get_text (ScratchWidgetsSourceView* self);
VALA_EXTERN GFile* scratch_widgets_source_view_get_location (ScratchWidgetsSourceView* self);
VALA_EXTERN void scratch_widgets_source_view_set_location (ScratchWidgetsSourceView* self,
                                               GFile* value);
VALA_EXTERN ScratchFolderManagerProjectFolderItem* scratch_widgets_source_view_get_project (ScratchWidgetsSourceView* self);
VALA_EXTERN void scratch_widgets_source_view_set_project (ScratchWidgetsSourceView* self,
                                              ScratchFolderManagerProjectFolderItem* value);
VALA_EXTERN GtkSourceLanguage* scratch_widgets_source_view_get_language (ScratchWidgetsSourceView* self);
VALA_EXTERN void scratch_widgets_source_view_set_language (ScratchWidgetsSourceView* self,
                                               GtkSourceLanguage* value);
VALA_EXTERN gint scratch_widgets_source_view_get_cursor_position (ScratchWidgetsSourceView* self);
VALA_EXTERN void scratch_widgets_source_view_set_cursor_position (ScratchWidgetsSourceView* self,
                                                      gint value);
VALA_EXTERN GType code_terminal_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (CodeTerminal, g_object_unref)
VALA_EXTERN void code_terminal_increment_size (CodeTerminal* self);
VALA_EXTERN void code_terminal_decrement_size (CodeTerminal* self);
VALA_EXTERN void code_terminal_set_default_font_size (CodeTerminal* self);
VALA_EXTERN CodeTerminal* code_terminal_new (void);
VALA_EXTERN CodeTerminal* code_terminal_construct (GType object_type);
VALA_EXTERN GType code_welcome_view_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (CodeWelcomeView, g_object_unref)
VALA_EXTERN CodeWelcomeView* code_welcome_view_new (ScratchMainWindow* window);
VALA_EXTERN CodeWelcomeView* code_welcome_view_construct (GType object_type,
                                              ScratchMainWindow* window);
VALA_EXTERN ScratchMainWindow* code_welcome_view_get_window (CodeWelcomeView* self);
VALA_EXTERN GType scratch_services_symbol_outline_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchServicesSymbolOutline, g_object_unref)
VALA_EXTERN GtkWidget* scratch_services_symbol_outline_get_widget (ScratchServicesSymbolOutline* self);
VALA_EXTERN void scratch_services_symbol_outline_parse_symbols (ScratchServicesSymbolOutline* self);
VALA_EXTERN void scratch_services_symbol_outline_set_up_css (ScratchServicesSymbolOutline* self);
VALA_EXTERN void scratch_services_symbol_outline_update_style_scheme (ScratchServicesSymbolOutline* self,
                                                          GtkSourceStyleScheme* style_scheme);
VALA_EXTERN ScratchServicesSymbolOutline* scratch_services_symbol_outline_construct (GType object_type);
VALA_EXTERN ScratchServicesDocument* scratch_services_symbol_outline_get_doc (ScratchServicesSymbolOutline* self);
VALA_EXTERN GType scratch_services_vala_symbol_item_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchServicesValaSymbolItem, g_object_unref)
VALA_EXTERN ScratchServicesValaSymbolItem* scratch_services_vala_symbol_item_new (ValaSymbol* symbol);
VALA_EXTERN ScratchServicesValaSymbolItem* scratch_services_vala_symbol_item_construct (GType object_type,
                                                                            ValaSymbol* symbol);
VALA_EXTERN gboolean scratch_services_vala_symbol_item_compare_symbol (ScratchServicesValaSymbolItem* self,
                                                           ValaSymbol* comp_symbol);
VALA_EXTERN ValaSymbol* scratch_services_vala_symbol_item_get_symbol (ScratchServicesValaSymbolItem* self);
VALA_EXTERN void scratch_services_vala_symbol_item_set_symbol (ScratchServicesValaSymbolItem* self,
                                                   ValaSymbol* value);
VALA_EXTERN GType scratch_services_vala_symbol_outline_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchServicesValaSymbolOutline, g_object_unref)
VALA_EXTERN ScratchServicesValaSymbolOutline* scratch_services_vala_symbol_outline_new (ScratchServicesDocument* _doc);
VALA_EXTERN ScratchServicesValaSymbolOutline* scratch_services_vala_symbol_outline_construct (GType object_type,
                                                                                  ScratchServicesDocument* _doc);
VALA_EXTERN GType report_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (Report, vala_report_unref)
VALA_EXTERN Report* report_new (void);
VALA_EXTERN Report* report_construct (GType object_type);
VALA_EXTERN GType code_plugins_vala_symbol_resolver_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (CodePluginsValaSymbolResolver, vala_code_visitor_unref)
VALA_EXTERN GeeTreeSet* code_plugins_vala_symbol_resolver_get_properties_fields (CodePluginsValaSymbolResolver* self);
VALA_EXTERN GeeTreeSet* code_plugins_vala_symbol_resolver_get_symbols (CodePluginsValaSymbolResolver* self);
VALA_EXTERN void code_plugins_vala_symbol_resolver_clear (CodePluginsValaSymbolResolver* self);
VALA_EXTERN CodePluginsValaSymbolResolver* code_plugins_vala_symbol_resolver_new (void);
VALA_EXTERN CodePluginsValaSymbolResolver* code_plugins_vala_symbol_resolver_construct (GType object_type);
VALA_EXTERN GType scratch_services_ctags_symbol_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchServicesCtagsSymbol, g_object_unref)
VALA_EXTERN ScratchServicesCtagsSymbol* scratch_services_ctags_symbol_new (ScratchServicesDocument* doc,
                                                               const gchar* name,
                                                               gint line,
                                                               GIcon* _icon);
VALA_EXTERN ScratchServicesCtagsSymbol* scratch_services_ctags_symbol_construct (GType object_type,
                                                                     ScratchServicesDocument* doc,
                                                                     const gchar* name,
                                                                     gint line,
                                                                     GIcon* _icon);
VALA_EXTERN ScratchServicesDocument* scratch_services_ctags_symbol_get_doc (ScratchServicesCtagsSymbol* self);
VALA_EXTERN void scratch_services_ctags_symbol_set_doc (ScratchServicesCtagsSymbol* self,
                                            ScratchServicesDocument* value);
VALA_EXTERN gint scratch_services_ctags_symbol_get_line (ScratchServicesCtagsSymbol* self);
VALA_EXTERN void scratch_services_ctags_symbol_set_line (ScratchServicesCtagsSymbol* self,
                                             gint value);
VALA_EXTERN GType scratch_services_ctags_symbol_iter_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchServicesCtagsSymbolIter, g_object_unref)
VALA_EXTERN ScratchServicesCtagsSymbolIter* scratch_services_ctags_symbol_iter_new (const gchar* name,
                                                                        const gchar* parent,
                                                                        gint line,
                                                                        GIcon* icon);
VALA_EXTERN ScratchServicesCtagsSymbolIter* scratch_services_ctags_symbol_iter_construct (GType object_type,
                                                                              const gchar* name,
                                                                              const gchar* parent,
                                                                              gint line,
                                                                              GIcon* icon);
VALA_EXTERN const gchar* scratch_services_ctags_symbol_iter_get_name (ScratchServicesCtagsSymbolIter* self);
VALA_EXTERN void scratch_services_ctags_symbol_iter_set_name (ScratchServicesCtagsSymbolIter* self,
                                                  const gchar* value);
VALA_EXTERN const gchar* scratch_services_ctags_symbol_iter_get_parent (ScratchServicesCtagsSymbolIter* self);
VALA_EXTERN void scratch_services_ctags_symbol_iter_set_parent (ScratchServicesCtagsSymbolIter* self,
                                                    const gchar* value);
VALA_EXTERN gint scratch_services_ctags_symbol_iter_get_line (ScratchServicesCtagsSymbolIter* self);
VALA_EXTERN void scratch_services_ctags_symbol_iter_set_line (ScratchServicesCtagsSymbolIter* self,
                                                  gint value);
VALA_EXTERN GIcon* scratch_services_ctags_symbol_iter_get_icon (ScratchServicesCtagsSymbolIter* self);
VALA_EXTERN void scratch_services_ctags_symbol_iter_set_icon (ScratchServicesCtagsSymbolIter* self,
                                                  GIcon* value);
VALA_EXTERN GType scratch_services_ctags_symbol_outline_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ScratchServicesCtagsSymbolOutline, g_object_unref)
VALA_EXTERN ScratchServicesCtagsSymbolOutline* scratch_services_ctags_symbol_outline_new (ScratchServicesDocument* _doc);
VALA_EXTERN ScratchServicesCtagsSymbolOutline* scratch_services_ctags_symbol_outline_construct (GType object_type,
                                                                                    ScratchServicesDocument* _doc);

G_END_DECLS

#endif
